Conference PaperPDF Available

On the Automatic Generation of an OWL Ontology based on the Joint C3 Information Exchange Data Model

Authors:
  • Independent Consultant, AI/SemTech/WebApps

Abstract and Figures

The JC3IEDM is a data model intended for the exchange of command, control and communication information. It is available as an ERwin data model for which there is an XML-based description of all entities, attributes, relations and codes, making it ripe for translation by XSLT. This paper describes the development of a set of transformation scripts that convert the JC3IEDM data model into an OWL ontology; it explains the major challenges encountered and discusses a number of issues concerning the practical use of the resulting ontology. While the primary purpose of this work is to provide the basis for a semantically rich ontology for use in representing and reasoning about command, control and communication operations, it is also intended to serve as an example of a general approach for translating ERwin data models into OWL ontologies.
Content may be subject to copyright.
12TH ICCRTS
“Adapting C2 to the 21st Century”
On the Automated Generation of an OWL Ontology based on the
Joint C3 Information Exchange Data Model
Track 8 - C2 Technologies and Systems
Track 1 - C2 Concepts, Theory, and Policy
Christopher J. Matheus and Brian Ulicny
Point of Contact:
Christopher J. Matheus
VIStology, Inc.
5 Mountainview Drive
Framingham, MA 01701 U.S.A.
508 788-5088
cmatheus@vistology.com
On the Automatic Generation of an OWL Ontology based on the
Joint C3 Information Exchange Data Model
Christopher J. Matheus1 and Brian Ulicny1
Abstract. The JC3IEDM is a data model intended for the exchange of command,
control and communication information. It is available as an ERwin data model for
which there is an XML-based description of all entities, attributes, relations and
codes, making it ripe for translation by XSLT. This paper describes the development
of a set of transformation scripts that convert the JC3IEDM data model into an OWL
ontology; it explains the major challenges encountered and discusses a number of
issues concerning the practical use of the resulting ontology. While the primary
purpose of this work is to provide the basis for a semantically rich ontology for use in
representing and reasoning about command, control and communication operations,
it is also intended to serve as an example of a general approach for translating ERwin
data models into OWL ontologies.
Keywords: ontology generation, JC3IEDM, ERWin model, automated translation,
XML, XSLT
1 Introduction
The Multilateral Interoperability Programme (MIP) [1] is a long-standing, NATO-supported
program commissioned to foster international interoperability of Command and Control
Information Systems (C2IS) through the development of standard data models and data exchange
mechanisms. Significant joint coalition effort has gone into the development of the MIP data
model which was first released in the mid to late 1990’s as various version of the Generic Hub
(GH) Data Model. In subsequent years it became known as the Land Command and Control
Information Exchange Data Model (LC2IEDM), followed by the Command and Control
Information Exchange Data Model (C2IEDM) and now it exists as the Joint Command, Control
and Consultation Information Exchange Data Model (JC3IEDM) [2]. The data model captures
information about objects and their properties, situations made up of facts about objects and
activities involving collections of objects. While JC3IEDM is intended foremost for the
exchange of command and control information between information systems, it is gaining
increased consideration as the basis for general data models that underlie command and control
(C2) information systems. One reason for this trend is the desire to leverage the great wealth of
experience and knowledge that has gone into the development of JC3IEDM.
Our particular interest in JC3IEDM is its use as the basis for several ontologically-based
reasoning applications that assist in establishing situation awareness [3,4]. The first step in
making this happen is the conversion of JC3IEDM into the Web Ontology Language OWL [5].
We demonstrated the feasibility of this task in an earlier effort that set out to capture a subset of
the (then) C2IEDM sufficient for representing OTH-T GOLD (Over-The-Horizon Targeting)
Track data [6]. In that project we manually translated portions of the data model into OWL,
which was reasonable given the scope of that problem. We recently became interested in the
much more challenging task of developing a complete OWL translation JC3IEDM. Given there
are 289 entities, 396 relationships between entities, 1729 entity attributes and nearly 7000 value
codes, plus the fact that the MIP data model is updated on a regular (one might say “aggressive”)
basis, this task was clearly in need of automation. This paper describes the methods used to
translate JC3IEDM 3.0 into OWL DL using a series of XSLT scripts. We believe this work will
be of interest to others for the following reasons:
1. We are making the translated JC3IEDM OWL ontology freely available for others to use;
itvis available for downloading at http://www.vistology.com/ont/2007/JC3IEDM3.1. This
paper servers as both an announcement of its availability and as an explanation of why
we chose to translate the various aspects of the data model as we did
2. The translation is performed using the XML document that specifies the JC3IEDM
ERwin data model definition; due to the use of this XSD-defined document, other ERwin
based data models can be translated into OWL using a similar strategy (and in many
cases, the code) that is described here
3. There are a number of interesting questions that arose during the process of developing
the translation, some of which are worth further discussion and contemplation by a larger
community
This paper begins with an introduction to the JC3IEDM data model and the ERwin XML
definition document. Explanations are then given for each of the translation scripts used to
transform Entities, Attributes, Relationships and Codes. We conclude with a discussion of some
open issues and questions.
2 The JC3IEDM
JC3IEDM is a relational data model that can be viewed from one of three perspectives:
conceptual, logical and physical. The conceptual model is an abstract view of the important
high-level data elements (e.g., ACTIONS, PERSONNEL, FACILITIES, etc.) and is useful
for understanding the scope and general content of the data model. The logical model adds all of
the more specific details needed to understand the logical connections between the elements
while striving to be a model accessible to processing by humans. The physical model is
concerned with the information necessary to implement the data model as a database schema; it
extends the logical model with information about keys and redundant data used for efficiency
purposes and is implemented using ERwin™ Version 3.5.2 software from Computer Associates
International, Inc. The model of most interest to us is the logical model since we are interested
in capturing the logical semantics of the model with no concern for its realization as an instance
of a database schema. We use the conceptual model in this section to provide a brief overview
of its contents.
Fig 1. JC3IEDM Independent Entities. (Copied from [2])
Fig 1 shows (in IDEF1X [7] notation) all of independent entities found at the highest level of
JC3IEDM along with the conceptual relationships between them. These relationships represent
conceptual aggregates of finer relationships and additional entities found in the logical model.
Some things to note here include:
1) Most of these Entities are sub-classed in the logical model and in some cases the hierarchy
of classes can be relatively deep (i.e., greater than 5).
2) There are two high-level object classes, OBJECT-TYPE and OBJECT-ITEM. OBJECT-
TYPE is used for more static information associated with an entire class of objects (e.g.,
the track width of an Abrams Tank, its maximum speed, etc.) whereas OBJECT-ITEM is
used to capture information specific to individuals (e.g., the speed of a tank, the fact it has
5 gallons of gas, etc.).
3) The OBJECT-TYPE and OBJECT-ITEM entities have parallel class/subclass hierarchies
as shown (to a depth of one) in Fig 2. The hierarchies do not fully mirror each other,
particularly deeper within the structures, but they are closely related.
4) REPORTING-DATA represents pedigree information that is used extensively to identify
when, from whom and how reliable/credible a specific piece of information is.
For more detailed information about the JC3IEDM conceptual and logical models the reader is
referred to the following online MIP documents: JC3IEDM Overview [8], JC3IEDM Main [2],
JC3IEDM Logical Model Diagram [9].
Fig 2. Conceptual relationship between OBJECT-TYPE and OBJECT-ITEM (Copied from [2])
3 ERwin XML Definition
The JC3IEDM 3.1 release comes complete with thorough documentation, a Microsoft Access
database and an XML distribution package that includes code and support files for generating (in
terms of XML Schemas) both an object-oriented mapping of the data model to XML and a
relational mapping of the data model to XML. These XSD are generated from an ERwin XML
definition document that contains the entire model for JC3IEDM (i.e., both logical and physical
views). It is this XML definition document that we used as the basis for our translation effort.
For our purposes we are only interested in the logical aspects of the ERwin model. The
following abstract code based on the ERwin XML definition document shows the structure of the
relevant fragments of the document that our translation scripts focus on.
<ERwin4>
<Entity_Groups>
<Entity>
<EntityProps/>
<Attribute_Groups>
<Attribute/>
</Attribute_Groups>
</Entity>
</Entity_Groups>
<Domain_Groups>
<Domain/>
<Domain_Groups>
<Relationship_Groups>
<Relationship/>
</Relationship_Groups>
<Validation_Rule_Groups>
<Validation_Rule/>
</Validation_Rule_Groups>
</ERwin4>
All of the elements of interest are located within five named element groups:
Entity_Groups, Attribute_Groups, Relationship_Groups, Domain_Groups
and Validation_Rule_Groups. The elements in the Entity_Group include specific
Entities that will become owl:Classes along with their corresponding
Attribute_Groups which in turn contain the specific Attributes for the corresponding
Entities; each of these Attributes will become either an owl:ObjectProperty or an
owl:DatatypeProperty. The Relationship_Groups contain the Relationships that can
occur between Entities, each of which will be turned into owl:ObjectProperties. The
Domain_Groups in conjunction with the Validation_Rules_Groups contain the values
that are permitted for the domains and ranges of the Attributes; some of these correspond to
specific Codes that imply specific meaning and will be captured within enumeration classes
within OWL [10].
4 Entity to Class Translation
The script to translate entities into classes separately processes each Entity element in the ERwin
definition document. It uses the Name attribute of the Entity element for the rdf:ID of the
owl:Class and selects the EntityProps/Name element textNode to use as the rdfs:label of the
class1. The EntityProps/Definition element’s contents is used as the rdfs:comment for the class as
it provides a English text description of what the class represents. All Entities are defined as
owl:Classes using the following minimal format (which borrows from XSLT’s convention
of using {} to indicate references to XPATH addresses within the current element):
<owl:Class rdf:ID=”{@Name}”>
<rdfs:label>{EntityProps/Name}</rdfs:label>
<rdfs:comment>{EntityProps/Definition}</rdfs:comment>
</owl:Class>
1 The Name attribute and the EntityProps/Name element are always equal in the current JC3IEDM 3.1 definition but there is no
explicit reason for this to remain the case in future releases.
For example, the following code is generated when @Name=”ACTION”,
EntityProps/Name=”ACTION” and EntityProps/Definition is equal to the text
shown in the rdfs:comment element:
<owl:Class rdf:ID="ACTION">
<rdfs:label rdf:datatype="&rdf;Literal">ACTION</rdfs:label>
<rdfs:comment>An activity, or the occurrence of
an activity, that may utilise resources and may
be focused against an objective.
</rdfs:comment>
</owl:Class>
Many of the Entities exist as sub-classes of at most one other entity (i.e., the data model is
represented as a collection of trees). An Entity is the subclass of a parent Entity if it exists as a
Valid_Value for the parent Entity’s category-code Attribute. Since each Entity has at most
one parent, it is possible to search to see if there is a Validation_Rule that has the child Entity
within its list of Valid_Values and then look up the Entity that has an Attribute that has a
Parent_Domain that uses that Validation_Rule. In shorthand XSLT code, this reads as follow:
ruleID="//Validation_Rule[Valid_Value_Groups/Valid_Value/Valid_V
alueProps/Display=$entityName]/@id"
domainID="//Domain[DomainProps/Validation_Rule_Ref=$ruleID]/@id”
parentEntityName="//Entity[Attribute_Groups/Attribute/AttributeP
rops/Parent_Domain=$domainID]/@Name"
An Entity for which the parentEntityName is non-null is designated to be a
owl:subClassOf the parent Entity.
Unfortunately, all classes of objects are not defined as entities – only those that have additional
Attributes or Relations appear as Entities and all others are represented by values of category-
codes. A category-code value is a string the uniquely identifies a sub-class of an Entity – that is
to say, the string is unique among the subclass names for a particular Entity, but it may be used
as a subclass name for more than one Entity. Entities that have subclasses defined in this way
will have an Attribute whose name is the entity’s name in lowercase with the string “category-
code” appended to it, e.g.object-type-category-code” for the entity OBJECT-TYPE.
Furthermore, there will be a Domain for this Attribute with the same name. To define all of the
subclasses defined by this Domain it is necessary to iterate over all of the Domain’s
Valid_Values as defined by its Validation_Rule, and for each value that is not the
name of a defined Entity (category-code values include all subclasses, both those that are actual
Entities and those that are not) a new owl:Class is created exactly as described above for
Entities but in this case the parent class is already known and so the new class is always defined
to be a owl:subClassOf its parent.
There is one slight complication to the construction of these category-code classes. As indicated
above, it is possible for a category-code string to be used as the name for a subclass in more then
one category-code Attribute. This means that it is not possible to use the category-code value
alone as the class’s rdf:ID, owing to the requirement that rdf:ID be unique within a single
ontology. A test is therefore performed to see if there is an earlier use of the category-code
string by another Entity and if so, the name of the parent class is prepended to the string to
construct the class’s rdf:ID. We could have simplified the code by always prepending the
parent class name but in striving to make the rdf:IDs as human-friendly as possible we felt it
was better to leave the parent class names off whenever possible.
5 Attribute to Property Translation
Every Attribute element in the JC3IEDM definition is processed and turned into either an
owl:DatatypeProperty or an owl:ObjectProperty provided its @Name attribute
does not contain any of the following strings: -index, -ent_cat_code, -
update_seqnr. If the @Name attribute contains “-category-code” then it will be handled by
the script that translates Entities (as described in the preceding section) and its values will be
turned into owl:Classes. The -id Attributes used in the physical model are not necessary in
the OWL ontology as they are taken care of by each instance’s unique rdf:ID attribute. The -
indexes and ent_cat_code Attributes are part of the physical model and are thus excluded.
The update_seqnr Attributes are used in the JC3IEDM model for “replication management”
and specify the relative seniority of a data element; since this information is not relevant to the
representation of the data in OWL these Attributes are ignored.
Attributes can represent either owl:ObjectProperties or owl:DatatypeProperties.
Attributes that range over a category-code are identified as owl:ObjectProperties
because all category code’s are translated into owl:Classes. The range for these properties
are defined by the Attribute’s corresponding Parent_Domain; the name of the owl:Class
for the range is obtained by removing hyphens from the Domain name and capitalizing the first
letter of each hyphenated substring. For example, the Domain name angle-precision-
code becomes the class name AnglePrecisionCode.
For Attributes corresponding to owl:DatatypeProperties it is necessary to do some
further processing to determine which XSD datatype should be used for the rdfs:range.
Datatype information is either encoded at the level of the AttributeProps or at the level of
the Domain specified by the Attribute’s Parent_Domain. If the former is specified it is
assumed to take precedence over the later. In either case the value of the Datatype element will
match to one of the patterns in Table 1 and the corresponding XSD datatype is used as the range:
Table 1: Datatype Mapping
Datatype value XSD Datatype
--------------------------- ------------
NUMBER(*,*) xsd:decimal
NUMBER(*) xsd:integer
CHAR(*) | VARCHAR(*) | BLOB xsd:string
DATE xsd:dateTime
There is one exception to the handling of Attributes as just described. An Attribute that ends
with the string “-dimension” does not always have an explicit Datatype associated with itself
or with its Parent_Domain. In all of these cases the value should be a numeric value (at least
sometimes a number with some decimal places) and xsd:decimal is the XSD datatype that is
used.
The following shows a typical DatatypeProperty produced by the translation script:
<owl:DatatypeProperty
rdf:ID="action-aircraft-employment-ingress-direction-angle">
<rdfs:comment>The numeric quotient value that represents the
portion of a whole OBJECT-ITEM that is estimated in
a specific ACTION-EFFECT-ITEM to have the result
specified in ACTION-EFFECT.
</rdfs:comment>
<rdfs:domain rdf:resource="#ACTION-AIRCRAFT-EMPLOYMENT"/>
<rdfs:range rdf:resource="&xsd; decimal"/>
</owl:DatatypeProperty>
6 Relationship to ObjectProperty Translation
Every Relationship in JC3IEDM is mapped into a an owl:ObjectProperty having a unique
rdf:ID. Because the data model often uses relationship names for multiple relationships (e.g.,
has, is-the-object-of, etc.) it was necessary to either define new classes consisting of
the union of the multiple classes that these relations used for their domains and ranges, or derive
a naming scheme that would guarantee unique relation names. The first option was deemed
undesirable because it would have meant the loss of semantic content and would have permitted
relations to be formed between pairs of classes that could not occur with JC3IEDM. The second
option does not suffer from this problem but it results in names that are much longer and that are
not always as easy to read and write (from a human processing perspective). A simple but
perfectly disambiguating approach whereby the rdf:ID for an owl:ObjectProperty is
created by pre-pending the domain class with the relation name and then appending the range
class was unsatisfactory to the authors as the names became exceedingly long (e.g.
OPERATIONAL-INFORMATION-GROUP-ORGANISATION-ASSOCIATION-has-
OPERATIONAL-INFORMATION-GROUP-ORGANISATION-ASSOCIATION-STATUS). To
remedy this we decided to turn the class names into abbreviations using the first letter from each
of its hyphenated strings (e.g. OIGOA-has-OIGOAS). Unfortunately, there where a few cases
where different relations resulted in the same name identifier resulting from the identical
abbreviations, for example OBJECT-ITEM-AFFILIATION and OBJECT-ITEM-
ASSOCIATION. We contemplated augmenting our script to detect such cases and then
disambiguating the relation names by adding an additional character to one of the identifiers.
But given that there was only one case in which there was a problematic clash in class name
abbreviations, we opted to simply catch this case in the XSLT script and force the abbreviation
for OBJECT-ITEM-AFFILIATION to be OIAf instead of OIA. It is possible that future
releases of JC3IEDM may introduce new class names that will cause additional name clashes but
since we always intend to automatically check for the consistency of the generated OWL
ontology we are sure to catch these cases and patch them, or reconsider a more automated fix.
In addition to defining the rdf:ID, rdfs:domain and rdfs:range for each
owl:ObjectProperty defined by each relation it was also possible for a relation to be an
inverse of some other relation and to have a cardinality constraint. The inverse was easy to
identify from the RelationshipProps/Child_To_Parent_Phrase; all that was
required to obtain the unique rdf:ID was to apply the same naming convention as for the
relation’s rdf:ID except for swapping the domain for the range and the range for the domain
and using the Child_To_Parent_Phrase for the relation name.
Cardinality constraints were also easy to determine by testing for the presence of the Child-
cardinality-code optionally specified in the Relationship_Props. The possible
values for this code in the current release of JC3IEDM are:
Table 2: Cardinality Codes
Code Meaning OWL implications
---- ----------------- ------------------
PM one or more minCardinality=”1”
ZO zero or one FunctionalProperty
ZM zero, one or more nothing
In cases where the code ia “ZO”, an rdf:type of owl:FunctionalProperty is added to
the property, as in the following example:
<owl:ObjectProperty rdf:ID="AT-is-used-in-the-definition-of-
FC">
<rdfs:domain rdf:resource="#AMMUNITION-TYPE"/>
<rdfs:range rdf:resource="#FIRE-CAPABILITY"/>
<rdf:type rdf:resource="&owl;FunctionalProperty"/>
</owl:ObjectProperty>
When the code is “PM” an owl:Restriction is created for the domain class specifying a
minCardinality=“1” on the relevant owl:ObjectPropety. Here is an example of the
translation of a relation with an inverse relation and a minimum cardinaility of 1:
<owl:ObjectProperty rdf:ID="CA-has-CAS">
<rdfs:domain rdf:resource="#CONTEXT-ASSOCIATION"/>
<rdfs:range rdf:resource="#CONTEXT-ASSOCIATION-STATUS"/>
<owl:inverseOf rdf:resource="#CAS-is-ascribed-to-CA"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:ID="CAS-is-ascribed-to-CA"/>
<owl:Class rdf:about="#CONTEXT-ASSOCIATION">
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#CA-has-CAS"/>
<owl:minCardinality
rdf:datatype="&xsd;nonNegativeInteger">1
</owl:minCardinality>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
7 Codes to Enumeration Classes Translation
Many of the Attributes in the JC3IEDM range over values that are codes having corresponding
text descriptions of their meanings. These codes are organized into Domains that have
associated Validation_Rules to define the set of Valid_Values. It would be possible to
write an XSLT script to run through the Domains and create an enumeration class in OWL that is
populated with instances derived from the Validation_Rules. The MIP distribution, however,
also has these codes organized within an XSD file making them even easier to process: for each
simpleType an owl:Class is created using the simpleType/@name as the rdf:ID and
the class is defined as being owl:oneOf a Collection of class instances, one instance
corresponding to each restriction/enumeration element, the rdf:ID of which is set to
the restriction/enumeration/@value. This would be all that was required except for
the recurring problem of name clashes: many codes are used repeated as values in multiple
Domains. Our work-around for this situation is to count the number of previous occurrences of
the current code and if it is greater than zero we append the count to the name of the class
rdf:ID. The following is an example of a very short Code enumeration class:
<owl:Class rdf:ID="ActionTaskOvertCovertCode">
<rdfs:comment> The specific value that represents the
property of an ACTION-TASK to be overt or covert.
</rdfs:comment>
<owl:oneOf rdf:parseType="Collection">
<ActionTaskOvertCovertCode rdf:ID="COVERT">
<rdfs:label>COVERT</rdfs:label>
<rdfs:comment>
The ACTION-TASK is to be conducted secretly.
</rdfs:comment>
</ActionTaskOvertCovertCode>
<ActionTaskOvertCovertCode rdf:ID="OVERT">
<rdfs:label>OVERT</rdfs:label>
<rdfs:comment>
The ACTION-TASK is to be conducted openly.
</rdfs:comment>
</ActionTaskOvertCovertCode>
</owl:oneOf>
</owl:Class>
8 Discussion
The JC3IEDM OWL ontology produced by our translation scripts was split up across five files:
one each for the code to represent Entities, Attributes, Relations and Codes plus one top level file
to import the other four. These files were submitted to ConsVISor – VIStology’s free
RDF/OWL consistency checking Web service [11],[12],[13] -- and the ontology passed with no
detected errors or warnings.
To indicate the relative size of the JC3IEDM OWL ontology and the code used to generate it, we
provide in Table 3 a summary of quantitative characteristics such as the number of lines of code,
the number of classes, the number of various types of properties and the number of unique
rdf:IDs.
Table 3: Quantitative Summaries
Element/Attribute
Quantity
Lines of XSLT code
470
Lines of OWL code
>64,000
rdf:IDs
12,527
All Classes
1561
Enumeration Classes
323
All Properties
2480
ObjectProperties
1101
DatatypeProperties
379
InverseProperties
139
minCardinality=1
13
FunctionalProperties
1111
The resulting ontology is clearly very large and would likely be a challenge to the processing
capabilities of most RDF/OWL reasoners. For our purposes, only a small subset of the ontology
is ever necessary for a reasoning task and we will likely be implementing a “partial import”
functionally similar to that proposed in [14].
Even though the ontology is quite large it is fair to ask how much of the actual semantics of the
domain has been capture? In virtually all cases an element in the model is accompanied by a
Definition that provides English text description of its meaning. It is clear from simple
observation of the samples shown in this paper that there is much more meaning in these
Definitions than is captured by the relationships among the classes or the restrictions placed on
the use of properties. It is not at all clear, however, how one would begin the effort to extend the
semantic content of the ontology and any such effort would be ad hoc without some way of
validating the extensions with the authors of the text definitions. This is perhaps the most
significant open problem related to the use of our proposed JC3IEDM OWL ontology.
One might argue that the class hierarchies reflect important structural relationships that have
direct relevance to reasoning about inherited characteristics of instances. Unfortunately part of
this type of reasoning which is built into OWL cannot be fully leveraged due to the parallel
hierarchies of OBJECT-TYPE and OBJECT-ITEM. If an instance of a MATRIEL (a subclass
of OBJECT-ITEM) has the property is-classified-as (in the OWL ontology this
property is OI-is-classified-as-OIT) whose value than points to an instance of a TANK (a subclass
of WEAPONRY-TYPE, EQUIPMENT-TYPE, MATERIAL-TYPE, and finally OBJECT-
TYPE) the MATERIEL instance will not “automatically” inherit the properties of the TANK
instance, even though this is clearly the intention. This failure in hierarchical reasoning results
because OBJECT-TYPE and OBJECT-ITEM are related through another class (OBJECT-
ITEM-TYPE) via the is-classified-as property rather than via the owl:subClassOf
property. To obtain this form of is-a reasoning between OBJECT-ITEMS and OBJECT-TYPES
will require going outside of OWL (e.g., implementing the logic in a rule language such as
SWRL); alternatively one might contemplate the merging of the two parallel hierarchies (as
suggested in [6]) but this would come at a cost as described in the next paragraph.
Although the use of parallel OBJECT hierarchies throws a monkey wrench into the use of OWL
semantics it affords the feature of being able to change the type of an object overtime and in fact
it is possible to have an instance be associated with multiple disjoint types at once. This
capability is important when dealing with “reported” type information, such as when an enemy
UNIT is reported to be a “T80 Tank Battalion” by one spot report and a “Artillery Regiment” by
some other report. If it was necessary, in this case, to force the UNIT to be an instance of both
classes this could result in an inconsistency. In JC3IEDM, the UNIT is merely reported as being
of some OBJECT-TYPE by some reporting entity through a REPORTING-DATA instance that
specifies a specific time and data source. In this manner, all reported information is “reified” via
their REPORTING-DATA instances making it possible for reported data to be different at
different times or even be incompatible with other reported data without violating OWL’s
monotonic imperative.
9 Conclusions
This paper presented the authors’ efforts to automatically translate JC3IEDM into an OWL
ontology for use by systems that reason about C3 and situation awareness. Four XSLT scripts
where written to convert 1) Entities into owl:Classes, 2) Attributes into
owl:DatatypeProperties and owl:ObjectProperties, 3) Relationships into
owl:ObjectProperties and 4) Codes into OWL enumeration classes. The biggest challenges were
encountered in devising automated means for arriving at nearly 8000 unique rdf:ID’s. In the
discussion section a number of issues were raised, in particular, the shear size of the ontology,
the question of semantic content in the ontology relative to the meaning encoded in the text
Definitions of the Entities, Attributes and Codes, the inability to inherit from the OBJECT-
TYPE hierarchy, the advantage of reifying reported information through the use of the
REPORTING-DATA class and, finally, the potential use of this work for translating other ERwin
based data models.
The translated JC3IEDM 3.1 OWL ontology is available for downloading at
http://www.vistology.com/ont/2007/JC3IEDM3.1.
Acknowledgments. The work described in this paper was partially supported by U.S. ONR
STTR Contract Number N00014-05-C-0367 and U.S. Army SBIR Contract Number W15P7T-
05-C-T204.
References
1 Multilateral Interoperability Programme. http://mip-site.org/
2 MIP, Joint C3 Information Exchange Data Model (JC3IEDM Main), Greding, Germany,
December 2005.
http://mip-site.org/publicsite/Baseline_3.0/JC3IEDM-
Joint_C3_Information_Exchange_Data_Model/JC3IEDM-Main-UK-DMWG-
Edition_3.0_2005-12-09.pdf
3 C. Matheus, M. Kokar, K. Baclawski and J. Letkowski, An Application of Semantic Web
Technologies to Situation Awareness. In Proceedings of the 4th International Semantic Web
Conference, ISWC 2005, Galway, Ireland, November, 2005.
4 C. Matheus, M. Kokar, K. Baclawski, J. Letkowski, C. Call, M. Hinman, J. Salerno and D.
Boulware, SAWA: An Assistant for Higher-Level Fusion and Situation Awareness. In
Proceedings of SPIE Conference on Multisensor, Multisource Information Fusion, Orlando,
FL., March 2005.
5 W3C, OWL Web Ontology Language. http://www.w3.org/TR/owl-features/.
6 E. Dorion, C. Matheus and M. Kokar, Towards a Formal Ontology for Military Coalitions
Operations. In Proceedings of the 10th International Command & Control Research and
Technology Symposium, McLean, VA, June 2005.
7 MIP, JC3IEDM Annex I: Summary of IDEF1X Data Modelling Methodology and Notation.
Greding, Germany, December 2005.
8 MIP, JC3IEDM Overview, Greding, Germany, December 2005.
http://mip-site.org/publicsite/Baseline_3.0/JC3IEDM-
Joint_C3_Information_Exchange_Data_Model/JC3IEDM-Overview-UK-
DMWG_Edition_3.0_2005-12-09.pdf
9 MIP, JC3IEDM Model Diagram. Greding, Germany, December 2005. http://mip-
site.org/publicsite/Baseline_3.0/JC3IEDM-
Joint_C3_Information_Exchange_Data_Model/JC3IEDM-MODEL%20DIAGRAM-
Edition_3.0_2005-12-09.pdf
10 W3C Working Group Note. Representing Specified Values in OWL: "value partitions" and
"value sets" Rector, A (Ed.), 17 May 2005.
http://www.w3.org/TR/swbp-specified-values/
11 The ConsVISor Web Service for checking RDF/OWL ontologies.
http:www.vistology.com/consvisor
12 K. Baclawski, M. Kokar, R. Waldinger and P. Kogut, Consistency Checking of Semantic
Web Ontologies. In Proceedings of the First International Semantic Web Conference
(ISWC)}, Lecture Notes in Computer Science, LNCS 2342, Springer, pp. 454--459, 2002.
13 K. Baclawski, C. Matheus, M. Kokar, J. Letkowski and P. Kogut, Towards a Symptom
Ontology for Semantic Web Applications. In Proceedings of Third International Semantic
Web Conference, Hiroshima, Japan, pp. 650-667, November, 2004.
14 Kendall Grant Clark, Bijan Parsia, Bryan Thompson, Bradley Bebee, A Semantic Web
Resource Protocol: XPointer and HTTP. In Proceedings of the Third International Semantic
Web Conference, Hiroshima, Japan, pp. 564-575, November 2004.
Christopher J. Matheus is Chief Technology Officer at VIStology, Inc. He has more than
twenty years of experience and expertise in the areas of semantic web technologies, artificial
intelligence, interactive Internet applications, machine learning/knowledge discovery and
technology management. His prior experience includes R&D positions at Oak Ridge National
Laboratories and GTE Laboratories (now Verizon Technologies) as well as management and
product R&D roles with a number of Boston-area, technology-based start-up companies. Dr.
Matheus has more than forty technical publications, is a Leslie Warner Technical Achievement
Awardee and is a former Thomas J. Watson Fellow. Chris obtained his M.S. and Ph.D. degrees
in Computer Science from the University of Illinois at Urbana-Champaign and holds a B.A. in
Physics from Lawrence University of Wisconsin.
Brian Ulicny is a Senior Scientist at VIStology, Inc. He has over ten years of experience in
applied research at the intersection of computational linguistics, machine learning, and
information retrieval/extraction. He has held R&D positions at Lycos, Ask Jeeves, Lernout &
Hauspie, Inso, and Quarterdeck Corporation. He has frequently presented at industrial and
academic seminars and conferences and holds a US patent. He completed his Ph.D. at MIT's
Department of Linguistics and Philosophy in 1993.
... In this paper, we propose an ontology-based integration situation awareness model that integrates the concepts of SAW-CORE into the elements of the JC3IEDM-OWL ontology [6]. ...
... Certain attributes, such as Position, would be modelled by dynamic systems that might themselves generate internal EventNotices to update the attribute values, with some lesser degree of certainty, until new external sensory information arrives. 4 The JC3IEDM-OWL ontology VIStology 5 developed a JC3IEDM-OWL ontology that comprises over 7900 elements (OWL classes, properties and their instances) from the JC3IEDM ERWIN specification [6]. The JC3IEDM-OWL ontology can act as the basis for providing situation awareness in C4ISR systems. ...
... Five named element groups classify all of the elements of interest [6]: (i) Entity_Group: this group includes specific entities that will become OWL classes along with their corresponding Attribute_Group; (ii) Attribute_Group: this group contains the specific attributes (OWL object properties or OWL datatype properties) for the corresponding entities; (iii) Relationship_Group: this group includes the relationships that can occur between entities, each of which will be turned into OWL object properties; (iv) Domain_Group; and (v) Validation_Rule_Group. The Domain_Group in conjunction with the Validation_Rules_Group contains the allowed values for the domains and ranges of the attributes. ...
Conference Paper
Full-text available
Sharing of situation awareness is considered a fundamental capability for C4ISR systems, including decision support systems. However, the current evolution of information and communication technology stress this need even further, because of the fast changing environment and the need to perceive, analyse and understand a huge amount of data. The adoption of adequate tools and technologies to increase proper situation awareness is required. The SAW-CORE Ontology formalizes the knowledge associated to situation awareness enabling operators to increase good decision-making and good performance. On the other hand, the JC3IEDM is a data model aimed at providing interoperability among heterogeneous C2 systems. In this context, this paper presents the integration of the SAW-CORE Ontology and the JC3IEDM OWL Ontology using mappings in order to provide high-level information fusion for situation awareness in C4ISR systems. This allows us to approach C4ISR situation awareness with reasoning capabilities from an ontological perspective in military missions. For this purpose, SAW-CORE constructs are integrated into the JC3IEDM ontological constructs.
... cardinality relationships) oraz relacji nadtyp/podtyp. Szczegółowe reguły transformacji oraz uzasadnienie ich wyboru zamieszczone zostało w pracach [9], [11]. ...
Chapter
Full-text available
Streszczenie. Gwałtowny rozwój technologii informatycznych, a przede wszystkim mechanizmów komunikacyjnych pozwolił na budowę nowych koncepcji prowadzenia działań militarnych, zwanych operacjami sieciocentrycznymi (ang. Network Centric Warfare). Koncepcje zdefiniowane w tej doktrynie zakładają szerokie wykorzystanie mechanizmów przetwarzania informacji w celu osiągania przewagi decyzyjnej na polu walki, co prowadzi do znaczącego zwiększenia efektywności prowadzonych działań. Narzędziami w tym procesie stają się sieci sensoryczne, efektywne mechanizmy sieciowe oraz systemy wspomagania decyzji pozwalające na budowania świadomości sytuacyjnej, a w konsekwencji szybsze i dokładniejsze podejmowanie decyzji. Przepływy informacyjne w tak rozbudowanych heterogenicznych systemach wymagają mechanizmów pośredniczących zapewniających interoperacyjność nie tylko na poziomie łącza danych, ale przede wszystkim w obszarze semantyki danych. Właśnie w tej dziedzinie autor stosuje ontologie oraz metody je wykorzystujące. W ramach opisywanych zadań badawczych wyróniono konstrukcję modelu dziedzinowego pola walki, mechanizmy mapowania symboli taktycznych oraz algorytmy identyfikacji sytuacji decyzyjnej. Słowa kluczowe. modelowanie pola walki, ontologia, mapowanie semantyki, fuzja danych, COP, świadomość sytuacyjna, wnioskowanie, logika opisowa Wstęp Operacje sieciocentryczne (ang. Network Centric Warfare, Network Enabled Capabilities) [4] są głównym strumieniem badań determinującym przyszłe trendy działań na polu walki. Wykorzystują one najnowsze techniki rozproszonego przetwarzania informacji dostarczanej dowódcom na wszystkich szczeblach dowodzenia wykorzystywane do budowania świadomości sytuacyjnej i uzyskiwania przewagi informacyjnej a w konsekwencji przewagi decyzyjnej. Doktryna NEC zawiera zestaw reguł oraz wytycznych wykorzystywanych do planowania, prowadzenia i organizacji działań zbrojnych. Głównym zadaniem wojskowych systemów informatycznych jest wspomaganie dowodzenia oraz kierowania działaniami. Te zadania wymagają bogatej wiedzy dziedzinowej, przejawiającej się w strukturach
... Representations of this model in both ERwin and XML exist. In the past, we have developed an automatic translator for JC3IEDM (Matheus and Ulicny 2007), which takes an XML representation of JC3IEDM and converts it to OWL. ...
Chapter
Full-text available
With the recent proliferation of service-oriented architectures (SOA), cloud computing technologies, and distributed-interconnected systems, distributed fusion is taking on a larger role in a variety of applications―from environmental monitoring and crisis management to intelligent buildings and defense. Drawing on the work of leading experts around the world, Distributed Data Fusion for Network-Centric Operations examines the state of the art of data fusion in a distributed sensing, communications, and computing environment.
... However, the Looting and Robbery ACTION-EVENTs in this JC3IEDM ontology do not capture the semantic cases necessary for representing these events. We have added cases including perpetrator, theme, location and time to our own OWL representation of JC3IEDM. 5 Currently, this is based on the Java Message Service [11], but it can be easily swapped with other publish/subscribe systems, such as the Data Distribution Service [12]. ...
Article
The Knowledge Management Framework (KMF) of the US Air Force 45th Space Wing's Knowledge Management Initiative (KMI) is a semantic service-oriented architecture that provides Eastern Range stakeholders with a semantically unified, web-based view of distributed range information—a Single Integrated Range Picture—through a virtual, federated, ontology-based enterprise model. Design time activities include the creation of physical data services and mapping of those physical data services to logical data services corresponding to the concepts described in an OWL-DL[1] ontology. The physical data services aggregate and normalize information stored within federated relational databases and XML[2] files. Runtime activities are managed through a single web service providing methods for ontology discovery, ontology inspection and retrieval of concept instances from federated data sources. We present lessons learned and the technology currently under development to support ontology-driven EII, reasoning, and search. We finish by discussing how these lessons have reshaped our thinking about the role of semantics in enriching information to make it more meaningful for stakeholders, and the impact of these new concepts on our evolving KMF architecture.
... This implies potentially developing more formal representations of existing standards. The validity of this approach is perhaps confirmed by parallel efforts to generate ontologies for the JC3IEDM, (see for example [24][25]). ...
Conference Paper
Full-text available
Experience in recent conflicts indicates the employment of Unmanned Vehicle Systems (UVS) will continue to grow in coming years. New UVS capabilities involve greater complexity of payloads and interactions within unmanned vehicle (UV) subsystems, among UVS and between UVS and other systems, including Command and Control (C2) systems. This introduces additional requirements for UV operators. In some situations UV operators easily can be faced with cognitive information overload, while increasing UVS complexity and future concepts of employment such as single-operator multiple-UV operation require increased operator attention. Abstract In order to attain the required level of operator efficiency, it is necessary to introduce higher levels of autonomy within the UVS subsystems in conjunction with the use of intelligent operator interfaces. This will allow for greater flexibility and effectiveness in supporting future mission requirements wherein UVS operator interfaces are able to reduce the work load, and allow operators to function at higher levels of abstraction.
... JC3IEDM is not an ontology but a data model. There have been efforts to construct an OWL ontology from JC3IEDM using XSLT[20]. However, the Looting and Robbery ACTION-EVENTs in this JC3IEDM ontology do not capture the semantic cases necessary for ...
... Currently, two complementary approaches are adopted. The first one is proposed by [12] and it creates a single ontology by using automatic procedures able to translate entities of the JC3IEM model (Joint Command and Communication Information Exchange Data Model), [15] as ontological entities. The translation is carried out thanks to transformation rules established by domain experts. ...
Article
Full-text available
In highly dynamic and heterogeneous environments, providing commanders with decision making support requires a through understanding of processes involved and the development of underlying knowledge models upon which reasoning mechanisms can be based. This paper presents the construction of ONTO-CIF, a formal ontology created to improve intelligence analysis. ONTO-CIF was developed by following a methodology based on textual documents, which allows us to accomplish a satisfactory accuracy level in terms of domain coverage while remaining on a manageable scale size. The paper also illustrates several semantic-based scenarios to support intelligence analysis, a central task of the military application field.
Article
Full-text available
In the cyberoperations community there is a commonly accepted starting point for describing cyberspace as comprising of multiple planes through which information flows. However, the model is not a tool that facilitates planning and executing cyberoperations. Tools do exist in the form of technical cybersecurity ontologies. At the moment the link between technical ontologies, that are the tools of experts, and the operational planning process is limited. These technical ontologies provide automated information that would support operational planning. At the moment cybersecurity experts translate the information that military professionals need, which may cause insufficiencies or distortions in communication or cause inconsistencies in the planning process. This paper presents the ongoing work of developing a model of cyberspace in the form of a core ontology. The ontology describes the flow of digital information between persons and the enabling technology as well as geographical data. It is intended as a tool that supports operational planning and decision-making in and through cyberspace, by enabling automation and reasoning. The model is created using the well-established Constructive Research Approach (CRA) methodology, and is developed on earlier research. CRA consists of six phases in which (1) the problem is defined, (2) an understanding of the topic is generated, (3) a solution (model) is constructed which then is (4) demonstrated. Then the models (5) theoretical connections are presented and the (6) scope of applicability is assessed. The challenges of developing an ontology of cyberspace as part of the third phase of the methodology are in focus. The ontology serves as an operational core ontology, aiming to link cybersecurity domain ontologies to the DOLCE+DnS Ultralite (DUL) foundational ontology. The ontology is based on research in Cyberspace Geography and Cyber Terrain. No earlier attempts at creating a core ontology of cyberspace grounded in a foundational ontology, based on these concepts, were found. Overall, the use of reference ontologies in cyberspace research is scarce and few are grounded in a foundational ontology. The starting point for the ontology is a model of cyberspace comprising of six layers, which are the 1) geographic layer, 2) physical network layer, 3) logical network layer, 4) socio-organizational layer, 5) virtual persona layer and finally the 6) persona layer. The model was complemented with levels describing action and information and partially excluded the outer levels 1 and 6, which were directly linked to the DUL foundational ontology.
Article
Command and Control (C2) is an essential operating capability in which the commander exercises authority over assigned forces to accomplish the mission. Traditionally, military C2 was organized hierarchically with the commander issuing directives top-down and subordinates reporting progress upwards. Over the past two decades, developments in digital telecommunication technology have made it possible to link distributed computer systems into a network. These developments can be exploited to delegate decision-making authority down the organizational hierarchy. Subordinates can be empowered to share information and synchronize their actions with their peers, speeding up the response to changes in the situation. This is known as Network-Enabled Capabilities or information-age C2. Experience has shown that multiple factors must co-evolve to gain the full benefit of transforming C2 to become network enabled. In this chapter, the authors group these factors into five layers: geographical, physical, information, cognitive, and socio-organizational. They formalize the key entities in each layer, together with within- and across-layer relationships, into a conceptual ontology, known as the Formalized Layered Ontology for Networked C2 (FLONC). To ensure the ontology is militarily relevant, the authors show that a set of networks found in military operations can be extracted from the ontology. Finally, they compare the formalized ontology to related work on ontologies in C2. In further research, the ontology could be used in developing software to simulate and support network-enabled C2 processes. A case study based on the events of September 11, 2001 shows how this could be done.
Article
This thesis is part of the knowledge representation domain and modeling of uncertainty in a context of information fusion. The main idea is to use semantic tools and more specifically ontologies, not only to represent the general domain knowledge and observations, but also to represent the uncertainty that sources may introduce in their own observations. We propose to represent these uncertainties and semantic imprecision trough a metaontology (called DS-Ontology) based on the theory of belief functions. The contribution of this work focuses first on the definition of semantic inclusion and intersection operators for ontologies and on which relies the implementation of the theory of belief functions, and secondly on the development of a tool called FusionLab for merging semantic information within ontologies from the previous theorical development. These works have been applied within a European maritime surveillance project.
Article
Full-text available
Situation awareness involves the identification and monitoring of relationships among level-one objects. This problem in general is intractable (i.e., there is a potentially infinite number of relations that could be tracked) and thus requires additional constraints and guidance defined by the user if there is to be any hope of creating practical situation awareness systems. This paper describes a Situation Awareness Assistant (SAWA) that facilitates the development of user-defined domain knowledge in the form of formal ontologies and rule sets and then permits the application of the domain knowledge to the monitoring of relevant relations as they occur in evolving situations. SAWA includes tools for developing ontologies in OWL and rules in SWRL and provides runtime components for collecting event data, storing and querying the data, monitoring relevant relations and viewing the results through a graphical user interface. An application of SAWA to a scenario from the domain of supply logistics is also presented.
Conference Paper
Full-text available
Situation awareness involves the identification and monitoring of relationships among objects participating in an evolving situation. This problem in general is intractable (i.e., there is a potentially infinite number of relations that could be tracked) and thus requires additional constraints and guidance defined by the user if there is to be any hope of creating practical situation awareness systems. This paper describes a Situation Awareness Assistant (SAWA) based on Semantic Web technologies that facilitates the development of user-defined domain knowledge in the form of formal ontologies and rule sets and then permits the application of the domain knowledge to the monitoring of relevant relations as they occur in evolving situations. SAWA includes tools for developing ontologies in OWL and rules in SWRL and provides runtime components for collecting event data, storing and querying the data, monitoring relevant relations and viewing the results through a graphical user interface. An application of SAWA to a scenario from the domain of supply logistics is presented along with a discussion of the challenges encountered in using SWRL for this task.
Conference Paper
Full-text available
As the use of Semantic Web ontologies continues to expand there is a growing need for tools that can validate ontological consistency and provide guidance in the correction of detected defects and errors. A number of tools already exist as evidenced by the ten systems participating in the W3C's evaluation of the OWL Test Cases. For the most part, these first generation tools focus on experimental approaches to consistency checking, while minimal attention is paid to how the results will be used or how the systems might interoperate. For this reason very few of these systems produce results in a machine-readable format (for example as OWL annotations) and there is no shared notion across the tools of how to identify and describe what it is that makes a specific ontology or annotation inconsistent. In this paper we propose the development of a Symptom Ontology for the Semantic Web that would serve as a common language for identifying and describing semantic errors and warnings that may be indicative of inconsistencies in ontologies and annotations; we refer to such errors and warnings as symptoms. We offer the symptom ontology currently used by the ConsVISor consistency-checking tool, as the starting point for a discussion on the desirable characteristics of such an ontology. Included among these characteristics are 1) a hierarchy of common symptoms, 2) clear associations between specific symptoms and the axioms of the languages they violate and 3) a means for relating individual symptoms back to the specific constructs in the input file(s) through which they were implicated. We conclude with a number of suggestions for future directions of this work including its extension to syntactic symptoms.
Conference Paper
Semantic Web resources — that is, knowledge representation formalisms existing in a distributed hypermedia system — require dif- ferent addressing and processing models and capacities than the typical kinds of World Wide Web resources. We describe an approach to build- ing a Semantic Web resource protocol — a scalable, extensible logical addressing scheme and transport protocol — by using and extending ex- isting specifications and technologies. We introduce XPointer and some infrequently used, but useful features of HTTP/1.1, in order to support addressing and server side processing of resource and subresource oper- ations. We consider applications of the XPointer Framework for use in the Semantic Web, particularly for RDF and OWL resources and sub- resources. We describe two initial implementations: filtering of RSS re- sources by date and item range; RDF subresource selection using RDQL. Finally, we describe possible application to the problem of OWL imports.
Consistency Checking of Semantic Web Ontologies Towards a Symptom Ontology for Semantic Web Applications
  • The Consvisor
  • Web Service For Checking
  • Rdf Owl
  • M Baclawski
  • R Kokar
  • P Waldinger
  • Kogut
