Background
W3C XML Schema patterns
There are four well-knows XML Schema design patterns. They are:
Russian Doll
Garden of Eden
Salami Slice
Venetian Blind
These patterns are referenced in this document. Useful resources for understanding them include:
OAGIS maintenance approach and release packages
OAGIS 10.6
OAGi manually maintained OAGIS versions through version 10.6. last manually-maintained version. OAGIS 10.6 was offered in four release packages (“editions”):
Enterprise
Platform (Garden of Eden pattern)
Standalone Global (Venetian Blind pattern)
Standalone Local (Russian Doll
pattern)
Standalone Local Groups
OAGIS 10.7 and later
Beginning with OAGIS 10.7, OAGi began maintaining OAGIS with Score. OAGi ceased to advertise availability of any XML Schema expressions of OAGIS while quietly making the Platform (Garden of Eden) and Standalone (pattern ) editions available to members on request.
Miscellaneous
JSON schema patterns
What XML Schema design patterns are possible with JSON schema?
“Canonical” meaning
OAGi has historically referred to OAGIS as an “enterprise canonical”. Canonical in this context refers to a format that an enterprise uses to map other formats to/from.
Use cases
Note regarding naming specific organizations
In the spirit of meeting needs across the OAGi community, we avoid indicating in writing organization names in the use cases. Satisfying any set of use cases is for the benefit of the community, not just one member of it.
Use Case # | Expression Type | Pattern | Model subset | File system structure | Notes |
---|---|---|---|---|---|
0 | W3C XML Schema | Garden of Eden | All CCs | Organized like the OAGIS 10.6 platform model | Score supports this today |
1 | JSON schema | Venetian Blind | All CCs | One file | |
2 | JSON schema | Venetian Blind | All CCs | One file per component with the set of files zipped | |
3 | XMI | N/A | All CCs | One file | |
4 | W3C XML Schema | Venetian Blind | Each component tagged | One file for each specified component with the set of files zipped | |
5 | W3C XML Schema | Venetian Blind | All CCs | One file | Score 3.0+ test instance supports this today |
6 | Markdown | N/A | All CCs | Organized as applicable subset of a Hugo project | |
7 | N/A | One CC or set of CCs | One file (for one CC) unzipped or one file for each specified component (for set of CCs) with the set of files zipped |
|
Score support for CC expression
Available in Score 3.0 (and some earlier versions)
Module-based expression in W3C XML Schema according to the Venetian Blind pattern.
Available in Score 3.0+ test instance
Choose component or components (e.g., based on noun
tag) and express each selected component as W3C XML Schema according to the Venetian Blind pattern. In the case of multiple components, the XSD files will be zipped.
API design
API parameters
Model subset: What part of the model needs to be expressed?
All
All except… (e.g., all except supplementary components)
A root component (e.g.,
BOM
)A set of root components (e.g.,
BOM
,ProcessPurchaseOrder
,NotifyShipment
)All components with a specified tag (e.g.,
noun
)
Expression type: What is the expression type? (Is there a better name for this other than “expression type”?)
XML Schema
JSON Schema
XMI
Documentation
OAS? (Jim doesn’t think this makes sense)
OWL?
RDF Schema?
Pattern: For some expression types, what is the pattern (e.g., Garden of Eden)
File system structure: For some expression types, what is the file/folder naming conventions and structure?
Internal file organization: For some expression types, how content is organized within files. (e.g., Within XML schemas list element declarations first in alphabetical order followed by type definitions in alphabetical order)?
CC Meta Model Type | Component | File Structure | Expression Type | Pattern | Other Score options |
---|---|---|---|---|---|
ASCCP | This should be query mimicking the filters in the View/Edit CC page (by default ASCCP is selected). Release keyword should also be supported. | Keywords:
| XML Schema | Garden of Eden | N/A |
JSON Schema | Venetian Blind | N/A | |||
Top-level BIE | This should be query mimicking the filters in the View/Edit BIE page |
| XML Schema | Russian Doll | Follow options on the Score’s BIE expression page |
JSON Schema | |||||
OAS |