digitools support of web services repositories and web services workshop | 2 june 2009 alan oliver,...
TRANSCRIPT
DigiTool’s support of Web Services
Repositories and Web Services workshop | 2 June 2009
Alan Oliver, Business Development Director
2
Ex Libris products
3
...digital asset management – a full-spectrum approach to creating, managing, and providing access to locally administered digital collections
DigiTool...
4
DigiTool customers in the UK
• UCL• British Library• Cardiff University• University of Leeds• University of Aberdeen• University of East Anglia• University of Strathclyde• Nottingham Trent University (IR)• Liverpool John Moores University (IR)
5
...preservation of digital assets – a [new] advanced digital preservation solution that enables academic libraries to maintain and preserve cumulative knowledge, and national libraries and archives to preserve the cultural heritage of nations for generations to come
Ex Libris Rosetta...
6
DigiTool/Ex Libris Rosetta roadmap
• Ex Libris Rosetta• Ex Libris Rosetta for digital asset management
7
DigiTool’s openness
• Add a task• Add a viewer• Deep-link to and direct delivery of an object
using a URL or a Handle identifier (Delivery Web Service)
• Repository replication – complete or partial, supporting:• Primo• OAI-PMH• ILS synchronisation• Search engine publishing• Third-party application interfacing
8
DigiTool’s openness (continued)
• Z39.50• X-Server• Web Services
• DigitalEntityManager• DigitalEntityExplorer• MetadataManager
9
Web Services overview
• DigiTool’s repository is a stand-alone component with APIs used by DigiTool modules and optional third-party systems• Stream gate API (HTTP Get/Post)• Single object API (SOAP/RMI)• Search API (SOAP/RMI)
• Include WSDL (Web Services Description Language)
10
Web Service - DigitalEntityManager
• Used to communicate with the repository and create, retrieve, delete, update individual digital entities
• DigitalEntityManager uses two parameters• A general attribute XML (unit to search,
username, password, etc.)• A DigitalEntityCall (action to take)
11
Example: general attribute XML
<?xml version="1.0" encoding="UTF-8"?><xb:general
xmlns:xb="http://com/exlibris/digitool/repository/api/xmlbeans"><application>DIGITOOL-3</application><owner>DTL02</owner><interface_version>1.0</interface_version><user>super:exl</user><password>super</password>
</xb:general>
12
Example: digital_entity_call
<?xml version="1.0" encoding="UTF-8"?><xb:digital_entity_callxmlns:xb="http://com/exlibris/digitool/repository/api/xmlbeans">
<xb:digital_entity><control>
<label>hello world</label></control>
</xb:digital_entity><command>create</command>
</xb:digital_entity_call>
13
Web Service - DigitalEntityExplorer
• Used to search the repository indexes to retrieve digital entities or a list of PIDs (provided in a x_result document)
• DigitalEntityExplorer uses two parameters• A general attribute XML (unit to search,
username, password, etc.)• A x_query document
14
Example: general attribute XML
<?xml version="1.0" encoding="UTF-8"?><xb:general
xmlns:xb="http://com/exlibris/digitool/repository/api/xmlbeans"><application>DIGITOOL-3</application><owner>DTL02</owner><interface_version>1.0</interface_version><user>super:exl</user><password>super</password>
</xb:general>
15
Example: x_queries
<?xml version="1.0" encoding="UTF-8"?><xb:x_queriesxmlns:xb="http://com/exlibris/digitool/repository/api/xmlbeans"><x_query type="xql" set_name="SET1"><x_select from_answer="0" to_answer="19"><element>all</element>
</x_select><x_where><x_condition><type>contains</type><element>subject</element><value>liberty</value>
</x_condition></x_where><x_sort><by>pid</by><x_order>desc</x_order>
</x_sort></x_query>
</xb:x_queries>
16
Example: x_results
<?xml version="1.0" encoding="UTF-8"?><xb:x_resultsxmlns:xb="http://com/exlibris/digitool/repository/api/xmlbeans"><x_result set_name=”SET1”, num_result=”10” total_num_result=”12154”>
<digital_entity>...</digital_entity><digital_entity>...</digital_entity>...<digital_entity>...</digital_entity>
</x_result><error></error><error_description><error_description>
</xb:x_results>
17
MetadataManager
• Used to search and retrieve a list of metadata records OR create, update, delete individual records based on matching repository metadata indexed results
18
Sample input: MetadataManagerUpdate
mid The metadata IDgeneral A general documentdescription The metadata descriptionname The name of the metadatatype The type of the metadatavalue The metadata XML block
19
Sample input: MetadataManagerSearch
general A general documentname The name of the metadatatype The type of the metadatasearchBy Index field to search onsearchTerm Search termorderBy Not implementedqueryFrom First answer positionqueryTo Last answer position
20
Web Service - Delivery
• Used to accept requests and dispatch to authorised users file streams and/or metadata
• Built-in to DigiTool, uses http requests