[Accessibility conventions are described at the bottom of the page]
*** This is a free preview excerpt of a commercial publication. ***
11. Conformant customization implementation
[> 12.][< 10.0.1][^^^]
11.0 Conformant customization implementation
[> 11.0.1][> 12.][< 11.][^^][^^^]
An implementation of a customization need only support the customization definition
[[1] - the community has agreed on what parts of UBL will be used
[1] - the application can limit itself to only the parts expected
]
Customization validation can only check the customization definition
[[1] - requires unexpected constructs to be pruned from instances before processing
]
Two different implementations of conformant customizations may or may not be able to exchange UBL documents
[[1] - the use of XML and the common vocabulary allows much of the information to be interchange
[1] - two communities may make different choices of which optional constructs to support
]
Only mandatory elements are guaranteed to be interchangeable
[[1] - e.g. addresses may not be interoperable
[[2] - customization A restricts addresses to structured components only
[[3] - an address is comprised of separately-labeled pieces
[3] - [Example 11-1: A structured address01 <cac:Address>
02 <cbc:StreetName>City Road</cbc:StreetName>
03 <cbc:BuildingName>Banking House</cbc:BuildingName>
04 <cbc:BuildingNumber>12</cbc:BuildingNumber>
05 <cbc:CityName>London</cbc:CityName>
06 <cbc:PostalZone>AQ1 6TH</cbc:PostalZone>
07 <cbc:CountrySubentity>London</cbc:CountrySubentity>
08 <cac:AddressLine>
09 <cbc:Line>5th Floor</cbc:Line>
10 </cac:AddressLine>
11 <cac:Country>
12 <cbc:IdentificationCode>GB</cbc:IdentificationCode>
13 </cac:Country>
14 </cac:Address>
]
][2] - customization B restricts addresses to unstructured components only
[[3] - an address is simply a set of address lines
[3] - [Example 11-2: An unstructured address01 <cac:Address>
02 <cac:AddressLine>
03 <cbc:Line>5th Floor</cbc:Line>
04 <cbc:Line>Banking House</cbc:Line>
05 <cbc:Line>12 City Road</cbc:Line>
06 <cbc:Line>London, England AQ1 CTH</cbc:Line>
07 </cac:AddressLine>
08 </cac:Address>
]
]]]
Out-of-band processes and business practices can address mismatched expectations of UBL
[[1] - a rejection in processing a UBL document is not an automatic rejection of business
[1] - it is a business decision regarding how to do business when information is complete
]
11.0.1 Refining the document processing model
[> 12.][< 11.0][^][^^][^^^]
There is no set processing model for handling customized UBL instances
[[1] - just as there is no set processing model for handling standard UBL instances
[1] - the information in this module is but an example for consideration
]
Recall the processing model published in the UBL 2.0 specification
[[1] - see [Chapter 5.]
[[2] - first step confirms the structural and lexical constraints on the instance
][1] - see [Chapter 8.]
[[2] - second step confirms the standardized and trading partner values used in the instance
]]
Customization suggests the pre-validation filter removal of unexpected constructs
[[1] - the remainder of the process remains the same
[1] - the files in use for the remainder of the process are defined for the customization
[1] - also implements "forward compatibility" of UBL minor versions
]
[Figure 11.1: Three-step validation
The diagram is split with a horizontal line indicating runtime process above the line and advance preparation process below
the line.
Above the line and at the left is an incoming UBL instance depicted as a triangle labeled "XML". This is connected by an arrow
to the box at the right labeled "Application Code" under the column "Semantic Interpretation". Two arrows lead down from this
horizontal arrow, one under the column "Structure Validation" to a box labeled "W3C Schema", and the other under the column
"Value Validation" to a box labeled "XSLT".
Below the line and under the column "Structure Validation" an "XSD" labeled triangle titled "Structure Constraints" and identified
with a circled "1" has an arrow leading into the "W3C Schema" box. Below the line and under the column "Value Validation"
an "XSLT" labeled triangle titled "Value Constraints" and identified with a circled "2" has an arrow leading into the "XSLT"
box.
]
The version filter (F) represents a customization-specific filter
[[1] - preserves only the constructs recognized by a customization definition
]
*** This is a free preview excerpt of a commercial publication. ***
This is an accessible version of Crane's commercial training material.
The content has been specifically designed to assist screen reader software
in viewing the entire textual content. Figures are replaced with text
narratives.
Navigation hints are in square brackets:
[Tx.x] and [Fx.x] are textual representations of the applicability icons;
[digit] indicates list depth for nested lists;
[link [URL]] indicates the URL of a hyperlink if different than link;
[EXAMPLE] indicates an example listing of code;
[FIGURE] indicates the presence of a figure replaced by its description;
[>] jumps forward;
[<] jumps backward;
[^] jumps to start of the section;
[^^] jumps to the start of the chapter;
[^^^] jumps to the table of contents.
Suggestions for improvement are welcome:
[info@CraneSoftwrights.com]
Book sales: [http://www.CraneSoftwrights.com/links/trn-acc.htm]
Information: [http://www.CraneSoftwrights.com/links/info-acc.htm]
This content is protected by copyright and, as there are no means to protect
this accessible version from plagiarism, please do not make any
commercial edition available to others.
+//ISBN 1-894049::CSL::Presentation::UBL//DOCUMENT Practical Universal Business Language Deployment 2009-02-12 13:50UTC//EN
Practical Universal Business Language Deployment
Third Edition - 2009-02-12
ISBN 978-1-894049-23-8
Copyright © Crane Softwrights Ltd.