[relaxng-user] Re: association of RELAX NG with a document

Peter Ring pri at ddf.dk
Sat Oct 25 21:49:35 ICT 2003


I'm in sympathy with the desire not to gamble about what can be asserted 
about an XML instance. I'll elaborate a bit about why.

I'm in favor of something similar to SGML's DOCTYPE. I'm aware of the 
bagage of DOCTYPE, but please, if just for a moment, consider that all 
the funny and peculiar features of SGML are there for a reason -- 
because someone actually needed them -- and that those needs don't go 
away just because we restrict the choice of encodings and markup delimiters.

So maybe a DOCTYPE is overloaded with default attribute values etc. It 
also serves a more abstract purpose that won't ever go away -- it's a 
way to establish a contract between the producer and the consumers of a 
document. That a DOCTYPE declaration can refer to the external subset of 
a SGML or XML DTD happens to be a way to fulfil that purpose.

 From a user's point of view, it is not that important that Relax NG 
fundamentally is a better way of describing syntax if you won't be able 
to use it in a reliable and predictable way.

I my world, there's nothing special about SGML and XML documents. They 
serve a number of purposes, but always as means to end, i.e., nobody 
actually wants 'XML documents', rather some business goal must be 
fulfilled, legal publishing in my case. Configuration management is 
inherent in the process, it is *not* an option. Documents have very long 
and complex lifecycles, and change is inevitable and must be planned for.

Now, versioning (configuration management) of XML languages and 
vocabularies is not easy, the DOCTYPE declaration clearly doesn't fit 
the bill, and XML namespaces appear to be as much a part of the problem 
as the solution. But couldn't we at least have one (1) standard way of 
asserting that a XML document belongs to a (version of) a specific class 
of documents, "expressed in a more persistent way than jing's command 
line"?

Kind regards
Peter Ring

David Tolpin wrote:
<snip/>
> But I want to make sure that I have a way to specify something about the document that
> does not allow racing matches. That way I am always sure that on my system a document
> I am explicit about its type is validated in a way I have specified for this type,
> whatever other rules sale. And this specific association can be expressed in a more
> persistent way than jing's command line.
> 
> Other inference rules will still be used if a highest priority rule does not match, and it
> is a good thing. I just want explicit typing bound to a document, not to a keyboard keystroke.
> 
> I surely understand something wrong. I am taking a pause until I realize what in particular.



More information about the relaxng-user mailing list