NISO Circulation Interchange Protocol
  • Home
  • NCIP News
  • About NCIP
  • Purpose and Structure
  • Members
  • Conference Calls
    • Nov 2009-Present
      • Jan-Oct 2009
        • 2008
          • 2007
            • 2006
              • 2005
                • 2004
                  • 2003
                    • 2002
                    • Documentation
                      • Introduction to NCIP
                        • The Standard
                          • Application Profiles
                            • Presentations
                              • Miscellaneous
                              • Links and Resources
                                • NCIP and Other Standards
                                  • XML Processing Tools and Utilities
                                  • Implementer Registry

                                  What is NCIP?

                                  The following information is taken from the Foreword to Circulation Interchange Protocol: Part 1, pp. vi-viii

                                  Both the rapid evolution of Web-based library services and the growing number of resourcesharing
                                  arrangements among libraries require an open standard for the exchange of circulation
                                  data. These applications must exchange data about library users, the items they wish to use, the
                                  owners of the items, and the relationships among these three entities.
                                  In the absence of an agreed-upon standard for exchanging circulation data, interoperability
                                  among disparate applications has been ad hoc and proprietary. The cost of such solutions is high
                                  for individual agencies and in any case, these solutions often provide for only a limited exchange
                                  of data because proprietary solutions limit the number of implementations that can participate in
                                  the exchange.

                                  This Standard is intended to address the growing need for interoperability among disparate
                                  circulation, interlibrary loan, and related applications. Interoperability between self-service
                                  applications and circulation applications, between and among various circulation applications,
                                  between circulation and interlibrary loan applications, and between other related applications, has
                                  been the principal focus of this Standard. All key terms used in this Standard are defined in
                                  Section 4 or Section 6.

                                  The demand for self-service applications led to the development of the 3M Standard Interchange
                                  Protocol (SIP) which has become the de facto standard interface for self-service applications.
                                  This Standard supports the deployment of self-service applications by building on experience
                                  obtained from the broad use of the 3M SIP.

                                  The Protocol

                                  This Standard has been developed within the context of a variety of existing standards, as well as
                                  through an awareness of existing applications. Wherever possible, existing terminology and
                                  definitions are used, duplication is avoided, and every effort has been made to permit developers
                                  to meld standards into a single application.

                                  The protocol specified in this Standard (NCIP) defines and specifies a set of objects, a set of
                                  services, messages that support those services, a set of data elements used in the messages,
                                  and a pair of state tables governing the exchange of messages over a single connection. NCIP is
                                  a connection-oriented, sessionless protocol.

                                  • Connection-oriented - Circulation processes happen in real time, often with the user
                                    present and awaiting service. A connection-oriented protocol facilitates a timely
                                    interaction between applications and allows the application requesting a service to know
                                    with confidence that a message was received by the partner application.
                                  • Sessionless - The lifecycle of a particular circulation activity provided by an agency to a
                                    user is often extended over days, weeks, or months. It is impractical to maintain sessions
                                    between two applications. This environment is unlike information retrieval where a single
                                    service involves related exchanges within a brief period of time.
                                  • State of the message - The protocol does provide a simple state table that governs the
                                    exchange of messages within a connection. This table does not govern the order of
                                    messages across the lifecycle of any particular circulation exchange between a user and
                                    agency or agencies.

                                  Extensibility

                                  NCIP is intended to support multiple applications and to evolve with technology and library
                                  practice. This requires an extensible framework that includes the protocol and two types of
                                  profiles.

                                  • The Standard - This Standard describes the services, data objects and data elements at
                                    an abstract level. The protocol defined herein may be deployed using different encoding
                                    and transport implementation methods.
                                  • Implementation Profiles - Each implementation method is described in a separate
                                    Implementation Profile that specifies how messages are exchanged. Specifications
                                    include message, character, and data encoding; required components and behavior;
                                    network transport; network security; scheme registration; and provision for extension.
                                    Note: Implementation profiles were originally called Cross-Application Profiles.
                                  • Application Profiles - Application Profiles describe how the protocol would be used to
                                    support a specific application with a given set of practices and policies. An Application
                                    Profile includes a description of services that must be supported. Each profile also
                                    provides an event table that maps specific external events and circumstances to the use
                                    of particular services specified in the protocol.
                                  This total framework will provide the stability required for longevity of use along with the flexibility
                                  necessary for NCIP to adapt to changing usage and technology. It will also allow it to be used
                                  across multiple applications.

                                  • Evolving technology and usage - Separating services and data objects from actual
                                    implementation details will allow the NCIP to be implemented with new technology
                                    without needing to redefine services or data objects.
                                  • Multiple applications - Practical implementation of the NCIP will vary among and even
                                    within broad application areas. If each application were to follow its own rules,
                                    interoperability would inevitably suffer. The application profiles allow for detailed
                                    specification of the use of the NCIP within a particular application area. Two
                                    implementors exchanging messages have a common set of rules to determine what
                                    messages must be sent in a particular circumstance.
                                  Of equal importance in thinking about extensibility is balancing the requirement for supporting the
                                  wide variation in local circulation practices and policies with support for interoperability among
                                  libraries and other organizations. Investigation showed that much of local practice and policy data
                                  is encapsulated in enumerated lists that capture descriptive elements for both items and users.
                                  The values in those lists vary from library to library, even among libraries of the same type.
                                  As a solution to the need to support variation in local library practice, the NCIP uses a schemevalue
                                  pair instead of a single primitive data element for all such enumerated lists. The scheme
                                  name identifies the specific enumerated list that is being used. The value element provides a
                                  specific entry from this list. Each scheme is identified by a URI to guarantee a unique name for
                                  the scheme.
                                  Create a free website with Weebly