JENA: A Java API for Ontology Management

Similar documents
Orchestrating Music Queries via the Semantic Web

Extracting knowledge from Ontology using Jena for Semantic Web

Contents. G52IWS: The Semantic Web. The Semantic Web. Semantic web elements. Semantic Web technologies. Semantic Web Services

CHAPTER 1 INTRODUCTION

The Semantic Web Revisited. Nigel Shadbolt Tim Berners-Lee Wendy Hall

Finding Similarity and Comparability from Merged Hetero Data of the Semantic Web by Using Graph Pattern Matching

Structure of This Presentation

Welcome to INFO216: Advanced Modelling

Presented By Aditya R Joshi Neha Purohit

Semantic Web Fundamentals

COMPUTER AND INFORMATION SCIENCE JENA DB. Group Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

Apache Jena Framework. Philippe Genoud Université Joseph Fourier Grenoble (France)

Approach for Mapping Ontologies to Relational Databases

Semantic Web Fundamentals

Semantic Web. Lecture XIII Tools Dieter Fensel and Katharina Siorpaes. Copyright 2008 STI INNSBRUCK

The MEG Metadata Schemas Registry Schemas and Ontologies: building a Semantic Infrastructure for GRIDs and digital libraries Edinburgh, 16 May 2003

Proposal for Implementing Linked Open Data on Libraries Catalogue

Introduction to XML. Asst. Prof. Dr. Kanda Runapongsa Saikaew Dept. of Computer Engineering Khon Kaen University

Semantic Web Tools. Federico Chesani 18 Febbraio 2010

XML Metadata Standards and Topic Maps

H1 Spring B. Programmers need to learn the SOAP schema so as to offer and use Web services.

Helmi Ben Hmida Hannover University, Germany

Introduction to XML 3/14/12. Introduction to XML

An overview of RDB2RDF techniques and tools

The Semantic Web DEFINITIONS & APPLICATIONS

Linked Open Data: a short introduction

The OWL API: An Introduction

The Semantic Web. Mansooreh Jalalyazdi

A Tool for Storing OWL Using Database Technology

Semantic Web Technologies

Table of Contents. iii

CSc 8711 Report: OWL API

DBpedia-An Advancement Towards Content Extraction From Wikipedia

Semantic Web: Core Concepts and Mechanisms. MMI ORR Ontology Registry and Repository

RDF /RDF-S Providing Framework Support to OWL Ontologies

Welcome to INFO216: Advanced Modelling

Triple Stores in a Nutshell

Project Title REPRESENTATION OF ELECTRICAL NETWORK USING GOOGLE MAP API. Submitted by: Submitted to: SEMANTA RAJ NEUPANE, Research Assistant,

Linked Data and RDF. COMP60421 Sean Bechhofer

Library of Congress BIBFRAME Pilot. NOTSL Fall Meeting October 30, 2015

Semantic Web. RDF and RDF Schema. Morteza Amini. Sharif University of Technology Spring 90-91

Semantic Web. Tahani Aljehani

Web Ontology Language (OWL)

SEMANTIC WEB DATA MANAGEMENT. from Web 1.0 to Web 3.0

WHY WE NEED AN XML STANDARD FOR REPRESENTING BUSINESS RULES. Introduction. Production rules. Christian de Sainte Marie ILOG

GraphOnto: OWL-Based Ontology Management and Multimedia Annotation in the DS-MIRF Framework

Workpackage 15: DBE Business Modeling Language

DB2 NoSQL Graph Store

XML: Introduction. !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... Directive... 9:11

Vocabulary Harvesting Using MatchIT. By Andrew W Krause, Chief Technology Officer

An Architecture For RDF Storing And Querying For Messages

Standard Business Rules Language: why and how? ICAI 06

Local Closed World Reasoning with OWL 2

The Semantically Enabled Smart Grid

Graph Databases. Guilherme Fetter Damasio. University of Ontario Institute of Technology and IBM Centre for Advanced Studies IBM Corporation

