SlideShare a Scribd company logo
www.ariadne-eu.org       www.cs.kuleuven.be/~hmdb
                     1
OAI workshop:
                OAI-PMH - Practical
                     session

                            Bram Vandeputte
                              K.U.Leuven
                               ARIADNE
www.ariadne-eu.org               www.cs.kuleuven.be/~hmdb
                        1
Overview




www.ariadne-eu.org              www.cs.kuleuven.be/~hmdb
                        2
Overview

         •                    How OAI works
         •         Harvesting metadata : the simple way
         •             Setting up an OAI-PMH target
         •     Binding your database to the OAI-PMH target
         •              Harvesting metadata - take 2




www.ariadne-eu.org                           www.cs.kuleuven.be/~hmdb
                                2
Overview


         •         Harvesting metadata : the simple way
         •             SettingHow OAI works target
                              up an OAI-PMH
         •     Binding your database to the OAI-PMH target
         •              Harvesting metadata - take 2




www.ariadne-eu.org                           www.cs.kuleuven.be/~hmdb
                                2
How OAI works

    •   OAI “VERBS”               Service Provider      Metadata Provider


        •   Identify                    H     HTTP Request
                                                                  R
                                                                  E
        •   ListMetadataFormats         A
                                        R      (OAI Verb)         P
        •   GetRecord                   V                         O
        •   ListIdentifiers              E OAI                 OAI S
                                        S                         I
        •   ListRecords                 T                         T
                                                                  O
        •   ListSets                    E
                                              HTTP Response
                                                                  R
                                        R       (Valid XML)
                                                                  Y



www.ariadne-eu.org                                   www.cs.kuleuven.be/~hmdb
                                    3
GetRecord

         • Purpose
           • Returns the metadata for a single item in the form
              of an OAI record

         • Parameters
           • identifier – unique id for item (R)
           • metadataPrefix – metadata format for the record
              (R)


www.ariadne-eu.org                                 www.cs.kuleuven.be/~hmdb
                                    4
ListRecords
         • Purpose
           • Retrieves metadata records for multiple items
         • Parameters
           • from – start date (O)
              - greater than or equal to
           • until – end date (O)
              - less than or equal to
           • set – set to harvest from (O)
           • resumptionToken – flow control mechanism (X)
           • metadataPrefix – metadata format (R)
www.ariadne-eu.org                                www.cs.kuleuven.be/~hmdb
                                           5
ListRecords – from until
          http://localhost:8080/oaicat/OAIHandler?verb=ListRecords&
        from=1999-01-15&until=2005-12-31&metadataPrefix=oai_lom

                                     UTCdatetime
                Dates and times are uniformly encoded using ISO8601
                  and are expressed in UTC throughout the protocol.
                  When time is included, the special UTC designator
                ("Z") must be used. UTC is implied for dates although
                   no timezone designator is specified. For example,
                 1957-03-20T20:30:00Z is UTC 8:30:00 PM on March
                   20th 1957. UTCdatetime is used in both protocol
                 requests and protocol replies, in the way described in
                                the following sections.



www.ariadne-eu.org                                      www.cs.kuleuven.be/~hmdb
                                       6
ListIdentifiers
         • Purpose
           •   List headers for all items corresponding to the specified
               parameters

         • Parameters
           •   from – start date (O)
           •   until – end date (O)
           •   set – set to harvest from (O)
           •   metadataPrefix – metadata format to list identifiers for (R)
           •   resumptionToken – flow control mechanism (X)




www.ariadne-eu.org                                          www.cs.kuleuven.be/~hmdb
                                          7
ListSets

         • Purpose
           • Provide a listing of sets in which records may be
              organized (may be hierarchical, overlapping, or flat)

         • Parameters
           • None


www.ariadne-eu.org                                   www.cs.kuleuven.be/~hmdb
                                     8
Overview




www.ariadne-eu.org              www.cs.kuleuven.be/~hmdb
                        9
Overview

         ✓                How OAI works
         •     Harvesting metadata : the simple way
         •         Setting up an OAI-PMH target
         • Binding your database to the OAI-PMH target
         •          Harvesting metadata - take 2




www.ariadne-eu.org                       www.cs.kuleuven.be/~hmdb
                             9
Overview

         ✓                  How OAI works

         •         Harvesting up an OAI-PMH targetway
                       Setting metadata : the simple
         •     Binding your database to the OAI-PMH target
         •              Harvesting metadata - take 2




www.ariadne-eu.org                           www.cs.kuleuven.be/~hmdb
                                9
