Thomas, The original namespace was designed in a way that would not require a change until there was a radical RM (or schema design) change.
I would suggest that the principles are similar to archetype versions and revisions, the namespace will require a change when the schema change breaks existing data, otherwise it is just a version change. The version attribute in the schema does not affect the data at all, it is for version control information to the users of the schema. I don't care what goes there but at the time the openEHR release seemed logical. If a new release changes the schema (in a compatible way) the release number of that specific schema can change otherwise I don't see any need to upgrade the version ID just because of a new release, but as I said I don't care that much because it has no affect on the data as long as I know what schema I need to deploy with my version specific openEHR components. The question is, what do we do when we do have a data breaking schema change, like potentially in r1.1? I suggest that we just go with http://schemas.openehr.org/v1.1 and we can assume the old http://schemas.openehr.org/v1 meant r1.0.x. It wasn't expected to have such a substantial schema change until r2 but I guess that is the reality of software. Jumping ship to another style such as http://schemas.openehr.org/2009/03 would also be reasonable, it would just mean we have to correlate release dates with release numbers. BTW Andrew, There is an optional rm_version in the archetype_details attached to any archetyped locatable. We currently populate this only when we specify a template_id on the composition, which is all compositions in our applications. We could suggest that this is required for all compositions and make this the handle to determine what schema to use for validation. Heath From: [email protected] [mailto:openehr-technical-bounces at openehr.org] On Behalf Of Thomas Beale Sent: Wednesday, 10 December 2008 10:23 PM To: For openEHR technical discussions Subject: {Disarmed} Re: Q on openEHR XML-schema versioning Andrew Patterson wrote: ok - this approach more or less replicates the release id approach already in use, but converts it to a URL. Except, this is a change that occurs in all xml _instances_, not just the schema files. So every reference model document in every system in existence now has to handle two different schemas and convert between them. We have to decide whether this is what we want.. do the xml schemas aggressively track the exact spec versions, or do we only increment xml schema versions when necessary (and therefore should the xml schemas have a separate version) I don't think this is the case - each document should just indicate which schema it is derived from. There will always be new and improved XML-schemas - that is just the nature of a formalism that is inherently inefficient - people will keep coming up with ways to improve it. Any document created from a previous version of the schema will point to the earlier version. Since all schemas in openEHR are designed to convert into the same reference model, the data remain interoperable (unlike purely schema-based approaches to health data). The main point it seems to me is what the schema should carry as its namespace... is it (as today): <xs:schema xmlns:xs= <http://www.w3.org/2001/XMLSchema> MailScanner has detected a possible fraud attempt from "www.w3.org" claiming to be "http://www.w3.org/2001/XMLSchema" xmlns= <http://schemas.openehr.org/v1> MailScanner has detected a possible fraud attempt from "schemas.openehr.org" claiming to be "http://schemas.openehr.org/v1" targetNamespace= <http://schemas.openehr.org/v1> MailScanner has detected a possible fraud attempt from "schemas.openehr.org" claiming to be "http://schemas.openehr.org/v1" elementFormDefault="qualified" version="v1.0.2" id="BaseTypes.xsd"> or more like: <xs:schema xmlns:xs= <http://www.w3.org/2001/XMLSchema> MailScanner has detected a possible fraud attempt from "www.w3.org" claiming to be "http://www.w3.org/2001/XMLSchema" xmlns= <http://schemas.openehr.org/v1> MailScanner has detected a possible fraud attempt from "schemas.openehr.org" claiming to be "http://schemas.openehr.org/v1" targetNamespace= <http://schemas.openehr.org/v1> MailScanner has detected a possible fraud attempt from "schemas.openehr.org" claiming to be "http://schemas.openehr.org/v1.0.2" elementFormDefault="qualified" id="BaseTypes.xsd"> I don't know what weight the 'version' attribute carries in the xs:schema tag - I don't understand why there appear to be two ways of indicating the version in fact. The schema identifier is a URI - there is no requirement that it is accessible at the same identifier, and in fact it seems like there is a trend towards using other URN syntaxes rather than URLs. so sticking with the current style of URI is no problem. - thomas beale -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.openehr.org/mailman/private/openehr-technical_lists.openehr.org/attachments/20081212/7c529705/attachment.html>

