OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

ANN: XML Encoded XPath 0.2 (DTD)



<!-- XML Encoded XPath, version 0.2 -->


<!ENTITY % AXES "
	ancestor		|
	ancestor-or-self	|
	attribute		|
	child			|
	descendant		|
	descendant-or-self	|
	following		|
	following-sibling	|
	namespace		|
	parent			|
	preceding		|
	preceding-sibling	|
	self
" >


<!ENTITY % OPERATORS "
	filter  |
	compose	|
        union   |
	and	|
	or 	|
	eq	|
	ne	|
	lt	|
	le	|
	gt	|
	ge	|
	add	|
	sub	|
	mul	|
	div	|
	mod	|
	neg
" >

<!ENTITY % EXPR "
	%OPERATORS;	|
	literal		|
	number		|
	variable	|
	function
" >


<!ELEMENT literal (#PCDATA)* >
   <!-- 'foo' becomes <literal>foo</literal> -->
<!ELEMENT number  (#PCDATA)* >
   <!-- 34 becomes <number>34</number>       -->
<!ELEMENT variable (#PCDATA)* >
   <!-- $x becomes <variable>x</variable>    -->
<!ELEMENT root EMPTY >

<!ELEMENT function (%EXPR;)* >
<!-- each subelement of a function is an argument -->
<!ATTLIST function
	name CDATA #REQUIRED
	nsURI CDATA #IMPLIED >

<!ENTITY % AXIS-ATTLIST "
	type	CDATA #IMPLIED
	nsURI	CDATA #IMPLIED
	name	CDATA #IMPLIED
">

<!ELEMENT	ancestor		(#PCDATA)* >
<!ATTLIST	ancestor		%AXIS-ATTLIST; >
<!ELEMENT	ancestor-or-self	(#PCDATA)* >
<!ATTLIST	ancestor-or-self	%AXIS-ATTLIST; >
<!ELEMENT	attribute		(#PCDATA)* >
<!ATTLIST	attribute		%AXIS-ATTLIST; >
<!ELEMENT	child			(#PCDATA)* >
<!ATTLIST	child			%AXIS-ATTLIST; >
<!ELEMENT	descendant		(#PCDATA)* >
<!ATTLIST	descendant		%AXIS-ATTLIST; >
<!ELEMENT	descendant-or-self	(#PCDATA)* >
<!ATTLIST	descendant-or-self	%AXIS-ATTLIST; >
<!ELEMENT	following		(#PCDATA)* >
<!ATTLIST	following		%AXIS-ATTLIST; >
<!ELEMENT	following-sibling	(#PCDATA)* >
<!ATTLIST	following-sibling	%AXIS-ATTLIST; >
<!ELEMENT	namespace		(#PCDATA)* >
<!ATTLIST	namespace		%AXIS-ATTLIST; >
<!ELEMENT	parent			(#PCDATA)* >
<!ATTLIST	parent			%AXIS-ATTLIST; >
<!ELEMENT	preceding		(#PCDATA)* >
<!ATTLIST	preceding		%AXIS-ATTLIST; >
<!ELEMENT	preceding-sibling	(#PCDATA)* >
<!ATTLIST	preceding-sibling	%AXIS-ATTLIST; >
<!ELEMENT	self			(#PCDATA)* >
<!ATTLIST	self			%AXIS-ATTLIST; >

<!-- OPERATORS -->
<!ELEMENT	filter  ( %EXPR; ) >
<!ELEMENT	compose	( (root,((%EXPR;)|(%AXES;))*) | ((%EXPR;)|(%AXES;))+ ) >


<!ELEMENT	union	( (%EXPR;),(%EXPR;) ) > <!-- XPath '|' operator -->
<!ELEMENT	and	( (%EXPR;),(%EXPR;) ) >
<!ELEMENT	or 	( (%EXPR;),(%EXPR;) ) >
<!ELEMENT	eq	( (%EXPR;),(%EXPR;) ) >	<!-- equals (=) -->
<!ELEMENT	ne	( (%EXPR;),(%EXPR;) ) > <!-- not equals (!=) -->
<!ELEMENT	lt	( (%EXPR;),(%EXPR;) ) > <!-- less than (<) -->
<!ELEMENT	le	( (%EXPR;),(%EXPR;) ) > <!-- less than or equals (<=) -->
<!ELEMENT	gt	( (%EXPR;),(%EXPR;) ) > <!-- greater than (>) -->
<!ELEMENT	ge	( (%EXPR;),(%EXPR;) ) > <!-- greater than or equals (>=) -->
<!ELEMENT	add	( (%EXPR;),(%EXPR;) ) > <!-- addition (+) -->
<!ELEMENT	sub	( (%EXPR;),(%EXPR;) ) > <!-- subtraction (-) -->
<!ELEMENT	mul	( (%EXPR;),(%EXPR;) ) > <!-- multiplication (*) -->
<!ELEMENT	div	( (%EXPR;),(%EXPR;) ) >
<!ELEMENT	mod	( (%EXPR;),(%EXPR;) ) >
<!ELEMENT	neg	(%EXPR;) >		<!-- unary minus (-) -->

_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com