XMIdiagram.gif 
(10121 bytes)

What is a Repository Translator ?

Many software engineering tools are now built around a shared repository for models and code. However, it's still a very challenging task to integrate a wide variety of development tools into this repository, and even more difficult to exchange repository contents between vendors' repositories. A recent proposal for the XML Metadata Interchange (XMI) has been submitted to the Object Management Group. This proposal directly addresses the model and tool integration problem and has received wide support from major vendors, so its adoption looks promising.

A related issue is raised by significant growth in the adoption of business rule technologies for mainstream enterprise information systems. Each rule engine vendor has its own proprietary rule language, and these languages are better suited to developers than to business managers. It's essential that business rules are communicable to the managers responsible for the associated policy.

Ontogenics Corp. is designing a standard, XML-based interchange language for business rules. This Rule Markup Language (RML) is designed as an extension to the XMI proposed standard, including appropriate integration with the Unified Modeling Language (UML) representation. A UML markup language is a part of the XMI proposal and is also an extension of the core metadata exchange definition.

Our Repository Translator is a software tool that leverages the XMI language to translate common repository models between tools, or between repositories. The Repository Translator also includes Web-based model editors and model viewers that are built directly on the XMI representation, so these utilities can edit or view contents from many sources.

Scope of this Demonstration

The Web pages that you are currently viewing are an example of a Web-based Model Viewer. This viewer supports two model types: Business Rules and UML Class Models. These two model types are interconnected via hyperlinks. For example, when a business rule refers to an object class, then clicking on the class hyperlink in the rule will produce a Web page view of that class definition. All views are dynamically translated as they are requested.

This demonstration supports three input sources for translation:

Java bytecode is the result of compiling Java source code into 'class' files. These 'class' files are often consolidated into a compressed 'jar' archive file. In this demonstration, any 'jar' file can be treated as a kind of repository containing perhaps hundreds of class definitions. You can hyperlink between any class definitions within, or even between, 'jar' files -- any Java class in the current CLASSPATH environment is a potential target.
The CORBA Interface Repository (IR) is part of the core OMG standard. The IR is essentially CORBA's counterpart to the Java reflection API, except IR runs as a separate server instead of querying the CORBA objects themselves. For this demonstration, I've loaded a CORBA interface repository server with all of the IDL for the UML Facility standard interfaces. This is the meta-model for creating UML application models. The XMI representation of these interfaces is produced in real-time by querying the IR API.
Business Rules written in the Jess rule language. The Jess rule engine is available for free on the Internet. Jess is compatible with a large subset of the widely used CLIPS rule engine, but is written entirely in Java and includes extensions that allow rules to access Java objects.

See the Translator Examples page for a few suggested starting points into this hyperspace of metadata.

 

"Business Rule Management Suite" is a trademark of Ontogenics Corp. All other products mentioned are registered trademarks or trademarks of their respective companies.

Questions or problems regarding this web site should be directed to webmaster@ontogenics.com
Copyright � 1996, 1997, 1998 Ontogenics Corp. All rights reserved.