MOON
Server: Apache/2.2.31 (Unix) mod_ssl/2.2.31 OpenSSL/0.9.8e-fips-rhel5 mod_bwlimited/1.4
System: Linux csr818.wilogic.com 2.6.18-419.el5xen #1 SMP Fri Feb 24 22:50:37 UTC 2017 x86_64
User: digitals (531)
PHP: 5.4.45
Disabled: NONE
Upload Files
File: //usr/local/ssl/share/gtk-doc/html/gsf/gsf-XML-and-libxml.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>XML and libxml</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
<link rel="start" href="index.html" title="GSF Reference Manual">
<link rel="up" href="parsers.html" title="Stream Parsers">
<link rel="prev" href="gsf-Text.html" title="Text">
<link rel="next" href="gsf-Zip.html" title="Zip">
<meta name="generator" content="GTK-Doc V1.6 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
<link rel="part" href="intro.html" title="Part&#160;I.&#160;GSF: Introduction">
<link rel="part" href="history.html" title="Part&#160;II.&#160;GSF: History">
<link rel="part" href="dependencies.html" title="Part&#160;III.&#160;GSF: Dependencies">
<link rel="part" href="gsf-users.html" title="Part&#160;IV.&#160;Projects using GSF">
<link rel="part" href="api.html" title="Part&#160;V.&#160;API Reference">
<link rel="chapter" href="io.html" title="Basic Input/Output">
<link rel="chapter" href="sources.html" title="Stream Sources">
<link rel="chapter" href="parsers.html" title="Stream Parsers">
<link rel="chapter" href="misc.html" title="Miscellaneous">
<link rel="index" href="ix01.html" title="Index">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="gsf-Text.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="parsers.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GSF Reference Manual</th>
<td><a accesskey="n" href="gsf-Zip.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts"><nobr><a href="#top_of_page" class="shortcut">Top</a>
                  &#160;|&#160;
                  <a href="#desc" class="shortcut">Description</a>
                  &#160;|&#160;
                  <a href="#object_hierarchy" class="shortcut">Object Hierarchy</a>
                  &#160;|&#160;
                  <a href="#properties" class="shortcut">Properties</a></nobr></td></tr>
</table>
<div class="refentry" lang="en">
<a name="gsf-XML-and-libxml"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="top_of_page"></a>XML and libxml</span></h2>
<p>XML and libxml &#8212; </p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="synopsis"></a><h2>Synopsis</h2>
<a name="GsfXMLOut"></a><pre class="synopsis">




            <a href="gsf-XML-and-libxml.html#GsfXMLIn">GsfXMLIn</a>;
            <a href="gsf-XML-and-libxml.html#GsfXMLInDoc">GsfXMLInDoc</a>;
gboolean    (<a href="gsf-XML-and-libxml.html#GsfXMLInUnknownFunc">*GsfXMLInUnknownFunc</a>)          (<a href="gsf-XML-and-libxml.html#GsfXMLIn">GsfXMLIn</a> *xin,
                                             xmlChar const *elem,
                                             xmlChar const **attrs);
            <a href="gsf-XML-and-libxml.html#GsfXMLInNS">GsfXMLInNS</a>;
            <a href="gsf-XML-and-libxml.html#GsfXMLInNode">GsfXMLInNode</a>;
void        (<a href="gsf-XML-and-libxml.html#GsfXMLInExtDtor">*GsfXMLInExtDtor</a>)              (<a href="gsf-XML-and-libxml.html#GsfXMLIn">GsfXMLIn</a> *xin,
                                             gpointer old_state);
enum        <a href="gsf-XML-and-libxml.html#GsfXMLContent">GsfXMLContent</a>;
            <a href="gsf-XML-and-libxml.html#GsfXMLBlob">GsfXMLBlob</a>;
#define     <a href="gsf-XML-and-libxml.html#GSF-XML-IN-NODE-FULL:CAPS">GSF_XML_IN_NODE_FULL</a>            (parent_id, id, ns, name, has_content, 	\
			     share_children_with_parent, check_ns, start, end, user)
