Presentation is loading. Please wait.

Presentation is loading. Please wait.

FP6-511513 OntoGrid: Paving the way for Knowledgeable Grid Services and Systems www.ontogrid.net WS-DAIOnt-RDF(S) Hands-on session OntoGrid Semantic Grid.

Similar presentations


Presentation on theme: "FP6-511513 OntoGrid: Paving the way for Knowledgeable Grid Services and Systems www.ontogrid.net WS-DAIOnt-RDF(S) Hands-on session OntoGrid Semantic Grid."— Presentation transcript:

1 FP6-511513 OntoGrid: Paving the way for Knowledgeable Grid Services and Systems www.ontogrid.net WS-DAIOnt-RDF(S) Hands-on session OntoGrid Semantic Grid Tutorial Manchester, Feb 2007 Miguel Esteban Gutiérrez (U.P.M.)

2 2OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Outline of the tutorial  Part I: Theoretical introduction  Part II: Hands-on exercises

3 3OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Part I: Theoretical introduction

4 4OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Outline of the tutorial Theoretical introduction  An introductory scenario  Ontology share/reuse problem  Possible solutions  Our approach  The specification  Foundations  Operational model  The implementation  Architecture  RDF(S) Storage support

5 5OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 ? ? Ontology share/reuse problem? ? ? ? ? ? 3Store Kowari

6 6OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Possible solutions Access through proprietary interfaces  The client needs to know the specific APIs of every single source it has to connect to:  Operational model  Data model API > API >::methodXXX() result XXX THIN CLIENT

7 7OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Possible solutions (II) Acquire the fulls contents  Download overhead: how big is the part of the ontology that will be used?  How often are the ontologies synchronized? HTTP HTTP::get (ontology_url) serialized ontology THICK CLIENT

8 8OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Our approach  Standardise an RDF(S) ontology access mechanism that:  Provides an homogeneus access interface  Defines an operational model based on the model itself  Full CRUD (beyond SPARQL protocol)  Prevents the user from dealing directly with the physical resources (resource virtualization)

9 9OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 The specification WS-DAIOnt-RDF(S)– RDF(S) Access in Grids  Web Services Data Access and Integration – The Ontology Realization for RDF(S) Access  Specification of grid compliant ontology services, which  Defines a set of interfaces for accessing RDF(S) ontologies in a Grid environment  Provides two ways for accessing ontologies: Using model-based access functionalities Using RDF(S) querying languages  Is fully compliant with OGSA  Based on Grid (OGF) and Web Services (OASIS, W3C) standards WS-DAI, WS-RF, WS-Addressing  Is based on Semantic Web standards (W3C): RDF, RDFS, SPARQL

10 10OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 What is a Grid? License Printer A grid is a system consisting of  Distributed but connected resources and  Software and/or hardware that provides and manages logically seamless access to those resources to meet desired objectives A grid is a system consisting of  Distributed but connected resources and  Software and/or hardware that provides and manages logically seamless access to those resources to meet desired objectives R2AD Database Web server Data CenterCluster HandheldSupercomputer Workstation Server Taken from Hiro Kishimoto’s keynote in GGF17

11 11OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 The specification (II) The Grid as an ontology deployment playground  EGA Reference Model  De-facto standard grid architecture  Open Grid Services Architecture (OGSA)  SoA and web services based instantiation of EGA Reference Model  Infrastructure Services (i.e. transactions)  Execution Management Services(i.e. job management)  Data Services Security Data Description Data Access Storage Resource Management Cache Services Data Replication Data Federation Metadata Catalogue & Registries  Resource Management Services  Security Services (i.e. AAA)  Self-management Services  Information Services (i.e. provenance) WS-DAI Specification

12 12OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 The specification (III) How does the specification fit in WS-DAI WS-DAI WS-DAIRWS-DAIX Sets general pattern for realisations Possible Future Realisations Extensions for specific kinds of data resource Relational SQL XML XQuery/XPath WS-DAIOnt-RDF(S) Ontology Ops Query lang.

13 13OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 The specification (II) Data resources

14 14OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 The specification (III) Interface organization

15 15OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 RDFSRepositorySelectorService

16 16OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 RDFSRepositoryService

17 17OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 RDFSClassService

18 18OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 The Implementation Architecture  Two-tier architecture:  Web Service tier, d ifferent layers according access granularity Upper layer: management of multiple repositories Intermediate layer: management of a single repository Lower layer: management of knowledge elements of a given repository  RDF(S) access tier: Abstracts the interaction with specific RDF(S) storages

19 19OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Part II: Hands-on exercises

20 20OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Outline of the tutorial Hands-on exercises  Methodology  Introducing the players  The software distribution  The sample ontologies  Hands-on work lifecycle overview  Setting up the work environment  Pre-deployment configuration  Prototype services deployment  Post-deployment configuration  Using the services  The repository selector service  The repository service  The class service  Advanced use of the services  Cleaning up

