Schema Version Considerations

The eLandings schema changes over time .  As of schema version 1.1, eLandings objects that are subject to schema versioning include the <schema_version> element.  Software sending XML representations of eLandings objects must specify into which schema version their object was marshalled; software consuming XML representations of eLandings objects may search the XML string for this markup, and pre-process the XML if necessary before unmarshalling using whichever schema that software is built to accept.

As a practical matter the eLandings web services are capable of receiving eLandings objects in various schema versions.  As the system develops over time, there is no guarantee that all previous schema versions will always be accepted, and communicating in older schema versions may restrict access to the latest eLandings features.  But generally, the eLandings interfaces will attempt to acommodate artifacts submitted to eLandings in older schemas.  Responses from eLandings will normally be returned in the schema version specified as a property of the submitter's user profile.

Comprehensive interface testing and certification processes must ensure that interfacing software (or human operators) is/are capable of managing the schema version setting on the user profile, and/or using other mechanisms to ensure that the interface is robust through occasional eLandings schema upgrades.

It is suggested that the eLandings test and certification service include a suite of servlets built on a foundation of prior schema versions, to provide mechanisms to exercise schema version transitions.