23
Ontology Access in Grids with WS-DAIOnt and the RDF(S) Realization Semantic Grid Workshop GGF16, Athens, 15th Feb 2006 Ontology Engineering Group, UPM Miguel Esteban Gutiérrez [email protected] Asunción Gómez-Pérez [email protected] Óscar Muñoz García [email protected] Boris Villazón Terrazas [email protected] www.ontogrid.n et

Ontology Access in Grids with WS-DAIOnt and the RDF(S) Realization

Embed Size (px)

DESCRIPTION

www.ontogrid.net. Ontology Access in Grids with WS-DAIOnt and the RDF(S) Realization. Miguel Esteban Gutiérrez [email protected] Asunción Gómez-Pérez [email protected] Óscar Muñoz García [email protected] Boris Villazón Terrazas [email protected]. Ontology Engineering Group, UPM. - PowerPoint PPT Presentation

Citation preview

Ontology Access in Grids with WS-DAIOnt and the RDF(S)

Realization

Semantic Grid WorkshopGGF16, Athens, 15th Feb 2006

Ontology Engineering Group, UPM

Miguel Esteban Gutié[email protected]

Asunción Gómez-Pé[email protected]

Óscar Muñoz Garcí[email protected]

Boris Villazón Terrazas [email protected]

www.ontogrid.net

2GGF16, Athens, 15th Feb 2006

Table of Contents

OGSA-DAI limitations WS-DAIOnt

Goals Approaches

WS-DAI-RDF(S) Component Description Implementation details Short demo

Workplan

4GGF16, Athens, 15th Feb 2006

Diversity of Ontology tools and languages

1. No uniform access to ontologies implemented in W3C languages

• RDF(S)

• OWL

2. Each language has several query languages

and inference engines

• RDF(S): SparQL, SeRQL, RQL, RDQL and SILRI, RIL, Triple

• OLW: OWL-QL and FACT, Racer

3. Each ontology tool and storage system has its own API for accessing ontologies

Accessing RDF(S) ontologies

•Sesame

Statements(classUri, rdfs:type, rdfs:class) next() getObject()

•Jena

getResource(classURI)

5GGF16, Athens, 15th Feb 2006

OGSA-DAI limitation

Node A

RDF(S)

3store

Node C

OWL

Jena

Node B

RDF(S)

Kowaki

No Grid compliant ontology access mechanisms in RDF(S) and OWL

No specialized registry for localizing ontologies

No Grid compliant instance access mechanisms in RDF

SemGrid Applications access ontologies as on the Semantic Web

Node D

Ontology evaluatorOntology evaluator

Evaluating ontology...

Parameters Ontology1.rdf Ontology1.owl

File Edit Evaluation

<service> <name>robes</name> <atribute> <atrname>product</atrname> <value>dressingGown</value> </atribute> <atribute> <atrname>washing_instruction</atrname> <value>machineWash</value> <value>handWash</value> <value>dryClean</value> </atribute> </service>

OWL

Sesame

WebODE

6GGF16, Athens, 15th Feb 2006

OGSA-Ont

Node A

RDF(S)

3store

Node C

OWL

Jena

Node B

RDF(S)

Kowaki

OGSA-Ont

Grid compliant ontology access mechanismsRDF(S)OWL

Specialized registry for localizing ontologies

Node D

Ontology evaluatorOntology evaluator

Evaluating ontology...

Parameters Ontology1.rdf Ontology1.owl

File Edit Evaluation

<service> <name>robes</name> <atribute> <atrname>product</atrname> <value>dressingGown</value> </atribute> <atribute> <atrname>washing_instruction</atrname> <value>machineWash</value> <value>handWash</value> <value>dryClean</value> </atribute> </service>

OWL

Sesame

WebODE

7GGF16, Athens, 15th Feb 2006

Ontologies and S-OGSA

Architect, adapt and extend existing ontology services to be Grid compliant

Access heterogeneus and

distributed ontology sources

as a homogeneous logical resources

Provide homogeneous

service interfaces

Modular design to ease extensibility

Insurance settlement

Is-a

Middleware layer

Application layerSatellite quality analysis

8GGF16, Athens, 15th Feb 2006

What is WS-DAIOnt?

Web Services Data Access and Integration – The Ontology Realization

Specification of Grid Compliant Ontology Services, which Defines a framework for creating ontology access services

in a Grid environment

Is fully compliant with S-OGSA (consequently with OGSA)

Is based on up-to-date Grid standards (GGF)

• WS-DAI

Is based on Web Service standards (OASIS, W3C)

• WS-RF, WS-Addressing...

First implementation of WS-DAIOnt-RDF(S) Backend: Sesame and SeRQL as query language Download it from the OntoGrid web site (www.ontogrid.net)

