- From: Steven J. DeRose <sjd@ebt.com>
- Date: Mon, 06 Jan 1997 16:59:01 -0500
- To: w3c-sgml-wg@www10.w3.org
At 09:55 AM 12/31/96 -0900, W. Eliot Kimber wrote: >At 10:21 PM 12/30/96 -0500, Gavin Nicol wrote: >> /foo.sgm/4/2/99 - Child numbers >> /foo.sgm/chap=1/sect=2/para=45 - Typed children ... > >The only problem with this approach is the same one HyTime and DSSSL faced: >what objects make up the nodes of the tree you're addressing. We currently >have three different tree views of SGML documents in established specs: > >1. DSSSL default grove plan: characters and elements are children of elements >2. HyTime default grove plan: pelements and elements are children of elements >3. TEI implicit grove plan: elements only are children of elements Actually, TEI explicitly includes and counts pseudo-elements, so 2 and 3 are actually identical for most purposes (except maybe for counting PIs). TEI can even address the pseudo-element via a reserved pseudo-GI, for example: /foo.sgm/chap=1/sect=2/para=45/#CDATA=4 Of course, if you used typed steps like this, you're only counting instances of particular element types, so pseudo-elements wouldn't get in the way; if you leave out the GI, they're counted like other children. By the way, gtn used the early draft (1990) TEI syntax for these examples (as above). It was greatly extended in the final (1994) version (see below). The most visible change was to switch to a parenthesized syntax instead of slashes; this allowed adding some nice features for walking up down and sideways in document trees, matching GIs and attributes vs. regexes, and so on, and makes it easier to extend later without disruption (like if new parameters or terms are needed). TEI extended pointers can also refer to graphics and hotspots, as well as refer out to HyTime location addresses just as HyTime can refer out to TEI; and there are several elements defined for creating n-ary and out-of-line links, link typing, indirection, and so on. >Another choice, of course, would be to use TEI locators as queries: > >/foo.sgm?DESCENDANT%20(1%20chap%202%20SECT%2045%20para) Someone commented that this is ugly to type, but that's because the spaces are escaped as "%20": that's part of URL-passing protocol, not part of TEI. Except for that it's pretty readable even after you add the parens someone forgot -- certainly this isn't too tough to understand or replicate: /foo.sgm?DESCENDANT (1 chap) (2 SECT) (45 para) Steve D
Received on Monday, 6 January 1997 17:00:54 UTC