NCIP (NISO Circulation Interchange Protocol) Mark Needleman Sirsi Corporation Steve Gregory Colorado State Library Access 2004.

Slides:



Advertisements
Similar presentations
OAI from 50,000 Feet OAI develops and promotes interoperability solutions that aim to facilitate the efficient dissemination of content. Begun in 1999.
Advertisements

Web Service Architecture
Deconstructing NCIP: What is NCIP and Why Should I Care? Northwest ILL 2012 Peter Collins.
ISO DSDL ISO – Document Schema Definition Languages (DSDL) Martin Bryan Convenor, JTC1/SC18 WG1.
Linking Systems Transforming Resource Sharing Through ISO ILL and Other Standards CLA June 2:20 pm Session 206 Background on Library Communications.
Hobart 6 th November 2009 New standards for resource delivery Janifer Gatenby.
NExpress FAQs Frequently Asked Questions November 12, 2009.
National Library of Australia October 30 th 2014 Patricia Burke New ILL Standard/Protocol Operations Manager, ANZ.
Grid Computing, B. Wilkinson, 20043a.1 WEB SERVICES Introduction.
CS155b: E-Commerce Lecture 10: Feb. 13, 2003 XML and its relationship to B2B commerce Acknowledgements: R. Glushko, A. Gregory, and V. Ramachandran.
1 Using Account Status Web Service to design value-added services for your online applications Ivan Chan Media & Systems Services 8th Annual HKIUG Meeting.
Web Service Architecture Part I- Overview and Models (based on W3C Working Group Note Frank.
Millennium Enhancements Present and Future…. Enhancements 2009A Last 2 patrons that have checked out an item. They have started rewriting the core software.
Introduction to Integrated Library Systems
Web Services Michael Smith Alex Feldman. What is a Web Service? A Web service is a message-oriented software system designed to support inter-operable.
The future of interoperability for ILL and resource sharing by Clare Mackeigan Relais International.
Processing of structured documents Spring 2003, Part 6 Helena Ahonen-Myka.
NISO Circulation Interchange Protocol A Standard in Development Pat Stevens, OCLC July 13, 2000.
Requirements for DSML 2.0. Summary RFC 2251 fidelity Represent existing directory protocols with new transport syntax Backwards compatibility with DSML.
XML & Library Applications ELAG 2001 Poul Henrik Jørgensen, Danish Bibliographic Centre,
SWIS Digital Inspections Project (SWIS DIP) Chris Allen, Information Management Branch California Integrated Waste Management Board November 5, 2008 The.
An Introduction to NCIP October 2, 2002 Mark H Needleman Sirsi Corporation NCIP Implementers Forum Revised January 2, 2008 Lynne Branche Brown Innovative.
Web Services (Part 1) Service-Oriented Architecture Overview ITEC 625 Web Development Fall 2006 Reference: Web Services and Service-Oriented Architectures.
8/28/97Organization of Information in Collections Introduction to Description: Dublin Core and History University of California, Berkeley School of Information.
16-1 The World Wide Web The Web An infrastructure of distributed information combined with software that uses networks as a vehicle to exchange that information.
The physical parts of a computer are called hardware.
Benefits of NCIP in VDX VUGANZ September 18, 2006 John Bodfish Senior Technical Designer.
NISO Circulation Interchange Protocol Briefing SiteSearch User Meeting May 4, 2000 Pat Stevens, OCLC.
The NISO Question/Answer Transaction Protocol (QATP) AVIAC January 2004 Donna Dinberg Library and Archives Canada Mark Needleman Sirsi Corporation.
The 21 st Century Library Collaborative Services, Standards, and Interoperability William E. Moen School of Library and Information Sciences Texas Center.
Almost Ready for Prime Time ILLiad Z39.50 Searching & ISO ILL Margaret W. Ellingson / Western ILLiad Users Meeting / Portland,
What is XML?  XML stands for EXtensible Markup Language  XML is a markup language much like HTML  XML was designed to carry data, not to display data.
James Holladay, Mario Sweeney, Vu Tran. Web Services Presentation Web Services Theory James Holladay Tools – Visual Studio Vu Tran Tools – Net Beans Mario.
Web Services Description Language CS409 Application Services Even Semester 2007.
ISO ILL, NISO NCIP or OpenURL? ELAG 2005 workshop 2 report Ed. Poul Henrik Jørgensen.
The NISO NETREF Protocol Mark H Needleman Product Manager- Standards Sirsi Corporation LITA National Conference 2004.
Interfacing Registry Systems December 2000.
Transparent to the User: User-Initiated and Mediated Resource Sharing Services Mary E. Jackson Product Manager, Resource Sharing Northwest ILL & Resource.
Introduction of PRO WG activities Group Name: TP Source: Shingo Fujimoto, FUJITSU, Meeting Date: Agenda Item:
XRules An XML Business Rules Language Introduction Copyright © Waleed Abdulla All rights reserved. August 2004.
(Business) Process Centric Exchanges
OCLC Online Computer Library Center ALA Midwinter 2006 (updated 1/27/2005) Resource Sharing User Group Dana Dietz Global Product Manager, Resource Sharing.
1 CS 502: Computing Methods for Digital Libraries Lecture 19 Interoperability Z39.50.
NCIP and Self Service Giving the User Control and Context Vicki Terbovich Information Technology Officer Maricopa County Library District
1 Web Services Web and Database Management System.
NISO Circulation Interchange Protocol A Standard in Development ZIG Tutorial January 19, 2000.
XML Engr. Faisal ur Rehman CE-105T Spring Definition XML-EXTENSIBLE MARKUP LANGUAGE: provides a format for describing data. Facilitates the Precise.
CS551 - Lecture 11 1 CS551 Object Oriented Middleware (III) (Chap. 5 of EDO) Yugi Lee STB #555 (816)
Introduction to the NCIP DTDs and XML Schemas Tony O’Brien Oct 2 nd 2002.
Chapter 29 World Wide Web & Browsing World Wide Web (WWW) is a distributed hypermedia (hypertext & graphics) on-line repository of information that users.
Modul 4 Struktur Informasi Mata Kuliah Preservasi Informasi Digital.
UB & UC An Update on Resource Sharing Developments.
CEN/ISSS eBIF GTIB Project Meeting, Brussels Mar , 2009 CEN/ISSS eBIF GTIB Project Meeting, Brussels 1 CEN/ISSS eBIF Global eBusiness Interoperability.
FIPA Abstract Architecture London FIPA meeting January 24-29, 2000 from: TC-A members.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Web Technologies Lecture 10 Web services. From W3C – A software system designed to support interoperable machine-to-machine interaction over a network.
Statewide Resource Sharing Update Brenda Bailey-Hainer Colorado State Library April 2006.
Technical Steering Committee La Jolla, January 2003 Paul Kiel, HR-XML.
ISA 95 Working Group Process Centric Exchanges Gavan W Hood July 23, 2015 GWH 2.1.
A SSOCIATION OF R ESEARCH L IBRARIES Intra-Consortium Patron Online Borrowing (ICBOP) An Overview of Options and the Standards that Will Make.
OASIS ebXML Registry Standard Open Forum 2003 on Metadata Registries 10:30 – 11:15 January 20, 2003 Kathryn Breininger The Boeing Company Chair, OASIS.
Integrated ISO ILL for staff users Borrowing requests – part two Yoel Kortick 2007.
OGSA Attributes: Requirements, Definitions, and SAML Profile Abstract This document specifies elements and vocabulary for expressing attribute assertions.
Everything You Wanted to Know and Weren't Afraid to Ask!
British Library Document Supply Service (BLDSS) API
XML QUESTIONS AND ANSWERS
Wsdl.
Chapter 9 Web Services: JAX-RPC, WSDL, XML Schema, and SOAP
Architecture Competency Group
Business Process Management
Presentation transcript:

NCIP (NISO Circulation Interchange Protocol) Mark Needleman Sirsi Corporation Steve Gregory Colorado State Library Access 2004

Agenda NCIP Tutorial Update on NCIP Maintenance Agency and Implementers Group Questions/Discussion

Committee Charge Define transactions needed for circulation systems among independent “library” systems Facilitate direct patron borrowing remote patron authentication circulation/ILL interaction online payment controlled access to electronic resources

Committee Makeup Representation ILS Vendors ILL Vendors Libraries Around 20 members with some additional observers Skills Computing/Technical Library Service Orientation

Scope of Standard A repertoire of messages & associated rules of syntax and semantics Between and among computer based applications Does not define circulation functions or policies Does not define user interface NCIP is not a Search and Retrieval Protocol !!

Applications Supported Direct consortial borrowing Circulation/InterLibrary Loan Interaction Self-service Circulation Access to Electronic Resources The standard’s test bed it had to support those, may be able to support others

Design Goals Keep it simple and within purpose Promote wide adoption Promote rapid adoption Build in flexibility Goal of adoption by existing library vendors and perhaps non traditional vendors

Technical Architecture 3 Service Types 3 Object Classes

Service Types Lookup “Tell me these things about this object.” Update “Please take this action.” Notification “I have taken this action.” Service Types are comprised of Services.

Object Classes Users Items Agencies (Libraries) Transactions are associations between one or more of the objects

Service Definitions Every “Service” is a pair of messages: an “Initiation Message” and a “Response Message” Each message provides complete context for it to be understood The protocol is designed NOT to require any particular sequence of services.

Lookup Service Lookup Agency Lookup Item Lookup User Lookup Version Authenticate User Lookup Request (proposed/accepted in Implementers Group)

Lookup Service Restrictions Lookups require a Unique Id They do not support discovery or searching

Update Services Typical Circulation Transactions: Request Item and Cancel Request Item Check Out Item and Undo Check Out Item Renew Item Recall Item and Cancel Recall Item Send User Notice Check In Item

Update Services (2) Object maintenance: Create Agency and Update Agency Create Item, Update Item and Update Request Item Create User and Update User Update User Fiscal Account Create Services used for new objects Update Services include modify and delete

Notification Services Typical Circulation Transactions: Item Requested and Item Request Cancelled Item Checked Out Item Renewed Item Recalled and Item Recall Cancelled User Notice Sent Item Checked In

Notification Services (2) Object maintenance: Agency Created and Agency Updated Item Created, Item Updated and Item Request Updated User Created and User Updated User Fiscal Account Updated

Notification Response Notifications occur after the fact - no ability to say “don’t do that” Only possible responses: Did not understand message Understood message

Message Structure Syntax and Encoding Scheme and Values Datatypes

Syntax and Encoding XML DTD (Currently) Discussion in Implementers group of converting to an XML Schema UTF-8 encoding of Unicode ASCII is valid in this encoding. But other systems are NOT restricted to ASCII, and you should be prepared to receive such data.

Scheme/Values Mechanism for extensibility Some defined in NCIP Provides ability for locally defined values

Scheme/Values (2) Handles enumerated types e.g., Language Defined by ISO Bibliographic Language Codes e.g., Currency Codes: Defined by ISO 4217:1995 Codes for the representation of currencies and funds.

Scheme/Values (3) Allows for extensibility e.g., Bibliographic Record Identifier Code: ANBN BGF BNBN CN LCCN NLM TCN OCLC RLIN

Scheme/Values (4) Allows for local agreements e.g., Agency User Privilege Type Adult Agency Head Colonel President Representative Senator Senior Senior Staff Staff Youth

Scheme/Values (5) Three kinds of Schemes: Required and Restricted (Closed Enumerated) Must be supported in order to conform Cannot be extended Required and Extendable (Open Enumerated) Must be supported in order to conform Can be extended Undefined (Open Not Enumerated) Not NCIP defined

Scheme Registration Scheme names conform to URI spec. Values within any Scheme must be unique Once published, the list of Values must not change in any way

Datatypes Taken from XML Datatypes 6 datatypes: boolean “true”, “false”, “1”, “0” integer nonNegativeInteger positiveInteger

Datatypes (2) timeInstant Restricted to ISO 8601’s “Extended format” Expressed in Coordinated Universal Time (UTC).  “CCYY-MM-DDThh:mm:ss.sssZ” string  You can append “-hh:mm” or “+hh:mm” to indicate local time as a difference (plus or minus) from UTC. In DTD expressed as attributes – but not enforceable – will be in XML Schema

Technical Foundation Application Roles Messaging Required Behavior Rules Security

Application Roles For a given connection, there is: 1 and only 1 initiating application (e.g., self- service machine), and 1 and only 1 responding application (e.g., circ system). Initiators may NOT send a second message until the first is responded to. Responders may NOT send initiation messages EVER on that connection

Application Roles (2) Applications MAY establish multiple connections at the same time. The Standard is written in terms of “initiating application” and “responding application”; this is always in the context of a given connection, not in the broader context of the application as a whole.

Messaging State Tables Transport Requirements Transport Protocol(s)

Messaging State Tables Do NOT govern the state of the circulation transaction DO govern the state of the exchange of the initiation/response message pair Initiating application is in IDLE or WAITING state Responding application is in IDLE or PROCESSING state

Defined Transport Protocols Initiator chooses from these 3: TCP/IP HTTP HTTPS Responder must reply on same connection

Omission of Requested Elements Applies to entire Lookup Service Type and to “piggy-backed” lookups on Update Services. Permits omission of some of the data the initiator asked for. Permits omission of the “Electronic Resource” element if the responder would rather not supply it in the response message.

Update Processing Responding application will behave as if all deletions requested were performed before all additions requested in the same message If an update to one element causes an update to another element not specifically asked - a Notification message may be used to inform the other side Example - change of birthday causes user category to change

Messaging Errors Indicate lack of understanding of the message: Invalid XML XML not conformant to the DTD Unknown scheme

Processing Errors Indicate inability or unwillingness to perform the action requested User Delinquent Unknown item Item does not circulate (Checkout) Maximum renewals exceeded (Renewal)

Document Structure Protocol Definition Implementation Profile 1 XML DTD/Schema Application Profiles

Currently three application areas: Consortial borrowing Circulation / ILL Self-service May be multiple profiles per application area Define how to use NCIP within a given application context

Application Profiles (2) Profiles can define Messages used Message sequencing Optional data elements that are mandatory Transport protocols required Schemes required or available Security requirements Use cases

Application Profiles (3) Some Application Profiles Written by NCIP Committee – meant as proof of concept for what Application Profiles should contain Intent is that Application Profiles will be developed to define requirements of specific Applications/Implementations

Current Status Standard/Implementation Profile Approved and Published in 2002 Z Part I Protocol Z Part 2 Implementation Profile 1 XML DTD XML Schema (currently Non Normative) Application Profiles (Non Normative) Avaialble at: Maintenance Agency Assigned Implementers Group Organized and Operating Implementations beginning to exist – in production, in testing/beta, in development