blob: de72d4f5a5cec130b5f65fa956b57dfc1fbe9b37 [file] [log] [blame]
Daniel Veillardd4330462003-04-29 12:40:16 +00001<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xpointer</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
2 .synopsis, .classsynopsis {
3 background: #eeeeee;
4 border: solid 1px #aaaaaa;
5 padding: 0.5em;
6 }
7 .programlisting {
8 background: #eeeeff;
9 border: solid 1px #aaaaff;
10 padding: 0.5em;
11 }
12 .variablelist {
13 padding: 4px;
14 margin-left: 3em;
15 }
16 .navigation {
17 background: #ffeeee;
18 border: solid 1px #ffaaaa;
19 margin-top: 0.5em;
20 margin-bottom: 0.5em;
21 }
22 .navigation a {
23 color: #770000;
24 }
25 .navigation a:visited {
26 color: #550000;
27 }
28 .navigation .title {
29 font-size: 200%;
30 }
31 </style><link rel="home" href="index.html" title="Gnome XML Library Reference Manual"><link rel="up" href="libxml-lib.html" title="Libxml Library Reference"><link rel="previous" href="libxml-xpathInternals.html" title="xpathInternals"><link rel="next" href="libxml-xinclude.html" title="xinclude"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xpathInternals.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></img></a></td><td><a accesskey="u" href="libxml-lib.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></img></a></td><td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></img></a></td><th width="100%" align="center">Gnome XML Library Reference Manual</th><td><a accesskey="n" href="libxml-xinclude.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></img></a></td></tr></table><div class="refentry" lang="en"><a name="libxml-xpointer"></a><div class="titlepage"></div><div class="refnamediv"><h2>xpointer</h2><p>xpointer &#8212; </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="synopsis">
Daniel Veillardb732a0e2000-10-15 11:27:01 +000032
Daniel Veillardd4330462003-04-29 12:40:16 +000033
34
35struct <a href="libxml-xpointer.html#xmlLocationSet">xmlLocationSet</a>;
36typedef <a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a>;
37<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> <a href="libxml-xpointer.html#xmlXPtrLocationSetCreate">xmlXPtrLocationSetCreate</a> (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val);
38void <a href="libxml-xpointer.html#xmlXPtrFreeLocationSet">xmlXPtrFreeLocationSet</a> (<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> obj);
39<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> <a href="libxml-xpointer.html#xmlXPtrLocationSetMerge">xmlXPtrLocationSetMerge</a> (<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val1,
40 <a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val2);
41<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="libxml-xpointer.html#xmlXPtrNewRange">xmlXPtrNewRange</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start,
Daniel Veillarda41123c2001-04-22 19:31:20 +000042 int startindex,
Daniel Veillardd4330462003-04-29 12:40:16 +000043 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end,
Daniel Veillarda41123c2001-04-22 19:31:20 +000044 int endindex);
Daniel Veillardd4330462003-04-29 12:40:16 +000045<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="libxml-xpointer.html#xmlXPtrNewRangePoints">xmlXPtrNewRangePoints</a> (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> start,
46 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end);
47<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="libxml-xpointer.html#xmlXPtrNewRangeNodePoint">xmlXPtrNewRangeNodePoint</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start,
48 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end);
49<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="libxml-xpointer.html#xmlXPtrNewRangePointNode">xmlXPtrNewRangePointNode</a> (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> start,
50 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end);
51<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="libxml-xpointer.html#xmlXPtrNewRangeNodes">xmlXPtrNewRangeNodes</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start,
52 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end);
53<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="libxml-xpointer.html#xmlXPtrNewLocationSetNodes">xmlXPtrNewLocationSetNodes</a>
54 (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start,
55 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end);
56<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="libxml-xpointer.html#xmlXPtrNewLocationSetNodeSet">xmlXPtrNewLocationSetNodeSet</a>
57 (<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> set);
58<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="libxml-xpointer.html#xmlXPtrNewRangeNodeObject">xmlXPtrNewRangeNodeObject</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start,
59 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end);
60<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="libxml-xpointer.html#xmlXPtrNewCollapsedRange">xmlXPtrNewCollapsedRange</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start);
61void <a href="libxml-xpointer.html#xmlXPtrLocationSetAdd">xmlXPtrLocationSetAdd</a> (<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur,
62 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val);
63<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="libxml-xpointer.html#xmlXPtrWrapLocationSet">xmlXPtrWrapLocationSet</a> (<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val);
64void <a href="libxml-xpointer.html#xmlXPtrLocationSetDel">xmlXPtrLocationSetDel</a> (<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur,
65 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val);
66void <a href="libxml-xpointer.html#xmlXPtrLocationSetRemove">xmlXPtrLocationSetRemove</a> (<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur,
Daniel Veillarda41123c2001-04-22 19:31:20 +000067 int val);
Daniel Veillardd4330462003-04-29 12:40:16 +000068<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> <a href="libxml-xpointer.html#xmlXPtrNewContext">xmlXPtrNewContext</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
69 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> here,
70 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> origin);
71<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="libxml-xpointer.html#xmlXPtrEval">xmlXPtrEval</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str,
72 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx);
73void <a href="libxml-xpointer.html#xmlXPtrRangeToFunction">xmlXPtrRangeToFunction</a> (<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt,
Daniel Veillard28929b22000-11-13 18:22:49 +000074 int nargs);
Daniel Veillardd4330462003-04-29 12:40:16 +000075<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-xpointer.html#xmlXPtrBuildNodeList">xmlXPtrBuildNodeList</a> (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj);
76void <a href="libxml-xpointer.html#xmlXPtrEvalRangePredicate">xmlXPtrEvalRangePredicate</a> (<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt);
77</pre></div><div class="refsect1" lang="en"><h2>Description</h2><p>
78
79</p></div><div class="refsect1" lang="en"><h2>Details</h2><div class="refsect2" lang="en"><h3><a name="xmlLocationSet"></a>struct xmlLocationSet</h3><pre class="programlisting">struct xmlLocationSet {
Daniel Veillardb732a0e2000-10-15 11:27:01 +000080 int locNr; /* number of locations in the set */
81 int locMax; /* size of the array as allocated */
82 xmlXPathObjectPtr *locTab;/* array of locations */
Daniel Veillardd4330462003-04-29 12:40:16 +000083};
84</pre><p>
85
Daniel Veillardd7cec922003-06-13 12:30:10 +000086</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlLocationSetPtr"></a>xmlLocationSetPtr</h3><pre class="programlisting">typedef xmlLocationSet *xmlLocationSetPtr;
87</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +000088
89</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrLocationSetCreate"></a>xmlXPtrLocationSetCreate ()</h3><pre class="programlisting"><a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> xmlXPtrLocationSetCreate (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val);</pre><p>
90Create a new xmlLocationSetPtr of type double and of value <i><tt>val</tt></i></p><p>
91
Daniel Veillardd7cec922003-06-13 12:30:10 +000092</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>val</tt></i> :</span></td><td> an initial xmlXPathObjectPtr, or NULL
93</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the newly created object.
Daniel Veillardd4330462003-04-29 12:40:16 +000094</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrFreeLocationSet"></a>xmlXPtrFreeLocationSet ()</h3><pre class="programlisting">void xmlXPtrFreeLocationSet (<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> obj);</pre><p>
95Free the LocationSet compound (not the actual ranges !).</p><p>
96
Daniel Veillardd7cec922003-06-13 12:30:10 +000097</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>obj</tt></i> :</span></td><td> the xmlLocationSetPtr to free
Daniel Veillardd4330462003-04-29 12:40:16 +000098</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrLocationSetMerge"></a>xmlXPtrLocationSetMerge ()</h3><pre class="programlisting"><a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> xmlXPtrLocationSetMerge (<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val1,
99 <a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val2);</pre><p>
100Merges two rangesets, all ranges from <i><tt>val2</tt></i> are added to <i><tt>val1</tt></i></p><p>
101
Daniel Veillardd7cec922003-06-13 12:30:10 +0000102</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>val1</tt></i> :</span></td><td> the first LocationSet
103</td></tr><tr><td><span class="term"><i><tt>val2</tt></i> :</span></td><td> the second LocationSet
104</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>val1 once extended or NULL in case of error.
Daniel Veillardd4330462003-04-29 12:40:16 +0000105</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrNewRange"></a>xmlXPtrNewRange ()</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrNewRange (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start,
Daniel Veillarda41123c2001-04-22 19:31:20 +0000106 int startindex,
Daniel Veillardd4330462003-04-29 12:40:16 +0000107 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end,
108 int endindex);</pre><p>
109Create a new xmlXPathObjectPtr of type range</p><p>
110
Daniel Veillardd7cec922003-06-13 12:30:10 +0000111</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>start</tt></i> :</span></td><td> the starting node
112</td></tr><tr><td><span class="term"><i><tt>startindex</tt></i> :</span></td><td> the start index
113</td></tr><tr><td><span class="term"><i><tt>end</tt></i> :</span></td><td> the ending point
114</td></tr><tr><td><span class="term"><i><tt>endindex</tt></i> :</span></td><td> the ending index
115</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the newly created object.
Daniel Veillardd4330462003-04-29 12:40:16 +0000116</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrNewRangePoints"></a>xmlXPtrNewRangePoints ()</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrNewRangePoints (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> start,
117 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end);</pre><p>
118Create a new xmlXPathObjectPtr of type range using 2 Points</p><p>
119
Daniel Veillardd7cec922003-06-13 12:30:10 +0000120</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>start</tt></i> :</span></td><td> the starting point
121</td></tr><tr><td><span class="term"><i><tt>end</tt></i> :</span></td><td> the ending point
122</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the newly created object.
Daniel Veillardd4330462003-04-29 12:40:16 +0000123</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrNewRangeNodePoint"></a>xmlXPtrNewRangeNodePoint ()</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrNewRangeNodePoint (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start,
124 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end);</pre><p>
125Create a new xmlXPathObjectPtr of type range from a node to a point</p><p>
126
Daniel Veillardd7cec922003-06-13 12:30:10 +0000127</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>start</tt></i> :</span></td><td> the starting node
128</td></tr><tr><td><span class="term"><i><tt>end</tt></i> :</span></td><td> the ending point
129</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the newly created object.
Daniel Veillardd4330462003-04-29 12:40:16 +0000130</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrNewRangePointNode"></a>xmlXPtrNewRangePointNode ()</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrNewRangePointNode (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> start,
131 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end);</pre><p>
132Create a new xmlXPathObjectPtr of type range from a point to a node</p><p>
133
Daniel Veillardd7cec922003-06-13 12:30:10 +0000134</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>start</tt></i> :</span></td><td> the starting point
135</td></tr><tr><td><span class="term"><i><tt>end</tt></i> :</span></td><td> the ending node
136</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the newly created object.
Daniel Veillardd4330462003-04-29 12:40:16 +0000137</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrNewRangeNodes"></a>xmlXPtrNewRangeNodes ()</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrNewRangeNodes (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start,
138 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end);</pre><p>
139Create a new xmlXPathObjectPtr of type range using 2 nodes</p><p>
140
Daniel Veillardd7cec922003-06-13 12:30:10 +0000141</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>start</tt></i> :</span></td><td> the starting node
142</td></tr><tr><td><span class="term"><i><tt>end</tt></i> :</span></td><td> the ending node
143</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the newly created object.
Daniel Veillardd4330462003-04-29 12:40:16 +0000144</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrNewLocationSetNodes"></a>xmlXPtrNewLocationSetNodes ()</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrNewLocationSetNodes
145 (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start,
146 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end);</pre><p>
147Create a new xmlXPathObjectPtr of type LocationSet and initialize
148it with the single range made of the two nodes <i><tt>start</tt></i> and <i><tt>end</tt></i></p><p>
149
Daniel Veillardd7cec922003-06-13 12:30:10 +0000150</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>start</tt></i> :</span></td><td> the start NodePtr value
151</td></tr><tr><td><span class="term"><i><tt>end</tt></i> :</span></td><td> the end NodePtr value or NULL
152</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the newly created object.
Daniel Veillardd4330462003-04-29 12:40:16 +0000153</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrNewLocationSetNodeSet"></a>xmlXPtrNewLocationSetNodeSet ()</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrNewLocationSetNodeSet
154 (<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> set);</pre><p>
155Create a new xmlXPathObjectPtr of type LocationSet and initialize
156it with all the nodes from <i><tt>set</tt></i></p><p>
157
Daniel Veillardd7cec922003-06-13 12:30:10 +0000158</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>set</tt></i> :</span></td><td> a node set
159</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the newly created object.
Daniel Veillardd4330462003-04-29 12:40:16 +0000160</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrNewRangeNodeObject"></a>xmlXPtrNewRangeNodeObject ()</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrNewRangeNodeObject (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start,
161 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end);</pre><p>
162Create a new xmlXPathObjectPtr of type range from a not to an object</p><p>
163
Daniel Veillardd7cec922003-06-13 12:30:10 +0000164</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>start</tt></i> :</span></td><td> the starting node
165</td></tr><tr><td><span class="term"><i><tt>end</tt></i> :</span></td><td> the ending object
166</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the newly created object.
Daniel Veillardd4330462003-04-29 12:40:16 +0000167</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrNewCollapsedRange"></a>xmlXPtrNewCollapsedRange ()</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrNewCollapsedRange (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start);</pre><p>
168Create a new xmlXPathObjectPtr of type range using a single nodes</p><p>
169
Daniel Veillardd7cec922003-06-13 12:30:10 +0000170</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>start</tt></i> :</span></td><td> the starting and ending node
171</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the newly created object.
Daniel Veillardd4330462003-04-29 12:40:16 +0000172</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrLocationSetAdd"></a>xmlXPtrLocationSetAdd ()</h3><pre class="programlisting">void xmlXPtrLocationSetAdd (<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur,
173 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val);</pre><p>
174add a new xmlXPathObjectPtr to an existing LocationSet
175If the location already exist in the set <i><tt>val</tt></i> is freed.</p><p>
176
Daniel Veillardd7cec922003-06-13 12:30:10 +0000177</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the initial range set
178</td></tr><tr><td><span class="term"><i><tt>val</tt></i> :</span></td><td> a new xmlXPathObjectPtr
Daniel Veillardd4330462003-04-29 12:40:16 +0000179</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrWrapLocationSet"></a>xmlXPtrWrapLocationSet ()</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrWrapLocationSet (<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val);</pre><p>
180Wrap the LocationSet <i><tt>val</tt></i> in a new xmlXPathObjectPtr</p><p>
181
Daniel Veillardd7cec922003-06-13 12:30:10 +0000182</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>val</tt></i> :</span></td><td> the LocationSet value
183</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the newly created object.
Daniel Veillardd4330462003-04-29 12:40:16 +0000184</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrLocationSetDel"></a>xmlXPtrLocationSetDel ()</h3><pre class="programlisting">void xmlXPtrLocationSetDel (<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur,
185 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val);</pre><p>
186Removes an xmlXPathObjectPtr from an existing LocationSet</p><p>
187
Daniel Veillardd7cec922003-06-13 12:30:10 +0000188</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the initial range set
189</td></tr><tr><td><span class="term"><i><tt>val</tt></i> :</span></td><td> an xmlXPathObjectPtr
Daniel Veillardd4330462003-04-29 12:40:16 +0000190</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrLocationSetRemove"></a>xmlXPtrLocationSetRemove ()</h3><pre class="programlisting">void xmlXPtrLocationSetRemove (<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur,
191 int val);</pre><p>
192Removes an entry from an existing LocationSet list.</p><p>
193
Daniel Veillardd7cec922003-06-13 12:30:10 +0000194</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the initial range set
195</td></tr><tr><td><span class="term"><i><tt>val</tt></i> :</span></td><td> the index to remove
Daniel Veillardd4330462003-04-29 12:40:16 +0000196</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrNewContext"></a>xmlXPtrNewContext ()</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> xmlXPtrNewContext (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
197 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> here,
198 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> origin);</pre><p>
199Create a new XPointer context</p><p>
200
Daniel Veillardd7cec922003-06-13 12:30:10 +0000201</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the XML document
202</td></tr><tr><td><span class="term"><i><tt>here</tt></i> :</span></td><td> the node that directly contains the XPointer being evaluated or NULL
203</td></tr><tr><td><span class="term"><i><tt>origin</tt></i> :</span></td><td> the element from which a user or program initiated traversal of
204 the link, or NULL.
205</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the xmlXPathContext just allocated.
Daniel Veillardd4330462003-04-29 12:40:16 +0000206</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrEval"></a>xmlXPtrEval ()</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrEval (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str,
207 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx);</pre><p>
208Evaluate the XPath Location Path in the given context.</p><p>
209
Daniel Veillardd7cec922003-06-13 12:30:10 +0000210</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>str</tt></i> :</span></td><td> the XPointer expression
211</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i> :</span></td><td> the XPointer context
212</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the xmlXPathObjectPtr resulting from the evaluation or NULL.
213 the caller has to free the object.
Daniel Veillardd4330462003-04-29 12:40:16 +0000214</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrRangeToFunction"></a>xmlXPtrRangeToFunction ()</h3><pre class="programlisting">void xmlXPtrRangeToFunction (<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt,
215 int nargs);</pre><p>
216Implement the range-<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="to">to</GTKDOCLINK>() XPointer function</p><p>
217
Daniel Veillardd7cec922003-06-13 12:30:10 +0000218</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td> the XPointer Parser context
219</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i> :</span></td><td> the number of args
Daniel Veillardd4330462003-04-29 12:40:16 +0000220</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrBuildNodeList"></a>xmlXPtrBuildNodeList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlXPtrBuildNodeList (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj);</pre><p>
221Build a node list tree copy of the XPointer result.
222This will drop Attributes and Namespace declarations.</p><p>
223
Daniel Veillardd7cec922003-06-13 12:30:10 +0000224</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>obj</tt></i> :</span></td><td> the XPointer result from the evaluation.
225</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>an xmlNodePtr list or NULL.
226 the caller has to free the node tree.
Daniel Veillardd4330462003-04-29 12:40:16 +0000227</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlXPtrEvalRangePredicate"></a>xmlXPtrEvalRangePredicate ()</h3><pre class="programlisting">void xmlXPtrEvalRangePredicate (<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt);</pre><p>
228[8] Predicate ::= '[' PredicateExpr ']'
229 [9] PredicateExpr ::= Expr
230</p><p>
231Evaluate a predicate as in <a href="libxml-xpath.html#xmlXPathEvalPredicate">xmlXPathEvalPredicate</a>() but for
232a Location Set instead of a node set</p><p>
233
Daniel Veillardd7cec922003-06-13 12:30:10 +0000234</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td> the XPointer Parser context
Daniel Veillardd4330462003-04-29 12:40:16 +0000235</td></tr></tbody></table></div></div></div></div><table xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="0"><tr valign="middle"><td align="left"><a accesskey="p" href="libxml-xpathInternals.html"><b>&lt;&lt; xpathInternals</b></a></td><td align="right"><a accesskey="n" href="libxml-xinclude.html"><b>xinclude &gt;&gt;</b></a></td></tr></table></body></html>