#define     <a href="gsf-XML-and-libxml.html#GSF-XML-IN-NODE:CAPS">GSF_XML_IN_NODE</a>                 (parent_id, id, ns, name, has_content, start, end)
#define     <a href="gsf-XML-and-libxml.html#GSF-XML-IN-NODE-END:CAPS">GSF_XML_IN_NODE_END</a>
#define     <a href="gsf-XML-and-libxml.html#GSF-XML-IN-NS:CAPS">GSF_XML_IN_NS</a>                   (id, uri)
<a href="gsf-XML-and-libxml.html#GsfXMLInDoc">GsfXMLInDoc</a>* <a href="gsf-XML-and-libxml.html#gsf-xml-in-doc-new">gsf_xml_in_doc_new</a>             (<a href="gsf-XML-and-libxml.html#GsfXMLInNode">GsfXMLInNode</a> const *nodes,
                                             <a href="gsf-XML-and-libxml.html#GsfXMLInNS">GsfXMLInNS</a> const *ns);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-in-doc-free">gsf_xml_in_doc_free</a>             (<a href="gsf-XML-and-libxml.html#GsfXMLInDoc">GsfXMLInDoc</a> *doc);
gboolean    <a href="gsf-XML-and-libxml.html#gsf-xml-in-doc-parse">gsf_xml_in_doc_parse</a>            (<a href="gsf-XML-and-libxml.html#GsfXMLInDoc">GsfXMLInDoc</a> *doc,
                                             <a href="gsf-Input-from-unstructured-files.html#GsfInput">GsfInput</a> *input,
                                             gpointer user_state);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-in-doc-set-unknown-handler">gsf_xml_in_doc_set_unknown_handler</a>
                                            (<a href="gsf-XML-and-libxml.html#GsfXMLInDoc">GsfXMLInDoc</a> *doc,
                                             <a href="gsf-XML-and-libxml.html#GsfXMLInUnknownFunc">GsfXMLInUnknownFunc</a> handler);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-in-push-state">gsf_xml_in_push_state</a>           (<a href="gsf-XML-and-libxml.html#GsfXMLIn">GsfXMLIn</a> *xin,
                                             <a href="gsf-XML-and-libxml.html#GsfXMLInDoc">GsfXMLInDoc</a> const *doc,
                                             gpointer new_state,
                                             <a href="gsf-XML-and-libxml.html#GsfXMLInExtDtor">GsfXMLInExtDtor</a> dtor,
                                             xmlChar const **attrs);
gboolean    <a href="gsf-XML-and-libxml.html#gsf-xml-in-namecmp">gsf_xml_in_namecmp</a>              (<a href="gsf-XML-and-libxml.html#GsfXMLIn">GsfXMLIn</a> const *xin,
                                             char const *str,
                                             unsigned int ns_id,
                                             char const *name);
charconst  * <a href="gsf-XML-and-libxml.html#gsf-xml-in-check-ns">gsf_xml_in_check_ns</a>            (<a href="gsf-XML-and-libxml.html#GsfXMLIn">GsfXMLIn</a> const *xin,
                                             char const *str,
                                             unsigned int ns_id);

            <a href="gsf-XML-and-libxml.html#GsfXMLOut-struct">GsfXMLOut</a>;
<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a>*  <a href="gsf-XML-and-libxml.html#gsf-xml-out-new">gsf_xml_out_new</a>                 (<a href="gsf-Output-to-unstructured-files.html#GsfOutput">GsfOutput</a> *output);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-set-doc-type">gsf_xml_out_set_doc_type</a>        (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *type);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-start-element">gsf_xml_out_start_element</a>       (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id);
charconst * <a href="gsf-XML-and-libxml.html#gsf-xml-out-end-element">gsf_xml_out_end_element</a>         (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-add-cstr">gsf_xml_out_add_cstr</a>            (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             char const *val_utf8);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-add-cstr-unchecked">gsf_xml_out_add_cstr_unchecked</a>  (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             char const *val_utf8);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-add-bool">gsf_xml_out_add_bool</a>            (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             gboolean val);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-add-int">gsf_xml_out_add_int</a>             (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             int val);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-add-uint">gsf_xml_out_add_uint</a>            (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             unsigned int val);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-add-float">gsf_xml_out_add_float</a>           (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             double val,
                                             int precision);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-add-enum">gsf_xml_out_add_enum</a>            (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             GType etype,
                                             gint val);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-add-color">gsf_xml_out_add_color</a>           (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             unsigned int r,
                                             unsigned int g,
                                             unsigned int b);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-add-base64">gsf_xml_out_add_base64</a>          (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             guint8 const *data,
                                             unsigned int len);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-add-gvalue">gsf_xml_out_add_gvalue</a>          (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             GValue const *val);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-simple-element">gsf_xml_out_simple_element</a>      (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             char const *content);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-simple-float-element">gsf_xml_out_simple_float_element</a>
                                            (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             double val,
                                             int precision);