Harvesting metadata
 • the simple way : harvesting through browser
   • Identify
      - http://ariadne.cs.kuleuven.be/oaitarget/OAIHandler?verb=Identify
   • ListMetadataFormats
      - http://ariadne.cs.kuleuven.be/oaitarget/OAIHandler?verb=ListMetadataFormats
   • ListRecords
      - http://ariadne.cs.kuleuven.be/oaitarget/OAIHandler?verb=ListRecords&metadataPrefix=oai_lom
      - http://ariadne.cs.kuleuven.be/oaitarget/OAIHandler?verb=ListRecords&resumptionToken=
   • GetRecord
      - http://ariadne.cs.kuleuven.be/oaitarget/OAIHandler?verb=GetRecord
        &identifier=oai:ariadne.cs.kuleuven.be:BLKLKP1382&metadataPrefix=oai_lom

   • ...
www.ariadne-eu.org                                                         www.cs.kuleuven.be/~hmdb
                                                 10
Overview




www.ariadne-eu.org              www.cs.kuleuven.be/~hmdb
                        11
Overview

         ✓                How OAI works
         ✓     Harvesting metadata : the simple way
         •         Setting up an OAI-PMH target
         • Binding your database to the OAI-PMH target
         •          Harvesting metadata - take 2




www.ariadne-eu.org                       www.cs.kuleuven.be/~hmdb
                             11
Overview

         ✓                How OAI works
         ✓     Harvesting metadata : the simple way
         •         Setting up an OAI-PMH target
         • Binding your database to the OAI-PMH target
         •          Harvesting metadata - take 2




www.ariadne-eu.org                       www.cs.kuleuven.be/~hmdb
                             11
Setting up a target




www.ariadne-eu.org               www.cs.kuleuven.be/~hmdb
                          12
Setting up a target


      Wiki page with detailed instructions :
      http://ariadne.cs.kuleuven.be/lomi/index.php/Setting_Up_OAI-PMH




www.ariadne-eu.org                                    www.cs.kuleuven.be/~hmdb
                                     12
OAI-PMH Target Software
                                             2. Mapping Process

                         Repository metadata                     Repository LOM metadata

1. Get metadata      - identifier                            - lom.general.identifier
out of database      - title                                - lom.general.title
                     - url                                  - lom.general.description
                     - project description                  - lom.technical.location
                     - ...                                  - ...




                                             3. Copy results in
                                             OAI-PMH service



   Repository                                   OAI-PMH result


                                              DYNAMO LOM                  4. Serve results       ARIADNE
                                               DYNAMO LOM
                                                metadata LOM                                     Harvester
                                                DYNAMO
                                                 metadata
                                                 Repository LOM
                                                  metadata
                                                    metadata




www.ariadne-eu.org                                                                www.cs.kuleuven.be/~hmdb
                                                       13
Setting up a target




www.ariadne-eu.org               www.cs.kuleuven.be/~hmdb
                          14
Setting up a target
       • Install Java, Ant & apache-tomcat
       • Set environment vars
           set JAVA_HOME=C:j2sdk1.5.0
           set ANT_HOME=C:apache-ant-1.6.5
           set PATH=%JAVA_HOME%bin;%ANT_HOME%bin;%PATH%

       • Download oaicat source and build
           cd <your build-dir>
           type “ant”
       • Deploy code
           put “oaicat_5.0/dist/oaicat.war” under “apache-tomcat/webapps/”



www.ariadne-eu.org                                         www.cs.kuleuven.be/~hmdb
                                        14
Setting up a target




www.ariadne-eu.org               www.cs.kuleuven.be/~hmdb
                          15
Setting up a target


• Testing the target
        - http://localhost:8080/oaitarget/OAIHandler?verb=Identify
        - http://localhost:8080/oaitarget/OAIHandler?verb=ListMetadataFormats




www.ariadne-eu.org                                     www.cs.kuleuven.be/~hmdb
                                      15
Setting up a target




www.ariadne-eu.org               www.cs.kuleuven.be/~hmdb
                          16
Setting up a target
       • Binding to example lucene index
            • Download the index :
                - http://ariadne.cs.kuleuven.be/MeltSqiOai/OAI/lucene.zip
            • Extract
            • open properties file with text editor :
                - oaicat_5.0/WEB-INF/oaicat.properties
            • Enter the full path of index under the
               "LuceneLomCatalog.lucenePath" property
            • reload the target

www.ariadne-eu.org                                                    www.cs.kuleuven.be/~hmdb
                                               16
Setting up a target




www.ariadne-eu.org               www.cs.kuleuven.be/~hmdb
                          17
Setting up a target

• Testing the target
        - http://localhost:8080/oaitarget/OAIHandler?verb=ListRecords&metadataPrefix=oai_lom

        - http://localhost:8080/oaitarget/OAIHandler?verb=ListRecords&resumptionToken=

        - http://localhost:8080/oaitarget/OAIHandler?verb=GetRecord&identifier=
          oai:oaicat.ariadne.org:CS_LKP_v_3.0_nr_1162 &metadataPrefix=oai_lom




