Integrating SysML and OWL

Similar documents
Representing Product Designs Using a Description Graph Extension to OWL 2

Ontology Engineering for Product Development

OWL extended with Meta-modelling

CSE 20 DISCRETE MATH. Fall

Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1

H1 Spring B. Programmers need to learn the SOAP schema so as to offer and use Web services.

Ontological Modeling: Part 11

OWL a glimpse. OWL a glimpse (2) requirements for ontology languages. requirements for ontology languages

Current State of ontology in engineering systems

SOFTWARE ENGINEERING DESIGN I

A set with only one member is called a SINGLETON. A set with no members is called the EMPTY SET or 2 N

On the Reduction of Dublin Core Metadata Application Profiles to Description Logics and OWL

Term Algebras with Length Function and Bounded Quantifier Elimination

CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer Science (Arkoudas and Musser) Sections p.

Computing least common subsumers for FLE +

RAISE in Perspective

Foundations of AI. 9. Predicate Logic. Syntax and Semantics, Normal Forms, Herbrand Expansion, Resolution

2.1 Sets 2.2 Set Operations

Chapter 8: Enhanced ER Model

Principles of Knowledge Representation and Reasoning

Modeling Requirements, Architectures, Behaviour...

Evaluating OWL 2 Reasoners in the Context Of Checking Entity-Relationship Diagrams During Software Development

CSE 20 DISCRETE MATH. Winter

Overview. CS389L: Automated Logical Reasoning. Lecture 6: First Order Logic Syntax and Semantics. Constants in First-Order Logic.

Trees. 3. (Minimally Connected) G is connected and deleting any of its edges gives rise to a disconnected graph.

LOGIC AND DISCRETE MATHEMATICS

Appendix 1. Description Logic Terminology

Appendix 1. Description Logic Terminology

H1 Spring C. A service-oriented architecture is frequently deployed in practice without a service registry

A platform for distributing and reasoning with OWL-EL knowledge bases in a Peer-to-Peer environment

jcel: A Modular Rule-based Reasoner

Adding Formal Requirements Modeling to SysML

DRAOn: A Distributed Reasoner for Aligned Ontologies

Relational Database: The Relational Data Model; Operations on Database Relations

Graph Representation of Declarative Languages as a Variant of Future Formal Specification Language

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe

Extracting knowledge from Ontology using Jena for Semantic Web

Decision Procedures for Recursive Data Structures with Integer Constraints

PROPAGATION-BASED CONSTRAINT SOLVER IN IMS Igor Ol. Blynov Kherson State University

CSC Discrete Math I, Spring Sets

Semantics for and from Information Models Mapping EXPRESS and use of OWL with a UML profile for EXPRESS

Using Ontological Methods for Managing Product Development

Categorical models of type theory

Checking Conservativity With HETS

UML Class Model Abstract Syntax and Set-Based Semantics

How useful is the UML profile SPT without Semantics? 1

Extracting the Range of cps from Affine Typing

Unification in Maude. Steven Eker

Programming Languages Third Edition

Object-Oriented Theories for Model Driven Architecture

Chapter 4 Fuzzy Logic

3.4 Deduction and Evaluation: Tools Conditional-Equational Logic

DRAOn: A Distributed Reasoner for Aligned Ontologies

Knowledge Representations. How else can we represent knowledge in addition to formal logic?

OWL Rules, OK? Ian Horrocks Network Inference Carlsbad, CA, USA

Reasoning on Business Processes and Ontologies in a Logic Programming Environment

Enhanced Entity-Relationship (EER) Modeling

CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer Science (Arkoudas and Musser) Chapter p. 1/27

Module 6. Knowledge Representation and Logic (First Order Logic) Version 2 CSE IIT, Kharagpur

This is already grossly inconvenient in present formalisms. Why do we want to make this convenient? GENERAL GOALS

Logical reconstruction of RDF and ontology languages

Code No: R Set No. 1

JOURNAL OF OBJECT TECHNOLOGY

Topic Maps Reference Model, version 6.0

COMP718: Ontologies and Knowledge Bases

OASIS: Architecture, Model and Management of Policy

Safe Stratified Datalog With Integer Order Does not Have Syntax

An Ontological Analysis of Metamodeling Languages

Applying UML to System Engineering Some Lessons Learned Murray Cantor Principal Consultant

Techniques for the unambiguous specification of software

CIS 1.5 Course Objectives. a. Understand the concept of a program (i.e., a computer following a series of instructions)

Composability Test of BOM based models using Petri Nets

Description Logics as Ontology Languages for Semantic Webs

OWL DL / Full Compatability

