ssp 25 th annual meeting: “navigating change” linking seminar

40
SSP 25 th Annual Meeting: “Navigating Change” Linking Seminar Implementing OpenURL 1.0 (Updated Oct-31-2003 to match standard sent to ballot) Oliver Pesch Chief Architect, EBSCO Publishing [email protected]

Upload: mahon

Post on 06-Feb-2016

26 views

Category:

Documents


0 download

DESCRIPTION

SSP 25 th Annual Meeting: “Navigating Change” Linking Seminar. Implementing OpenURL 1.0 (Updated Oct-31-2003 to match standard sent to ballot) Oliver Pesch Chief Architect, EBSCO Publishing [email protected]. Registry. Referrer. Referring Entity. By Reference. Schema. Namespace. POST. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

SSP 25th Annual Meeting: “Navigating Change”

Linking Seminar

Implementing OpenURL 1.0(Updated Oct-31-2003 to match standard sent to ballot)

Oliver PeschChief Architect, EBSCO Publishing

[email protected]

Page 2: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

ContextObject

Referent

Referrer

Requester

Resolver

Referring Entity

Namespace

Registry

ORI

URI

URI

Profiles

Encoding

KEV

XML

SchemaBy Reference

By ValueIdentifiers

Metadata formats

Service types

HTTP

HTTPS

GET

POSTUTF-8

OpenURL 1.0OpenURL 1.0

Page 3: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Overview

Why OpenURL 1.0 Definitions ContextObject and related “entities” San Antonio Profile Becoming a compliant source

Page 4: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

OpenURL 0.1 example

http://example.org/myResolver?sid=myid:mydb&id=doi:10.1126/science.275.5304.1320&id=pmid:9036860&genre=article&atitle=Isolation of a common receptor

for coxsackie B&title=Science&aulast=Bergelson&auinit=J&date=1997&volume=275&spage=1320&epage=1323

BaseURL

Source

Item

Page 5: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Why OpenURL 1.0

Represent new genres Richer metadata options Version control More complete context description Ability to send request “by reference” Extensible

Page 6: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

New genres

OpenURL 0.1 (genres) Journal Article Preprint Book Book item Conference Proceeding

OpenURL 1.0 (format/genres) Journal

Journal Issue Article Conference Proceeding Preprint

Book Book Book item Report Document

Dissertation Patent Dublin CORE Others can be registered

Page 7: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Richer metadata formats

OpenURL 0.1 Key-value pairs Limited pre-set list of

elements

OpenURL 1.0 Key-value pairs XML MARC Other formats can be

registered Options for element

sets New data elements can

be registered

Page 8: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Describing “context”

Up to six entities to describe item and context Referent (item being referenced) Referrer (site sending request) Resolver (site request is being sent to) Requester (user making request) Referring entity (article containing reference) Service type (what the resolver should do)

Page 9: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

New terminology

ContextObject

An information construct that binds a description of a primary entity -- the referenced resource -- together with descriptions of entities that indicate the context of the reference to the referenced resource.

Page 10: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

New terminology

Entity

One of the six possible constituents of a ContextObject: Referent, Requester, Referrer, Resolver, ReferringEntity, or ServiceType

Page 11: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

New terminology

Format

A concrete method of expression for a class of information constructs. It is a triple comprising:

(1) a Physical Representation;

(2) a Constraint Language; and

(3) a set of constraints expressed in that Constraint Language

Page 12: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Physical element representation is key-encoded- values. E.G.

aulast=Smith

Example of metadata “Format”

info:ofi/fmt:kev:mtx:journal

Describing a format

To do with OpenURL Constraint language is a table (matrix).

This is the form used to describe the list of possible elements. Other examples

are DTD or XML Schema.

The actual set of elements that have been defined.

Page 13: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Metadata formats in registry

Info:ofi/fmt:kev:mtx:journalInfo:ofi/fmt:kev:mtx:journal

Page 14: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

ContextObject format

Metadata format

Using Format in a sentence

