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

 


Help: OASIS Mailing Lists Help | MarkMail Help

ubl-ndrsc message

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


Subject: Proposed Modification to [ELN4] - ASBIE Naming



[ELN4] A UBL global element name based on an ccts:ASBIE MUST be the
ccts:ASBIE dictionary entry name property term and qualifiers; and the
object class term and qualifiers of its associated ccts:ABIE. All
ccts:DictionaryEntryName separators MUST be removed.

<New>If the omission of the ccts:ASBIE dictionary entry name object class
term results in a name collision then the ccts:ASBIE dictionary entry
name object class term MUST be added to the beginning of the element name.</New>

Redundant words in the ccts:ASBIE property term or qualifiers and the
associated ccts:ABIE object class term or qualifiers MUST be dropped <New>unless
the result produces a name collision</New>.



EXAMPLES:
====================================
With object class:

<xsd:element ref="InvoiceLegalTotal">
  <xsd:annotation>
    <xsd:documentation>
      <ccts:Component>
        <ccts:CategoryCode>ASBIE</ccts:CategoryCode>
        <ccts:DictionaryEntryName>Invoice. Legal Total</ccts:DictionaryEntryName>
        <ccts:Definition>Associates the invoice with a set of totals...</ccts:Definition>
        <ccts:ObjectClass>Invoice</ccts:ObjectClass>
        <ccts:PropertyTerm>LegalTotal</ccts:PropertyTerm>
        <ccts:RepresentationTerm>LegalTotal</ccts:RepresentationTerm>
        <ccts:DataType>LegalTotal.Type</ccts:DataType>
        <ccts:AssociatedObjectClass>LegalTotal</ccts:AssociatedObjectClass>
      </ccts:Component>
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

Because there is already a Global Element named 'LegalTotal' in the Reusable schema, and we add no additional qualifiers, we will have a name collision if we don't include the Object Class. Therefore, ASBIE Global Element Name becomes 'InvoiceLegalTotal'. (Yes, Gunther, this is a direct result of our Global Element decision.):

<xsd:element name="InvoiceLegalTotal" type="cat:LegalTotal"/>

====================================
Without object class:

<xsd:element ref="AdditionalDocumentReference" minOccurs="0" maxOccurs="unbounded">
  <xsd:annotation>
    <xsd:documentation>
      <ccts:Component>
        <ccts:CategoryCode>ASBIE</ccts:CategoryCode>
        <ccts:DictionaryEntryName>Invoice. Additional_  Document Reference. Document Reference</ccts:DictionaryEntryName>
        <ccts:Definition>Provides other means of identifying an Invoice </ccts:Definition>
        <ccts:ObjectClass>Invoice</ccts:ObjectClass>
        <ccts:QualifierPropertyTerm>Additional</ccts:QualifierPropertyTerm>
        <ccts:PropertyTerm>DocumentReference</ccts:PropertyTerm>
        <ccts:RepresentationTerm>DocumentReference</ccts:RepresentationTerm>
        <ccts:DataType>DocumentReference.Type</ccts:DataType>
        <ccts:AssociatedObjectClass>DocumentReference</ccts:AssociatedObjectClass>
      </ccts:Component>
    </xsd:documentation>
  </xsd:annotation>
</xsd:element>

Because we have the qualifier 'Additional', we have no need to include the Object Class in order to prevent name collision with global 'DocumentReference' in Reusable:

<xsd:element name="AdditionalDocumentReference" type="cat:DocumentReferenceType"/>










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