Re: Validation of documents using internal XLinks [Was:] Dependency of XPointers upon DTD

At 09:25 AM 9/8/00 +0200, Eric van der Vlist wrote:
>"Eve L. Maler" wrote:
> > DTDs are not being relied on; there are always other means to point to a
> > particular element if you wish, and you don't need to default your
> > attribute values.  And an internal subset could be used in a published
> > document to "mark" an attribute as being of type ID even if the document is
> > only well-formed; an XPointer into a document without such a "marker"
> > wouldn't want to rely on the fact that the attribute is typed.
>
>Isn't it quite dangerous then ?
>If we open the game to user defined way if "marking" the IDs, we will
>end up by unpredictable results depending on the application used to
>process the document...

I'm not sure I agree it's dangerous.  XPointer is designed to point, not to 
arbitrarily query.  If you're pointing into a document, it's because you 
know something about that document's structure.  If the document happens to 
have identified its ID attributes (e.g., through a set of <ATTLIST...> 
declarations in the internal subset or through having pointed to a DTD), 
then you can feel somewhat safe using this knowledge to form your 
pointers.  ("Somewhat" safe because the document could change at any time, 
and no XPointer is 100% safe from such changes.)  If you know you can't 
rely on ID'd attributes, you're likely to use other knowledge, such as 
other semantics of the vocabulary used to mark up the document, to design 
relatively robust XPointers.

Of course, there's a sort of workaround already mentioned in the spec 
(http://www.w3.org/TR/xptr#schemes) even if you do use id()...

>My point was just to try to avoid this ;=) !
>
>The XML Schemas WG can have the same attitude and just say "let's wait
>until XPointers is a rec before supporting them" and we'll end up with
>XPointers not being able to rely on schemas and schemas not being able
>to validate XPointers [1].
>
>[1]
>http://lists.w3.org/Archives/Public/www-xml-schema-comments/2000JulSep/0126.html

Aha -- I hadn't been aware of this!  We will treat it as a Schema/Linking 
coordination problem and try to resolve this with them.

>I am working on a comparison of different techniques which can be used
>to implement links between nodes within a document and I have been
>disappointed to see that:
>
>1) the move between a user defined "physical" link using ID and IDREF
>(DTD or schemas) to a simple XLink is implying that a full validation
>(including the check that the IDREF is matching an existing ID) was no
>longer possible with DTD nor with schemas.
>
>Concretely, replacing "ref='IDREF'" by "xlink:href='#IDREF'" is more
>intrusive that I would have thought !

Yes, I see your point now.

>2) the move between user defined "logical" link to its equivalent using
>a full XPointer scheme is even more intrusive since that you don't only
>lose the ability to validate it, but also the ability to process it
>through XSLT.
>
>What I mean by logical link is a link matching an attribute which is not
>declared as ID, such as a name.
>
>If the user defined logical link is <author ref_name="xxx"/>, the
>corresponding xlink would be something like <author
>xlink:href="#xpointer(//author[name='xxx']"/> .
>
>While you can validate (using XML Schemas) and resolve the link using
>XSLT the user defined link, you can't validate the XLink alternative (at
>least using XML Schemas as defined today) and, since XSLT doesn't
>support variable XPath expressions, you can't even resolve the link
>using a standard XSLT processor.

I'm not following.  You would need an "XPointer application layer" in the 
second scenario anyway, which is supposed to help you do this.  And in what 
way would a standard XSLT engine not help you implement one?  (BTW, that's 
another subject -- mixing linking and styling -- on which we hope to make 
some analysis public soon...)

>By comparison, RDF which is often considered as an intrusive technology
>does not present these 2 downsides and you can both validate (through
>XML Schemas) and resolve using XSLT the same links expressed as RDF
>statements.

Yikes, you're making me think we have to publish a lot of our notes as soon 
as possible!  There's also the XLink->RDF mapping note, a draft of which 
has already been made public (stay tuned for more).

>I try to follow carefuly the work of the W3C which is unique in the
>history by the amount of recommendations produced, the very modular
>approach and the speed with which they are produced.
>
>I am very impressed and I don't think anyone would have done better.
>
>Nevertheless, while I see your point as a recommendation editor, as a
>user of W3C recommendations, I would like to be able to use all of them
>together ;=) !

You're very kind.  Actually, I think the speed and "modularity" (more like 
granularity) are starting to really challenge all our abilities to do a 
good job.  We will definitely try to coordinate with the other groups on 
these matters.  Thanks for your comments!

         Eve
--
Eve Maler                                          +1 781 442 3190
Sun Microsystems XML Technology Center    eve.maler @ east.sun.com

Received on Friday, 8 September 2000 09:36:29 UTC