200 likes | 307 Views
This document discusses the Extended Backus-Naur Form (EBNF), extensibility in OpenURL, and the importance of registries for format and identifier management in the OpenURL framework. It delves into schema validation, registration processes, and policy issues surrounding OpenURL Registries.
E N D
Some thoughts on OpenURL version 1.0 NISO AX meeting, Getty Museum, May 30-31 2002 Herbert Van de Sompel Los Alamos National Laboratory – Research Library
Topics • The EBNF • Extensibility • Registries
1. The EBNF • human readable, construction-oriented: • insignificance of order not encoded • relation private zones and Referrer zone not encoded • optional administrative zone • by-reference mechanism for all entities • vendorId:dbaseId type problem • what is covered by URI scheme • what exactly is network-location
2. OpenURL extensibility • registration: • by-value formats (referent) • by-reference formats (referent, requester, ?, ?, ?) • namespace identifiers (referent, requester, referrer, referring-entity, service-type) • local prefix – referrer id required • namespace-identifiers (referent, requester, referrer, referring-entity, service-type) • by-value format identifiers (referent) • by-reference format identifiers (referent, requester, ?, ?, ?) • private zones – referrer id required • (referent, requester, referrer, referring-entity, service-type)
3. OpenURL Registries • Inventory of required registries • OpenURL Format Registry • Registry for by-value and by-reference formats • Architecture for Format Registry • Policy issues • Identifier Registry • de-facto (URI scheme) • OpenURL identifier registration • Deployment strategy
OpenURL Registries - formats • local formats – no registry • single OpenURL Format Registry • same type can occur as different entities • (think article as referent and referring-entity) • indicate by-value and/or by-reference nature • mandatory definition of registered formats by means of XML Schema • in sync with trend in our focus community • simplifies handling by-ref: the doc that is pointed at is always XML instance doc that can be validated • local formats can be whatever • see examples journal.xsd , jissue.xsd , jarticle.xsd
OpenURL Registries - formats • using XML Schema to define by-value formats: • the Schema: • flat structure required: root and single level down • format-identifier == name of root-element of Schema • metadata-tags == names of direct childs of root-element • can be used as by-reference • could provide template to support creation • the Registry: • XML Schema validation • guarantee uniqueness of root-element name • reject Schema with underscores in child element names • reject id, pid, sid, submit as element names
OpenURL Registries - formats • using XML Schema to define by-reference formats: • the Schema: • no limitations on Schema structure • format-identifier: • name of root-element of Schema • schemaLocation (uri flavor) • XML Namespace URI • can not necessarily be used as by-value • the Registry: • XML Schema validation • guarantee uniqueness of root-element name (probably not feasible)
XML Schema XML Schema XML Schema URL1 URL2 URLn linking servers central repository registrars O A I - P M H r e g i s . P o l l registry model registration user service polling OAI-PMH harvesting
XML Schema XML Schema XML Schema URL1 URL2 URLn registrars • Goal: • inform linking servers re Schema • ease of admin for all parties involved • limit human overhead
XML Schema XML Schema XML Schema URL1 URL2 URLn central repository registrars r e g i s . • Registry: • schemaLocation • registration date • mirror of Schema registration
XML Schema XML Schema XML Schema URL1 URL2 URLn central repository registrars r e g i s . P o l l • Poll: • fetch schema at schemaLocation • log failure/success • compare fetched Schema with mirror • changed => replace mirror • removed => deregistered registration polling
XML Schema XML Schema XML Schema URL1 URL2 URLn central repository registrars O A I - P M H r e g i s . P o l l • OAI repo: • record-ids = schemaLocation • oai_dc record : • registration info • (de)registration datestamp • xsi record : • mirror schema • schema update datestamp • poll record : • process info • recent poll datestamp registration polling
XML Schema XML Schema XML Schema URL1 URL2 URLn linking servers central repository registrars O A I - P M H r e g i s . P o l l registration user service polling OAI-PMH harvesting
OpenURL Registries – formats – policy issues • peer-reviewed or open approach to registration • if peer-reviewed • what are the criteria • who does the review (for which formats) • if open • how to avoid (unnecessary) proliferation of Schema • what constitutes a deregistration • what to do with mirror-schema in case of deregistration • which kind of party should operate the registry
OpenURL Registries – namespace identifiers • local identifiers – no registry • URI-scheme identifiers – what does it cover? • require RFC • require IANA registration • based on informal W3C registry • compile list based on the above • OpenURL-defined identifiers • registration criteria • technique for namespace description • relationship to formats
OpenURL Registries – deployment • need something for formats and namespace-identifiers starting with test-phase • proposal: restrict • registered formats: • 6 by-value formats • select some by-ref formats: oai_dc, marc21, … • registered namespace identifiers: • cf OpenURL 0.1: doi, oai, pmid, bibcode, dns • URIidentifiers: • select a few: http, doi, dns, … • allow no further registration • provide helpdesk • host at library site, where OpenURL experience is available
OpenURL Registries – deployment • in parallel with test-phase, define: • registry requirements: technical, functional, policy • implementation plan