Snorocket 2.0: Concrete Domains and Concurrent Classification

CS Bootcamp Boolean Logic Autumn 2015 A B A B T T T T F F F T F F F F T T T T F T F T T F F F

Business Rules in the Semantic Web, are there any or are they different?

Verbalizing Business Rules: Part 10

Contents. Chapter 1 SPECIFYING SYNTAX 1

Ontological Modeling: Part 8

Extracting Finite Sets of Entailments from OWL Ontologies

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

Ontologies for Agents

Typed Lambda Calculus

Ontologies and OWL. Riccardo Rosati. Knowledge Representation and Semantic Technologies

LTCS Report. Concept Descriptions with Set Constraints and Cardinality Constraints. Franz Baader. LTCS-Report 17-02

OMG Systems Modeling Language Tutorial May, 2012

An Agent Modeling Language Implementing Protocols through Capabilities

Module 3. Requirements Analysis and Specification. Version 2 CSE IIT, Kharagpur

USING DECISION MODELS METAMODEL FOR INFORMATION RETRIEVAL SABINA CRISTIANA MIHALACHE *

Type Systems COMP 311 Rice University Houston, Texas

DISCRETE MATHEMATICS

Ontological Modeling: Part 7

Lecture 5. Logic I. Statement Logic

Rewriting Needs Constraints and Constraints Need Rewriting

COMP 410 Lecture 1. Kyle Dewey

Local Specialization in Open-Axiom

2 nd UML 2 Semantics Symposium: Formal Semantics for UML

X-KIF New Knowledge Modeling Language

Chapter 4. Enhanced Entity- Relationship Modeling. Enhanced-ER (EER) Model Concepts. Subclasses and Superclasses (1)

Transcription:

Integrating SysML and OWL Henson Graves Lockheed Martin Aeronautics Company Fort Worth Texas, USA henson.graves@lmco.com Abstract. To use OWL2 for modeling a system design one must be able to construct a Knowledge Base (KB) that can represent detailed information such as the number of occurrences of a part and interconnections between parts. SysML Block Diagrams (BD) have sufficient expressiveness to represent detailed designs. Suitably restricted SysML block diagrams can be translated into OWL2 to achieve the same result. A SysML graphical syntax can be used for the KBs which are characterized as designs. Block Diagrams have a natural model-theoretic semantic and this semantics is preserved by the translation into OWL2 for a restricted class of Block Diagrams. An implementation of a design is a parts description of the system being modeled. For a design, a KB-model will contain an implementation of the system, but may contain other entities. When additional constraints satisfied by a KB that represents a design then the KB serves as a template for the design implementations. Design KBs can be developed in engineering design tools and exported to OWL tools for analysis. This work yields a partial unification of SysML and OWL that is sufficient for modeling the structure of complex systems. Keywords: Conceptual Model, Description Logic, Graph-Extended DL, Ontology, OWL, Product Model, SysML, UML. 1 Introduction Modeling is used extensively in product development to specify and analyze designs and requirements. A product model in the sense used here is a class which describes or classifies individuals in a domain of discourse. For product modeling the individuals are referred to as parts. Parts include physical parts as well as subsystems. The informal concept of a design for a system such as an automobile is that the design determines the system s possible implementations. An implementation is described by a collection of parts and interconnections between the parts. A detailed design has the additional property that it is a template for its implementations in the sense that all of the implementations have the same structure. OWL2 [13] is a natural candidate for product modeling and first steps to use OWL2 have been taken [14,4,5]. OWL reasoning tools have been used to establish consistency of a set of requirements [6]. However, to use OWL2 for modeling a system design one must be able to construct a KB that can represent detailed information such as the number of occurrences of a

