1 /* This file is part of the YAZ toolkit.
2 * Copyright (C) Index Data
3 * See the file LICENSE for details.
7 * \brief XML node creation utilities
19 void add_XML_n(xmlNodePtr ptr, const char *elem, char *val, int len,
24 xmlDocPtr doc = xmlParseMemory(val,len);
27 xmlNodePtr c = xmlNewChild(ptr, ns_ptr, BAD_CAST elem, 0);
28 xmlNodePtr t = xmlDocGetRootElement(doc);
29 xmlAddChild(c, xmlCopyNode(t,1));
35 xmlNodePtr add_xsd_string_n(xmlNodePtr ptr, const char *elem, const char *val,
40 xmlNodePtr c = xmlNewChild(ptr, 0, BAD_CAST elem, 0);
41 xmlNodePtr t = xmlNewTextLen(BAD_CAST val, len);
48 xmlNodePtr add_xsd_string_ns(xmlNodePtr ptr, const char *elem, const char *val,
53 xmlNodePtr c = xmlNewChild(ptr, ns_ptr, BAD_CAST elem, 0);
54 xmlNodePtr t = xmlNewText(BAD_CAST val);
61 xmlNodePtr add_xsd_string(xmlNodePtr ptr, const char *elem, const char *val)
63 return add_xsd_string_ns(ptr, elem, val, 0);
66 void add_xsd_integer(xmlNodePtr ptr, const char *elem,
72 sprintf(str, ODR_INT_PRINTF, *val);
73 xmlNewTextChild(ptr, 0, BAD_CAST elem, BAD_CAST str);
82 * c-file-style: "Stroustrup"
83 * indent-tabs-mode: nil
85 * vim: shiftwidth=4 tabstop=8 expandtab