Removal of threading problems, update documentation, added SAX tests, Daniel
diff --git a/doc/html/gnome-xml-parserinternals.html b/doc/html/gnome-xml-parserinternals.html
index bda1749..75e342e 100644
--- a/doc/html/gnome-xml-parserinternals.html
+++ b/doc/html/gnome-xml-parserinternals.html
@@ -59,7 +59,7 @@
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3936"
+NAME="AEN4419"
></A
><H2
>Name</H2
@@ -67,7 +67,7 @@
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3939"
+NAME="AEN4422"
></A
><H2
>Synopsis</H2
@@ -82,6 +82,54 @@
CLASS="SYNOPSIS"
>
+#define <A
+HREF="gnome-xml-parserinternals.html#IS-CHAR"
+>IS_CHAR</A
+> (c)
+#define <A
+HREF="gnome-xml-parserinternals.html#IS-BLANK"
+>IS_BLANK</A
+> (c)
+#define <A
+HREF="gnome-xml-parserinternals.html#IS-BASECHAR"
+>IS_BASECHAR</A
+> (c)
+#define <A
+HREF="gnome-xml-parserinternals.html#IS-DIGIT"
+>IS_DIGIT</A
+> (c)
+#define <A
+HREF="gnome-xml-parserinternals.html#IS-COMBINING"
+>IS_COMBINING</A
+> (c)
+#define <A
+HREF="gnome-xml-parserinternals.html#IS-EXTENDER"
+>IS_EXTENDER</A
+> (c)
+#define <A
+HREF="gnome-xml-parserinternals.html#IS-IDEOGRAPHIC"
+>IS_IDEOGRAPHIC</A
+> (c)
+#define <A
+HREF="gnome-xml-parserinternals.html#IS-LETTER"
+>IS_LETTER</A
+> (c)
+#define <A
+HREF="gnome-xml-parserinternals.html#IS-PUBIDCHAR"
+>IS_PUBIDCHAR</A
+> (c)
+#define <A
+HREF="gnome-xml-parserinternals.html#SKIP-EOL"
+>SKIP_EOL</A
+> (p)
+#define <A
+HREF="gnome-xml-parserinternals.html#MOVETO-ENDTAG"
+>MOVETO_ENDTAG</A
+> (p)
+#define <A
+HREF="gnome-xml-parserinternals.html#MOVETO-STARTTAG"
+>MOVETO_STARTTAG</A
+> (p)
<A
HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
>xmlParserCtxtPtr</A
@@ -171,6 +219,20 @@
HREF="gnome-xml-tree.html#CHAR"
>CHAR</A
>* <A
+HREF="gnome-xml-parserinternals.html#XMLSPLITQNAME"
+>xmlSplitQName</A
+> (const <A
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+> *name,
+ <A
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+> **prefix);
+<A
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+>* <A
HREF="gnome-xml-parserinternals.html#XMLNAMESPACEPARSENCNAME"
>xmlNamespaceParseNCName</A
> (<A
@@ -301,10 +363,7 @@
>CHAR</A
> **publicID,
int strict);
-<A
-HREF="gnome-xml-tree.html#XMLNODEPTR"
->xmlNodePtr</A
-> <A
+void <A
HREF="gnome-xml-parserinternals.html#XMLPARSECOMMENT"
>xmlParseComment</A
> (<A
@@ -502,9 +561,9 @@
>xmlParserCtxtPtr</A
> ctxt);
<A
-HREF="gnome-xml-tree.html#XMLATTRPTR"
->xmlAttrPtr</A
-> <A
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+>* <A
HREF="gnome-xml-parserinternals.html#XMLPARSEATTRIBUTE"
>xmlParseAttribute</A
> (<A
@@ -512,13 +571,10 @@
>xmlParserCtxtPtr</A
> ctxt,
<A
-HREF="gnome-xml-tree.html#XMLNODEPTR"
->xmlNodePtr</A
-> node);
-<A
-HREF="gnome-xml-tree.html#XMLNODEPTR"
->xmlNodePtr</A
-> <A
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+> **value);
+void <A
HREF="gnome-xml-parserinternals.html#XMLPARSESTARTTAG"
>xmlParseStartTag</A
> (<A
@@ -531,15 +587,7 @@
> (<A
HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
>xmlParserCtxtPtr</A
-> ctxt,
- <A
-HREF="gnome-xml-tree.html#XMLNSPTR"
->xmlNsPtr</A
-> *nsPtr,
- <A
-HREF="gnome-xml-tree.html#CHAR"
->CHAR</A
-> **tagPtr);
+> ctxt);
void <A
HREF="gnome-xml-parserinternals.html#XMLPARSECDSECT"
>xmlParseCDSect</A
@@ -554,10 +602,7 @@
HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
>xmlParserCtxtPtr</A
> ctxt);
-<A
-HREF="gnome-xml-tree.html#XMLNODEPTR"
->xmlNodePtr</A
-> <A
+void <A
HREF="gnome-xml-parserinternals.html#XMLPARSEELEMENT"
>xmlParseElement</A
> (<A
@@ -632,7 +677,7 @@
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4098"
+NAME="AEN4592"
></A
><H2
>Description</H2
@@ -642,14 +687,727 @@
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN4101"
+NAME="AEN4595"
></A
><H2
>Details</H2
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4103"
+NAME="AEN4597"
+></A
+><H3
+><A
+NAME="IS-CHAR"
+></A
+>IS_CHAR()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#E8E8F8"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define IS_CHAR(c)</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFE0E0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>c</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4611"
+></A
+><H3
+><A
+NAME="IS-BLANK"
+></A
+>IS_BLANK()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#E8E8F8"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define IS_BLANK(c)</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFE0E0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>c</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4625"
+></A
+><H3
+><A
+NAME="IS-BASECHAR"
+></A
+>IS_BASECHAR()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#E8E8F8"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define IS_BASECHAR(c)</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFE0E0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>c</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4639"
+></A
+><H3
+><A
+NAME="IS-DIGIT"
+></A
+>IS_DIGIT()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#E8E8F8"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define IS_DIGIT(c)</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFE0E0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>c</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4653"
+></A
+><H3
+><A
+NAME="IS-COMBINING"
+></A
+>IS_COMBINING()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#E8E8F8"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define IS_COMBINING(c)</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFE0E0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>c</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4667"
+></A
+><H3
+><A
+NAME="IS-EXTENDER"
+></A
+>IS_EXTENDER()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#E8E8F8"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define IS_EXTENDER(c)</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFE0E0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>c</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4681"
+></A
+><H3
+><A
+NAME="IS-IDEOGRAPHIC"
+></A
+>IS_IDEOGRAPHIC()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#E8E8F8"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define IS_IDEOGRAPHIC(c) \
+ ((((c) >= 0x4e00) && ((c) <= 0x9fa5)) || \
+ (((c) >= 0xf900) && ((c) <= 0xfa2d)) || \
+ (((c) >= 0x3021) && ((c) <= 0x3029)) || \
+ ((c) == 0x3007))</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFE0E0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>c</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4695"
+></A
+><H3
+><A
+NAME="IS-LETTER"
+></A
+>IS_LETTER()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#E8E8F8"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define IS_LETTER(c)</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFE0E0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>c</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4709"
+></A
+><H3
+><A
+NAME="IS-PUBIDCHAR"
+></A
+>IS_PUBIDCHAR()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#E8E8F8"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define IS_PUBIDCHAR(c) \
+ (((c) == 0x20) || ((c) == 0x0D) || ((c) == 0x0A) || \
+ (((c) >= 'a') && ((c) <= 'z')) || \
+ (((c) >= 'A') && ((c) <= 'Z')) || \
+ (((c) >= '0') && ((c) <= '9')) || \
+ ((c) == '-') || ((c) == '\'') || ((c) == '(') || ((c) == ')') || \
+ ((c) == '+') || ((c) == ',') || ((c) == '.') || ((c) == '/') || \
+ ((c) == ':') || ((c) == '=') || ((c) == '?') || ((c) == ';') || \
+ ((c) == '!') || ((c) == '*') || ((c) == '#') || ((c) == '@') || \
+ ((c) == '$') || ((c) == '_') || ((c) == '%'))</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFE0E0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>c</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4723"
+></A
+><H3
+><A
+NAME="SKIP-EOL"
+></A
+>SKIP_EOL()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#E8E8F8"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define SKIP_EOL(p) \
+ if (*(p) == 0x13) { p++ ; if (*(p) == 0x10) p++; } \
+ if (*(p) == 0x10) { p++ ; if (*(p) == 0x13) p++; }</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFE0E0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>p</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4737"
+></A
+><H3
+><A
+NAME="MOVETO-ENDTAG"
+></A
+>MOVETO_ENDTAG()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#E8E8F8"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define MOVETO_ENDTAG(p) \
+ while (IS_CHAR(*p) && (*(p) != '>')) (p)++</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFE0E0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>p</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4751"
+></A
+><H3
+><A
+NAME="MOVETO-STARTTAG"
+></A
+>MOVETO_STARTTAG()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#E8E8F8"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define MOVETO_STARTTAG(p) \
+ while (IS_CHAR(*p) && (*(p) != '<')) (p)++</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFE0E0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>p</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4765"
></A
><H3
><A
@@ -728,7 +1486,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4123"
+NAME="AEN4785"
></A
><H3
><A
@@ -808,7 +1566,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4143"
+NAME="AEN4805"
></A
><H3
><A
@@ -904,7 +1662,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4167"
+NAME="AEN4829"
></A
><H3
><A
@@ -929,7 +1687,7 @@
></TABLE
><P
>Free all the memory used by a parser context. However the parsed
-document in ctxt->doc is not freed.</P
+document in ctxt->myDoc is not freed.</P
><P
></P
><DIV
@@ -968,7 +1726,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4183"
+NAME="AEN4845"
></A
><H3
><A
@@ -1054,7 +1812,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4204"
+NAME="AEN4866"
></A
><H3
><A
@@ -1156,7 +1914,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4230"
+NAME="AEN4892"
></A
><H3
><A
@@ -1241,7 +1999,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4251"
+NAME="AEN4913"
></A
><H3
><A
@@ -1325,7 +2083,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4273"
+NAME="AEN4935"
></A
><H3
><A
@@ -1388,7 +2146,116 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4289"
+NAME="AEN4951"
+></A
+><H3
+><A
+NAME="XMLSPLITQNAME"
+></A
+>xmlSplitQName()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#E8E8F8"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><A
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+>* xmlSplitQName (const <A
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+> *name,
+ <A
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+> **prefix);</PRE
+></TD
+></TR
+></TABLE
+><P
+>parse an XML qualified name string</P
+><P
+>[NS 5] QName ::= (Prefix ':')? LocalPart</P
+><P
+>[NS 6] Prefix ::= NCName</P
+><P
+>[NS 7] LocalPart ::= NCName</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFE0E0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>name</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> an XML parser context</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>prefix</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> a CHAR ** </TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>the function returns the local part, and prefix is updated
+to get the Prefix if any.</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4980"
></A
><H3
><A
@@ -1474,7 +2341,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4312"
+NAME="AEN5003"
></A
><H3
><A
@@ -1583,7 +2450,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4341"
+NAME="AEN5032"
></A
><H3
><A
@@ -1668,7 +2535,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4364"
+NAME="AEN5055"
></A
><H3
><A
@@ -1749,7 +2616,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4385"
+NAME="AEN5076"
></A
><H3
><A
@@ -1816,7 +2683,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4402"
+NAME="AEN5093"
></A
><H3
><A
@@ -1904,7 +2771,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4426"
+NAME="AEN5117"
></A
><H3
><A
@@ -1989,7 +2856,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4449"
+NAME="AEN5140"
></A
><H3
><A
@@ -2073,7 +2940,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4471"
+NAME="AEN5162"
></A
><H3
><A
@@ -2157,7 +3024,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4493"
+NAME="AEN5184"
></A
><H3
><A
@@ -2240,7 +3107,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4515"
+NAME="AEN5206"
></A
><H3
><A
@@ -2323,7 +3190,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4537"
+NAME="AEN5228"
></A
><H3
><A
@@ -2407,7 +3274,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4558"
+NAME="AEN5249"
></A
><H3
><A
@@ -2538,7 +3405,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4591"
+NAME="AEN5282"
></A
><H3
><A
@@ -2554,10 +3421,7 @@
><TD
><PRE
CLASS="PROGRAMLISTING"
-><A
-HREF="gnome-xml-tree.html#XMLNODEPTR"
->xmlNodePtr</A
-> xmlParseComment (<A
+>void xmlParseComment (<A
HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
>xmlParserCtxtPtr</A
> ctxt,
@@ -2573,9 +3437,6 @@
><P
>[15] Comment ::= '<!--' ((Char - '-') | ('-' (Char - '-')))* '-->'</P
><P
->TODO: this should call a SAX function which will handle (or not) the
-creation of the comment !</P
-><P
></P
><DIV
CLASS="INFORMALTABLE"
@@ -2622,21 +3483,6 @@
VALIGN="TOP"
> should we create a node, or just skip the content</TD
></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the comment node, or NULL</TD
-></TR
></TABLE
><P
></P
@@ -2645,7 +3491,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4618"
+NAME="AEN5303"
></A
><H3
><A
@@ -2728,7 +3574,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4640"
+NAME="AEN5325"
></A
><H3
><A
@@ -2795,7 +3641,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4658"
+NAME="AEN5343"
></A
><H3
><A
@@ -2870,7 +3716,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4678"
+NAME="AEN5363"
></A
><H3
><A
@@ -2945,7 +3791,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4700"
+NAME="AEN5385"
></A
><H3
><A
@@ -3056,7 +3902,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4729"
+NAME="AEN5414"
></A
><H3
><A
@@ -3141,7 +3987,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4752"
+NAME="AEN5437"
></A
><H3
><A
@@ -3224,7 +4070,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4774"
+NAME="AEN5459"
></A
><H3
><A
@@ -3327,7 +4173,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4801"
+NAME="AEN5486"
></A
><H3
><A
@@ -3433,7 +4279,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4829"
+NAME="AEN5514"
></A
><H3
><A
@@ -3500,7 +4346,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4847"
+NAME="AEN5532"
></A
><H3
><A
@@ -3592,7 +4438,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4871"
+NAME="AEN5556"
></A
><H3
><A
@@ -3684,7 +4530,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4896"
+NAME="AEN5581"
></A
><H3
><A
@@ -3807,7 +4653,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4927"
+NAME="AEN5612"
></A
><H3
><A
@@ -3889,7 +4735,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4949"
+NAME="AEN5634"
></A
><H3
><A
@@ -3957,7 +4803,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4967"
+NAME="AEN5652"
></A
><H3
><A
@@ -4044,7 +4890,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN4990"
+NAME="AEN5675"
></A
><H3
><A
@@ -4127,7 +4973,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5012"
+NAME="AEN5697"
></A
><H3
><A
@@ -4211,7 +5057,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5034"
+NAME="AEN5719"
></A
><H3
><A
@@ -4294,7 +5140,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5056"
+NAME="AEN5741"
></A
><H3
><A
@@ -4360,7 +5206,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5073"
+NAME="AEN5758"
></A
><H3
><A
@@ -4377,16 +5223,16 @@
><PRE
CLASS="PROGRAMLISTING"
><A
-HREF="gnome-xml-tree.html#XMLATTRPTR"
->xmlAttrPtr</A
-> xmlParseAttribute (<A
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+>* xmlParseAttribute (<A
HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
>xmlParserCtxtPtr</A
> ctxt,
<A
-HREF="gnome-xml-tree.html#XMLNODEPTR"
->xmlNodePtr</A
-> node);</PRE
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+> **value);</PRE
></TD
></TR
></TABLE
@@ -4441,14 +5287,14 @@
><TT
CLASS="PARAMETER"
><I
->node</I
+>value</I
></TT
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> the node carrying the attribute</TD
+> a CHAR ** used to store the value of the attribute</TD
></TR
><TR
><TD
@@ -4463,7 +5309,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
->the attribute just parsed of NULL in case of error.</TD
+>the attribute name, and the value in *value.</TD
></TR
></TABLE
><P
@@ -4473,7 +5319,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5104"
+NAME="AEN5789"
></A
><H3
><A
@@ -4489,10 +5335,7 @@
><TD
><PRE
CLASS="PROGRAMLISTING"
-><A
-HREF="gnome-xml-tree.html#XMLNODEPTR"
->xmlNodePtr</A
-> xmlParseStartTag (<A
+>void xmlParseStartTag (<A
HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
>xmlParserCtxtPtr</A
> ctxt);</PRE
@@ -4542,21 +5385,6 @@
VALIGN="TOP"
> an XML parser context</TD
></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the XML new node or NULL.</TD
-></TR
></TABLE
><P
></P
@@ -4565,7 +5393,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5130"
+NAME="AEN5810"
></A
><H3
><A
@@ -4584,15 +5412,7 @@
>void xmlParseEndTag (<A
HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
>xmlParserCtxtPtr</A
-> ctxt,
- <A
-HREF="gnome-xml-tree.html#XMLNSPTR"
->xmlNsPtr</A
-> *nsPtr,
- <A
-HREF="gnome-xml-tree.html#CHAR"
->CHAR</A
-> **tagPtr);</PRE
+> ctxt);</PRE
></TD
></TR
></TABLE
@@ -4603,9 +5423,7 @@
><P
>With namespace</P
><P
->[9] ETag ::= '</' QName S? '>'</P
-><P
->tagPtr receive the tag name just read</P
+>[NS 9] ETag ::= '</' QName S? '>'</P
><P
></P
><DIV
@@ -4636,40 +5454,6 @@
VALIGN="TOP"
> an XML parser context</TD
></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->nsPtr</I
-></TT
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
-> the current node namespace definition</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->tagPtr</I
-></TT
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
-> CHAR** receive the tag value</TD
-></TR
></TABLE
><P
></P
@@ -4678,7 +5462,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5160"
+NAME="AEN5829"
></A
><H3
><A
@@ -4749,7 +5533,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5180"
+NAME="AEN5849"
></A
><H3
><A
@@ -4814,7 +5598,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5197"
+NAME="AEN5866"
></A
><H3
><A
@@ -4830,10 +5614,7 @@
><TD
><PRE
CLASS="PROGRAMLISTING"
-><A
-HREF="gnome-xml-tree.html#XMLNODEPTR"
->xmlNodePtr</A
-> xmlParseElement (<A
+>void xmlParseElement (<A
HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
>xmlParserCtxtPtr</A
> ctxt);</PRE
@@ -4876,21 +5657,6 @@
VALIGN="TOP"
> an XML parser context</TD
></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the XML new node or NULL</TD
-></TR
></TABLE
><P
></P
@@ -4899,7 +5665,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5220"
+NAME="AEN5884"
></A
><H3
><A
@@ -4982,7 +5748,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5242"
+NAME="AEN5906"
></A
><H3
><A
@@ -5067,7 +5833,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5265"
+NAME="AEN5929"
></A
><H3
><A
@@ -5150,7 +5916,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5287"
+NAME="AEN5951"
></A
><H3
><A
@@ -5235,7 +6001,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5310"
+NAME="AEN5974"
></A
><H3
><A
@@ -5316,7 +6082,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5331"
+NAME="AEN5995"
></A
><H3
><A
@@ -5381,7 +6147,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN5348"
+NAME="AEN6012"
></A
><H3
><A