void        <a href="gsf-XML-and-libxml.html#gsf-xml-out-simple-int-element">gsf_xml_out_simple_int_element</a>  (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             int val);

xmlParserCtxt* <a href="gsf-XML-and-libxml.html#gsf-xml-parser-context">gsf_xml_parser_context</a>       (<a href="gsf-Input-from-unstructured-files.html#GsfInput">GsfInput</a> *input);
gboolean    <a href="gsf-XML-and-libxml.html#gsf-xml-gvalue-from-str">gsf_xml_gvalue_from_str</a>         (GValue *res,
                                             GType t,
                                             char const *str);
int         <a href="gsf-XML-and-libxml.html#gsf-xmlDocFormatDump">gsf_xmlDocFormatDump</a>            (<a href="gsf-Output-to-unstructured-files.html#GsfOutput">GsfOutput</a> *output,
                                             xmlDoc *cur,
                                             char const *encoding,
                                             gboolean format);

</pre>
</div>
<div class="refsect1" lang="en">
<a name="object_hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">

  GObject
   +----GsfXMLOut
</pre>
</div>
<div class="refsect1" lang="en">
<a name="properties"></a><h2>Properties</h2>
<pre class="synopsis">

  "<a href="gsf-XML-and-libxml.html#GsfXMLOut--pretty-print">pretty-print</a>"         gboolean              : Read / Write
</pre>
</div>
<div class="refsect1" lang="en">
<a name="desc"></a><h2>Description</h2>
<p>

</p>
</div>
<div class="refsect1" lang="en">
<a name="details"></a><h2>Details</h2>
<div class="refsect2" lang="en">
<a name="id2546639"></a><h3>
<a name="GsfXMLIn"></a>GsfXMLIn</h3>
<a class="indexterm" name="id2546650"></a><pre class="programlisting">typedef struct {
	/* public state : read only */
	gpointer	    user_state;
	GString		   *content;
	GsfXMLInDoc  const *doc;
	GsfXMLInNode const *node;	/* current node (not on the stack) */
	GSList	 	   *node_stack;	/* stack of GsfXMLInNode */
} GsfXMLIn;
</pre>
<p>

</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2546669"></a><h3>
<a name="GsfXMLInDoc"></a>GsfXMLInDoc</h3>
<a class="indexterm" name="id2546681"></a><pre class="programlisting">typedef struct _GsfXMLInDoc GsfXMLInDoc;</pre>
<p>

</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2546696"></a><h3>
<a name="GsfXMLInUnknownFunc"></a>GsfXMLInUnknownFunc ()</h3>
<a class="indexterm" name="id2546708"></a><pre class="programlisting">gboolean    (*GsfXMLInUnknownFunc)          (<a href="gsf-XML-and-libxml.html#GsfXMLIn">GsfXMLIn</a> *xin,
                                             xmlChar const *elem,
                                             xmlChar const **attrs);</pre>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xin</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>elem</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>attrs</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
<td>


</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2546806"></a><h3>
<a name="GsfXMLInNS"></a>GsfXMLInNS</h3>
<a class="indexterm" name="id2546818"></a><pre class="programlisting">typedef struct {
	char const *uri;
	unsigned    ns_id;
} GsfXMLInNS;
</pre>
<p>

</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2546834"></a><h3>
<a name="GsfXMLInNode"></a>GsfXMLInNode</h3>
<a class="indexterm" name="id2546847"></a><pre class="programlisting">typedef struct {
	char const *id;		/* unique in the entire tree */
	int	    ns_id;
	char const *name;
	char const *parent_id;
	void (*start) (GsfXMLIn *xin, xmlChar const **attrs);
	void (*end)   (GsfXMLIn *xin, GsfXMLBlob *unknown);

	union {
		int	    v_int;
		gboolean    v_bool;
		gpointer    v_blob;
		char const *v_str;
	} user_data;
	GsfXMLContent has_content;

	unsigned int check_children_for_ns : 1;
	unsigned int share_children_with_parent : 1;
} GsfXMLInNode;
</pre>
<p>

</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2546869"></a><h3>
<a name="GsfXMLInExtDtor"></a>GsfXMLInExtDtor ()</h3>
<a class="indexterm" name="id2546882"></a><pre class="programlisting">void        (*GsfXMLInExtDtor)              (<a href="gsf-XML-and-libxml.html#GsfXMLIn">GsfXMLIn</a> *xin,
                                             gpointer old_state);</pre>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xin</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>old_state</code></em>&#160;:</span></td>
