SlideShare uma empresa Scribd logo
1 de 48
Baixar para ler offline
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

Mais conteúdo relacionado

Destaque (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
 

Semelhante a Oai Workshop Extended

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
 
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
 
REST APIs for the Internet of Things
REST APIs for the Internet of ThingsREST APIs for the Internet of Things
REST APIs for the Internet of Things
Michael Koster
 

Semelhante a 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 the Internet of Things
REST APIs for the Internet of ThingsREST APIs for the Internet of Things
REST APIs for the Internet of Things
 

Mais de Bram Vandeputte

Multi-touch introduction
Multi-touch introductionMulti-touch introduction
Multi-touch introduction
Bram Vandeputte
 
Multi Touch Introduction
Multi Touch IntroductionMulti Touch Introduction
Multi Touch Introduction
Bram Vandeputte
 
Metadata Harvesting And Validation
Metadata Harvesting And ValidationMetadata Harvesting And Validation
Metadata Harvesting And Validation
Bram Vandeputte
 

Mais de 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
 

Último

Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
KarakKing
 

Último (20)

How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptx
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 

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