part and interconnections between parts. For example, a design for a vehicle may specify that it has exactly two identical fuel tanks with a specific connection between the two tanks. The question of whether detailed design information can be represented within OWL2 is answered affirmatively by recognizing that SysML Block diagrams provide the expressiveness needed to represent detailed design information [1] and by recognizing that Block Diagrams can be translated into OWL2. OWL2 KBs can be constructed to represent detailed design information such as part occurrences and connectivity. SysML [12] is a language designed specifically to represent structure and behavior of systems for product development and engineering analysis. It is an OMG Standard and has well developed authoring tools [3, 2]. SysML provides a graphical syntax which is particularly useful for human comprehension; however SysML lacks a formal semantics. While OWL and SysML use different names, both have terminology for individuals, classes, and properties. SysML has terminology for operations which is lacking in OWL2 and OWL2 has term constructions for classes that SysML does not have. Both have data types and properties can have data type values. The translation of a restricted form of SysML Block Diagram provides a semantics for the subset of SysML constructions translated into OWL2. The question of whether the SysML to OWL2 translation preserved the intended SysML semantics, led to the question of finding a formal semantics for SysML. This question can also be answered affirmatively. A SysML Block Diagram is a kind of first order equational logic [10]. The equations express syntactic relationships in the diagram. A Block Diagram provides an abstract syntax for the kind of terms used in constructing Block Diagrams. Logical axioms are expressed using equality, instance of, and subclass relations between terms. Block Diagram specific structure can be expressed using equality, instance of, and subclass relations The informal interpretation of a BD can be captured by a definition of a BD-interpretation. BDinterpretations can be used to define a formal model-theoretic semantics. A BDtheory can be defined in the usual way as sentences that are true in all of the models. However, logical axioms can be constructed which can be used to characterize the BD-theories. The discussion here will be limited to the SysML Block Diagram constructions that can be directly translated to OWL2. The more general form of Block Diagram formalization and its semantics will be treated elsewhere. The KB representing the design will contain the class that represents the system and will have classes for the other parts that make up the system. A KB suitable for representing designs will have distinct haspart properties with domain and range classes that represent the graph structure of the BD. Each class that has immediate parts has a distinct haspart property for each class of parts. Cardinality restrictions on these properties determine the number of instances of the class that occur in an implementation. An implementation of a design is a parts expansion of the class representing system being modeled rather than being a model of the entire KB. A model of a design KB may contain other elements and an implementation of the design may contain extraneous parts. No cardinality restrictions on the classes are imposed. This approach to defining design implementations is different from the Description Graph extension [11] which restricts the models to rule out the unintended models.

3 2 Block Diagram Semantics Figure 1 illustrates a simplified design representation for part of a vehicle as a Block Diagram. The diagram consists of blocks (classes) which are connected to parts by connection associations using SysML terminology. Multiple kinds of connections occur in product models. Connections commonly employed include fuel, electric, and hydraulic flow, as well as physical connections. In general a Block specializes a general part class; block attributes (properties) are used to classify different kinds of parts. A complete treatment would subclass blocks from a general Part class. For this discussion, Block Diagrams are restricted to have only Associations with no operations. Vehicle haspart11 1 haspart12 1 haspart13 1 Engine FuelSystem Frame haspart21 1 haspart23 2 1 Pump Tank 1 Connection1 Fig. 1. The SysML Block Diagram represents an incomplete design for a vehicle. Each association in the diagram has a unique source and target class. Vehicle is a root class under the hasparts associations. The diagram specifies that FuelSystem has exactly two tanks and that they are connected with Connection1 association. The diagram in Fig. 1contains a distinct named association for each class in the diagram. There are no associations without a Source and Target class. The named haspart associations however, can be viewed as sub-associations of a general haspart Association. The diagram has a graph structure labeled by the two kinds of associations. In general, a BD will contain subclass relations and instances. However, the Vehicle System Block Diagram does not contain either. The blocks with the part associations are a tree within the Vehicle System BD using the haspart properties. Expanding the hasparts associations provides a vehicle parts decomposition with connections between parts. The Vehicle block in Fig. 1 may have many instances, which represents the fact that there may be many air vehicle instances. Similarly, the other classes in the diagram may have many instances.

However, the parts and connection structure are defined by the diagram. Cardinality restrictions on the associations are used to specify how many parts an instance of a class has. 2.1 Abstract Block Diagrams The Vehicle System Block Diagram can be generalized to produce an abstract definition. An OWL Block Diagram signature has three kinds of sorts;!"#$%$#&'( +(',,)*and -./01.2$1,. The Block Diagram operation symbols are in the table below. A Block Diagram Signature is finitary in that each of the sorts contains a finite number of symbols. Let 31.4* be the union of!"#$%$#&'()*+(',, +(',,)* and -./01.25. The usual notation for the BD-operation application will be used which is infix in the case of equality and instance. The symbol N will be used as a constant for numbers.!"#$%$#&'()* Dom : -./01.25!*+(',, +(',,) Range: -./01.25*!*+(',, +(',,) Restrict : -./01.25!!! N * : -./01.25!!! -./01.25 *o 6*-./01.25*)*-./01.25 >! -./01.25 +(',,)**subclass +(',, -./01.25 subrelation!-./01.25 -./01.25* 31.4 = 31.4!"#$%$#&'( : +(',, 6*!"#$%$#&'()*!"#$%$#&'(7!"#$%$#&'()*!"#$%$#&'(7:*-./01.25 Assigns a domain class to a property Assigns a range class to a property Restricts the number instances of the domain class The inverse property Composition of properties 31.4 Equality of terms instance of class instance of property -./01.25* An OWL BD is a special case of a more general concept of BD whose signature has operator symbols corresponding to SysML Operators. Individuals are a special case of operators which have no arguments. An abstract Block Diagram is a finitary collection of symbols of the three kinds,!"#$%$#&'())* )* +(',,))* and -./01.2$1,, together with equations, subclass, and!"#$%$#&'() )* +(',,))* -./01.2$1, membership relations which directly express the syntactic information contained in the graphical syntax of a Block Diagram. The Vehicle System BD is an abstract Block Diagram with the following signature: N Vehicle, Frame, Engine, FuelSystem, Pump, Tank haspart11, haspart12, haspart13, haspart21, haspart22 - number type - class symbols - haspart properties

