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


Help: OASIS Mailing Lists Help | MarkMail Help

ubl-ndrsc message

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

Subject: Re: [ubl-ndrsc] Code lists: discussion kickoff

I'll add a few additional comments, mostly to expand upon what Eve has said below.

This document currently seems to be focused on intermediate elements, those
containing other information and of some aggregate type defined elsewhere.  I agree
that such elements may either include a "role" element or attribute to disambiguate
its meaning or be named more explicitly.  I also agree the second approach helps with
required vs. optional constraints when they apply to particular roles.  I don't agree
this is the only code list issue worth discussing.

As Eve describes, we have some additional issues to resolve with respect to external
code lists.  How are internal and external code lists combined and disambiguated (and
when are such combinations appropriate)?  Should we make any recommendations about
versioning the external code lists, identifying the version used in an instance and
changing the version used without modifying the schema?  If a recipient does not
recognize an external code list, should the instance provide any information helpful
in finding information about that list or should this be an error?  Is schema
validation of external code list values ever a requirement?  Should our schema
include snapshots of external code lists to reduce reliance on external groups making
changes independent of our releases?  Should our schema include machine verifiable
lists of code lists values for those external groups not yet using schema?  Do copy
write issues crop up almost immediately?  How should an external code list value be
identified in an instance (say, org, list type and value)?  How is that information
structured and constrained (URI values as Eve suggests below are one possibility,
though few external groups are paying any attention to creating such namespaces)?

Additional issues may come from elements requiring a "role set".  For example, a
Party might be identified once in a document but the instance may inform the
recipient that party acts as Supplier, Shipper and Logistics Provider (probably not
real EDI role names).  In such cases, is it necessary to repeat all of the details
about the same Party multiple times within well-named intermediate wrappers?

I'm not sure it's an issue but are there cases where code lists may be used apart
from property terms?  Such cases may result in additional issues.


"Eve L. Maler" wrote:

> We're going to need to decide the issues surrounding "code lists" very
> soon.  Mike's position paper is here:
> http://www.oasis-open.org/committees/ubl/ndrsc/pos/draft-Rawlins-codelists-01.doc
> Here are a few unorganized thoughts to get the discussion going; everyone,
> please respond with your thoughts, and I'll try to formulate votable
> questions as we go:
> I think we may have more issues at stake here than just choosing
> "enumerations of the xsd:string type" vs. "one element per code list
> value".  Here are some issues I can think of:
> - Extensibility of "internal" UBL code lists: I'm not entirely up to speed
> on XSD in this regard, but is it sufficient/allowed to allow extension
> developers to derive a new type based on xsd:string that unions the
> original enumerated values with some new values of their own?  Would this
> do the trick for us?
> - Ad hoc extensibility: Will there be cases where it's acceptable/necessary
> to have an escape hatch in the code list, in the CodedOther style?  This
> was a common trick in the DTD-only days:
> <ice-cream
>    flavor="other"
>    other-flavor="whatever-I-want">...</ice-cream>
> - Inclusion of external code lists: Do these need to be dynamic somehow,
> and if so, how should we handle this in the schema code?  XSD never chose
> to solve this problem properly when it was being designed, so the only
> thing I can think of would be to use a string-based type and *not*
> constrain the values at all through the XSD layer.  Checking of values
> would have to be done as some higher business-rules layer.
> - Unique identification of code lists: The SAML spec has a couple of cases
> where it allows values from either its own internal code list or some
> external list in various places.  It defines its internal lists by
> attaching URIs to them, a la XML namespaces.  Should we do the same
> thing?  Should we define canonical URIs for common external "symbol spaces"
> if they don't already have URIs?
> It would be great to see some of these additional issues spun out in the
> next rev of the position paper.
> Finally, regarding the "enumerations of the xsd:string type" vs. "one
> element per code list value" choice itself, I'm not sure I buy the argument
> that the latter is better.  It could potentially swell the number of UBL
> elements by orders of magnitude, and the infrastructure needed to document
> and manage elements would seem to outweigh the benefits for these little
> values.
>         Eve
> --
> Eve Maler                                    +1 781 442 3190
> Sun Microsystems XML Technology Center   eve.maler @ sun.com
> ----------------------------------------------------------------
> To subscribe or unsubscribe from this elist use the subscription
> manager: <http://lists.oasis-open.org/ob/adm.pl>

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

Powered by eList eXpress LLC