| <HTML |
| ><HEAD |
| ><TITLE |
| >uri</TITLE |
| ><META |
| NAME="GENERATOR" |
| CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ |
| "><LINK |
| REL="HOME" |
| TITLE="Gnome XML Library Reference Manual" |
| HREF="book1.html"><LINK |
| REL="UP" |
| TITLE="Libxml Library Reference" |
| HREF="libxml-lib.html"><LINK |
| REL="PREVIOUS" |
| TITLE="valid" |
| HREF="libxml-valid.html"><LINK |
| REL="NEXT" |
| TITLE="xmlerror" |
| HREF="libxml-xmlerror.html"></HEAD |
| ><BODY |
| CLASS="REFENTRY" |
| BGCOLOR="#FFFFFF" |
| TEXT="#000000" |
| LINK="#0000FF" |
| VLINK="#840084" |
| ALINK="#0000FF" |
| ><DIV |
| CLASS="NAVHEADER" |
| ><TABLE |
| WIDTH="100%" |
| BORDER="0" |
| BGCOLOR="#000000" |
| CELLPADDING="1" |
| CELLSPACING="0" |
| ><TR |
| ><TH |
| COLSPAN="4" |
| ALIGN="center" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="5" |
| >Gnome XML Library Reference Manual</FONT |
| ></TH |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="25%" |
| BGCOLOR="#C00000" |
| ALIGN="left" |
| ><A |
| HREF="libxml-valid.html" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| ><<< Previous Page</B |
| ></FONT |
| ></A |
| ></TD |
| ><TD |
| WIDTH="25%" |
| BGCOLOR="#0000C0" |
| ALIGN="center" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| ><A |
| HREF="book1.html" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| >Home</B |
| ></FONT |
| ></A |
| ></B |
| ></FONT |
| ></TD |
| ><TD |
| WIDTH="25%" |
| BGCOLOR="#00C000" |
| ALIGN="center" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| ><A |
| HREF="libxml-lib.html" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| >Up</B |
| ></FONT |
| ></A |
| ></B |
| ></FONT |
| ></TD |
| ><TD |
| WIDTH="25%" |
| BGCOLOR="#C00000" |
| ALIGN="right" |
| ><A |
| HREF="libxml-xmlerror.html" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| >Next Page >>></B |
| ></FONT |
| ></A |
| ></TD |
| ></TR |
| ></TABLE |
| ></DIV |
| ><H1 |
| ><A |
| NAME="LIBXML-URI">uri</H1 |
| ><DIV |
| CLASS="REFNAMEDIV" |
| ><A |
| NAME="AEN10609" |
| ></A |
| ><H2 |
| >Name</H2 |
| >uri -- </DIV |
| ><DIV |
| CLASS="REFSYNOPSISDIV" |
| ><A |
| NAME="AEN10612"><H2 |
| >Synopsis</H2 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="SYNOPSIS" |
| > |
| |
| struct <A |
| HREF="libxml-uri.html#XMLURI" |
| >xmlURI</A |
| >; |
| typedef <A |
| HREF="libxml-uri.html#XMLURIPTR" |
| >xmlURIPtr</A |
| >; |
| <A |
| HREF="libxml-uri.html#XMLURIPTR" |
| >xmlURIPtr</A |
| > <A |
| HREF="libxml-uri.html#XMLCREATEURI" |
| >xmlCreateURI</A |
| > (void); |
| <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| >* <A |
| HREF="libxml-uri.html#XMLBUILDURI" |
| >xmlBuildURI</A |
| > (const <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| > *URI, |
| const <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| > *base); |
| <A |
| HREF="libxml-uri.html#XMLURIPTR" |
| >xmlURIPtr</A |
| > <A |
| HREF="libxml-uri.html#XMLPARSEURI" |
| >xmlParseURI</A |
| > (const char *str); |
| int <A |
| HREF="libxml-uri.html#XMLPARSEURIREFERENCE" |
| >xmlParseURIReference</A |
| > (<A |
| HREF="libxml-uri.html#XMLURIPTR" |
| >xmlURIPtr</A |
| > uri, |
| const char *str); |
| <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| >* <A |
| HREF="libxml-uri.html#XMLSAVEURI" |
| >xmlSaveUri</A |
| > (<A |
| HREF="libxml-uri.html#XMLURIPTR" |
| >xmlURIPtr</A |
| > uri); |
| void <A |
| HREF="libxml-uri.html#XMLPRINTURI" |
| >xmlPrintURI</A |
| > (<GTKDOCLINK |
| HREF="FILE-CAPS" |
| >FILE</GTKDOCLINK |
| > *stream, |
| <A |
| HREF="libxml-uri.html#XMLURIPTR" |
| >xmlURIPtr</A |
| > uri); |
| <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| >* <A |
| HREF="libxml-uri.html#XMLURIESCAPESTR" |
| >xmlURIEscapeStr</A |
| > (const <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| > *str, |
| const <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| > *list); |
| char* <A |
| HREF="libxml-uri.html#XMLURIUNESCAPESTRING" |
| >xmlURIUnescapeString</A |
| > (const char *str, |
| int len, |
| char *target); |
| int <A |
| HREF="libxml-uri.html#XMLNORMALIZEURIPATH" |
| >xmlNormalizeURIPath</A |
| > (char *path); |
| <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| >* <A |
| HREF="libxml-uri.html#XMLURIESCAPE" |
| >xmlURIEscape</A |
| > (const <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| > *str); |
| void <A |
| HREF="libxml-uri.html#XMLFREEURI" |
| >xmlFreeURI</A |
| > (<A |
| HREF="libxml-uri.html#XMLURIPTR" |
| >xmlURIPtr</A |
| > uri);</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ></DIV |
| ><DIV |
| CLASS="REFSECT1" |
| ><A |
| NAME="AEN10644" |
| ></A |
| ><H2 |
| >Description</H2 |
| ><P |
| ></P |
| ></DIV |
| ><DIV |
| CLASS="REFSECT1" |
| ><A |
| NAME="AEN10647" |
| ></A |
| ><H2 |
| >Details</H2 |
| ><DIV |
| CLASS="REFSECT2" |
| ><A |
| NAME="AEN10649" |
| ></A |
| ><H3 |
| ><A |
| NAME="XMLURI" |
| ></A |
| >struct xmlURI</H3 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="PROGRAMLISTING" |
| >struct xmlURI { |
| char *scheme; /* the URI scheme */ |
| char *opaque; /* opaque part */ |
| char *authority; /* the authority part */ |
| char *server; /* the server part */ |
| char *user; /* the user part */ |
| int port; /* the port number */ |
| char *path; /* the path string */ |
| char *query; /* the query string */ |
| char *fragment; /* the fragment identifier */ |
| int cleanup; /* parsing potentially unclean URI */ |
| };</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ><P |
| >A parsed URI reference. This is a struct containing the various fields |
| as described in RFC 2396 but separated for further processing.</P |
| ><P |
| ></P |
| ></DIV |
| ><HR><DIV |
| CLASS="REFSECT2" |
| ><A |
| NAME="AEN10655" |
| ></A |
| ><H3 |
| ><A |
| NAME="XMLURIPTR" |
| ></A |
| >xmlURIPtr</H3 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="PROGRAMLISTING" |
| >typedef xmlURI *xmlURIPtr;</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ><P |
| ></P |
| ></DIV |
| ><HR><DIV |
| CLASS="REFSECT2" |
| ><A |
| NAME="AEN10660" |
| ></A |
| ><H3 |
| ><A |
| NAME="XMLCREATEURI" |
| ></A |
| >xmlCreateURI ()</H3 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="PROGRAMLISTING" |
| ><A |
| HREF="libxml-uri.html#XMLURIPTR" |
| >xmlURIPtr</A |
| > xmlCreateURI (void);</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ><P |
| >Simply creates an empty xmlURI</P |
| ><P |
| ></P |
| ><DIV |
| CLASS="INFORMALTABLE" |
| ><A |
| NAME="AEN10667"><P |
| ></P |
| ><TABLE |
| BORDER="0" |
| WIDTH="100%" |
| BGCOLOR="#FFD0D0" |
| CELLSPACING="0" |
| CELLPADDING="4" |
| CLASS="CALSTABLE" |
| ><TBODY |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><SPAN |
| CLASS="emphasis" |
| ><I |
| CLASS="EMPHASIS" |
| >Returns</I |
| ></SPAN |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| >the new structure or NULL in case of error</TD |
| ></TR |
| ></TBODY |
| ></TABLE |
| ><P |
| ></P |
| ></DIV |
| ></DIV |
| ><HR><DIV |
| CLASS="REFSECT2" |
| ><A |
| NAME="AEN10676" |
| ></A |
| ><H3 |
| ><A |
| NAME="XMLBUILDURI" |
| ></A |
| >xmlBuildURI ()</H3 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="PROGRAMLISTING" |
| ><A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| >* xmlBuildURI (const <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| > *URI, |
| const <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| > *base);</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ><P |
| >Computes he final URI of the reference done by checking that |
| the given URI is valid, and building the final URI using the |
| base URI. This is processed according to section 5.2 of the |
| RFC 2396</P |
| ><P |
| >5.2. Resolving Relative References to Absolute Form</P |
| ><P |
| ></P |
| ><DIV |
| CLASS="INFORMALTABLE" |
| ><A |
| NAME="AEN10686"><P |
| ></P |
| ><TABLE |
| BORDER="0" |
| WIDTH="100%" |
| BGCOLOR="#FFD0D0" |
| CELLSPACING="0" |
| CELLPADDING="4" |
| CLASS="CALSTABLE" |
| ><TBODY |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >URI</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > the URI instance found in the document</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >base</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > the base value</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><SPAN |
| CLASS="emphasis" |
| ><I |
| CLASS="EMPHASIS" |
| >Returns</I |
| ></SPAN |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| >a new URI string (to be freed by the caller) or NULL in case |
| of error.</TD |
| ></TR |
| ></TBODY |
| ></TABLE |
| ><P |
| ></P |
| ></DIV |
| ></DIV |
| ><HR><DIV |
| CLASS="REFSECT2" |
| ><A |
| NAME="AEN10703" |
| ></A |
| ><H3 |
| ><A |
| NAME="XMLPARSEURI" |
| ></A |
| >xmlParseURI ()</H3 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="PROGRAMLISTING" |
| ><A |
| HREF="libxml-uri.html#XMLURIPTR" |
| >xmlURIPtr</A |
| > xmlParseURI (const char *str);</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ><P |
| >Parse an URI </P |
| ><P |
| >URI-reference = [ absoluteURI | relativeURI ] [ "#" fragment ]</P |
| ><P |
| ></P |
| ><DIV |
| CLASS="INFORMALTABLE" |
| ><A |
| NAME="AEN10711"><P |
| ></P |
| ><TABLE |
| BORDER="0" |
| WIDTH="100%" |
| BGCOLOR="#FFD0D0" |
| CELLSPACING="0" |
| CELLPADDING="4" |
| CLASS="CALSTABLE" |
| ><TBODY |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >str</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > the URI string to analyze</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><SPAN |
| CLASS="emphasis" |
| ><I |
| CLASS="EMPHASIS" |
| >Returns</I |
| ></SPAN |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| >a newly build xmlURIPtr or NULL in case of error</TD |
| ></TR |
| ></TBODY |
| ></TABLE |
| ><P |
| ></P |
| ></DIV |
| ></DIV |
| ><HR><DIV |
| CLASS="REFSECT2" |
| ><A |
| NAME="AEN10724" |
| ></A |
| ><H3 |
| ><A |
| NAME="XMLPARSEURIREFERENCE" |
| ></A |
| >xmlParseURIReference ()</H3 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="PROGRAMLISTING" |
| >int xmlParseURIReference (<A |
| HREF="libxml-uri.html#XMLURIPTR" |
| >xmlURIPtr</A |
| > uri, |
| const char *str);</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ><P |
| >Parse an URI reference string and fills in the appropriate fields |
| of the <TT |
| CLASS="PARAMETER" |
| ><I |
| >uri</I |
| ></TT |
| > structure</P |
| ><P |
| >URI-reference = [ absoluteURI | relativeURI ] [ "#" fragment ]</P |
| ><P |
| ></P |
| ><DIV |
| CLASS="INFORMALTABLE" |
| ><A |
| NAME="AEN10733"><P |
| ></P |
| ><TABLE |
| BORDER="0" |
| WIDTH="100%" |
| BGCOLOR="#FFD0D0" |
| CELLSPACING="0" |
| CELLPADDING="4" |
| CLASS="CALSTABLE" |
| ><TBODY |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >uri</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > pointer to an URI structure</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >str</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > the string to analyze</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><SPAN |
| CLASS="emphasis" |
| ><I |
| CLASS="EMPHASIS" |
| >Returns</I |
| ></SPAN |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| >0 or the error code</TD |
| ></TR |
| ></TBODY |
| ></TABLE |
| ><P |
| ></P |
| ></DIV |
| ></DIV |
| ><HR><DIV |
| CLASS="REFSECT2" |
| ><A |
| NAME="AEN10750" |
| ></A |
| ><H3 |
| ><A |
| NAME="XMLSAVEURI" |
| ></A |
| >xmlSaveUri ()</H3 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="PROGRAMLISTING" |
| ><A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| >* xmlSaveUri (<A |
| HREF="libxml-uri.html#XMLURIPTR" |
| >xmlURIPtr</A |
| > uri);</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ><P |
| >Save the URI as an escaped string</P |
| ><P |
| ></P |
| ><DIV |
| CLASS="INFORMALTABLE" |
| ><A |
| NAME="AEN10758"><P |
| ></P |
| ><TABLE |
| BORDER="0" |
| WIDTH="100%" |
| BGCOLOR="#FFD0D0" |
| CELLSPACING="0" |
| CELLPADDING="4" |
| CLASS="CALSTABLE" |
| ><TBODY |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >uri</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > pointer to an xmlURI</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><SPAN |
| CLASS="emphasis" |
| ><I |
| CLASS="EMPHASIS" |
| >Returns</I |
| ></SPAN |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| >a new string (to be deallocated by caller)</TD |
| ></TR |
| ></TBODY |
| ></TABLE |
| ><P |
| ></P |
| ></DIV |
| ></DIV |
| ><HR><DIV |
| CLASS="REFSECT2" |
| ><A |
| NAME="AEN10771" |
| ></A |
| ><H3 |
| ><A |
| NAME="XMLPRINTURI" |
| ></A |
| >xmlPrintURI ()</H3 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="PROGRAMLISTING" |
| >void xmlPrintURI (<GTKDOCLINK |
| HREF="FILE-CAPS" |
| >FILE</GTKDOCLINK |
| > *stream, |
| <A |
| HREF="libxml-uri.html#XMLURIPTR" |
| >xmlURIPtr</A |
| > uri);</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ><P |
| >Prints the URI in the stream <TT |
| CLASS="PARAMETER" |
| ><I |
| >steam</I |
| ></TT |
| >.</P |
| ><P |
| ></P |
| ><DIV |
| CLASS="INFORMALTABLE" |
| ><A |
| NAME="AEN10780"><P |
| ></P |
| ><TABLE |
| BORDER="0" |
| WIDTH="100%" |
| BGCOLOR="#FFD0D0" |
| CELLSPACING="0" |
| CELLPADDING="4" |
| CLASS="CALSTABLE" |
| ><TBODY |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >stream</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > a FILE* for the output</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >uri</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > pointer to an xmlURI</TD |
| ></TR |
| ></TBODY |
| ></TABLE |
| ><P |
| ></P |
| ></DIV |
| ></DIV |
| ><HR><DIV |
| CLASS="REFSECT2" |
| ><A |
| NAME="AEN10793" |
| ></A |
| ><H3 |
| ><A |
| NAME="XMLURIESCAPESTR" |
| ></A |
| >xmlURIEscapeStr ()</H3 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="PROGRAMLISTING" |
| ><A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| >* xmlURIEscapeStr (const <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| > *str, |
| const <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| > *list);</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ><P |
| >This routine escapes a string to hex, ignoring reserved characters (a-z) |
| and the characters in the exception list.</P |
| ><P |
| ></P |
| ><DIV |
| CLASS="INFORMALTABLE" |
| ><A |
| NAME="AEN10802"><P |
| ></P |
| ><TABLE |
| BORDER="0" |
| WIDTH="100%" |
| BGCOLOR="#FFD0D0" |
| CELLSPACING="0" |
| CELLPADDING="4" |
| CLASS="CALSTABLE" |
| ><TBODY |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >str</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > string to escape</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >list</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > exception list string of chars not to escape</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><SPAN |
| CLASS="emphasis" |
| ><I |
| CLASS="EMPHASIS" |
| >Returns</I |
| ></SPAN |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| >a new escaped string or NULL in case of error.</TD |
| ></TR |
| ></TBODY |
| ></TABLE |
| ><P |
| ></P |
| ></DIV |
| ></DIV |
| ><HR><DIV |
| CLASS="REFSECT2" |
| ><A |
| NAME="AEN10819" |
| ></A |
| ><H3 |
| ><A |
| NAME="XMLURIUNESCAPESTRING" |
| ></A |
| >xmlURIUnescapeString ()</H3 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="PROGRAMLISTING" |
| >char* xmlURIUnescapeString (const char *str, |
| int len, |
| char *target);</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ><P |
| >Unescaping routine, does not do validity checks ! |
| Output is direct unsigned char translation of <TT |
| CLASS="LITERAL" |
| >XX</TT |
| > values (no encoding)</P |
| ><P |
| ></P |
| ><DIV |
| CLASS="INFORMALTABLE" |
| ><A |
| NAME="AEN10826"><P |
| ></P |
| ><TABLE |
| BORDER="0" |
| WIDTH="100%" |
| BGCOLOR="#FFD0D0" |
| CELLSPACING="0" |
| CELLPADDING="4" |
| CLASS="CALSTABLE" |
| ><TBODY |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >str</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > the string to unescape</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >len</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > the length in bytes to unescape (or <= 0 to indicate full string)</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >target</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > optional destination buffer</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><SPAN |
| CLASS="emphasis" |
| ><I |
| CLASS="EMPHASIS" |
| >Returns</I |
| ></SPAN |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| >an copy of the string, but unescaped</TD |
| ></TR |
| ></TBODY |
| ></TABLE |
| ><P |
| ></P |
| ></DIV |
| ></DIV |
| ><HR><DIV |
| CLASS="REFSECT2" |
| ><A |
| NAME="AEN10847" |
| ></A |
| ><H3 |
| ><A |
| NAME="XMLNORMALIZEURIPATH" |
| ></A |
| >xmlNormalizeURIPath ()</H3 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="PROGRAMLISTING" |
| >int xmlNormalizeURIPath (char *path);</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ><P |
| >Applies the 5 normalization steps to a path string--that is, RFC 2396 |
| Section 5.2, steps 6.c through 6.g.</P |
| ><P |
| >Normalization occurs directly on the string, no new allocation is done</P |
| ><P |
| ></P |
| ><DIV |
| CLASS="INFORMALTABLE" |
| ><A |
| NAME="AEN10854"><P |
| ></P |
| ><TABLE |
| BORDER="0" |
| WIDTH="100%" |
| BGCOLOR="#FFD0D0" |
| CELLSPACING="0" |
| CELLPADDING="4" |
| CLASS="CALSTABLE" |
| ><TBODY |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >path</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > pointer to the path string</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><SPAN |
| CLASS="emphasis" |
| ><I |
| CLASS="EMPHASIS" |
| >Returns</I |
| ></SPAN |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| >0 or an error code</TD |
| ></TR |
| ></TBODY |
| ></TABLE |
| ><P |
| ></P |
| ></DIV |
| ></DIV |
| ><HR><DIV |
| CLASS="REFSECT2" |
| ><A |
| NAME="AEN10867" |
| ></A |
| ><H3 |
| ><A |
| NAME="XMLURIESCAPE" |
| ></A |
| >xmlURIEscape ()</H3 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="PROGRAMLISTING" |
| ><A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| >* xmlURIEscape (const <A |
| HREF="libxml-tree.html#XMLCHAR" |
| >xmlChar</A |
| > *str);</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ><P |
| >Escaping routine, does not do validity checks ! |
| It will try to escape the chars needing this, but this is heuristic |
| based it's impossible to be sure.</P |
| ><P |
| ></P |
| ><DIV |
| CLASS="INFORMALTABLE" |
| ><A |
| NAME="AEN10875"><P |
| ></P |
| ><TABLE |
| BORDER="0" |
| WIDTH="100%" |
| BGCOLOR="#FFD0D0" |
| CELLSPACING="0" |
| CELLPADDING="4" |
| CLASS="CALSTABLE" |
| ><TBODY |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >str</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > the string of the URI to escape</TD |
| ></TR |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><SPAN |
| CLASS="emphasis" |
| ><I |
| CLASS="EMPHASIS" |
| >Returns</I |
| ></SPAN |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| >an copy of the string, but escaped |
| |
| 25 May 2001 |
| Uses xmlParseURI and xmlURIEscapeStr to try to escape correctly |
| according to RFC2396. |
| - Carl Douglas</TD |
| ></TR |
| ></TBODY |
| ></TABLE |
| ><P |
| ></P |
| ></DIV |
| ></DIV |
| ><HR><DIV |
| CLASS="REFSECT2" |
| ><A |
| NAME="AEN10888" |
| ></A |
| ><H3 |
| ><A |
| NAME="XMLFREEURI" |
| ></A |
| >xmlFreeURI ()</H3 |
| ><TABLE |
| BORDER="0" |
| BGCOLOR="#D6E8FF" |
| WIDTH="100%" |
| CELLPADDING="6" |
| ><TR |
| ><TD |
| ><PRE |
| CLASS="PROGRAMLISTING" |
| >void xmlFreeURI (<A |
| HREF="libxml-uri.html#XMLURIPTR" |
| >xmlURIPtr</A |
| > uri);</PRE |
| ></TD |
| ></TR |
| ></TABLE |
| ><P |
| >Free up the xmlURI struct</P |
| ><P |
| ></P |
| ><DIV |
| CLASS="INFORMALTABLE" |
| ><A |
| NAME="AEN10895"><P |
| ></P |
| ><TABLE |
| BORDER="0" |
| WIDTH="100%" |
| BGCOLOR="#FFD0D0" |
| CELLSPACING="0" |
| CELLPADDING="4" |
| CLASS="CALSTABLE" |
| ><TBODY |
| ><TR |
| ><TD |
| WIDTH="20%" |
| ALIGN="RIGHT" |
| VALIGN="TOP" |
| ><TT |
| CLASS="PARAMETER" |
| ><I |
| >uri</I |
| ></TT |
| > :</TD |
| ><TD |
| WIDTH="80%" |
| ALIGN="LEFT" |
| VALIGN="TOP" |
| > pointer to an xmlURI</TD |
| ></TR |
| ></TBODY |
| ></TABLE |
| ><P |
| ></P |
| ></DIV |
| ></DIV |
| ></DIV |
| ><DIV |
| CLASS="NAVFOOTER" |
| ><BR |
| CLEAR="all"><BR><TABLE |
| WIDTH="100%" |
| BORDER="0" |
| BGCOLOR="#000000" |
| CELLPADDING="1" |
| CELLSPACING="0" |
| ><TR |
| ><TD |
| WIDTH="25%" |
| BGCOLOR="#C00000" |
| ALIGN="left" |
| ><A |
| HREF="libxml-valid.html" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| ><<< Previous Page</B |
| ></FONT |
| ></A |
| ></TD |
| ><TD |
| WIDTH="25%" |
| BGCOLOR="#0000C0" |
| ALIGN="center" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| ><A |
| HREF="book1.html" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| >Home</B |
| ></FONT |
| ></A |
| ></B |
| ></FONT |
| ></TD |
| ><TD |
| WIDTH="25%" |
| BGCOLOR="#00C000" |
| ALIGN="center" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| ><A |
| HREF="libxml-lib.html" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| >Up</B |
| ></FONT |
| ></A |
| ></B |
| ></FONT |
| ></TD |
| ><TD |
| WIDTH="25%" |
| BGCOLOR="#C00000" |
| ALIGN="right" |
| ><A |
| HREF="libxml-xmlerror.html" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| >Next Page >>></B |
| ></FONT |
| ></A |
| ></TD |
| ></TR |
| ><TR |
| ><TD |
| COLSPAN="2" |
| ALIGN="left" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| >valid</B |
| ></FONT |
| ></TD |
| ><TD |
| COLSPAN="2" |
| ALIGN="right" |
| ><FONT |
| COLOR="#FFFFFF" |
| SIZE="3" |
| ><B |
| >xmlerror</B |
| ></FONT |
| ></TD |
| ></TR |
| ></TABLE |
| ></DIV |
| ></BODY |
| ></HTML |
| > |