Standards
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.
Home | Issues | Vision | XCIL | XPSL | Pattern catalogs | KCS tools | Results
| Services | Standards
| Tech transfer