Einführung in Topic Maps




                    Topic Maps Query Language
                                Session 2




 ...
Einführung in Topic Maps
Agenda
 1. Navigationskonzept II
 2. Path-Language – Draft 2010 ( kurzer Einblick )




  topicma...
Einführung in Topic Maps




                   Sprachbestandteile
                      Navigationskonzept




 topicmaps...
Einführung in Topic Maps
Navigationskonzept
 ●   basiert auf dem Proxy-Konzept des TMRM
 ●   Modell der Topic Map als abst...
Einführung in Topic Maps
Navigationskonzept - Syntax
   DIRECTION ::= '<<' | '>>'


   AXIS-NAME ::= 'item' | 'indicators'...
Einführung in Topic Maps
Achse - indicators
 ●   keine optionalen Typen
 ●   vorwärts: alle Subject-Identifier eines Topic...
Einführung in Topic Maps
Achse - indicators


        http://en.wikipedia.org/wiki/Puccini >> indicators




        “http...
Einführung in Topic Maps
Achse - locators
 ●   keine optionalen Typen
 ●   vorwärts: alle Subject-Locator eines Topics
 ● ...
Einführung in Topic Maps
Achse - locators


        http://en.wikipedia.org/wiki/Puccini >> locators




        “http://e...
Einführung in Topic Maps
Achse - item
 ●   keine optionalen Typen
 ●   ohne Pluralisierung!
                       → items...
Einführung in Topic Maps
Achse - item


        http://en.wikipedia.org/wiki/Puccini >> item




        “http://en.wikipe...
Einführung in Topic Maps
Achse - types
 ●   keine optionalen Typen
 ●   vorwärts: alle Typen eines Topics oder der Typ ein...
Einführung in Topic Maps
Achse - types


        http://en.wikipedia.org/wiki/Puccini >> types
        http://en.wikipedia...
Einführung in Topic Maps
Achse - supertypes
 ●   keine optionalen Typen
 ●   vorwärts: alle Super-Typen eines Topic Typs
 ...
Einführung in Topic Maps
Achse - supertypes


        http://psi.ontopia.net/music/composer >> supertypes
        http://p...
Einführung in Topic Maps
TMQL – Typhierarchie

                                 A


           D                 B        ...
Einführung in Topic Maps
TMQL – Typhierarchie

                                  A


           D                 B       ...
Einführung in Topic Maps
TMQL – Typhierarchie

                                  A


           D                 B       ...
Einführung in Topic Maps
TMQL – Typhierarchie

                                  A


           D                 B       ...
Einführung in Topic Maps
Achse - characteristics
 ●   vorwärts: alle Eigenschaften eines Topics


 ●   rückwärts: das Topi...
Einführung in Topic Maps
Achse - characteristics

             http://en.wikipedia.org/wiki/Puccini
                      ...
Einführung in Topic Maps
TMQL – characteristics axis

                             Name 1        t


                     ...
Einführung in Topic Maps
TMQL – characteristics axis

                              Name 1             t


               ...
Einführung in Topic Maps
Achse - atomify
 ●   vorwärts: Literal des konkreten Objektes
      ●   unterstützt Names, Occurr...
Einführung in Topic Maps
Achse - atomify


           http://en.wikipedia.org/wiki/Puccini
                       >> chara...
Einführung in Topic Maps
Achse - players
 ●   vorwärts: alle Spieler einer Assoziation
      ●   auch von Topic Typ einer ...
Einführung in Topic Maps
Achse - players



       http://psi.ontopia.net/music/composed-by >> players



           http:...
Einführung in Topic Maps
Achse - roles
 ●   vorwärts: alle Rollentypen einer Assoziation
      ●   auch von Topic Typ eine...
Einführung in Topic Maps
Achse - roles



       http://psi.ontopia.net/music/composed-by >> roles



           http://ps...
Einführung in Topic Maps
Achse - traverse
 ●   vorwärts: alle verketteten Spieler
      ●   Verkettung über eine Assoziati...
Einführung in Topic Maps
Achse - traverse



       http://psi.ontopia.net/music/composed-by << traverse



           htt...
Einführung in Topic Maps
TMQL – association axes




                    r1   a1   r2        r3   a2   r4



          p1 ...
Einführung in Topic Maps
TMQL – association axes




                    r1   a1      r2            r3      a2     r4



 ...
Einführung in Topic Maps
TMQL – association axes




                    r1   a1    r2            r3     a2   r4



      ...
Einführung in Topic Maps
TMQL – association axes




                    r1   a1    r2            r3     a2    r4



     ...
