W3C home > Mailing lists > Public > xmlschema-dev@w3.org > April 2003

Re: Attributes vs. Elements for Code values

From: Dan Vint <dvint@mindspring.com>
Date: Thu, 17 Apr 2003 08:28:50 -0700
Message-Id: <>
To: <xmlschema-dev@w3.org>

We are currently on about a 6 month release schedule for updating the 
entire schema. We are still adding lines of business and functionality. We 
also have a mechanism to allow companies to add codes that are unique to 
them which can handle any immediate change required.

Yes we have code lists that range from 2 items (male, female) to several 
hundred. On average I would say there are 10 codes per list with several 
hundred lists being involved.


At 10:11 PM 4/16/2003 -0400, Jack Lindsey wrote:
>Our general approach is to avoid enumeration within the schema because we 
>typically have way more than a handful of values, often 30 or so, even a 
>couple of thousand for car make and model.  So we wanted to keep code 
>value maintenance independent from schema maintenance since we anticipate 
>issuing code table updates more frequently than schema updates.
>Cheers jack
>----- Original Message -----
>From: "Dan Vint" <dvint@mindspring.com>
>To: <xmlschema-dev@w3.org>
>Sent: Wednesday, April 16, 2003 9:33 PM
>Subject: Re: Attributes vs. Elements for Code values
>: My organization has 2 schemas one with each approach. The issue is somewhat
>: of a wash until you consider if you are providing an enumerated list of
>: values. We have found it to be more flexible to have this as element
>: content than as attribute content.
>: Originally coming from SGML, I would have pushed the attribute route
>: because a DTD allowed some validation and control of a defined list where
>: element content didn't. Schemas change that and allowed both the manage
>: this issue, now it seems to be how you might want to extend a list of
>: values that settle the discussion.
>: At 09:09 PM 4/16/2003 -0400, Jack Lindsey wrote:
>: >I want to use XML attributes to hold terse code values (e.g. "CA-BC",
>: >"312120", "23") that are replaced by text in the language of your choice
>: >from lookup tables in XML files (e.g.
>: >"Colombie-Britannique",  "Breweries", "Cul-de-sac") when the XML data is
>: >rendered on a web page.  However, some of my colleagues suffer from
>: >generalized attribute phobia and want to do everything with XML
>: >elements.  I don't see the danger.  Here are my pros and cons.  What do
>: >you think?
>: >
>: >
>: >PRO
>: >1. Attributes mean much more compact XML data
>: >2. Processing attributes is much more efficient in XSLT and DOM
>: >3. Everybody does codes this way
>: >
>: >CON
>: >1. Other people's schemas can't just reuse your codes without also using
>: >the surrounding element, unless you declare your code attributes globally?
>: >Is that right?
>: >2. If an element can have multiple values of a code (like Disability in
>: >Being in the example below), you have to create an element for it anyway
>: >so it can occur multiply, and that is the worst option, performance-wise
>: >(according to Scott Bonneau, XML Design handbook, p. 43)
>: >3. You don't get that nice XML schema diagrammatic documentation for your
>: >attributes in XML Spy.
>: >
>: >
>: >Sample Data:
>: >
>: ><Being beingSerialNumber="0002345" genderID="3" speciesID="42">
>: >   <BeingBirthDate>1980-04-13</BeingBirthDate>
>: >   <Disability disabilityID="17"/>
>: >   <Disability disabilityID="24"/>
>: >   <MedicalConditionNarrative medicalConditionID="23">Not responding to
>: >treatment.</MedicalConditionNarrative>
>: >   <MedicalConditionNarrative medicalConditionID="16">Clearing up
>: >nicely.</MedicalConditionNarrative>
>: ></Being>
>: >
>: >Cheers Jack
Received on Thursday, 17 April 2003 11:29:16 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 23:15:10 UTC