=Paper= {{Paper |id=Vol-555/paper-6 |storemode=property |title=Referent Tracking for Command and Control Messaging Systems |pdfUrl=https://ceur-ws.org/Vol-555/paper6.pdf |volume=Vol-555 }} ==Referent Tracking for Command and Control Messaging Systems== https://ceur-ws.org/Vol-555/paper6.pdf
                  Referent Tracking for Command and Control Messaging Systems

                             Shahid Manzoor, Werner Ceusters and Barry Smith
                          Center of Excellence in Bioinformatics & Life Sciences, University at Buffalo
                                             701 Ellicott Street, Buffalo NY, 14214
                              smanzoor@buffalo.edu, ceusters@buffalo.edu, phismith@buffalo.edu.


   Abstract – The Joint Battle Management Language (JBML)            uncertain, conflicting and erroneous, either because of
is an XML-based language designed to allow Command and               misinterpretations committed by friendly agents or
Control (C2) systems to interface easily with Modeling and           falsifications introduced through counter-intelligence
Simulation (M&S) systems. While some of the XML-tags defined         activities, this distinction is crucial.
in this language correspond to types of entities that exist in
reality, others are mere syntactic artifacts used to structure the      In this paper we show how a realism-based ontology,
messages themselves. Because these two kinds of tags are not         combined with a rule language, can be used to make these
formally distinguishable, JBML messages in effect confuse data       distinctions explicit and to store the contents of JBML
with what the data represent. In this paper we show how a            messages in a Referent Tracking System (RTS) in a format
realism-based ontology combined with a rule language can be
                                                                     that mimics the structure of reality.
used to make these distinctions explicit. The approach allows
storage of the contents of JBML messages in a Referent                  In [2] we demonstrated how an RTS, i.e. a system that
Tracking System in a format that mimics the structure of reality     forces assertions to be expressed by means of statements that
thereby providing an aid to message validation.                      use globally unique and singular identifiers for each referent
  Index Terms - Realism-Based Ontology, Command and                  mentioned [3] and that are structured according to the
Control, Referent Tracking, JBML                                     principles outlined in Basic Formal Ontology [4], may help
                                                                     the Intelligence Community to share information
                                                                     unambiguously. Here, we report on further enhancements of
                       I. INTRODUCTION
                                                                     our prior work to integrate XML-based information systems
   The Joint Battle Management Language (JBML) was                   with RTS, using JBML as a specific example. We describe a
designed in response to the growing need to interface                prototype application that uses a realism-based ontology to
Modeling and Simulation (M&S) systems with Command,                  parse JBML messages and that provides reasoning facilities
Control,     Communications,       Computers,      Intelligence,     for the validation of the data. The application works by (1)
Surveillance, and Reconnaissance (C4ISR) systems in order            generating identifiers for all the real-world entities and their
to provide the user with capabilities that support operational       relationships that are mentioned in given messages, and (2)
functions including Course of Action (COA) Development               storing these identifiers in an RTS.
and Analysis, mission rehearsal, and execution monitoring
[1]. Its main benefit is that it overcomes the interoperability
problem caused by the use of unstructured “free text” within           II. ONTOLOGY-BASED PROCESSING OF MILITARY MESSAGES
the operational C2 messages that are passed within C4ISR                An RTS is an ontology-based database which uses globally
systems, specifically for the most critical C2 information: the      unique identifiers (called IUIs) to represent: (1) instances
commander’s intent, orders and directives. While suitable for        (spatiotemporal particulars, including people, commands,
interpersonal communication, free text is inadequate for use         places, events), (2) the relations that hold between such
by simulations and robotic or software-based components.             instances, (3) the (potentially multiple) names that are
                                                                     assigned to such instances, and (4) the universals or classes
   JBML is highly structured and the majority of its XML-
                                                                     that such instances instantiate [2, 3, 4]. The RTS thereby
tags (or ‘elements’) are given very intuitive labels. Yet, the
                                                                     provides a framework for the logically coherent formulation
language generally suffers from the problem that while some
                                                                     of assertions made about any of the given entities, including
of the tags denote generic entities in reality that are
                                                                     those types of assertions contained in C2 messaging.
instantiated by the referents denoted by the elements’ contents
in a specific message, other tags provide information about             An example of a military message in JBML is shown in
the message structure itself, rather than what the message is        Listing 1. The message represents a mission that is assigned
about. Because these two kinds of tags are not formally              to an army unit with identifier ‘2TF A TEAM’. The army unit
distinguishable, JBML messages confuse data with what these          has to move between points whose coordinates are given
data represent. This does not need to be a problem if the data       under the WhereValue element in the XML. In the prototype
are always an accurate representation of reality. But in an          implementation here described, assertions about entities are
intelligence context, where large amounts of data are                inserted in the RTS as triples, for example:
    IUI-1004      instanceof        MilitaryMission                 and thus no messages have as yet been processed, the RTS
    IUI-1005      instanceof        MilitaryUnit                    database contains no information. As more and more
    IUI-1004      missionAssignedTo IUI-1005                        messages are processed, the RTS becomes populated with
    IUI-1005      currentPostionAt  IUI-1014                        successively more IUIs and with corresponding statements
                                                                    about the relationships between the referents of these IUIs.
   The first triple represents a statement to the effect that the
                                                                    Knowledge obtained through parsing earlier messages is used
entity IUI-1004 instantiates the universal MilitaryMission; the
                                                                    to improve parsing of new messages, to check the consistency
second triple a statement to the effect that the entity IUI-1005
                                                                    of the information provided in new messages, and so forth.
instantiates the universal MilitaryUnit; the third triple
represents a statement to the effect that the mission with            The whole process is carried out in four steps.
identifier IUI-1004 is assigned to the military unit with
identifier IUI-1005. The fourth triple represents a statement to    A. Step 1: Structural Analysis of XML
the effect that the current position of IUI-1005 is location          In the first step, a military message is parsed with the goal
IUI-1014.                                                           of detecting entities referred to and the relations between
   We have developed a prototype ontology for command and           them, as shown in Fig. 2. The nodes of the graph correspond
control systems called ‘C2-Test-Ontology’, which uses a             to putative entities within the domain of the message, while
subset of UCore SL, an ontology designed to support the             the edges correspond to relations. Nodes without a prefix are
Universal Core data schema [5], to link the JBML tags from          entities named explicitly in the message. Nodes with the “rts:”
the military messages to UCore SL. The ontology tells us            prefix are generated on the basis of the XML-structure of the
what data elements in a military message refer to what kinds        message. Some of them will correspond to real entities, but
of real world entities (e.g. ArmyUnit, MilitaryMission) and         others are inserted as a side-effect of the oddities of the XML
what relationships obtain between them.                             syntax. It is one of the tasks of our application to turn the
                                                                    resultant distorted view of reality into a realistic picture which
  We have also developed a Middleware program which                 conforms to good ontological principles [6].
parses military messages, and – drawing on knowledge
contained in the C2-Test-Ontology – communicates with the              In the first step, the middleware does not use any
RTS and a rule-based reasoner to assign IUIs to the entities        knowledge from the UCore SL or C2-Test ontologies. Rather
mentioned in the messages. The architecture of our system is        it iterates over the XML structure of the message using a
shown in Fig. 1. When the middleware runs for the first time,       depth first iteration strategy, in which each XML element is
                                                                    viewed as a relation between possible entities. The iteration
                                                         leads to the creation of a new graph in which the software
    
                                                         creates nodes automatically without contacting the RTS. As
        2TF A TEAM                                 an example, the XML element ‘’ is not explicitly
                                                        labeled in the message above. It is immediately followed by
     MOVE                         , which is also not explicitly labeled. What is
     
        
                                                                    the relation between these two elements? The message
                                                       provides no answer to this question. Our application in this
                                                        first step assigns IUI identifiers to Task and GroundTask. By
                                        using ontologies in later steps, it will become possible to
                   
                         48.9100583
                                                                    arrive at more determinate representations.
                         39.9570562
                         0.0
                         
                                                                                   Command & Control System
                   
                   
                      
                         48.9056792                                       Sends JBML XML Message
                                                                        Ontology
                         39.9891024
                         0.0
                                                                   Rules            Middleware
                   
                                                                                                 Communicate With RTS To Assign IUI
                 
                                                                        Reasoner                 Referred in XML Message
              
           
                                                                                      RTS
     

                                                                          Fig. 1: Command & Control Application Integration with RTS
              Listing 1: An Example of a JBML Message
                                                                           rts:1004 jbml:StartWhen       rts:1015
                                                                           rts:1015 jbml:WhenTime        rts:1016
                                                                           rts:1016 jbml:StartTimeQualifier “NLT”
                                                                           rts:1016 jbml:DateTime           “110800ZAUG2025”
                                                                         Listing 2: Triples representation generated while analyzing the message in
                                                                                                           Listing 1


                                                                        example ‘rts:1015’ and ‘rts:1016’ denote the same time, and
                                                                        ‘rts:1011’ and ‘rts:1012’ denote the same particular location.
                                                                        In line with the Referent Tracking principles, such duplicate
                                                                        identifiers must be removed. Inspection reveals that some
                                                                        triples, such as

                                                                                          rts:1001 jbml:OrderPush  rts:1002
                                                                                          rts:1002 Task            rts:1003
                                                                                          rts:1003 jbml:GroundTask rts:1004
                                                                        are defective from an ontological point of view and these too
                                                                        must be removed. A task, for example, is clearly not a
                                                                        relationship. This restructuring cannot however be achieved
                                                                        computationally in this step, because the XML framework
                                                                        does not provide explicit information sufficient to ensure the
                                                                        ontological soundness of the representation. We have
                                                                        therefore built another service, executed in step 2 below,
                                                                        which translates information implicit in the XML structure of
                                                                        a message into explicit assertions.
        Fig. 2: Graph generated in the first step of the middleware
                                                                        B. Step 2: Shallow translation of XML

                                                                          To achieve ontologically correct information of this sort we
   The entities and their relations shown in the graph in Fig. 2        use a variant of the Jena rule-based reasoning language [7] to
are represented in the middleware by means of triples. The              formulate rules stating the conditions for adding or removing
first triple in the graph is:                                           assertions in the graph.
       rts:1001             jbml:OrderPush                   rts:1002      We employ for this purpose forward-chaining reasoning
The first and last terms of this triple denote entities, while the      rules, each consisting of (1) a body and (2) a head. The
middle term denotes the relationship between these entities.            former specifies the set of patterns which triples in the
                                                                        message graph must match if they are to be capable of being
   As a further example, the triples representation for the node        transformed into triples that are ontologically well-formed.
rts:1004 and its relations with rts:1015 and its descendents are        The latter consists of a set of ontologically well-formed
shown in Listing 2.                                                     triples into which the triples in the set specified in (1) to be
   This graph does not yet provide a representation which is            translated.
faithful to reality in terms of the logical and ontological               We distinguish four different types of rules:
principles on which UCore SL and our C2-Test-Ontology are
based. Clearly, some nodes in the figure denote genuine                      •    If a rule name is prefixed with ‘ded_’ (for
entities, including:                                                              deduction), then it is a deduction rule as described
                                                                                  above.
              rts:1004, a particular military ground mission
                                                                             •    If a rule name is prefixed with ‘red_’ (for reduction),
              rts:1005, a particular military unit,
                                                                                  then the rule removes the triples matched against the
              rts:1015, a particular time
                                                                                  pattern in part (1) of the rule and adds the triple set
              rts:1012, a particular location.
                                                                                  in part (2).
Moreover some nodes are such that they are unique instance                   •    If a rule name is prefixed with ‘map_’ (for mapping)
identifiers, as is required by Referent Tracking principles.                      then it assigns appropriate IUIs to entities that are
However, the graph also contains many violations of these                         mentioned repeatedly in the message.
principles. Some nodes denote in a non-unique way; for
    •    If a rule name is prefixed with ‘val_’ (for                       Since the rule is of type ‘reduction’, the four triples are
         validation), then its goal is to check for                     removed from the military message triple set, and the
         inconsistencies in the data and to provide                     following three triples are inserted instead:
         corresponding notification to the receiver of the
                                                                           rts:1004 c2:StartWhen   rts:1015
         message.
                                                                           rts:1015 ro:instanceof  c2:TimeEvent
   Our middleware provides distinct services for each of the               rts:1015 c2:NoLaterThan “110800ZAUG2025”
rule types described above.
                                                                           The first represents the assertion that the mission with
  An example of a deduction rule is:                                    identifier #1004 starts at time event #1015. The second
                                                                        represents the assertion that entity #1015 instantiates the
     [ded_1 (?x jbml:Task ?y) (?y jbml:GroundTask ?z)
                                                                        TimeEvent universal from the C2-Test-Ontology, and the
         -> (?z ro:instanceof c2:MilitaryMission)]
                                                                        third represents the assertion that the time event #1015 occurs
which asserts that if (i) for two putative entities the ‘Task’          at a time point which is not later than the time specified by the
relationship holds and if (ii) the target-entity of this relation       “110800ZAUG2025” date-time stamp. The execution of rule
stands in a ‘GroundTask’ relation with a third entity, then (iii)       red_7 shows (1) how redundant entities and their relations can
the first two entities are erroneous artifacts generated in step        be removed from military messages in such a way that (2) an
1, while the third entity is a MilitaryMission in the terms of          ontology can be used to infer automatically assertions about
our C2-Test-Ontology. Note that the issue here is not whether           the entities in the real world which are referred to in these
this specific rule is correct. What we are offering here are            messages.
examples. Crafting the needed set of rules for JBML and
                                                                           Note that in this second step, the middleware executes only
other XML-based languages is a task which needs to be
                                                                        rules of types 1) and 2). Execution of deduction and reduction