www.ariadne-eu.org                                                  www.cs.kuleuven.be/~hmdb
                                               17
Setting up a target




www.ariadne-eu.org               www.cs.kuleuven.be/~hmdb
                          18
Setting up a target


         • Validate the result metadata in the
            validationService online :
           • http://ariadne.cs.kuleuven.be/validationService



www.ariadne-eu.org                                  www.cs.kuleuven.be/~hmdb
                                    18
Overview




www.ariadne-eu.org              www.cs.kuleuven.be/~hmdb
                        19
Overview

         ✓                How OAI works
         ✓     Harvesting metadata : the simple way
         ✓         Setting up an OAI-PMH target
         • Binding your database to the OAI-PMH target
         •          Harvesting metadata - take 2




www.ariadne-eu.org                       www.cs.kuleuven.be/~hmdb
                             19
Overview

         ✓                How OAI works
         ✓     Harvesting metadata : the simple way
         ✓         Setting up an OAI-PMH target
         • Binding your database to the OAI-PMH target
         •          Harvesting metadata - take 2




www.ariadne-eu.org                       www.cs.kuleuven.be/~hmdb
                             19
Binding it to your DB




www.ariadne-eu.org          www.cs.kuleuven.be/~hmdb
                      20
Binding it to your DB
     • Implement /adapt 3 classes :
          •   org.ariadne.oai.server.X.catalog.XCatalog.java
               ➡ Implements the OAI-PMH verbs


          •   org.ariadne.oai.server.X.catalog.XRecordFactory.java
               ➡ Creates OAI-PMH headers


          •   org.ariadne.oai.server.X.crosswalk.XCrosswalk.java
               ➡ Maps arbitrary object to LOM XML object

www.ariadne-eu.org                                             www.cs.kuleuven.be/~hmdb
                                          20
Binding it to your DB




www.ariadne-eu.org          www.cs.kuleuven.be/~hmdb
                      21
Binding it to your DB

     • XCatalog.java
          • For each “verb” :
              - get parameters
              - query database to get matching metadata
              - parse metadata into java objects (Vector, HashMap, ...)
              - call RecordFactory and Crosswalk to create records



www.ariadne-eu.org                                                        www.cs.kuleuven.be/~hmdb
                                                21
Binding it to your DB




www.ariadne-eu.org          www.cs.kuleuven.be/~hmdb
                      22
Binding it to your DB

         • XRecordFactory.java
              • Two important methods :
                     -   getLocalIdentifier(Object nativeItem);

                     -   getDatestamp(Object nativeItem);




www.ariadne-eu.org                                                www.cs.kuleuven.be/~hmdb
                                             22
Binding it to your DB




www.ariadne-eu.org          www.cs.kuleuven.be/~hmdb
                      23
Binding it to your DB


         • XCrosswalk.java
              • Map fields of your object to LOM XML object :
                     -   createMetadata(Object nativeItem);




www.ariadne-eu.org                                            www.cs.kuleuven.be/~hmdb
                                             23
Overview




www.ariadne-eu.org              www.cs.kuleuven.be/~hmdb
                        24
Overview

         ✓                How OAI works
         ✓     Harvesting metadata : the simple way
         ✓         Setting up an OAI-PMH target
         ✓ Binding your database to the OAI-PMH target
         •          Harvesting metadata - take 2




www.ariadne-eu.org                       www.cs.kuleuven.be/~hmdb
                             24
Overview

         ✓                How OAI works
         ✓     Harvesting metadata : the simple way
         ✓         Setting up an OAI-PMH target
         ✓ Binding your database to the OAI-PMH target
         •          Harvesting metadata - take 2




www.ariadne-eu.org                       www.cs.kuleuven.be/~hmdb
                             24
Harvesting metadata - take 2




www.ariadne-eu.org        www.cs.kuleuven.be/~hmdb
                     25
Harvesting metadata - take 2

      Download ARIADNE harvester :
      http://www.cs.kuleuven.be/~bramv/oaiharvester.war

      Wiki page with detailed instructions :
      http://ariadne.cs.kuleuven.be/lomi/index.php/Harvesting_Metadata




www.ariadne-eu.org                                     www.cs.kuleuven.be/~hmdb
                                      25
References
         • http://ariadne.cs.kuleuven.be/lomi/index.php/
            Setting_Up_OAI-PMH

         • http://ariadne.cs.kuleuven.be/lomi/index.php/
            Harvesting_Metadata

         • http://oai.grainger.uiuc.edu/FinalReport/
            JCDL_2003_OAI_Intro.ppt

         • http://www.cs.kuleuven.ac.be/~hmdb/SqiOaiAspect/
         • http://www.oclc.org/research/software/oai/cat.htm
         • http://ariadne.cs.kuleuven.be/validationService

