deeptelos - conceptbaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… ·...

53
DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University of Skövde, Sweden Bernd Neumayr Johannes Kepler University Linz University of Oxford FREQUENTIS AG ER 2016, Gifu

Upload: others

Post on 10-Jul-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

DeepTelosMulti-level Modeling with

Most General InstancesManfred Jeusfeld

University of Skövde, Sweden

Bernd Neumayr

Johannes Kepler University Linz

University of Oxford

FREQUENTIS AG

ER 2016, Gifu

Page 2: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Multi-level Modeling

• extends object-oriented modeling

ER 2016 Jeusfeld, Neumayr: DeepTelos 2

engineType : EngineType

CarModel

engineType = P6V320hp

Porsche911

instanceOf

Page 3: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Multi-level Modeling

• extends object-oriented modeling with

– unbounded levels of instantiation

ER 2016 Jeusfeld, Neumayr: DeepTelos 3

engineType : EngineType

CarModel

instanceOf

instanceOf

engineType = P6V320hp

Porsche911

MarysCar

ProductModelCategory

instanceOf

Page 4: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Multi-level Modeling

• extends object-oriented modeling with

– unbounded levels of instantiation

– clabjects combining class and object facets

ER 2016 Jeusfeld, Neumayr: DeepTelos 4

categoryMgr = SusanengineType : EngineType

CarModel

instanceOf

instanceOf

engineType = P6V320hp

Porsche911

MarysCar

categoryMgr : Person

ProductModelCategory

instanceOf

Page 5: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Multi-level Modeling

• extends object-oriented modeling with

– unbounded levels of instantiation

– clabjects combining class and object facets

– deep characterization

ER 2016 Jeusfeld, Neumayr: DeepTelos 5

categoryMgr = SusanengineType1 : EngineTypeengineNr2 : String

CarModel

instanceOf

instanceOf

engineType = P6V320hp

Porsche911

engineNr = 52WVC10337

MarysCar

categoryMgr : Person

ProductModelCategory

instanceOf

Page 6: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Motivation for DeepTelos

• Existing multi-level modeling approaches are arguably

– firmly rooted in two-level modeling

– overly complex and rather inflexible

• DeepTelos is based on Telos1 and its implementation ConceptBase2 and inherits their

– natural metamodeling facilities

– uniform treatment of objects, classes, metaclasses, ...

– uniform treatment of entities, attributes, and relationships

– and remains simple and flexible

ER 2016 Jeusfeld, Neumayr: DeepTelos 6

1 John Mylopoulos, Alexander Borgida, Matthias Jarke, Manolis Koubarakis: Telos: Representing Knowledge About Information Systems. ACM Transactions on Information Systems 8(4): 325-362 (1990)

2 Matthias Jarke, Rainer Gallersdörfer, Manfred A. Jeusfeld, Martin Staudt: ConceptBase - A Deductive Object Base for Meta Data Management. J. Intell. Inf. Syst. 4(2): 167-192 (1995)

Page 7: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Prerequisites: Basics of Telos/ConceptBase

ER 2016 Jeusfeld, Neumayr: DeepTelos 7

Page 8: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

An example Telos model (without metamodeling)

ER 2016 Jeusfeld, Neumayr: DeepTelos 8

ownerProduct

Car

Person

MarysCar

Adult

Mary

owner

owner/o

Page 9: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Everything is represented as Proposition

ER 2016 Jeusfeld, Neumayr: DeepTelos 9

ownerProduct

Car

Person

MarysCar

Adult

Mary

owner

owner/o

P(<ID>,<source>,<label>,<target>)

P(o0,o0,Product,o0).

P(o1,o1,Person,o1).

P(o2,o0,owner,o1).

P(o3,o3,Car,o3).

P(o4,o3,isa,o0).

P(o5,o5,Adult,o5).

P(o6,o5,isa,o1).

P(o7,o3,owner,o5).

P(o8,o7,isa,o2).

P(o9,o9,MarysCar,o9).

P(o10,o9,in,o3).

P(o11,o11,Mary,o11).

