This document summarizes our draft technical approach which is based primarily on the Knowledge Repository (KR) request for proposal (RFP). Of course, our approach will change as the scope of the KR project, and especially Release 1, becomes clear.
The RFP called for two separate systems, a Metadata Registry (MDR) and a Model Repository, with services that provide access to each. In addition, Transformation/Knowledge Management (KM) Service interfaces are to be engineered to create a unified, integrated view of the contents of the two systems. In our approach, we implement the logically distinct MDR, Model, and KM services through a common infrastructure.
Figure 1: High-level Architecture
The layers at the top of Figure 1 indicate how the service components of the system are organized. The Knowledge Management layer provides high-level, transformation and management services, utilizing the MDR and Model service components. They present ISO 11179 and UML specific APIs, respectively. The implementations of these services use a common set of CRUD (Create, Read, Update, Delete), Query, and Reasoning components that, in turn, utilize Eclipse Modeling Framework (EMF) and W3C Semantic Web (SW) technologies. XML Metadata Interchange (XMI) remains the primary import representation. However, we use the EMF platform as the primary technology for manipulating Meta-Object Facility (MOF) instance models. This allows us to utilize the robust tooling of the Eclipse platform for CRUD and some UML/MOF-oriented query and comparison operations.
We define isomorphic transformations from EMF representations of MOF models (including, but not limited to, UML) into an RDF/OWL ontologies. The structures of the OWL ontologies depend on the M2-level MOF models. Rule-based transformations are used to decompose UML models into data descriptions (i.e. Object Classes (OCs), Data Elements (DEs), etc.) and allow semantic metadata to be generated from line of business artifacts. OWL representations of these views enable the use of Semantic Web technologies to support sophisticated query and inference over the models. Supporting creation of federated, inter-linked metadata becomes (in a basic way) trivial since OWL utilizes URIs to represent concepts and the relationships between them. This feature also facilitates both top-down (e.g. BRIDG) and bottom-up (e.g. LS-DAM) approaches to model reuse. The ovals that are located in and outside of the lower-right box in Figure 1 depict how the OWL and ISO 11179 views may link to OWL and 11179 view and terminologies elsewhere, in other repositories. It also shows that XML Schemas can easily link to concepts and data elements using, for example, SAWSDL modelReference links. This enables metadata driven XML transformations.
To provision fine-grained access control policies and provide transaction support over EMF models, we use an open source Object-relational Mapping (ORM) layer that is specifically designed for persisting EMF models. To support high-performance, extensible lexical matching algorithms, we index all RDF/OWL content using the open source Lucene text search engine.