The ConsVISor Web Service for checking RDF/OWL ontologies. http:www.vistology.com/consvisor 12 K. Baclawski, M. Kokar, R. Waldinger and P. Kogut, Consistency Checking of Semantic Web Ontologies. In Proceedings of the First International Semantic Web Conference (ISWC)}, Lecture Notes in Computer Science, LNCS 2342, Springer, pp. 454--459, 2002. 13 K. Baclawski, C. Matheus, M. Kokar, J. Letkowski and P. Kogut, Towards a Symptom Ontology for Semantic Web Applications. In Proceedings of Third International Semantic Web Conference, Hiroshima, Japan, pp. 650-667, November, 2004.
SAWA: An Assistant for Higher-Level Fusion and Situation Awareness
  • C Matheus
  • M Kokar
  • K Baclawski
  • J Letkowski
  • C Call
  • M Hinman
  • J Salerno
  • D Boulware
C. Matheus, M. Kokar, K. Baclawski, J. Letkowski, C. Call, M. Hinman, J. Salerno and D. Boulware, SAWA: An Assistant for Higher-Level Fusion and Situation Awareness. In Proceedings of SPIE Conference on Multisensor, Multisource Information Fusion, Orlando, FL., March 2005.
JC3IEDM Annex I: Summary of IDEF1X Data Modelling Methodology and Notation
MIP, JC3IEDM Annex I: Summary of IDEF1X Data Modelling Methodology and Notation. Greding, Germany, December 2005.