![]()
The
representations used by this effort are intended to closely correspond to a
variety of standards for object-oriented modeling, meta-modeling, distributed
computing, component models, the virtual machine/execution models of the
Java Virtual Machine (JVM) and .NET (MS-IL), and the XML standards from the
W3 consortium. These standards
and their relationship to our representations and tools are described
below: UML. XCIL is a subset of the OMG’s Unified
Modeling Language (UML), corresponding roughly to the kernel defined by the
UML2 Infrastructure standard, upon which the UML superstructure is built.
The mapping between XCIL and UML is direct, and documented by the XCIL
Reference with respect to the current UML standard (UML 1.4). MOF/XMI. XCIL is a superset of the OMG’s
Meta-Object Facility (MOF), extended to include a number of additional UML
concepts. As a result there is a
virtual match between the XCIL representation of modeling/programming
elements and the XMI representation of them defined by the MOF. Proposed MOF
Query/View/Transformation (QVT) standard.
XPSL is intended to map to this standard. As a result, XPSL queries and pointcuts
are based on OCL, as the QVT standard is expected to be. XPSL transformations are currently
mapped to XSLT, which is also expected to be similar to the QVT standard.
There are eight initial submissions. See the MOF 2.0 Query/View/Transf. RFP
link at http://www.omg.org/schedule
for details. CORBA IDL. The OMG defines a mapping between
the MOF and CORBA IDL that can be used as the basis for a similar mapping
between XCIL and CORBA IDL. CORBA component
model (CCM). The CCM standard
provides a MOF mapping that can be used as the basis for a similar mapping
between CCM concepts and XCIL. JVM. The mapping between the JVM
instruction set and XCIL is direct, and documented by the XCIL Reference.
This, in turn, makes it possible to easily convert Java class files to an
XCIL representation, and to analyze/adapt programs written in languages
that target the JVM. .NET/MS-IL. The mapping between Microsoft’s
intermediate language (MS-IL) for .NET and XCIL is direct, and documented
by the XCIL Reference. This, in turn, makes it possible to easily convert
MS-IL output to an XCIL representation, and to analyze/adapt programs
written in languages that target .NET. XML. XCIL and XPSL are both XML based
representations, making it possible to directly apply XML tools to XCIL and
XPSL representations, and to use XSLT to transform them. Currently XPSL is mapped to XSLT in
order to transform XCIL representations of models and programs. Other modeling
languages. Just as it is
possible to translate between different programming languages that compile
to XCIL, patterns can be defined to map between XCIL and the modeling
languages supported by other non-UML tools. Other tools. Information from other tools (such as
T-VEC) can be imported into XCIL by means of parsing, and portions of the
XCIL representation can be exported in a format acceptable to other tools
using appropriate XSLT transformations.
This task is made easier by the use of XML by many tools (such as
T-VEC) to support information exchange.
