OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
What makes a data component good for standardizing?

Hi Folks,

Suppose you set out to create some standard data components. Your goal is to improve interoperability by creating standardized data components. Particularly, you want these standardized data components to improve interoperability between systems that weren't a priori coded to understand each other's data exchange format (i.e. you want to improve interoperability with the "unanticipated user").

What makes one data component good, and another bad? 

(By "good" I mean the data component would in fact help improve interoperability with the unanticipated user. By "bad" I mean the data component would do little, if anything, to improving interoperability with the unanticipated user.)

I'll share my initial thoughts. I'd like your feedback on my initial thoughts, and I'd also like to hear your thoughts.

Note: by "data component" I mean a chunk of markup that can be reused in multiple XML vocabularies.


I think that some data components would be good to standardize, while others would not be useful. 

I'll start with two examples of data components would be good to standardize.

Think about a postal address. It would be a good data component to standardize. It's a useful data component even if I don't understand the context in which it's being used. 
      For example, suppose some nuclear physicist unexpectedly sends 
      me a document containing data that I have no clue 
      what it means, but embedded in it is a postal address. 
      I may not be able to process all that data about 
      subatomic particles (quarks, neutrinos, etc), but I can 
      pluck out the postal address and store it in my address book. 
That's interoperability between unanticipated users, albeit limited.
Another example of a useful data component is a business card (vcard). Again, that's a useful data component that I can immediately utilize, even if I have no clue what the rest of the document is talking about.
These data components are useful independent of their context. I can use the data components even if I can't use all the stuff that they reside in.
Now I'll give an example of a data component which I think would not be useful to standardize.

Both postal address and vcard gives a person's name (along with other data). Suppose I decide that I want data components with finer granularity than postal address or vcard. Would "person name" make a good component for standardizing?

I think not. A person's name would not be useful independent of context.  
      For example, the same nuclear physicist above 
      sends me the same document but containing the
      standardized PersonName data component, about
      a person named "Jim Brown.
      I am PersonName-aware so I am able to pluck out that 
      Jim Brown information, even though I have 
      no clue what the rest of the document says. 
      Have I gained anything? No. It could be Jim Brown 
      the ex-football player or some other person by that name.
      To make sense of the data component I need to
      understand its context. 
I propose these two metrics for evaluating the usefulness of data component:
    1. The data component must be standardized
       and broadly adopted (see below).
    2. If I can meaningfully use the data component
       without understanding any of the context in 
       which it resides then it is a good data
       component. If I must understand its context
       then it is a bad data component. 
Standardizing is good. It enables two parties to understand each other, i.e., interoperate. 
But standardization is not enough. I want more than interoperability between two parties that have a priori agreed to a data interchange format. I want interoperability between two parties that haven't a priori agreed to a data interchange format. I want interoperability between unanticipated parties.
So the key is to not only standardize, but standardize the right things.


We would go a long way toward advancing interoperability of unanticipated systems if we focused on creating standardized components that are useful independent of context.

What do you think?

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS