SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
JRuby	
  Topic	
  Maps	
  
  Arnim	
  Bleier,	
  Benjamin	
  Bock,	
  	
  
  Uta	
  Schulze	
  and	
  Lutz	
  Maicher	
  
  {bleier,	
  bock,	
  uta.schulze,	
  maicher}	
  
  @informa:k.uni-­‐leipzig.de	
  


                                                      Agenda:	
  
                                                      • Java,	
  Ruby	
  and	
  Topic	
  Maps	
  
                                                       	
  
                                                      • Re)using	
  Exis@ng	
  Code	
  
                                                       (
                                                      • Scalability	
  and	
  Performance	
  
                                                       	
  
Fi>h	
  Interna@onal	
  Conference	
  on	
  	
  
Topic	
  Maps	
  Research	
  and	
  Applica@ons	
  
Talks@TMRA	
  Leipzig,	
  2009-­‐13-­‐11	
                                     topicmapslab.de	
  
Introduc@on	
  

    The	
  Seman@c	
  Web	
  is	
  about	
  Integra@on	
  of	
  Data.	
  

     Java	
  and	
  Ruby	
  equally	
  have	
  something	
  to	
  offer.	
  

   Why	
  not	
  combine	
  them	
  and	
  get	
  the	
  best	
  of	
  booth	
  
                             languages?	
  	
  



                                                                 topicmapslab.de	
  
What	
  has	
  Java	
  to	
  offer?	
  

                        high	
  performance	
  
                            easy	
  hos@ng	
  
           mul@ple,	
  fast	
  TMAPI	
  Implementa@ons	
  
             reuse	
  of	
  exis@ng	
  Very	
  Good	
  Code	
  




                                                             topicmapslab.de	
  
…and	
  What	
  is	
  Ruby	
  for?	
  

            crea@ng	
  Domain	
  Specific	
  Languages	
  
                       rapid	
  Prototyping	
  	
  
                  rapid	
  	
  Web	
  Development	
  
              rapid	
  Applica@on	
  Development	
  




                                                        topicmapslab.de	
  
Bringing	
  booth	
  together	
  

        So>ware	
  and	
  its	
  development	
  needs	
  to	
  be	
  
                       integrated,	
  too.	
  




                                                             topicmapslab.de	
  
Goals	
  of	
  JRTM	
  

     • Keeping	
  the	
  TMAPI	
  contract	
  intact	
  
      	
  
     • Suppor@ng	
  different	
  engines	
  in	
  parallel	
  
      	
  
     • Each	
  TMQL	
  axis	
  as	
  one	
  method	
  call	
  
      	
  
     • A	
  single	
  IO	
  interface	
  
      	
  
     • Maintaining	
  the	
  syntax	
  from	
  RTM	
  
      	
  
     • Performance	
  
      	
  

                                                                 topicmapslab.de	
  
So	
  …	
  let’s	
  connect	
  

    tms = RTM.connect!     :implementation => :TINYTIM"




                                                  topicmapslab.de	
  
So	
  …	
  let’s	
  connect	
  

    tms = RTM.connect       (:implementation => :ONTOPIA,"
    !   !   !   !   !   !   :backend! => :RDBMS,"
    !   !   !   !   !   !   :properties => “path/to/jdbc.props”)"




                                                    topicmapslab.de	
  
and	
  create	
  a	
  Topic	
  

    tms = RTM.connect"
    tm = tms.create http://example.com/tm/"
    locator = tm.createLocator “http://ex.com/Thing”"
    topic = tm.createTopicByItemIdentifier locator "




                                               topicmapslab.de	
  
and	
  create	
  a	
  Topic	
  

      tms = RTM.connect"
      tm = tms.create “http://example.com/tm/” "
      topic = tm.get! “ii:http://ex.com/Thing”"



  Topic	
  Reference:	
  
  subject	
  iden@fier:	
   nothing	
  or	
  “si:”	
  
  subject	
  locator:	
  	
   	
   “=”	
  or	
  	
  “sl:”	
  	
   	
     	
  
  item	
  iden@fier:	
   	
   	
   “^”	
  or	
  	
  “ii:”	
  


                                                                                topicmapslab.de	
  
and	
  create	
  a	
  Topic	
  

      tms = RTM.connect"
      tm = tms.create “http://example.com/tm/” "
      topic = tm.get! “^http://ex.com/Thing”"



  Topic	
  Reference:	
  
  subject	
  iden@fier:	
   nothing	
  or	
  “si:”	
  
  subject	
  locator:	
  	
   	
   “=”	
  or	
  	
  “sl:”	
  	
   	
     	
  
  item	
  iden@fier:	
   	
   	
   “^”	
  or	
  	
  “ii:”	
  


                                                                                topicmapslab.de	
  
Hash	
  Access	
  

      topic[“-nickname @office”] = “Lutz”"
      topic[“email”] = “maicher@informatik.uni-leipzig.de”"
      university_of_leipzig = association[“employer”]



  Topics[“type	
  @scope1,	
  scope2”]	
  
  -Names	
  are	
  prefixed	
  with	
  “-”	
  
  	
  	
  	
  Occurrences	
  are	
  not	
  prefixed	
  
  Associa9ons[“type	
  @scope1”]	
  
  	
  	
  Roles	
  
                                                         topicmapslab.de	
  
TMQL	
  -­‐	
  Naviga@on	
  

     tel_nums = Employee.tmql.reverse_types."
     !     characteristics(“Tel_Nr”).atomify.result"




  Keywords:	
  
  Enter	
  &	
  leave	
  the	
  mode:	
  
  tmql,	
  result	
  
  The	
  12	
  axes:	
  	
  
  roles,	
  traverse,	
  characteris9cs	
  ...	
  

                                                     topicmapslab.de	
  
JRTM::IO	
  

   tm.from_jtm “path/to/file.jtm”"
   tm.to_jtm           “path/to/file.jtm”, “http://ex.com/baseIRI”"




                        TMXML	
                 RDF/N3	
  
                     XTM1	
             JTM	
  
                                                      RDF/XML	
  
                              XTM20	
       LTM	
  



   Thanks	
  to	
  Lars	
  Heuer’s	
                         topicmapslab.de	
  
Under	
  the	
  hood	
  
	
   …	
  and	
  in	
  the	
  perspec@ve	
  



             Your Application




                RTM
RTMAPI	
  




                                               topicmapslab.de	
  
Under	
  the	
  hood	
  
	
   …	
  and	
  in	
  the	
  perspec@ve	
  



             Your Application




                RTM                                    tmapiX	
  
RTMAPI	
  
                                ONTOPIA	
      @nyTiM	
   …	
  ?	
           TMAPI	
  




                                                              topicmapslab.de	
  
Under	
  the	
  hood	
  
	
   …	
  and	
  in	
  the	
  perspec@ve	
  


                                                  Your
                                               Application


                       RTM::Sugar RTM::TMQL                  RTM::IO           RTMAPI	
  
                         RTM::CoreExtensions                 tmapiX	
  
                          ONTOPIA	
            @nyTiM	
   …	
  ?	
               TMAPI	
  




                                                                  topicmapslab.de	
  
Under	
  the	
  hood	
  
	
   …	
  and	
  in	
  the	
  perspec@ve	
  


              Musica                              Your
                         Majana
              Migrans                          Application


               RTM::Sugar       RTM::TMQL     RTM::IO                     RTMAPI	
  
                       RTM::CoreExtensions    tmapiX	
  
            RTM::AR
                          ONTOPIA	
      @nyTiM	
   …	
  ?	
                TMAPI	
  




                                                             topicmapslab.de	
  
But	
  is	
  it	
  produc@on	
  ready?	
  

                       Over	
  600	
  Test	
  Cases	
  
                         Musica	
  Migrans	
  II	
  
                                 Maiana	
  


             …	
  when	
  will	
  you	
  start	
  to	
  benefit?	
  



                                    	
  	
  hjp://rtm.topicmapslab.de	
  

Contenu connexe

Similaire à JRuby Topic Maps

Rails performance: Ruby GC tweaking
Rails performance: Ruby GC tweaking Rails performance: Ruby GC tweaking
Rails performance: Ruby GC tweaking
Dimelo R&D Team
 
Maiana Presentation at Topic Maps 2010 Oslo
Maiana Presentation at Topic Maps 2010 OsloMaiana Presentation at Topic Maps 2010 Oslo
Maiana Presentation at Topic Maps 2010 Oslo
Uta Schulze
 
MLeap: Deploy Spark ML Pipelines to Production API Servers
MLeap: Deploy Spark ML Pipelines to Production API ServersMLeap: Deploy Spark ML Pipelines to Production API Servers
MLeap: Deploy Spark ML Pipelines to Production API Servers
DataWorks Summit
 
Content-sensitive User Interfaces for Annotated Web Pages
Content-sensitive User Interfaces for Annotated Web PagesContent-sensitive User Interfaces for Annotated Web Pages
Content-sensitive User Interfaces for Annotated Web Pages
flxn13
 

Similaire à JRuby Topic Maps (20)

Version Control in Machine Learning + AI (Stanford)
Version Control in Machine Learning + AI (Stanford)Version Control in Machine Learning + AI (Stanford)
Version Control in Machine Learning + AI (Stanford)
 
Topic Maps Web Service: Case Examples and General Structure
Topic Maps Web Service: Case Examples and General StructureTopic Maps Web Service: Case Examples and General Structure
Topic Maps Web Service: Case Examples and General Structure
 
Real-World Functional Programming @ Incubaid
Real-World Functional Programming @ IncubaidReal-World Functional Programming @ Incubaid
Real-World Functional Programming @ Incubaid
 
Rails performance: Ruby GC tweaking
Rails performance: Ruby GC tweaking Rails performance: Ruby GC tweaking
Rails performance: Ruby GC tweaking
 
Data science in ruby, is it possible? is it fast? should we use it?
Data science in ruby, is it possible? is it fast? should we use it?Data science in ruby, is it possible? is it fast? should we use it?
Data science in ruby, is it possible? is it fast? should we use it?
 
TorqueBox - Ruby Hoedown 2011
TorqueBox - Ruby Hoedown 2011TorqueBox - Ruby Hoedown 2011
TorqueBox - Ruby Hoedown 2011
 
SFSCON23 - Chris Mair - Self-hosted, Open Source Large Language Models (LLMs)
SFSCON23 - Chris Mair - Self-hosted, Open Source Large Language Models (LLMs)SFSCON23 - Chris Mair - Self-hosted, Open Source Large Language Models (LLMs)
SFSCON23 - Chris Mair - Self-hosted, Open Source Large Language Models (LLMs)
 
Maiana Presentation at Topic Maps 2010 Oslo
Maiana Presentation at Topic Maps 2010 OsloMaiana Presentation at Topic Maps 2010 Oslo
Maiana Presentation at Topic Maps 2010 Oslo
 
T3dallas typoscript
T3dallas typoscriptT3dallas typoscript
T3dallas typoscript
 
How DSL works on Ruby
How DSL works on RubyHow DSL works on Ruby
How DSL works on Ruby
 
MLeap: Deploy Spark ML Pipelines to Production API Servers
MLeap: Deploy Spark ML Pipelines to Production API ServersMLeap: Deploy Spark ML Pipelines to Production API Servers
MLeap: Deploy Spark ML Pipelines to Production API Servers
 
XML Amsterdam 2012 Keynote
XML Amsterdam 2012 KeynoteXML Amsterdam 2012 Keynote
XML Amsterdam 2012 Keynote
 
Getting Started with the OpenNTF Domino API
Getting Started with the OpenNTF Domino APIGetting Started with the OpenNTF Domino API
Getting Started with the OpenNTF Domino API
 
The Value of Smalltalk
The Value of SmalltalkThe Value of Smalltalk
The Value of Smalltalk
 
Apache Sling - The whys and the hows
Apache Sling - The whys and the howsApache Sling - The whys and the hows
Apache Sling - The whys and the hows
 
Version Control in AI/Machine Learning by Datmo
Version Control in AI/Machine Learning by DatmoVersion Control in AI/Machine Learning by Datmo
Version Control in AI/Machine Learning by Datmo
 
Lambda kappa architecture - the jury are still out
Lambda   kappa architecture - the jury are still outLambda   kappa architecture - the jury are still out
Lambda kappa architecture - the jury are still out
 
Content-sensitive User Interfaces for Annotated Web Pages
Content-sensitive User Interfaces for Annotated Web PagesContent-sensitive User Interfaces for Annotated Web Pages
Content-sensitive User Interfaces for Annotated Web Pages
 
Graph Processing with Apache TinkerPop
Graph Processing with Apache TinkerPopGraph Processing with Apache TinkerPop
Graph Processing with Apache TinkerPop
 
Kamaelia Europython Tutorial
Kamaelia Europython TutorialKamaelia Europython Tutorial
Kamaelia Europython Tutorial
 

Plus de tmra

Weber 2010 brn
Weber 2010 brnWeber 2010 brn
Weber 2010 brn
tmra
 
Designing a gui_description_language_with_topic_maps
Designing a gui_description_language_with_topic_mapsDesigning a gui_description_language_with_topic_maps
Designing a gui_description_language_with_topic_maps
tmra
 
Tmra2010 matsuuraposter
Tmra2010 matsuuraposterTmra2010 matsuuraposter
Tmra2010 matsuuraposter
tmra
 
Putting topic maps to rest.tmra2010
Putting topic maps to rest.tmra2010Putting topic maps to rest.tmra2010
Putting topic maps to rest.tmra2010
tmra
 
Presentation final
Presentation finalPresentation final
Presentation final
tmra
 
Mappe1
Mappe1Mappe1
Mappe1
tmra
 
Hatana tmra 2010
Hatana tmra 2010Hatana tmra 2010
Hatana tmra 2010
tmra
 

Plus de tmra (20)

Topic Maps for improved access to and use of content in relational databases ...
Topic Maps for improved access to and use of content in relational databases ...Topic Maps for improved access to and use of content in relational databases ...
Topic Maps for improved access to and use of content in relational databases ...
 
External Schema for Topic Map Database
External Schema for Topic Map DatabaseExternal Schema for Topic Map Database
External Schema for Topic Map Database
 
Weber 2010 brn
Weber 2010 brnWeber 2010 brn
Weber 2010 brn
 
Subject Headings make information to be topic maps
Subject Headings make information to be topic mapsSubject Headings make information to be topic maps
Subject Headings make information to be topic maps
 
Inquiry Optimization Technique for a Topic Map Database
Inquiry Optimization Technique for a Topic Map DatabaseInquiry Optimization Technique for a Topic Map Database
Inquiry Optimization Technique for a Topic Map Database
 
Topic Merge Scenarios for Knowledge Federation
Topic Merge Scenarios for Knowledge FederationTopic Merge Scenarios for Knowledge Federation
Topic Merge Scenarios for Knowledge Federation
 
JavaScript Topic Maps in server environments
JavaScript Topic Maps in server environmentsJavaScript Topic Maps in server environments
JavaScript Topic Maps in server environments
 
Modelling IMS QTI with Topic Maps
Modelling IMS QTI with Topic MapsModelling IMS QTI with Topic Maps
Modelling IMS QTI with Topic Maps
 
Hatana - Virtual Topic Map Merging
Hatana - Virtual Topic Map MergingHatana - Virtual Topic Map Merging
Hatana - Virtual Topic Map Merging
 
Designing a gui_description_language_with_topic_maps
Designing a gui_description_language_with_topic_mapsDesigning a gui_description_language_with_topic_maps
Designing a gui_description_language_with_topic_maps
 
Tmra2010 matsuuraposter
Tmra2010 matsuuraposterTmra2010 matsuuraposter
Tmra2010 matsuuraposter
 
Automatic semantic interpretation of unstructured data for knowledge management
Automatic semantic interpretation of unstructured data for knowledge managementAutomatic semantic interpretation of unstructured data for knowledge management
Automatic semantic interpretation of unstructured data for knowledge management
 
Putting topic maps to rest.tmra2010
Putting topic maps to rest.tmra2010Putting topic maps to rest.tmra2010
Putting topic maps to rest.tmra2010
 
Presentation final
Presentation finalPresentation final
Presentation final
 
Evaluation of Instances Asset in a Topic Maps-Based Ontology
Evaluation of Instances Asset in a Topic Maps-Based OntologyEvaluation of Instances Asset in a Topic Maps-Based Ontology
Evaluation of Instances Asset in a Topic Maps-Based Ontology
 
Mappe1
Mappe1Mappe1
Mappe1
 
Et Tu, Brute? Topic Maps and Discourse Semantics
Et Tu, Brute? Topic Maps and Discourse SemanticsEt Tu, Brute? Topic Maps and Discourse Semantics
Et Tu, Brute? Topic Maps and Discourse Semantics
 
A PHP library for Ontopia-CMS Integration
A PHP library for Ontopia-CMS IntegrationA PHP library for Ontopia-CMS Integration
A PHP library for Ontopia-CMS Integration
 
Live Integration Framework
Live Integration FrameworkLive Integration Framework
Live Integration Framework
 
Hatana tmra 2010
Hatana tmra 2010Hatana tmra 2010
Hatana tmra 2010
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Dernier (20)

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 

JRuby Topic Maps

  • 1. JRuby  Topic  Maps   Arnim  Bleier,  Benjamin  Bock,     Uta  Schulze  and  Lutz  Maicher   {bleier,  bock,  uta.schulze,  maicher}   @informa:k.uni-­‐leipzig.de   Agenda:   • Java,  Ruby  and  Topic  Maps     • Re)using  Exis@ng  Code   ( • Scalability  and  Performance     Fi>h  Interna@onal  Conference  on     Topic  Maps  Research  and  Applica@ons   Talks@TMRA  Leipzig,  2009-­‐13-­‐11   topicmapslab.de  
  • 2. Introduc@on   The  Seman@c  Web  is  about  Integra@on  of  Data.   Java  and  Ruby  equally  have  something  to  offer.   Why  not  combine  them  and  get  the  best  of  booth   languages?     topicmapslab.de  
  • 3. What  has  Java  to  offer?   high  performance   easy  hos@ng   mul@ple,  fast  TMAPI  Implementa@ons   reuse  of  exis@ng  Very  Good  Code   topicmapslab.de  
  • 4. …and  What  is  Ruby  for?   crea@ng  Domain  Specific  Languages   rapid  Prototyping     rapid    Web  Development   rapid  Applica@on  Development   topicmapslab.de  
  • 5. Bringing  booth  together   So>ware  and  its  development  needs  to  be   integrated,  too.   topicmapslab.de  
  • 6. Goals  of  JRTM   • Keeping  the  TMAPI  contract  intact     • Suppor@ng  different  engines  in  parallel     • Each  TMQL  axis  as  one  method  call     • A  single  IO  interface     • Maintaining  the  syntax  from  RTM     • Performance     topicmapslab.de  
  • 7. So  …  let’s  connect   tms = RTM.connect! :implementation => :TINYTIM" topicmapslab.de  
  • 8. So  …  let’s  connect   tms = RTM.connect (:implementation => :ONTOPIA," ! ! ! ! ! ! :backend! => :RDBMS," ! ! ! ! ! ! :properties => “path/to/jdbc.props”)" topicmapslab.de  
  • 9. and  create  a  Topic   tms = RTM.connect" tm = tms.create http://example.com/tm/" locator = tm.createLocator “http://ex.com/Thing”" topic = tm.createTopicByItemIdentifier locator " topicmapslab.de  
  • 10. and  create  a  Topic   tms = RTM.connect" tm = tms.create “http://example.com/tm/” " topic = tm.get! “ii:http://ex.com/Thing”" Topic  Reference:   subject  iden@fier:   nothing  or  “si:”   subject  locator:       “=”  or    “sl:”         item  iden@fier:       “^”  or    “ii:”   topicmapslab.de  
  • 11. and  create  a  Topic   tms = RTM.connect" tm = tms.create “http://example.com/tm/” " topic = tm.get! “^http://ex.com/Thing”" Topic  Reference:   subject  iden@fier:   nothing  or  “si:”   subject  locator:       “=”  or    “sl:”         item  iden@fier:       “^”  or    “ii:”   topicmapslab.de  
  • 12. Hash  Access   topic[“-nickname @office”] = “Lutz”" topic[“email”] = “maicher@informatik.uni-leipzig.de”" university_of_leipzig = association[“employer”] Topics[“type  @scope1,  scope2”]   -Names  are  prefixed  with  “-”        Occurrences  are  not  prefixed   Associa9ons[“type  @scope1”]      Roles   topicmapslab.de  
  • 13. TMQL  -­‐  Naviga@on   tel_nums = Employee.tmql.reverse_types." ! characteristics(“Tel_Nr”).atomify.result" Keywords:   Enter  &  leave  the  mode:   tmql,  result   The  12  axes:     roles,  traverse,  characteris9cs  ...   topicmapslab.de  
  • 14. JRTM::IO   tm.from_jtm “path/to/file.jtm”" tm.to_jtm “path/to/file.jtm”, “http://ex.com/baseIRI”" TMXML   RDF/N3   XTM1   JTM   RDF/XML   XTM20   LTM   Thanks  to  Lars  Heuer’s   topicmapslab.de  
  • 15. Under  the  hood     …  and  in  the  perspec@ve   Your Application RTM RTMAPI   topicmapslab.de  
  • 16. Under  the  hood     …  and  in  the  perspec@ve   Your Application RTM tmapiX   RTMAPI   ONTOPIA   @nyTiM   …  ?   TMAPI   topicmapslab.de  
  • 17. Under  the  hood     …  and  in  the  perspec@ve   Your Application RTM::Sugar RTM::TMQL RTM::IO RTMAPI   RTM::CoreExtensions tmapiX   ONTOPIA   @nyTiM   …  ?   TMAPI   topicmapslab.de  
  • 18. Under  the  hood     …  and  in  the  perspec@ve   Musica Your Majana Migrans Application RTM::Sugar RTM::TMQL RTM::IO RTMAPI   RTM::CoreExtensions tmapiX   RTM::AR ONTOPIA   @nyTiM   …  ?   TMAPI   topicmapslab.de  
  • 19. But  is  it  produc@on  ready?   Over  600  Test  Cases   Musica  Migrans  II   Maiana   …  when  will  you  start  to  benefit?       hjp://rtm.topicmapslab.de