Aranuka Presentation Topic Maps 2010 Oslo
Upcoming SlideShare
Loading in...5
×
 

Aranuka Presentation Topic Maps 2010 Oslo

on

  • 1,752 views

The slides of the presentation in Oslo at the Topic Maps 2010.

The slides of the presentation in Oslo at the Topic Maps 2010.

Statistics

Views

Total Views
1,752
Views on SlideShare
1,724
Embed Views
28

Actions

Likes
1
Downloads
12
Comments
1

2 Embeds 28

http://www.topicmapslab.de 17
http://www.slideshare.net 11

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Aranuka Presentation Topic Maps 2010 Oslo Aranuka Presentation Topic Maps 2010 Oslo Presentation Transcript

  • Aranuka - A POJO to Topic Maps mapping library Dipl.-Inf. Hannes Niederhausen Christian Haß M.Sc. Topic Maps Lab Natural Language Processing Group Department of Computer Science University of Leipzig April 15th 2010 Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 1/32
  • What is Aranuka? Atoll in the south pacific 0◦ 10 N 173◦ 35 E 15.5 square kilometers population of 852 Figure: http://en.wikipedia.org/wiki/Aranuka Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 2/32
  • What is Aranuka? Atoll in the south pacific 0◦ 10 N 173◦ 35 E 15.5 square kilometers population of 852 OTMM library Figure: http://en.wikipedia.org/wiki/Aranuka Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 2/32
  • Why do we need this? Topic Maps very generic Applications often more specific Makes development cumbersome Developer not familiar with Topic Maps Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 3/32
  • Idea Framework which handles Topic Maps interactions Should not influence model design Concept of JPA Use annotations Define the mapping Add schema information to the model Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 4/32
  • Mapping Classes → Topic Types Instance → Topics Strings → Names Strings or primitive types → Occurrences Other topic annotated classes → Associations Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 5/32
  • Not supported No variants No reification Only static scopes Only one topic type Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 6/32
  • What are annotations? Meta Information Can have parameter Available since Java 5.0 Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 7/32
  • A simple example 1 p u b l i c c l a s s Person { 2 3 i n t id ; 4 S t r i n g name ; 5 Date d a y O f B i r t h ; 6 7 Set <Person > f r i e n d s ; 8 } Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 8/32
  • Defining a topic type 1 2 p u b l i c c l a s s Person Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 9/32
  • Defining a topic type 1 @Topic ( s u b j e c t _ i d e n t i f i e r ="http://example/person" ) 2 p u b l i c c l a s s Person Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 10/32
  • We need an identifier 1 2 i n t id ; Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 11/32
  • We need an identifier 1 @Id ( t y p e =IdType . ITEM_IDENTIFIER ) 2 i n t id ; Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 12/32
  • Defining a name 1 2 S t r i n g name ; Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 13/32
  • Defining a name 1 @Name( t y p e ="http://example/name" ) 2 S t r i n g name ; Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 14/32
  • Defining an occurrance 1 2 Date d a y O f B i r t h ; Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 15/32
  • Defining an occurrance 1 @Occurrence ( t y p e ="http://example/day_of_birth" ) 2 Date d a y O f B i r t h ; Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 16/32
  • Defining an association 1 2 3 4 5 Set <Person > f r i e n d s ; Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 17/32
  • Defining an association 1 @Association ( 2 t y p e ="http://example/friendship" , 3 p l a y e d _ r o l e ="http://example/has_friend" , 4 o t h e r _ r o l e ="http://example/is_friend_of" ) 5 Set <Person > f r i e n d s ; Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 18/32
  • Architecture I Aranuka is a mapper to a Topic Maps engine Uses third party engines via connectors Using Aranuka leads to the following achitecture Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 19/32
  • Architecture II Java Application Domain Model Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 20/32
  • Architecture II Java Application Annotated Domain Model Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 21/32
  • Architecture II Java Application Annotated Domain Model Aranuka Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 22/32
  • Architecture II Java Application Annotated Domain Model Aranuka Ontopia Ontopia TinyTiM Memory RDBMS Connector Connector Connector Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 23/32
  • Configuration Choose connector Register annotated classes Set properties like file name, base locator or database connections Optional: Set names for the types specified in the annotation Set prefixes which can be used by identifiers in annotations and in identifierr in instances Creates session Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 24/32
  • Session Used to persist instances of annotated classes Retrieve all instances of a given type Retrieve instance by identifier Flush topic map Retrieved instances are nosynchronizeded with topic map Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 25/32
  • What can I use it for? Add Topic Maps layer to existing applications Create applications using Topic Maps as single persistence layer Use Aranuka to easily feed a topic map Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 26/32
  • Application Example: Yacca-Editor Application to enter the data of the topic map Topic Map is used to upload to a Topic Maps Browser Topic Map is used for Yacca game (http://yacca.me) Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 27/32
  • Summary Aranuka maps java classes top topics Makes handling Topic Maps easier Does not support every construct of the TMDM Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 28/32
  • Outlook Generate model with annotations based on TMCL Find way to map java.util.Map Provide TMQL access in session Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 29/32
  • Questions? Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 30/32
  • Where can you find. . . Aranuka: http://code.google.com/p/aranuka/ Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 31/32
  • Where can you find. . . Aranuka: http://code.google.com/p/aranuka/ Documentation: http://docs.topicmapslab.de/aranuka/ Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 31/32
  • Where can you find. . . Aranuka: http://code.google.com/p/aranuka/ Documentation: http://docs.topicmapslab.de/aranuka/ Discussion Group: http://groups.google.com/group/aranuka Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 31/32
  • Where can you find. . . Aranuka: http://code.google.com/p/aranuka/ Documentation: http://docs.topicmapslab.de/aranuka/ Discussion Group: http://groups.google.com/group/aranuka Us: At the Topic Maps Lab in Leipzig (http://www.topicmapslab.de) Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 31/32
  • Thank you for listening. Dipl.-Inf. Hannes Niederhausen, Christian Haß M.Sc. (Topic Maps Lab) April 15th 2010 32/32