<td>


</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2546949"></a><h3>
<a name="GsfXMLContent"></a>enum GsfXMLContent</h3>
<a class="indexterm" name="id2546962"></a><pre class="programlisting">typedef enum {
	GSF_XML_NO_CONTENT = FALSE,
	GSF_XML_CONTENT,
	GSF_XML_SHARED_CONTENT
} GsfXMLContent;
</pre>
<p>

</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2546979"></a><h3>
<a name="GsfXMLBlob"></a>GsfXMLBlob</h3>
<a class="indexterm" name="id2546991"></a><pre class="programlisting">typedef struct _GsfXMLBlob GsfXMLBlob;</pre>
<p>

</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2547006"></a><h3>
<a name="GSF-XML-IN-NODE-FULL:CAPS"></a>GSF_XML_IN_NODE_FULL()</h3>
<a class="indexterm" name="id2547019"></a><pre class="programlisting">#define     GSF_XML_IN_NODE_FULL(parent_id, id, ns, name, has_content, 	\
			     share_children_with_parent, check_ns, start, end, user)</pre>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>parent_id</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>ns</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>name</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>has_content</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>share_children_with_parent</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>check_ns</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>start</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>end</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>user</code></em>&#160;:</span></td>
<td>


</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2547176"></a><h3>
<a name="GSF-XML-IN-NODE:CAPS"></a>GSF_XML_IN_NODE()</h3>
<a class="indexterm" name="id2547190"></a><pre class="programlisting">#define     GSF_XML_IN_NODE(parent_id, id, ns, name, has_content, start, end)</pre>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>parent_id</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>ns</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>name</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>has_content</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>start</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>end</code></em>&#160;:</span></td>
<td>


</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2547304"></a><h3>
<a name="GSF-XML-IN-NODE-END:CAPS"></a>GSF_XML_IN_NODE_END</h3>
<a class="indexterm" name="id2547316"></a><pre class="programlisting">#define     GSF_XML_IN_NODE_END</pre>
<p>

</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2547332"></a><h3>
<a name="GSF-XML-IN-NS:CAPS"></a>GSF_XML_IN_NS()</h3>
<a class="indexterm" name="id2547343"></a><pre class="programlisting">#define     GSF_XML_IN_NS(id, uri)</pre>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>uri</code></em>&#160;:</span></td>
<td>


</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2547390"></a><h3>
<a name="gsf-xml-in-doc-new"></a>gsf_xml_in_doc_new ()</h3>
<a class="indexterm" name="id2547403"></a><pre class="programlisting"><a href="gsf-XML-and-libxml.html#GsfXMLInDoc">GsfXMLInDoc</a>* gsf_xml_in_doc_new             (<a href="gsf-XML-and-libxml.html#GsfXMLInNode">GsfXMLInNode</a> const *nodes,
                                             <a href="gsf-XML-and-libxml.html#GsfXMLInNS">GsfXMLInNS</a> const *ns);</pre>
<p>
Combine the nodes in the NULL terminated array starting at <em class="parameter"><code>nodes</code></em> with the
name spaces in the NULL terminated array starting at <em class="parameter"><code>ns</code></em>.  Prepare the
data structures necessary to validate a doument based on that description.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>nodes</code></em>&#160;:</span></td>
<td> an array of node descriptors
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>ns</code></em>&#160;:</span></td>
<td> an array of namespace identifiers
</td>
</tr>
<tr>
<td>
<span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
<td>NULL on error
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2547500"></a><h3>
<a name="gsf-xml-in-doc-free"></a>gsf_xml_in_doc_free ()</h3>
<a class="indexterm" name="id2547514"></a><pre class="programlisting">void        gsf_xml_in_doc_free             (<a href="gsf-XML-and-libxml.html#GsfXMLInDoc">GsfXMLInDoc</a> *doc);</pre>
<p>
Free up resources</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td>
<span class="term"><em class="parameter"><code>doc</code></em>&#160;:</span></td>
<td>
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2547563"></a><h3>
<a name="gsf-xml-in-doc-parse"></a>gsf_xml_in_doc_parse ()</h3>
<a class="indexterm" name="id2547576"></a><pre class="programlisting">gboolean    gsf_xml_in_doc_parse            (<a href="gsf-XML-and-libxml.html#GsfXMLInDoc">GsfXMLInDoc</a> *doc,
                                             <a href="gsf-Input-from-unstructured-files.html#GsfInput">GsfInput</a> *input,
                                             gpointer user_state);</pre>