performed when once the general strategy has been
                                                                        rules over the triple set whose visualization is shown in Fig. 2
formulated and tested.
                                                                        then yields a new triple set whose visualization is shown in
   Here ‘ded_1’ is the name of the rule. Variables are prefixed         Fig. 3. This new triple set conforms to sound logical and
by ‘?’ and serve as placeholders for the actual terms in the            ontological principles; specifically: there is here no
matched triples in their respective places. The following are           redundancy, and all nodes and edges in the graph are
triples that match the conditions of the rule above:                    ontologically well-formed.
   (rts:1002 jbml:Task rts:1003) (rts:2003 jbml:GroundTask rts:1004),      Each node of the graph whose label is prefixed with ‘rts:’
where variables in the rule bind terms in the matched triples           contains the IUI of an entity referred to in the message, as
as follows: ?x = rts:1002, ?y = rts:1003, ?z = rts:1004.                follows:

   Under the head part of the rule, the software inserts the                -    #1004 denotes a particular military mission
triple ‘rts:1004 ro:instanceof c2:MilitaryMission’, where the               -    #1015 denotes the particular TimeEvent when
term ‘ro:instanceof’ denotes the instanceof relation from the                    mission #1004 must start
Relation      Ontology     (‘ro’)  [8],    and    the    term               -    #1005 denotes the military unit that must perform
‘c2:MilitaryMission’ denotes the MilitaryMission universal                       mission #1004
taken from the C2-Test-Ontology (‘c2’).                                     -    #1009 denotes the line along which the #1005 unit
                                                                                 has to move
  An example of a reduction rule is:                                        -    #1014 and #1012 denote distinct points
         [red_7: (?x jbml:StartWhen ?y)                                          corresponding to the start and end of the #1009 line.
          (?y jbml:WhenTime ?z)
          (?z jbml:StartTimeQualifier "NLT")                            C. Step 3: Entity Tracking and Semantic Verification
          (?z jbml:DateTime ?l)                                           In the third step, rules prefixed with ‘map_’ are executed
          -> (?x c2:StartWhen ?y)                                       over the triple set that results from step 2. The middleware
             (?x ro:instanceof c2:TimeEvent)                            first checks whether the RTS is empty. If it is, there cannot be
             (?x c2:NoLaterThan ?l)]                                    any duplicate entries and the triple set is simply inserted into
   The body of this rule is matched by the following set of             the RTS and processing stops. However, if the RTS is not
