1 / 23

MELT workshop: Open Archives Iniative – Protocol for Metadata Harvesting

MELT workshop: Open Archives Iniative – Protocol for Metadata Harvesting. Stefaan Ternier, KUL Bram Vandenputte, KUL Joris Klerkx, KUL. Infrastructure. Automatic Metadata generation. <results> </results>. <results> <lom>..</lom> <lom>..</lom> <lom>..</lom> … </results>. SQI.

riona
Download Presentation

MELT workshop: Open Archives Iniative – Protocol for Metadata Harvesting

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MELT workshop:Open Archives Iniative – Protocol for Metadata Harvesting Stefaan Ternier, KUL Bram Vandenputte, KUL Joris Klerkx, KUL

  2. Infrastructure Automatic Metadata generation <results> </results> <results> <lom>..</lom> <lom>..</lom> <lom>..</lom> … </results> SQI MD MD MD MD Tag MD MD MD MD Query Query Query Query Query OAI-PMH Content enrichment <lom>…</..> MD MD MD MD MD MD MD MD MD <lom>…</..> <lom>…</..>

  3. OAI “VERBS” Identify ListMetadataFormats GetRecord ListIdentifiers ListRecords ListSets How OAI works Service Provider Metadata Provider H A R VESTER REPOSITORY OAI HTTP Request OAI (OAI Verb) HTTP Response (Valid XML)

  4. As Compared to SQI

  5. Practically… • Set environment vars • set JAVA_HOME=C:\j2sdk1.4.2_13 • set ANT_HOME=C:\apache-ant-1.6.5 • set PATH=%JAVA_HOME%\bin;%ANT_HOME%\bin;%PATH% • Download and build • Cd <your build-dir> • ant • Install apache-tomcat • Deploy code

  6. Practically… • Building |--oaicat-ant |-- WEB-INF |-- lib ‘-- src |-- build |-- dist |-- build ‘-- oaicat.war ‘-- build.xml • Deploying |--jakarta-tomcat-5.0.28 |-- bin |-- startup.sh ‘-- shutdown.bat |-- conf |-- server.xml ‘-- tomcat-users.xml ‘-- webapps |-- oaicat.war ‘-- oaicat ‘-- WEB-INF |-- oaicat.properties ‘-- web.xml

  7. Practically… • Test your environmenthttp://localhost:8080/oaicat/OAIHandler?verb=Identify

  8. Practically… • Test your environment http://localhost:8080/oaicat/OAIHandler?verb=Identify • OAI “VERBS” • Identify • ListMetadataFormats • GetRecord • ListRecords • ListIdentifiers • ListSets

  9. Practically… • Test your environmenthttp://localhost:8080/oaicat/OAIHandler?verb=ListMetadataFormats • OAI “VERBS” • Identify • ListMetadataFormats • GetRecord • ListRecords • ListIdentifiers • ListSets

  10. 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)

  11. UML Diagram

  12. GetRecord – sequence Diagram HashMap nativeItem = new HashMap(); nativeItem.put("learning_object.identifier", identifier); nativeItem.put("learning_object.title", "a title"); nativeItem.put("learning_object.last_mod_date", new java.sql.Date(100239)); LOMImpl lom = new LOMImpl(); LOMImpl.General.Identifier id = lom.newGeneral().newIdentifier(-1); id.newEntry().setString((String)nativeItem.get("learning_object.identifier"));

  13. GetRecord - test • Test your environmenthttp://localhost:8080/oaicat/OAIHandler?verb=GetRecord&identifier=oai:oaicat.ariadne.org:azerty&metadataPrefix=oai_lom • OAI “VERBS” • Identify • ListMetadataFormats • GetRecord • ListIdentifiers • ListRecords • ListSets

  14. 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)

  15. 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.

  16. ListRecords - test • Test your environmenthttp://localhost:8080/oaicat/OAIHandler?verb=ListRecords&metadataPrefix=oai_lom • OAI “VERBS” • Identify • ListMetadataFormats • GetRecord • ListRecords • ListIdentifiers • ListSets

  17. 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)

  18. ListIdentifiers - code public Map listIdentifiers(String from, String until, String set, String metadataPrefix) { Map listIdentifiersMap = new HashMap(); ArrayList headers = new ArrayList(); ArrayList identifiers = new ArrayList(); HashMap nativeItem = //create native item; String[] header = getRecordFactory().createHeader(nativeItem); headers.add(header[0]); Identifiers.add(header[1]); listIdentifiersMap.put("headers", headers.iterator()); listIdentifiersMap.put("identifiers", identifiers.iterator()); return listIdentifiersMap; }

  19. ListIdentifiers - test • Test your environmenthttp://localhost:8080/oaicat/OAIHandler?verb=ListIdentifiers&metadataPrefix=oai_lom • OAI “VERBS” • Identify • ListMetadataFormats • GetRecord • ListRecords • ListIdentifiers • ListSets

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

  21. ListSets - code public Map listSets() throws NoSetHierarchyException, OAIInternalServerError { throw new NoSetHierarchyException(); }

  22. ListSets - test • Test your environmenthttp://localhost:8080/oaicat/OAIHandler?verb=ListSets • OAI “VERBS” • Identify • ListMetadataFormats • GetRecord • ListRecords • ListIdentifiers • ListSets

  23. References • http://oai.grainger.uiuc.edu/FinalReport/JCDL_2003_OAI_Intro.ppt • http://www.cs.kuleuven.ac.be/~hmdb/SqiOaiMelt • http://www.oclc.org/research/software/oai/cat.htm

More Related