10 likes | 145 Views
COOL: Control Oriented Ontology Language. Vardan Gyurjyan , D Abbott, G Heyes, E Jastrzembski, Carl Timmer and E Wolin Thomas Jefferson National Accelerator Facility, Newport News, VA 23606 gurjyan@jlab.org. Introduction
E N D
COOL: Control Oriented Ontology Language Vardan Gyurjyan, D Abbott, G Heyes, E Jastrzembski, Carl Timmer and E Wolin Thomas Jefferson National Accelerator Facility, Newport News, VA 23606 gurjyan@jlab.org Introduction Control Oriented Ontology Language (COOL) is a meta-data modeling language that provides generic means for representation of physics experiment control processes and components, and their relationships, rules and axioms. It provides a semantic reference frame that is useful for automating the communication of information for configuration, deployment and operation. The goal of this project is to create a vocabulary describing complex, hierarchical control systems in general, and apply it to high energy and nuclear physics experiment control systems. Our intention is to capture concepts in a formal language capable of describing not only static data, but also dynamic data and control actions. Syntax RDF models are often represented graphically as node and arc diagrams, where nodes are RDF subjects or objects, and relationships or properties are arcs/arrows. Figure below shows the node and arc diagram of COOL. For clarity sake, action-concepts (relationships) are grouped around the basic concepts of the language. Basic concepts are depicted as C nodes, and action-concepts are shown as P nodes (properties). Text Interface The COOL language text-interface uses C++/Java like syntax and some SML[5] language constructs to describe finite state machines of the experiment control system. The following table shows all the defined COOL text-interface keywords. The COOL text-interface also uses && and || to denote logical-AND and logical-OR operators. Using the provided text editor as a part of the GUI, a state machine can be generated using variables (representing COOL concept instances), COOL keywords, and operators. The semicolon is used as a statement terminator. The COOL language and its text interface are case sensitive. A statement or a group of statements are combined together using curly brackets, associating an action statement block with a conditional statement. White space is ignored allowing the user to spread COOL text-interface statements across any number of lines, or to group a number of statements together on a single line (as long as they are inside of curly brackets). Below is an example of a COOL Rule description. If ( ( EB1 in_state EBState1 ) && (HVMainFramenot_in_state HVState1 ) ) { EB1 move_to EBState2; do externalProcess1; } elseif (HVMainFramein_state HVState1 ){ move_to HVState2; } else { EB1 move_to EBState3; } Conceptualization Ontology language design starts by identifying the key concepts that exist in our domain of interest, their properties and the relationships that hold between them. We started designing COOL by first identifying natural language terms that refer to concepts, relations and attributes, used in physics experiment control, and then structuring these terms into conceptual models. COOL defines seven basic concepts shown above. concepts interact with each other through defined relations. Graphical Interface Even though the COOL language learning curve is minimal, and an RDF based COOL document is easily readable and understandable, a graphical user interface (GUI) has been developed to hide language details from the experiment control system designer. Blow is a snapshot of the COOL GUI . In this program, instances of Component concepts are created by simply dragging and dropping component type specific icons into the design board. For each of these components COOL statements are automatically created and are reflected in the GUI. Conclusions The control oriented ontology language has been developed to describe hierarchical control system structures, as well as to describe the control logic and finite state machines. By using RDF instead of XML as a basis for the language, we hope to increase the descriptive power of the language, and achieve more complete depiction of the experiment control system. Moreover, COOL helps to make individual development tools more collaborative and to design a unified experiment control environment that enables common understanding of the information from different tools. This approach guaranties loose coupling between system components, and will help the experiment control system designer to easily build a hierarchical system when using heterogeneous system components. A graphical user interface has been developed to simplify experiment control knowledge design. COOL is currently used to design and deploy a knowledge base for AFECS-based experiment control systems. Model COOL uses Resource Definition Framework (RDF) specification as a metadata model. Statements in RDF have a triplet structure: subject-predicate-object. This structure mimics the basic sentence structure of declarative and explanatory sentences of the English language. This makes RDF documents extremely powerful and easy to read and understand by humans and machines. The subject of a COOL statement is a defined control system concept (or instance of a concept class). The predicate is a concept as well (COOL action-concept), representing a relationship. The object is a concept or a primitive type (RDF literal, integer, etc.). Table above shows a few triplet structure statements, describing a hypothetical control system, written using COOL taxonomy. • References • V. Gyurjyan, et al. “Jefferson Lab Data Acquisition Run Control System”,Proceeding of the CHEP conference. CERN-2005-002, Volume 1, page 151. • V. Gyurjyan, et al. “AFECS. Multi-agent framework for experiment control systems”. J. Phys.: Conf. Ser. Volume 119 (2008) 022025 • K.Ahmed, et al. “Professional XML Meta Data”. Wrox Pres Ltd. • Shekky Powers. “Practical RDF”. O’Reilly & Accociates, Inc. • Franek, B.; Gaspar, C. “SMI++ object oriented framework for designing and implementingdistributed control systems” Nuclear Science Symposium Conference Record, 2004 IEEE Volume 3, Issue , 16-22 Oct. 2004 Page(s):1831 - 1835 Vol. 3