A run-time model is used by the run-time system of the XL programming language. It describes the properties of relational data sources at run-time, i.e., it provides methods for obtaining information and performing operations on relational data sources.
A run-time model is represented by an instance of the interface
de.grogra.xl.runtime.Model, together with
are returned by methods of
Model provides methods for obtaining
information and performing operations which are common to a set of
relational data sources with an equal structure, an
Extent provides methods which operate
on a single instance of these data sources. E.g., a
Model could represent
features of XML documents in general, while an
Extent of this model represents a single
Property instances represent
properties at run-time.
The exact meaning of these classes and interfaces will be described in the
sequel in the context of their usage.
The instance of
Model that is responsible
for a specific part of a programme is determined as follows:
At compile-time, a compile-time model
is associated with that specific part. The invocation of the method
getRuntimeName on this compile-time model
returns a name, this name
m is used
at run-time in order to obtain the corresponding instance of
c is the class-loader of the
class containing the specific part, then the run-time model is
obtained by the invocation
Extent for a run-time model
r is obtained by the invocation
If the current extent is to be determined and this method
NoCurrentExtentException is thrown.
QueueCollection of an extent
e is obtained by the invocation
is the current extended state (Chapter 4, Extended State of the Virtual Machine).
If the current queue collection is to be determined and this method
NoActiveTransformationException is thrown.
The current queue collection of a run-time model is determined by
first determining the current extent of the run-time model and then
determining its current queue-collection.