Development of Contents Management System Based on Light-Weight Ontology

COMP9321 Web Application Engineering

COMP9321 Web Application Engineering

Ontology-based Navigation of Bibliographic Metadata: Example from the Food, Nutrition and Agriculture Journal

3. Queries Applied Artificial Intelligence Prof. Dr. Bernhard Humm Faculty of Computer Science Hochschule Darmstadt University of Applied Sciences

Languages and tools for building and using ontologies. Simon Jupp, James Malone

Efficient Querying of Web Services Using Ontologies

Contribution of OCLC, LC and IFLA

Today: RDF syntax. + conjunctive queries for OWL. KR4SW Winter 2010 Pascal Hitzler 3

a paradigm for the Introduction to Semantic Web Semantic Web Angelica Lo Duca IIT-CNR Linked Open Data:

Ontology Servers and Metadata Vocabulary Repositories

Design Xml Schema For The Given Company Database

Reducing Consumer Uncertainty

Semantic Queries and Mediation in a RESTful Architecture

Ivan Herman. F2F Meeting of the W3C Business Group on Oil, Gas, and Chemicals Houston, February 13, 2012

Semantics. Matthew J. Graham CACR. Methods of Computational Science Caltech, 2011 May 10. matthew graham

Semantic Web Rules. - Tools and Languages - Holger Knublauch. Tutorial at Rule ML 2006, Athens, GA

QuickTime and a Tools API Breakout. TIFF (LZW) decompressor are needed to see this picture.

Racer: An OWL Reasoning Agent for the Semantic Web

A tutorial report for SENG Agent Based Software Engineering. Course Instructor: Dr. Behrouz H. Far. XML Tutorial.

The Semantic Planetary Data System

CHAPTER 7. Observations, Conclusions and Future Directions Observations 7.2. Limitations of the Model 7.3. Conclusions 7.4.

RDF and RDB 2 D2RQ. Mapping Relational data to RDF D2RQ. D2RQ Features. Suppose we have data in a relational database that we want to export as RDF

Labelling & Classification using emerging protocols

Keeping modular and platformindependent. benefits from the Semantic Web

Toward a Knowledge-Based Solution for Information Discovery in Complex and Dynamic Domains

Semantic Technologies and CDISC Standards. Frederik Malfait, Information Architect, IMOS Consulting Scott Bahlavooni, Independent

Ontological Modeling: Part 2

Semantic Web. MPRI : Web Data Management. Antoine Amarilli Friday, January 11th 1/29

DCMI Abstract Model - DRAFT Update

Mapping Relational data to RDF

Ontology Development Tools and Languages: A Review

Engineering Grounded Semantic Service Definitions from Native Service Specifications

Chapter 4 Research Prototype

References to Ontology Services

RDFGraph: New Data Modeling Tool for

Semantic web. Tapas Kumar Mishra 11CS60R32

Department of Computing Science and Mathematics University of Stirling. An Overview of Ontology Application for Policy-Based Management using POPPET

SELF-SERVICE SEMANTIC DATA FEDERATION

SEMANTIC WEB AN INTRODUCTION. Luigi De

Deep integration of Python with Semantic Web technologies

Design and Implementation of an RDF Triple Store

Knowledge Representations. How else can we represent knowledge in addition to formal logic?

Ontology-Based Data Access via Ontop

Programming THE SEMANTIC WEB. Build an application upon Semantic Web models. Brief overview of Apache Jena and OWL-API.

Transcription:

JENA: A Java API for Ontology Management Hari Rajagopal IBM Corporation Page

Agenda Background Intro to JENA Case study Tools and methods Questions Page

The State of the Web Today The web is more Syntactic (text based) than Semantic (context and relevance based) Goal is to make the content on the web machine understandable and accessible Page

