Changes for June 2007 release 2 =============================== List of the key changes made for the minor release updating the June 2007 ome-xml data model. These changes were introduced in September 2007. The new minor release of the schema has the same namespace (2007-06) and a new version number. As a minor release, any file that validated correctly using the last major release will also validate correctly using this new release. Some files that failed to validate before will now be valid. It is important to update any file readers to understand the changes. File writers will not necessarily need corrected. - The version number of the :file:`ome.xsd` schema is now 2. - The version number of the :file:`SPW.xsd` schema is now 2. - The version number of the :file:`AnalysisModule.xsd` schema is now 2. - The version number of the :file:`BinaryFile.xsd` schema is now 2. - The version number of the :file:`CLI.xsd` schema is now 2. - The version number of the :file:`MLI.xsd` schema is now 2. - The version number of the :file:`STD.xsd` schema is now 2. Overview of changes ------------------- Schema Element (all files) ^^^^^^^^^^^^^^^^^^^^^^^^^^ The schema element now imports the XML namespace from a specific location. This gets round a problem with using the old XML namespace which appeared with some XML parsers (notably `Xerces `_), causing the schema to not be valid. Instrument (ome.xsd) ^^^^^^^^^^^^^^^^^^^^ Parts of the ``Instrument`` object are now optional: - ``LightSource`` - ``Detector`` - ``Objective`` - ``OTF`` Experimenter and ExperimenterType (ome.xsd) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ``FirstName``, ``LastName``, ``Email`` and ``OMEName`` are all now optional. However, to be valid, an ``Experimenter`` must have **AT LEAST ONE** of these present. ``Experimenter`` is now a self-contained object and no longer uses ``ExperimenterType``, which has been removed. Description (ome.xsd) ^^^^^^^^^^^^^^^^^^^^^ While there has been no real change to the ``Description`` element, its annotation has been altered to indicate a change in its use. The content model is currently 'ANY', but this is going to change to 'String'. ``Description`` is no longer the correct place for an XML sub-document - ``CustomAttributes`` should be used instead. SerialNumber (ome.xsd) ^^^^^^^^^^^^^^^^^^^^^^ ``SerialNumber``, part of ``ManufactSpec`` used by ``Objective``, ``Detector``, ``Microscope`` and ``LightSource``, has been made optional as there are occasions when the writing application does not have this information. While it may be optional, it must be stressed that it should normally be included, and as such the validator will raise a warning (but not an error) if it is not present or is empty. Regex for LSID / Internal ID (ome.xsd, SPW.xsd, AnalysisModule.xsd) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ There has been a minor change to all the regular expression ('xsd:pattern') portions of the IDs, which means they will no longer generate an error on some parsers (notably the Java one). This concerned the way the - (dash) character was specified as part of a URN and is now escaped correctly. DBLocation, Label and Parent, parts of Element (STD.xsd) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The ``DBLocation`` is now optional. ``Label`` and ``Parent`` have now been added. Description and Label (STD.xsd) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ These now contain a reference to 'XML:lang', which allows the language the ``Description`` or ``Label`` is written in to be recorded.