Einführung in Topic Maps
Achse - scope
 ●   kein optionaler Typ


 ●   vorwärts: alle Themes eines Konstrukts


 ●   rückw...
Einführung in Topic Maps
Achse - scope



       http://psi.ontopia.net/music/composed-by >> scope



           http://ps...
Einführung in Topic Maps
Achse - reifier
 ●   kein optionaler Typ


 ●   vorwärts: der Reifier des Konstrukts


 ●   rückw...
Einführung in Topic Maps
Achse - reifier



        http://psi.ontopia.net/music/composed-by >> reifier



            htt...
Einführung in Topic Maps




                   Sprachbestandteile
                        Draft 2010




 topicmapslab.de
Einführung in Topic Maps
Draft 2010
 ●   nur Path-Expression
 ●   Änderungen
      ●   ähnliches Navigationskonzept mit ve...
Einführung in Topic Maps
Draft 2010
 ●   Syntax
     pathstep → '/' pathspec filter *
     pathspec → axis '::' anyref | a...
Einführung in Topic Maps
Draft 2010
 ●   Typ-Instanz-Achsen
         type, direct-type, instance, direct-instance
 ●   Sup...
Einführung in Topic Maps
Draft 2010
 ●   Assoziationsachsen
         role, player
 ●   Eigenschaften
         name, occurr...
Einführung in Topic Maps
Draft 2010
 ●   Sonstige Achsen
         parent, scope, reifier




     topicmapslab.de
        ...
Einführung in Topic Maps
Draft 2010
 ●   Beispiel
     / topic::composer / composed-by ( composer -> work )




     topic...
Einführung in Topic Maps
Draft 2010
 ●   Beispiel
     / topic::composer / composed-by ( composer -> work )


            ...
Einführung in Topic Maps
Draft 2010
 ●   Beispiel
     / topic::composer / composed-by ( composer -> work )



           ...
Einführung in Topic Maps




                       ENDE




 topicmapslab.de
Upcoming SlideShare
Loading in …5
×

TMQL tutorial - part 2

1,080 views
1,023 views

Published on

In this second part of TMQL tutorials you learn some more basics of the standards: the navigation concept part 2 and the TMQL 2010 draft. All slides are in German.

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,080
On SlideShare
0
From Embeds
0
Number of Embeds
158
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