triples, generated from the message shown in Listing 2 .                empty, then the middleware program continues to execute this
                                                                        step to. Suppose the middleware receives a second military
  rts:1004   jbml:StartWhen       rts:1015                              message (shown in Fig. 4) and that the RTS database contains
  rts:1015   jbml:WhenTime        rts:1016                              the triples shown in Fig. 3. Here, the military unit named
  rts:1016   jbml:StartTimeQualifier “NLT”                              ‘2TF A TEAM’ is assigned the IUI rts:2005. However, in the
  rts:1016   jbml:DateTime        “110800ZAUG2025”                      RTS used in the message analysis system there is already a
                          Fig. 3: Visualization of Ontologically Articulated Content of the XML message in Listing 1




                                         Fig. 4: Second Military Message after Processing via Step 2




                                Fig. 5: Second Movement Mission as Described in the 2nd Example Message


military unit whose name is ‘2TF A TEAM’, to which the IUI                  This rule instructs the middleware to search for matching
rts:1005 has already been assigned.                                      triples in the incoming message, in this case returning the
                                                                         triple:
   The Referent Tracking principles state that if the military
unit in the second message is the same as the one referred to                           rts:2005 jbml:UnitID “2TF A TEAM”
already in the RTS, then it should continue to be denoted by
the IUI rts:1005. It is this conformity to Referent Tracking                As ‘?x’ refers to an entity (whose IUI is to be determined),
principles that is achieved by the mapping rules.                        the middleware replaces the IUI in the triple found by ?x. The
                                                                         above triple is thus transformed into the following:
   A mapping rule whose conditions are satisfied by the
incoming second message is:                                                                  ?x jbml:UnitID “2TF A TEAM”

       [map_1: (?x jbml:UnitID ?a) -> entity_found(?x)]                     The map_1 rule now instructs the middleware to search for
                                                                         a corresponding triple in the RTS which returns, in this case:
             rts:1005 jbml:UnitID “2TF A TEAM”                     strategies in relation to incoming messages on the basis of
                                                                   information obtained through earlier messages. The benefit of
  As a result, rts:2005 is replaced by rts:1005 in all
                                                                   using middleware along with rules built on the basis of a well-
corresponding triples in the new message. The final output is
                                                                   structured ontology such as our C2-Test-Ontology (itself an
shown in Fig. 5.
                                                                   extension of UCore SL), is that, if changes occur, for example
   At this stage, all triples of the incoming message are in       in the format of the military messages or in our understanding
accordance with the RT principles, and the message triples         of military reality, changes will need to be made only in the
are ready to be inserted into the RTS database in addition to      rules and ontologies, and the need for further software
the triple (rts:1005 jbml:UnitID “2TF A TEAM”) which is            changes will thus be reduced. Another benefit of this
already present.                                                   architecture is that the system can be re-used with other
                                                                   information systems pertaining to other Communities of
  At the end of these steps, an unambiguous representation of
                                                                   Interest (CoI). The only changes we need to make are: (1)