http://example.org/myResolver?url_ver=z39.88-2003&url_ctx_fmt=info:ofi/fmt:kev:mtx:ctx&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rfr_id=ori:rfr:myid.com:mydb&rft_id=ori:doi:10.1126/science.275.5304.1320&rft_id=ori:pmid:9036860

Page 15: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Journal KEV Metadata Format

Page 16: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

New terminology

Transport

A Transport is a network protocol and the method in which it is used to convey representations of ContextObjects.

OpenURL is about “transporting” ContextObjects using HTTP GET and POST.

Page 17: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

New terminology

By-Value OpenURL

An OpenURL in which all of the metadata and identifiers for the entities are included as part of the request.

Page 18: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Example of By-Value OpenURL

http://example.org/myResolver?url_ver=Z39.88-2004&url_ctx_fmt=info:ofi/fmt:kev:mtx:ctx&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rfr_id=info:sid/myid.com:mydb&rft_id=info:doi/10.1126/science.275.5304.1320&rft_id=info:pmid/9036860&rft.genre=article &atitle=Isolation of a common receptor

for coxsackie B&rft.title=Science&rft.aulast=Bergelson&rft.auinit=J&rft.date=1997…

Page 19: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

New terminology

By-Reference OpenURLAn OpenURL in which the initial request contains a pointer to the ContextObject being referenced.

Optionally, an entity within a ContextObject can be pointed to.

The ContextObject can be created as a stand-alone file on a web server, then referred to. Can reduce size of web pages and amount of data transferred.

Page 20: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Example of By-Value OpenURL

http://example.org/myResolver?url_ver=Z39.88-2004&url_ctx_fmt=info:ofi/fmt:kev:mtx:ctx

&url_ctx_ref=http://www.example.org/objects/1234.txt

Declares that this ContextObject (ctx) is being passed by reference (ref)

Network location of ContextObject

Page 21: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

ContextObject

Describes item and its context Uses up to six entities: Referent, Resolver,

Referrer, Requester, Referring Entity and Service Type

Can be described separately from its transport

OpenURL is the HTTP GET or POST transport of a ContextObject

Page 22: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

OpenURL 0.1 example

http://example.org/myResolver?sid=myid:mydb&id=doi:10.1126/science.275.5304.1320&id=pmid:9036860&genre=article&atitle=Isolation of a common receptor

for coxsackie B&title=Science&aulast=Bergelson&auinit=J&date=1997&volume=275&spage=1320&epage=1323

Resolver

Referrer

Referent

Page 23: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

New Entities in OpenURL 1.0 Requester

Allow the identity of the user to be passed to the resolver. Identification not authentication

Referring Entity For links from references in other articles Identity of article where reference found in can be

important context Don’t create link back to this article Use information about that article to tailor results

Service Type Define what “services” to present the user.

Full text, interlibrary loan, abstract record, etc.

Page 24: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Why separate ContextObject from its transport?

Assumptions: Notion of describing an item and its context has

value beyond simple HTML-based linking applications of today

Communication between link resolvers reasonable (see Jenny’s examples)

Using Microsoft SOAP or other protocols can be more efficient in some applications

Conclusion: Separating standard into parts allows more

flexible options for future growth.

Page 25: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Dealing with complexity

OpenURL 0.1 was simple because it was hardwired

ContextObjects OpenURL 1.0 is extensible and flexible and much more abstract

Many options for implementation and extension can lead to confusion and interoperability problems

Community Profiles introduced to simplify implementation

Page 26: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

San Antonio Profile

Represents view of scholarly information community List of choices for implementing OpenURL

Framework. For example: Physical Representations (KEV, XML, etc.) Constraint languages (Matrix, Schema, etc.) ContextObject Format Metadata formats (Journal, Book, etc.) Transports (HTTP GET and PUT)

Provides a roadmap for building compliant sources and targets

Page 27: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Implementing OpenURL 1.0

Goals Keep it simple Use data already available (tagged metadata,

DOI) Stick to widely accepted approaches

Page 28: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Implementing OpenURL 1.0

Recommended approach to take: Base on San Antonio Profile Start with key-encoded-values for metadata Inline representation of keys and values Tag data elements according to the registered

metadata formats (e.g. ori:fmt:kev:mtx:journal) Stick to the required entities