P(o12,o11,in,o5).

P(o13,o9,o,o11).

p(o14,o13,in,o7).

Page 10: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Four kinds of propositions

ER 2016 Jeusfeld, Neumayr: DeepTelos 10

ownerProduct

Car

Person

MarysCar

Adult

Mary

owner

owner/o

P(<ID>,<source>,<label>,<target>)

P(o0,o0,Product,o0).

P(o1,o1,Person,o1).

P(o2,o0,owner,o1).

P(o3,o3,Car,o3).

P(o4,o3,isa,o0).

P(o5,o5,Adult,o5).

P(o6,o5,isa,o1).

P(o7,o3,owner,o5).

P(o8,o7,isa,o2).

P(o9,o9,MarysCar,o9).

P(o10,o9,in,o3).

P(o11,o11,Mary,o11).

P(o12,o11,in,o5).

P(o13,o9,o,o11).

p(o14,o13,in,o7).

Individuals (Individual objects, Classes)

Page 11: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Four kinds of propositions

ER 2016 Jeusfeld, Neumayr: DeepTelos 11

ownerProduct

Car

Person

MarysCar

Adult

Mary

owner

owner/o

P(<ID>,<source>,<label>,<target>)

P(o0,o0,Product,o0).

P(o1,o1,Person,o1).

P(o2,o0,owner,o1).

P(o3,o3,Car,o3).

P(o4,o3,isa,o0).

P(o5,o5,Adult,o5).

P(o6,o5,isa,o1).

P(o7,o3,owner,o5).

P(o8,o7,isa,o2).

P(o9,o9,MarysCar,o9).

P(o10,o9,in,o3).

P(o11,o11,Mary,o11).

P(o12,o11,in,o5).

P(o13,o9,o,o11).

p(o14,o13,in,o7).

Attribute classes and attribute instances

Page 12: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Four kinds of propositions

ER 2016 Jeusfeld, Neumayr: DeepTelos 12

ownerProduct

Car

Person

MarysCar

Adult

Mary

owner

owner/o

P(<ID>,<source>,<label>,<target>)

P(o0,o0,Product,o0).

P(o1,o1,Person,o1).

P(o2,o0,owner,o1).

P(o3,o3,Car,o3).

P(o4,o3,isa,o0).

P(o5,o5,Adult,o5).

P(o6,o5,isa,o1).

P(o7,o3,owner,o5).

P(o8,o7,isa,o2).

P(o9,o9,MarysCar,o9).

P(o10,o9,in,o3).

P(o11,o11,Mary,o11).

P(o12,o11,in,o5).

P(o13,o9,o,o11).

p(o14,o13,in,o7).

Specializations(Multiple Specialization)

Page 13: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Four kinds of propositions

ER 2016 Jeusfeld, Neumayr: DeepTelos 13

ownerProduct

Car

Person

MarysCar

Adult

Mary

owner

owner/o

P(<ID>,<source>,<label>,<target>)

P(o0,o0,Product,o0).

P(o1,o1,Person,o1).

P(o2,o0,owner,o1).

P(o3,o3,Car,o3).

P(o4,o3,isa,o0).

P(o5,o5,Adult,o5).

P(o6,o5,isa,o1).

P(o7,o3,owner,o5).

P(o8,o7,isa,o2).

P(o9,o9,MarysCar,o9).

P(o10,o9,in,o3).

P(o11,o11,Mary,o11).

P(o12,o11,in,o5).

P(o13,o9,o,o11).

p(o14,o13,in,o7).

Instantiations(Multiple Instantiation)

Page 14: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Names and IDs

ER 2016 Jeusfeld, Neumayr: DeepTelos 14

ownerProduct

Car

Person

MarysCar

Adult

Mary

owner

owner/o

P(<ID>,<source>,<label>,<target>)

P(o0,o0,Product,o0).

P(o1,o1,Person,o1).

P(o2,o0,owner,o1).

P(o3,o3,Car,o3).

P(o4,o3,isa,o0).

P(o5,o5,Adult,o5).

P(o6,o5,isa,o1).

P(o7,o3,owner,o5).

P(o8,o7,isa,o2).

P(o9,o9,MarysCar,o9).

P(o10,o9,in,o3).

P(o11,o11,Mary,o11).

P(o12,o11,in,o5).

P(o13,o9,o,o11).

p(o14,o13,in,o7).

Object identifiers are unique.

Page 15: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Names and IDs

ER 2016 Jeusfeld, Neumayr: DeepTelos 15

ownerProduct

Car

Person

MarysCar

Adult

Mary

owner

owner/o

P(<ID>,<source>,<label>,<target>)

P(o0,o0,Product,o0).

P(o1,o1,Person,o1).

P(o2,o0,owner,o1).

P(o3,o3,Car,o3).

P(o4,o3,isa,o0).

P(o5,o5,Adult,o5).

P(o6,o5,isa,o1).

P(o7,o3,owner,o5).

P(o8,o7,isa,o2).

P(o9,o9,MarysCar,o9).

P(o10,o9,in,o3).

P(o11,o11,Mary,o11).

P(o12,o11,in,o5).

P(o13,o9,o,o11).

p(o14,o13,in,o7).

Names of individual are unique

Page 16: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Names and IDs

ER 2016 Jeusfeld, Neumayr: DeepTelos 16

ownerProduct

Car

Person

MarysCar

Adult

Mary

owner

owner/o

P(<ID>,<source>,<label>,<target>)

P(o0,o0,Product,o0).

P(o1,o1,Person,o1).

P(o2,o0,owner,o1).

P(o3,o3,Car,o3).

P(o4,o3,isa,o0).

P(o5,o5,Adult,o5).

P(o6,o5,isa,o1).

P(o7,o3,owner,o5).

P(o8,o7,isa,o2).

P(o9,o9,MarysCar,o9).

P(o10,o9,in,o3).

P(o11,o11,Mary,o11).

P(o12,o11,in,o5).

P(o13,o9,o,o11).

p(o14,o13,in,o7).

Names of attributes are unique in conjunction with the source object.

Page 17: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Derived Specialization Predicate

ER 2016 Jeusfeld, Neumayr: DeepTelos 17

ownerProduct

Car

Person

MarysCar

Adult

Mary

owner

owner/o

∀𝑜, 𝑥, 𝑐 ∶ 𝑃 𝑜, 𝑐, 𝑖𝑠𝑎, 𝑑 ⇒ 𝐼𝑠𝑎 𝑐, 𝑑

∀𝑐, 𝑑, 𝑒: 𝐼𝑠𝑎 𝑐, 𝑑 , 𝐼𝑠𝑎(𝑑, 𝑒) ⇒ 𝐼𝑠𝑎 𝑐, 𝑒

∀𝑐: 𝐼𝑛 𝑐, #𝑂𝑏𝑗 ⇒ 𝐼𝑠𝑎 𝑐, 𝑐

= Reflexive-transitive closure of specialization propositions

Page 18: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Derived Instantiation Predicate

ER 2016 Jeusfeld, Neumayr: DeepTelos 18

owner

Class membership of objects is inherited upwardly to the superclasses.

Product

Car

Person

MarysCar

Adult

Mary

owner

owner/o

∀𝑜, 𝑥, 𝑐 ∶ 𝑃 𝑜, 𝑥, 𝑖𝑛, 𝑐 ⇒ 𝐼𝑛 𝑥, 𝑐

∀𝑥, 𝑐, 𝑑: 𝐼𝑛 𝑥, 𝑐 ∧ 𝐼𝑠𝑎 𝑐, 𝑑 ⇒ 𝐼𝑛 𝑥, 𝑑

Page 19: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Constraint on Attribute Specialization

ER 2016 Jeusfeld, Neumayr: DeepTelos 19

ownerProduct

Car

Person

MarysCar

Adult

Mary

owner

owner/o

Specialization of relationships, requires that source and target are specialized (with specialization being reflexive/transitive)

∀𝑠, 𝑠′, 𝑎, 𝑎′,𝑚,𝑚′, 𝑡, 𝑡′:𝐼𝑠𝑎 𝑎′, 𝑎 ∧ 𝑃 𝑎, 𝑠, 𝑚, 𝑡 ∧ 𝑃 𝑎′, 𝑠′, 𝑚′, 𝑡′

⇒ 𝐼𝑠𝑎 𝑠′, 𝑠 ∧ 𝐼𝑠𝑎 𝑡′, 𝑡 .

Page 20: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Constraint on Attribute Instantiation

ER 2016 Jeusfeld, Neumayr: DeepTelos 20

ownerProduct

Car

Person

MarysCar

Adult

Mary

owner

owner/o

Instantiation of relationships, requires that source and target are instantiated

∀𝑜, 𝑥, 𝑛, 𝑦, 𝑝: 𝑃 𝑜, 𝑥, 𝑛, 𝑦 ∧ 𝐼𝑛 𝑜, 𝑝 ⇒∃𝑐,𝑚, 𝑑: 𝑃 𝑝, 𝑐, 𝑚, 𝑑 ∧ 𝐼𝑛 𝑥, 𝑐 ∧ 𝐼𝑛(𝑦, 𝑑)

Page 21: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Metamodeling in Telos/ConceptBase(without extension)

ER 2016 Jeusfeld, Neumayr: DeepTelos 21

Page 22: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Unbounded Classification Hierarchies

ER 2016 Jeusfeld, Neumayr: DeepTelos

Individuals act as classes, metaclasses, metametaclasses ...

ProductModelCategory

MarysCar

CarModel

Porsche911

22

Page 23: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Clabjects

ER 2016 Jeusfeld, Neumayr: DeepTelos

Individuals in multi-level hierarchies introduce attribute classes and instantiate attributes

ProductModelCategory

MarysCar

CarModel

Porsche911

catMgrPerson

catMgr/mSusan

23

Page 24: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Clabjects

ER 2016 Jeusfeld, Neumayr: DeepTelos

Individuals in multi-level hierarchies introduce attribute classes and instantiate attributes

ProductModelCategory

MarysCar

CarModel

Porsche911

catMgrPerson

catMgr/mSusan

IntegernrDoors

2nrDoors/d

24

Page 25: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Clabjects

ER 2016 Jeusfeld, Neumayr: DeepTelos

Individuals in multi-level hierarchies introduce attribute classes and instantiate attributes

ProductModelCategory

MarysCar

CarModel

Porsche911

12232 kmmileage/m

catMgrPerson

catMgr/mSusan

IntegernrDoors

2nrDoors/d

Distancemileage

25

Page 26: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Attribute Metaclasses

ER 2016 Jeusfeld, Neumayr: DeepTelos

Attribute metaclasses have metaclasses as target.

ProductModelCategory

MarysCar

CarModel

Porsche911

techSpecMeasure

26

Page 27: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Attribute Metaclasses

ER 2016 Jeusfeld, Neumayr: DeepTelos

Attribute metaclasses are instantiated by attribute classes

ProductModelCategory

MarysCar

CarModel

Porsche911

techSpecMeasure

techSpec/maxSpeedSpeed

27

Page 28: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Attribute Metaclasses

ER 2016 Jeusfeld, Neumayr: DeepTelos

... which in turn are instantiated by attribute values

ProductModelCategory

MarysCar

CarModel

Porsche911

techSpecMeasure

techSpec/maxSpeedSpeed

257 km/hmaxSpeed/m

28

Page 29: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

What is missing?

ER 2016 Jeusfeld, Neumayr: DeepTelos

ProductModelCategoryHow to specify an attribute class listPrice that is instantiated by instance-instances of ProductModelCategory?

MarysCar

CarModel

Porsche911 € 127.000listPrice/p

EurolistPrice

Mismatch of instantiation steps

29

Page 30: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

What is missing?

ER 2016 Jeusfeld, Neumayr: DeepTelos

ProductModelCategoryHow to specify an attribute class mileage that is instantiated by instance-instances of CarModel?

MarysCar

CarModel

Porsche911

12321 kmmileage/m

Distancemileage

Mismatch of instantiation steps

30

Page 31: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

What is missing?

ER 2016 Jeusfeld, Neumayr: DeepTelos

ProductModelCategoryHow to specify an attribute class owner that is instantiated by instance-instance-instances of ProductModelCategory and which is specialized for instance-instances of CarModel?

MarysCar

CarModel

Porsche911

Maryowner/o

Personowner

instantiation instead of specialization

Adultowner

Mismatch of instantiation steps

31

Page 32: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Extending Telosfor Deep Characterization

ER 2016 Jeusfeld, Neumayr: DeepTelos 32

Page 33: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

A metaclass may have a class as most general instance.

ProductModelCategory

ProductModel

MarysCar

Car

CarModel

Porsche911

Most General Instances (MGIs)

IN

IN

33

Page 34: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

All instances of the metaclass are (by inference) specializations of the most general instance of the metaclass

ProductModelCategory

ProductModel

MarysCar

Car

CarModel

Porsche911

Derived Subclasses of MGIs

∀𝑥, 𝑐,𝑚 ∶ 𝐼𝑛 𝑥, 𝑐 ∧ 𝐼𝑁 𝑚, 𝑐⇒ 𝐼𝑠𝑎(𝑥,𝑚)Isa

In

IN

In

IN

Isa

34

Page 35: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

ProductModelCategoryAttribute class listPrice is specified with the most-general instance of ProductModelCategory and is instantiated by instance-instances of ProductModelCategory

ProductModel

MarysCar

Car

CarModel

Porsche911

Deep Characterization

€ 127.000listPrice/p

EurolistPrice

35

Page 36: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

Attribute class mileage is specified with Car (the most-general instance of CarModel) and instantiated by instance-instances of CarModel.

ProductModelCategory

ProductModel

MarysCar

Car

CarModel

Porsche911

Deep Characterization

12321 kmmileage/m

Distancemileage

36

Page 37: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

A most-general instance dmay in turn have a most-general instance.

ProductModelCategory

ProductModel

MarysCar

Car

CarModel

Porsche911

Chains of MGIs

Product

37

Page 38: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

A most-general instance dmay in turn have a most-general instance.

Most-general instances of specializiations of d are (by inference) specializations of the most-general instance of d.

ProductModelCategory

ProductModel

MarysCar

Car

CarModel

Porsche911

Chains of MGIs and Derived Subclasses

Product∀𝑥, 𝑐, 𝑚 ∶ 𝐼𝑁 𝑚, 𝑐 ∧ 𝐼𝑁 𝑛, 𝑑

∧ 𝐼𝑠𝑎 𝑐, 𝑑 ⇒ 𝐼𝑠𝑎(𝑥,𝑚)Isa

IN

Isa

IN

38

Page 39: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

Attribute class owner is specified with the most general instance of the most general instance of ProductModelCategory.

Attribute class owner is specialized with Car, the most general instance of CarModel.

Attribute class owner is instantiated by instance-instance-instances of ProductModelCategory.

ProductModelCategory

ProductModel

MarysCar

Car

CarModel

Porsche911

Deep Characterization and Specialization

Product

Maryowner/o

Person

ownerAdult

owner

39

Page 40: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Linguistic Metamodeling in DeepTelos

ER 2016 Jeusfeld, Neumayr: DeepTelos 40

Page 41: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

EntityType

Linguistic Metamodeling

41

Domainproperty

Modeling language constructs are modeled as metaclasses.

Page 42: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

EntityType

Linguistic Metamodeling

42

Employee Project

Domain

Euro Integer

property

property/budget

Modeling language constructs are modeled as metaclasses.

Page 43: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

EntityType

Linguistic Metamodeling

43

mary

Employee

p346

Project

Domain

€ 140.000

Euro

7

Integer

property

budget/b

property/budget

Modeling language constructs are modeled as metaclasses.

Page 44: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

EntityType

Linguistic Metamodelingwith Most General Instances

44

Entity

IN

mary

Employee

p346

Project

Domain

Value

IN

€ 140.000

Euro

7

Integer

property

IN

budget/b

property/budget

value

Modeling constructs (i.e., metaclasses) get most-general instances which act as their proxies on the class level.

Page 45: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

EntityType

Linguistic Metamodelingwith Most General Instances

45

Entity

IN

mary

Employee

p346

Project

Domain

Value

IN

€ 140.000

Euro

7

Integer

property

value

IN

budget/b

property/budget

Derived specialization and instantiation relationships facilitate schemaless querying.

E.g., what are the property values of p346?

Page 46: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

EntityType

Linguistic Metamodelingwith Most General Instances

46

Entity

IN

Domain

Value

IN

property

value

IN

lastModified

Date

... and generic (schema-independent) extensions.

E.g., property values have a lastModified attribute.

Page 47: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

EntityType

Linguistic Metamodelingwith Most General Instances

47

Entity

IN

Employee Project

Domain

Value

IN

Euro Integer

property

value

IN

property/budget

lastModified

Date

... and generic (schema-independent) extensions.

E.g., property values have a lastModified attribute.

Page 48: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

ER 2016 Jeusfeld, Neumayr: DeepTelos

EntityType

Linguistic Metamodelingwith Most General Instances

48

Entity

IN

mary

Employee

p346

Project

Domain

Value

IN

€ 140.000

Euro

7

Integer

property

value

IN

budget/b

property/budget

lastModified

Date

lastModified/l

2016-11-12

... and generic (schema-independent) extensions.

E.g., property values have a lastModified attribute.

Page 49: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Implementation, Related Work, and Conclusion

ER 2016 Jeusfeld, Neumayr: DeepTelos 49

Page 50: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Implementation

• DeepTelos is implemented in ConceptBase

• The implementation together with further examples is available under an open license at

http://conceptbase.cc/deeptelos

• We invite everyone to use DeepTelos for own experiments, developments and further extensions

ER 2016 Jeusfeld, Neumayr: DeepTelos 50

Page 51: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Related Work

• Powertypes and powertype pattern: Most general instances (MGIs) are inverse of power types. In contrast to adding a bit of metamodeling to two-level modeling (powertype pattern), DeepTelos adds deep characterization to a fully-fledged metamodeling language and system.

• VODAK pioneered linguistic metamodeling with deep characterization (with a construct similar to MGIs) but limited to three levels.

• Deep Instantiation/Modeling (DI) use potencies for deep characterization. Current approaches make a strong distinction between attributes (with deep characterization based on potencies) and relationships (restricted to strict metamodeling, restricted even more than Telos without MGIs).

• Dual Deep Instantiation/Modeling (DDI) overcomes limitations of DI by source and target potencies, to specify the number of instantiation steps separately for the source and target of a relationship. Even more flexible than DeepTelos but with added complexity.

• Ontological foundations: UFO-MLT

ER 2016 Jeusfeld, Neumayr: DeepTelos 51

Page 52: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Conclusion and Future Work

• We introduced DeepTelos

– a lightweight extension of the metamodeling system Telos/ConceptBase

– deep characterization of metan-classes by (chains of) most general instances

• What sets DeepTelos apart are strengths inherited from Telos and ConceptBase:

– simplicity and conceptual clarity

– formal semantics expressed and implemented in Datalog

– rich query and query optimization facilities

• Future work includes

– comparing DeepTelos with other multilevel modeling approaches

– investigating further axioms, possibly based on UFO-MLT

ER 2016 Jeusfeld, Neumayr: DeepTelos 52

Page 53: DeepTelos - ConceptBaseconceptbase.sourceforge.net/deeptelos/jeusfeld-neumayr-deeptelos-f… · DeepTelos Multi-level Modeling with Most General Instances Manfred Jeusfeld University

Thank you for your attention!

http://conceptbase.cc/deeptelos

ER 2016 Jeusfeld, Neumayr: DeepTelos 53