the data – at least in terms of the C2-Test-Ontology – is
                                                                   building an appropriate ontology for each new CoI, (2)
obtained, and additional reasoning over the data now becomes
                                                                   writing a new parser to analyze the information coming from
possible.
                                                                   the corresponding information system, and (3) defining
                                                                   appropriate rules for that domain.
D. Step 4: Reasoning to Validate Incoming Messages
  In this step, data validation rules are executed over the RTS       We also did not use rules that provide alternative
database used by the middleware to check for any                   interpretations of inconsistent data. Note for instance that the
inconsistencies that may arise when inserting the content of       inconsistency as concerns the location of the 2TF A TEAM
the new message into the RTS.                                      discussed above might result from a false assumption about
                                                                   which entity the name ‘2TF A TEAM’ in fact denotes – either
  Imagine a scenario under which the RTS is in the state           perhaps it denotes different units in different messages, or
shown in Fig. 3, and now the triples shown in Fig. 5,              because in some messages typing errors have been made.
corresponding to a new planned mission for the 2TF A
TEAM, are ready to be inserted. The new mission involves              The approach can be used not only to reason with messages
the movement of the team from location #2012. Because the          in given formats, but also to integrate messages with different
new starting position is different from the current position of    formats. Future work should be based on fully axiomatized
the unit as recorded in the database, it is not possible for the   forms of the various ontologies. The C2-Test-Ontology
military unit to carry out the mission unless the starting point   should also be dramatically extended to include not only
can be reached in due time. In this case, the middleware will      JBML, but relevant content from JC3IEDM, and NIEM with
provide an alert warning of potential inconsistency of the         the objective of creating fully automatized interoperability
data.                                                              corridors, establishing a model for further work not only on
                                                                   more comprehensive collections of messages, but also on
  To perform the reasoning necessary for such an alert to be       information of other types.
