7 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
10 TITLE="Gnome XML Library Reference Manual"
11 HREF="book1.html"><LINK
13 TITLE="Libxml Library Reference"
14 HREF="libxml-lib.html"><LINK
16 TITLE="xpathInternals"
17 HREF="libxml-xpathinternals.html"><LINK
20 HREF="libxml-xinclude.html"></HEAD
43 >Gnome XML Library Reference Manual</FONT
52 HREF="libxml-xpathinternals.html"
57 ><<< Previous Page</B
90 HREF="libxml-lib.html"
106 HREF="libxml-xinclude.html"
111 >Next Page >>></B
120 NAME="LIBXML-XPOINTER">xpointer</H1
128 >xpointer -- </DIV
130 CLASS="REFSYNOPSISDIV"
146 HREF="libxml-xpointer.html#XMLLOCATIONSET"
150 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
151 >xmlLocationSetPtr</A
154 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
155 >xmlLocationSetPtr</A
157 HREF="libxml-xpointer.html#XMLXPTRLOCATIONSETCREATE"
158 >xmlXPtrLocationSetCreate</A
160 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
161 >xmlXPathObjectPtr</A
164 HREF="libxml-xpointer.html#XMLXPTRFREELOCATIONSET"
165 >xmlXPtrFreeLocationSet</A
167 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
168 >xmlLocationSetPtr</A
171 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
172 >xmlLocationSetPtr</A
174 HREF="libxml-xpointer.html#XMLXPTRLOCATIONSETMERGE"
175 >xmlXPtrLocationSetMerge</A
177 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
178 >xmlLocationSetPtr</A
181 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
182 >xmlLocationSetPtr</A
185 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
186 >xmlXPathObjectPtr</A
188 HREF="libxml-xpointer.html#XMLXPTRNEWRANGE"
191 HREF="libxml-tree.html#XMLNODEPTR"
196 HREF="libxml-tree.html#XMLNODEPTR"
201 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
202 >xmlXPathObjectPtr</A
204 HREF="libxml-xpointer.html#XMLXPTRNEWRANGEPOINTS"
205 >xmlXPtrNewRangePoints</A
207 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
208 >xmlXPathObjectPtr</A
211 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
212 >xmlXPathObjectPtr</A
215 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
216 >xmlXPathObjectPtr</A
218 HREF="libxml-xpointer.html#XMLXPTRNEWRANGENODEPOINT"
219 >xmlXPtrNewRangeNodePoint</A
221 HREF="libxml-tree.html#XMLNODEPTR"
225 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
226 >xmlXPathObjectPtr</A
229 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
230 >xmlXPathObjectPtr</A
232 HREF="libxml-xpointer.html#XMLXPTRNEWRANGEPOINTNODE"
233 >xmlXPtrNewRangePointNode</A
235 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
236 >xmlXPathObjectPtr</A
239 HREF="libxml-tree.html#XMLNODEPTR"
243 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
244 >xmlXPathObjectPtr</A
246 HREF="libxml-xpointer.html#XMLXPTRNEWRANGENODES"
247 >xmlXPtrNewRangeNodes</A
249 HREF="libxml-tree.html#XMLNODEPTR"
253 HREF="libxml-tree.html#XMLNODEPTR"
257 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
258 >xmlXPathObjectPtr</A
260 HREF="libxml-xpointer.html#XMLXPTRNEWLOCATIONSETNODES"
261 >xmlXPtrNewLocationSetNodes</A
264 HREF="libxml-tree.html#XMLNODEPTR"
268 HREF="libxml-tree.html#XMLNODEPTR"
272 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
273 >xmlXPathObjectPtr</A
275 HREF="libxml-xpointer.html#XMLXPTRNEWLOCATIONSETNODESET"
276 >xmlXPtrNewLocationSetNodeSet</A
279 HREF="libxml-xpath.html#XMLNODESETPTR"
283 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
284 >xmlXPathObjectPtr</A
286 HREF="libxml-xpointer.html#XMLXPTRNEWRANGENODEOBJECT"
287 >xmlXPtrNewRangeNodeObject</A
289 HREF="libxml-tree.html#XMLNODEPTR"
293 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
294 >xmlXPathObjectPtr</A
297 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
298 >xmlXPathObjectPtr</A
300 HREF="libxml-xpointer.html#XMLXPTRNEWCOLLAPSEDRANGE"
301 >xmlXPtrNewCollapsedRange</A
303 HREF="libxml-tree.html#XMLNODEPTR"
307 HREF="libxml-xpointer.html#XMLXPTRLOCATIONSETADD"
308 >xmlXPtrLocationSetAdd</A
310 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
311 >xmlLocationSetPtr</A
314 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
315 >xmlXPathObjectPtr</A
318 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
319 >xmlXPathObjectPtr</A
321 HREF="libxml-xpointer.html#XMLXPTRWRAPLOCATIONSET"
322 >xmlXPtrWrapLocationSet</A
324 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
325 >xmlLocationSetPtr</A
328 HREF="libxml-xpointer.html#XMLXPTRLOCATIONSETDEL"
329 >xmlXPtrLocationSetDel</A
331 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
332 >xmlLocationSetPtr</A
335 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
336 >xmlXPathObjectPtr</A
339 HREF="libxml-xpointer.html#XMLXPTRLOCATIONSETREMOVE"
340 >xmlXPtrLocationSetRemove</A
342 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
343 >xmlLocationSetPtr</A
347 HREF="libxml-xpath.html#XMLXPATHCONTEXTPTR"
348 >xmlXPathContextPtr</A
350 HREF="libxml-xpointer.html#XMLXPTRNEWCONTEXT"
351 >xmlXPtrNewContext</A
353 HREF="libxml-tree.html#XMLDOCPTR"
357 HREF="libxml-tree.html#XMLNODEPTR"
361 HREF="libxml-tree.html#XMLNODEPTR"
365 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
366 >xmlXPathObjectPtr</A
368 HREF="libxml-xpointer.html#XMLXPTREVAL"
371 HREF="libxml-tree.html#XMLCHAR"
375 HREF="libxml-xpath.html#XMLXPATHCONTEXTPTR"
376 >xmlXPathContextPtr</A
379 HREF="libxml-xpointer.html#XMLXPTRRANGETOFUNCTION"
380 >xmlXPtrRangeToFunction</A
382 HREF="libxml-xpath.html#XMLXPATHPARSERCONTEXTPTR"
383 >xmlXPathParserContextPtr</A
387 HREF="libxml-tree.html#XMLNODEPTR"
390 HREF="libxml-xpointer.html#XMLXPTRBUILDNODELIST"
391 >xmlXPtrBuildNodeList</A
393 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
394 >xmlXPathObjectPtr</A
397 HREF="libxml-xpointer.html#XMLXPTREVALRANGEPREDICATE"
398 >xmlXPtrEvalRangePredicate</A
400 HREF="libxml-xpath.html#XMLXPATHPARSERCONTEXTPTR"
401 >xmlXPathParserContextPtr</A
431 NAME="XMLLOCATIONSET"
433 >struct xmlLocationSet</H3
442 CLASS="PROGRAMLISTING"
443 >struct xmlLocationSet {
444 int locNr; /* number of locations in the set */
445 int locMax; /* size of the array as allocated */
446 xmlXPathObjectPtr *locTab;/* array of locations */
461 NAME="XMLLOCATIONSETPTR"
463 >xmlLocationSetPtr</H3
472 CLASS="PROGRAMLISTING"
473 >typedef xmlLocationSet *xmlLocationSetPtr;</PRE
487 NAME="XMLXPTRLOCATIONSETCREATE"
489 >xmlXPtrLocationSetCreate ()</H3
498 CLASS="PROGRAMLISTING"
500 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
501 >xmlLocationSetPtr</A
502 > xmlXPtrLocationSetCreate (<A
503 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
504 >xmlXPathObjectPtr</A
510 >Create a new xmlLocationSetPtr of type double and of value <TT
519 CLASS="INFORMALTABLE"
546 > an initial xmlXPathObjectPtr, or NULL</TD
564 >the newly created object.</TD
579 NAME="XMLXPTRFREELOCATIONSET"
581 >xmlXPtrFreeLocationSet ()</H3
590 CLASS="PROGRAMLISTING"
591 >void xmlXPtrFreeLocationSet (<A
592 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
593 >xmlLocationSetPtr</A
599 >Free the LocationSet compound (not the actual ranges !).</P
603 CLASS="INFORMALTABLE"
630 > the xmlLocationSetPtr to free</TD
645 NAME="XMLXPTRLOCATIONSETMERGE"
647 >xmlXPtrLocationSetMerge ()</H3
656 CLASS="PROGRAMLISTING"
658 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
659 >xmlLocationSetPtr</A
660 > xmlXPtrLocationSetMerge (<A
661 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
662 >xmlLocationSetPtr</A
665 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
666 >xmlLocationSetPtr</A
672 >Merges two rangesets, all ranges from <TT
686 CLASS="INFORMALTABLE"
713 > the first LocationSet</TD
730 > the second LocationSet</TD
748 >val1 once extended or NULL in case of error.</TD
763 NAME="XMLXPTRNEWRANGE"
765 >xmlXPtrNewRange ()</H3
774 CLASS="PROGRAMLISTING"
776 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
777 >xmlXPathObjectPtr</A
778 > xmlXPtrNewRange (<A
779 HREF="libxml-tree.html#XMLNODEPTR"
784 HREF="libxml-tree.html#XMLNODEPTR"
792 >Create a new xmlXPathObjectPtr of type range</P
796 CLASS="INFORMALTABLE"
823 > the starting node</TD
840 > the start index</TD
857 > the ending point</TD
874 > the ending index</TD
892 >the newly created object.</TD
907 NAME="XMLXPTRNEWRANGEPOINTS"
909 >xmlXPtrNewRangePoints ()</H3
918 CLASS="PROGRAMLISTING"
920 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
921 >xmlXPathObjectPtr</A
922 > xmlXPtrNewRangePoints (<A
923 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
924 >xmlXPathObjectPtr</A
927 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
928 >xmlXPathObjectPtr</A
934 >Create a new xmlXPathObjectPtr of type range using 2 Points</P
938 CLASS="INFORMALTABLE"
965 > the starting point</TD
982 > the ending point</TD
1000 >the newly created object.</TD
1015 NAME="XMLXPTRNEWRANGENODEPOINT"
1017 >xmlXPtrNewRangeNodePoint ()</H3
1026 CLASS="PROGRAMLISTING"
1028 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
1029 >xmlXPathObjectPtr</A
1030 > xmlXPtrNewRangeNodePoint (<A
1031 HREF="libxml-tree.html#XMLNODEPTR"
1035 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
1036 >xmlXPathObjectPtr</A
1042 >Create a new xmlXPathObjectPtr of type range from a node to a point</P
1046 CLASS="INFORMALTABLE"
1073 > the starting node</TD
1090 > the ending point</TD
1108 >the newly created object.</TD
1123 NAME="XMLXPTRNEWRANGEPOINTNODE"
1125 >xmlXPtrNewRangePointNode ()</H3
1134 CLASS="PROGRAMLISTING"
1136 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
1137 >xmlXPathObjectPtr</A
1138 > xmlXPtrNewRangePointNode (<A
1139 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
1140 >xmlXPathObjectPtr</A
1143 HREF="libxml-tree.html#XMLNODEPTR"
1150 >Create a new xmlXPathObjectPtr of type range from a point to a node</P
1154 CLASS="INFORMALTABLE"
1181 > the starting point</TD
1198 > the ending node</TD
1216 >the newly created object.</TD
1231 NAME="XMLXPTRNEWRANGENODES"
1233 >xmlXPtrNewRangeNodes ()</H3
1242 CLASS="PROGRAMLISTING"
1244 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
1245 >xmlXPathObjectPtr</A
1246 > xmlXPtrNewRangeNodes (<A
1247 HREF="libxml-tree.html#XMLNODEPTR"
1251 HREF="libxml-tree.html#XMLNODEPTR"
1258 >Create a new xmlXPathObjectPtr of type range using 2 nodes</P
1262 CLASS="INFORMALTABLE"
1289 > the starting node</TD
1306 > the ending node</TD
1324 >the newly created object.</TD
1339 NAME="XMLXPTRNEWLOCATIONSETNODES"
1341 >xmlXPtrNewLocationSetNodes ()</H3
1350 CLASS="PROGRAMLISTING"
1352 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
1353 >xmlXPathObjectPtr</A
1354 > xmlXPtrNewLocationSetNodes
1356 HREF="libxml-tree.html#XMLNODEPTR"
1360 HREF="libxml-tree.html#XMLNODEPTR"
1367 >Create a new xmlXPathObjectPtr of type LocationSet and initialize
1368 it with the single range made of the two nodes <TT
1382 CLASS="INFORMALTABLE"
1409 > the start NodePtr value</TD
1426 > the end NodePtr value or NULL</TD
1444 >the newly created object.</TD
1459 NAME="XMLXPTRNEWLOCATIONSETNODESET"
1461 >xmlXPtrNewLocationSetNodeSet ()</H3
1470 CLASS="PROGRAMLISTING"
1472 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
1473 >xmlXPathObjectPtr</A
1474 > xmlXPtrNewLocationSetNodeSet
1476 HREF="libxml-xpath.html#XMLNODESETPTR"
1483 >Create a new xmlXPathObjectPtr of type LocationSet and initialize
1484 it with all the nodes from <TT
1493 CLASS="INFORMALTABLE"
1538 >the newly created object.</TD
1553 NAME="XMLXPTRNEWRANGENODEOBJECT"
1555 >xmlXPtrNewRangeNodeObject ()</H3
1564 CLASS="PROGRAMLISTING"
1566 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
1567 >xmlXPathObjectPtr</A
1568 > xmlXPtrNewRangeNodeObject (<A
1569 HREF="libxml-tree.html#XMLNODEPTR"
1573 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
1574 >xmlXPathObjectPtr</A
1580 >Create a new xmlXPathObjectPtr of type range from a not to an object</P
1584 CLASS="INFORMALTABLE"
1611 > the starting node</TD
1628 > the ending object</TD
1646 >the newly created object.</TD
1661 NAME="XMLXPTRNEWCOLLAPSEDRANGE"
1663 >xmlXPtrNewCollapsedRange ()</H3
1672 CLASS="PROGRAMLISTING"
1674 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
1675 >xmlXPathObjectPtr</A
1676 > xmlXPtrNewCollapsedRange (<A
1677 HREF="libxml-tree.html#XMLNODEPTR"
1684 >Create a new xmlXPathObjectPtr of type range using a single nodes</P
1688 CLASS="INFORMALTABLE"
1715 > the starting and ending node</TD
1733 >the newly created object.</TD
1748 NAME="XMLXPTRLOCATIONSETADD"
1750 >xmlXPtrLocationSetAdd ()</H3
1759 CLASS="PROGRAMLISTING"
1760 >void xmlXPtrLocationSetAdd (<A
1761 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
1762 >xmlLocationSetPtr</A
1765 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
1766 >xmlXPathObjectPtr</A
1772 >add a new xmlXPathObjectPtr to an existing LocationSet
1773 If the location already exist in the set <TT
1782 CLASS="INFORMALTABLE"
1809 > the initial range set</TD
1826 > a new xmlXPathObjectPtr</TD
1841 NAME="XMLXPTRWRAPLOCATIONSET"
1843 >xmlXPtrWrapLocationSet ()</H3
1852 CLASS="PROGRAMLISTING"
1854 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
1855 >xmlXPathObjectPtr</A
1856 > xmlXPtrWrapLocationSet (<A
1857 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
1858 >xmlLocationSetPtr</A
1864 >Wrap the LocationSet <TT
1869 > in a new xmlXPathObjectPtr</P
1873 CLASS="INFORMALTABLE"
1900 > the LocationSet value</TD
1918 >the newly created object.</TD
1933 NAME="XMLXPTRLOCATIONSETDEL"
1935 >xmlXPtrLocationSetDel ()</H3
1944 CLASS="PROGRAMLISTING"
1945 >void xmlXPtrLocationSetDel (<A
1946 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
1947 >xmlLocationSetPtr</A
1950 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
1951 >xmlXPathObjectPtr</A
1957 >Removes an xmlXPathObjectPtr from an existing LocationSet</P
1961 CLASS="INFORMALTABLE"
1988 > the initial range set</TD
2005 > an xmlXPathObjectPtr</TD
2020 NAME="XMLXPTRLOCATIONSETREMOVE"
2022 >xmlXPtrLocationSetRemove ()</H3
2031 CLASS="PROGRAMLISTING"
2032 >void xmlXPtrLocationSetRemove (<A
2033 HREF="libxml-xpointer.html#XMLLOCATIONSETPTR"
2034 >xmlLocationSetPtr</A
2041 >Removes an entry from an existing LocationSet list.</P
2045 CLASS="INFORMALTABLE"
2072 > the initial range set</TD
2089 > the index to remove</TD
2104 NAME="XMLXPTRNEWCONTEXT"
2106 >xmlXPtrNewContext ()</H3
2115 CLASS="PROGRAMLISTING"
2117 HREF="libxml-xpath.html#XMLXPATHCONTEXTPTR"
2118 >xmlXPathContextPtr</A
2119 > xmlXPtrNewContext (<A
2120 HREF="libxml-tree.html#XMLDOCPTR"
2124 HREF="libxml-tree.html#XMLNODEPTR"
2128 HREF="libxml-tree.html#XMLNODEPTR"
2135 >Create a new XPointer context</P
2139 CLASS="INFORMALTABLE"
2166 > the XML document</TD
2183 > the node that directly contains the XPointer being evaluated or NULL</TD
2200 > the element from which a user or program initiated traversal of
2201 the link, or NULL.</TD
2219 >the xmlXPathContext just allocated.</TD
2245 CLASS="PROGRAMLISTING"
2247 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
2248 >xmlXPathObjectPtr</A
2249 > xmlXPtrEval (const <A
2250 HREF="libxml-tree.html#XMLCHAR"
2254 HREF="libxml-xpath.html#XMLXPATHCONTEXTPTR"
2255 >xmlXPathContextPtr</A
2261 >Evaluate the XPath Location Path in the given context.</P
2265 CLASS="INFORMALTABLE"
2292 > the XPointer expression</TD
2309 > the XPointer context</TD
2327 >the xmlXPathObjectPtr resulting from the evaluation or NULL.
2328 the caller has to free the object.</TD
2343 NAME="XMLXPTRRANGETOFUNCTION"
2345 >xmlXPtrRangeToFunction ()</H3
2354 CLASS="PROGRAMLISTING"
2355 >void xmlXPtrRangeToFunction (<A
2356 HREF="libxml-xpath.html#XMLXPATHPARSERCONTEXTPTR"
2357 >xmlXPathParserContextPtr</A
2364 >Implement the range-<GTKDOCLINK
2367 >() XPointer function</P
2371 CLASS="INFORMALTABLE"
2398 > the XPointer Parser context</TD
2415 > the number of args</TD
2430 NAME="XMLXPTRBUILDNODELIST"
2432 >xmlXPtrBuildNodeList ()</H3
2441 CLASS="PROGRAMLISTING"
2443 HREF="libxml-tree.html#XMLNODEPTR"
2445 > xmlXPtrBuildNodeList (<A
2446 HREF="libxml-xpath.html#XMLXPATHOBJECTPTR"
2447 >xmlXPathObjectPtr</A
2453 >Build a node list tree copy of the XPointer result.
2454 This will drop Attributes and Namespace declarations.</P
2458 CLASS="INFORMALTABLE"
2485 > the XPointer result from the evaluation.</TD
2503 >an xmlNodePtr list or NULL.
2504 the caller has to free the node tree.</TD
2519 NAME="XMLXPTREVALRANGEPREDICATE"
2521 >xmlXPtrEvalRangePredicate ()</H3
2530 CLASS="PROGRAMLISTING"
2531 >void xmlXPtrEvalRangePredicate (<A
2532 HREF="libxml-xpath.html#XMLXPATHPARSERCONTEXTPTR"
2533 >xmlXPathParserContextPtr</A
2539 >[8] Predicate ::= '[' PredicateExpr ']'
2540 [9] PredicateExpr ::= Expr </P
2542 >Evaluate a predicate as in <A
2543 HREF="libxml-xpath.html#XMLXPATHEVALPREDICATE"
2544 >xmlXPathEvalPredicate</A
2546 a Location Set instead of a node set</P
2550 CLASS="INFORMALTABLE"
2577 > the XPointer Parser context</TD
2589 CLEAR="all"><BR><TABLE
2601 HREF="libxml-xpathinternals.html"
2606 ><<< Previous Page</B
2639 HREF="libxml-lib.html"
2655 HREF="libxml-xinclude.html"
2660 >Next Page >>></B