Flexible Schemas (was RE: The task to be solved by RDDL)
> -----Original Message----- > From: Nicolas Lehuen [mailto:nicolas.lehuen@u...] > Sent: 19 January 2002 09:58 > To: xml-dev@l...; Joe English > Subject: Re: The task to be solved by RDDL. Re: RDDL > (was RE: Negotiate Out The Noise) [...] > While there are many namespaces that, right or wrong, can stand alone in > documents, and thus have associated schemas, there are schemas that define > document with a namespace mix. Those schema don't have a particularly > associated namespace, so they can't appear in a RDDL document. > > And I'm not talking about exotic, rare and proprietary schemas. To begin > with, some examples are all XHTML documents that have modules in other > namespaces, like RDDL and WAP 2.0. There are DTDs and schemas for those > language, but RDDL is not fit to handle them. As I said in my previous message, I don't see this as a problem with RDDL. Instead I think it suggests that our approach to writing *schemas* isn't flexible enough to deal with documents containing an arbitrary mix of namespaces. I should state up front I don't have any answers here, I'm just interested in a general discussion. The majority of schemas that I've seen assume a fixed set of elements. These elements may come from zero, one or more namespaces. The schema is "closed". They're designed to validate a particular class of documents. Some schemas are "open", i.e. they allow "unknown" elements to be used in the document, and these usually in fairly fixed places (cf: XSD ANY, XHTML DTD Modularization). However these schemas still seem to be designed to validate _documents_. They validate the document, and ignore sections of it, or as with modularization defer to other schema/dtd modules. Yet the scenario you're discussing is one which seems like it could become increasingly common: we have a mixed namespace document for which there is no schema. You're asking, how can I validate these documents? Is there a heuristic for combining together several schemas to achieve this goal? To do this you need to define schemas not only to be open, but also to be easily fragmented so that portions of it can be applied. I can imagine doing this with a schematron schema (only apply certain rules/patterns), but not with a DTD. I also assume there's a way to do this with RELAX NG and XSD. You then need to apply these fragments to the document to validate it. I don't see schemas being written with this use in mind, nor do I see validators that allow this flexible application of schemas. I may be showing a lack of understanding here, I don't mind looking a fool :) Does anyone else see this as an issue, or is it not a problem? Am I misunderstanding something? RDDL only enters this picture as a way to associate a schema, or fragment thereof with a Namespace URL. Doing something with those fragments, assuming they're available is something for the validator. Cheers, L. -- Leigh Dodds, Research Group, Ingenta | "Pluralitas non est ponenda http://weblogs.userland.com/eclectic | sine necessitate" http://www.xml.com/pub/xmldeviant | -- William of Ockham
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format