Title: OWL, Description Logic and Systems Requirements Satisfaction
1OWL, Description Logic and Systems Requirements
Satisfaction
- David Price and Rob Bodington
- 8th NASA/ESA PDE Workshop
- April 2006
2Agenda
- A bit of history from PDE 2004 and ISWC 2004
- Systems Requirements Satisfaction
- Scenario concepts
- How concepts are represented in OWL DL
3PDE 2004
4International Semantic Web Conference 2004
5PLCS Requirements
ISO Information Model
OASIS Reference Data
6What to do about Reference Data?
- Definition of Reference Data
- The semantics required to complete an information
model for use in data exchange scenarios - UK MoD contracted Eurostep to do a survey of
candidates for Reference Data - Determine best approach for PLCS Reference Data
- Scenario
- Automating failure reporting using PLCS-based
data exchange - Technical Assumptions
- Exchange based on PLCS EXPRESS-gtXML Schema
- Enable inclusion and reference to Reference Data
- Standard Reference Data is extended in
implementing organization
7PLCS/OASIS Adopted OWL for RD
- OWL satisfies RDL modeling requirements
- Class, multiple inheritance, properties,
datatypes, instances, reuse of models - For RD use, only really require a Taxonomy
- When UML Profile for OWL ready gt Graphical RDL
- OWL satisfies RDL IT requirements
- XML syntax, Web enabled
- Easy map from 15926, 10303-54, etc.
- Other factors
- OWL will be important in the market
- Industry and academic support
- Open-source tools available
8ISO STEP is doing so as we speak
9PDE 2004
Focus for this work
10PDE 2004
11Systems Requirements Satisfaction
12Introduction
- OWL and the software related to it provide some
interesting general purpose capabilities - The software is often called a classifier,
reasoner or inference engine - The current state-of-the-practice software
implements something called Description Logic - DL has some limitations (e.g. a class cannot be a
member of a class) - The purpose of this demonstration is to show an
example of using these technologies to solve a
type of engineering problem
13An engineering problem
- Given a set of System Designs and a series of
Requirements , identify the System Designs that
satisfy the Requirements - For our demo, the System Designs are Bike
Configurations - A range of bicycles with various options
- The demo has three parts
- Generate set of systems, components and
properties - Generate a collection of required properties
- Combine the required properties and bike
configurations and use the reasoner answer the
question
14Trek Alpha Aluminum Y26
15(No Transcript)
16Properties of Trek Y26
- Frame Alpha Aluminum
- Front Suspension InSync Grind 2, 70mm
- Rear Shock Mozo RS200 coil w/hydraulic damping
- Wheels Alloy front, Shimano RM40 rear hub
Bontrager Camino rims - Crank SR XCC-150 42/34/24
- Rear Derailleur Shimano Acera
- Size 16, 17.5, 19"
- Color Rage Red/Metallic Black
17Bike Configuration Concepts
hasComponents
Bike Configuration
hasFrame
Bike Component
Bike Frame
Bike Property
hasProperty
hasProperty
hasValue
Bike Property Value
18Bike properties
- Some properties have qualitative or enumerated
values - For example, low, medium and high
- Some properties have quantitative value ranges
- For example, 0 to 100 might be considered low
cost - Some properties have an arbitrary single quantity
value these not easily supported by current
Description Logic reasoners
19Requirement Concepts
includesRequirements
Requirement Collection
Requirement
Bike Property
requiresProperty
hasValue
Bike Property Value
20Requirements on Bikes
- Requirements for a Bike are expressed using the
same properties used to define the Bike frame and
components - Example all components must be lowcost
- A Requirements Collection is then defined as the
set of Requirement for Property in which we are
interested
21OWL Structures Cartoon
Property
Ontology
Class
Class with URI
Class by enum
Class by sets
Class definition
Restriction
22OWL Structures Cartoon (2)
Property
Ontology
Class
Class with URI
Object Property
Datatype Property
Datatype
23OWL Structures Cartoon (3)
Property
Ontology
Class with URI
Object Property
Datatype Property
URI
Individual
Datatype
Literal
24Restriction
- An OWL restriction
- is defined over a Property
- is either
- Necessary
- all individuals that are members of the class
have the property - Necessary and sufficient
- if an individual has the property then it is a
member of the class - may be defined using set theory operators
- may use classes, class expressions and individuals
25Bike Configurations in DL
- Each Bike by Model is defined as an OWL Class
- Semantic Bikes 950 Everest is a subclass of Bike
by Model - Each BikeFrame and BikeComponent is defined as an
OWL Class - BikeFrame, BikeWheels, etc. are Classes
- TitaniumBikeFrame is a subclass of BikeFrame
26Bike By Model Hierarchy
Bike Configuration
subClassOf
Bike By Model
subClassOf
Semantic Bikes 900 Bristol
Semantic Bikes 950 Everest
Semantic Bikes 900 Everest
Semantic Bikes 950 London
27Bikes, Components, and Frames
Protégé tree view of class hierarchy
28Bike Components in DL
- A hasComponent OWL ObjectProperty allows Bike
Configurations to have components - SemanticBikes900Everest hasComponent
MountainBikeWheels - The hasFrame OWL ObjectProperty works similarly
29Semantic Bikes 900 Everest Wheels
30Bike Item Properties in DL
- Each Bike-related property concept is defined as
an OWL Class - CostRange is an OWL Class
- The property values are defined as subclasses of
the class representing the property - CostRange has subclasses LowCost, MediumCost and
HighCost - Each Bike-related property concept has a
corresponding OWL ObjectProperty - hasCostRange is an OWL ObjectProperty
31Cost Range Property
32Grouping Bike Items in DL
- Each frame and component has a property value
assigned - TitaniumBikeFrame hasCostRange HighCost
- Groups of components are defined as OWL
Restrictions (a kind of OWL Class) - ExpensiveCostItem is a subclass of BikeItem
consisting of those having hasCostRange value of
HighCost
33Expensive Bike Items
Necessary and sufficient
34More on properties
- A feature something has is usually called a
property - The W3C Semantic Web Best Practices Group call
the approach to using classes to represent
property values value partitions - Subclasses of the Value Partition OWL Class are
the properties themselves - Subclasses of the properties are the set of
complete and mutually exclusive property values - CostRange has subclasses LowCost, MediumCost and
HighCost
35Bike Requirements in DL
- Requirement Collections are represented as OWL
Classes defined by Restriction - The Restrictions can use the OWL Classes of
property defined using Restrictions, so you can
build them up - E.g. ExpensiveBikeItem is any BikeConfigurationIte
m that hasCostRange of HighCost - Each individual Requirement (i.e. required
property value) is defined as a logic statement - ExpensiveBike is defined as OWL Class with
Necessary and Sufficient Restriction ThereExists
hasFrame ExpensiveBikeItem
36Expensive Bike
37Using the Reasoner
- To answer our question we use the reasoner
- Weve defined our Requirements as OWL Classes
- The reasoner can infer which of the pre-defined
Bike Configurations satisfy our Requirements - It makes the Bike Models a subclass of our
Requirement Collection classes
38Ran Reasoner!
The asserted classes
The inferred class hierarchy
The log of the reasoning
39Conclusions
- The current OWL DL reasoners do have limitations
- However Our demo shows that OWL and a DL
reasoner can be applied to real-world,
engineering problems - Many organizations maintain a repository of
existing system designs and evaluate requirements
against it for potential reuse - Using OWL DL modeling for reasoners requires a
different approach than when doing STEP modeling - However, our repository of Systems could be
populated from STEP data - Given a component with property Cost 1200 we
could set the Cost Range to High - Demo/paper produced for INCOSE conference in July
2006
40Tools used
- University of Maryland Pellet Reasoner
- open-source OWL DL reasoner
- DIG interface is how Protégé talks to Pellet
- Stanford University Protégé OWL Plug-in
- open-source ontology editor