[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: RE: [ubl-dev] Code List Value Validation
All: I am not quite sure of the practical implications of what is being agreed or suggested, so below is what may be an expression of concern. Some time ago (New Orleans?), Anthony Coates gave a presentation that used as an example the "codeset" for the days of the week (Sunday through Saturday, variously expressed in upper and lower case, English or French, sequential numbers, etc). Such a codeset is "standard" or at least "closed" except for representational details. I presume that the current discussion does not have to do with managing mere like-for-like changes in representation. Instead, the "extensions" now being discussed would seem to fall into two cases - 1) adding finer granularity and 2) complete add-on's. Greater granularity would be, say, dividing "Friday" into Fridaymorning and Fridayafternoon. An add-on would be moving to an eight day calendar (e.g., adding "Newday" between Saturday and Sunday to create three-day weekends.). Do these exemplify the two problems being discussed? With respect to the solution, the various implementation options (genericode, CAM) seem to provide the means to make such extensions selectively coexist with UBL schemas, which I presume is good in an introspective sort of way. On the other hand, a "nonstandard" standard code list is an interoperability issue and, perhaps, an oxymoron. From an ERP to ERP data synchronization perspective, if certain trading partners are to use what amount to private codes, it would seem preferable to alter the schemas to have private codes existence explicitly recognized and, one can hope, for the transactions exchanged also to include applicable the standard codes or an explicit "not available." I may be mis-characterizing either the problem being solved or the solution being proposed, but I did want to raise a concern. Regards, Fulton Wilcox Colts Neck Solutions LLC -----Original Message----- From: David RR Webber (XML) [mailto:david@drrw.info] Sent: Friday, April 07, 2006 11:22 AM To: Stephen Green Cc: ubl-dev@lists.oasis-open.org Subject: RE: [ubl-dev] Code List Value Validation Stephen, Understood. We'd be happy to work on some small samples to test this out and refine the specification accordingly. Thanks, DW -------- Original Message -------- Subject: RE: [ubl-dev] Code List Value Validation From: "Stephen Green" <stephen_green@bristol-city.gov.uk> Date: Fri, April 07, 2006 9:25 am To: <ubl-dev@lists.oasis-open.org> Something UBL users need is the granularity to say that a particular codelist is used for a code when it appears say in the InvoiceLine but not when it appears in the main body of the document, or more precisely that, say, BuyerParty/SomeCurrencyCode includes USD and EUR whereas SellerParty/SomeCurrencyCode only includes CAD This is the sort of use case the UBL codelist methodology caters for. Maybe CAM could take on board the UBL codelist declarative syntax to align the two methodologies. All the best Stephen Green >>> "David RR Webber (XML)" <david@drrw.info> 07/04/06 13:50:07 >>> Fraser, There are two levels to this - the specification and the implementation. I'd be interested in your thoughts on the lookup() functionality in the OASIS CAM system and the jCAM implementation that supports the use of codelists over XML transactions. The current implementation has baseline functionality for managing and using codelists: http://www.jcam.org.uk Key from the implementers stance is being able to cover off the following: 1) Declarative rule values in XML 2) Lookups to SQL table code values 3) Simple inline code alignment (e.g. 1,2,3,4,5 | A,B,C,D,E) 4) Associative code lookups - if A then X,F,J ; if B then X,F etc 5) Callout to Java routines - permits extended calculated lists via multiple 6) Versioning and local extension values 7) Potential for referencing codelists stored in shared registry service Thanks, DW Chair - OASIS CAM TC. -------- Original Message -------- Subject: [ubl-dev] Code List Value Validation From: "Fraser Goffin" <goffinf@googlemail.com> Date: Fri, April 07, 2006 8:09 am To: "G. Ken Holman" <gkholman@cranesoftwrights.com> Cc: abcoates@idmm.co.uk, xml-dev@lists.xml.org, ubl-dev@lists.oasis-open.org Ken, its been a while since I have had a chance to catch up, so hi. I have been re-reading your UBL Code List Value Validation Methodology (v0.4) again while I've had a few days off (I know I need to get out more :-), a few questions if I may be so bold :- 1. How has this work been received in UBL. Is it proceeding as planned. Do you think there will be any statement on adoption of this methodology any time soon ? 2. A genericode file contains ONE code list at ONE version right ?? 3. In the doc you state that when an enumeration appears WITHIN a schema, TPs may ligitimately operate a subset since all values are valid in the full set, but they may not add new values. Am I correct in assuming that the same is true for a code list which is defined by a standards organisation (not UBL) but which is NOT embedded within schema ? As you know in my situation we operate code-lists than are defined by a standards body and in most cases want to use them in all situations where there are equivalent semantics (including internal app integration) rather than create alternative bespoke lists. Problem is, we do sometimes want/need to extend these lists often to provide higher fidelity mapping to our operational systems. Another example might be where a code identifies some high level semantic, but we want to be able to create a bunch of 'sub' codes to provide a more granular view - accepting that in 2-way translation there will be data loss. Lobbying the standards body and getting a timely change/addition can be problematic ? - anyway - I digress 4a. For code lists where there is no established [complete and/or definative] standard or where the semantics and values are TP relationship specific, the set of permissible values can be extended and/or restricted from an offered base set (if available - using your DocumentStatusCodeCodeType example) or the participating organisations can agree the set of values (and presumably the list ID to be used in XML instances). Is this correct ? 4b. If I have many TPs and each has a slightly different relationship, might this cause me to need a separate genericode file for EACH code list that differs, however slightly, from another ?. Is there a suggested low maintenance approach to this problem ? 4c. Similarly to (4b.), if a custom code list is shared across service contracts for multiple TP relationships, but a need arises to create a new version with [say] some values added or removed, and we need to be able to operate both versions concurrently for some period of time, does this require a complete re-statement of the new code list (in a new .gc file) with a new version number even if the difference is ONE codified value (added/deleted/changed) amongst a set of 10,000 values ? This also means that the implementation will repeat a lot of code. I guess I am wondering whether there is/should be a way of expressing a 'delta' of values ? 5. Continuing the theme of (4), we have some code lists which are both highly volatile (values added and deleted (rarely changed) every month) and are very large (e.g. > 50000 entries). An example is Vehicle Make/Model. Do you think this approach is suitable for this type of reference data (multiple 'active' versions, large number of values) ? 6. Can you explain the difference between the UBL 'CodeType' and 'IdentifierType' in terms of what circumstances you would use either ? If a schema identifies the ListID, but we want to use a different one (to employ as 'richer set' of values) , how would an industry standard schema accomodate this possibility such that the schema remains a standard and unchanged definition of the structural constraints (is this the CodeType/IdentifierType approach) ? 7. Do you think that a skeleton context association file could be auto-generated ? 8. Changing tack slightly. I am interested in using genericode files for a number of purposes including, value-based validation, UI generation (e,g, to populate UI controls such as list boxes), transcoding between application specific codes. It would appear from the genericode materials that this would be feasible, do you agree ? :- Std Code Std Desc Appl'n A Equiv Appl'n B Equiv UI Text (key) (key) (key) abc Std Widget def ghi Part No 3321-7 (small widget) 9. What is the suggested approach to deal with deprecated code values. Is this considered as a versioning issue both for standards based code-lists (embedded in schema or not) and custom code lists ? Should code lists include validity date/time values or other 'active/deprecated' indicators ? 10. Caller assertion of list version. If there is no matching version is it best to flag the validation failure (and possibly reject the message) - that is, 'trust' the caller assertion, or validate against the un-vesioned complete list (similar point to the one we discussed earlier about whether to to an xsi:schemaLocation attribute value) ? 11. Devils advocate: Whats the difference in having to distribute the latest .gc file versus having to use the latest XSD with updated embedded enums ? (Ok, I think I know the answer to this one, but it would be good to have a quote from 'championing' designer, for the benefit of my peer group and sceptical and untrusting bosses :-) Cheers Fraser. Anthony: So that you are aware, I am attempting to stimulate interest in the use of genericode within the organisation that I work with (a large UK financial services company) from a number of potential perspectives. One of these is value-based validation, hence discussions with Ken i.r.o his work with UBL, but also for a more broadly accessible resource for reference data used for a variety of purposes such as UI generation, transcoding, etc.. --------------------------------------------------------------------- This publicly archived list supports open discussion on implementing the UBL OASIS Standard. To minimize spam in the archives, you must subscribe before posting. [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/ Alternately, using email: list-[un]subscribe@lists.oasis-open.org List archives: http://lists.oasis-open.org/archives/ubl-dev/ Committee homepage: http://www.oasis-open.org/committees/ubl/ List Guidelines: http://www.oasis-open.org/maillists/guidelines.php Join OASIS: http://www.oasis-open.org/join/ --------------------------------------------------------------------- This publicly archived list supports open discussion on implementing the UBL OASIS Standard. To minimize spam in the archives, you must subscribe before posting. [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/ Alternately, using email: list-[un]subscribe@lists.oasis-open.org List archives: http://lists.oasis-open.org/archives/ubl-dev/ Committee homepage: http://www.oasis-open.org/committees/ubl/ List Guidelines: http://www.oasis-open.org/maillists/guidelines.php Join OASIS: http://www.oasis-open.org/join/ --------------------------------------------------------------------- This publicly archived list supports open discussion on implementing the UBL OASIS Standard. To minimize spam in the archives, you must subscribe before posting. [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/ Alternately, using email: list-[un]subscribe@lists.oasis-open.org List archives: http://lists.oasis-open.org/archives/ubl-dev/ Committee homepage: http://www.oasis-open.org/committees/ubl/ List Guidelines: http://www.oasis-open.org/maillists/guidelines.php Join OASIS: http://www.oasis-open.org/join/
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]