information systems & semantic web university of ... · isweb - information systems &...

18
<is web> Information Systems & Semantic Web University of Koblenz Landau, Germany OntoDSL An Ontology-Based Framework for Domain-Specific Languages Tobias Walter Fernando Silva Parreiras Steffen Staab 08.10.2009

Upload: others

Post on 08-Jul-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web> Information Systems & Semantic Web

University of Koblenz ▪ Landau, Germany

OntoDSL

An Ontology-Based Framework for Domain-Specific Languages

Tobias Walter

Fernando Silva Parreiras

Steffen Staab

08.10.2009

Page 2: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

2 of 18

Objectives

Motivation

• Scenario

• Requirements

Description Logics

Ontology-based DSL Frameworks

• Design DSLs

• Use DSLs

Conclusion

Page 3: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

3 of 18

Scenario (Roles)

DSL User

DSL DesignerDSL

Metamodel

uses

specifies

Domain Modelbuilds

Metamodeling

Language

uses

Framework

Developerspecifies

requires

Guidance

and services

Constraints

based on

defined in

Page 4: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

4 of 18

Scenario

• Modeling physical devices, e.g. Cisco network devices

Cisco 7603:

Restrictions modeling a Cicso7603 device:

• Every Cisco7603 has at least 1 Configuration7603

• Every Configuration has at least 1 Slot in which a

SupervisorEngine card is plugged in

• A Configuration7603 has exactly 3 Slots in which either a

HotSwappableOSM or SPAInterface card is plugged in.

SupervisorEngine

HotSwappableOSMSlot

Slot

Slot

Con

figura

tion

De

vic

e

Domain Model:

DSL Designer

Page 5: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

5 of 18

Scenario (DSL User)

• Requirements of DSL User:

• Consistency Checking

• Debugging of domain models

HotSwappableOSM

Co

nfig

ura

tion

Devic

e

• Domain Model:

DSL User

(inconsistent)

Error

Page 6: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

6 of 18

HotSwappableOSM

Scenario (DSL User)

Slot

Slot

Slot

Co

nfig

ura

tion

Devic

e

• Domain Model:

DSL User

(consistent)

• Requirements of DSL User:

• Consistency Checking

• Debugging of domain models

• Validate incomplete models

• Guidance and explanations how to complete the model

Page 7: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

7 of 18

SPAInterface

HotSwappableOSM

HotSwappableOSM

Scenario (DSL User)

Slot

Slot

Slot

Co

nfig

ura

tion

Devic

e

• Domain Model:

DSL User

(inconsistent)

• Requirements of DSL User:

• Consistency Checking

• Debugging of domain models

• Validate incomplete models

• Guidance and explanations how to complete the model

ErrorErrorError

Explanation:

Configuration hasSlot some Slot and

hasCard some SupervisorEngine

Page 8: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

8 of 18

SupervisorEngine

Scenario (DSL User)

• Requirements of DSL User:

• Consistency Checking

• Debugging of domain models

• Validate incomplete models

• Guidance and explanations how to complete the model

• Suggestions of suitable domain concepts

• Use of services without any extra effort

HotSwappableOSMSlot

Slot

Slot

Co

nfig

ura

tion

• Domain Model:

DSL UserConfig

uratio

n76

03

Devic

eC

isco

7603

(consistent)

Page 9: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

9 of 18

State of the Art

Metamodel of Physical Device DSL (PDDSL) (M2 layer)

• Implemented using KM3 (a Java-like syntax)

• Simple to use and understandable

• But: Not effectual to define configurations with valid cards and slots

class Device {reference hasConfiguration [1-*]: Configuration;

}

class Cicso7603 extends Device{}

class Configuration {reference hasSlot [1-*]: Slot;

}

class Configuration7603 extends Configuration{}

class Slot {reference hasCard [1-*]: Card;

}

class Card {}

DSL Designer

Page 10: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

10 of 18

Description Logics

• Description Logics (DLs) are logics designed to represent

and reason on structured knowledge

• The domain of interest is structured into (TBox):

• concepts, which correspond to classes, and denote sets

of individuals

• roles, which correspond to associations, and denote

binary relations on individuals

• The knowledge is asserted through so-called assertions

(ABox)

• Provide formal semantics

• DLs provide the foundations for standard ontology

languages, like OWL2

Page 11: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

11 of 18

Description Logic (Example)

Cisco7603 v Device (1)

Cisco7603 ´ 9hasConfiguration:Configuration7603 (2)

Configuration v 9 ¸ 1hasSlot:Slot u (3)

9hasSlot:(9hasCard:SupervisorEngine)Configuration7603 ´ 9 = 3hasSlot:Slot u (4)

