An annotated element is an entity to which annotations can be attached.
The common interface implemented by all annotations.
Object that provides display names for data models, data types and data properties.
A data object is a representation of some structured data.
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.
ILcdAnnotation that indicates that the annotated type
models an association class.
This class provides static access to the core data model and its types.
A data model is a collection of types that forms a logical entity.
Builder that allows
TLcdDataModel instances to be created.
Default implementation of a
Default implementation of
Represents a property of a type.
Builder that allows the creation of
for a certain data model.
A representation of the type of a data object.
Builder that allows the creation of a
Data object that also implements the
This builder is introduced to simplify the construction of data models from one or more
An annotation type implementing
ILcdAnnotation, meant to annotate properties that should stay hidden for an end-user
Implementation of an
based on a resource bundle.
This class provides access to the unknown data model.
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.
TLcdDataProperty: represent the static structure of a domain model.
TLcdDataModelBuilder: allows data models to be built.
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.
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.
TLcdDataModelBuilder serves as a builder that allows data models to be built. It
makes use of
to build data types and properties.
See the Introduction to the data modeling API tutorial for some example usages of these classes and interfaces.
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