RE: XPointer

On Tuesday, October 29, 2002 3:04 PM, Roy T. Fielding said:

> To: www-xml-linking-comments@w3.org
> Subject: XPointer
> 
> 
> 
> I made the mistake of reading this specification today.  
> Allow me to list
> the faults:
> 
>     1) uses probably the most difficult syntax to parse of 
> all options:
>        balanced quotes inside balanced parens with 
> encapsulated functions
>        and concatenated schemes;

There are, undoubtably, options that are easier to parse.
However, the difficulty does not seem all that great, as
evidenced by several existing implementations and several
proposals for new fragment identification schemes.

>     2) frequent use of characters that are explicitly disallowed
>        in the URI syntax and thus must be escaped;

The syntax does use characters that must be escaped according to
RFC 2396. However, we anticipate that future revisions of 2396
will allow a much broader character repertoire. That should have
the knock-on benefit of eliminating much of the escaping
currently required.

>     3) calls itself a "scheme" and encourages the naming of 
> new "schemes"
>        for fragment syntax, in spite of the fact that the URI syntax
>        already has something called a scheme; (doesn't anyone have a
>        thesaurus?)

The XPointer schemes were strongly inspired by URI schemes, for
the same reason - extensibility. A different name could have been
chosen, but that would be open to criticism on the grounds that
terminology for extension schemes was being proliferated needlessly.

The scheme approach has been a public feature of the XPointer
work since the July 1999 working draft:
   http://www.w3.org/1999/07/WD-xptr-19990709

Up to now there has been no criticism of the term brought to the
attention of the working group, nor any complaints of confusion.

>     4) focuses on mechanical identification of XML elements (fragile
>        and media-type-specific) rather than the content 
> (section heading,
>        paragraph number, paragraph text, etc.).

I'm sorry, can you please clarify? The XPointer work is chartered
to be media-type specific. The XPointer Framework uses ID
attributes, which are the most robust identifier we know of in the
presence of editing changes. 
The element() scheme's child sequence addressing is fragile in
the presence of edits, but its expected use cases are ones where
edits are not so likely (database generated content, archival
content).
The xpointer() scheme does allow addressing based on element type,
such as section and paragraph elements, as well as string matches.
But any specific list of content elements to address would not
work for XML documents which used different elements.

> In short, these things are not suitable for use with URIs and should
> not be recommended by the W3C.

The problems you have identified do not prevent the
development of implementations. Nor have they prevented
others from using the framework to create their own fragment
identification schemes.

Since they have been part of the evolving specifications for over
three years, and do not appear to prevent implementation, we are
loathe to overturn those design choices at this point.


Best regards,
Ron Daniel Jr.
Acting chair, XML Linking Working Group

Received on Wednesday, 30 October 2002 19:12:23 UTC