[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Urgent: problems with Candidate Release 1 of spreadsheets
Hello all,
One way I have been working with the Candidate Release 1 of the UBL
2.1 artefacts is by producing some of Crane's HTML reports. In doing
so today, I tripped over an important fault in the spreadsheets that
needs to be repaired on Wednesday. Since these were missed in the
model checker, I added a programmatic check of the model for each
issue, and I found other occurrences.
First, my stylesheets tripped over the mismatch of the DEN to the
property term in the common library:
Line 1197: "Party. Power Of Attorney" has the property term
"Power of Attorney" which should be "Power Of Attorney"
So, I checked all mismatches of the Dictionary Entry Name with the
rules for DEN construction and I found these other problems:
Line 1660: "Stock Availability Report Line. Note" must be:
"Stock Availability Report Line. Note. Text"
Line 2069: "Transport Status. Reliability Percent" must be:
"Transport Status. Reliability Percent. Percent"
Since line 1197 ended up with the UBL name "PowerofAttorney", which
violates the UpperCamelCase rule because all property term parts must
be in uppercase, I added a test for that and found this as well:
Line 701: ConsumerlncentiveTacticeTypeCode
(this one is interesting because in the sans serif OpenOffice
font the lower case "L" in "lncentive" looks like an upper-case
"I" ... but the possessive noun breaks the "uppercase on every
part of the term" in "Consumer lncentive Tactic Type" so it was
caught by the new tests)
So the following seven changes must be made to the spreadsheets on Wednesday:
Line 701: "Incentive" (columns F, H)
Line 1197: "Power Of Attorney" (columns H, I, M)
Line 1660: "Stock Availability Report Line. Note. Text" (column B)
Line 2069: "Transport Status. Reliability Percent. Percent" (column B)
... and I see these as show stoppers because we aren't adding
anything new, we are just fixing what is broken (and people who work
with the spreadsheets as I am will trip over the problems).
BTW, Fulya, I thought column B was generated and not entered as data
... are the last two problems evidence of a column value generation problem?
Last, I think an ABIE construction rule (is this written or
unwritten?) may have been violated a number of times, and I want to
discuss this during Wednesday's call in to the face-to-face. My
understanding was that:
(1) - for some text BBIEs it is acceptable to have a cardinality greater than
one in order to accommodate, say, different languages for a given
note in text (the cardinality is not for paragraphs, but for
multiple versions of the same note) ... I've assumed this is acceptable
for "Note" and "Description" BBIEs
(2) - for all other BBIEs when we need a cardinality of greater than one
the rule is to create an ABIE with the BBIE mandatory in it and
necessary cardinality in the ASBIE for the ABIE
... of course if my understanding is wrong, then the incorrectness of
what follows is drawn in question.
There are 82 violations of (2) in the spreadsheet, 29 old ones in UBL
2.0 which, because of backward compatibility, cannot be changed, and
53 new ones in UBL 2.1 which we do have the opportunity to change and
get correct ... the questions for each of the 53 cases are:
(a) - is the cardinality of greater than one appropriate for the BBIE?
(b) - if it has to be changed does it have to be changed in PRD1?
I'm inclined to fix this last issue in PRD2 just because there are so
many to confirm and we want to get schemas produced as soon as possible.
Tim, can you please confirm if I've remembered this cardinality issue
correctly? The exemplar is that Address Line is an ASBIE to an ABIE
of one line because I thought we couldn't have repeated cardinality
on an address line BBIE.
Also, Tim, could you please confirm that the cardinality on notes is
not for accommodating multiple paragraphs or multiple notes but for
accommodating multiple representations of the same set of notes, as
in multiple languages distinguished by the languageID= attribute? I
know that some members (including myself) originally thought that the
cardinality of 0..n on cbc:Note provided for multiple different
notes, and I just wanted to make sure I didn't get mixed up in my
understanding along the way.
With that in mind, perhaps the cardinality on items like instructions
is the same: "0..n" is for multiple languages of the one set of
instructions, and that if I have three instructions I put them all in
one instruction element. To extend this to the Address Line example,
if we want to model multiple instructions, then we have to use an
ASBIE to a one-item ABIE with a "1..n" BBIE where each ASBIE is an
instruction and each BBIE is a language variant of that instruction.
I don't know if this rule is in the NDR, or if it is that it is well
known given the intuition to put cardinality on an item when we want
many of them, not realizing it means in UBL many variants of one. I
suspect many of the new constructs were not modeled with this in
mind. Mavis, can you please check the NDR for this?
Below is the latest model check report that incorporates the new
tests from today.
. . . . . . . . . . . Ken
p.s. members awaiting my work on digital signatures will need to wait
because these problems took up most of my available time today
Renamed old DENs in new model: 17
Application Response. Version Identifier. Identifier: Application
Response. Version. Identifier
Certificate Of Origin. Version Identifier. Identifier: Certificate Of
Origin. Version. Identifier
Item Comparison. Price. Amount: Item Comparison. Price Amount. Amount
Monetary Total. Allowance Total Amount. Amount: Monetary Total.
Allowance_ Total Amount. Amount
Monetary Total. Charge Total Amount. Amount: Monetary Total. Charge_
Total Amount. Amount
Order Change. Customer Reference. Text: Order Change. Customer_ Reference. Text
Order Change. Sales Order Identifier. Identifier: Order Change.
Sales_ Order Identifier. Identifier
Order Change. Sequence_ Number. Identifier: Order Change. Sequence
Number. Identifier
Order Reference. Sales Order Identifier. Identifier: Order Reference.
Sales_ Order Identifier. Identifier
Order Response. Customer Reference. Text: Order Response. Customer_
Reference. Text
Order Response. Sales Order Identifier. Identifier: Order Response.
Sales_ Order Identifier. Identifier
Order. Customer Reference. Text: Order. Customer_ Reference. Text
Order. Sales Order Identifier. Identifier: Order. Sales_ Order
Identifier. Identifier
Packing List. Version Identifier. Identifier: Packing List. Version. Identifier
Receipt Line. Oversupply Quantity. Quantity: Receipt Line.
Oversupply_ Quantity. Quantity
Signature. Validator Identifier. Identifier: Signature. Validator. Identifier
Status. Sequence. Identifier: Status. Sequence Identifier. Identifier
Bad code type property terms: 0
Duplicated class/qualifier/property terms: 0
Bad name components: 0
Bad property terms: 0
Bad representation terms: 0
Bad dictionary entry names: 3
"Party. Power Of Attorney": Party. Power of Attorney
"Stock Availability Report Line. Note": Stock Availability Report
Line. Note. Text
"Transport Status. Reliability Percent": Transport Status.
Reliability Percent. Percent
Bad name values (GNR8): 5
"Event Tactic Enumeration. Consumer lncentive Tactic Type Code. Code"
- PropertyTermPossessiveNoun: "Consumer lncentive Tactic Type":
"Event Tactic Enumeration. Consumer lncentive Tactic Type Code. Code"
- PropertyTerm: "Consumer lncentive Tactic Type Code":
"Party. Power Of Attorney" - PropertyTerm: "Power of Attorney":
"Party. Power Of Attorney" - RepresentationTerm: "Power of Attorney":
"Party. Power Of Attorney" - AssociatedObjectClass: "Power of Attorney":
Mismatched name components for UBL Name: 0
Orphaned ABIEs not being referenced by an ASBIE: 0
Qualified ABIEs: 0
Qualified ASBIEs: 0
Duplicate UBL Names for the same ABIE type: 0
Missing old Data Type Qualifications in new model: 1
"Status. Condition Code. Code" old="Transportation Status" new=""
Missing new Data Type Qualifications in new data types: 0
Cardinalities found in error: 0
Sequences found in error (by DEN): 0
Sequences found in error (by name): 0
ASBIEs found in error: 0
Cardinalities found on non-Description or non-Note BBIEs: 82 (29 old; 53 new)
"Awarding Criteria. Calculation Expression. Text" (new): 0..n
"Awarding Criteria. Minimum Improvement Bid. Text" (new): 0..n
"Awarding Criteria. Weight. Text" (new): 0..n
"Bill Of Lading. Other_ Instruction. Text" (old): 0..n
"Budget Amount. Monetary Scope. Text" (new): 0..n
"Capability. Evidence Supplied. Identifier" (new): 0..n
"Catalogue Line. Warranty_ Information. Text" (old): 0..n
"Consignment. Delivery_ Instructions. Text" (new): 0..n
"Consignment. Haulage_ Instructions. Text" (new): 0..n
"Consignment. Remarks. Text" (old): 0..n
"Consignment. Special_ Instructions. Text" (new): 0..n
"Consignment. Tariff Description. Text" (old): 0..n
"Contract Execution Requirement. Name" (new): 0..n
"Contract Extension. Options Description. Text" (new): 0..n
"Contracting Party. Activity Code. Code" (new): 0..n
"Customer Party. Additional_ Account Identifier. Identifier" (old): 0..n
"Declaration. Evidence Supplied. Identifier" (new): 0..n
"Declaration. Name" (new): 0..n
"Document Reference. XPath. Text" (old): 0..n
"Endorsement. Remarks. Text" (old): 0..n
"Evaluation Criteria. Expression Code. Code" (new): 0..n
"Evidence. Name" (new): 0..n
"Exception Criteria Line. Resolution Code. Code" (new): 0..n
"External Reference. Hash Algorithm Method. Text" (new): 0..n
"Forwarding Instructions. Other_ Instruction. Text" (old): 0..n
"Framework Agreement. Frequency. Text" (new): 0..n
"Framework Agreement. Justification. Text" (new): 0..n
"Guarantee Certificate. Purpose. Text" (new): 0..n
"Item Location Quantity. Trading Restrictions. Text" (old): 0..n
"Item Property. Value Qualifier. Text" (new): 0..n
"Item Property. Value. Text" (old): 0..n
"Item. Brand Name. Name" (old): 0..n
"Item. Keyword. Text" (old): 0..n
"Item. Model Name. Name" (old): 0..n
"Package. Packing Material. Text" (old): 0..n
"Payment Mandate. Clause Code. Code" (new): 0..n
"Payment Mandate. Clause. Text" (new): 0..n
"Payment Means. Payment Identifier. Identifier" (old): 0..n
"Payment Terms. Payment Means Identifier. Identifier" (old): 0..n
"Period. Description Code. Code" (old): 0..n
"Price. Price Change_ Reason. Text" (old): 0..n
"Process Justification. Reason. Text" (new): 0..n
"Procurement Project. Name" (new): 1..n
"Qualification Resolution. Exclusion Reason. Text" (new): 0..n
"Qualification Resolution. Resolution. Text" (new): 0..n
"Qualifying Party. Personal Situation. Text" (new): 0..n
"Regulation. Name" (new): 1..n
"Service Provider Party. Service Type. Text" (new): 0..n
"Shipment. Delivery_ Instructions. Text" (old): 0..n
"Shipment. Special_ Instructions. Text" (old): 0..n
"Status. Condition Value. Measure" (new): 0..n
"Status. Status_ Reason. Text" (old): 0..n
"Status. Text" (old): 0..n
"Stowage. Location. Text" (old): 0..n
"Supplier Party. Additional_ Account Identifier. Identifier" (old): 0..n
"Tender Line. Orderable_ Unit. Text" (new): 0..n
"Tender Line. Warranty_ Information. Text" (new): 0..n
"Tender Preparation. Procurement Project Lot. Identifier" (new): 0..n
"Tender Receipt. Contract Name. Text" (new): 0..n
"Tender Requirement. Name" (new): 0..n
"Tender. Contract Name. Text" (new): 0..n
"Tenderer Party Qualification. Interested Procurement Lots
Identifier. Identifier" (new): 0..n
"Tenderer Qualification Request. Legal Form. Text" (new): 0..n
"Tenderer Qualification Request. Personal Situation. Text" (new): 0..n
"Tenderer Qualification Response. Contract Name. Text" (new): 0..n
"Tenderer Requirement. Name" (new): 0..n
"Tendering Terms. Funding_ Program. Text" (new): 0..n
"Tendering Terms. Penalty Clauses. Text" (new): 0..n
"Tendering Terms. Price Revision_ Formula Description. Text" (new): 0..n
"Trade Financing. Clause Code. Code" (new): 0..n
"Trade Financing. Clause. Text" (new): 0..n
"Trading Terms. Information. Text" (old): 0..n
"Transport Execution Plan. Transport Service Provider_ Remarks. Text"
(new): 0..n
"Transport Execution Plan. Transport User_ Remarks. Text" (new): 0..n
"Transport Execution Terms. Change Conditions. Text" (new): 0..n
"Transport Execution Terms. Transport Service Provider_ Special
Terms. Text" (new): 0..n
"Transport Execution Terms. Transport User_ Special Terms. Text" (new): 0..n
"Transport Handling Unit. Damage_ Remarks. Text" (old): 0..n
"Transport Handling Unit. Shipping_ Marks. Text" (old): 0..n
"Transport Means. Registration_ Nationality. Text" (old): 0..n
"Transport Status. Remarks. Text" (new): 0..n
"Waybill. Other_ Instruction. Text" (old): 0..n
--
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]