Resolver (baseURL) Referent Referrer

Create links on-the-fly

Page 29: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Building an OpenURL

http://resolver.example.org? Start with the BaseURL

Page 30: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Building an OpenURL

http://resolver.example.org?

url_ver=Z39.88-2004

&url_ctx_fmt=info:ofi/fmt:kev:mtx:ctx

Add the fixed elements

Version

Declare format for ContextObject

Page 31: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Building an OpenURL

http://resolver.example.org?

url_ver=Z39.88-2004

&url_ctx_fmt=info:ofi/fmt:kev:mtx:ctx

&rfr_id=info:sid/publisher.com

Add the referrer

Identifier for referrer

OpenURL “Source ID” Domain of referrer

The tag for Referrer (rfr) ID

Page 32: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Building an OpenURL

http://resolver.example.org?

url_ver=Z39.88-2004

&url_ctx_fmt=info:ofi/fmt:kev:mtx:ctx

&rfr_id=info:sid/publisher.com

&rft_id=info:doi/10.1126/science.275.5304.1320

&rft_id=info:pmid/9036860

Add the referent

Include identifiers

Page 33: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Building an OpenURL

http://resolver.example.org?

url_ver=Z39.88-2004

&url_ctx_fmt=info:ofi/fmt:kev:mtx:ctx

&rfr_id=info:sid/publisher.com

&rft_id=info:doi/10.1126/science.275.5304.1320

&rft_id=info:pmid/9036860

&rft_val_fmt=info:ofi/fmt:kev:mtx:journal

Add the referent

Declare the metadata format

Shows referent (rft) format (fmt) is by value (val)

Indicates we are using key-encoded-values (kev) as

defined in the “journal” matrix (mtx) in the registry.

Page 34: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Building an OpenURL

http://resolver.example.org?

url_ver=Z39.88-2004

&url_ctx_fmt=info:ofi/fmt:kev:mtx:ctx

&rfr_id=info:sid/publisher.com

&rft_id=info:doi/10.1126/science.275.5304.1320

&rft_id=info:pmid/9036860

&rft_val_fmt=info:ofi/fmt:kev:mtx:journal

&rft.genre=article

&rft.atitle=Isolation of a common receptor for …

&rft.jtitle=Science

&rft.aulast=Bergelson

&rft.auinit=J

Add the referent

Add the metadata elements

Substitute actual values for the item being referenced

Page 35: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Where to add OpenURL links

Citation/Abstract display OpenURL would allow the user’s institution to

control access to alternate copy’s, order through document delivery, etc.

List of references for article Must have separately tagged elements Allow user to access to appropriate copy for

referenced item

Page 36: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Example of OpenURL Link

Page 37: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Example of OpenURL Link

Page 38: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

When to add OpenURL links

Show links if a customer has a link resolver The customer-specific BaseURL – the link to

their resolver – is primary building block of OpenURL

Allow customer to indicate they have a resolver: Store BaseURL as customer-specific data in an

admin option Use of a cookie to indicate BaseURL

(http://www.sfxit.com/openurl/cookiepusher.html)

Page 39: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

References The OpenURL Framework for Context-Sensitive Services

http://library.caltech.edu/openurl/PubComDocs/StdDocs/Part1-PC-20030513.pdf

The OpenURL Framework for Context-Sensitive Services – Part 2 http://library.caltech.edu/openurl/PubComDocs/StdDocs/Part2-PC-20030513.pdf

The San Antonio Level 1 Community Profile (SAP1): Implementation Guidelines http://library.caltech.edu/openurl/PubComDocs/StdDocs/SAP1_Guidelines-20030425.pdf

Registry for the OpenURL Framework - ANSI/NISO Z39.88-2003 http://alcme.oclc.org/openurl/servlet/OAIHandler?verb=ListSets

Cookie Pusher Document http://www.sfxit.com/openurl/cookiepusher.html

OpenURL 0.1 http://www.sfxit.com/openurl/openurl.html

Page 40: SSP 25 th  Annual Meeting: “Navigating Change”  Linking Seminar

Thank you

Oliver Pesch

[email protected]