NAME

Biblio::ILL::ISO::ENUMERATED

VERSION

Version 0.01

DESCRIPTION

Biblio::ILL::ISO::ENUMERATED is a derivation of Biblio::ILL::ISO::ILLASNtype.
It functions as a base class for any class that needs to handle enumerated types.
Any derived class must define it's own new() method, in which the list of possible/acceptable
values is defined.

USES

None.

USED IN

Biblio::ILL::ISO::ConditionalResultsCondition
Biblio::ILL::ISO::CurrentState
Biblio::ILL::ISO::ExpiryFlag
Biblio::ILL::ISO::Flag
Biblio::ILL::ISO::GeneralProblem
Biblio::ILL::ISO::ILLAPDUtype
Biblio::ILL::ISO::ILLServiceType
Biblio::ILL::ISO::IntermediaryProblem
Biblio::ILL::ISO::ItemType
Biblio::ILL::ISO::MediumType
Biblio::ILL::ISO::MostRecentService
Biblio::ILL::ISO::PlaceOnHoldType
Biblio::ILL::ISO::Preference
Biblio::ILL::ISO::ProtocolVersionNum
Biblio::ILL::ISO::ReasonLocsProvided
Biblio::ILL::ISO::ReasonNoReport
Biblio::ILL::ISO::ReasonNotAvailable
Biblio::ILL::ISO::ReasonUnfilled
Biblio::ILL::ISO::ReasonWillSupply
Biblio::ILL::ISO::ReportSource
Biblio::ILL::ISO::RequesterCHECKEDIN
Biblio::ILL::ISO::RequesterSHIPPED
Biblio::ILL::ISO::ResponderRECEIVED
Biblio::ILL::ISO::ResponderRETURNED
Biblio::ILL::ISO::ShippedConditions
Biblio::ILL::ISO::ShippedServiceType
Biblio::ILL::ISO::SupplyMediumType
Biblio::ILL::ISO::TransactionIdProblem
Biblio::ILL::ISO::TransactionResults
Biblio::ILL::ISO::TransactionType
Biblio::ILL::ISO::UnableToPerform

FROM THE ASN DEFINITION

 (as an example of an enumeration) 

 ILL-Service-Type ::= ENUMERATED  {
	loan 	                (1),
	copy-non-returnable 	(2),
	locations 	        (3),
	estimate 	        (4),
	responder-specific 	(5)
	}

METHODS

new( [$enumeration_value] )

This will be overridden in any derived class.

set( $enumeration_value )

Sets the object's "ENUMERATED" value by doing a lookup of the parameter in the object's list of valid values. Croaks on invalid parameter values.

as_string( )

Returns a stringified representation of the object.

as_pretty_string( )

Returns a more-formatted stringified representation of the object.

as_asn( )

Returns a structure usable by Convert::ASN1. Generally only called from the parent's as_asn() method (or encode() method for top-level message-type objects).

from_asn($href)

Given a properly formatted hash, builds the object.

SEE ALSO

See the README for system design notes. See the parent class(es) for other available methods. See the derived classes for examples of use.

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.