Combining DSLs and Ontologies using Metamodel Integration Working Conference on Domain-Specific Languages 16.07.2009, Oxfo...
Objectives <ul><li>Motivation </li></ul><ul><ul><li>Scenario </li></ul></ul><ul><li>Foundations </li></ul><ul><ul><li>Meta...
Scenario <ul><li>Combined Modeling of </li></ul><ul><ul><li>Business Entities of Network Devices </li></ul></ul><ul><ul><l...
Proposed Solution <ul><li>Metamodel-based Integration of </li></ul><ul><ul><li>Business Entities Domain-Specific Language ...
Metamodel (BEDSL) <ul><li>BEDSL – Business Entity Domain Specific Language </li></ul><ul><li>BEDSL Models (M1 layer) confo...
Metamodel (FODA) <ul><li>FODA – Feature Oriented Domain Analysis </li></ul><ul><li>Describe Features and their Relationshi...
Ontologies <ul><li>Definition </li></ul><ul><ul><li>An Ontology is a Set of Definitions in a formal Language for Terms des...
Ontologies (Example) OWL Classes and Individuals: M1 layer OWL2 Model
Ontologies (Example) <ul><li>ObjectProperty:  HasPort </li></ul><ul><li>Domain: </li></ul><ul><li>NetworkDevice </li></ul>...
Metamodel of OWL2 (Excerpt) M2 layer OWL2 Metamodel
Integration <ul><li>Integration of BEDSL, FODA and OWL2 </li></ul><ul><li>Consider Metamodels of BEDSL, FODA and OWL2 </li...
Integration (BEDSL – OWL) <ul><li>Merge  BEDSL Entity  and  OWL2 Class </li></ul>M2 layer M1 layer conformsTo
Integration (BEDSL – OWL) <ul><li>Create Association between  IntegratedClass  and  ReferenceAttribute </li></ul><ul><li>E...
Integration (BEDSL – OWL – FODA) <ul><li>Create Specialization between   Feature  and  OWL Individual </li></ul>M2 layer M...
Conclusion <ul><li>Consider Metamodels of BEDSL, FODA, OWL2 and identify Concepts </li></ul><ul><li>Stepwise Combination o...
Finally <ul><li>Thanks for your attention </li></ul><ul><li>supported by </li></ul>www.most-project.eu
Upcoming SlideShare
Loading in …5
×

Combining DSLs and Ontologies Using Metamodel Integration

995 views
857 views

Published on

