SlideShare ist ein Scribd-Unternehmen logo
1 von 25
Downloaden Sie, um offline zu lesen
Introduction                                 Semantic Web technologies          Jena




               Jena – A Semantic Web Framework for Java

                                           Aleksander Pohl

                            Katedra Informatyki, Akademia Górniczo-Hutnicza


                                             2. luty 2009




Aleksander Pohl                                                               KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




Agenda



       Introduction


       Semantic Web technologies


       Jena




Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




Agenda



       Introduction


       Semantic Web technologies


       Jena




Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




What is the Semantic Web?


       The Semantic Web is an:
               ... extension of current web in which
           ◮

               ... information is given well defined meaning
           ◮

               ... better enabling people and computers to work in
           ◮
               cooperations.
       The Semantic Web, Tim Barners-Lee, James Hendler and Ora
       Lassil




Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies         Jena




Motivation



               providing information about Web resources and the
           ◮
               systems that use them
               allowing data to be processed outside the particular
           ◮
               environment in which it was created
               combining data from several applications to arrive at new
           ◮
               information




Aleksander Pohl                                                            KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




Agenda



       Introduction


       Semantic Web technologies


       Jena




Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




Core Semantic Web technologies



               RDF – Resource Description Framework
           ◮

               RDFS – RDF Schema (vocabulary)
           ◮

               OWL – Web Ontology Language
           ◮

               SPARQL – Query Language for RDF
           ◮




Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies      Jena




RDF – Resource Description Framework


               based on XML and URIs
           ◮

               directed, labeled graph format for representing
           ◮
               information in the web
               formal semantics allows well founded deductions in RDF
           ◮
               data
               extensible vocabulary
           ◮




Aleksander Pohl                                                         KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies            Jena




RDF – graph data model




               any expression in RDF is a collection of triples
           ◮

               every triple consists of a subject, a predicate and an object
           ◮

               the arc direction is significant – it always points toward the
           ◮
               object
               assertion of an RDF triple says that some relationship,
           ◮
               indicated by the predicate, holds between the things
               denoted by subject and object of the triple
               meaning of an RDF graph is the conjunction (logical AND)
           ◮
               of the statements corresponding to all the triples it contains
Aleksander Pohl                                                             KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies      Jena




RDF – subject, predicate & object


               nodes of an RDF graph are its subjects and objects
           ◮

               a node may be:
           ◮
                      URI with optional fragment identifier, eg.
                  ◮

                      http://www.example.org/staffid/1234#xyz
                      literal, eg. quot;Georgequot;
                  ◮

                      blank
                  ◮


               the subject of a triple might be only URI reference or
           ◮
               a blank node
               the predicate of the triple must be URI reference
           ◮




Aleksander Pohl                                                         KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




RDF – example




       <rdf:Description rdf:about=quot;http://www.ivan-herman.netquot;>
        <foaf:name>Ivan</foaf:name>
        <abc:myCalendar rdf:resource=quot;http://.../myCalendarquot;/>
        <foaf:surname>Herman</foaf:surname>
       </rdf:Description>


Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies                Jena




RDFS – RDF Vocabulary Description Language
               RDF itself provides no means for defining
           ◮
               application-specific classes and properties
               They are described in RDFS – RDF Vocabulary
           ◮
               Description Language (aka RDF Schema)
               RDF Schema provides a type system for RDF, similar to
           ◮
               type systems in programming languages:
                      allows resources to be defined as instances of one or more
                  ◮

                      classes
                      allows classes to be organized in a hierarchical fashion
                  ◮


               URIref prefix
           ◮
               http://www.w3.org/2000/01/rdf-schema#,
               conventionally associated with the QName prefix rdfs:

Aleksander Pohl                                                                   KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




RDFS – basic notions (1)
               Classes are described using the RDFS resources:
           ◮
                      rdfs:Class
                  ◮

                      rdfs:Resource
                  ◮

               and the properties:
           ◮
                      rdf:type
                  ◮

                      rdfs:subClassOf
                  ◮

               Example:
           ◮
                      ex:MotorVehicle rdf:type rdfs:Class.
                  ◮

                      Java: class MotorVehicle {· · · }
                      exthings:myCar rdf:type ex:MotorVehicle.
                  ◮

                      Java: myCar = new MotorVehicle();
                      ex:Van rdfs:subClassOf ex:MotorVehicle.
                  ◮

                      Java: class Van extends MotorVehicle {· · · }

Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies                 Jena




OWL – Web Ontology Language
               Intended to be used when the information needs to be
           ◮
               processed by applications (not merely presented to
               humans)
               Provides additional vocabulary along with a formal
           ◮
               semantics
               Sublanguages:
           ◮
                      Lite – classification hierarchy and simple constraints
                  ◮

                      (extension of restricted RDF)
                      DL (Description Logic) – maximum expressiveness while
                  ◮

                      retaining computational completeness (extension of
                      restricted RDF)
                      Full – maximum expressiveness and the syntactic freedom
                  ◮

                      of RDF with no computational guarantees (real extension of
                      RDF)
Aleksander Pohl                                                                    KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




OWL Lite additions

               (In)Equality: equivalentClass,
           ◮
               equivalentProperty, sameAs, differentFrom, ...
               Property characteristics: inverseOf,
           ◮
               TransitiveProperty, SymmetricProperty, ...
               Restricted Cardinality: minCardinality,
           ◮
               maxCardinality, cardinality
               Annotation Properties: rdfs:label, rdfs:comment,
           ◮
               rdfs:seeAlso, rdfs:isDefinedBy,
               AnnotationProperty, OntologyProperty



Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




Semantic Web – ontologies overview




Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies            Jena




SPARQL – overview


               SPARQL is a query language for RDF
           ◮

               It is similar to SQL in terms of purpose and syntax, but
           ◮
               different in terms of application (relational data vs. graph
               based data)
               Human-friendly syntax
           ◮

               Data integration and aggregation – multiple sources
           ◮
               supported by default
               Allows to make yes/no questions
           ◮




Aleksander Pohl                                                               KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




SPARQL Example
               Data:
           ◮
               <http://example.org/book/book1>
               <http://purl.org/dc/elements/1.1/title>
               ”SPARQL Tutorial” .
               Query:
           ◮
               SELECT ?title WHERE {
               <http://example.org/book/book1>
               <http://purl.org/dc/elements/1.1/title>
               ?title . }
               Result:
           ◮

                        title
                  ”SPARQL Tutorial”

Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




Agenda



       Introduction


       Semantic Web technologies


       Jena




Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




Jena2 – overview

               Developed by HP Laboratories
           ◮

               Open-source Java implementation of core Semantic Web
           ◮
               technologies:
                      RDF graph manipulation API
                  ◮

                      RDFS and OWL reasoning API
                  ◮

                      Includes the de facto reference RDF/XML parser
                  ◮

                      RDF/XML, N3 and N-triple Input/Output
                  ◮

                      SPQRQL query engine
                  ◮

                      rule-based inference engine
                  ◮


               In-memory or persistent storage
           ◮




Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies            Jena




RDF API example
       // some definitions
 1
       static String personURI              = quot;http://somewhere/JohnSmithquot;;
 2
       static String fullName               = quot;John Smithquot;;
 3
 4
       // create an empty Model
 5
       Model model = ModelFactory.createDefaultModel();
 6
 7
       // create the resource
 8
       Resource johnSmith = model.createResource(personURI);
 9
10
       // add the property
11
       johnSmith.addProperty(VCARD.FN, fullName);
12




Aleksander Pohl                                                               KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




SPARQL API example
       Model model = ... ;
 1
       String queryString = quot; .... quot; ;
 2
       Query query = QueryFactory.create(queryString) ;
 3
       QueryExecution qexec = QueryExecutionFactory.create(query, model) ;
 4
       try {
 5
         ResultSet results = qexec.execSelect() ;
 6
         for ( ; results.hasNext() ; )
 7
         {
 8
           QuerySolution soln = results.nextSolution() ;
 9
           // Get a result variable by name.
10
           RDFNode x = soln.get(quot;varNamequot;) ;
11
           // Get a result variable - must be a resource
12
           Resource r = soln.getResource(quot;VarRquot;) ;
13
           // Get a result variable - must be a literal
14
           Literal l = soln.getLiteral(quot;VarLquot;) ;
15
         }
16
       } finally { qexec.close() ; }
17




Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




Jena comparison




Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies            Jena




Bibliography (1)

               Brickley, Dan; Guha, Ramanathan (2004). RDF Vocabulary
           ◮
               Description Language 1.0: RDF Schema,
               http://www.w3.org/TR/rdf-schema/
               Carroll, Jeremy J.; Dickinson, Ian; Dollin, Chris; Reynolds,
           ◮
               Dave; Seaborne, Andy; Wilkinson, Kevin (2003). Jena:
               Implementing the Semantic Web Recommendations, HP
               Laboratories, Bristol, technical report HPL-2003-146.
               Herman, Ivan Questions (and Answers) on the semantic
           ◮
               Web, http://www.w3.org/People/Ivan/-
               CorePresentations/SW_QA



Aleksander Pohl                                                               KI AGH
Jena – A Semantic Web Framework for Java
Introduction                               Semantic Web technologies     Jena




Bibliography (2)


               Klyne, Graham; Carroll, Jeremy J. (2004). Resource
           ◮
               Description Framework (RDF): Concepts and Abstract
               Syntax http://www.w3.org/TR/rdf-concepts/
               McBride, Brian (2002), The Semantic Web, HP
           ◮
               Laboratories, Bristol, Euroweb 2002 invited talk.
               McGuinness, Deborah; van Harmelen, Frank (2004). OWL
           ◮
               Web Ontology Language Overview,
               http://www.w3.org/TR/owl-features/




Aleksander Pohl                                                        KI AGH
Jena – A Semantic Web Framework for Java

Weitere ähnliche Inhalte

Was ist angesagt?

SPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeSPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeAdriel Café
 
Building a Knowledge Graph using NLP and Ontologies
Building a Knowledge Graph using NLP and OntologiesBuilding a Knowledge Graph using NLP and Ontologies
Building a Knowledge Graph using NLP and OntologiesNeo4j
 
Introduction to RDF & SPARQL
Introduction to RDF & SPARQLIntroduction to RDF & SPARQL
Introduction to RDF & SPARQLOpen Data Support
 
Oracle REST Data Services: Options for your Web Services
Oracle REST Data Services: Options for your Web ServicesOracle REST Data Services: Options for your Web Services
Oracle REST Data Services: Options for your Web ServicesJeff Smith
 
온톨로지 & 규칙 추론 시스템
온톨로지 & 규칙 추론 시스템온톨로지 & 규칙 추론 시스템
온톨로지 & 규칙 추론 시스템Sang-Kyun Kim
 
Spark SQL Tutorial | Spark Tutorial for Beginners | Apache Spark Training | E...
Spark SQL Tutorial | Spark Tutorial for Beginners | Apache Spark Training | E...Spark SQL Tutorial | Spark Tutorial for Beginners | Apache Spark Training | E...
Spark SQL Tutorial | Spark Tutorial for Beginners | Apache Spark Training | E...Edureka!
 
SPARQL 사용법
SPARQL 사용법SPARQL 사용법
SPARQL 사용법홍수 허
 
Oracle REST Data Services Best Practices/ Overview
Oracle REST Data Services Best Practices/ OverviewOracle REST Data Services Best Practices/ Overview
Oracle REST Data Services Best Practices/ OverviewKris Rice
 
RDFS In A Nutshell V1
RDFS In A Nutshell V1RDFS In A Nutshell V1
RDFS In A Nutshell V1Fabien Gandon
 
Basics of Solr and Solr Integration with AEM6
Basics of Solr and Solr Integration with AEM6Basics of Solr and Solr Integration with AEM6
Basics of Solr and Solr Integration with AEM6DEEPAK KHETAWAT
 
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODOLinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODOChris Mungall
 
Graph and RDF databases
Graph and RDF databasesGraph and RDF databases
Graph and RDF databasesNassim Bahri
 
Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...
Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...
Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...Simplilearn
 

Was ist angesagt? (20)

SPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeSPARQL-DL - Theory & Practice
SPARQL-DL - Theory & Practice
 
Solr Presentation
Solr PresentationSolr Presentation
Solr Presentation
 
Building a Knowledge Graph using NLP and Ontologies
Building a Knowledge Graph using NLP and OntologiesBuilding a Knowledge Graph using NLP and Ontologies
Building a Knowledge Graph using NLP and Ontologies
 
Introduction to RDF & SPARQL
Introduction to RDF & SPARQLIntroduction to RDF & SPARQL
Introduction to RDF & SPARQL
 
Introduction to SPARQL
Introduction to SPARQLIntroduction to SPARQL
Introduction to SPARQL
 
SPARQL Cheat Sheet
SPARQL Cheat SheetSPARQL Cheat Sheet
SPARQL Cheat Sheet
 
Oracle REST Data Services: Options for your Web Services
Oracle REST Data Services: Options for your Web ServicesOracle REST Data Services: Options for your Web Services
Oracle REST Data Services: Options for your Web Services
 
온톨로지 & 규칙 추론 시스템
온톨로지 & 규칙 추론 시스템온톨로지 & 규칙 추론 시스템
온톨로지 & 규칙 추론 시스템
 
Spark SQL Tutorial | Spark Tutorial for Beginners | Apache Spark Training | E...
Spark SQL Tutorial | Spark Tutorial for Beginners | Apache Spark Training | E...Spark SQL Tutorial | Spark Tutorial for Beginners | Apache Spark Training | E...
Spark SQL Tutorial | Spark Tutorial for Beginners | Apache Spark Training | E...
 
SPARQL 사용법
SPARQL 사용법SPARQL 사용법
SPARQL 사용법
 
Oracle REST Data Services Best Practices/ Overview
Oracle REST Data Services Best Practices/ OverviewOracle REST Data Services Best Practices/ Overview
Oracle REST Data Services Best Practices/ Overview
 
RDFS In A Nutshell V1
RDFS In A Nutshell V1RDFS In A Nutshell V1
RDFS In A Nutshell V1
 
JSON-LD and SHACL for Knowledge Graphs
JSON-LD and SHACL for Knowledge GraphsJSON-LD and SHACL for Knowledge Graphs
JSON-LD and SHACL for Knowledge Graphs
 
Basics of Solr and Solr Integration with AEM6
Basics of Solr and Solr Integration with AEM6Basics of Solr and Solr Integration with AEM6
Basics of Solr and Solr Integration with AEM6
 
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODOLinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
 
Graph and RDF databases
Graph and RDF databasesGraph and RDF databases
Graph and RDF databases
 
SHACL by example
SHACL by exampleSHACL by example
SHACL by example
 
Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...
Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...
Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...
 
Spark SQL
Spark SQLSpark SQL
Spark SQL
 
RDF Data Model
RDF Data ModelRDF Data Model
RDF Data Model
 

Andere mochten auch

Intuit commissions manager
Intuit commissions managerIntuit commissions manager
Intuit commissions managersshhzap
 
Chapter 1 introduction to java technology
Chapter 1 introduction to java technologyChapter 1 introduction to java technology
Chapter 1 introduction to java technologysshhzap
 
Java session01
Java session01Java session01
Java session01Niit Care
 
Chapter 1. java programming language overview
Chapter 1. java programming language overviewChapter 1. java programming language overview
Chapter 1. java programming language overviewJong Soon Bok
 
Object Oriented Programming with Java
Object Oriented Programming with JavaObject Oriented Programming with Java
Object Oriented Programming with JavaJussi Pohjolainen
 
Object-Oriented Analysis And Design With Applications Grady Booch
Object-Oriented Analysis And Design With Applications Grady BoochObject-Oriented Analysis And Design With Applications Grady Booch
Object-Oriented Analysis And Design With Applications Grady BoochSorina Chirilă
 

Andere mochten auch (9)

Java Basics
Java BasicsJava Basics
Java Basics
 
Intuit commissions manager
Intuit commissions managerIntuit commissions manager
Intuit commissions manager
 
Chapter 1 introduction to java technology
Chapter 1 introduction to java technologyChapter 1 introduction to java technology
Chapter 1 introduction to java technology
 
Introduction to java technology
Introduction to java technologyIntroduction to java technology
Introduction to java technology
 
Java session01
Java session01Java session01
Java session01
 
02 basic java programming and operators
02 basic java programming and operators02 basic java programming and operators
02 basic java programming and operators
 
Chapter 1. java programming language overview
Chapter 1. java programming language overviewChapter 1. java programming language overview
Chapter 1. java programming language overview
 
Object Oriented Programming with Java
Object Oriented Programming with JavaObject Oriented Programming with Java
Object Oriented Programming with Java
 
Object-Oriented Analysis And Design With Applications Grady Booch
Object-Oriented Analysis And Design With Applications Grady BoochObject-Oriented Analysis And Design With Applications Grady Booch
Object-Oriented Analysis And Design With Applications Grady Booch
 

Ähnlich wie Jena – A Semantic Web Framework for Java

A hands on overview of the semantic web
A hands on overview of the semantic webA hands on overview of the semantic web
A hands on overview of the semantic webMarakana Inc.
 
WebGUI And The Semantic Web
WebGUI And The Semantic WebWebGUI And The Semantic Web
WebGUI And The Semantic WebWilliam McKee
 
A Hands On Overview Of The Semantic Web
A Hands On Overview Of The Semantic WebA Hands On Overview Of The Semantic Web
A Hands On Overview Of The Semantic WebShamod Lacoul
 
Facet: Building Web Pages with SPARQL
Facet: Building Web Pages with SPARQLFacet: Building Web Pages with SPARQL
Facet: Building Web Pages with SPARQLLeigh Dodds
 
8th TUC Meeting - Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...
8th TUC Meeting -  Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...8th TUC Meeting -  Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...
8th TUC Meeting - Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...LDBC council
 
2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)
2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)
2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)Dr.-Ing. Thomas Hartmann
 
Introduction to Semantic Web
Introduction to Semantic WebIntroduction to Semantic Web
Introduction to Semantic Webvernekar
 
SHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data MudSHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data MudRichard Cyganiak
 
Comparative Study That Aims Rdf Processing For The Java Platform
Comparative Study That Aims Rdf Processing For The Java PlatformComparative Study That Aims Rdf Processing For The Java Platform
Comparative Study That Aims Rdf Processing For The Java PlatformComputer Science
 
Web standards, why care?
Web standards, why care?Web standards, why care?
Web standards, why care?Thomas Roessler
 
OpenCms Days 2012 - Keynote: Semantic Technologies for CMS
OpenCms Days 2012 - Keynote: Semantic Technologies for CMSOpenCms Days 2012 - Keynote: Semantic Technologies for CMS
OpenCms Days 2012 - Keynote: Semantic Technologies for CMSAlkacon Software GmbH & Co. KG
 
An Introduction to RDF and the Web of Data
An Introduction to RDF and the Web of DataAn Introduction to RDF and the Web of Data
An Introduction to RDF and the Web of DataOlaf Hartig
 
RDF and SPARQL for PHP Developers (at New York Semantic Web Meetup)
RDF and SPARQL for PHP Developers (at New York Semantic Web Meetup)RDF and SPARQL for PHP Developers (at New York Semantic Web Meetup)
RDF and SPARQL for PHP Developers (at New York Semantic Web Meetup)Benjamin Nowack
 
Querying Linked Data with SPARQL
Querying Linked Data with SPARQLQuerying Linked Data with SPARQL
Querying Linked Data with SPARQLOlaf Hartig
 
Meandre Architecture
Meandre ArchitectureMeandre Architecture
Meandre ArchitectureLoretta Auvil
 

Ähnlich wie Jena – A Semantic Web Framework for Java (20)

A hands on overview of the semantic web
A hands on overview of the semantic webA hands on overview of the semantic web
A hands on overview of the semantic web
 
WebGUI And The Semantic Web
WebGUI And The Semantic WebWebGUI And The Semantic Web
WebGUI And The Semantic Web
 
Semantic web
Semantic web Semantic web
Semantic web
 
A Hands On Overview Of The Semantic Web
A Hands On Overview Of The Semantic WebA Hands On Overview Of The Semantic Web
A Hands On Overview Of The Semantic Web
 
Metadata is back!
Metadata is back!Metadata is back!
Metadata is back!
 
Facet: Building Web Pages with SPARQL
Facet: Building Web Pages with SPARQLFacet: Building Web Pages with SPARQL
Facet: Building Web Pages with SPARQL
 
8th TUC Meeting - Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...
8th TUC Meeting -  Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...8th TUC Meeting -  Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...
8th TUC Meeting - Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...
 
2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)
2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)
2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)
 
Introduction to Semantic Web
Introduction to Semantic WebIntroduction to Semantic Web
Introduction to Semantic Web
 
Markup As An Api
Markup As An ApiMarkup As An Api
Markup As An Api
 
SHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data MudSHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data Mud
 
Comparative Study That Aims Rdf Processing For The Java Platform
Comparative Study That Aims Rdf Processing For The Java PlatformComparative Study That Aims Rdf Processing For The Java Platform
Comparative Study That Aims Rdf Processing For The Java Platform
 
Web standards, why care?
Web standards, why care?Web standards, why care?
Web standards, why care?
 
OpenCms Days 2012 - Keynote: Semantic Technologies for CMS
OpenCms Days 2012 - Keynote: Semantic Technologies for CMSOpenCms Days 2012 - Keynote: Semantic Technologies for CMS
OpenCms Days 2012 - Keynote: Semantic Technologies for CMS
 
An Introduction to RDF and the Web of Data
An Introduction to RDF and the Web of DataAn Introduction to RDF and the Web of Data
An Introduction to RDF and the Web of Data
 