9GGF16, Athens, 15th Feb 2006

Four approaches for WS-DAIOnt

Monolithic approach

Dual tier approach

Metamodel approach

Declarative approach

Low extensibility and adaptability

High extensibility and adaptability

WS-DAIRRelational Access

WS-DAIXXML Access

WS-DAI-RDF(S) WS-DAI-OWL

WS-DAIMessage Patterns

Behavioural Properties

Sesame Jena

Dual tier approach

WS-DAIRRelational Access

WS-DAIXXML Access

WS-DAI-RDF(S)-Sesame

WS-DAI-RDF(S)-Jena

WS-DAIMessage Patterns

Behavioural Properties

Sesame Jena

Monolithic approach

10GGF16, Athens, 15th Feb 2006

Two sample implementations: Architectural implications

Sesame

RDF(S)Repository

ImplSesame

ProtocolSesame

Jena

RDF(S)Repository

ImplJena

ProtocolJena

ProtocolSesame ProtocolJena

Business logic

Ontology Access Client LayerSample

Application

Protocols

Implementations

Tools

ProtocolRDF(S)

ProtocolRDF(S)

Sesame

RDF(S)Repository

ImplRDF(S)-Sesame

Jena

RDF(S)Repository

ImplRDF(S)-Jena

Business logic

Ontology Access Client Layer

Sample Application

Protocols

Implementations

Tools

• Monolithic approach:

• Client side: splitted ontology access logic

• Server side: Two protocols + two implementations

• Dual tier approach:

• Client side: single access logic

• Server side: One protocol + two implementations

11GGF16, Athens, 15th Feb 2006

RDFS model

rdfs:Class

rdfs:Resource

rdfs:Containerrdf:List rdf:Property rdfs:Classrdf:Statement

rdfs:Datatype

rdfs:Literal

rdf:XMLLiteralrdf:Bag rdf:Seq rdf:Alt

rdf:nil

rdfs:ContainerMembershipProperty

rdf:_1 rdf:_2 rdf:_3

rdfs:memberrdfs:seeAlsordfs:isDefinedByrdfs:value“property”

rdfs:labelrdfs:comment

rdf:subjectrdf:predicaterdf:object rdf:type

rdfs:subclassOf

rdfs:domainrdfs:range

rdfs:subPropertyOf

rdf:first

rdf:rest

RDF(S)

rdf:XMLLiteralrdfs:member

rdfs:Class

rdfs:Resource

rdfs:Containerrdf:List rdf:Property rdfs:Classrdf:Statement

rdfs:Datatype

rdfs:Literal

rdf:XMLLiteralrdf:Bag rdf:Seq rdf:Alt

rdf:nil

rdfs:ContainerMembershipProperty

rdf:_1 rdf:_2 rdf:_3

rdfs:memberrdfs:seeAlsordfs:isDefinedByrdfs:value“property”

rdfs:labelrdfs:comment

rdf:subjectrdf:predicaterdf:object rdf:type

rdfs:subclassOf

rdfs:domainrdfs:range

rdfs:subPropertyOf

rdf:first

rdf:rest

RDF(S)

rdf:XMLLiteralrdfs:member

12GGF16, Athens, 15th Feb 2006

Component Description

Jena ....

13GGF16, Athens, 15th Feb 2006

RDFSRepositorySelectorService

14GGF16, Athens, 15th Feb 2006

RDFSRepositorySelectorService

getRepositoryFactory message

<xsd:element name="getRepositoryFactory">

<xsd:complexType>

<xsd:sequence>

<xsd:element name = "id" minOccurs="1" maxOccurs="1" ref="tns:repositoryId"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

<xsd:element name="getRepositoryFactoryResponse">

<xsd:complexType>

<xsd:sequence>

<xsd:element name = "epr" minOccurs="1" maxOccurs="1" ref="wsa:EndpointReference"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

Returns a EPR for a given repository

15GGF16, Athens, 15th Feb 2006

RDFSRepositoryService

16GGF16, Athens, 15th Feb 2006

RDFSRepositoryService

getClassFactory message

<xsd:element name="getClassFactory">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="classUri" maxOccurs="1" minOccurs="1" ref="tns:Uri"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

<xsd:element name="getClassFactoryResponse">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="epr" ref="wsa:EndpointReference"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

Returns the EPR for a given class

17GGF16, Athens, 15th Feb 2006

RDFSClassService

18GGF16, Athens, 15th Feb 2006

RDFSClassService

getSubclasses message

<xsd:element name="getSubClasses">

<xsd:complexType/>

</xsd:element>

<xsd:element name="getSubClassesResponse">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="classes" minOccurs="0" maxOccurs="unbounded" ref="tns:Uri"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

