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

 


Help: OASIS Mailing Lists Help | MarkMail Help

ubl message

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


Subject: Re: [ubl] Currency Codes - ISO 4217: TRY vs. TRL


At 2009-04-13 10:38 +0000, Yildiray@srdc.com.tr wrote:
>Together with Revenue Administration of Turkey, we develop the UBL 
>2.0 based eInvoice schemas for Turkey. Details are available at the 
>following URLs:
>
>http://www.efatura.gov.tr
>http://www.oasis-open.org/committees/sc_home.php?wg_abbrev=ubl-trlsc

Congratulations!

>The code for our currency "Turkish Lira"  changed at the beginning 
>of this year and it becomes "TRY". This change has been reflected to 
>ISO 4217 currency codes 
>(http://www.iso.org/iso/support/currency_codes_list-1.htm); however, 
>the UBL 2.0's "CodeList_CurrencyCode_ISO_7_04.xsd" document still 
>contains the old version of the code (i.e. "TRL").

That is a UN/CEFACT schema fragment incorporated by the UN/CEFACT 
schema fragment named in the UBL package as 
"UnqualifiedDataTypeSchemaModule-2.0.xsd".

>When does UBL community will reflect this change to the schemas? If 
>this change will not happen soon, for the time being, shall we 
>update the "CodeList_CurrencyCode_ISO_7_04.xsd" in our 
>implementation? (i.e. replace TRL with TRY).

You find yourself in a difficult position regarding a strict 
definition of UBL conformance.

In the soon to be published customization guidelines (a draft of 
which is found at 
http://lists.oasis-open.org/archives/ubl/200904/msg00010.html ... but 
some changes are being made so readers of the archive should look at 
the TC home page http://www.oasis-open.org/committees/ubl for the 
most up-to-date version of this document) the distinction is made 
between UBL conformance and code list conformance.

Using such a distinction, the UBL 2.0 release is regarded as having two facets:

   1) - UBL document structures and lexical constraints
   2) - a convenience code list collection that includes the currency
        list in play at the time UBL 2.0 was released

In the val/ subdirectory of UBL 2.0 there is an implementation of the 
convenience code list collection available for implementers who do 
not wish to create their own implementation of a different code list 
collection.  Using the work products of the OASIS code list 
representation subcommittee 
http://www.oasis-open.org/committees/codelist a community or even 
just a pair of trading partners can specify the code list constraints 
separately from the document structure constraints.

Therefore, I would think from your post it is your intent to conform to:

   1) - UBL document structures and lexical constraints
   2) - a code list collection that includes an updated currency
        code list

Fair enough, and entirely within the expectations of UBL users.  A 
community of UBL users should indicate to which set of structural and 
lexical constraints, and which set of code list constraints they 
conform to, so as to manage the expectations of trading partners.

And in the upcoming UBL 2.1 this distinction is clear cut.

Unfortunately, in the existing UBL 2.0, in only three places (one of 
which is currency codes), this distinction is blurred by the UBL 
committee adoption of the code list constraint mechanism used by 
UN/CEFACT for the unqualified data types.  The other two places are 
MIME type codes and units of measure.  The distinction is clear cut 
for every other code list in UBL 2.0, but not these three.

This blurring results from UN/CEFACT fixing the code list collection 
as the set of W3C Schema XSD enumerations you cite in 
CodeList_CurrencyCode_ISO_7_04.xsd.  The use in UBL 2.1 of the 
untouched UN/CEFACT XSD fragments means that UBL's code list 
specification techniques can only be used for restricting the three 
code lists with XSD enumerations.  UBL's code list specification 
techniques cannot be used for extending the three code lists with XSD 
enumerations.  UBL's code list specification techniques can be used 
for extending any other code list, and users can claim conformance to 
those extended code lists in conjunction with the UBL structures.

In UBL 2.1 you will easily be able to categorically state conformance to:

   1) - UBL 2.1 document structures and lexical constraints
   2) - a code list collection that includes TRY in the currency list

(no doubt that will be part of the UBL 2.1 default code list, but 
even if it were not, the principle is that you would be able to make 
the claim for any set of code lists with restricted or extended 
values for any code list and any additional code list)

In UBL 2.1 the val/ directory is proposed to contain a new 
UBL-defaultCodeList-2.1.xsl that supports the union of UBL 2.0 code 
lists and updated code lists in play at the time UBL 2.1 is 
released.  It is proposed that there will be no XSD enumerations in 
the UBL 2.1 schemas.  Code list conformance can then be separately 
claimed from document structure and lexical conformance.

So until UBL 2.1 is released I think that a strict reading of the 
specifications indicates you cannot formally be conformant to UBL 
because you cannot conform to the UBL 2.0 schemas because of the 
inclusion of the UN/CEFACT schemas.

You can, however, create a compatible document model.  When you 
modify CodeList_CurrencyCode_ISO_7_04.xsd you will need to create a 
new data type, and all UBL BBIEs that are based on the old currency 
type (directly or indirectly through the supplementary component) 
need to be new, which will create new ABIEs all the way up to a new 
document element.  This is accomplished simply by changing the schema 
fragment and then changing all the UBL namespaces to be custom 
namespaces and you will end up with a document structure compatible 
with UBL 2.0 but not conformant with UBL 2.0.

Then when UBL 2.1 is published, you'll be able to change the 
namespaces back to the standard UBL namespace and claim conformance 
to UBL 2.1 structures.  But your compatible instances that you create 
today will not be conformant to the UBL 2.1 structures published in 
the near future.

Note that the use of the UN/CEFACT XSD enumerations will be an 
Achilles heel for those users who extended the three cited code 
lists.  The proposed filtering of one of your extended instances with 
UBL 2.x constructs to an instance with only UBL 2.0 constructs will 
fail to validate with the UBL 2.0 schemas.  Thankfully the filtering 
of an extended instance with 2.y constructs to an instance with only 
UBL 2.x constructs will continue to work, so the problem will only 
exist with legacy implementations of UBL 2.0.  The problem will 
eventually clear as UBL 2.x implementations replace UBL 2.0 implementations.

But until then I think you are stuck with compatibility.  If you hack 
the enumeration list and continue to use the UBL 2.0 namespaces, you 
will work fine in a closed environment but for someone outside of 
your environment taking your use of UBL 2.0 namespaces at face value, 
they will not successfully work with your instances and their UBL 2.0 schemas.

The new use of OASIS genericode and context/value association is 
designed to address all of these issues, but it could not be fully 
implemented in UBL 2.0.  I cannot quickly find the minutes where it 
was decided within the UBL technical committee, but the committee has 
agreed not to have XSD enumerations for code lists in UBL 2.x.  The 
Schema Generation Task Group (SGTG) has already begun work in this 
area and will soon be making its interim work available to the UBL TC.

I hope this helps, Yildiray.  It is an important issue that UBL users 
need to be more aware of.  Please keep this in mind when reviewing 
the upcoming conformance documents and share your thoughts and concerns.

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

--
XSLT/XQuery/XSL-FO training in Los Angeles (New dates!) 2009-06-08
Training tools: Comprehensive interactive XSLT/XPath 1.0/2.0 video
Video lesson:    http://www.youtube.com/watch?v=PrNjJCh7Ppg&fmt=18
Video overview:  http://www.youtube.com/watch?v=VTiodiij6gE&fmt=18
G. Ken Holman                 mailto:gkholman@CraneSoftwrights.com
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/o/
Male Cancer Awareness Nov'07  http://www.CraneSoftwrights.com/o/bc
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal



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