RDF and SPARQL for PHP Developers (at New York Semantic Web Meetup)
RDF and SPARQL for PHP Developers (at New York Semantic Web Meetup)RDF and SPARQL for PHP Developers (at New York Semantic Web Meetup)
RDF and SPARQL for PHP Developers (at New York Semantic Web Meetup)
 
Querying Linked Data with SPARQL
Querying Linked Data with SPARQLQuerying Linked Data with SPARQL
Querying Linked Data with SPARQL
 
Linked services
Linked servicesLinked services
Linked services
 
Text mining and Visualizations
Text mining  and VisualizationsText mining  and Visualizations
Text mining and Visualizations
 
Meandre Architecture
Meandre ArchitectureMeandre Architecture
Meandre Architecture
 

Mehr von Aleksander Pohl

Przeszukiwanie przestrzeni rozwiązań
Przeszukiwanie przestrzeni rozwiązańPrzeszukiwanie przestrzeni rozwiązań
Przeszukiwanie przestrzeni rozwiązańAleksander Pohl
 
Sztuczna Inteligencja - Prolog 3
Sztuczna Inteligencja - Prolog 3Sztuczna Inteligencja - Prolog 3
Sztuczna Inteligencja - Prolog 3Aleksander Pohl
 
Rachunek predykatów pierwszego rzędu
Rachunek predykatów pierwszego rzęduRachunek predykatów pierwszego rzędu
Rachunek predykatów pierwszego rzęduAleksander Pohl
 
Sztuczna Inteligencja - Prolog 1
Sztuczna Inteligencja - Prolog 1Sztuczna Inteligencja - Prolog 1
Sztuczna Inteligencja - Prolog 1Aleksander Pohl
 
Sztuczna Intelignecja - Prolog 2
Sztuczna Intelignecja - Prolog 2Sztuczna Intelignecja - Prolog 2
Sztuczna Intelignecja - Prolog 2Aleksander Pohl
 
Sztuczna Inteligencja i Systemy Ekspertowe - wprowadzenie
Sztuczna Inteligencja i Systemy Ekspertowe - wprowadzenieSztuczna Inteligencja i Systemy Ekspertowe - wprowadzenie
Sztuczna Inteligencja i Systemy Ekspertowe - wprowadzenieAleksander Pohl
 

Mehr von Aleksander Pohl (11)

Sieci neuronowe
Sieci neuronoweSieci neuronowe
Sieci neuronowe
 
Systemy ekspertowe 2
Systemy ekspertowe 2Systemy ekspertowe 2
Systemy ekspertowe 2
 
Przeszukiwanie przestrzeni rozwiązań
Przeszukiwanie przestrzeni rozwiązańPrzeszukiwanie przestrzeni rozwiązań
Przeszukiwanie przestrzeni rozwiązań
 
Metody probabilistyczne
Metody probabilistyczneMetody probabilistyczne
Metody probabilistyczne
 
Systemy ekspertowe 1
Systemy ekspertowe 1Systemy ekspertowe 1
Systemy ekspertowe 1
 
Reprezentacja wiedzy
Reprezentacja wiedzyReprezentacja wiedzy
Reprezentacja wiedzy
 
Sztuczna Inteligencja - Prolog 3
Sztuczna Inteligencja - Prolog 3Sztuczna Inteligencja - Prolog 3
Sztuczna Inteligencja - Prolog 3
 
Rachunek predykatów pierwszego rzędu
Rachunek predykatów pierwszego rzęduRachunek predykatów pierwszego rzędu
Rachunek predykatów pierwszego rzędu
 
Sztuczna Inteligencja - Prolog 1
Sztuczna Inteligencja - Prolog 1Sztuczna Inteligencja - Prolog 1
Sztuczna Inteligencja - Prolog 1
 
Sztuczna Intelignecja - Prolog 2
Sztuczna Intelignecja - Prolog 2Sztuczna Intelignecja - Prolog 2
Sztuczna Intelignecja - Prolog 2
 
Sztuczna Inteligencja i Systemy Ekspertowe - wprowadzenie
Sztuczna Inteligencja i Systemy Ekspertowe - wprowadzenieSztuczna Inteligencja i Systemy Ekspertowe - wprowadzenie
Sztuczna Inteligencja i Systemy Ekspertowe - wprowadzenie
 

Kürzlich hochgeladen

1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...fonyou31
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...Pooja Nehwal
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajanpragatimahajan3
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 

Kürzlich hochgeladen (20)

1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 

