text:id is deprecated

Boudewijn Rempt boud at valdyas.org
Wed Dec 14 13:33:08 GMT 2011


On Friday 02 December 2011 Dec, Jos van den Oever wrote:
> After upgrading the calligra source code to the latest version of the Relax NG 
> schema, a problem became apparent.
> 
> In various places, Calligra uses text:id. In ODF 1.2, text:id has been 
> deprecated in many places in favor of xml:id. 

I see that the same has happened to draw:id from your commits. In many places, the id we use for draw:id isn't a unique identifier, but things like "QString("object%1").arg(m_objectIndex)".

Moreover, we also use xml-id to mark RDF data, using something like rdfid-27e0f6aa-b85d-4620-a05a-2a4fb2381853, which links back to items in manifest.rdf. The xml:id's for rdf are recreated on every save, and on loading used to link elements to rdf data. The xml:id is kept and used during run-time in KoTextInLineRdf.

Previously, xml-id was used _only_ for marking RDF.

Since we cannot add more than one xml-id to an element, we should create something that hands out per-element unique rdf id's that do not contain hidden data that calligra apps can interpret, but that we can use to link objects to extra data, like rdf.

I'm not sure what that would look like yet. Comments or suggestions for a redesign?

-- 
Boudewijn Rempt
http://www.valdyas.org, http://www.krita.org, http://www.boudewijnrempt.nl



More information about the calligra-devel mailing list