XML query engines

Tim Bray tbray at textuality.com
Mon Feb 1 00:53:33 GMT 1999


At 08:24 PM 1/31/99 +73900, John Cowan wrote:
>Assign a sequentially increasing number to each *tag* (start-tag or end-tag)
>in the document, treating an empty tag as a start-tag followed by an
>end-tag.  Then e1 is a descendant of e2 iff e1.start > e2.start
>and e1.end < e2.end.  Also, e1 is a left sibling of e2 (and e2 is
>a right sibling of e1) iff e1.end + 1 = e2.start; e1 is the leftmost
>child of e2 iff e1.start = e2.start + 1.  Modeling the child/parent
>relationship is not so easy, and requires iteration.

This structure has all sorts of advantages; that's how the 
Open Text SGML-savvy search engine of yore used to run.  Fast as
hell, equal access to any & all elements without performance
penalty.

But hard to update. 

 -T.

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)




More information about the Xml-dev mailing list