|
Boost : |
Subject: Re: [boost] [property_tree] RapidXML needs updating
From: Preston A. Elder (prez_at_[hidden])
Date: 2009-07-28 18:24:17
Dmitry Vinogradov wrote:
>> If I have something like:
>> <field> </field>
>
> I think this is the right behaviour.
I do not. As far as I know, &#xNN; and &#NNN; is supposed to be treated
literally, and inserted as such. For example, even this should work:
<field>   </field>
And should result in 3 spaces, without any special attributes required.
And I'm a little bolstered in this opinion by the fact that between 1.0
and 1.13 of RapidXML the behavior changed to match my expectation ;)
> BTW, if you want to get <field> with one space inside, you should write:
> <field xml:space="preserve"> </field>
> or
> <field xml:space="preserve"> </field>
The space preservation only happens when you already HAVE a non-space
character in the data, for example:
<field xml:space="preserve">] </field>
works, because of the ']', but just:
<field xml:space="preserve"> </field>
does not. And as I said before, if   is being treated as if it
were some character that should be treated literally in this case.
As an aside, with RapidXML v1.0, the second case above, NEITHER your
second case:
<field xml:space="preserve"> </field>
works, NOR does the first of my cases above, namely:
<field xml:space="preserve">] </field>
Yeilding '' and ']' respectively. In 1.13, both work properly (yeilding
' ' ad '] ' respectively).
So I return to my original point, something got fixed between 1.0 and
1.13, and it should be used in boost :)
PreZ :)
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk