Lists Home |
Date Index |
AARRRGGGH!!! Once again you are touching on a pet peeve!
IMHO namespaces are a technology that someone invented - then went looking for a
problem to solve with it.
In 99% of cases the natural XML heirarchy and XPath are enough:
Instead people create havoc and confusion for end users with multiple namespace
documents. And the real joke is none of it versions!
Using namespaces should only occur when you want to exclude content from within
content. This is how of course CAM does it.
Also - CAM <ContentReference> completely does away with the need for namespaces
as a means to denote domain usage. This keeps your instances simple and they
parse anywhere - no namespace issues.
So - ContentReference - assigns a unique ID (UID) to each element / attribute -
so you know instantly - even if the tag name is different (something namespace
can't do too!) - that its actually the same semantic item, and hence content
rules to apply. And this versions as you can have suffix(es) on the UID
values. And of course the UIDs provide lookup index to registry definitions.
This brings us to two more Fallacies for Rogers list.
Fallacy that Versioning is only needed at the document level.
Fallacy that Domain Context must be resolved with namespaces.
Quoting "Bullard, Claude L (Len)" <email@example.com>:
> Did you address the problem of having multiple layers of abstraction and
> the use of global elements that forces one to use namespaces? GJXDM
> is wrestling with this one.
> From: DuCharme, Bob (LNG-CHO) [mailto:firstname.lastname@example.org]
> >I'm wondering is there a possibility of having different XML Schema views
> (for reusability purposes).
> I did a paper titled "Maintaining Schemas for Pipelined Stages" (
> <http://www.snee.com/bob/docs/04-01-05.html> ) at XML 2002 that addresses
> this problem. It uses hypothetical small examples, but Eric van der Vlist
> has since told me that he has used its ideas in a production system since
> Instead of writing the schema as an XSLT stylesheet, as Michael Kay
> suggests, my approach uses a master schema describing the shared and
> unshared parts of the schemas in question and then a generic stylesheet to
> pull out a schema (which one could call a "view") for a specific stage in
> the pipeline as needed.
> And it works with both W3C Schema and RELAX NG.