Re: [xml-dev] Don’t create elements with simple content and attributes

From
John Cowan <>
To
Ihe Onwuka <>
Date
2018-09-28T15:18:26Z
ID
<CABzTEQBUZzv5c+MXV2Sm+FUY+B88=>
Thread
Re: [xml-dev] Don’t create elements with simple content and attributes


On Fri, Sep 28, 2018 at 11:06 AM Ihe Onwuka <[email protected]> wrote:Whereas by implication of what you have said you want to claim that 
 
<Cost>8.95</Cost>

is explicitly labeled.

So to flesh out your claim. Somehow the presence of the attribute on the Cost element interferes with what you are calling explicit labelling. 

Except that it doesn't.

I think Roger's point is that a cost, like a length or a mass, is meaningless without a unit.  "What does that cost?"  "Five."  "Five what?  Dollars, cents, dinars, zlotys, razbuckniks?"  So he is arguing that the two components of a cost, the numeric part and the unit, each should be explicitly marked up.  I think he is clearly right about the first point, and arguably right about the other, at least for XML-as-data.

When SGML/XML were all about textual documents, the role of attributes was fairly clear: marginal notes or commentaries on the text.  In that context, you want to preserve the text as is, and <quote><currency value="5" unit="USD>Five.</currency></quote> makes a lot of sense.  Note that this meets Roger's criterion for explicit markup.

-- 
John Cowan          http://vrici.lojban.org/~cowan        [email protected]
Almost all theorems are true, but almost all proofs have bugs.
        --Paul Pedersen