generated, rules of type 4 are executed. The middleware
executes these rules by communicating with the RTS and the                                       REFERENCES
reasoner. If the middleware finds any inconsistency as defined     [1] J. Mark Pullen, Andreas Tolk, and C. Blais, "Joint Battle Management
in a rule of type 4 (_val) then it generates warning messages.         Language (JBML) -US Contribution to the C-BML PDG and NATO
                                                                       MSG-048 TA," in IEEE European Simulation Interoperability Workshop
 One rule used in this reasoning scenario is:                          Genoa, IT, 2007.
                                                                   [2] W. Ceusters and S. Manzoor, "How to track absolutely everything?," in
  val_1 (?a c2:missionAssignedTo ?b)                                   Ontologies and Semantic Technologies for the Intelligence Community.
       (?a jbml:WhatCode ?c)                                           Frontiers in Artificial Intelligence and Applications: IOS Press
       (?b c2:CurrentLocation ?d)                                      Amsterdam, 2009, (in press).
       (?l jbml:missionAssigndTo ?b)                               [3] S. Manzoor, W. Ceusters, and R. Rudnicki, "Implementation of a
                                                                       Referent Tracking System," International Journal of Healthcare
       (?l jbml:WhatCode ?c)
                                                                       Information Systems and Informatics, vol. 2, pp. 41-58, 2007.
       (?b c2:StartingFrom ?o)                                     [4] W. Ceusters and B. Smith. Strategies for Referent Tracking in Electronic
       notEqual(?a, ?l)                                                Health Records. J Biomed Inform. 2006 Jun;39(3):362-78.
       notEqual(?d, ?o)                                            [5] The Universal Data Core, Army Net-Centric Data Strategy (ANCDS),
             ->       (?a error:inconsistentWith ?l)                   http://data.army.mil/datastrategy_universal_core.html, (2009).
                                                                   [6] K. Munn and B. Smith (eds.), Applied Ontology: An Introduction,
                                                                       Frankfurt/Lancaster: ontos, 2008, 342 pp.
                      III. CONCLUSION                              [7] HP Labs Semantic Web Research, "Jena- A Semantic Web Framework
                                                                       for Java," 2009.
   We are currently in a phase in which the middleware             [8] B. Smith, W. Ceusters, B. Klagges, J. Köhler, A. Kumar, J. Lomax, C.
component is able to process several sample types of                   Mungall, F. Neuhaus, A. L. Rector, and C. Rosse, "Relations in
incoming messages and to perform a number of reasoning                 biomedical ontologies," Genome Biology, vol. 6, p. R46, 2005.