<p>
Read an xml document from <em class="parameter"><code>input</code></em> and parse based on the the descriptor in
<em class="parameter"><code>doc</code></em></p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>doc</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>input</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>user_state</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
<td>FALSE on error
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2547689"></a><h3>
<a name="gsf-xml-in-doc-set-unknown-handler"></a>gsf_xml_in_doc_set_unknown_handler ()</h3>
<a class="indexterm" name="id2547703"></a><pre class="programlisting">void        gsf_xml_in_doc_set_unknown_handler
                                            (<a href="gsf-XML-and-libxml.html#GsfXMLInDoc">GsfXMLInDoc</a> *doc,
                                             <a href="gsf-XML-and-libxml.html#GsfXMLInUnknownFunc">GsfXMLInUnknownFunc</a> handler);</pre>
<p>
Call the function <em class="parameter"><code>handler</code></em> when an unexpected child node is found</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>doc</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLInDoc"><span class="type">GsfXMLInDoc</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>handler</code></em>&#160;:</span></td>
<td> The function to call
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2547789"></a><h3>
<a name="gsf-xml-in-push-state"></a>gsf_xml_in_push_state ()</h3>
<a class="indexterm" name="id2547802"></a><pre class="programlisting">void        gsf_xml_in_push_state           (<a href="gsf-XML-and-libxml.html#GsfXMLIn">GsfXMLIn</a> *xin,
                                             <a href="gsf-XML-and-libxml.html#GsfXMLInDoc">GsfXMLInDoc</a> const *doc,
                                             gpointer new_state,
                                             <a href="gsf-XML-and-libxml.html#GsfXMLInExtDtor">GsfXMLInExtDtor</a> dtor,
                                             xmlChar const **attrs);</pre>
<p>
Take the first node from <em class="parameter"><code>doc</code></em> as the current node and call it's start handler.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xin</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLIn"><span class="type">GsfXMLIn</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>doc</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLInDoc"><span class="type">GsfXMLInDoc</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>new_state</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>dtor</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLInExtDtor"><span class="type">GsfXMLInExtDtor</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>attrs</code></em>&#160;:</span></td>
<td>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2547966"></a><h3>
<a name="gsf-xml-in-namecmp"></a>gsf_xml_in_namecmp ()</h3>
<a class="indexterm" name="id2547979"></a><pre class="programlisting">gboolean    gsf_xml_in_namecmp              (<a href="gsf-XML-and-libxml.html#GsfXMLIn">GsfXMLIn</a> const *xin,
                                             char const *str,
                                             unsigned int ns_id,
                                             char const *name);</pre>
<p>
</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xin</code></em>&#160;:</span></td>
<td> The <a href="gsf-XML-and-libxml.html#GsfXMLIn"><span class="type">GsfXMLIn</span></a> we are reading from.
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>str</code></em>&#160;:</span></td>
<td> The potentially namespace qualified node name.
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>ns_id</code></em>&#160;:</span></td>
<td> The name space id to check
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>name</code></em>&#160;:</span></td>
<td> The target node name
</td>
</tr>
<tr>
<td>
<span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
<td>TRUE if <em class="parameter"><code>str</code></em> == <em class="parameter"><code>ns_id</code></em>:<em class="parameter"><code>name</code></em> according to <em class="parameter"><code>state</code></em>.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2548136"></a><h3>
<a name="gsf-xml-in-check-ns"></a>gsf_xml_in_check_ns ()</h3>
<a class="indexterm" name="id2548149"></a><pre class="programlisting">charconst  * gsf_xml_in_check_ns            (<a href="gsf-XML-and-libxml.html#GsfXMLIn">GsfXMLIn</a> const *xin,
                                             char const *str,
                                             unsigned int ns_id);</pre>
<p>
According to <em class="parameter"><code>state</code></em> is <em class="parameter"><code>str</code></em> in the namespace <em class="parameter"><code>ns_id</code></em> ?</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xin</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>str</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>ns_id</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
<td>a pointer to <em class="parameter"><code>str</code></em> after the namespace if successful,
otherwise NULL.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2548274"></a><h3>
<a name="GsfXMLOut-struct"></a>GsfXMLOut</h3>
<a class="indexterm" name="id2548286"></a><pre class="programlisting">typedef struct _GsfXMLOut GsfXMLOut;</pre>
<p>