Jena – A Semantic Web Framework for Java

  • 1. Introduction Semantic Web technologies Jena Jena – A Semantic Web Framework for Java Aleksander Pohl Katedra Informatyki, Akademia Górniczo-Hutnicza 2. luty 2009 Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 2. Introduction Semantic Web technologies Jena Agenda Introduction Semantic Web technologies Jena Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 3. Introduction Semantic Web technologies Jena Agenda Introduction Semantic Web technologies Jena Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 4. Introduction Semantic Web technologies Jena What is the Semantic Web? The Semantic Web is an: ... extension of current web in which ◮ ... information is given well defined meaning ◮ ... better enabling people and computers to work in ◮ cooperations. The Semantic Web, Tim Barners-Lee, James Hendler and Ora Lassil Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 5. Introduction Semantic Web technologies Jena Motivation providing information about Web resources and the ◮ systems that use them allowing data to be processed outside the particular ◮ environment in which it was created combining data from several applications to arrive at new ◮ information Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 6. Introduction Semantic Web technologies Jena Agenda Introduction Semantic Web technologies Jena Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 7. Introduction Semantic Web technologies Jena Core Semantic Web technologies RDF – Resource Description Framework ◮ RDFS – RDF Schema (vocabulary) ◮ OWL – Web Ontology Language ◮ SPARQL – Query Language for RDF ◮ Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 8. Introduction Semantic Web technologies Jena RDF – Resource Description Framework based on XML and URIs ◮ directed, labeled graph format for representing ◮ information in the web formal semantics allows well founded deductions in RDF ◮ data extensible vocabulary ◮ Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 9. Introduction Semantic Web technologies Jena RDF – graph data model any expression in RDF is a collection of triples ◮ every triple consists of a subject, a predicate and an object ◮ the arc direction is significant – it always points toward the ◮ object assertion of an RDF triple says that some relationship, ◮ indicated by the predicate, holds between the things denoted by subject and object of the triple meaning of an RDF graph is the conjunction (logical AND) ◮ of the statements corresponding to all the triples it contains Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 10. Introduction Semantic Web technologies Jena RDF – subject, predicate & object nodes of an RDF graph are its subjects and objects ◮ a node may be: ◮ URI with optional fragment identifier, eg. ◮ http://www.example.org/staffid/1234#xyz literal, eg. quot;Georgequot; ◮ blank ◮ the subject of a triple might be only URI reference or ◮ a blank node the predicate of the triple must be URI reference ◮ Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 11. Introduction Semantic Web technologies Jena RDF – example <rdf:Description rdf:about=quot;http://www.ivan-herman.netquot;> <foaf:name>Ivan</foaf:name> <abc:myCalendar rdf:resource=quot;http://.../myCalendarquot;/> <foaf:surname>Herman</foaf:surname> </rdf:Description> Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 12. Introduction Semantic Web technologies Jena RDFS – RDF Vocabulary Description Language RDF itself provides no means for defining ◮ application-specific classes and properties They are described in RDFS – RDF Vocabulary ◮ Description Language (aka RDF Schema) RDF Schema provides a type system for RDF, similar to ◮ type systems in programming languages: allows resources to be defined as instances of one or more ◮ classes allows classes to be organized in a hierarchical fashion ◮ URIref prefix ◮ http://www.w3.org/2000/01/rdf-schema#, conventionally associated with the QName prefix rdfs: Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 13. Introduction Semantic Web technologies Jena RDFS – basic notions (1) Classes are described using the RDFS resources: ◮ rdfs:Class ◮ rdfs:Resource ◮ and the properties: ◮ rdf:type ◮ rdfs:subClassOf ◮ Example: ◮ ex:MotorVehicle rdf:type rdfs:Class. ◮ Java: class MotorVehicle {· · · } exthings:myCar rdf:type ex:MotorVehicle. ◮ Java: myCar = new MotorVehicle(); ex:Van rdfs:subClassOf ex:MotorVehicle. ◮ Java: class Van extends MotorVehicle {· · · } Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 14. Introduction Semantic Web technologies Jena OWL – Web Ontology Language Intended to be used when the information needs to be ◮ processed by applications (not merely presented to humans) Provides additional vocabulary along with a formal ◮ semantics Sublanguages: ◮ Lite – classification hierarchy and simple constraints ◮ (extension of restricted RDF) DL (Description Logic) – maximum expressiveness while ◮ retaining computational completeness (extension of restricted RDF) Full – maximum expressiveness and the syntactic freedom ◮ of RDF with no computational guarantees (real extension of RDF) Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 15. Introduction Semantic Web technologies Jena OWL Lite additions (In)Equality: equivalentClass, ◮ equivalentProperty, sameAs, differentFrom, ... Property characteristics: inverseOf, ◮ TransitiveProperty, SymmetricProperty, ... Restricted Cardinality: minCardinality, ◮ maxCardinality, cardinality Annotation Properties: rdfs:label, rdfs:comment, ◮ rdfs:seeAlso, rdfs:isDefinedBy, AnnotationProperty, OntologyProperty Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 16. Introduction Semantic Web technologies Jena Semantic Web – ontologies overview Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 17. Introduction Semantic Web technologies Jena SPARQL – overview SPARQL is a query language for RDF ◮ It is similar to SQL in terms of purpose and syntax, but ◮ different in terms of application (relational data vs. graph based data) Human-friendly syntax ◮ Data integration and aggregation – multiple sources ◮ supported by default Allows to make yes/no questions ◮ Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 18. Introduction Semantic Web technologies Jena SPARQL Example Data: ◮ <http://example.org/book/book1> <http://purl.org/dc/elements/1.1/title> ”SPARQL Tutorial” . Query: ◮ SELECT ?title WHERE { <http://example.org/book/book1> <http://purl.org/dc/elements/1.1/title> ?title . } Result: ◮ title ”SPARQL Tutorial” Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 19. Introduction Semantic Web technologies Jena Agenda Introduction Semantic Web technologies Jena Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 20. Introduction Semantic Web technologies Jena Jena2 – overview Developed by HP Laboratories ◮ Open-source Java implementation of core Semantic Web ◮ technologies: RDF graph manipulation API ◮ RDFS and OWL reasoning API ◮ Includes the de facto reference RDF/XML parser ◮ RDF/XML, N3 and N-triple Input/Output ◮ SPQRQL query engine ◮ rule-based inference engine ◮ In-memory or persistent storage ◮ Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 21. Introduction Semantic Web technologies Jena RDF API example // some definitions 1 static String personURI = quot;http://somewhere/JohnSmithquot;; 2 static String fullName = quot;John Smithquot;; 3 4 // create an empty Model 5 Model model = ModelFactory.createDefaultModel(); 6 7 // create the resource 8 Resource johnSmith = model.createResource(personURI); 9 10 // add the property 11 johnSmith.addProperty(VCARD.FN, fullName); 12 Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 22. Introduction Semantic Web technologies Jena SPARQL API example Model model = ... ; 1 String queryString = quot; .... quot; ; 2 Query query = QueryFactory.create(queryString) ; 3 QueryExecution qexec = QueryExecutionFactory.create(query, model) ; 4 try { 5 ResultSet results = qexec.execSelect() ; 6 for ( ; results.hasNext() ; ) 7 { 8 QuerySolution soln = results.nextSolution() ; 9 // Get a result variable by name. 10 RDFNode x = soln.get(quot;varNamequot;) ; 11 // Get a result variable - must be a resource 12 Resource r = soln.getResource(quot;VarRquot;) ; 13 // Get a result variable - must be a literal 14 Literal l = soln.getLiteral(quot;VarLquot;) ; 15 } 16 } finally { qexec.close() ; } 17 Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 23. Introduction Semantic Web technologies Jena Jena comparison Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 24. Introduction Semantic Web technologies Jena Bibliography (1) Brickley, Dan; Guha, Ramanathan (2004). RDF Vocabulary ◮ Description Language 1.0: RDF Schema, http://www.w3.org/TR/rdf-schema/ Carroll, Jeremy J.; Dickinson, Ian; Dollin, Chris; Reynolds, ◮ Dave; Seaborne, Andy; Wilkinson, Kevin (2003). Jena: Implementing the Semantic Web Recommendations, HP Laboratories, Bristol, technical report HPL-2003-146. Herman, Ivan Questions (and Answers) on the semantic ◮ Web, http://www.w3.org/People/Ivan/- CorePresentations/SW_QA Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java
  • 25. Introduction Semantic Web technologies Jena Bibliography (2) Klyne, Graham; Carroll, Jeremy J. (2004). Resource ◮ Description Framework (RDF): Concepts and Abstract Syntax http://www.w3.org/TR/rdf-concepts/ McBride, Brian (2002), The Semantic Web, HP ◮ Laboratories, Bristol, Euroweb 2002 invited talk. McGuinness, Deborah; van Harmelen, Frank (2004). OWL ◮ Web Ontology Language Overview, http://www.w3.org/TR/owl-features/ Aleksander Pohl KI AGH Jena – A Semantic Web Framework for Java