5 Connection1 - property used as an example of connection associations between classes To define the Vehicle System Block Diagram, we use equations which specify the domains, ranges, and cardinality restrictions of the diagram. For example: Dom(hasPart11) = Vehicle, Range(hasPart11) = Engine Restrict(hasPart11) = 1. Dom(Connection1) = Tank Range(Connection1) = Tank Restrict(Connection1) = 1 Restrict(Connection1*) = 1 The Vehicle system Block Diagram does not have any subclass relations and does not have any individual declarations. Block Diagrams may have subclass relations and individual declarations. The reason that these are not included is that this BD is a detailed design. The informal semantics for the collection of haspart properties are that for each property in haspart, the domain and range classes are distinct and span +(',,. 2.2 Block Diagram Semantics A model-theoretic semantics can be defined in terms of interpretations of the BD signature within a domain of individuals. The meaning of a Block Diagram can be expressed in terms of interpretations of the diagram within a domain if individuals. This semantics captures informal meaning and is also consistent with an OWL2 KB semantics. For a Domain 8) a BD interpretation in 8 is a mapping ^ : Block Diagram Signature! Sets(8) which maps the class symbols to sets and properties to binary relations defined for the domain and range classes, and which preserve any subclass and subproperty restrictions. The interpretation of the restriction operation corresponds to the OWL class construction R exactly k A where R is a property and A is a class and in the restriction interpretation of a BD property R, A corresponds to the Range(R). For sets A and B the notation <A, B> is used for the Cartesian product of A and B. The notation R: A! B is used as an abbreviation for Dom(R) = A and Range(R) = B. A^ is a subset of 8 R^ is a subset of the product <*8, 8 > If R : A! B, then R^ is a subset of the product <A,B> If R : A! B, then R*^ = R^*

If Restrict(R) = k, then Dom(R) is the set R^ exactly k Range(R^) If A SubClass B then A^ is a subset of B^ A theory for a specific Block Diagram may be defined as the sentences which are true in any interpretation of the Block Diagram. Logical axioms can be specified by formulas that use the instance, subclass, and equality expressions. Examples of the axioms are shown in the table below. The left and right columns are logical equivalence. A class constant Thing and a property constant ID are added to a BD signature. Thing For any a. a : Thing C SubClass D For any a. a: C implies a:d Dom ( R) = A For any a, b. <a,b>:r implies a: A Range (R ) = B For any a,b. <a,b>:r implies b: B R : A! B R* : B! A R*(R) = R(R*) = ID A BD theory preserves the logical axioms. 2.3 Block Diagram Representation in OWL2 An OWL2 KB is described by a signature of!"#$%$#&'()*+(',, +(',,) and*-./01.25 with the OWL term constructions and axioms for equality, subclass, and instance, as well as the term constructions. Examples of these axioms for existential and universal restriction are: Class Term Axiom R some A For any a (there exist b (<a,b> : R and b : A)) R any A For any a ( for any b (<a,b> : R implies b : A )) This description of OWL2 is also presented as a partial equational theory with a richer set of class term constructions than is available in a BD theory. An OWL2 KB may be generated from a BD theory adding the OWL class term constructions. Each BD restriction axiom of the form Restrict(R) = k where R in -./01.25 translates into an OWL2 axiom of the form Dom(R) subclass R exactly k Range(R). The semantics is preserved by the translation of a Block Diagram into a KB. The properties defined for a BD-interpretation are preserved by the OWL2 models. 2.4 Design Block Diagrams The Vehicle System BD has a tree structure using the haspart properties with Vehicle as the root. More generally, a Design BD is a BD which has a subsort 9',-'.2* for which <*+(',, +(',,, 9',-'.2, Dom, Range > where the domain and range equations define a tree on classes from +(',, for each property in 9',-'.2. For an interpretation, the domains and ranges of the properties in 9',-'.2 are a disjoint covering of the union of the carriers for the class symbols. A 9',-'.2

7 Detailed Design BD is a BD for which each class A is equal to a conjunction of its has property restrictions, i.e., A = R1 exactly k1 and Rn exactly kn where each Ri is a member of 9',-'.2*, dom(ri) = A, and ki is an integer.* An instance of the top class determines a recursively constructed list of parts and connections by expanding the root class definition. Properties of instances of the class of systems under design can be proved using properties of the design realization. A Design KB can be defined as a KB whose signature contains a BD. All of the implementations of a Detailed Design KB have the same structure. 3 Conclusions This work is intended as a step toward enabling product developers to use SysML tools with their graphical syntax and export the result to reasoning tools for design analysis and verification. A partial integration is achieved by translating a restricted SysML Block Diagram syntax into an OWL2 KB. The models of the OWL2 translation of a BD are the same as given by the BD interpretation semantics. Thus the translation preserves the BD intended semantics. The result provides an OWL2 semantics for a portion of SysML. Conversely, SysML graphical syntax to be used within OWL2 for the design KBs. A restricted set of Block Diagram constructions that are needed in representing product designs can be used to generate a KB which preserves the structure of the block diagram. The Block Diagram interpretations for the restricted Block Diagrams preserve the structure that a model of an OWL2 KB preserves and so this logic extends OWL2. The Block Diagram to OWL2 translation provides a method to construct an OWL2 KB that can represent structural design information such as parts decomposition and connectivity structure. The translation indicates that OWL 2 is sufficient for representing product structure. The capability of OWL2 to represent parts and connectivity structure depends on the KB having a root class which has a parts decomposition graph in any KB model. For Design KBs the graphical syntax of SysML can be used to develop OWL KBs. This solution does not depend on restricting the models as is done in the Description Graph extension to OWL2. Of course to realize the full goal using formal reasoning tools in product development would require a formal semantics for a much richer subset of SysML, for example including ports with their interfaces and SysML operations. A general Block Diagram theory can be presented as a partial membership algebra signature. Based on the understanding of the interpretation semantics for Block Diagram, one can define a Block Diagram theory as a Horn Class theory containing logical axioms and prove that the BD theory models are exactly the BD-interpretations. A BD theory provides a formal semantics for the constructions covered by the BD signature. A BD theory is more general than an OWL2 KB as it contains operators. These results will be addressed in a following paper.

References 1. Bock, C., UML Composition Model, Journal of Object Technology, vol. 3, no. 10, November-December 2004, pp 47-73. 2. Friedenthal, S., Moore, A., and Steiner. F., OMG Systems Modeling Language (OMG SysML ) Tutorial, INCOSE Intl. Symp, 2006. 3. Graves, H., Guest, S., Vermette, J., and Bijan, Y., Air Vehicle Model-Based Design and Simulation Pilot, Spring 2009 Simulation Interoperability Workshop (SIW) 4. Graves, H. Design refinement and requirements satisfaction, Proceedings of 9 th NASA- ESA Workshop on Product Data Exchange, 2007. 5. Graves, H., Ontology engineering for product development, Proceedings of the Third OWL Experiences and Directions Workshop, 2007. Available at www.webont.org/owled/2007/paperspdf/submission_3.pdf 6. Graves, H., Horrocks, I., Application of OWL 1.1 to Systems Engineering, OWL Experiences and Directions April Workshop, 2008. 7. Graves, H., Representing Product Designs Using a Description Graph Extension to OWL 2. OWL Experiences and Directions October Workshop, 2008. 8. Graves, H., Leal, D., Using OWL 2 For Product Modeling, Proceedings of 11 th NASA- ESA Workshop on Product Data Exchange, 2009. 9. Haley, T., Friedenthal, S., Assessing the application of SysML to systems of systems simulations, Proceedings of the Spring Simulation Interoperability Workshop, September, 2008. 10. Meseguer, J. Membership Equational Logic as a Logical Framework for Equational Specification. Proc. 12 th WADT Workshop on Algebraic Development Techniques, Springer LNCS, 1998. 11. Motik, B., Grau, B., Horrocks, I., Sattler, U., Representing Structured Objects using Description Graphs, AAAI, 2008. 12. OMG Systems Modeling Language (OMG SysML ), V1.1, November 2008. 13. OWL 2 Web Ontology Language, W3C Working Draft 11 June 2009. 14. Price, D., Bodington, R., OWL, description logic and systems requirements satisfaction, Proceedings of 8 th NASA-ESA Workshop on Product Data Exchange, 2006.