The Data Dictionary building block leverages the Adobe
application modeling technology for capturing the domain model.
Data dictionaries created using the Data Dictionary tools are extended
and annotated models with custom annotations. They capture the structure,
metadata, and back-end data bindings.
Supported XSD constructs for data dictionary creationThe following table details the constructs and data types
supported by the Data Dictionary building block schema definition:
XSD Constructs
|
Description
|
complexType
|
Inline and "ref" complex types.
Sequence
within complex types. A complex type element is an XML element that
contains other elements and attributes. In Data Dictionary, elements
of complex types are mapped to composite data dictionary elements.
|
Simple Types
|
String, Number, Date & Boolean primitives
|
xs:ID
|
Any attribute with type xs:ID is marked
as key element
|
maxOccurs
|
The <maxOccurs> indicator specifies
the maximum number of times an element can occur which is used to
determine if the DDE is of type "collection".
|
minOccurs
|
minOccurs == 0 marks corresponding data
dictionary element as optional/non-required
|
Enumerations
|
The Data Dictionary building block supports
enumerations as data dictionary element sub type which defines a
list of possible values for a data dictionary element.
|
References
|
Circular references/Recursive references
in XSD Schema are handled.
|
The XSD import to create a data dictionary does not support all
XSD elements, the following table details some of the limitations:
Element
|
Description
|
xs:Restrictions
|
The "enumeration" restriction is the only
supported restriction. It defines the data dictionary element of
subtype enum and associates value set(domain of values) with the DDE.
|
xs:include and xs:import
|
An XML Schema spanning over multiple files
is not supported
|
xs:any
|
The <any> Element is a wildcard that
allows the insertion of any element belonging to a list of namespaces.
|
xs:Substitution
|
Substituting one element with another element
is not supported.
|
Custom Data Model Annotations for Data DictionaryA data dictionary can be expressed into and created from
an annotated and extended data model. The annotations in question
are data dictionary specific and capture all data dictionary-specific
information in the model. The following table details model level
annotations:
Annotation
|
Item
|
Description
|
DDS
|
name
|
Required. The name of the data dictionary.
|
DDS
|
displayName
|
Optional. The user-friendly name of the
data dictionary.
|
DDS
|
version
|
Optional. The version of the data dictionary.
|
DDS
|
type
|
Optional. The type of data dictionary can
be SYSTEM or NONSYSTEM. See the "DataDictionaryType" enum class
in Java Docs for more information.
|
DDS
|
referenceName
|
Required. Reference Name stores the unique name
of a DDE within the Data Dictionary. This property and is used to
refer a DDE within assets. This property cannot be changed once
created. If the referenceName of a DDE is modified, then you must
update the reference of this DDE in all the assets (where it is
used).
|
General
|
description
|
Optional. Description of the data dictionary.
|
The following table details entity level annotations:
Annotation Group
|
Annotation
|
Description
|
DDS
|
setAsTopLevelWithName
|
Optional. The data dictionary allows only
one top level entity. This annotation helps in selecting a top level
entity when more then one top level entities are present. If this
annotation is not provided, an incorrect data dictionary with multiple
top elements will be created.
|
DDS
|
displayName
|
Optional. User-friendly name of the DDE
|
DDS
|
lcdsDestination
|
Optional. Required for System Data Dictionaries.
Can be either in DMS or Data Services annotation group.
|
General
|
description
|
Description of the DDE.
|
XmlBinding
|
xpath
|
Used for binding a DDE to XML Schema.
|
|
|
|