</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2548301"></a><h3>
<a name="gsf-xml-out-new"></a>gsf_xml_out_new ()</h3>
<a class="indexterm" name="id2548314"></a><pre class="programlisting"><a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a>*  gsf_xml_out_new                 (<a href="gsf-Output-to-unstructured-files.html#GsfOutput">GsfOutput</a> *output);</pre>
<p>
Create an XML output stream.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>output</code></em>&#160;:</span></td>
<td> <a href="gsf-Output-to-unstructured-files.html#GsfOutput"><span class="type">GsfOutput</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2548389"></a><h3>
<a name="gsf-xml-out-set-doc-type"></a>gsf_xml_out_set_doc_type ()</h3>
<a class="indexterm" name="id2548402"></a><pre class="programlisting">void        gsf_xml_out_set_doc_type        (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *type);</pre>
<p>
Store some optional some &lt;!DOCTYPE .. &gt; content</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>type</code></em>&#160;:</span></td>
<td> the document type declaration
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2548482"></a><h3>
<a name="gsf-xml-out-start-element"></a>gsf_xml_out_start_element ()</h3>
<a class="indexterm" name="id2548496"></a><pre class="programlisting">void        gsf_xml_out_start_element       (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id);</pre>
<p>
Output a start element <em class="parameter"><code>id</code></em>, if necessary preceeded by an XML declaration.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> Element name
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2548580"></a><h3>
<a name="gsf-xml-out-end-element"></a>gsf_xml_out_end_element ()</h3>
<a class="indexterm" name="id2548594"></a><pre class="programlisting">charconst * gsf_xml_out_end_element         (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml);</pre>
<p>
Closes/ends an XML element.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
<td> the element that has been closed.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2548662"></a><h3>
<a name="gsf-xml-out-add-cstr"></a>gsf_xml_out_add_cstr ()</h3>
<a class="indexterm" name="id2548674"></a><pre class="programlisting">void        gsf_xml_out_add_cstr            (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             char const *val_utf8);</pre>
<p>
dump <em class="parameter"><code>val_utf8</code></em> to an attribute named <em class="parameter"><code>id</code></em> or as the nodes content escaping
characters as necessary.  If <em class="parameter"><code>val_utf8</code></em> is NULL do nothing (no warning, no
output)</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> optionally NULL for content
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>val_utf8</code></em>&#160;:</span></td>
<td> a utf8 encoded string
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2548794"></a><h3>
<a name="gsf-xml-out-add-cstr-unchecked"></a>gsf_xml_out_add_cstr_unchecked ()</h3>
<a class="indexterm" name="id2548808"></a><pre class="programlisting">void        gsf_xml_out_add_cstr_unchecked  (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             char const *val_utf8);</pre>
<p>
dump <em class="parameter"><code>val_utf8</code></em> to an attribute named <em class="parameter"><code>id</code></em> without checking to see if the
content needs escaping.  A useful performance enhancement when the
application knows that structure of the content well.  If <em class="parameter"><code>val_utf8</code></em> is NULL
do nothing (no warning, no output)</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> optionally NULL for content
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>val_utf8</code></em>&#160;:</span></td>
<td> a utf8 encoded string to export
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2548930"></a><h3>
<a name="gsf-xml-out-add-bool"></a>gsf_xml_out_add_bool ()</h3>
<a class="indexterm" name="id2548943"></a><pre class="programlisting">void        gsf_xml_out_add_bool            (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             gboolean val);</pre>
<p>
dump boolean value <em class="parameter"><code>val</code></em> to an attribute named <em class="parameter"><code>id</code></em> or as the nodes content
Use '1' or '0' to simplify import</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> optionally NULL for content
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>val</code></em>&#160;:</span></td>
<td> a boolean
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2549056"></a><h3>
<a name="gsf-xml-out-add-int"></a>gsf_xml_out_add_int ()</h3>
<a class="indexterm" name="id2549069"></a><pre class="programlisting">void        gsf_xml_out_add_int             (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             int val);</pre>
<p>
dump integer value <em class="parameter"><code>val</code></em> to an attribute named <em class="parameter"><code>id</code></em> or as the nodes content</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> optionally NULL for content
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>val</code></em>&#160;:</span></td>
<td> the value
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2549180"></a><h3>
<a name="gsf-xml-out-add-uint"></a>gsf_xml_out_add_uint ()</h3>
<a class="indexterm" name="id2549193"></a><pre class="programlisting">void        gsf_xml_out_add_uint            (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             unsigned int val);</pre>
<p>
dump unsigned integer value <em class="parameter"><code>val</code></em> to an attribute named <em class="parameter"><code>id</code></em> or as the nodes
content</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> optionally NULL for content
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>val</code></em>&#160;:</span></td>
<td> the value
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2549305"></a><h3>
<a name="gsf-xml-out-add-float"></a>gsf_xml_out_add_float ()</h3>
<a class="indexterm" name="id2549318"></a><pre class="programlisting">void        gsf_xml_out_add_float           (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             double val,
                                             int precision);</pre>
