[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Backward compatibility sanity check with 2010-05-12 18:48z document models
Hi all! I finally found the time to finish the programmatic analytical comparison of UBL 2.1 models with UBL 2.0 models as a sanity check and I found five errors that must be addressed before we go to our first public review draft, as these are errors that prevent backward compatibility (which we promise and require). Once we address these, then I think, hand on heart, I can claim the new UBL 2.1 schemas are fully backward compatible with UBL 2.0 schemas. I hope other committee members can prove me right or wrong, and if wrong, I'll address it. The set of five problems includes the one I tripped over last week regarding Request for Quotation. The summary is below, showing the old cardinality and the new cardinality. Where the old cardinality is zero, a new items is being introduced and must be made optional (in both cases they are incorrectly set as mandatory). Where the new cardinality is blank, the old UBL 2.0 item has been dropped out of the new UBL 2.1 models and must be restored. I also checked the sequence order of all UBL 2.0 ABIEs in the UBL 2.1 ABIEs and I find errors only in the three ABIE's that have missing items reported in the first pass. So it looks like nothing was inadvertently rearranged, only some items were inadvertently dropped. Please let me know if you have any questions. I won't try to create schemas until these five issues are addressed as these are, I believe, preventing us from going to the first public review. To summarize, I'm now checking: (1) - for all BBIEs and ASBIEs in UBL 2.0, check the cardinality of the corresponding BIE in UBL 2.1 as not preventing UBL 2.0 instances from being invalid - here is the table extracted from my code ... have I made any errors (the assumption is that minimums can be dropped and maximums can be raised)? <allow old="0"> <allowed>0..1</allowed> <allowed>0..n</allowed> </allow> <allow old="0..1"> <allowed>0..1</allowed> <allowed>0..n</allowed> </allow> <allow old="0..n"> <allowed>0..n</allowed> </allow> <allow old="1"> <allowed>0..1</allowed> <allowed>0..n</allowed> <allowed>1</allowed> <allowed>1..n</allowed> </allow> <allow old="1..n"> <allowed>1..n</allowed> <allowed>0..n</allowed> </allow> (2) - for all ABIEs in UBL 2.0, check that the order of BBIEs and ASBIEs in UBL 2.0 is the same order as those found in UBL 2.1, ignoring any introduced optional constructs of UBL 2.1 Are there any other programmatic checks that need to be done? Thank you for your input into the process. . . . . . . . . . . . Ken Cardinalities found in error: 5 "Catalogue Deletion. Effective Date. Date" old= 0 new= 1 "Consignment. Transport_ Contract. Contract" old= 0..1 new= "Despatch Advice. Document Status Code. Code" old= 0..1 new= "Package. Goods Item" old= 0..n new= "Request For Quotation. Submission Due Date. Date" old= 0 new= 1 Sequences found in error: 3 "Consignment": Old order: 1 Consignment. Details 2 Consignment. Identifier 3 Consignment. Summary_ Description. Text 4 Consignment. Total_ Invoice Amount. Amount 5 Consignment. Declared Customs_ Value. Amount 6 Consignment. Tariff Description. Text 7 Consignment. Tariff Code. Code 8 Consignment. Insurance Premium Amount. Amount 9 Consignment. Gross_ Weight. Measure 10 Consignment. Net_ Weight. Measure 11 Consignment. Net Net_ Weight. Measure 12 Consignment. Chargeable_ Weight. Measure 13 Consignment. Gross_ Volume. Measure 14 Consignment. Net_ Volume. Measure 15 Consignment. Loading_ Length. Measure 16 Consignment. Remarks. Text 17 Consignment. Hazardous Risk_ Indicator. Indicator 18 Consignment. Consignee_ Party. Party 19 Consignment. Exporter_ Party. Party 20 Consignment. Consignor_ Party. Party 21 Consignment. Importer_ Party. Party 22 Consignment. Carrier_ Party. Party 23 Consignment. Freight Forwarder_ Party. Party 24 Consignment. Notify_ Party. Party 25 Consignment. Original Despatch_ Party. Party 26 Consignment. Final Delivery_ Party. Party 27 Consignment. Original Departure_ Country. Country 28 Consignment. Final Destination_ Country. Country 29 Consignment. Transit_ Country. Country *30 Consignment. Transport_ Contract. Contract *31 Consignment. Original Despatch_ Transportation Service. Transportation Service *32 Consignment. Final Delivery_ Transportation Service. Transportation Service *33 Consignment. Delivery Terms *34 Consignment. Payment Terms *35 Consignment. Freight_ Allowance Charge. Allowance Charge New order (not including newly-introduced optional constructs): 1 Consignment. Details 2 Consignment. Identifier 3 Consignment. Summary_ Description. Text 4 Consignment. Total_ Invoice Amount. Amount 5 Consignment. Declared Customs_ Value. Amount 6 Consignment. Tariff Description. Text 7 Consignment. Tariff Code. Code 8 Consignment. Insurance Premium Amount. Amount 9 Consignment. Gross_ Weight. Measure 10 Consignment. Net_ Weight. Measure 11 Consignment. Net Net_ Weight. Measure 12 Consignment. Chargeable_ Weight. Measure 13 Consignment. Gross_ Volume. Measure 14 Consignment. Net_ Volume. Measure 15 Consignment. Loading_ Length. Measure 16 Consignment. Remarks. Text 17 Consignment. Hazardous Risk_ Indicator. Indicator 18 Consignment. Consignee_ Party. Party 19 Consignment. Exporter_ Party. Party 20 Consignment. Consignor_ Party. Party 21 Consignment. Importer_ Party. Party 22 Consignment. Carrier_ Party. Party 23 Consignment. Freight Forwarder_ Party. Party 24 Consignment. Notify_ Party. Party 25 Consignment. Original Despatch_ Party. Party 26 Consignment. Final Delivery_ Party. Party 27 Consignment. Original Departure_ Country. Country 28 Consignment. Final Destination_ Country. Country 29 Consignment. Transit_ Country. Country *30 Consignment. Original Despatch_ Transportation Service. Transportation Service *31 Consignment. Final Delivery_ Transportation Service. Transportation Service *32 Consignment. Delivery Terms *33 Consignment. Payment Terms *34 Consignment. Freight_ Allowance Charge. Allowance Charge "Despatch Advice": Old order: 1 Despatch Advice. Details 2 Despatch Advice. UBL Version Identifier. Identifier 3 Despatch Advice. Customization Identifier. Identifier 4 Despatch Advice. Profile Identifier. Identifier 5 Despatch Advice. Identifier 6 Despatch Advice. Copy_ Indicator. Indicator 7 Despatch Advice. UUID. Identifier 8 Despatch Advice. Issue Date. Date 9 Despatch Advice. Issue Time. Time *10 Despatch Advice. Document Status Code. Code *11 Despatch Advice. Despatch Advice Type Code. Code *12 Despatch Advice. Note. Text *13 Despatch Advice. Line Count. Numeric *14 Despatch Advice. Order Reference *15 Despatch Advice. Additional_ Document Reference. Document Reference *16 Despatch Advice. Signature *17 Despatch Advice. Despatch_ Supplier Party. Supplier Party *18 Despatch Advice. Delivery_ Customer Party. Customer Party *19 Despatch Advice. Buyer_ Customer Party. Customer Party *20 Despatch Advice. Seller_ Supplier Party. Supplier Party *21 Despatch Advice. Originator_ Customer Party. Customer Party *22 Despatch Advice. Shipment *23 Despatch Advice. Despatch Line New order (not including newly-introduced optional constructs): 1 Despatch Advice. Details 2 Despatch Advice. UBL Version Identifier. Identifier 3 Despatch Advice. Customization Identifier. Identifier 4 Despatch Advice. Profile Identifier. Identifier 5 Despatch Advice. Identifier 6 Despatch Advice. Copy_ Indicator. Indicator 7 Despatch Advice. UUID. Identifier 8 Despatch Advice. Issue Date. Date 9 Despatch Advice. Issue Time. Time *10 Despatch Advice. Despatch Advice Type Code. Code *11 Despatch Advice. Note. Text *12 Despatch Advice. Line Count. Numeric *13 Despatch Advice. Order Reference *14 Despatch Advice. Additional_ Document Reference. Document Reference *15 Despatch Advice. Signature *16 Despatch Advice. Despatch_ Supplier Party. Supplier Party *17 Despatch Advice. Delivery_ Customer Party. Customer Party *18 Despatch Advice. Buyer_ Customer Party. Customer Party *19 Despatch Advice. Seller_ Supplier Party. Supplier Party *20 Despatch Advice. Originator_ Customer Party. Customer Party *21 Despatch Advice. Shipment *22 Despatch Advice. Despatch Line "Package": Old order: 1 Package. Details 2 Package. Identifier 3 Package. Quantity 4 Package. Returnable Material_ Indicator. Indicator 5 Package. Package Level Code. Code 6 Package. Packaging Type Code. Code 7 Package. Packing Material. Text 8 Package. Contained_ Package. Package *9 Package. Goods Item *10 Package. Measurement_ Dimension. Dimension *11 Package. Delivery Unit New order (not including newly-introduced optional constructs): 1 Package. Details 2 Package. Identifier 3 Package. Quantity 4 Package. Returnable Material_ Indicator. Indicator 5 Package. Package Level Code. Code 6 Package. Packaging Type Code. Code 7 Package. Packing Material. Text 8 Package. Contained_ Package. Package *9 Package. Measurement_ Dimension. Dimension *10 Package. Delivery Unit -- XSLT/XQuery training: after http://XMLPrague.cz 2011-03-28/04-01 Vote for your XML training: http://www.CraneSoftwrights.com/o/i/ Crane Softwrights Ltd. http://www.CraneSoftwrights.com/o/ G. Ken Holman mailto:gkholman@CraneSoftwrights.com 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]