21 21OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Methodology  The software will be used in two ways:  Command line clients  Ad-hoc Java clients  The clients will be tested in a controlled scenario:  The scenario will be prepared as part of the practical The resources will be configured The services will be deployed in the container  When the practical ends, the alumni will clean up their computer The services will be undeployed from the container  Two console windows will be necessary:  Client window  Container window

22 22OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Setting up the work environment (I) Preparing the resources  Download the resources:  Software: already downloaded yesterday  Ontologies: http://www.cs.man.ac.uk/~ocorcho/OntoGrid/SG- tutorial/software/backoffice.zip  Unpack the resources:  The directory where the software was unpacked to will be referred to as %DIST%  The directory where the ontologies will be unpacked to will be referred to as %BACKOFFICE%

23 23OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Introducing the players (I) The software distribution  Software: ws-daio-rdfs.v0.5.zip(sg-tutorial-install.zip)  Structure:

24 24OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Introducing the players (II) The sample ontologies  Sample ontologies: backoffice.zip  Main ontology used:  Insurance Grid Ontology (insurance_grid.rdfs)  Class hierarchy:

25 25OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Hands-on work lifecycle overview

26 26OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 RDFSRepository log RDFSNamespace uri has RDFSSesameRepository SC RDFSSesameFileRepository file RDFSSesameMemoryRepositoryRDFSSesameRemoteRepository user password RDFSSesameHTTPRepository url RDFSSesameRMIRepository rmiuri SC Setting up the work environment (II) Pre-deployment configuration: How to configure the repositoy selector service More RDF(S) Repositories here to be added For example: Jena RDF(S) storage Oracle-RDF RDF distributed systems (ATLAS)

27 27OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 <rdf:Description rdf:about="http://wsdaiordfs.eu.ist.ontogrid/RDFSRepository#insurance_grid"> The Insurance Grid Ontology insurance_grid <rdfs_repos:has rdf:resource="http://wsdaiordfs.eu.ist.ontogrid/RDFSRepository#ig_ns"/> D:/2ndreview/backoffice/insurance_grid.rdfs <rdf:type rdf:resource="http://wsdaiordfs.eu.ist.ontogrid/ RDFSRepository#RDFSSesameFileRepository"/> The Insurance Grid Ontology Namespace ig_ns http://www.insurancegrid.org/vocabulary# <rdf:type rdf:resource="http://wsdaiordfs.eu.ist.ontogrid/RDFSRepository#RDFSNamespace"/> "http://wsdaiordfs.eu.ist.ontogrid/RDFSRepository#insurance_grid" "http://wsdaiordfs.eu.ist.ontogrid/ RDFSRepository#RDFSSesameFileRepository" "http://wsdaiordfs.eu.ist.ontogrid/RDFSRepository#ig_ns" D:/2ndreview/backoffice/insurance_grid.rdfs Setting up the work environment (III) Pre-deployment configuration: How to configure the repositoy selector service(II) "http://wsdaiordfs.eu.ist.ontogrid/RDFSRepository#ig_ns" "http://wsdaiordfs.eu.ist.ontogrid/RDFSRepository#RDFSNamespace" http://www.insurancegrid.org/vocabulary#

28 28OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Setting up the work environment (III) Pre-deployment configuration: Configuring the repositories that are to be used (II)  Configure the repositories that will be managed by the selector service: (at least insurance_grid.rdfs)  Create a file named RDFSRepository.rdf in %DIST%/etc  Create a repository description for the default ontology that we will use: Name: insurance_grid File: insurance_grid.rdfs Log: > Namespace uri: http://www.insurancegrid.org/vocabulary#  Include other repository descriptions for any extra repository that you want to use.

29 29OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Setting up the work environment (IV) Build  Build the prototype: > ant all

30 30OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Setting up the work environment (V) Deploy  Deploy the services: > ant deploy

31 31OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Setting up the work environment (VI) Running the container & further configuration  Starting the container (Container window) > globus-start-container -nosec  Post-deployment configuration (Client window)  Set up some helpful environment variables > set %SELECTOR%=\ http://localhost:8080/wsrf/services/WS-DAIO-RDFS/RDFSRepositorySelectorService > set %REPOSITORY%=\ http://localhost:8080/wsrf/services/WS-DAIO-RDFS/RDFSRepositoryService > set %CLASS%=\ http://localhost:8080/wsrf/services/WS-DAIO-RDFS/RDFSClassService > set %NS%=http://www.insurancegrid.org/vocabulary#  Set up GT4 environment > globus-devel-env