The Syntactic Web Is A hypermedia, a digital library A library of documents called (web pages) interconnected by a hypermedia of links A database, an application platform A common portal to applications accessible through web pages, and presenting their results as web pages A platform for multimedia BBC Radio 4 anywhere in the world! Terminator 3 trailers! A place where computers do the presentation (easy) and people do the linking and interpreting (hard). Why not get computers to do more of the hard work? [Goble 03] Page

Semantic Web The Semantic Web will augment the existing human-readable Web with structured data that's easy for software to process Page

Semantic Web -layers Resource Description Framework (RDF): lets you assert facts e.g. Akbash is-a breed of dog RDF Schema: lets you describe vocabularies and use them to describe things e.g. person X is a LivingPerson. Web Ontology Language (OWL): lets you describe relationships between vocabularies e.g. persons in schema A are the same thing as users in schema B. Page

Access to Web Resources HTTP FTP SMTP FILE (?) One thing in common They all need to refer to a unique ID for a resource Page

Resources on the Web A resource can be identified by a URI Some examples www.synergy.com/resources/domain/#a www.apex.com/alpha/#list And so on Page

URL - Definition A URI +Protocol = URL While a URL may be used for a resource that you can browse to, a URI can be used for anything (literally) Implications we can model far more than a web resource Page

RDF Basics RDF (Resource Description Framework) is a language for representing information about resources [ A resource is any item of info that has a URI] W3C standard

Resource? Which leads to the immediate response A resource is any entity that one wishes to refer to, on the web a resource could be a web page, a link, a particular user identity,..

Resource In the RDF world it is a bit more stringent A resource is either a Literal (any XML Schema allowed type) A URI itself A resource has A URI Properties that qualify it

Resource (Continued) The properties mentioned here have values that are literals Statements can be made about the resources and their properties thus linking them together These form what are known as RDF graphs

RDF Representation Directed graph Reasons for adoption: Extremely easy to follow Clear representation (in space) of the Subjectpredicate-Object triplet

RDF Directed Graph

Usability of This Notation Very easily understood BUT Not easily serialized or transported [this is meant to be used on the web among other things after all] So, RDF/XML is used

RDF Format

RDF and XML Schemas Define a schema using XSD Reuse the XML data-types in defining the RDF description The example in the previous page could be rewritten as follows

Use of an XML Schema

RDF Statements http://www.example.org/index.html has a creator whose value is John Smith http://www.example.org/index.html has a creation-date whose value is August 16, 1999 http://www.example.org/index.html has a language whose value is English

Corresponding Graphs

RDF Validation and Visualization http://www.w3.org/rdf/validator An online service for validating your RDF schemas and documents and graphing them Uses the ARP RDF parser

RDF Sample

Node-arc Representation

Model A collection of these RDF graphs gives us a set of statements that can be queried and manipulated In effect : A knowledge representation Model OR

Representation of a Statement The resource chaise-lounge has a property is-made-of with a value of rattan' http://www.furniture.com/products/#chaise_lounge is-made-of rattan

Point to note: Just like resources, properties are namespace and URI qualified too Values can be just that literals However, if a value needs to be further qualified by properties and values, then it too must: Be a resource (URI and all)

http://www.furniture.com/products/#chaise_lounge is-made-of http://www.furniture.com/#wicker reed-type imported-from rattan Indonesia

RDF Models Each model is made up of a number of statements A statement asserts (not the same as a C++ or JAVA Assert, there is no boolean outcome here) a fact about a resource A statement basically links a Subject and an Object together using a Predicate

Ontology Textbook definition of an Ontology = a specification of a concept To a developer A system of declaring and defining meaningful relationships (aka rules) between domain objects In the RDF-S world, these domain objects are resources

Ontology Models An ontology model is an extension of the RDF model that provides extra capabilities for handling ontology data Allows customization as to Storage (disk vs memory) Reasoning vs non-reasoning Different Ontology formats used

Today.. Search for offenhauser and AMC and you end up with

What We Really Wanted What the torque/rpm and hp/rpm curves for the intake on a stock motor were supposed to be How did we get so far off track? No contextual search, simply a text keyword lookup Even with Google??? Getting better every day