TMQL tutorial - part 2

  1. 1. Einführung in Topic Maps Topic Maps Query Language Session 2 Sven Krosse M. Sc. Topic Maps Lab an der Universität Leipzig krosse@informatik.uni-leipzig.de topicmapslab.de
  2. 2. Einführung in Topic Maps Agenda 1. Navigationskonzept II 2. Path-Language – Draft 2010 ( kurzer Einblick ) topicmapslab.de
  3. 3. Einführung in Topic Maps Sprachbestandteile Navigationskonzept topicmapslab.de
  4. 4. Einführung in Topic Maps Navigationskonzept ● basiert auf dem Proxy-Konzept des TMRM ● Modell der Topic Map als abstrakter bidirektionaler Graph ● Definition von 12 Achsen ( +2 NCL ) topicmapslab.de 4
  5. 5. Einführung in Topic Maps Navigationskonzept - Syntax DIRECTION ::= '<<' | '>>' AXIS-NAME ::= 'item' | 'indicators' | 'locators' | 'traverse' | 'players' | 'roles' | 'types' | 'reifier' | 'atomify' | 'characteristics' | 'supertypes' | 'scope' STEP ::= DIRECTION AXIS-NAME [ TOPIC-REF ] topicmapslab.de 5
  6. 6. Einführung in Topic Maps Achse - indicators ● keine optionalen Typen ● vorwärts: alle Subject-Identifier eines Topics ● rückwärts: Adressierung eines Topics mittels Subject-Identifier topicmapslab.de 6
  7. 7. Einführung in Topic Maps Achse - indicators http://en.wikipedia.org/wiki/Puccini >> indicators “http://en.wikipedia.org/wiki/Puccini” << indicators topicmapslab.de 7
  8. 8. Einführung in Topic Maps Achse - locators ● keine optionalen Typen ● vorwärts: alle Subject-Locator eines Topics ● rückwärts: Adressierung eines Topics mittels Subject-Locator topicmapslab.de 8
  9. 9. Einführung in Topic Maps Achse - locators http://en.wikipedia.org/wiki/Puccini >> locators “http://en.wikipedia.org/wiki/Puccini” << locators topicmapslab.de 9
  10. 10. Einführung in Topic Maps Achse - item ● keine optionalen Typen ● ohne Pluralisierung! → items ● vorwärts: alle Item-Identifier eines Topics ● rückwärts: Adressierung eines Topics mittels Item-Identifier topicmapslab.de 10
  11. 11. Einführung in Topic Maps Achse - item http://en.wikipedia.org/wiki/Puccini >> item “http://en.wikipedia.org/wiki/Puccini” << item topicmapslab.de 11
  12. 12. Einführung in Topic Maps Achse - types ● keine optionalen Typen ● vorwärts: alle Typen eines Topics oder der Typ eines Topic Maps Konstruktes ● rückwärts: alle Instanzen eines Topic Typs ● NCL: instances – Achse ● vorwärts: alle Instanzen eines Topics Typs ● rückwärts: alle Typen einer Topics oder der Typ eines Topic Maps Konstruktes topicmapslab.de 12
  13. 13. Einführung in Topic Maps Achse - types http://en.wikipedia.org/wiki/Puccini >> types http://en.wikipedia.org/wiki/Puccini << instances http://psi.ontopia.net/music/composer << types http://psi.ontopia.net/music/composer >> instances topicmapslab.de 13
  14. 14. Einführung in Topic Maps Achse - supertypes ● keine optionalen Typen ● vorwärts: alle Super-Typen eines Topic Typs ● rückwärts: alle Sub-Typen eines Topic Typs ● NCL: subtypes – Achse ● vorwärts: alle Sub-Typen eines Topic Typs ● rückwärts: alle Super-Typen eines Topic Typs topicmapslab.de 14
  15. 15. Einführung in Topic Maps Achse - supertypes http://psi.ontopia.net/music/composer >> supertypes http://psi.ontopia.net/music/composer << subtypes http://psi.ontopia.net/music/musician << supertypes http://psi.ontopia.net/music/musician >> subtypes topicmapslab.de 15
  16. 16. Einführung in Topic Maps TMQL – Typhierarchie A D B C E F G e1 e2 g1 g2 topicmapslab.de 16
  17. 17. Einführung in Topic Maps TMQL – Typhierarchie A D B C E F G e1 e2 g1 g2 TMQL-Query: e1 >> types topicmapslab.de 17
  18. 18. Einführung in Topic Maps TMQL – Typhierarchie A D B C E F G e1 e2 g1 g2 TMQL-Query: E >> supertypes topicmapslab.de 18
  19. 19. Einführung in Topic Maps TMQL – Typhierarchie A D B C E F G e1 e2 g1 g2 TMQL-Query: A >> instances topicmapslab.de 19
  20. 20. Einführung in Topic Maps Achse - characteristics ● vorwärts: alle Eigenschaften eines Topics ● rückwärts: das Topic mit der Eigenschaft ● vordefinierte Typen ● alle Name tm:name ● alle Occurrences tm:occurrence topicmapslab.de 20
  21. 21. Einführung in Topic Maps Achse - characteristics http://en.wikipedia.org/wiki/Puccini >> characteristics http://en.wikipedia.org/wiki/Puccini >> characteristics tm:name http://en.wikipedia.org/wiki/Puccini >> characteristics tm:occurrence topicmapslab.de 21
  22. 22. Einführung in Topic Maps TMQL – characteristics axis Name 1 t Name 2 g e1 Occurrence 1 t Occurrence 2 g topicmapslab.de 22
  23. 23. Einführung in Topic Maps TMQL – characteristics axis Name 1 t Name 2 g e1 Occurrence 1 t Occurrence 2 g TMQL-Query: e1 >> characteristics g topicmapslab.de 23
  24. 24. Einführung in Topic Maps Achse - atomify ● vorwärts: Literal des konkreten Objektes ● unterstützt Names, Occurrences und Locators ● rückwärts: Locator, Name oder Occurrence mit dem Literal ● Mehrdeutigkeit möglich topicmapslab.de 24
  25. 25. Einführung in Topic Maps Achse - atomify http://en.wikipedia.org/wiki/Puccini >> characteristics >> atomify “Puccini” << atomify << characteristics topicmapslab.de 25
  26. 26. Einführung in Topic Maps Achse - players ● vorwärts: alle Spieler einer Assoziation ● auch von Topic Typ einer Assoziation aus ● optionaler Typ = Rollentyp ● rückwärts: alle Assoziation mit dem Spieler ● optionaler Typ = Rollentyp topicmapslab.de 26
  27. 27. Einführung in Topic Maps Achse - players http://psi.ontopia.net/music/composed-by >> players http://en.wikipedia.org/wiki/Puccini << players topicmapslab.de 27
  28. 28. Einführung in Topic Maps Achse - roles ● vorwärts: alle Rollentypen einer Assoziation ● auch von Topic Typ einer Assoziation aus ● rückwärts: alle Assoziation mit dem Rollentyp ● optionaler Typ = Assoziationstyp topicmapslab.de 28
  29. 29. Einführung in Topic Maps Achse - roles http://psi.ontopia.net/music/composed-by >> roles http://psi.ontopia.net/literature/work << roles topicmapslab.de 29
  30. 30. Einführung in Topic Maps Achse - traverse ● vorwärts: alle verketteten Spieler ● Verkettung über eine Assoziation zwischen zwei Topics ● optionaler Typ = Assoziationstyp ● rückwärts: alle verketteten Assoziation ● Verkettung über gemeinsamen Spieler ● optionaler Typ = Typ des Spielers topicmapslab.de 30
  31. 31. Einführung in Topic Maps Achse - traverse http://psi.ontopia.net/music/composed-by << traverse http://en.wikipedia.org/wiki/Puccini >> traverse topicmapslab.de 31
  32. 32. Einführung in Topic Maps TMQL – association axes r1 a1 r2 r3 a2 r4 p1 p2 p3 topicmapslab.de 32
  33. 33. Einführung in Topic Maps TMQL – association axes r1 a1 r2 r3 a2 r4 p1 p2 p3 TMQL-Query: p2 << players >> roles [ . >> players == p2 ] topicmapslab.de 33
  34. 34. Einführung in Topic Maps TMQL – association axes r1 a1 r2 r3 a2 r4 p1 p2 p3 TMQL-Query: a1 >> players topicmapslab.de 34
  35. 35. Einführung in Topic Maps TMQL – association axes r1 a1 r2 r3 a2 r4 p1 p2 p3 TMQL-Query: p2 >> traverse topicmapslab.de 35
  36. 36. Einführung in Topic Maps Achse - scope ● kein optionaler Typ ● vorwärts: alle Themes eines Konstrukts ● rückwärts: alle Konstrukte im Scope mit der Theme topicmapslab.de 36
  37. 37. Einführung in Topic Maps Achse - scope http://psi.ontopia.net/music/composed-by >> scope http://psi.ontopia.net/opera/web << scope topicmapslab.de 37
  38. 38. Einführung in Topic Maps Achse - reifier ● kein optionaler Typ ● vorwärts: der Reifier des Konstrukts ● rückwärts: das reifizierte Element topicmapslab.de 38
  39. 39. Einführung in Topic Maps Achse - reifier http://psi.ontopia.net/music/composed-by >> reifier http://psi.ontopia.net/opera/web << reifier topicmapslab.de 39
  40. 40. Einführung in Topic Maps Sprachbestandteile Draft 2010 topicmapslab.de
  41. 41. Einführung in Topic Maps Draft 2010 ● nur Path-Expression ● Änderungen ● ähnliches Navigationskonzept mit veränderter Syntax ● Achsenrichtung entfernt ● zusätzliche Achsen ● Entfernen einiger Achsen ● Syntax noch näher an XPath ● Standardachsen für jeden Konstrukt-Typ (Achsen optional) topicmapslab.de 41
  42. 42. Einführung in Topic Maps Draft 2010 ● Syntax pathstep → '/' pathspec filter * pathspec → axis '::' anyref | axis '::' | anyref | assocpattern filter → boolfilter | scopefilter assocpattern → anyref '(' anyref '->' anyref ')' topicmapslab.de 42
  43. 43. Einführung in Topic Maps Draft 2010 ● Typ-Instanz-Achsen type, direct-type, instance, direct-instance ● Supertyp-Subtyp-Achsen supertype, direct-supertype, subtype, direct-subtype ● Identifier-Achsen subject-identifier, subject-locator, item-identifier topicmapslab.de 43
  44. 44. Einführung in Topic Maps Draft 2010 ● Assoziationsachsen role, player ● Eigenschaften name, occurrence, variant, value, datatype ● Topic-Map-Achsen topic, association topicmapslab.de 44
  45. 45. Einführung in Topic Maps Draft 2010 ● Sonstige Achsen parent, scope, reifier topicmapslab.de 45
  46. 46. Einführung in Topic Maps Draft 2010 ● Beispiel / topic::composer / composed-by ( composer -> work ) topicmapslab.de 46
  47. 47. Einführung in Topic Maps Draft 2010 ● Beispiel / topic::composer / composed-by ( composer -> work ) alle Topics vom Typ composer topicmapslab.de 47
  48. 48. Einführung in Topic Maps Draft 2010 ● Beispiel / topic::composer / composed-by ( composer -> work ) alle Rollenspieler topicmapslab.de 48
  49. 49. Einführung in Topic Maps ENDE topicmapslab.de

×