9hasSlot:(9hasCard:(HotSwappableOSM t SPAInterface))

Slot v 9hasCard:Card (5)

Card ´ HotSwappableOSM t SPAInterface t SupervisorEngine (6)

TBox:

ABox:Device(cisco) (1)

Configuration(conf) (2)

Slot(cslot1); Slot(cslot2); Slot(cslot3) (3)

SupervisorEngine(supervisor720); SPAInterface(spa360) (4)

hasConfiguration(cisco; conf) (5)

hasSlot(conf; cslot1); hasSlot(conf; cslot2); hasSlot(conf; cslot3) (6)

hasCard(cslot1; supervisor720); hasCard(cslot2; spa360) (7)

Configuration7603(conf)

Cisco7603(cisco)

Page 12: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

12 of 18

Description Logics

TestTEST

test

tteesstttest

• DLs allow for joint as well as for separate sound and

complete reasoning at the model and at the instance level

• DLs allow for tractable reasoning and efficient query answering

• DLs provide more expressiveness than usual metamodeling

languages

• But: DLs are not designed to act as a metamodel for defining

DSLs

• DSL Designer has no experience modeling

with DLs and ontologies

• DSL Designer requires to use the languages

he is familiar with as much as he can

(standard metamodeling language like KM3)

• DSL Designer wants to define constraints

DSL Designer

Page 13: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

13 of 18

Proposed Solution

Integrate KM3 with ontology language OWL2

• Provide a metamodeling language to specify further DSLs

Design Domain Specific Languages

• Develop new DSL with integrated constraints and axioms

Use domain-specific languages

• Builds domain models and uses servicesDSL User

DSL Designer

Framework

Developer

Ontology-based framework for domain-specific languages

Page 14: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

14 of 18

Model-based Integration Architecture

• Framework Developer• Provide framework for designing and using DSLs

• DSL Designer• Defines abstract Syntax, concrete Syntax, semantics

• DSL User• Builds domain models

Integrated Metametamodel

:M3

:M2Integrated Model

(Abstract Syntax)

Domain Model

instanceOf

instanceOf

KM3

Metametamodel

OWL

Metamodel

Constraints / Axioms

OWL

Ontology

instanceOf

ABox

TBox

Reasoning

Service

M2':

M1':

Domain Definition

Metamodel

(Concrete Syntax)

transform

transform

Development Environment

Ontology Definition

Visualization

DSL User

DSL

Designer

Framework

Developer

Page 15: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

15 of 18

Integrated Modeling

• Metamodel of PDDSLclass Device {reference hasConfiguration [1-*]: Configuration;}

class Cisco7603 extends Device

}

class Configuration

reference hasSlot : Slot;}

class Configuration7603 extends Configuration

}

class Slot {reference hasCard [1-*]: Card;

}

, equivalentWith restrictionOn hasConfigurationwith min 1 Configuration7603 {

{

equivalentWithIntersectionOf(restrictionOn hasSlot with min 1 Slot,

restrictionOn hasSlot somerestrictionOn hasCard some SupervisorEngine) {

{

,equivalentWith IntersectionOf(restrictionOn hasSlot with exactly 3 Slot,

restrictionOn hasSlot with somerestrictionOn hasCard with some

UnionOf(HotSwappableOSM, SPAInterface) {

{

DSL Designer

Page 16: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

16 of 18

Benefits of DL in Domain Modeling

Open World Assumption

• assumes incomplete information by default

• guidance and validation of incomplete models

Joint semantic definitions at 2 layers

• M1- and M2 layer affect each other

• simultaneously reasoning at M1- and M2 layer

Debugging and reasoning explanation

• identifying debugging-relevant facts (e.g. model elements)

which lead to inconsistency with regard to the metamodel

• explanations of errors in domain models

Page 17: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

17 of 18

Conclusion

Framework Developer

• Integration of KM3 and OWL at the M3 layer

• Provide metamodeling language that allows

designing metamodels with embedded OWL

Constructs

DSL Designer

• Specifies new DSLs with additional, integrated

constraints

DSL User

• Builds domain models

• Gets services and guidance for freeDSL User

DSL Designer

Framework

Developer

Page 18: Information Systems & Semantic Web University of ... ·  ISWeb - Information Systems & Semantic Web Tobias Walter walter@uni-koblenz.de MoDELS 2009 9

<is web>

ISWeb - Information Systems

& Semantic Web

Tobias Walter

[email protected]

MoDELS 2009

18 of 18

Discussion…

Thanks for your attention …

… Questions?

http://ontodsl.semanticsoftware.eu

Supported by EU STReP-216691 MOST