[prev in list] [next in list] [prev in thread] [next in thread] 

List:       calligra-devel
Subject:    text:id is deprecated
From:       Jos van den Oever <jos.van.den.oever () kogmbh ! com>
Date:       2011-12-02 15:38:29
Message-ID: 201112021638.30060.jos.van.den.oever () kogmbh ! com
[Download RAW message or body]

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. For <text:p> the specification 
says:
-------
The text:id attribute specifies an identifier for an element.
OpenDocument consumers shall ignore a text:id attribute if it occurs on a 
<text:p> element with an xml:id attribute value. If there is no xml:id 
attribute value, then a text:id attribute should be processed as it were an 
xml:id attribute. 
OpenDocument producers may write text:id attributes for <text:p> elements in 
addition to an xml:id attribute.
A <text:p> element shall not have an text:id attribute if it has no xml:id 
attribute value. The value of a text:id attribute shall equal the value of an 
xml:id attribute on the same <text:p> element. 
The text:id attribute is deprecated in favor of xml:id. 19.914
-------
The same rules are defined for draw:text-box, text:changed-region, text:h, and 
text:p. The quickest fix for this problem is to write out xml:id whereever 
text:id is written on one of these elements.

I've fixed this in libs/kotext/opendocument/KoTextWriter_p.cpp as a start.
At least a few odf documents should now roundtrip to valid ODF documents.

Cheers,
Jos

-- 
Jos van den Oever, software architect
+49 391 25 19 15 53
074 3491911
http://kogmbh.com/legal/
_______________________________________________
calligra-devel mailing list
calligra-devel@kde.org
https://mail.kde.org/mailman/listinfo/calligra-devel
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic