Index of /er21demo

[ICO]NameLast modifiedSizeDescription

[PARENTDIR]Parent Directory  -  
[IMG]partialevaluation.png2021-08-16 10:12 58K 
[   ]partialevaluation.gel2021-08-16 10:12 31K 
[IMG]partialevaluation-car.png2021-08-16 10:12 16K 
[   ]partialevaluation-car.gel2021-08-16 10:12 31K 
[TXT]cc-by-sa-4.0.txt2021-08-16 10:12 20K 
[IMG]acrosslevels.png2021-08-16 10:12 31K 
[   ]acrosslevels.gel2021-08-16 10:12 27K 
[DIR]SOURCES/2021-08-17 10:22 -  
[IMG]ProductsMLT.png2021-08-16 10:12 20K 
[   ]ProductsMLT.gel2021-08-16 10:12 33K 
[IMG]ProductsMLT-phone.png2021-08-16 10:12 27K 
[   ]ProductsMLT-phone.gel2021-08-16 10:12 34K 
[IMG]ProductsDDI.png2021-08-16 10:12 17K 
[   ]ProductsDDI.gel2021-08-16 10:12 37K 
[IMG]ProductsDDI-phone.png2021-08-16 10:12 45K 
[   ]ProductsDDI-phone.gel2021-08-16 10:12 39K 

BACK

Download ConceptBase Φ Multi-Level Modeling Φ ConceptBase Team Φ Home



ER21 Demonstration: Multilevel Modeling with ConceptBase

conceptbase.sourceforge.net/er21demo

This directory contains the ConceptBase files for the paper

This directory contains the ConceptBase/Telos sources models for the above paper plus instructions to run the demo on your own computer and links to videos of the demonstration. Further information on multilevel modeling with ConceptBase is also available at http://conceptbase.sourceforge.net/CB-MLM.html.

The source models (*.sml, *.sml.txt,*.cbs) in this directory (incl. subdirectories) and their derivates (*.gel,*.png) are provided under a CC BY-SA 4.0 license: Attribution-ShareAlike 4.0 International.

Installation

Install ConceptBase via the above "Download ConceptBase" link for Linux, Windows, and MacOS. You need Java 8 or higher to do so. You can configure your ConceptBase installation to directly start the example graph files (*.gel). The graph files contain all necessary Telos definitions including the DeepTelos axioms and the dedicated graphical types. You only need to configure your web browser to open the CBGraph utility when you click a graph file. The procedure is simple: The graph files (*.gel) are self-sufficient graphical views of a ConceptBase database. They contain the graph plus all Telos sources to reconstruct the database for which the graph is a view. By starting a graph file with CBGraph, a new instance of the ConceptBase server shall be started and loaded with the necessary Telos sources.

Part 01: Introduction to metamodeling with ConceptBase

acrosslevels

In this part, we shortly introduce the main constructs of Telos, the data model underlying ConceptBase. In short, Telos allows arbitrarily high instantiation hierarchies. Generic constructs (instantiation, specialization, attribution) are defined with the so-called "omega" class Proposition. Any explicit information is an instance of the omega class Proposition (other frameworks use the term "Object" for such a class).

Click on the image icon on the right to start CBGraph with the "acrosslevels" example. Note that there are some attribution facts such as (PC proposed EntityType) that span instantiation levels. The "attribute" link of Proposition serves both for attributes and relations. This sets Telos apart from other conceptual modeling languages. However, you can well define your own link type to distinguish attributes and relations.

The green broken links are instantiation relations. In the demo, we shall show that the nodes and links on the right side are all instance of the omega class Proposition. This unique property of Proposition is later exploited for defining MLT-Telos as an extension of Telos.

Video Part 01: Metamodeling with ConceptBase

Part 02: Multilevel modeling with Dual Deep Instantiation (DDI)

ProductsDDI

Dual deep instantiation was our first attempt to realize multilevel modeling with ConceptBase. All constructs of DDI were defined within Telos using about 30 rules and constraints. The technical details are reported at http://conceptbase.sourceforge.net/ddi/. In the demonstration, we show how the objects, classes, and metaclasses are defined in the DDI extension of Telos, and how potencies are assigned to multilevel attributes/relations in DDI.

We also have a short look at the rules and constraints defining the constructs of DDI. DDI is based on potency numbers assigned to attrubutes/relations. The rules and constraints govern how the potencies are decremented when defining attributes/relations at instances. DDI uses its own omega class "OBJECT" and also defines instantiation, specialization and attribution independently from the counterparts of Telos. Telos/ConceptBase is merely used as the implementation platform. The existing Telos axioms for instantiation, specialization and attribution are only used for representational purposes, not for simplifying the axioms needed for DDI instantiation, specialization and attribution. Still, DDI is more expressive than the MLT-Telos approach discussed in the next part. It allows to constrain multilevel attributes/relations at lower abstraction levels (also for subclasses). From the viewpoint of the rule/constraint language of ConceptBase, DDI was a challenging exercise since ConceptBase virtually only supports binary predicates. Functiond and parameterized query classes had to be used to cover the more complex notions of DDI, such as finding out which constraints on an attribute are applicable when many classes define an attribute with a given label.

Video Part 02: Dual Deep Instantiation

Part 03: Multilevel modeling with MLT-Telos

ProductsMLT

MLT-Telos is based on the powertypes to realize multilevel modeling. Unlike DDI, it reuses the semantics of instantiation, specialization and attribution that come with Telos. This greatly reduces the number of axioms.

The levels/potency numbers used in DDI are replaces by chains of "powertype" relations. For example, the class ProductType is a metaclass (abstraction level 2). It is the powertype of the class Product, which is a simple class (level 1). All instances of ProductType (like Car) are subclasses of Product. So, all instances of Car can "see" all attribute definitions of Product. You should consider the classes of a powertype chain as one complex object. The attributes/relations are defined at one level above where they are going to be used.

More details on MLT-Telos are provided at http://conceptbase.sourceforge.net/mlt-telos/. While DDI allows to define an attribute/relation at many places in the class hierarchy, MLT-Telos only supports to define it at a single abstraction level.

Video Part 03: MLT-Telos

Part 04: Partial evaluation of multilevel rules

partialevaluation-car

Both DDI and MLT-Telos rely heavily on the metamodeling and logic-based capabilities of ConceptBase. Of particular interest may be how the partial evaluation of multilevel rules can be used to generate much more efficient rule sets. ConceptBase will translate only so-called multilevel rule or constraint to a set of two-level rules/constraints. Those partially evaluated rules and constraints have less variables and are this more efficient to evaluate by the Datalog engine of ConceptBase. Further, it makes sure that an instantiation predicate (x in c) only has constants in the class position "c".

More information on partial evaluation in ConceptBase is available at http://conceptbase.sourceforge.net/link-semantics.html and in the ConceptBase user manual, see section of "Meta formulas".

Video Part 04: Partial Evaluation

Note: The video uses a graph view showing a link (Car specializes Product). The multilevel formula however displays a predicate (t1 specializes_1 t2). We changed the graph file on this page to show the link (Car specializes_1 Product). Both are correct, since the "specializes" predicate is the transitive closure of the "spezializes_1" via a deductive rule in the definition of MLT-Telos.


© Manfred Jeusfeld, University of Skövde, 2021-08-11 (2021-10-01)