Returns all the subclasses of a given class

19GGF16, Athens, 15th Feb 2006

RDFSClassService

getSuperClasses message

<xsd:element name="getSuperClasses">

<xsd:complexType/>

</xsd:element>

<xsd:element name="getSuperClassesResponse">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="classes" minOccurs="0" maxOccurs="unbounded" ref="tns:Uri"/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

Returns all the superclasses of a given class

20GGF16, Athens, 15th Feb 2006

The rest of the model

rdfs:Class

rdfs:Resource

rdfs:Containerrdf:List rdf:Property rdfs:Classrdf:Statement

rdfs:Datatype

rdfs:Literal

rdf:XMLLiteralrdf:Bag rdf:Seq rdf:Alt

rdf:nil

rdfs:ContainerMembershipProperty

rdf:_1 rdf:_2 rdf:_3

rdfs:memberrdfs:seeAlsordfs:isDefinedByrdfs:value“property”

rdfs:labelrdfs:comment

rdf:subjectrdf:predicaterdf:object rdf:type

rdfs:subclassOf

rdfs:domainrdfs:range

rdfs:subPropertyOf

rdf:first

rdf:rest

RDF(S)

rdf:XMLLiteralrdfs:member

rdfs:Class

rdfs:Resource

rdfs:Containerrdf:List rdf:Property rdfs:Classrdf:Statement

rdfs:Datatype

rdfs:Literal

rdf:XMLLiteralrdf:Bag rdf:Seq rdf:Alt

rdf:nil

rdfs:ContainerMembershipProperty

rdf:_1 rdf:_2 rdf:_3

rdfs:memberrdfs:seeAlsordfs:isDefinedByrdfs:value“property”

rdfs:labelrdfs:comment

rdf:subjectrdf:predicaterdf:object rdf:type

rdfs:subclassOf

rdfs:domainrdfs:range

rdfs:subPropertyOf

rdf:first

rdf:rest

RDF(S)

rdf:XMLLiteralrdfs:member

1

23

21GGF16, Athens, 15th Feb 2006

RDFSRepository.rdfs Structure

RDFSRepository

RDFSSesameRepository

RDFSSesameFileRepository

file

RDFSSesameMemoryRepository RDFSSesameRemoteRepository

userpassword

RDFSSesameHTTPRepository

url

RDFSSesameRMIRepository

rmiuri

RDFSNamespace

uri

has

SC

SCSC SC

SC SC

More RDF(S) Repositories here to be added

For example:RDFSJenaRepository

Configuration

22GGF16, Athens, 15th Feb 2006

RDFSRepository.rdf example

<?xml version="1.0" encoding="WINDOWS-1252"?>

<rdf:RDF xmlns:rdfs_repos="http://wsdaiordfs.eu.ist.ontogrid/RDFSRepository#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">

<rdf:Description

rdf:about="http://wsdaiordfs.eu.ist.ontogrid/RDFSRepository#civil_file">

<rdfs:comment>A testing file</rdfs:comment>

<rdfs:label>civil_file</rdfs:label>

<rdfs_repos:has

rdf:resource="http://wsdaiordfs.eu.ist.ontogrid/RDFSRepository#civil"/>

<rdfs_repos:file>/etc/ws-daio-rdfs/Civil_Personality.rdfs</rdfs_repos:file>

<rdf:type

rdf:resource="http://wsdaiordfs.eu.ist.ontogrid/RDFSRepository#RDFSSesameFileRepository"/>

</rdf:Description>

<rdf:Description rdf:about="http://wsdaiordfs.eu.ist.ontogrid/RDFSRepository#civil">

<rdfs:comment>An example namespace.</rdfs:comment>

<rdfs:label>civil</rdfs:label>

<rdfs_repos:uri>http://webode.dia.fi.upm.es/RDFS/Civil_Personality#</rdfs_repos:uri>

<rdf:type

rdf:resource="http://wsdaiordfs.eu.ist.ontogrid/RDFSRepository#RDFSNamespace"/>

</rdf:Description>

</rdf:RDF>

Configuration

23GGF16, Athens, 15th Feb 2006

Ongoing development workplan

First spec for WS-DAIOnt Ontogrid deliverable d3.1

WS-DAIOnt-RDF(S) implementation access to RDF(S) ontologies… … stored in Sesame (download it !!) … stored in Jena (July 2006) Spec at the end of (April 2006)

WS-DAIOnt-OWL spec & first implementation (December 2006)

Provide seamless access to both RDF(S) and OWL (Aug. 07)

24GGF16, Athens, 15th Feb 2006

Use WS-DAIOnt-RDF(S)!available at:

www.ontogrid.net

Feedback to: [email protected] [email protected]

Acknowledgements to the consortium