Defines the level 1 language for data modelling.
Containers for 0..n instances of some type.
The possible type constructs.
Restricted forms that are subsets of the basic data types.
Things that can be declared as named constructs.
L1 is a list of unchecked declarables.
Defines the kinds of additional property that can be placed in the model.
Allows additional properties from a variety of possible kinds to be placed in the model.
A set of additional properties on the model.
A set of additional property kinds that can or must be defined against the model.
Defines a set of property specifications with possible defaults. The first argument is a list of property specs, and the second is a list of default values.
Values may appear in the second argument that are not in the first, in which case a specification for them will be infered.
Values in the second argument that are also in the first should be of the same kind, but will be overriden by the second argument if not.
Creates an empty set of properties.
Indicates that the model has not been checked.
Gets the position context from a Declarable.
Gets the position context from a Type.
Gets the properties from a Declarable.
Gets the properties from a Type.
Updates the properties from a Declarable.
Updates the properties from a Type.
Yields the constructor name for a Declarable.
Yields the constructor name for a Type.
The basic data types.