blob: 7d9e1fa85c1f0e5398932c2c4a5e0f102016cfff [file] [log] [blame]
Daniel Veillardb732a0e2000-10-15 11:27:01 +00001<HTML
2><HEAD
3><TITLE
4>uri</TITLE
5><META
6NAME="GENERATOR"
Daniel Veillard503b8932001-01-05 06:36:31 +00007CONTENT="Modular DocBook HTML Stylesheet Version 1.44"><LINK
Daniel Veillardb732a0e2000-10-15 11:27:01 +00008REL="HOME"
9TITLE="Gnome XML Library Reference Manual"
10HREF="book1.html"><LINK
11REL="UP"
12TITLE="Libxml Library Reference"
13HREF="libxml-lib.html"><LINK
14REL="PREVIOUS"
15TITLE="valid"
Daniel Veillard9cb5ff42001-01-29 08:22:21 +000016HREF="libxml-valid.html"><LINK
Daniel Veillardb732a0e2000-10-15 11:27:01 +000017REL="NEXT"
Daniel Veillard503b8932001-01-05 06:36:31 +000018TITLE="HTMLparser"
Daniel Veillard9cb5ff42001-01-29 08:22:21 +000019HREF="libxml-htmlparser.html"></HEAD
Daniel Veillardb732a0e2000-10-15 11:27:01 +000020><BODY
21BGCOLOR="#FFFFFF"
22TEXT="#000000"
Daniel Veillard503b8932001-01-05 06:36:31 +000023LINK="#0000FF"
24VLINK="#840084"
25ALINK="#0000FF"
Daniel Veillardb732a0e2000-10-15 11:27:01 +000026><DIV
27CLASS="NAVHEADER"
28><TABLE
29WIDTH="100%"
30BORDER="0"
31BGCOLOR="#000000"
32CELLPADDING="1"
33CELLSPACING="0"
34><TR
35><TH
36COLSPAN="4"
37ALIGN="center"
38><FONT
39COLOR="#FFFFFF"
40SIZE="5"
41>Gnome XML Library Reference Manual</FONT
42></TH
43></TR
44><TR
45><TD
46WIDTH="25%"
47BGCOLOR="#C00000"
48ALIGN="left"
49><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +000050HREF="libxml-valid.html"
Daniel Veillardb732a0e2000-10-15 11:27:01 +000051><FONT
52COLOR="#FFFFFF"
53SIZE="3"
54><B
55>&#60;&#60;&#60; Previous Page</B
56></FONT
57></A
58></TD
59><TD
60WIDTH="25%"
61BGCOLOR="#0000C0"
62ALIGN="center"
63><FONT
64COLOR="#FFFFFF"
65SIZE="3"
66><B
67><A
68HREF="book1.html"
69><FONT
70COLOR="#FFFFFF"
71SIZE="3"
72><B
73>Home</B
74></FONT
75></A
76></B
77></FONT
78></TD
79><TD
80WIDTH="25%"
81BGCOLOR="#00C000"
82ALIGN="center"
83><FONT
84COLOR="#FFFFFF"
85SIZE="3"
86><B
87><A
88HREF="libxml-lib.html"
89><FONT
90COLOR="#FFFFFF"
91SIZE="3"
92><B
93>Up</B
94></FONT
95></A
96></B
97></FONT
98></TD
99><TD
100WIDTH="25%"
101BGCOLOR="#C00000"
102ALIGN="right"
103><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000104HREF="libxml-htmlparser.html"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000105><FONT
106COLOR="#FFFFFF"
107SIZE="3"
108><B
109>Next Page &#62;&#62;&#62;</B
110></FONT
111></A
112></TD
113></TR
114></TABLE
115></DIV
116><H1
Daniel Veillard503b8932001-01-05 06:36:31 +0000117><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000118NAME="LIBXML-URI"
Daniel Veillard503b8932001-01-05 06:36:31 +0000119>uri</A
120></H1
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000121><DIV
122CLASS="REFNAMEDIV"
123><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000124NAME="AEN9355"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000125></A
126><H2
127>Name</H2
Daniel Veillard503b8932001-01-05 06:36:31 +0000128>uri&nbsp;--&nbsp;</DIV
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000129><DIV
130CLASS="REFSYNOPSISDIV"
131><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000132NAME="AEN9358"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000133></A
134><H2
135>Synopsis</H2
136><TABLE
137BORDER="0"
138BGCOLOR="#D6E8FF"
139WIDTH="100%"
140CELLPADDING="6"
141><TR
142><TD
143><PRE
144CLASS="SYNOPSIS"
145>&#13;
146
147struct <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000148HREF="libxml-uri.html#XMLURI"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000149>xmlURI</A
150>;
151typedef <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000152HREF="libxml-uri.html#XMLURIPTR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000153>xmlURIPtr</A
154>;
155<A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000156HREF="libxml-uri.html#XMLURIPTR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000157>xmlURIPtr</A
158> <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000159HREF="libxml-uri.html#XMLCREATEURI"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000160>xmlCreateURI</A
161> (void);
162<A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000163HREF="libxml-tree.html#XMLCHAR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000164>xmlChar</A
165>* <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000166HREF="libxml-uri.html#XMLBUILDURI"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000167>xmlBuildURI</A
168> (const <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000169HREF="libxml-tree.html#XMLCHAR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000170>xmlChar</A
171> *URI,
172 const <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000173HREF="libxml-tree.html#XMLCHAR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000174>xmlChar</A
175> *base);
176<A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000177HREF="libxml-uri.html#XMLURIPTR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000178>xmlURIPtr</A
179> <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000180HREF="libxml-uri.html#XMLPARSEURI"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000181>xmlParseURI</A
182> (const char *URI);
183int <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000184HREF="libxml-uri.html#XMLPARSEURIREFERENCE"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000185>xmlParseURIReference</A
186> (<A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000187HREF="libxml-uri.html#XMLURIPTR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000188>xmlURIPtr</A
189> uri,
190 const char *str);
191<A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000192HREF="libxml-tree.html#XMLCHAR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000193>xmlChar</A
194>* <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000195HREF="libxml-uri.html#XMLSAVEURI"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000196>xmlSaveUri</A
197> (<A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000198HREF="libxml-uri.html#XMLURIPTR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000199>xmlURIPtr</A
200> uri);
201void <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000202HREF="libxml-uri.html#XMLPRINTURI"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000203>xmlPrintURI</A
204> (<GTKDOCLINK
Daniel Veillard503b8932001-01-05 06:36:31 +0000205HREF="FILE-CAPS"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000206>FILE</GTKDOCLINK
207> *stream,
208 <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000209HREF="libxml-uri.html#XMLURIPTR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000210>xmlURIPtr</A
211> uri);
212char* <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000213HREF="libxml-uri.html#XMLURIUNESCAPESTRING"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000214>xmlURIUnescapeString</A
215> (const char *str,
216 int len,
217 char *target);
218int <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000219HREF="libxml-uri.html#XMLNORMALIZEURIPATH"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000220>xmlNormalizeURIPath</A
221> (char *path);
Daniel Veillard28929b22000-11-13 18:22:49 +0000222<A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000223HREF="libxml-tree.html#XMLCHAR"
Daniel Veillard28929b22000-11-13 18:22:49 +0000224>xmlChar</A
225>* <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000226HREF="libxml-uri.html#XMLURIESCAPE"
Daniel Veillard28929b22000-11-13 18:22:49 +0000227>xmlURIEscape</A
228> (const <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000229HREF="libxml-tree.html#XMLCHAR"
Daniel Veillard28929b22000-11-13 18:22:49 +0000230>xmlChar</A
231> *str);
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000232void <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000233HREF="libxml-uri.html#XMLFREEURI"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000234>xmlFreeURI</A
235> (<A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000236HREF="libxml-uri.html#XMLURIPTR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000237>xmlURIPtr</A
238> uri);</PRE
239></TD
240></TR
241></TABLE
242></DIV
243><DIV
244CLASS="REFSECT1"
245><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000246NAME="AEN9386"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000247></A
248><H2
249>Description</H2
250><P
251></P
252></DIV
253><DIV
254CLASS="REFSECT1"
255><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000256NAME="AEN9389"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000257></A
258><H2
259>Details</H2
260><DIV
261CLASS="REFSECT2"
262><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000263NAME="AEN9391"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000264></A
265><H3
266><A
267NAME="XMLURI"
268></A
269>struct xmlURI</H3
270><TABLE
271BORDER="0"
272BGCOLOR="#D6E8FF"
273WIDTH="100%"
274CELLPADDING="6"
275><TR
276><TD
277><PRE
278CLASS="PROGRAMLISTING"
279>struct xmlURI {
280 char *scheme;
281 char *opaque;
282 char *authority;
283 char *server;
284 char *user;
285 int port;
286 char *path;
287 char *query;
288 char *fragment;
289};</PRE
290></TD
291></TR
292></TABLE
293><P
294></P
295></DIV
296><HR><DIV
297CLASS="REFSECT2"
298><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000299NAME="AEN9396"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000300></A
301><H3
302><A
303NAME="XMLURIPTR"
304></A
305>xmlURIPtr</H3
306><TABLE
307BORDER="0"
308BGCOLOR="#D6E8FF"
309WIDTH="100%"
310CELLPADDING="6"
311><TR
312><TD
313><PRE
314CLASS="PROGRAMLISTING"
315>typedef xmlURI *xmlURIPtr;</PRE
316></TD
317></TR
318></TABLE
319><P
320></P
321></DIV
322><HR><DIV
323CLASS="REFSECT2"
324><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000325NAME="AEN9401"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000326></A
327><H3
328><A
329NAME="XMLCREATEURI"
330></A
331>xmlCreateURI ()</H3
332><TABLE
333BORDER="0"
334BGCOLOR="#D6E8FF"
335WIDTH="100%"
336CELLPADDING="6"
337><TR
338><TD
339><PRE
340CLASS="PROGRAMLISTING"
341><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000342HREF="libxml-uri.html#XMLURIPTR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000343>xmlURIPtr</A
344> xmlCreateURI (void);</PRE
345></TD
346></TR
347></TABLE
348><P
349>Simply creates an empty xmlURI</P
350><P
351></P
352><DIV
353CLASS="INFORMALTABLE"
354><P
355></P
356><TABLE
357BORDER="0"
358WIDTH="100%"
359BGCOLOR="#FFD0D0"
360CELLSPACING="0"
361CELLPADDING="4"
362CLASS="CALSTABLE"
363><TR
364><TD
365WIDTH="20%"
366ALIGN="RIGHT"
367VALIGN="TOP"
368><I
369CLASS="EMPHASIS"
370>Returns</I
371> :</TD
372><TD
373WIDTH="80%"
374ALIGN="LEFT"
375VALIGN="TOP"
376>the new structure or NULL in case of error</TD
377></TR
378></TABLE
379><P
380></P
381></DIV
382></DIV
383><HR><DIV
384CLASS="REFSECT2"
385><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000386NAME="AEN9417"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000387></A
388><H3
389><A
390NAME="XMLBUILDURI"
391></A
392>xmlBuildURI ()</H3
393><TABLE
394BORDER="0"
395BGCOLOR="#D6E8FF"
396WIDTH="100%"
397CELLPADDING="6"
398><TR
399><TD
400><PRE
401CLASS="PROGRAMLISTING"
402><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000403HREF="libxml-tree.html#XMLCHAR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000404>xmlChar</A
405>* xmlBuildURI (const <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000406HREF="libxml-tree.html#XMLCHAR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000407>xmlChar</A
408> *URI,
409 const <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000410HREF="libxml-tree.html#XMLCHAR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000411>xmlChar</A
412> *base);</PRE
413></TD
414></TR
415></TABLE
416><P
417>Computes he final URI of the reference done by checking that
418the given URI is valid, and building the final URI using the
419base URI. This is processed according to section 5.2 of the
420RFC 2396</P
421><P
422>5.2. Resolving Relative References to Absolute Form</P
423><P
424></P
425><DIV
426CLASS="INFORMALTABLE"
427><P
428></P
429><TABLE
430BORDER="0"
431WIDTH="100%"
432BGCOLOR="#FFD0D0"
433CELLSPACING="0"
434CELLPADDING="4"
435CLASS="CALSTABLE"
436><TR
437><TD
438WIDTH="20%"
439ALIGN="RIGHT"
440VALIGN="TOP"
441><TT
442CLASS="PARAMETER"
443><I
444>URI</I
445></TT
446>&nbsp;:</TD
447><TD
448WIDTH="80%"
449ALIGN="LEFT"
450VALIGN="TOP"
451> the URI instance found in the document</TD
452></TR
453><TR
454><TD
455WIDTH="20%"
456ALIGN="RIGHT"
457VALIGN="TOP"
458><TT
459CLASS="PARAMETER"
460><I
461>base</I
462></TT
463>&nbsp;:</TD
464><TD
465WIDTH="80%"
466ALIGN="LEFT"
467VALIGN="TOP"
468> the base value</TD
469></TR
470><TR
471><TD
472WIDTH="20%"
473ALIGN="RIGHT"
474VALIGN="TOP"
475><I
476CLASS="EMPHASIS"
477>Returns</I
478> :</TD
479><TD
480WIDTH="80%"
481ALIGN="LEFT"
482VALIGN="TOP"
483>a new URI string (to be freed by the caller) or NULL in case
484of error.</TD
485></TR
486></TABLE
487><P
488></P
489></DIV
490></DIV
491><HR><DIV
492CLASS="REFSECT2"
493><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000494NAME="AEN9444"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000495></A
496><H3
497><A
498NAME="XMLPARSEURI"
499></A
500>xmlParseURI ()</H3
501><TABLE
502BORDER="0"
503BGCOLOR="#D6E8FF"
504WIDTH="100%"
505CELLPADDING="6"
506><TR
507><TD
508><PRE
509CLASS="PROGRAMLISTING"
510><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000511HREF="libxml-uri.html#XMLURIPTR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000512>xmlURIPtr</A
513> xmlParseURI (const char *URI);</PRE
514></TD
515></TR
516></TABLE
517><P
518>Parse an URI </P
519><P
520>URI-reference = [ absoluteURI | relativeURI ] [ "#" fragment ]</P
521><P
522></P
523><DIV
524CLASS="INFORMALTABLE"
525><P
526></P
527><TABLE
528BORDER="0"
529WIDTH="100%"
530BGCOLOR="#FFD0D0"
531CELLSPACING="0"
532CELLPADDING="4"
533CLASS="CALSTABLE"
534><TR
535><TD
536WIDTH="20%"
537ALIGN="RIGHT"
538VALIGN="TOP"
539><TT
540CLASS="PARAMETER"
541><I
542>URI</I
543></TT
544>&nbsp;:</TD
545><TD
546WIDTH="80%"
547ALIGN="LEFT"
548VALIGN="TOP"
549>&nbsp;</TD
550></TR
551><TR
552><TD
553WIDTH="20%"
554ALIGN="RIGHT"
555VALIGN="TOP"
556><I
557CLASS="EMPHASIS"
558>Returns</I
559> :</TD
560><TD
561WIDTH="80%"
562ALIGN="LEFT"
563VALIGN="TOP"
564>a newly build xmlURIPtr or NULL in case of error</TD
565></TR
566></TABLE
567><P
568></P
569></DIV
570></DIV
571><HR><DIV
572CLASS="REFSECT2"
573><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000574NAME="AEN9465"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000575></A
576><H3
577><A
578NAME="XMLPARSEURIREFERENCE"
579></A
580>xmlParseURIReference ()</H3
581><TABLE
582BORDER="0"
583BGCOLOR="#D6E8FF"
584WIDTH="100%"
585CELLPADDING="6"
586><TR
587><TD
588><PRE
589CLASS="PROGRAMLISTING"
590>int xmlParseURIReference (<A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000591HREF="libxml-uri.html#XMLURIPTR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000592>xmlURIPtr</A
593> uri,
594 const char *str);</PRE
595></TD
596></TR
597></TABLE
598><P
599>Parse an URI reference string and fills in the appropriate fields
600of the <TT
601CLASS="PARAMETER"
602><I
603>uri</I
604></TT
605> structure</P
606><P
607>URI-reference = [ absoluteURI | relativeURI ] [ "#" fragment ]</P
608><P
609></P
610><DIV
611CLASS="INFORMALTABLE"
612><P
613></P
614><TABLE
615BORDER="0"
616WIDTH="100%"
617BGCOLOR="#FFD0D0"
618CELLSPACING="0"
619CELLPADDING="4"
620CLASS="CALSTABLE"
621><TR
622><TD
623WIDTH="20%"
624ALIGN="RIGHT"
625VALIGN="TOP"
626><TT
627CLASS="PARAMETER"
628><I
629>uri</I
630></TT
631>&nbsp;:</TD
632><TD
633WIDTH="80%"
634ALIGN="LEFT"
635VALIGN="TOP"
636> pointer to an URI structure</TD
637></TR
638><TR
639><TD
640WIDTH="20%"
641ALIGN="RIGHT"
642VALIGN="TOP"
643><TT
644CLASS="PARAMETER"
645><I
646>str</I
647></TT
648>&nbsp;:</TD
649><TD
650WIDTH="80%"
651ALIGN="LEFT"
652VALIGN="TOP"
653> the string to analyze</TD
654></TR
655><TR
656><TD
657WIDTH="20%"
658ALIGN="RIGHT"
659VALIGN="TOP"
660><I
661CLASS="EMPHASIS"
662>Returns</I
663> :</TD
664><TD
665WIDTH="80%"
666ALIGN="LEFT"
667VALIGN="TOP"
668>0 or the error code</TD
669></TR
670></TABLE
671><P
672></P
673></DIV
674></DIV
675><HR><DIV
676CLASS="REFSECT2"
677><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000678NAME="AEN9491"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000679></A
680><H3
681><A
682NAME="XMLSAVEURI"
683></A
684>xmlSaveUri ()</H3
685><TABLE
686BORDER="0"
687BGCOLOR="#D6E8FF"
688WIDTH="100%"
689CELLPADDING="6"
690><TR
691><TD
692><PRE
693CLASS="PROGRAMLISTING"
694><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000695HREF="libxml-tree.html#XMLCHAR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000696>xmlChar</A
697>* xmlSaveUri (<A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000698HREF="libxml-uri.html#XMLURIPTR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000699>xmlURIPtr</A
700> uri);</PRE
701></TD
702></TR
703></TABLE
704><P
705>Save the URI as an escaped string</P
706><P
707></P
708><DIV
709CLASS="INFORMALTABLE"
710><P
711></P
712><TABLE
713BORDER="0"
714WIDTH="100%"
715BGCOLOR="#FFD0D0"
716CELLSPACING="0"
717CELLPADDING="4"
718CLASS="CALSTABLE"
719><TR
720><TD
721WIDTH="20%"
722ALIGN="RIGHT"
723VALIGN="TOP"
724><TT
725CLASS="PARAMETER"
726><I
727>uri</I
728></TT
729>&nbsp;:</TD
730><TD
731WIDTH="80%"
732ALIGN="LEFT"
733VALIGN="TOP"
734> pointer to an xmlURI</TD
735></TR
736><TR
737><TD
738WIDTH="20%"
739ALIGN="RIGHT"
740VALIGN="TOP"
741><I
742CLASS="EMPHASIS"
743>Returns</I
744> :</TD
745><TD
746WIDTH="80%"
747ALIGN="LEFT"
748VALIGN="TOP"
749>a new string (to be deallocated by caller)</TD
750></TR
751></TABLE
752><P
753></P
754></DIV
755></DIV
756><HR><DIV
757CLASS="REFSECT2"
758><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000759NAME="AEN9512"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000760></A
761><H3
762><A
763NAME="XMLPRINTURI"
764></A
765>xmlPrintURI ()</H3
766><TABLE
767BORDER="0"
768BGCOLOR="#D6E8FF"
769WIDTH="100%"
770CELLPADDING="6"
771><TR
772><TD
773><PRE
774CLASS="PROGRAMLISTING"
775>void xmlPrintURI (<GTKDOCLINK
Daniel Veillard503b8932001-01-05 06:36:31 +0000776HREF="FILE-CAPS"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000777>FILE</GTKDOCLINK
778> *stream,
779 <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000780HREF="libxml-uri.html#XMLURIPTR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000781>xmlURIPtr</A
782> uri);</PRE
783></TD
784></TR
785></TABLE
786><P
787>Prints the URI in the stream <TT
788CLASS="PARAMETER"
789><I
790>steam</I
791></TT
792>.</P
793><P
794></P
795><DIV
796CLASS="INFORMALTABLE"
797><P
798></P
799><TABLE
800BORDER="0"
801WIDTH="100%"
802BGCOLOR="#FFD0D0"
803CELLSPACING="0"
804CELLPADDING="4"
805CLASS="CALSTABLE"
806><TR
807><TD
808WIDTH="20%"
809ALIGN="RIGHT"
810VALIGN="TOP"
811><TT
812CLASS="PARAMETER"
813><I
814>stream</I
815></TT
816>&nbsp;:</TD
817><TD
818WIDTH="80%"
819ALIGN="LEFT"
820VALIGN="TOP"
821> a FILE* for the output</TD
822></TR
823><TR
824><TD
825WIDTH="20%"
826ALIGN="RIGHT"
827VALIGN="TOP"
828><TT
829CLASS="PARAMETER"
830><I
831>uri</I
832></TT
833>&nbsp;:</TD
834><TD
835WIDTH="80%"
836ALIGN="LEFT"
837VALIGN="TOP"
838> pointer to an xmlURI</TD
839></TR
840></TABLE
841><P
842></P
843></DIV
844></DIV
845><HR><DIV
846CLASS="REFSECT2"
847><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000848NAME="AEN9534"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000849></A
850><H3
851><A
852NAME="XMLURIUNESCAPESTRING"
853></A
854>xmlURIUnescapeString ()</H3
855><TABLE
856BORDER="0"
857BGCOLOR="#D6E8FF"
858WIDTH="100%"
859CELLPADDING="6"
860><TR
861><TD
862><PRE
863CLASS="PROGRAMLISTING"
864>char* xmlURIUnescapeString (const char *str,
865 int len,
866 char *target);</PRE
867></TD
868></TR
869></TABLE
870><P
871>Unescaping routine, does not do validity checks !
872Output is direct unsigned char translation of <TT
873CLASS="LITERAL"
874>XX</TT
875> values (no encoding)</P
876><P
877></P
878><DIV
879CLASS="INFORMALTABLE"
880><P
881></P
882><TABLE
883BORDER="0"
884WIDTH="100%"
885BGCOLOR="#FFD0D0"
886CELLSPACING="0"
887CELLPADDING="4"
888CLASS="CALSTABLE"
889><TR
890><TD
891WIDTH="20%"
892ALIGN="RIGHT"
893VALIGN="TOP"
894><TT
895CLASS="PARAMETER"
896><I
897>str</I
898></TT
899>&nbsp;:</TD
900><TD
901WIDTH="80%"
902ALIGN="LEFT"
903VALIGN="TOP"
904> the string to unescape</TD
905></TR
906><TR
907><TD
908WIDTH="20%"
909ALIGN="RIGHT"
910VALIGN="TOP"
911><TT
912CLASS="PARAMETER"
913><I
914>len</I
915></TT
916>&nbsp;:</TD
917><TD
918WIDTH="80%"
919ALIGN="LEFT"
920VALIGN="TOP"
921> the lenght in bytes to unescape (or &lt;= 0 to indicate full string)</TD
922></TR
923><TR
924><TD
925WIDTH="20%"
926ALIGN="RIGHT"
927VALIGN="TOP"
928><TT
929CLASS="PARAMETER"
930><I
931>target</I
932></TT
933>&nbsp;:</TD
934><TD
935WIDTH="80%"
936ALIGN="LEFT"
937VALIGN="TOP"
938> optionnal destination buffer</TD
939></TR
940><TR
941><TD
942WIDTH="20%"
943ALIGN="RIGHT"
944VALIGN="TOP"
945><I
946CLASS="EMPHASIS"
947>Returns</I
948> :</TD
949><TD
950WIDTH="80%"
951ALIGN="LEFT"
952VALIGN="TOP"
953>an copy of the string, but unescaped</TD
954></TR
955></TABLE
956><P
957></P
958></DIV
959></DIV
960><HR><DIV
961CLASS="REFSECT2"
962><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +0000963NAME="AEN9562"
Daniel Veillardb732a0e2000-10-15 11:27:01 +0000964></A
965><H3
966><A
967NAME="XMLNORMALIZEURIPATH"
968></A
969>xmlNormalizeURIPath ()</H3
970><TABLE
971BORDER="0"
972BGCOLOR="#D6E8FF"
973WIDTH="100%"
974CELLPADDING="6"
975><TR
976><TD
977><PRE
978CLASS="PROGRAMLISTING"
979>int xmlNormalizeURIPath (char *path);</PRE
980></TD
981></TR
982></TABLE
983><P
984>applies the 5 normalization steps to a path string
985Normalization occurs directly on the string, no new allocation is done</P
986><P
987></P
988><DIV
989CLASS="INFORMALTABLE"
990><P
991></P
992><TABLE
993BORDER="0"
994WIDTH="100%"
995BGCOLOR="#FFD0D0"
996CELLSPACING="0"
997CELLPADDING="4"
998CLASS="CALSTABLE"
999><TR
1000><TD
1001WIDTH="20%"
1002ALIGN="RIGHT"
1003VALIGN="TOP"
1004><TT
1005CLASS="PARAMETER"
1006><I
1007>path</I
1008></TT
1009>&nbsp;:</TD
1010><TD
1011WIDTH="80%"
1012ALIGN="LEFT"
1013VALIGN="TOP"
1014> pointer to the path string</TD
1015></TR
1016><TR
1017><TD
1018WIDTH="20%"
1019ALIGN="RIGHT"
1020VALIGN="TOP"
1021><I
1022CLASS="EMPHASIS"
1023>Returns</I
1024> :</TD
1025><TD
1026WIDTH="80%"
1027ALIGN="LEFT"
1028VALIGN="TOP"
1029>0 or an error code</TD
1030></TR
1031></TABLE
1032><P
1033></P
1034></DIV
1035></DIV
1036><HR><DIV
1037CLASS="REFSECT2"
1038><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +00001039NAME="AEN9581"
Daniel Veillard28929b22000-11-13 18:22:49 +00001040></A
1041><H3
1042><A
1043NAME="XMLURIESCAPE"
1044></A
1045>xmlURIEscape ()</H3
1046><TABLE
1047BORDER="0"
1048BGCOLOR="#D6E8FF"
1049WIDTH="100%"
1050CELLPADDING="6"
1051><TR
1052><TD
1053><PRE
1054CLASS="PROGRAMLISTING"
1055><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +00001056HREF="libxml-tree.html#XMLCHAR"
Daniel Veillard28929b22000-11-13 18:22:49 +00001057>xmlChar</A
1058>* xmlURIEscape (const <A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +00001059HREF="libxml-tree.html#XMLCHAR"
Daniel Veillard28929b22000-11-13 18:22:49 +00001060>xmlChar</A
1061> *str);</PRE
1062></TD
1063></TR
1064></TABLE
1065><P
1066>Escaping routine, does not do validity checks !
1067It will try to escape the chars needing this, but this is heuristic
1068based it's impossible to be sure.</P
1069><P
1070></P
1071><DIV
1072CLASS="INFORMALTABLE"
1073><P
1074></P
1075><TABLE
1076BORDER="0"
1077WIDTH="100%"
1078BGCOLOR="#FFD0D0"
1079CELLSPACING="0"
1080CELLPADDING="4"
1081CLASS="CALSTABLE"
1082><TR
1083><TD
1084WIDTH="20%"
1085ALIGN="RIGHT"
1086VALIGN="TOP"
1087><TT
1088CLASS="PARAMETER"
1089><I
1090>str</I
1091></TT
1092>&nbsp;:</TD
1093><TD
1094WIDTH="80%"
1095ALIGN="LEFT"
1096VALIGN="TOP"
1097> the string of the URI to escape</TD
1098></TR
1099><TR
1100><TD
1101WIDTH="20%"
1102ALIGN="RIGHT"
1103VALIGN="TOP"
1104><I
1105CLASS="EMPHASIS"
1106>Returns</I
1107> :</TD
1108><TD
1109WIDTH="80%"
1110ALIGN="LEFT"
1111VALIGN="TOP"
1112>an copy of the string, but escaped</TD
1113></TR
1114></TABLE
1115><P
1116></P
1117></DIV
1118></DIV
1119><HR><DIV
1120CLASS="REFSECT2"
1121><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +00001122NAME="AEN9602"
Daniel Veillardb732a0e2000-10-15 11:27:01 +00001123></A
1124><H3
1125><A
1126NAME="XMLFREEURI"
1127></A
1128>xmlFreeURI ()</H3
1129><TABLE
1130BORDER="0"
1131BGCOLOR="#D6E8FF"
1132WIDTH="100%"
1133CELLPADDING="6"
1134><TR
1135><TD
1136><PRE
1137CLASS="PROGRAMLISTING"
1138>void xmlFreeURI (<A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +00001139HREF="libxml-uri.html#XMLURIPTR"
Daniel Veillardb732a0e2000-10-15 11:27:01 +00001140>xmlURIPtr</A
1141> uri);</PRE
1142></TD
1143></TR
1144></TABLE
1145><P
1146>Free up the xmlURI struct</P
1147><P
1148></P
1149><DIV
1150CLASS="INFORMALTABLE"
1151><P
1152></P
1153><TABLE
1154BORDER="0"
1155WIDTH="100%"
1156BGCOLOR="#FFD0D0"
1157CELLSPACING="0"
1158CELLPADDING="4"
1159CLASS="CALSTABLE"
1160><TR
1161><TD
1162WIDTH="20%"
1163ALIGN="RIGHT"
1164VALIGN="TOP"
1165><TT
1166CLASS="PARAMETER"
1167><I
1168>uri</I
1169></TT
1170>&nbsp;:</TD
1171><TD
1172WIDTH="80%"
1173ALIGN="LEFT"
1174VALIGN="TOP"
1175> pointer to an xmlURI</TD
1176></TR
1177></TABLE
1178><P
1179></P
1180></DIV
1181></DIV
1182></DIV
1183><DIV
1184CLASS="NAVFOOTER"
1185><BR
1186CLEAR="all"><BR><TABLE
1187WIDTH="100%"
1188BORDER="0"
1189BGCOLOR="#000000"
1190CELLPADDING="1"
1191CELLSPACING="0"
1192><TR
1193><TD
1194WIDTH="25%"
1195BGCOLOR="#C00000"
1196ALIGN="left"
1197><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +00001198HREF="libxml-valid.html"
Daniel Veillardb732a0e2000-10-15 11:27:01 +00001199><FONT
1200COLOR="#FFFFFF"
1201SIZE="3"
1202><B
1203>&#60;&#60;&#60; Previous Page</B
1204></FONT
1205></A
1206></TD
1207><TD
1208WIDTH="25%"
1209BGCOLOR="#0000C0"
1210ALIGN="center"
1211><FONT
1212COLOR="#FFFFFF"
1213SIZE="3"
1214><B
1215><A
1216HREF="book1.html"
1217><FONT
1218COLOR="#FFFFFF"
1219SIZE="3"
1220><B
1221>Home</B
1222></FONT
1223></A
1224></B
1225></FONT
1226></TD
1227><TD
1228WIDTH="25%"
1229BGCOLOR="#00C000"
1230ALIGN="center"
1231><FONT
1232COLOR="#FFFFFF"
1233SIZE="3"
1234><B
1235><A
1236HREF="libxml-lib.html"
1237><FONT
1238COLOR="#FFFFFF"
1239SIZE="3"
1240><B
1241>Up</B
1242></FONT
1243></A
1244></B
1245></FONT
1246></TD
1247><TD
1248WIDTH="25%"
1249BGCOLOR="#C00000"
1250ALIGN="right"
1251><A
Daniel Veillard9cb5ff42001-01-29 08:22:21 +00001252HREF="libxml-htmlparser.html"
Daniel Veillardb732a0e2000-10-15 11:27:01 +00001253><FONT
1254COLOR="#FFFFFF"
1255SIZE="3"
1256><B
1257>Next Page &#62;&#62;&#62;</B
1258></FONT
1259></A
1260></TD
1261></TR
1262><TR
1263><TD
1264COLSPAN="2"
1265ALIGN="left"
1266><FONT
1267COLOR="#FFFFFF"
1268SIZE="3"
1269><B
1270>valid</B
1271></FONT
1272></TD
1273><TD
1274COLSPAN="2"
1275ALIGN="right"
1276><FONT
1277COLOR="#FFFFFF"
1278SIZE="3"
1279><B
Daniel Veillard503b8932001-01-05 06:36:31 +00001280>HTMLparser</B
Daniel Veillardb732a0e2000-10-15 11:27:01 +00001281></FONT
1282></TD
1283></TR
1284></TABLE
1285></DIV
1286></BODY
1287></HTML
1288>