Review Request: read XML in the rigth way. ie. <a> <b>\n<c> has 5 nodes, not 3

Jan Hambrecht jaham at gmx.net
Sat Aug 6 22:23:35 BST 2011



> On Aug. 6, 2011, 5:04 p.m., Sebastian Sauer wrote:
> > Thinking a bit more in my opinion we should not change how whitespaces are handled atm if there is no good reason for it (like a performance-boost or ...). The "2.10 White Space Handling" section from http://www.w3.org/TR/REC-xml/#sec-white-space makes it rather clear that;
> > 
> > <quote>
> > <!ATTLIST poem  xml:space (default|preserve) 'preserve'>
> > 
> > The value "default" signals that applications' default white-space processing modes are acceptable for this element; the value "preserve" indicates the intent that applications preserve all the white space.
> > </quote>
> > 
> > What means that there are 2 modes. The default one (we are currently using) and the preserved one (which this patch tries to implement). Per ODF-specs the ODF XML-content is using the default but not the preserve mode (see e.g. http://blogs.oracle.com/lars/entry/whitespace_in_odf ).
> > 
> > So, this patch would result in us not proper handling ODF documents any longer :-/
> >

I think we have to differentiate between reading xml and reading odf. What i mean with that is not all xml is odf, and that class is an xml reader not an odf reader. So there are more uses cases than just reading odf. Svg reading is one of them. And preserving whitespace when reading svg text is a required feature.


- Jan


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/101857/#review5443
-----------------------------------------------------------


On Aug. 6, 2011, 10:56 a.m., Jaime Torres Amate wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/101857/
> -----------------------------------------------------------
> 
> (Updated Aug. 6, 2011, 10:56 a.m.)
> 
> 
> Review request for Calligra.
> 
> 
> Summary
> -------
> 
> Quoting the w3 consortium:
> [Definition: All text that is not markup constitutes the character data of the document.]
> 
> And in section
> http://www.w3.org/TR/REC-xml/#sec-white-space
> 
> In editing XML documents, it is often convenient to use "white space" (spaces, tabs, and blank lines) to set apart the markup for greater readability. 
> Such white space is typically not intended for inclusion in the delivered version of the document. 
> On the other hand, "significant" white space that should be preserved in the delivered version is common, for example in poetry and source code.
> 
> An XML processor MUST always pass all characters in a document that are not markup through to the application. 
> A  validating XML processor MUST also inform the application which of these characters constitute white space appearing in element content.
> 
> [Definition: An element type has mixed content when elements of that type may contain character data, optionally interspersed with child elements.] 
> ------------------
> The attached patch modifies the xml parser to return the spaces between > and < as text elements.
> 
> I needed to change the TestXmlReader to remove all the additional spaces between nodes.
> (I'll need to modify the patch to remove all the additional spaces I've introduced).
> 
> 
> Diffs
> -----
> 
>   libs/odf/KoXmlReader.cpp ad5e9d2 
>   libs/odf/KoXmlReaderForward.h 4ca9a74 
>   libs/odf/tests/TestXmlReader.cpp 6631b64 
> 
> Diff: http://git.reviewboard.kde.org/r/101857/diff
> 
> 
> Testing
> -------
> 
> The modified TestXmlReader test is OK.
> There are only 2 regressions in the tests that I do not know how to fix:
>         147 - krita-ui-KisKraLoaderTest (Failed)
>         148 - krita-ui-KisKraSaverTest (Failed)
> 
> Also, I've been able to read with calligrawords and calligrastage all the .od* that I have without problems.
> 
> 
> Thanks,
> 
> Jaime Torres
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/calligra-devel/attachments/20110806/36282f20/attachment.htm>


More information about the calligra-devel mailing list