www.ariadne-eu.org                                     www.cs.kuleuven.be/~hmdb
                                    26

More Related Content

Viewers also liked

Metadata Harvesting And Validationv2
Metadata Harvesting And Validationv2Metadata Harvesting And Validationv2
Metadata Harvesting And Validationv2
Bram Vandeputte
 
Системный подход в организации и проведении Assessment Center в компании. Под...
Системный подход в организации и проведении Assessment Center в компании. Под...Системный подход в организации и проведении Assessment Center в компании. Под...
Системный подход в организации и проведении Assessment Center в компании. Под...
Vitaliy Mazurenko
 
Android presentation
Android presentationAndroid presentation
Android presentation
Pablo Alejandre del Rio
 
Android presentation
Android presentationAndroid presentation
Android presentation
jitendra k Singh
 
Android presentation 2011
Android presentation 2011Android presentation 2011
Android presentation 2011
Bram Vandeputte
 
Ariadne Overview
Ariadne OverviewAriadne Overview
Ariadne Overview
Bram Vandeputte
 
Ariadne harvester and validator - technical overview
Ariadne harvester and validator - technical overviewAriadne harvester and validator - technical overview
Ariadne harvester and validator - technical overview
Bram Vandeputte
 

Viewers also liked (7)

Metadata Harvesting And Validationv2
Metadata Harvesting And Validationv2Metadata Harvesting And Validationv2
Metadata Harvesting And Validationv2
 
Системный подход в организации и проведении Assessment Center в компании. Под...
Системный подход в организации и проведении Assessment Center в компании. Под...Системный подход в организации и проведении Assessment Center в компании. Под...
Системный подход в организации и проведении Assessment Center в компании. Под...
 
Android presentation
Android presentationAndroid presentation
Android presentation
 
Android presentation
Android presentationAndroid presentation
Android presentation
 
Android presentation 2011
Android presentation 2011Android presentation 2011
Android presentation 2011
 
Ariadne Overview
Ariadne OverviewAriadne Overview
Ariadne Overview
 
Ariadne harvester and validator - technical overview
Ariadne harvester and validator - technical overviewAriadne harvester and validator - technical overview
Ariadne harvester and validator - technical overview
 

Similar to Oai Workshop Extended

Globe seminar
Globe seminarGlobe seminar
Globe seminar
Xavier Ochoa
 
Harvesting metadata - ASPECT webinar
Harvesting metadata - ASPECT webinarHarvesting metadata - ASPECT webinar
Harvesting metadata - ASPECT webinar
Joris Klerkx
 
Apache hadoop
Apache hadoopApache hadoop
Apache hadoop
Darpan Dekivadiya
 
05 integrate redis
05 integrate redis05 integrate redis
05 integrate redis
Erhwen Kuo
 
Big data, just an introduction to Hadoop and Scripting Languages
Big data, just an introduction to Hadoop and Scripting LanguagesBig data, just an introduction to Hadoop and Scripting Languages
Big data, just an introduction to Hadoop and Scripting Languages
Corley S.r.l.
 
ResourceSync: Web-based Resource Synchronization
ResourceSync: Web-based Resource SynchronizationResourceSync: Web-based Resource Synchronization
ResourceSync: Web-based Resource Synchronization
Simeon Warner
 
Publishing Linked Data from RDB
Publishing Linked Data from RDBPublishing Linked Data from RDB
Publishing Linked Data from RDB
Boris Villazón-Terrazas
 
Hadoop User Group - Status Apache Drill
Hadoop User Group - Status Apache DrillHadoop User Group - Status Apache Drill
Hadoop User Group - Status Apache Drill
MapR Technologies
 
20110930 information retrieval raskovalov_lecture1
20110930 information retrieval raskovalov_lecture120110930 information retrieval raskovalov_lecture1
20110930 information retrieval raskovalov_lecture1
Computer Science Club
 
20110930 information retrieval raskovalov_lecture1
20110930 information retrieval raskovalov_lecture120110930 information retrieval raskovalov_lecture1
20110930 information retrieval raskovalov_lecture1
Computer Science Club
 
Gateways 2020 Tutorial - Automated Data Ingest and Search with Globus
Gateways 2020 Tutorial - Automated Data Ingest and Search with GlobusGateways 2020 Tutorial - Automated Data Ingest and Search with Globus
Gateways 2020 Tutorial - Automated Data Ingest and Search with Globus
Globus
 
Using Apache Hive with High Performance
Using Apache Hive with High PerformanceUsing Apache Hive with High Performance
Using Apache Hive with High Performance
Inderaj (Raj) Bains
 
Apache ManifoldCF @ Linux Day 2012
Apache ManifoldCF @ Linux Day 2012Apache ManifoldCF @ Linux Day 2012
Apache ManifoldCF @ Linux Day 2012
Piergiorgio Lucidi
 
