See: Description
Interface | Description |
---|---|
ILcdAnnotatedElement |
An annotated element is an entity to which annotations can be attached.
|
ILcdAnnotation |
The common interface implemented by all annotations.
|
ILcdDataModelDisplayNameProvider |
Object that provides display names for data models, data types and data properties.
|
ILcdDataObject |
A data object is a representation of some structured data.
|
ILcdDataObjectFactory |
Interface that provides a mechanism to control the creation of new instances
for types of a certain data model.
|
TLcdDataModelBuilder.DataModelAnnotationFactory<T extends ILcdAnnotation> |
This factory interface offers a convenient way to annotate a data model while it is being
built.
|
TLcdDataPropertyBuilder.PropertyAnnotationFactory<T extends ILcdAnnotation> |
This factory interface offers a convenient way to annotate a property while it is being
built.
|
TLcdDataTypeBuilder.TypeAnnotationFactory<T extends ILcdAnnotation> |
This factory interface offers a convenient way to annotate a type while it is being
built.
|
Class | Description |
---|---|
TLcdAssociationClassAnnotation |
ILcdAnnotation that indicates that the annotated type
models an association class. |
TLcdCoreDataTypes |
This class provides static access to the core data model and its types.
|
TLcdDataModel |
A data model is a collection of types that forms a logical entity.
|
TLcdDataModelBuilder |
Builder that allows
TLcdDataModel instances to be created. |
TLcdDataModelDisplayNameProvider |
Default implementation of a
ILcdDataModelDisplayNameProvider . |
TLcdDataObject |
Default implementation of
ILcdDataObject . |
TLcdDataProperty |
Represents a property of a type.
|
TLcdDataPropertyBuilder |
Builder that allows the creation of
TLcdDataProperty instances
for a certain data model. |
TLcdDataType |
A representation of the type of a data object.
|
TLcdDataTypeBuilder |
Builder that allows the creation of a
TLcdDataType . |
TLcdFeaturedDataObject |
Data object that also implements the
ILcdSelfDescribedFeatured interface. |
TLcdFeaturedDescriptorDataModelBuilder |
This builder is introduced to simplify the construction of data models from one or more
ILcdFeaturedDescriptor instances. |
TLcdHiddenDataPropertyAnnotation |
An annotation type implementing
ILcdAnnotation , meant to annotate properties that should stay hidden for an end-user |
TLcdResourceBundleDataModelDisplayNameProvider |
Implementation of an
ILcdDataModelDisplayNameProvider
based on a resource bundle. |
TLcdUnknownDataTypes |
This class provides access to the unknown data model.
|
Enum | Description |
---|---|
TLcdDataProperty.CollectionType |
Enumeration that defines the different collection types that are supported for
multi-valued properties.
|
This package provides an API to access domain objects in a unified way. With this API it is possible to access all domain objects of a LuciadLightspeed model, independent of their specific domain. Additionally, the API provides information about the static structure of the domain objects as is typically provided by a UML diagram.
The main classes provided by this package are:
ILcdDataObject
: generic interface to access data.TLcdDataModel
, TLcdDataType
and TLcdDataProperty
: represent the static structure of a domain model.
TLcdDataModelBuilder
: allows data models to be built.
The ILcdDataObject
interface defines the uniform interface for a data object.
A data object has one or more properties. For each of these properties, the data object
can have one or more values. Note that the values can be primitive object (Strings, numbers, and so on) but
also data objects themselves. The data object's properties are defined by its type. This
is shown in the following diagram.
TLcdDataModel
, TLcdDataType
and TLcdDataProperty
make
the static structure of a domain model visible. This structure is typically defined by one or
more UML class diagrams. A data model is defined as a set of types. Each of these type
defined a set of properties. This is shown in the following UML diagram.
The TLcdDataModelBuilder
serves as a builder that allows data models to be built. It
makes use of TLcdDataTypeBuilder
and TLcdDataPropertyBuilder
instances
to build data types and properties.
See the Introduction to the data modeling API tutorial for some example usages of these classes and interfaces.
Note that ILcdFeatured
and ILcdFeaturedDescriptor
provide
similar functionality as this package. These interfaces also provide a way to access domain data
in a uniform way. They do well for domain models with a simple structure. However, newer domain
models such as GML3, AIXM5 and KML have a rich hierarchical structure which is not easily
represented in this way. In time, this package will replace the functionality provided
by ILcdFeatured
and ILcdFeaturedDescriptor
.