A Comparison of ebXML’s Naming Convention and the
UDEF
• ebXML Core Components Overview• ebXML Naming Convention • Universal Data Element Framework (UDEF) Overview• UDEF Naming Convention• Proposed Approach for Merging UDEF into ebXML Naming
Convention
Topics
ebXML Core Components
Tra
nspo
rt
Ret
ail
Fin
ance
Hea
lth
Domain
Core
Common
Common
Common Common
ebXML Discovery and Analysis Approach
Domain 1Domain 2...Domain N
Discovery
Harmonisation & Analysis
Processes / Components
Core Processes/Components
DomainProcesses/Components
Used or ExtendedCore Processes/Components
Domain SpecificProcesses /Components
Registry & Repository
All Processes/ComponentsAgree Issues
Discuss
Example Activity Diagram
Activitydiagram
Buyer Seller Carrierstart
Receive purchaseorder
FullyFulfil
YN
Reject Order
Cancel Order
ReceiveAmendment
OrderRejected
ORDER
Accept OrderEnd
Cancel Order
End
Propose Amendment
Y Propose AmendmentEnd
PrepareNew Order
End
New OrderY
End
Send purchaseorder
Example Class Diagram
Classdiagram
Trade Agreement
ID
Cancel Pending Delivery Notice
ID
Buyer
ID
Seller
ID
Purchase Order
P.O. IDDelivery dateP.O. dateBuyerReceiver
Pending Delivery NoticeID
Purchase Order amendment
IDDateDescription
Receiver
ID
Purchase Order Rejection
IDDateDescription
Order Line
Product IDQuantityLine sequence number
Product
ID
Price
*
* *
*
** *
*
*
*
*
*
1
111
1
1
1
11
*
0.*
0.1
0.1
0.1
1
1
1
*
Example Use Case Diagram - Finance
Initiate a Direct Interbank Payment
Interbank System
Beneficiary
Credit Beneficiary Account
Determine that Benificiary Acct can Receive Payment
Ordering Party
Advise Succesful Payment
Initiate Payment
Beneficiary Bank
Ordered Bank
Initiate an Internal Transfer
Use Casediagram
Example Data Model in Finance (SWIFT)
Tax
TaxID : StringTaxRate : Float
ChargeChargeReason [0..1] : StringChargeOption [0..1] : StringChargeIncluded : BooleanChargedAccountID [0..1] : AccountIDType
0..nEntry
EntryID[0..1] : String
EntryDate [0..1] : DateTimeValueDate : DateTim
Status_rule
0..n
0..n
TransferTransferID[0..1] : StringTransferReason : String
0..n
Amount
Value : FloatCurrency[0..1] : Currency Type
Currency_rule
+TaxAmount
+ChargeAmount
EntryStatus: EntryStatus Type
0..1
EntryAmount_rule
ChargeIncluded_rule
0..1
OriginatorBeneficiaryRule
Indicator : DebitCredit
Charge Rate [0..1]:Float
ExchangeExchangeDate[0..1] : DateTimeExchangeContract Reference[0..1]:String
Example ebXML Core Component Type
ValueComponent
SupplementaryComponent
CoreComponentType (CCT)
Consists of1
1..n
carries the actual value(e.g. 20011114)
gives extra definition to the value(e.g. Date)
Code Type
supplementarycomponents
– code list identifier– code list agency identifier– code list version identifier– code name– language code
value component– code content
ebXML Basic Core Component
ValueComponent
SupplementaryComponent
CoreComponentType (CCT)
Consists of1
1..n
Basic CoreComponent
Used in
without b
usiness semantics
with known business semantic
sa singular concept that has a unique business semantic definition (e.g. street name)
ebXML Aggregate Core Component
ValueComponent
SupplementaryComponent
CoreComponentType (CCT)
Consists of1
1..n
Basic CoreComponent
Used in
without b
usiness semantics
with known business semantic
s
Aggregate CoreComponent
Aggregated incontains two or more Basic Core Components that together form a single business concept (e.g. postal address)
Example Aggregate Core Component
• Postal Address
Embedded Components
- Street.Building.Identifier- Street.Name- Town.Name- State.Identifier- Post-Code.Identifier- Country.Code- ........
XML DTD specifies mandatory and optional embedded components
Interpreting DTDs
XML DTD source code:
<!ELEMENT Bravo (Golf? , Hotel* , India+)>
<!ELEMENT Golf (#PCDATA)><!ATTLIST Golf e-dtype NMTOKEN #FIXED 'string' >
<!ELEMENT Hotel (#PCDATA)><!ATTLIST Hotel e-dtype NMTOKEN #FIXED 'date' >
<!ELEMENT India (#PCDATA)><!ATTLIST India e-dtype NMTOKEN #FIXED 'boolean' >
Bravo contains a sequence of child elements which includes zero or one occurrence of Golf (?), zero or more occurrences of Hotel (*), and one or more occurrence of India (+).
Note that Golf, Hotel, and India are each datatyped (string, date, and boolean respectively). The datatype is declared in each element’s “e-dtype” attribute. This method of datatyping was developed by Extensibility and is not part of the W3C XML 1.0 Recommendation. The newer W3C XML Schema language does support datatyping. The significance of this is that an XML Schema parser can check for datatyping errors whereas a DTD parser can not and datatype error checking is left to the using application.
Interpreting DTDs - Continued
The angle bracket indicates a choice, i.e., Juliet Must contain either Kilo, Lima, or Mike.
Juliet also includes zero or more occurrences of either November, Oscar, or Papa.
Kilo must include eitherQuebec, Romeo, or Sierra.
November may include either Quebec, Romeo, or Sierra.
0:M
0:1
Example Address DTD – from EIA-836
The Business Information Entity (BIE)
Core Components
Context Categories
ConstraintsRelationships
Specific Business Context
Business Information
EntitySyntax Neutral
Syntax BoundSyntax Rules
X12 XML DTD XML Schema STEP
• Business Process• Product Classification• Industry Classification• Geopolitical• Official Constraints• Business Actor Role• Supporting Role• System Capabilities
Identifying BIEs for
Aerospace is the goal
ebXML Representation Terms
Amount - always monetaryCode - a character string used to replace a definitive valueDate - a day within a particular calendar year (a type of date time)Date Time - a particular point in the progression of timeGraphic - a diagram, graph, mathematical curve or similar representationIdentifier - a character string used to identify and distinguish uniquelyIndicator - a list of two and only possible values (synonym for Boolean)Measure - a numeric value determined by measuring an object (UoM)Name - a word or phrase that distinctively designates a person, place, etc. (a type of text)Percent - a rate expressed in hundredths between two values with same UoM (a type of numeric)Picture - a visual representation of a person, object, or sceneQuantity - a number of non-monetary units - associated with objects (a type of numeric)Rate - a quantity or amount measured with respect to another quantity or amount (a type of numeric)Text - a character string generally in the form of words of a languageTime – the time within a (not specified) day (a type of date time)Value – numeric information that is assigned or determined by calculation, counting, or sequencing (a type of numeric)
Representation Terms are tightly connected to Core Component Types
ebXML Context Categories
Business Process – UN/CEFACT provides a catalog of core business processesProduct Classification – Universal Standard Products and Services Classification (UNSPSC) – example provided in next slideIndustry Classification – for example, UNSPSC top two levels define industryGeopolitical – general taxonomy follows (global, continent, economic region, country, region) - example country=United States, region=CaliforniaOfficial Constraints – regulatory and legislative (such as customs)Business Actor Role – examples, buyer and sellerSupporting Role – example, code for agency that specifies code valuesSystem Capabilities – no known standard classification of all types of IT systems and standards
Context Categories allow users to uniquely identify and distinguish between different business contexts. They use standard classifications (unless otherwise stated) to provide values for the category.
ebXML Naming Convention Procedures
1. Develop Semantic Definition that is globally applicable, generic, simple and clear.
2. Follow Naming Rules to assign representation type, property term and object class - but a set of object classes are not specified.
3. Concatenate the Terms to create a Naming Convention compliant name – where it is recognized that the name may seem artificial.
4. Check Quality of Definition by placing the name plus “is” in front of the definition.
5. List Common Synonyms or Business Terms used with the domain
6. Assign a Temporary UID in the form of a six digit alphanumeric string
UNSPSC Example for Product Commodity Code
XYZ supplier 11/02/99 Invoice #1234534XB12 Laser printer lbls 1x2-/8 19.7624509 Ink cartridge 99.99725XN Data copier paper 22.99CP340P Compaq Presario 1879.00
Sales tax 166.79
Total Invoice 2188.53
XYZ supplier 1234-5436-3465
11/02/99 Invoice #1234555.12.16.05.00 Laser printer lbls 1x2-/8 19.7644.10.31.05.00 5009 Ink cartridge 99.9914.11.15.06.00 Data copier paper 22.9943.17.18.03.00 Compaq Presario 1879.0093.16.16.05.00 Sales Tax 166.79
Total Invoice 2188.53
The SKU while meaningful to the supplier, has no analytical value for the buyer. Substituting the SKU for a standard commodity code (UNSPSC) provides the buyer with meaningful data which can be used to analyze and control expenditure.
Commodity Supplier GBI Total $
44.10.31.05.00 ABC Office Co 1345-256-1234 70,000Toner Cartridges Paper Co Inc 3692-5692-2390 28,000
Office Company 4969-9383-4934 30,000USA Office Co 4932-5195-9349 15,000Local Office Inc 3495-0234-9843 3,500Toner Supply Inc 1567-2349-0634 800
147,300
UDEF Background
CALS ISG - Developed UDEFIndustryRon Schuldt (Chair) - Lockheed Martin Barbara Barman (Vice Chair) - RaytheonRob Bryant - DynCorpRuey Chen - David Taylor Research CenterBob Hodges - Texas InstrumentsNeal McNamara - Analysis & Technology Inc.Bud Orlando - TRWMadelyn van der Bokke - ASECGeorge Walther - Lockheed Martin
GovernmentNorma Kornwebel - PM JCALSDinah Beres - NAWCSteve Waterbury - NASA
EIA - Applied UDEFIndustryRon Schuldt (Chair) - Lockheed Martin Rick Lang - Texas InstrumentsPam Stanfield - Lockheed MartinGary O’Hara - Hughes Space and CommTony DiPerna - Ericsson CommunicationsKen McTee - Texas InstrumentsCindy Hauer - Mevatec CorpFred Bahrs - CMstat CorporationDoug Drury - ITT Federal ServicesLee LeClair - Texas Instruments
GovernmentDeborah Cornelius - US Army Missile CmdC. H. VanLandingham - NOAA Nat’l Wea Svc
UDEF Context Categories = Object Classes
Human Asset
ProductProduct
Laws/Rules
Process
Document
Enterprise AEnterprise B
Program
Resources
Environment
Place
Entity
Condition
UDEF Naming Convention – Based on ISO 11179
Data ElementName
Object Class Term
0...n qualifiers +1 or more reqd
Object Class
+
Example Data Element Names
Document Abstract Text
Enterprise Name
Product Price Amount
Product Scheduled Delivery Date
Engineering Design Process Cost Amount
Object Class ListEntityDocumentEnterprisePlaceProgramProductProcessPersonAssetLaw/RuleEnvironmentCondition
Property ListAmountAngleAreaCodeCoordinateDateDimensionIdentifierMassNameQuantityRateTemperatureTextTimeVolumeWeight
Property Term
0..n qualifiers +1 reqd Property
“Enterprise” Object Taxonomy Example
ENTERPRISE (3)
Remitterw
Receiver Supplier Exemptx y aa
Academic Largeac
a
Paymenta
Taxa
z
Smallab
Owned
Privately Publicly
a
a b
Owned
Privately Publicly
a
a b
Inspectiona
“Identifier” Property Taxonomy Example
IDENTIFIER
Division
Authority
Telephone
(8)
51
3
Period Access
Year
47
4849
1
Mail1
1
Electronic
Control1Machine
2
50
1
Julian
1
Fax
Monitor1
1
Technical
Change1
1
Current
1
System-generated
Pager4
1
Office 2
Home
1
Project-specific
Account52
Logon53 Globally-unique
54
Project-unique55
Enterprise-unique56Sequential
“Name” Property Taxonomy Example
NAME
DivisionGiven System SubsystemFamily File
Electronic
Stage City
(10)
9 10 11 12 13 14 15 16
1
Department17
UDEF Naming Convention – Example Mappings
document-publication-datedocument-data-rights-expiration-datedocument-sheet-total-quantitydocument-sheet-size-codesoftware-product-version-identifierpart-product-identifierreference-document-revision-identifierenterprise-division-address-textprogram-nameproduct-quantityenterprise-address-text
CM Data Elements
2_5.62_1.2.6.62_1.8.112_1.6.4p.9_8.8g.9_8aj.2_9.83_2.12.1410_109_113_12.14
Universal ID
UDEF Naming Convention – Example Mappings
country codeinvoice number- assigned by issuerpurchase order type codepostal codelocation qualifierlocation identifiercontract effective dateexpiry date of import licenseitem number - productitem number - serviceprice
X12 & EDIFACT Data Elements
e.7_4bd.2_1.35.8d.t.2_33.47_1.10.47_20.33.47_8.4e.2_13.6a.be.2_6.69_8f.9_89_2.1
Universal ID
Goal - UDEF IDs Become the ebXML UIDs
EIA-836EIA-836 X12 (EDI)X12 (EDI)
Part NoPart No
Doc TypeDoc Type
Part Product IdentifierPart Product Identifier
Part Product NamePart Product Name
Document Type CodeDocument Type Code
Product/Service IDProduct/Service ID
Product/Service NameProduct/Service Name
Entity (Supplier) NameEntity (Supplier) Name
Contract DocumentContract Document IdentifierIdentifier
Report Type CodeReport Type Code
Supplier Supplier
Vendor AVendor A
Contract NoContract NoBuyer’s ContractBuyer’s Contract NumberNumber
Component ProductComponent Product QuantityQuantity
UDEF ID = ebXML UIDUDEF ID = ebXML UID
g.9_8g.9_8
g.9_9g.9_9
2_33.42_33.4
e.2_8e.2_8
f.g.9_11f.g.9_11
y.3_9y.3_9
<PartProductIdentifier UID=“g.9_8”>123-456-789</PartProductIdentifier>
<PartNo UID=“g.9_8”>123-456-789</PartNo>
<ProductServiceID UID=“g.9_8”>123-456-789</ProductServiceID>
Benefit – UIDs eliminate the baggage associated with changing names
ebXML and UDEF Naming Convention Procedures
1. Semantic Definition becomes optional in most cases since the UDEF compliant name conveys meaning unambiguously.
2. Follow Naming Rules to assign representation type, property term and object class – using a specified a set of object classes that correspond to and expand upon the ebXML context categories.
The UDEF naming convention rules follow the rules of proper English taught in grade school when diagramming sentences – specifically, each modifier word precedes the word being modified
3. Concatenate the Terms to create a Naming Convention compliant name – where it is recognized that the name may seem artificially long.
4. Check Quality of Definition by placing the name plus “is” in front of the definition.
5. List Common Synonyms or Business Terms used within the context of a given industry.
6. Derive an Intelligent UID based on the UDEF taxonomy that carries an inherited indexing scheme.
Proposed Approach for Merging ebXML and UDEF
1. If AIA EEWG concurs, adjust UDEF Property Words to be 100% consistent with ebXML Representation words – R. Schuldt
2. Distribute updated UDEF baseline (current baseline dated April 2000) to all members of the Metadata Harmonization Project – R. Schuldt
Each team member reviews the updated UDEF and the naming convention rules and tests it with sample data elements
3. Review/discuss results at January meeting.
Top Related