-
Type: Bug
-
Status: Resolved
-
Priority: Critical
-
Resolution: Applied
-
Component/s: Documents and business objects
-
Labels:
In DocumentReference ABIE there are three definitions that I think can be repaired/improved and I think we need to change one cardinality.
Looking at the model at http://docs.oasis-open.org/ubl/os-UBL-2.1/mod/summary/reports/UBL-AllDocuments-2.1.html#Table_DocumentStatus I note the row definitions copied below where I've added an asterisk to indicate old and proposed new definitions:
677* ID An identifier for the referenced document.
677* ID The identifier of the referenced document.
678 CopyIndicator An indicator that the referenced document is a copy (true) or the original (false).
679* UUID A universally unique identifier for this document reference.
679* UUID The universally unique identifier of the referenced document.
680 IssueDate The date, assigned by the sender of the referenced document, on which the document was issued.
681 IssueTime The time, assigned by the sender of the referenced document, at which the document was issued.
682 DocumentTypeCode The type of document being referenced, expressed as a code.
683 DocumentType The type of document being referenced, expressed as text.
684* XPath A reference to another place in the same XML document instance in which DocumentReference appears.
684* XPath A reference to another place in the referenced document
685 LanguageID An identifier for the language used in the referenced document.
686 LocaleCode A code signifying the locale in which the language in the referenced document is used.
687 VersionID An identifier for the current version of the referenced document.
688 DocumentStatusCode A code signifying the status of the reference document with respect to its original state.
689 DocumentDescription Text describing the referenced document.
So I think the UUID definition is just wrong and the XPath definition can be made more consistent with the other definitions. As for the ID definition, the nuance is that it cannot just be "an identifier for the referenced document" that might be interpreted to be created anew, I believe it is supposed the be "the identifier of the referenced document" that is found inside. Certainly I'm assuming that for the CopyIndicator, UUID, IssueDate and IssueTime and so should be the same for ID. Edited to make the same observation about the UUID definition. I believe the five items are meant to be copied from the referenced document and not created anew.
Regarding cardinality, the ID cardinality is "1" and I think we must change it to "0..1" because not all UBL documents have an ID and I am in a project where I do not want to expose the ID of the original document in the document status (I'm using the UUID in my project because exposing the ID might expose business information to the public; in my project the document is private but the document status is public).
I haven't gone through all the UBL documents but I note in the first few alphabetically arranged document types the AwardedNotification and the CallForTenders documents do not have a mandatory ID. If the original document doesn't have the ID, then what goes into the DocumentStatus ID since it cannot be empty by one of UBL's additional document constraints?
I think these are important fixes.