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

 


Help: OASIS Mailing Lists Help | MarkMail Help

ebxml-core message

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


Subject: RE: Units of Measure


Hi All,

Seeing the 'code' forms and Unit of Measure discussion prompts me to share
some thoughts I've had regarding code lists.

Not all code lists are created equal!  

1) Some code lists perform a 'text alias' service.  For example, in X12 DE
1109 Race or Ethnicity Code:
     CODE  Description
        7  Not Provided
        C  Caucasian
        H  Hispanic
     ... etc
   
   The DE value could be represented in XML as:
<Ethnicity>Hispanic</Ethnicity>
   That is, the content of the DE reduces to a simple string.  Once in a
while, entries that I would classify as 'text alias' have some additional
explanatory text associated with them. But they are essentially 'terminals'.

2) Some code lists perform an 'element alias' service.  For example, in X12
DE 98, Entity Identifier Code:
     CODE  Description
       ST  Ship To 
                   
    In this case, the code could be represented in XML as a complex element.
      <ShipTo><Name> .... </Shipto>
    In X12, one will sometimes find both an element and a code value that
represent the same semantic entity.  Or one will find an element that could
have been included in a code list, but for syntactic reasons was expressed
only as an element.

3) Some code lists perform a 'reference' service.  For example, X12 DE 66,
Identification Code Qualifier:
     CODE  Description
        1  D-U-N-S Number, Dun and Bradstreet
        2  Standard Carier Alpha Code, SCAC 

   In this case, the code could be represented in XML as an attribute as in:
     <Identification Code=1>123456789</Identification>, 
   or could be represented as an 'empty' element, as in:
     <Identification>123456789<DUNS/></Identification>

Unit of Measurement is another common example of a code which performs a
reference service.  For example, one might represent UoM in XML as:
      <Weight>10<pounds/></Weight>
   or
      <Weight Code='Pounds'>10</Weight>
     
Every code might have a wealth of semantic information associated with it.
For example, the code 'H' (or Hispanic) in example 1 above might be
supported by a
definition of the overall classification criteria (e.g., bloodline percent)
and of the country/region origins that constitute the class.

Clearly to me, some code sets should be treated from a semantic viewpoint in
the same manner as 'data elements' are treated.  That is, each code should
be assigned a unique semantic identity used to reference its separately
stored semantic properties.

Codes which perform a 'reference service', such as Unit of Measure, have
need to associate reference processes to those codes, and may need to
provide a wealth of semantic information.  The X12 DE 355 Unit or Basis of
Measurement Code has, as one might expect, multiple codes useful in
qualifying 'length' measurement, and multiple codes useful in qualifying
'weight' measurement.  Processes that convert among 'length' codes may
facilitate application integration.  The association of certain code
qualifiers with certain types of measurements may have value in data entry
and validation.

Whatever XML representation(s) we choose to represent 'codes', we need to
provide in those representations a means to locate semantic properties
associated withthe individual codes.

Cheers,
        Bob   

=======================================================================
= This is ebxml-core, the general mailing list for the ebXML          =
= Core Components project team. The owner of this list is             =
= owner-ebxml-core@oasis-open.org                                     =
=                                                                     =
= To unsubscribe, send mail to majordomo@lists.oasis-open.org with    =
= the following in the body of the message:                           =
=      unsubscribe ebxml-core                                         =
= If you are subscribed using a different email address, put the      =
= address you subscribed with at the end of the line; e.g.            =
=      unsubscribe ebxml-core myname@company.com                      =
=======================================================================


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

Search: Match: Sort by:
Words: | Help


Powered by eList eXpress LLC