> I was particularly concerned that people will use that PI for strongly
> tieing a document to a schema that changes the infoset. Such use of
> schemas is very against the spirit of RELAX NG. However, in May,
> somebody said to me that nobody is interested in such abuse any more.
I don't understand. Do you mean that nobody cares about the problem any
more or that nobody is writing schemas that change the infoset any more?
I'm pretty sure the latter is still going on. Could you explain why
nobody cares about the problem?
> It appears that some PIs will be implemented anyway.
Some processors dereference namespace identifiers looking for schema
locations. That doesn't make it a good idea.
Can anyone point to a case where such a PI has been implemented by a
parser, or anywhere except a handful of editors?
What disturbs me most about this proposal is the unlikely prospect of it
receiving widespread support at the parser level. Some tools will jump
on it though, because it's a way to establish vendor lock-in for a few
weeks. The more complicated you make the proposal the better tools
vendors will like it.
Specific comments about the proposal:
1. RELAX NG DTD compatibility may affect the infoset.
2. In Syntax, the Note is actually an exception to the way stylesheet
PIs are parsed. I'm not sure why you made the hrefs IRIs instead of URIs
and then disallowed character references?
Of course, character references are not normally interpreted in a PI so
this is a bit of extra processing, but neither are predefined entity
references so the pass over the contents must be done anyway.
3. Editors and other tools will typically scan these PIs out of the
document _before_ the parse begins so the parser can be configured
appropriately. Parsers I have seen do not take kindly to being
reconfigured while a parse is underway. In particular, you must tell
most parsers what kind of validation to do before the internal subset is
scanned. As written, you require the tool to scan the entire prolog and
the internal subset. Could you limit the scope a bit? In the prolog
before the DOCTYPE declaration, if any, would be some help.
4. The mode pseudo-attribute obviously requires external configuration.
(Or are we going to have a separate PI to set the mode? ;-) So you've
just traded external configuration of one parameter for another.
5. If the option pseudo-attribute is used only by Schematron, then it
should probably be named "phase". As "option" it's not obvious why you
would want to restrict its use or interpretation. For example, you can
tell some RELAX NG processors that you do want validation to modify the
infoset.
6. The type pseudo-attribute is not very useful for identifying the kind
of schema found at the href, nor for most processors will it override
the MIME-type actually delivered by the server. The type used in
stylesheet PIs actually identifies the type of stylesheet. Therefore
there should be types like "application/xsd" and "application/rng", or
just leave out type, as implementors will have to introspect the
documents, anyway.
7. I am a bit bemused by the examples showing hrefs with relative IRI
values. The only thing less "portable" than a relative IRI is an
absolute file: IRI.
Bob Foster
http://xmlbuddy.com/
---- LSpots keywords ?> ---- HM ADS ?>
YAHOO! GROUPS LINKS
- Visit your group "rng-users" on the web.
- To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
- Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
