discussion on stable xml:id in odf implementations

Jos van den Oever jos.van.den.oever at kogmbh.com
Mon Mar 4 16:48:58 GMT 2013


Hi all,

A number of elements in ODF documents can have an attribute xml:id. This 
attribute is taken from the W3C xml:id recommendation [1]. It can be 
used on 32 different types of ODF 1.2 elements like text:p and 
text:meta. Each occurrance of xml:id within one XML document should have 
a unique value. Other parts of the ODF document can refer to the 
elements that have an xml:id. Examples are text:continue-list and 
text:change-id and many shape related attributes. In addition, RDF 
statements are linked to document parts by xml:id. Calligra is using 
xml:id in many places.

A discussion in the ODF Technical Committee has been started [2] to see 
if the ODF specification should recommend ODF editors to use stable 
xml:id values. A stable xml:id would mean that when a document is 
loaded, edited and saved, the xml:id values in the changed document 
should be the same as in the original document, where possible.

OpenOffice has a wiki page where a number of Writer editing scenarios 
are discussed.
http://wiki.openoffice.org/wiki/Writer/Metadata_Support

The discussion in the ODF TC is quite subtle. At the moment there are 
very few requirements in the specification about loading and saving 
behaviour. The specification gives meaning to the different parts of a 
documents but makes no relation between the document before loading and 
the document after saving (except for the case of change tracking).

There are a number of options [3] on how this goes forward. It is not 
likely that ODF 1.3 will require stable xml:id values, but having stable 
xml:id values will give an application an advantageous feature.

Cheers,
Jos

[1] http://www.w3.org/TR/xml-id/
[2] https://lists.oasis-open.org/archives/office/201302/msg00013.html
[3] https://lists.oasis-open.org/archives/office/201302/msg00050.html



More information about the calligra-devel mailing list