The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Biblio::ILL::ISO::CancelReply - Perl extension for handling ISO 10161 interlibrary loan Cancel-Reply messages

VERSION

Version 0.01

DESCRIPTION

Biblio::ILL::ISO::CancelReply is a derivation of the abstract Biblio::ILL::ISO::ISO object, and handles the Cancel-Reply message type.

EXPORT

None.

ERROR HANDLING

Each of the set_() methods will croak on missing or invalid parameters.

FROM THE ASN DEFINITION

Cancel-Reply ::= [APPLICATION 7] SEQUENCE { protocol-version-num [0] IMPLICIT INTEGER, -- { -- version-1 (1), -- version-2 (2) -- }, transaction-id [1] IMPLICIT Transaction-Id, service-date-time [2] IMPLICIT Service-Date-Time, requester-id [3] IMPLICIT System-Id OPTIONAL, -- mandatory when using store-and-forward communications -- optional when using connection-oriented communications responder-id [4] IMPLICIT System-Id OPTIONAL, -- mandatory when using store-and-forward communications -- optional when using connection-oriented communications answer [35] IMPLICIT BOOLEAN, responder-note [46] ILL-String OPTIONAL, cancel-reply-extensions [49] IMPLICIT SEQUENCE OF Extension OPTIONAL }

CONSTRUCTORS

new()

Base constructor for the class. It just returns a completely empty message object, which you'll need to populate with the various set_() methods, or use the read() method to read an Cancel-Reply message from a file (followed by a call to from_asn() to turn the read's returned hash into a proper CancelReply message.

The constructor also initializes the Convert::ASN1 if it hasn't been initialized.

METHODS

For any example code, assume the following: my $msg = new Biblio::ILL::ISO::CancelReply;

from_asn($href)

To read a message from a file, use the following:

    my $href = $msg->read("msg_07.cancel-reply.ber");
    $msg = $msg->from_asn($href);

The from_asn() method turns the hash returned from read() into a proper message-type object.

set_protocol_version_num($pvn)

 Sets the protocol version number.
 Acceptable parameter values are the strings:
    version-1
    version-2

set_transaction_id($tid)

 Sets the message's transaction-id.  
 Expects a valid Biblio::ILL::ISO::TransactionId.

    my $tid = new Biblio::ILL::ISO::TransactionId("PLS","001","", 
                                                  new Biblio::ILL::ISO::SystemId("MWPL"));
    $msg->set_transaction_id($tid);

 This is a mandatory field.

set_service_date_time($sdt)

 Sets the message's service-date-time.  
 Expects a valid Biblio::ILL::ISO::ServiceDateTime.

    my $dt_this = new Biblio::ILL::ISO::DateTime("20030623","114400");
    my $dt_orig = new Biblio::ILL::ISO::DateTime("20030623","114015")
    my $sdt = new Biblio::ILL::ISO::ServiceDateTime( $dt_this, $dt_orig);
    $msg->set_service_date_time($sdt);

 This is a mandatory field.

set_requester_id($reqid)

 Sets the message's requester-id.  
 Expects a valid Biblio::ILL::ISO::SystemId.

    my $reqid = new Biblio::ILL::ISO::SystemId();
    $reqid->set_person_name("David A. Christensen");
    $msg->set_requester_id($reqid);

 This is a mandatory field.

set_responder_id($resid)

 Sets the message's responder-id.  
 Expects a valid Biblio::ILL::ISO::SystemId.

    my $resid = new Biblio::ILL::ISO::SystemId("MWPL");
    $msg->set_responder_id($resid);

 This is an optional field.

set_answer($flag)

 Sets the message's answer flag.
 Acceptable parameter values are the strings:
    true
    false

 This is a mandatory field.

set_responder_note($note)

 Sets the message's responder-note.
 Expects a simple text string.

    $msg->set_responder_note("This is a responder note");

 This is an optional field.

RELATED MODULES

 Biblio::ILL::ISO::ISO
 Biblio::ILL::ISO::Request
 Biblio::ILL::ISO::ForwardNotification
 Biblio::ILL::ISO::Shipped
 Biblio::ILL::ISO::Answer
 Biblio::ILL::ISO::ConditionalReply
 Biblio::ILL::ISO::Cancel
 Biblio::ILL::ISO::CancelReply
 Biblio::ILL::ISO::Received
 Biblio::ILL::ISO::Recall
 Biblio::ILL::ISO::Returned
 Biblio::ILL::ISO::CheckedIn
 Biblio::ILL::ISO::Overdue
 Biblio::ILL::ISO::Renew
 Biblio::ILL::ISO::RenewAnswer
 Biblio::ILL::ISO::Lost
 Biblio::ILL::ISO::Damaged
 Biblio::ILL::ISO::Message
 Biblio::ILL::ISO::StatusQuery
 Biblio::ILL::ISO::StatusOrErrorReport
 Biblio::ILL::ISO::Expired

SEE ALSO

See the README for system design notes.

For more information on Interlibrary Loan standards (ISO 10160/10161), a good place to start is:

http://www.nlc-bnc.ca/iso/ill/main.htm

AUTHOR

David Christensen, <DChristensenSPAMLESS@westman.wave.ca>

COPYRIGHT AND LICENSE

Copyright 2003 by David Christensen

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.