OpenTravel Advisory Forum 2012 REST XML Resources
OpenTravel Advisory Forum 2012 REST XML ResourcesOpenTravel Advisory Forum 2012 REST XML Resources
OpenTravel Advisory Forum 2012 REST XML Resources
OpenTravel Alliance
 
Hadoop - Introduction to Hadoop
Hadoop - Introduction to HadoopHadoop - Introduction to Hadoop
Hadoop - Introduction to Hadoop
Vibrant Technologies & Computers
 
Redis Modules - Redis India Tour - 2017
Redis Modules - Redis India Tour - 2017Redis Modules - Redis India Tour - 2017
Redis Modules - Redis India Tour - 2017
HashedIn Technologies
 
20120225 information retrieval raskovalov_lecture01-02
20120225 information retrieval raskovalov_lecture01-0220120225 information retrieval raskovalov_lecture01-02
20120225 information retrieval raskovalov_lecture01-02
Computer Science Club
 
SDEC2011 NoSQL concepts and models
SDEC2011 NoSQL concepts and modelsSDEC2011 NoSQL concepts and models
SDEC2011 NoSQL concepts and models
Korea Sdec
 
The never-ending REST API design debate
The never-ending REST API design debateThe never-ending REST API design debate
The never-ending REST API design debate
Restlet
 
REST APIs for an Internet of Things
REST APIs for an Internet of ThingsREST APIs for an Internet of Things
REST APIs for an Internet of Things
Michael Koster
 

Similar to Oai Workshop Extended (20)

Globe seminar
Globe seminarGlobe seminar
Globe seminar
 
Harvesting metadata - ASPECT webinar
Harvesting metadata - ASPECT webinarHarvesting metadata - ASPECT webinar
Harvesting metadata - ASPECT webinar
 
Apache hadoop
Apache hadoopApache hadoop
Apache hadoop
 
05 integrate redis
05 integrate redis05 integrate redis
05 integrate redis
 
Big data, just an introduction to Hadoop and Scripting Languages
Big data, just an introduction to Hadoop and Scripting LanguagesBig data, just an introduction to Hadoop and Scripting Languages
Big data, just an introduction to Hadoop and Scripting Languages
 
ResourceSync: Web-based Resource Synchronization
ResourceSync: Web-based Resource SynchronizationResourceSync: Web-based Resource Synchronization
ResourceSync: Web-based Resource Synchronization
 
Publishing Linked Data from RDB
Publishing Linked Data from RDBPublishing Linked Data from RDB
Publishing Linked Data from RDB
 
Hadoop User Group - Status Apache Drill
Hadoop User Group - Status Apache DrillHadoop User Group - Status Apache Drill
Hadoop User Group - Status Apache Drill
 
20110930 information retrieval raskovalov_lecture1
20110930 information retrieval raskovalov_lecture120110930 information retrieval raskovalov_lecture1
20110930 information retrieval raskovalov_lecture1
 
20110930 information retrieval raskovalov_lecture1
20110930 information retrieval raskovalov_lecture120110930 information retrieval raskovalov_lecture1
20110930 information retrieval raskovalov_lecture1
 
Gateways 2020 Tutorial - Automated Data Ingest and Search with Globus
Gateways 2020 Tutorial - Automated Data Ingest and Search with GlobusGateways 2020 Tutorial - Automated Data Ingest and Search with Globus
Gateways 2020 Tutorial - Automated Data Ingest and Search with Globus
 
Using Apache Hive with High Performance
Using Apache Hive with High PerformanceUsing Apache Hive with High Performance
Using Apache Hive with High Performance
 
Apache ManifoldCF @ Linux Day 2012
Apache ManifoldCF @ Linux Day 2012Apache ManifoldCF @ Linux Day 2012
Apache ManifoldCF @ Linux Day 2012
 
OpenTravel Advisory Forum 2012 REST XML Resources
OpenTravel Advisory Forum 2012 REST XML ResourcesOpenTravel Advisory Forum 2012 REST XML Resources
OpenTravel Advisory Forum 2012 REST XML Resources
 
Hadoop - Introduction to Hadoop
Hadoop - Introduction to HadoopHadoop - Introduction to Hadoop
Hadoop - Introduction to Hadoop
 
Redis Modules - Redis India Tour - 2017
Redis Modules - Redis India Tour - 2017Redis Modules - Redis India Tour - 2017
Redis Modules - Redis India Tour - 2017
 
20120225 information retrieval raskovalov_lecture01-02
20120225 information retrieval raskovalov_lecture01-0220120225 information retrieval raskovalov_lecture01-02
20120225 information retrieval raskovalov_lecture01-02
 
