- What is OFDAXML?
- Why XML?
- FAQs
- Schemas
- OFDAxml Forum
- Downloads
- Committee Members
- How to Join OFDAXML
- Members Only (OFDA Tech Committee)
- News
- Resource Links
- Contact Us
- Home
SCHEMA VERSIONING
OFDAxml schema will evolve over time and it is important to capture the schema's version. Consider two examples of changes to OFDAxml schema:

Example 1: The updated schema extends the namespace by adding new elements, attributes, etc., but does not invalidate previously valid instance documents.

Example 2: The updated schema changes the interpretation of an element. For example, a construct that was valid and meaningful for the previous schema does not validate against the updated schema.

OFDAxml best practice guidelines for schema versioning include:

  1. Increment schema versions by one to indicate that the schema has changed significantly, as in the second example above. To illustrate, the schema version could change from "1.0" to "2.0"

  2. Increment schema versions by less than one to indicate that the schema was only extended, as in the first example above. To illustrate, the schema version could change from "1.0" to "1.1"

  3. Record the version in the schema using the "version" attribute. For example, in the code below the version could be changed from "1.0" to "1.1"

<xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema
                elementFormDefault="qualified"
                attributeFormDefault="unqualified"
                version="1.0">

This action allows software applications to recognize that this is new version of the schema, and take appropriate action.

  1. Make previous versions of OFDAxml schema available to users for validation. This action requires that the file name or location of the schema be changed in the users' instance document. This allows applications to use previous versions and also allows users to migrate to new versions of the schema as compatibility is assured.

  2. With respect to changes that would render a previous version of the schema invalid, the target namespace should also be changed to designate that a new version of the schema exists, following this example:

<xs: schema xmlns=http://exampleSchemaV1.0
            targetNamespace=http://www.exampleSchemaV1.0
            xmlns:xs=http://www.w3.org/2001/XMLSchema
            elementFormDefault="qualified" attributeFormDefault="unqualified">

 

© 2004 Office Furniture Dealers Alliance. All Rights Reserved.


www.ofdanet.org