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


Help: OASIS Mailing Lists Help | MarkMail Help

ubl-dev message

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

Subject: Re: [ubl-dev] CCTS vs UDT

At 2011-12-06 13:37 +0100, ericdes wrote:
Now I would like to understand the differences between the "CCTS Core Component Type Schema Module" and the "UDT Unqualified Data Type Schema Module".

The answers differ in UBL 2.0 and UBL 2.1.

In UBL 2.0 the CCTS Core Component Type Schema Module is present for information only, it is not included in the schema import hierarchy, and it merely informed UN/CEFACT in their creation of the UDT Unqualified Data Type schema that was included.

In UBL 2.1 the CCTS Core Component Type Schema Module is included in the schema import hierarchy, imported by the UBL Unqualified Data Type schema ... the UN/CEFACT UDT fragment is no longer being used.

Why is e.g. "AmountType" defined in both those namespaces?

Because the unqualified data types are based on the core component types. In UBL 2.0 this basis is merely informative. In UBL 2.1 the basis is direct schema inheritance. The basis of interoperability between different XML vocabularies is that vocabularies use at the leaf level of the tree content that is always based on a core component type (element types) and its supplementary components (attributes).

Moreover it may have 2 optional attibutes "currencyID" and "currencyCodeListVersionID" in CCTS, while it may contain only one attribute, a required "currencyID" in UDT?

That was true in UBL 2.0 UDT, but it was recognized that the approach taken in UBL 2.0 was insufficient for long-term use in UBL. In UBL 2.1 UDT both attributes can be specified on amounts.

It was recognized the use of hardwired code lists in UBL 2.0 unqualified data types inherited from UN/CEFACT does not meet real-world requirements of being able to accommodate changes in code lists or trading partners conventions of using code lists. A lengthy discussion of currency codes took place on this list a couple of years ago:


So, in UBL 2.1, the currencyID attribute is simply a normalized string, and it is up to value validation to confirm that the currencyID attribute (in concert with the currencyCodeListVersionID) is meaningful in a particular trading partner relationship (without touching the schema).

The same is true for MIME types, units of measure, etc.

I hope this helps.

. . . . . . . . . . . . Ken

Contact us for world-wide XML consulting and instructor-led training
Free 5-hour video lecture: XSLT/XPath 1.0 & 2.0 http://ude.my/t37DVX
Crane Softwrights Ltd.            http://www.CraneSoftwrights.com/u/
G. Ken Holman                   mailto:gkholman@CraneSoftwrights.com
Google+ profile: https://plus.google.com/116832879756988317389/about
Legal business disclaimers:    http://www.CraneSoftwrights.com/legal

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