8
Best practice for updating and versioning of TDWG standard XML schemas Walter G. Berendsohn, Andrea Hahn, Anton Güntsch, Chuck Miller, Javier de la Torre, Markus Döring, Neil Thomson, Patricia Mergen, Renato De Giovanni, William Ulate, Wouter Addink

Best practice for updating and versioning of TDWG standard XML schemas Walter G. Berendsohn, Andrea Hahn, Anton Güntsch, Chuck Miller, Javier de la Torre,

Embed Size (px)

Citation preview

Page 1: Best practice for updating and versioning of TDWG standard XML schemas Walter G. Berendsohn, Andrea Hahn, Anton Güntsch, Chuck Miller, Javier de la Torre,

Best practice for updating and versioning of TDWG standard

XML schemas

Walter G. Berendsohn, Andrea Hahn, Anton Güntsch, Chuck Miller, Javier de la

Torre, Markus Döring, Neil Thomson, Patricia Mergen, Renato De Giovanni,

William Ulate, Wouter Addink

Page 2: Best practice for updating and versioning of TDWG standard XML schemas Walter G. Berendsohn, Andrea Hahn, Anton Güntsch, Chuck Miller, Javier de la Torre,

Changes in ABCD versions

Used versions of ABCD: 1.2, 1.49, 2.0, 2.06, 2.06a• Bugfixing

– Elements without type, – Misspellings of element or attribute names– Duplication of elements– Containers for unbound elements

• Additional substructures or simple elements• Changes of types (restrictions, attribute addition, etc.)• New complex types• Clarification of semantics• Change of semantics• Renaming of elements or attributes

Page 3: Best practice for updating and versioning of TDWG standard XML schemas Walter G. Berendsohn, Andrea Hahn, Anton Güntsch, Chuck Miller, Javier de la Torre,

Versions and extensions

• New namespace– breaks all existing implementations

• xs:any extension– uncoordinated, non-standard

• No new namespace, version attribute– may be dangerous– clear definition of “allowed” changes needed– must proceed in a coordinated manner– Example: GML

Page 4: Best practice for updating and versioning of TDWG standard XML schemas Walter G. Berendsohn, Andrea Hahn, Anton Güntsch, Chuck Miller, Javier de la Torre,

ABCD versioning

• ABCD 2.06 adopted at TDWG 2005 in St. Petersburg • Upgrade plan:

– ABCD provides a provisional mechanism for extending the schema using xs:any typed slots at the level of the unit, within site descriptions and within identification results.

– New version of ABCD to be released whenever a significant number of additions and changes have accumulated and/or structural changes are urgently needed.

– New version - new namespace for the new version of the ABCD schema.

• ABCD 2.6 has bugs and problems• Interim version is needed

Page 5: Best practice for updating and versioning of TDWG standard XML schemas Walter G. Berendsohn, Andrea Hahn, Anton Güntsch, Chuck Miller, Javier de la Torre,

TIP-sponsored ABCD workshop

• Interim version with same namespace ensuring full backward compatibility.

• Changes must not introduce changes which will break applications using previously approved versions

• The root element of the schema includes a version attribute indicating the schema version number.

• This number should agree with the namespace assigned to the schema.

• Minor changes are then indicated by letters. For example, the first interim version of ABCD 2.06 should receive be identified as 2.06a.

Page 6: Best practice for updating and versioning of TDWG standard XML schemas Walter G. Berendsohn, Andrea Hahn, Anton Güntsch, Chuck Miller, Javier de la Torre,

Backward compatibility

is maintained when

• no elements or attributes are deleted (may be marked as deprecated)

• no elements or attributes are renamed(mark as deprecated and add new)

• the semantics of all elements are left unchanged– (clarification of annotation text etc. is ok)

• type changes are restricted to assigning types to previously un-typed elements

• new elements are added

Page 7: Best practice for updating and versioning of TDWG standard XML schemas Walter G. Berendsohn, Andrea Hahn, Anton Güntsch, Chuck Miller, Javier de la Torre,

ABCD 2.06 2.06a

Main changes: • defining types for several un-typed elements• eliminating confusion concerning metadata• adding a new extension slot at the dataset level• addition of several elements for better

compatibility to Darwin Core and HISPID

See ABCD Wiki http://ww3.bgbm.org/abcddocs/

Page 8: Best practice for updating and versioning of TDWG standard XML schemas Walter G. Berendsohn, Andrea Hahn, Anton Güntsch, Chuck Miller, Javier de la Torre,

Process?

• Review is needed! • Process for new versions • Process for interim versions?