Talk at the IFIP Working Conference on Domain-Specific Languages, 14-17 June 2009, Oxford, United Kingdom.

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
995
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • - First start with a motivation of integrated modeling and using ontologies. The motivation is based on a scenario from an industrial partner of the MOST project. Foundations: Present all relevant DSLs and its metamodels which appear in the scenario. Further present some relevant parts of the ontology language OWL2. Stepwise presentation of the integration. In each step I will show which constructs of the different metamodels are combined. The result of applying all steps is the integrated metamodel. This can be used for integrated domain modeling. After each integration step I will give you the idea how both languages can be used together in one domain model and in a seamless manner.
  • Modeling of Business Entities on the one side, modeling of features on the other side. Idea: combine both languages and define which network devices are available for which operations. Furthermor define constraints and restrictions Solve this by annotating model elements and defining global constraints.
  • To provide integrated modeling integrate the metamodels of all relevant DSLs Result: Integrated Metamodel; allows for building one Domain Model containing parts of BEDSL, FODA and OWL2
  • - Metamodel of BEDSL
  • anpassen
  • Eventuell noch hasSupertype Association in M2 einfügen
  • Combining DSLs and Ontologies Using Metamodel Integration

    1. 1. Combining DSLs and Ontologies using Metamodel Integration Working Conference on Domain-Specific Languages 16.07.2009, Oxford Tobias Walter Jürgen Ebert
    2. 2. Objectives <ul><li>Motivation </li></ul><ul><ul><li>Scenario </li></ul></ul><ul><li>Foundations </li></ul><ul><ul><li>Metamodels </li></ul></ul><ul><ul><li>Ontologies </li></ul></ul><ul><li>Integration </li></ul><ul><ul><li>Integration of Domain Specific Languages </li></ul></ul><ul><ul><li>Integrated Domain Modeling </li></ul></ul><ul><li>Conclusion </li></ul>
    3. 3. Scenario <ul><li>Combined Modeling of </li></ul><ul><ul><li>Business Entities of Network Devices </li></ul></ul><ul><ul><li>Network Management Operation Features </li></ul></ul><ul><li>Annotate Model Elements with Constraints </li></ul>AvailableFor AvailableFor
    4. 4. Proposed Solution <ul><li>Metamodel-based Integration of </li></ul><ul><ul><li>Business Entities Domain-Specific Language (BEDSL) </li></ul></ul><ul><ul><li>Feature Oriented Domain Analysis Language (FODA) </li></ul></ul><ul><ul><li>Ontology Language (OWL) </li></ul></ul><ul><li>Result: Integrated Metamodel </li></ul><ul><ul><li>Allows for building one Domain Model containing: </li></ul></ul><ul><ul><ul><li>Structure of Devices defined by BEDSL Language </li></ul></ul></ul><ul><ul><ul><li>Features defined by FODA Language </li></ul></ul></ul><ul><ul><ul><li>Constraints defined by Ontology Language </li></ul></ul></ul>
    5. 5. Metamodel (BEDSL) <ul><li>BEDSL – Business Entity Domain Specific Language </li></ul><ul><li>BEDSL Models (M1 layer) conform to Metamodel (M2 layer) </li></ul>M2 layer M1 layer BEDSL Metamodel BEDSL Model conformsTo conformsTo
    6. 6. Metamodel (FODA) <ul><li>FODA – Feature Oriented Domain Analysis </li></ul><ul><li>Describe Features and their Relationships </li></ul><ul><li>Domain Models (M1 layer) represented as Feature-Tree </li></ul>M2 layer M1 layer FODA Metamodel FODA Model conformsTo conformsTo
    7. 7. Ontologies <ul><li>Definition </li></ul><ul><ul><li>An Ontology is a Set of Definitions in a formal Language for Terms describing the World </li></ul></ul><ul><li>Capability to describe Classes in many different ways and to handle incomplete Knowledge </li></ul><ul><li>Allow for complete and sound Reasoning simultaneously on Model and Instance Layer </li></ul><ul><li>Different Languages and Syntaxes: </li></ul><ul><ul><li>E.g.: OWL2 with Manchester Syntax </li></ul></ul>
    8. 8. Ontologies (Example) OWL Classes and Individuals: M1 layer OWL2 Model
    9. 9. Ontologies (Example) <ul><li>ObjectProperty: HasPort </li></ul><ul><li>Domain: </li></ul><ul><li>NetworkDevice </li></ul><ul><li>Range: </li></ul><ul><li>HasPort exactly 8 Port </li></ul><ul><li>ObjectProperty: HasState </li></ul><ul><li>Domain: </li></ul><ul><li>Port </li></ul><ul><li>Range: </li></ul><ul><li>HasState exactly 1 State </li></ul><ul><li>ObjectProperty : AvailableFor </li></ul><ul><li>Domain: </li></ul><ul><li>NetworkDevice </li></ul><ul><li>NetworkDevice and (hasPort some (Port and hasState some (FreePort))) </li></ul><ul><li>EquivalentTo: </li></ul><ul><li>NetworkDevice and AvailableFor value AllocatePorts </li></ul>OWL Object Properties: M1 layer OWL2 Model
    10. 10. Metamodel of OWL2 (Excerpt) M2 layer OWL2 Metamodel
    11. 11. Integration <ul><li>Integration of BEDSL, FODA and OWL2 </li></ul><ul><li>Consider Metamodels of BEDSL, FODA and OWL2 </li></ul><ul><li>Identify Concepts for Integration </li></ul><ul><li>Apply Integration Transformations </li></ul><ul><ul><li>Merge of Concepts </li></ul></ul><ul><ul><li>Create Specialization between Concepts </li></ul></ul><ul><ul><li>Create Super Class over Concepts </li></ul></ul><ul><ul><li>Create Association between Concepts </li></ul></ul><ul><ul><li>Extend Association by Concept </li></ul></ul><ul><li>Result: Integrated Metamodel </li></ul>
    12. 12. Integration (BEDSL – OWL) <ul><li>Merge BEDSL Entity and OWL2 Class </li></ul>M2 layer M1 layer conformsTo
    13. 13. Integration (BEDSL – OWL) <ul><li>Create Association between IntegratedClass and ReferenceAttribute </li></ul><ul><li>Extend Association to Class ReferenceProperty </li></ul><ul><li>Create Specialization between ReferenceProperty and OWL ObjectProperty </li></ul>M2 layer M1 layer
    14. 14. Integration (BEDSL – OWL – FODA) <ul><li>Create Specialization between Feature and OWL Individual </li></ul>M2 layer M1 layer
    15. 15. Conclusion <ul><li>Consider Metamodels of BEDSL, FODA, OWL2 and identify Concepts </li></ul><ul><li>Stepwise Combination of DSL by integrating their Metamodels </li></ul><ul><li>Result is integrated Metamodel which allows for building Domain Models simultaneously using BEDSL, FODA and OWL2 </li></ul>
    16. 16. Finally <ul><li>Thanks for your attention </li></ul><ul><li>supported by </li></ul>www.most-project.eu

    ×