[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: Elements vs. attributes was: Are people really using Iden

  • To: 'Owen Walcher' <xpriori@o...>, xml-dev@l...
  • Subject: RE: Elements vs. attributes was: Are people really using Identity constraints specified in XML schema?
  • From: "Bullard, Claude L (Len)" <len.bullard@i...>
  • Date: Mon, 23 Aug 2004 09:31:53 -0500

xml elements vs attributes
Which is the beginning of the 'what are atts good for?, they are 
good for metadata', permathread.

If one builds a dynamic assembly tool, one is often switching on 
metadata.  One can do the same thing with an OR group but the means 
don't matter as long as one understands that the range of variants 
is scoped to the contexts of the users.   What happens:

1.  Each user situation/context is evolving semi-independently so it 
    is a good idea to encapsulate the metadata separately.  If 
    evolution in a context breaks out of the context into a higher 
    level component, the system objective for that component is not 
    independent.   That is, you have a hidden coupler.

2.  There is a performance hit for that step.  That is ok.  
    Network effect takes over and is more important than the 
    performance of a single node.

3.  This approach enables the rules to be adjusted just-in-time 
    based on exceptions as encountered.  All exceptions are not errors.

4.  Current use cases (a la XP) enable you to work out just 
    how inclusive/exclusive the boundaries are 'today'.  The 
    exceptions cause boundary expansion.

5.  Systems that expand their boundaries tend to collapse 
    eventually if the core user(s) of the service resources does not 
    use as little of them as possible (see Roman history) and 
    that is why loose coupling, coarse transactions, and rich clients 
    might be used to load balance the system.  Caveat vendor.

Application builders in the MS world should take a hard 
look at the application blocks concept, which are moreorless 
how MS does open source.

len

From: Owen Walcher [mailto:xpriori@o...]

My use of attributes is only as needed to "scope" one or more elements with
a variant theme.  Whereas element laden folks might write something like
this:

<address>
    <street />
    <city />
    <state />
    <zipCode />
    <country />
</address>

Or the attribute laden result (to save space on the wire, presumably):

<address street = "714 my Street" city="my City" state="my State"
zipcode="00666" country="us" />

Which is a rigid (and USA is the only address type - how arrogant)
structure. Probably one of those IT folks who wrote the schema while their
business analyst was getting requirements.

But the flexibility of XML is that it can be heterogenous. . . and how to
understand when you will get what structure is the purpose of attributes. .
. so the more context sensitive XML modeler (who understands the
requirements first) might use:

<address country="us">
    <street />
    <city />
    <state />
     <zipCode />
</address>

for US address, and the the following for UK addresses:

<address country="uk">
   <buildingName />
   <street />
   <city />
   <postalCode />
</address>

I am not aware of a way to use Schema to enforce a substructure based on a
value in an attribute, but from the short look at CAM that I have done, this
seems to be exactly what it was designed to do. . . combine snippets of
variants together into a complete document that is very context aware.
David, did I get that right?

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.