Use of Tags

Peter Wilson pwilson at gorge.net
Mon Apr 19 22:44:28 BST 1999


I see two competing ways of designing an xml document type:

1. Extensive use of attributes with elements used for structured and
repeating items.
    <Invoice CustomerId=12345 Date=19991231>
            <Address  Name="..." Street="..."  .... Zip="..."/>
            <Details>
                <Item Description=".." SKU="..." Quantity="2"
Currency="US$" Price="10.99" />
                <Item Description=".." SKU="..." Quantity="15"
Currency="US$" Price="1.99" />
            </Details>
    </Invoice>

2. Extensive use of elements and almost no use of attributes:
    <Invoice>
        <CustomerId>12345</CustomerId>
        <Date>19991231</Date>
        <Address>
                <Name>...</Name>
                <Street>...</Street>
        </Address>
        <Details>
                <Item>
                    <Description>...</Description>
                    <SKU>...</SKU>
                    <Quantity>2</Quantity>
                    <Price Currency="US$">10.99</Price>
                </Item>
                <Item>...</Item>
         </Details>
    </Invoice>

What motivates these two choices?

Apart from the fact that the second examples occupies 50% more storage
what is to choose between these representations? What philosophy should
one use to make design decisions?

If you attempt to associate data types with entity data which is the
better representation? I.e. is it easier to define that the  <Price>
element has a PCDATA content which is a currency value or that the Price
attribute has a currency value?




xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)




More information about the Xml-dev mailing list