<p>
dump float value <em class="parameter"><code>val</code></em> to an attribute named <em class="parameter"><code>id</code></em> or as the nodes
content with precision <em class="parameter"><code>precision</code></em>.  The number will be formattted
according to the "C" locale.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> optionally NULL for content
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>val</code></em>&#160;:</span></td>
<td> the value
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>precision</code></em>&#160;:</span></td>
<td> the number of significant digits to use, -1 meaning "enough".
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2549459"></a><h3>
<a name="gsf-xml-out-add-enum"></a>gsf_xml_out_add_enum ()</h3>
<a class="indexterm" name="id2549472"></a><pre class="programlisting">void        gsf_xml_out_add_enum            (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             GType etype,
                                             gint val);</pre>
<p>
Output the name of value <em class="parameter"><code>val</code></em> of enumeration type <em class="parameter"><code>etype</code></em>.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> optionally NULL for content
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>etype</code></em>&#160;:</span></td>
<td> <span class="type">GType</span>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>val</code></em>&#160;:</span></td>
<td> enum element number
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2549613"></a><h3>
<a name="gsf-xml-out-add-color"></a>gsf_xml_out_add_color ()</h3>
<a class="indexterm" name="id2549626"></a><pre class="programlisting">void        gsf_xml_out_add_color           (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             unsigned int r,
                                             unsigned int g,
                                             unsigned int b);</pre>
<p>
dump Color <em class="parameter"><code>r</code></em>.<em class="parameter"><code>g</code></em>.<em class="parameter"><code>b</code></em> to an attribute named <em class="parameter"><code>id</code></em> or as the nodes content</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> optionally NULL for content
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>r</code></em>&#160;:</span></td>
<td> Red value
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>g</code></em>&#160;:</span></td>
<td> Green value
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>b</code></em>&#160;:</span></td>
<td> Blue value
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2549791"></a><h3>
<a name="gsf-xml-out-add-base64"></a>gsf_xml_out_add_base64 ()</h3>
<a class="indexterm" name="id2549804"></a><pre class="programlisting">void        gsf_xml_out_add_base64          (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             guint8 const *data,
                                             unsigned int len);</pre>
<p>
dump <em class="parameter"><code>len</code></em> bytes in <em class="parameter"><code>data</code></em> into the content of node <em class="parameter"><code>id</code></em> using base64</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> optionally NULL for content
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>data</code></em>&#160;:</span></td>
<td> Data to be written
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>len</code></em>&#160;:</span></td>
<td> Length of data
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2549943"></a><h3>
<a name="gsf-xml-out-add-gvalue"></a>gsf_xml_out_add_gvalue ()</h3>
<a class="indexterm" name="id2549956"></a><pre class="programlisting">void        gsf_xml_out_add_gvalue          (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             GValue const *val);</pre>
<p>
Output the value of <em class="parameter"><code>val</code></em> as a string.  Does NOT store any type information
with the string, just thevalue.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> optionally NULL for content
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>val</code></em>&#160;:</span></td>
<td> <span class="type">GValue</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2550071"></a><h3>
<a name="gsf-xml-out-simple-element"></a>gsf_xml_out_simple_element ()</h3>
<a class="indexterm" name="id2550085"></a><pre class="programlisting">void        gsf_xml_out_simple_element      (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             char const *content);</pre>
<p>
Convenience routine to output a simple <em class="parameter"><code>id</code></em> element with content <em class="parameter"><code>content</code></em>.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> Element name
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>content</code></em>&#160;:</span></td>
<td> Content of the element
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2550196"></a><h3>
<a name="gsf-xml-out-simple-float-element"></a>gsf_xml_out_simple_float_element ()</h3>
<a class="indexterm" name="id2550210"></a><pre class="programlisting">void        gsf_xml_out_simple_float_element
                                            (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             double val,
                                             int precision);</pre>
