- From: Patrick Stickler <patrick.stickler@nokia.com>
- Date: Tue, 15 Feb 2005 11:51:49 +0200
- To: "ext Norman Walsh" <Norman.Walsh@Sun.COM>
- Cc: www-tag@w3.org
On Feb 14, 2005, at 17:36, ext Norman Walsh wrote: > / Mark Baker <distobj@acm.org> was heard to say: > | IMO, this means that one needs to consider the implications of > adding a > | name to a namespace in the same way that one needs to consider > minting > | a new media type if a backwards incompatible revision to a document > | format is produced. > > I agree that the implications have to be considered, but that doesn't > always mean that the right answer is to change the namespace (or the > media type). > > Consider the case of XSLT 2.0. It uses the same namespace name (and > would use the same media type, if XSLT 1.0 had had an official media > type) as XSLT 1.0, despite the fact that there are new elements and > that the semantics of some of the existing elements have changed. > > The use of a version attribute means that an XSLT processor can "do > the right thing" (though what the right thing is varies a bit) > regardless of the fact that the vocabulary has changed. > Exactly. Applications need to operate in terms of vocabularies, document models, ontologies, etc. not in terms of namespaces. There is the XSLT 1.0 vocabulary. There is the XSLT 2.0 vocabulary. Those two distinct vocabularies happen to share common terms; but do not employ the exact same set of terms. Those shared terms happen to be defined with the same namespace name. The namespace name does not identify either vocabulary. Applications are free to use either vocabulary, and any differences in the set of terms employed by either vocabulary should be irrelevant to a particular application using a particular vocabulary, since the application is concerned with the vocabulary -- and not the syntactic details of how the identifiers for terms are constructed. The confusion arises if/when folks presume that namespace = vocabulary and/or namespace = document model and then (understandably) worry about how applications are impacted when new terms are minted using a particular namespace -- presuming (wrongly) that doing so introduces those new terms into an existing vocabulary. If the existing version of the vocabulary does not include those terms, and the application is clear which version of a vocabulary some data is presumed to conform to, then it should simply not care about namespaces at all. Patrick
Received on Tuesday, 15 February 2005 09:52:50 UTC