SDEC2011 NoSQL concepts and models
SDEC2011 NoSQL concepts and modelsSDEC2011 NoSQL concepts and models
SDEC2011 NoSQL concepts and models
 
The never-ending REST API design debate
The never-ending REST API design debateThe never-ending REST API design debate
The never-ending REST API design debate
 
REST APIs for an Internet of Things
REST APIs for an Internet of ThingsREST APIs for an Internet of Things
REST APIs for an Internet of Things
 

More from Bram Vandeputte

Icoper webinar
Icoper webinar Icoper webinar
Icoper webinar
Bram Vandeputte
 
Multi-touch introduction
Multi-touch introductionMulti-touch introduction
Multi-touch introduction
Bram Vandeputte
 
Android intro 2010
Android intro 2010Android intro 2010
Android intro 2010
Bram Vandeputte
 
Exploring the research world
Exploring the research worldExploring the research world
Exploring the research world
Bram Vandeputte
 
Research20
Research20Research20
Research20
Bram Vandeputte
 
Multi Touch Introduction
Multi Touch IntroductionMulti Touch Introduction
Multi Touch Introduction
Bram Vandeputte
 
Multi Touch Hands On
Multi Touch Hands OnMulti Touch Hands On
Multi Touch Hands On
Bram Vandeputte
 
Metadata Harvesting And Validation
Metadata Harvesting And ValidationMetadata Harvesting And Validation
Metadata Harvesting And Validation
Bram Vandeputte
 
IEEE LOM
IEEE LOMIEEE LOM
IEEE LOM
Bram Vandeputte
 
Android Presentation
Android PresentationAndroid Presentation
Android Presentation
Bram Vandeputte
 
Ariadne Harvesting
Ariadne HarvestingAriadne Harvesting
Ariadne Harvesting
Bram Vandeputte
 

More from Bram Vandeputte (11)

Icoper webinar
Icoper webinar Icoper webinar
Icoper webinar
 
Multi-touch introduction
Multi-touch introductionMulti-touch introduction
Multi-touch introduction
 
Android intro 2010
Android intro 2010Android intro 2010
Android intro 2010
 
Exploring the research world
Exploring the research worldExploring the research world
Exploring the research world
 
Research20
Research20Research20
Research20
 
Multi Touch Introduction
Multi Touch IntroductionMulti Touch Introduction
Multi Touch Introduction
 
Multi Touch Hands On
Multi Touch Hands OnMulti Touch Hands On
Multi Touch Hands On
 
Metadata Harvesting And Validation
Metadata Harvesting And ValidationMetadata Harvesting And Validation
Metadata Harvesting And Validation
 
IEEE LOM
IEEE LOMIEEE LOM
IEEE LOM
 
Android Presentation
Android PresentationAndroid Presentation
Android Presentation
 
Ariadne Harvesting
Ariadne HarvestingAriadne Harvesting
Ariadne Harvesting
 

Recently uploaded

A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
Peter Windle
 
Hindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdfHindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdf
Dr. Mulla Adam Ali
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
thanhdowork
 
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
RitikBhardwaj56
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
TechSoup
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
Nicholas Montgomery
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
Nicholas Montgomery
 
World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024
ak6969907
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
Jean Carlos Nunes Paixão
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
amberjdewit93
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
Bisnar Chase Personal Injury Attorneys
 
Liberal Approach to the Study of Indian Politics.pdf
Liberal Approach to the Study of Indian Politics.pdfLiberal Approach to the Study of Indian Politics.pdf
Liberal Approach to the Study of Indian Politics.pdf
WaniBasim
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
camakaiclarkmusic
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
Celine George
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
adhitya5119
 
Assessment and Planning in Educational technology.pptx
Assessment and Planning in Educational technology.pptxAssessment and Planning in Educational technology.pptx
Assessment and Planning in Educational technology.pptx
Kavitha Krishnan
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Mohd Adib Abd Muin, Senior Lecturer at Universiti Utara Malaysia
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Akanksha trivedi rama nursing college kanpur.
 
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
National Information Standards Organization (NISO)
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
PECB
 

Recently uploaded (20)

A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
 
Hindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdfHindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdf
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
 
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
 
World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
 
Liberal Approach to the Study of Indian Politics.pdf
Liberal Approach to the Study of Indian Politics.pdfLiberal Approach to the Study of Indian Politics.pdf
Liberal Approach to the Study of Indian Politics.pdf
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
 
Assessment and Planning in Educational technology.pptx
Assessment and Planning in Educational technology.pptxAssessment and Planning in Educational technology.pptx
Assessment and Planning in Educational technology.pptx
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
 
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
 