Points to Note We did not come up with any inferences Everything was a direct conclusion So, how would we achieve that?

Web Schema Languages Existing Web languages extended to facilitate content description XML XML Schema (XMLS) RDF RDF Schema (RDFS) XMLS not an ontology language Changes format of DTDs (document schemas) to be XML Adds an extensible type hierarchy Integers, Strings, etc. Can define sub-types, e.g., positive integers

RDFS is recognisable as an ontology language It has Classes and Properties (and sub-classes thereof) Ranges and domains for the above

OWL allows the characteristics of resources' properties to be expressed So, inverse properties, like-as and similar-to are definable using OWL This gives more relationship status to a RDF schema based model

OWL Versions OWL full OWL DL (Description Logic) OWL Lite OWL DL is the one used in our examples

JENA Open source http://jena.sourceforge.net Based on development done at the HP Labs Semantic web development effort and released into the open source community

What Features Are Offered? A RDF API Reading and writing RDF in RDF/XML, N3 and N-Triples An OWL API In-memory and persistent storage RDQL a query language for RDF

Using JENA Get the package (latest version is 2.2) from http://jena.sourceforge.net/downloads.html The unzipped folder structure is shown here Eclipse is our IDE of choice

Using JENA (Continued) All the examples to follow assume some knowledge of Eclipse and JDK 1.4.xx Download the JENA 2.3 release Create a project within the Eclipse workspace with the jar dependencies

API Jena has object classes to represent graphs, resources, properties and literals Oddly enough, these classes are named: Resource Property and literal

API (Continued) The entire graph under consideration is however represented by the class Model In JENA, Models can be Created Loaded Saved Operated upon and queried using plain JAVA

RDQL Querying a Model Very SQL like, straightforward

Case Studies Once defined and refined, it may be used for diverse purposes: A designer creates an ontology for furnishings, 2 uses that come to mind: A web-enabled interior design application A manufacturer can link the ontology to a supplier list to determine best prices for rare fabrics and hence lower his per unit cost during manufacture

Architecture

JENA and OWL JENA has a special model class for this purpose OntModel Using this JENA can derive meaningful relationships that the model does NOT express directly!!! This is the true power of an OWL model

JENA and OWL (Continued) Using a Reasoner and a previously defined (or imported) model, JENA can infer relationships Swappable inference engines OwlReasoner (micro, mini and regular) Transitive reasoner RDFS reasoner

Reasoner

Walk thru of implementation within Eclipse

Practical Applications Create a model (OWL?) Persist model Import model Process and perform operations on model

Model Creation Typically done using a standalone editor RDF-Editor Protégé Protégé by itself uses a proprietary format Plugins available for format as well as persistence mechanisms

Protégé Demo Creating an OWL model

Case Study SofaWorld.com An online furnishings retailer wishes to zoom in on customer requirements and tailor their offerings to the customers tastes So far the model has been to use a DB backed catalog of offerings Matching is done on a text-tag basis Preferences of returning shoppers have been stored as text

OWL versus RDF When would you use one over the other?

Use RDF When You want a simple interoperable language Assertion based model Simple API to query, extract and use data represented

Use OWL When You want to share the model The usage reflects some amount of inferencing

Further Topics Pluggable reasoners Performance issues Applicability and persistence

Questions?

Resources The JENA toolkit http://jena.sourceforge.net Protégé Ontology editor http://protege.stanford.edu/ Infer->Ed RDF editor http://www.intellidimension.com Racer inference engine http://www.racer-systems.com

References Practical RDF Shelley Powers, O Reilly Inc., ISBN: 0-596-00263-7 Introduction to JENA http://www- 128.ibm.com/developerworks/java/library/jjena/index.html The JENA Ontology API http://jena.sourceforge.net/ontology/index.html RDF primer http://www.w3.org/tr/rdf-primer/

Further Info / Questions My email address : harir@us.ibm.com