<p>
Convenience routine to output an element <em class="parameter"><code>id</code></em> with float value <em class="parameter"><code>val</code></em> using
<em class="parameter"><code>precision</code></em> significant digits.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> Element name
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>val</code></em>&#160;:</span></td>
<td> Element value
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>precision</code></em>&#160;:</span></td>
<td> the number of significant digits to use, -1 meaning "enough".
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2550351"></a><h3>
<a name="gsf-xml-out-simple-int-element"></a>gsf_xml_out_simple_int_element ()</h3>
<a class="indexterm" name="id2550365"></a><pre class="programlisting">void        gsf_xml_out_simple_int_element  (<a href="gsf-XML-and-libxml.html#GsfXMLOut">GsfXMLOut</a> *xml,
                                             char const *id,
                                             int val);</pre>
<p>
Convenience routine to output an element <em class="parameter"><code>id</code></em> with integer value <em class="parameter"><code>val</code></em>.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>xml</code></em>&#160;:</span></td>
<td> <a href="gsf-XML-and-libxml.html#GsfXMLOut"><span class="type">GsfXMLOut</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>id</code></em>&#160;:</span></td>
<td> Element name
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>val</code></em>&#160;:</span></td>
<td> Element value
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2550476"></a><h3>
<a name="gsf-xml-parser-context"></a>gsf_xml_parser_context ()</h3>
<a class="indexterm" name="id2550489"></a><pre class="programlisting">xmlParserCtxt* gsf_xml_parser_context       (<a href="gsf-Input-from-unstructured-files.html#GsfInput">GsfInput</a> *input);</pre>
<p>
Create a libxml2 pull style parser context wrapper around gsf input <em class="parameter"><code>input</code></em>.
This signature will probably change to supply a SAX structure.
</p>
<p>
</p>
<div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Note</h3>This adds a reference to <em class="parameter"><code>input</code></em>.</div>
<p>
</p>
<div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Note</h3>A simple wrapper around a cleaner implementation that will fold in
when we add other api changes.  Its not worth bumping just for this.</div>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>input</code></em>&#160;:</span></td>
<td> <a href="gsf-Input-from-unstructured-files.html#GsfInput"><span class="type">GsfInput</span></a>
</td>
</tr>
<tr>
<td>
<span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
<td>: A parser context or NULL
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2550583"></a><h3>
<a name="gsf-xml-gvalue-from-str"></a>gsf_xml_gvalue_from_str ()</h3>
<a class="indexterm" name="id2550596"></a><pre class="programlisting">gboolean    gsf_xml_gvalue_from_str         (GValue *res,
                                             GType t,
                                             char const *str);</pre>
<p>
Try to parse <em class="parameter"><code>str</code></em> as a value of type <em class="parameter"><code>t</code></em> into <em class="parameter"><code>res</code></em>.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>res</code></em>&#160;:</span></td>
<td> Result value
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>t</code></em>&#160;:</span></td>
<td> Type of data
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>str</code></em>&#160;:</span></td>
<td> Value string
</td>
</tr>
<tr>
<td>
<span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
<td>: True when parsing of <em class="parameter"><code>str</code></em> as a value of type <em class="parameter"><code>t</code></em> was succesfull;
false otherwise.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2550729"></a><h3>
<a name="gsf-xmlDocFormatDump"></a>gsf_xmlDocFormatDump ()</h3>
<a class="indexterm" name="id2550742"></a><pre class="programlisting">int         gsf_xmlDocFormatDump            (<a href="gsf-Output-to-unstructured-files.html#GsfOutput">GsfOutput</a> *output,
                                             xmlDoc *cur,
                                             char const *encoding,
                                             gboolean format);</pre>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td>
<span class="term"><em class="parameter"><code>output</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>cur</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>encoding</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><em class="parameter"><code>format</code></em>&#160;:</span></td>
<td>
</td>
</tr>
<tr>
<td>
<span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
<td>


</td>
</tr>
</tbody>
</table></div>
</div>
</div>
<div class="refsect1" lang="en">
<a name="property_details"></a><h2>Property Details</h2>
<div class="refsect2" lang="en">
<a name="id2550875"></a><h3>
<a name="GsfXMLOut--pretty-print"></a>The "<code class="literal">pretty-print</code>" property</h3>
<a class="indexterm" name="id2550890"></a><pre class="programlisting">  "pretty-print"         gboolean              : Read / Write</pre>
<p>Should the output auto-indent elements to make reading easier.</p>
<p>Default value: TRUE</p>
</div>
</div>
</div>
</body>
</html>