[Bug 4636] What should SML 3.3.1.1 say about fragment identifiers?

http://www.w3.org/Bugs/Public/show_bug.cgi?id=4636


kumarp@microsoft.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |hasProposal




------- Comment #1 from kumarp@microsoft.com  2007-10-12 22:31 -------
Proposal:
Remove all references to the xpointer framework and the associated schemes from
the SML/SML-IF spec. Define sml:uri scheme such that its fragment identifier is
encoded using XPath 1.0 location path
(http://www.w3.org/TR/xpath#location-paths) as shown below:

SMLURI = URI   (‘#’ XPath1.0_LocationPath)?

In this scheme, if the fragment id is missing the reference points to the root
element of the target document. If the fragment id is present, the root element
 is the context node to which the path is applied.

Reasons:
The Xpointer framework is a w3c standard but it has not found sufficient
support from the industry and the community. In fact, the members of the
original xpointer working group themselves have come up with a competing
proposal (fixptr), but that is not a w3c standard. Although the xpointer()
scheme offers more powerful semantics (such as string-range, start-point, etc.)
they are of no use for identifying target elements. Moreover, the xpointer()
scheme is not a w3c recommendation. There are only 2 xpointer schemes that are
w3c standard: element() and xmlns(). The element scheme is very brittle. For
example, element(/3/5/1) denotes the first child of the fifth child of the
third child of the root element. A simple change to a document can invalidate
many references or worse, keep them valid and change the target silently. The
xmlns() scheme is used for declaring XML namespace prefixes and it not used for
identifying elements.

The primary purpose of the fragment identifier in an SML reference is to
identify the target element. This need is adequately met by using xpath. XPath
1.0 is already used by SML validators and thus the use of xpath in fragment
identifier will not put any additional burden on implementers.

Received on Friday, 12 October 2007 22:31:27 UTC