Oai Workshop Extended

  • 1. www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 1
  • 2. OAI workshop: OAI-PMH - Practical session Bram Vandeputte K.U.Leuven ARIADNE www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 1
  • 3. Overview www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 2
  • 4. Overview • How OAI works • Harvesting metadata : the simple way • Setting up an OAI-PMH target • Binding your database to the OAI-PMH target • Harvesting metadata - take 2 www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 2
  • 5. Overview • Harvesting metadata : the simple way • SettingHow OAI works target up an OAI-PMH • Binding your database to the OAI-PMH target • Harvesting metadata - take 2 www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 2
  • 6. How OAI works • OAI “VERBS” Service Provider Metadata Provider • Identify H HTTP Request R E • ListMetadataFormats A R (OAI Verb) P • GetRecord V O • ListIdentifiers E OAI OAI S S I • ListRecords T T O • ListSets E HTTP Response R R (Valid XML) Y www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 3
  • 7. GetRecord • Purpose • Returns the metadata for a single item in the form of an OAI record • Parameters • identifier – unique id for item (R) • metadataPrefix – metadata format for the record (R) www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 4
  • 8. ListRecords • Purpose • Retrieves metadata records for multiple items • Parameters • from – start date (O) - greater than or equal to • until – end date (O) - less than or equal to • set – set to harvest from (O) • resumptionToken – flow control mechanism (X) • metadataPrefix – metadata format (R) www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 5
  • 9. ListRecords – from until http://localhost:8080/oaicat/OAIHandler?verb=ListRecords& from=1999-01-15&until=2005-12-31&metadataPrefix=oai_lom UTCdatetime Dates and times are uniformly encoded using ISO8601 and are expressed in UTC throughout the protocol. When time is included, the special UTC designator ("Z") must be used. UTC is implied for dates although no timezone designator is specified. For example, 1957-03-20T20:30:00Z is UTC 8:30:00 PM on March 20th 1957. UTCdatetime is used in both protocol requests and protocol replies, in the way described in the following sections. www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 6
  • 10. ListIdentifiers • Purpose • List headers for all items corresponding to the specified parameters • Parameters • from – start date (O) • until – end date (O) • set – set to harvest from (O) • metadataPrefix – metadata format to list identifiers for (R) • resumptionToken – flow control mechanism (X) www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 7
  • 11. ListSets • Purpose • Provide a listing of sets in which records may be organized (may be hierarchical, overlapping, or flat) • Parameters • None www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 8
  • 12. Overview www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 9
  • 13. Overview ✓ How OAI works • Harvesting metadata : the simple way • Setting up an OAI-PMH target • Binding your database to the OAI-PMH target • Harvesting metadata - take 2 www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 9
  • 14. Overview ✓ How OAI works • Harvesting up an OAI-PMH targetway Setting metadata : the simple • Binding your database to the OAI-PMH target • Harvesting metadata - take 2 www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 9
  • 15. Harvesting metadata • the simple way : harvesting through browser • Identify - http://ariadne.cs.kuleuven.be/oaitarget/OAIHandler?verb=Identify • ListMetadataFormats - http://ariadne.cs.kuleuven.be/oaitarget/OAIHandler?verb=ListMetadataFormats • ListRecords - http://ariadne.cs.kuleuven.be/oaitarget/OAIHandler?verb=ListRecords&metadataPrefix=oai_lom - http://ariadne.cs.kuleuven.be/oaitarget/OAIHandler?verb=ListRecords&resumptionToken= • GetRecord - http://ariadne.cs.kuleuven.be/oaitarget/OAIHandler?verb=GetRecord &identifier=oai:ariadne.cs.kuleuven.be:BLKLKP1382&metadataPrefix=oai_lom • ... www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 10
  • 16. Overview www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 11
  • 17. Overview ✓ How OAI works ✓ Harvesting metadata : the simple way • Setting up an OAI-PMH target • Binding your database to the OAI-PMH target • Harvesting metadata - take 2 www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 11
  • 18. Overview ✓ How OAI works ✓ Harvesting metadata : the simple way • Setting up an OAI-PMH target • Binding your database to the OAI-PMH target • Harvesting metadata - take 2 www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 11
  • 19. Setting up a target www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 12
  • 20. Setting up a target Wiki page with detailed instructions : http://ariadne.cs.kuleuven.be/lomi/index.php/Setting_Up_OAI-PMH www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 12
  • 21. OAI-PMH Target Software 2. Mapping Process Repository metadata Repository LOM metadata 1. Get metadata - identifier - lom.general.identifier out of database - title - lom.general.title - url - lom.general.description - project description - lom.technical.location - ... - ... 3. Copy results in OAI-PMH service Repository OAI-PMH result DYNAMO LOM 4. Serve results ARIADNE DYNAMO LOM metadata LOM Harvester DYNAMO metadata Repository LOM metadata metadata www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 13
  • 22. Setting up a target www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 14
  • 23. Setting up a target • Install Java, Ant & apache-tomcat • Set environment vars set JAVA_HOME=C:j2sdk1.5.0 set ANT_HOME=C:apache-ant-1.6.5 set PATH=%JAVA_HOME%bin;%ANT_HOME%bin;%PATH% • Download oaicat source and build cd <your build-dir> type “ant” • Deploy code put “oaicat_5.0/dist/oaicat.war” under “apache-tomcat/webapps/” www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 14
  • 24. Setting up a target www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 15
  • 25. Setting up a target • Testing the target - http://localhost:8080/oaitarget/OAIHandler?verb=Identify - http://localhost:8080/oaitarget/OAIHandler?verb=ListMetadataFormats www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 15
  • 26. Setting up a target www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 16
  • 27. Setting up a target • Binding to example lucene index • Download the index : - http://ariadne.cs.kuleuven.be/MeltSqiOai/OAI/lucene.zip • Extract • open properties file with text editor : - oaicat_5.0/WEB-INF/oaicat.properties • Enter the full path of index under the "LuceneLomCatalog.lucenePath" property • reload the target www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 16
  • 28. Setting up a target www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 17
  • 29. Setting up a target • Testing the target - http://localhost:8080/oaitarget/OAIHandler?verb=ListRecords&metadataPrefix=oai_lom - http://localhost:8080/oaitarget/OAIHandler?verb=ListRecords&resumptionToken= - http://localhost:8080/oaitarget/OAIHandler?verb=GetRecord&identifier= oai:oaicat.ariadne.org:CS_LKP_v_3.0_nr_1162 &metadataPrefix=oai_lom www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 17
  • 30. Setting up a target www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 18
  • 31. Setting up a target • Validate the result metadata in the validationService online : • http://ariadne.cs.kuleuven.be/validationService www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 18
  • 32. Overview www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 19
  • 33. Overview ✓ How OAI works ✓ Harvesting metadata : the simple way ✓ Setting up an OAI-PMH target • Binding your database to the OAI-PMH target • Harvesting metadata - take 2 www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 19
  • 34. Overview ✓ How OAI works ✓ Harvesting metadata : the simple way ✓ Setting up an OAI-PMH target • Binding your database to the OAI-PMH target • Harvesting metadata - take 2 www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 19
  • 35. Binding it to your DB www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 20
  • 36. Binding it to your DB • Implement /adapt 3 classes : • org.ariadne.oai.server.X.catalog.XCatalog.java ➡ Implements the OAI-PMH verbs • org.ariadne.oai.server.X.catalog.XRecordFactory.java ➡ Creates OAI-PMH headers • org.ariadne.oai.server.X.crosswalk.XCrosswalk.java ➡ Maps arbitrary object to LOM XML object www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 20
  • 37. Binding it to your DB www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 21
  • 38. Binding it to your DB • XCatalog.java • For each “verb” : - get parameters - query database to get matching metadata - parse metadata into java objects (Vector, HashMap, ...) - call RecordFactory and Crosswalk to create records www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 21
  • 39. Binding it to your DB www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 22
  • 40. Binding it to your DB • XRecordFactory.java • Two important methods : - getLocalIdentifier(Object nativeItem); - getDatestamp(Object nativeItem); www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 22
  • 41. Binding it to your DB www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 23
  • 42. Binding it to your DB • XCrosswalk.java • Map fields of your object to LOM XML object : - createMetadata(Object nativeItem); www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 23
  • 43. Overview www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 24
  • 44. Overview ✓ How OAI works ✓ Harvesting metadata : the simple way ✓ Setting up an OAI-PMH target ✓ Binding your database to the OAI-PMH target • Harvesting metadata - take 2 www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 24
  • 45. Overview ✓ How OAI works ✓ Harvesting metadata : the simple way ✓ Setting up an OAI-PMH target ✓ Binding your database to the OAI-PMH target • Harvesting metadata - take 2 www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 24
  • 46. Harvesting metadata - take 2 www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 25
  • 47. Harvesting metadata - take 2 Download ARIADNE harvester : http://www.cs.kuleuven.be/~bramv/oaiharvester.war Wiki page with detailed instructions : http://ariadne.cs.kuleuven.be/lomi/index.php/Harvesting_Metadata www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 25
  • 48. References • http://ariadne.cs.kuleuven.be/lomi/index.php/ Setting_Up_OAI-PMH • http://ariadne.cs.kuleuven.be/lomi/index.php/ Harvesting_Metadata • http://oai.grainger.uiuc.edu/FinalReport/ JCDL_2003_OAI_Intro.ppt • http://www.cs.kuleuven.ac.be/~hmdb/SqiOaiAspect/ • http://www.oclc.org/research/software/oai/cat.htm • http://ariadne.cs.kuleuven.be/validationService www.ariadne-eu.org www.cs.kuleuven.be/~hmdb 26