[Bug 4675] add text in section 5.3.3 to require that consumers and producers are required to implement at a minimum the uri scheme

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





------- Comment #19 from sandygao@ca.ibm.com  2007-12-06 17:42 -------
There are a few consequences we need to be aware of, if we require that all
non-null references in IF documents MUST use the URI scheme.

1. It may not be easy for producers to satisfy this requirement (Kirk's comment
"That seems to be calling on the SML-IF Producer to do the impossible." [1])

If the producer understand scheme(s) used in the SML model, then it's possible
to perform this using John's algorithm [2]. It may be a big performance burden
though.

But in case when the producer is presented with a model using schemes it
doesn't understand, then it's impossible for it to add the correct <sml:uri>
elements.

2. Requiring modification to the embedded document could be dangerous.

This could affect signatures on the embedded documents. This could also
invalidate the embedded documents. (Consider the case where the schema says my
reference element must only contain an instance of <my:uri>.)

3. It's also very difficult to achieve if documents are included by reference.

If the producer is handed an URL for the document to be referenced, does it
have to modify the document that that URL, or make a copy of that document and
expose the new URL? (How to determine whether the new URL is accessible by the
consumer?)

4. It discourages usage of other useful schemes

Currently the URI scheme uses a subset of XPath 1.0. What if people want to
experiment with a bigger (or smaller) subset, or start using XPath 2.0?
Different vendors could agree on a new scheme and start using it before it's
adopted by the next version of the spec. Do we want to clearly disallow that
kind of behavior?


Base on these, I think I'm not convinced that specifying only 1 level of
conformance is the right decision.

On the other hand, I do see the value of inter-op and the desire to have
inter-op for conforming documents. Maybe a compromise could be to still define
2 levels, but instead of calling them level 1 vs. 2, they can be given names
that reflect the degree of inter-op implied by these levels. (Again, very bad
at coming up with names.)

Received on Thursday, 6 December 2007 17:42:19 UTC