32 32OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (I) – The Repository Selector Service  Check out how many repositories are available > get-number-of-repositories -s %SELECTOR% There are n repositories available in the backoffice directory managed by the selector.  List the names of the available repositories > list-repositories -s %SELECTOR% The name of each of the repositories managed by the selector will be returned.  Retrieve an available repository > get-repository -s %SELECTOR% insurance_grid repository.rdfs The repository is retrieved and stored in the specified file in RDF/XML.  Load an available repository > load-repository -s %SELECTOR% insurance_grid The service returns the EPR of the repository service to which we have to contact in order to access to the specified repository. The EPR is serialized to a file that will be used in the following examples. It will be referred to as.

33 33OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (II) – The Repository Service  List the available classes in the repository: > list-classes -e The service returns all the available classes defined in the repository, plus those predefined by RDFS.  Load an available class from the repository: > load-class -e %NS%#Company > load-class -e %NS%#PhysicalActor The service returns the EPR of the class service to which we have to contact in order to access to the specified classes. The EPR to access to the Company class will be referred to as, and the EPR to access the PhysicalActor class will be referred to as.

34 34OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (III) – The Class Service (I)  List the direct subclasses of a class: > list-related-classes -e -lr subclasses The result is the direct subclasses of the class, that is, those which appear as subject in a rdfs:subClassOf relationship which has as object the class represented by the service.

35 35OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (IV) – The Class Service (II)  List direct superclasses of a class: > list-related-classes -e -lr superclasses The result is the direct superclasses of the class, that is, those which appear as object in a rdfs:subClassOf relationship which has as subject the class represented by the service.

36 36OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (V) – The Class Service (III)  List of the subclasses of a class: > list-related-classes -e -lr subclasses -chr The result is all the subclasses of the class, that is, those classes which are direct subclasses or have a subclass that is direct subclass of the class represented by the service

37 37OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (VI) – The Class Service (IV)  List of the superclasses of a class: > list-related-classes -e -lr superclasses -chr The result is all the superclasses of the class, that is, those which are direct superclasses or have a superclass that is direct superclass of the class represented by the service

38 38OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (VII) – The Class Service (V)  List of the siblings of the class: > list-related-classes -e -lr siblings The result is the sibling classes of the class, that is, those have the same direct superclasses than the class represented by the service.

39 39OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (VIII) – The Class Service (VI)  List the direct subclasses of a class: > list-related-classes -e -lr subclasses The result is the direct subclasses of the class, that is, those which appear as subject in a rdfs:subClassOf relationship which has as object the class represented by the service.

40 40OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (IX) – The Class Service (VII)  List direct superclasses of a class: > list-related-classes -e -lr superclasses The result is the direct superclasses of the class, that is, those which appear as object in a rdfs:subClassOf relationship which has as subject the class represented by the service.

41 41OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (X) – The Class Service (VIII)  List of the subclasses of a class: > list-related-classes -e -lr subclasses -chr The result is all the subclasses of the class, that is, those classes which are direct subclasses or have a subclass that is direct subclass of the class represented by the service

42 42OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (XI) – The Class Service (IX)  List of the superclasses of a class: > list-related-classes -e -lr superclasses -chr The result is all the superclasses of the class, that is, those which are direct superclasses or have a superclass that is direct superclass of the class represented by the service

43 43OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (XII) – The Class Service (X)  List of the siblings of the class: > list-related-classes -e -lr siblings The result is the sibling classes of the class, that is, those have the same direct superclasses than the class represented by the service.

44 44OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (XIII) – The Repository Service (III)  Execute a simple graph query defined different query languages: > execute-query -e -ql rql class_query.rql > execute-query -e -ql rdql class_query.rdql > execute-query -e -ql serql class_query.serql The simple query used selects the classes defined in the repository:  RQL: class  RDQL: SELECT ?x WHERE (?x )  SERQL: SELECT DISTINCT C FROM {C} rdf:type {rdfs:Class} As expected, the three queries have the same results: the classes defined in the repository plus the predefined by RDFS.

45 45OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Using the services (XIV) – The Repository Service (IV)  Execute a simple construct query in SERQL The query creates an ad-hoc S ex:superclassOf C relationship between each two classes S and C such as C rdfs:subClassOf S holds: CONSTRUCT {S} ex:superClassOf {C} FROM {C} rdf:type {rdfs:Class}; rdfs:subClassOf {S} USING NAMESPACE ex =  Using the graph querying interface: > execute-query -e -ql serql construct.serql In this case the results are returned in a table, as happened with the previous queries.  Using the construct query interface: > execute-construct-query -e -ql serql construct.serql construct.result.rdfs In this case the results are stored serialized in RDF/XML in an specified file.

46 46OntoGrid Semantic Grid Tutorial - Manchester, Feb 2007 Cleaning up  Before moving to the next session, clean the container :-D > cd %DIST% > ant undeploy


Download ppt "FP6-511513 OntoGrid: Paving the way for Knowledgeable Grid Services and Systems www.ontogrid.net WS-DAIOnt-RDF(S) Hands-on session OntoGrid Semantic Grid."

Similar presentations


Ads by Google