24
Generating an Ontology Specific Editor Hannes Niederhausen, Sven Windisch, Lutz Maicher Topic Maps Lab University of Leipzig Leipzig, Germany 29.10.2010/SEMAPRO2010 Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 1/24

Generating an Ontology Specific Editor

  • Upload
    bosso

  • View
    536

  • Download
    1

Embed Size (px)

DESCRIPTION

The slides of the presentation of SEMAPRO2010 in Florence.

Citation preview

Page 1: Generating an Ontology Specific Editor

Generating an Ontology Specific Editor

Hannes Niederhausen, Sven Windisch, Lutz Maicher

Topic Maps LabUniversity of LeipzigLeipzig, Germany

29.10.2010/SEMAPRO2010

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 1/24

Page 2: Generating an Ontology Specific Editor

Introduction

I The name: Hannes Niederhausen

I Working at the Topic Maps LabI Topic Maps Lab:

I Research Group at the University of LeipzigI Developing Tools and Applications for Topic MapsI Website: http://www.topicmapslab.de

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 2/24

Page 3: Generating an Ontology Specific Editor

Outline

Background: Topic Maps

Background: Onotoa

Motivation

Software Stack of the Generated Editor

Example

Summary

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 3/24

Page 4: Generating an Ontology Specific Editor

Outline

Background: Topic Maps

Background: Onotoa

Motivation

Software Stack of the Generated Editor

Example

Summary

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 4/24

Page 5: Generating an Ontology Specific Editor

Background: Topic Maps IThe ISO-Standard

I Subject centric semantic technologies

I ISO Standard Family: Core: TMDM ISO 13250-2

I Other parts: Serialisations, Query and Schema Language

I Topics represent anything like persons, web pages or abstract types likecolours

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 5/24

Page 6: Generating an Ontology Specific Editor

Background: Topic Maps IITopics

I Topic has identifier:I item identifier IRI to identify topic map element inside a topic mapI subject identifier IRI to description of represented subjectI subject locator IRI which leads to the represented subject

I Topic has names - typed using other topicsI Topics has occurrences - typed using other topicsI Topics can be typed by other topicsI Example Topic: "http://topicmapslab.de/people/Hannes_Niederhausen"

has the Name "Hannes Niederhausen" of type "wiki:Fullname" and is a"wiki:Person".

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 6/24

Page 7: Generating an Ontology Specific Editor

Background: Topic Maps IIIAssociations

I Associations connect topics

I Associations are typed with topics

I A topic plays a role in an association

I Roles are also typed with topics

I Example: "Hannes Niederhausen" plays role "Employee" in association"works for"

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 7/24

Page 8: Generating an Ontology Specific Editor

Outline

Background: Topic Maps

Background: Onotoa

Motivation

Software Stack of the Generated Editor

Example

Summary

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 8/24

Page 9: Generating an Ontology Specific Editor

Background: Onotoa

I Onotoa is schema editor for Topic Maps

I Plug-in based application based on Eclipse RCP

I Provides export to Topic Maps Constraint Language (ISO 19756)

I Provides schema extensions, called annotation

I Current beta: http://onotoa.topicmapslab.de/beta

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 9/24

Page 10: Generating an Ontology Specific Editor

Outline

Background: Topic Maps

Background: Onotoa

Motivation

Software Stack of the Generated Editor

Example

Summary

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 10/24

Page 11: Generating an Ontology Specific Editor

Motivation

I Topic Maps can be created by:I Merging different topic mapsI A mapping of non-topic-map data to a topic mapI Entered by authors

I For the latter an editor is needed

I Model-Driven-Development generates source code based on modeldescription like UML

I Question: Why not generate the domain model based on a Topic Mapsschema?

I After generating the domain model the next logic step was to generate awhole application.

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 11/24

Page 12: Generating an Ontology Specific Editor

Outline

Background: Topic Maps

Background: Onotoa

Motivation

Software Stack of the Generated Editor

Example

Summary

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 12/24

Page 13: Generating an Ontology Specific Editor

Software Stack of the Generated EditorExample for a Generated Editor

Figure: A generated application with some data.

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 13/24

Page 14: Generating an Ontology Specific Editor

Generated Editor Stack

Eclipse RCP

Aranuka Kuria

Topic MapsEngine

Generic Editor

Components

GeneratedDomain Specific

Component

Figure: The components of a generated editor application.

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 14/24

Page 15: Generating an Ontology Specific Editor

Outline

Background: Topic Maps

Background: Onotoa

Motivation

Software Stack of the Generated Editor

Example

Summary

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 15/24

Page 16: Generating an Ontology Specific Editor

ExampleDomain

I Attendees of SEMAPRO2010 and their employers

I If an attendee gives one or more presentations persist it too

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 16/24

Page 17: Generating an Ontology Specific Editor

ExampleSchema

Figure: The domain in the abstract domain diagram of Onotoa.

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 17/24

Page 18: Generating an Ontology Specific Editor

ExampleGenerator Annotations

I Annotate types to generate categories

I Set names to use as object serialisation

I Do not generate fields in talk and company for persons

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 18/24

Page 19: Generating an Ontology Specific Editor

ExampleGenerated Editor

Figure: The generated application with some data.

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 19/24

Page 20: Generating an Ontology Specific Editor

Editor Features

I Edit topic maps instances

I Store topic maps in a database or files

I Easy to modify by generating a new editor model

I Extendable with other Eclipse Plug-ins

I Application is platform independent

I Upload the topic map to Maiana(http://maiana.topicmapslab.de)

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 20/24

Page 21: Generating an Ontology Specific Editor

Outline

Background: Topic Maps

Background: Onotoa

Motivation

Software Stack of the Generated Editor

Example

Summary

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 21/24

Page 22: Generating an Ontology Specific Editor

Summary

I Generate an editor inside Onotoa very easy

I Building the application without any knowledge of Eclipse framework

I OutlookI Support more Topic Maps constructs, like reification and scopeI Provide layout configuration

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 22/24

Page 23: Generating an Ontology Specific Editor

The Sources

I All libraries are Open Source:I Onotoa:http://code.google.com/a/eclipselabs.org/p/onotoa/

I Kuria: http://code.google.com/p/kuria/I Aranuka: http://code.google.com/p/aranuka/I Code Generator:http://code.google.com/p/aranuka-codegenerator/

I Generic Editor SDK:http://code.google.com/a/eclipselabs.org/p/genny/

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 23/24

Page 24: Generating an Ontology Specific Editor

Questions??

Hannes Niederhausen, Sven Windisch, Lutz Maicher (Topic Maps Lab) 29.10.2010/SEMAPRO2010 24/24