[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [ws-rx] namespace URI versioning policy
On Mon, 19 Sep 2005, Christopher B Ferris wrote: > All, > > Fulfilling my AI [1], I have worked with Paul C to develop a namespace URI > versioning policy for our specs. (below) > > Have at it! > > Paul raised one point not addressed in the policy below. The W3C has a > policy of making a spec available at a "latest" URI that is fixed for > the lifetime of a spec (well, mostly... rules were made to be broken). Indeed, W3C publishes a "Latest version:" (fixed) URI locator for each prose 'Technical Report' specification as it progresses though successive stages of maturity: Working Draft (WD), Candidate Recomendation (CR), Proposed Recomendation (PR), Recomendation (REC). This "Latest Version: " URI is an identifier that can be bookmarked in a browser, or otherwise published, so that by dereferencing it, you always get the current/latest version of the prose specification. The same practice is used for versions of W3C Notes as well. However, some observations: 1) it's not just W3C [1]: a similar practice is followed for Technical Reports from the Unicode Consortium [2], the Dublin Core Metadata Initiative (DCMI) [3], the RDDL Spec development group [4], and others. 2) the "Artifact Identification Requirements 1.0" released by the OASIS TAB for public review prescribes the use of a "Latest Version Subtree" [5] and illustrates the use of current/latest version URI 3) the draft OASIS Specification Templates for producing specifications illustrate the use of a current/latest ("persistent") identifier for a prose spec, in addition to "This version" and "Previous version" [6] 4) Modulo one edge case I can think of, the design/use of a fixed "Latest version" prose spec URI is independent of the decision about whether to use an HTTP scheme URI namespace name, and the construction of that URI, and the determination about the possible use of a RDDL "namespace document" [7] which is to be fetched if one dereferences the namespace URI > The policy below doesn't provide such a feature. Per above "4)" it's not clear to me that a namespace (change) policy would need to address the matter of a (prose spec) "Latest version: " URI. The one problematic case, perhaps not an edge case, is when the TC wants to use a RDDL namespace document in connection with the XML Schema (and WSDL), *and* wants the prose specification to somehow live at the same or neadby URI. I have raised this matter for consideration by the OASIS TAB as a possible case of collision -- although it's easily obviated if the prose specification "Latest version: " URI is intentionally different than the namespace URI. Typically, for a "directory" in the document repository tree "a)," the server redirects to "b)" and returns a directory listing for the contents of the directory. Example, involving no namespace URI: a) http://docs.oasis-open.org/xacml/references b) http://docs.oasis-open.org/xacml/references/ b') http://docs.oasis-open.org/xacml/xacmlRefs.html /* Latest version URI */ A similar convention is now being followed (with some regularity) in cases where a namespace URI is constructed *without* the trailing slash, "c)": if that HTTP scheme URI namespace name is dereferenced, the server redirects to the RDDL namespace document, "d)" for examples: c) http://schemas.xmlsoap.org/ws/2004/04/sc d) http://schemas.xmlsoap.org/ws/2004/04/sc/ /* RDDL */ c) http://schemas.xmlsoap.org/ws/2005/04/ssi d) http://schemas.xmlsoap.org/ws/2005/04/ssi/ /* RDDL */ c) http://schemas.xmlsoap.org/ws/2004/10/wscoor d) http://schemas.xmlsoap.org/ws/2004/10/wscoor /* RDDL */ c) http://schemas.xmlsoap.org/ws/2004/10/wsat d) http://schemas.xmlsoap.org/ws/2004/10/wsat/ /* RDDL */ c) http://www.w3.org/2005/08/addressing d) http://www.w3.org/2005/08/addressing/ /* non-RDDL namespace doc */ > > However, we could establish a policy that we could make the RDDLs > available via redirect or some equivalent means at the following URI: > > http://docs.oasis-open.org/wsrm/ > http://docs.oasis-open.org/wsrmp/ > > that would provide a means for developers to be able to always find the > latest spec, schema and WSDLs, etc. One certainly could redirect: http://docs.oasis-open.org/[product]/yyyymm/ e.g., http://docs.oasis-open.org/wsrmp/200604/ /* namespace URI */ redirects to: http://docs.oasis-open.org/wsrmp/ /* RDDL actually lives here */ But I have not seen this particular practice before. In terms of what the TAB's WD-15 AIR document [5] calls the "Specific version subtree" (Section 7.4) and the "Latest version subtree" (Section 7.5), are you making a recommendation about which of the two paths above would be the root for the "Specific version subtree", if either? I don't have any opinion about how these decisions are to be made optimally; in principle, I think it's OASIS practice to let the TCs decide. Also, the TAB's AIR document [5] is being revised, and I'm not sure what parts will survive as authoritative. Grist for the mill... Robin Cover [OASIS, but not speaking officially in any capacity] ********** References ********** [1] W3C example Synchronized Multimedia Integration Language (SMIL 2.1) W3C Candidate Recommendation 13 May 2005 This version: http://www.w3.org/TR/2005/CR-SMIL2-20050513/ Latest SMIL 2 version: http://www.w3.org/TR/SMIL2/ Latest SMIL Recommendation: http://www.w3.org/TR/SMIL/ Previous version: http://www.w3.org/TR/2005/WD-SMIL2-20050201/ [2] Unicode Consortium example Unicode Standard Annex #34 Unicode Named Character Sequences Version: 4.1.0 Authors: Ken Whistler Date: 2005-03-25 This Version: http://www.unicode.org/reports/tr34/tr34-3.html Previous Version: http://www.unicode.org/reports/tr34/tr34-1.html Latest Version: http://www.unicode.org/reports/tr34/ Revision: 3 [3] Dublin Core [DCMI] example Dublin Core Metadata Element Set, Version 1.1: Reference Description Identifier: http://dublincore.org/documents/2004/12/20/dces/ Supersedes: http://dublincore.org/documents/2003/06/02/dces/ Latest version: http://dublincore.org/documents/dces/ [4] RDDL spec team example Resource Directory Description Language (RDDL) This Version: July 4, 2005 http://www.rddl.org/20050704/ Latest Version: http://www.rddl.org/ Previous Version: February 18, 2002 [5] OASIS TAB's "AIR" http://lists.oasis-open.org/archives/chairs/200507/msg00000.html http://www.oasis-open.org/committees/download.php/13344/AIR-WD15.pdf http://xml.coverpages.org/TAB-AIRv10-WD15-20050630.pdf "Location Current: docs.oasis-open.org/oasis/ArtifactIdentificationRequirements/latest This Version: docs.oasis-open.org/oasis/ArtifactIdentificationRequirements/v1.0 Previous Version: http://www.oasis-open.org/spectools/docs/chairs-filenaming-02.html 7.5 Latest Version Subtree The most recent version of specification or profile artifacts or set of artifacts MUST be available at this location: docs.oasis-open.org/[product]/latest" [6] Draft OASIS Specification Templates http://docs.oasis-open.org/templates/ http://docs.oasis-open.org/templates/OASIS_Specification_Template_v1-0.html "Location: Persistent: http://docs.oasis-open.org/[tc shortname]/[spec] This Version:http://docs.oasis-open.org/[tc shortname]/[spec]/[this version] Previous Version: http://docs.oasis-open.org/[tc shortname]/[spec]/[previous version]" [7] RDDL 'Namespace document' http://www.rddl.org/ http://xml.coverpages.org/rddl.html -------------- > > [1] > http://www.oasis-open.org/apps/org/workgroup/ws-rx/members/action_item.php?action_item_id=1004 > > Cheers, > > Christopher Ferris > STSM, Emerging e-business Industry Architecture > email: chrisfer@us.ibm.com > blog: http://webpages.charter.net/chrisfer/blog.html > phone: +1 508 377 9295 > > Namespace Versioning Policy > > The following is the declared policy of this specification with regards to > the namespace URI assignment > for both the related XML Schema and WSDL definitions. > > The pattern of the namespace URI shall be: > http://docs.oasis-open.org/[product]/yyyymm/ > Where [product] is the short name of the specification as prescribed by > OASIS followed by > the century, year and month chosen by the TC. > > It is the intent of the WS-RX TC members that the namespace URI will not > change arbitrarily > with each subsequent revision of the corresponding WSDL or XML Schema > document, but rather > change only when a subsequent revision, published in conjunction with a > Committee Specification > results in non-backwardly compatible changes from a previously published > Committee Specification. > > Under this policy, the following are examples of backwards compatible > changes that would > not result in assignment of a new namespace URI: > > * addition of new global element, attribute, complexType and simpleType > definitions > * addition of new operations within a WSDL portType or binding (along with > the corresponding > schema, message and part definitions) > * addition of new elements or attributes in locations covered by a > previously specified wildcard > * modifications to the pattern facet of a type definition for which the > value-space of the previous > definition remains valid or for which the value-space of the > preponderance of instance would > remain valid > * modifications to the cardinality of elements for which the value-space > of possible instance documents > conformant to the previous revision of the schema would still be valid > with regards to the revised > cardinality rule > > The policy for namesapce URI assignment between subsequent revisions of TC > editors drafts > shall be to retain the same namespace URI regardless of the nature of the > changes. Prior to > adoption of a new Committee Specification, the TC will assess the > backwards-compatibility > of the schema and WSDL documents with the prior Committee Specification > (if any) and either > retain the namespace URI or assign a new one in accordance with this > policy. > > An RDDL document shall be made available at the namespace URI location > that will provide > a link to the actual location of the relevant XML Schema or WSDL > definitions documents. When > appropriate, the RDDL will provide links to the deprecated revisions of > the XML Schema and > WSDL definitions documents that carry the same namespace URI. > --
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]