OPAC/HOLDINGS SCHEMA



Definitions and Examples

(First draft -- May 26, 1998)



    Prepared by:
With precious collaboration from:
    Rolande St-Gelais
    DRA Information Inc. rolande@dra.com

Lylliane Le Quellec (DRA)
Fay Turner (National Library of Canada)
Mark Hinnebusch (University of Florida)



Table of Contents




Introduction



1.0 Model of a Bibliographic Item

1.1 ISO 10324 Bibliographic Item Model



1.2 OPAC/Holdings Bibliographic Item Model

1.2.1 Bibliographic Level View of Holdings3


1.2.2 Piece Level View of Holdings


2.0 OPAC/Holdings Reporting Levels

2.1 Bibliographic Level Holdings

2.2 Piece Level Holdings



3.0 Schema Elements Description

3.1 Opac-1 Record


3.2 Holdings Data

3.3 Holdings Statement

3.4 Location Report

3.4.1 Location Data

3.5 General Bibliographic Level Holdings

3.5.1 General Bibliographic Unit


3.5.2 General Holdings


3.6 Summary Bibliographic Level Holdings

3.6.1 Extended Bibliographic Unit

3.6.2 Extent Information

3.6.3 Extent of Holdings

3.6.4 Enumeration and Chronology

3.7 Detailed Bibliographic Level Holdings 10

3.8 Minimal Piece Level Holdings 11

3.8.1 Piece

3.8.2 Circulation Data


3.9 General Piece Level Holdings

3.9.1 General Piece

3.10 Summary Piece Level Holdings

3.10.1 Extended Piece

3.11 Detailed Piece Level Holdings

4.0 Examples



Example 1: A single-part printed text. (NISO #1).




Example 2: A printed text with various kinds of accompanying materials. (ISO #8).

Item is not available for regular patron loans nor for interlibrary loans. It is used internally for teaching purposes. Piece number for the whole item is #12345.




Example 3: Two copies of the same multi-volume monograph at different locations (ISO #4).

Location #1 has an incomplete copy (v.14, v.16 and v.17) and has summary holdings information, Location #2 has no details available.




Example 4: A supplement that is a multipart unit, with 27 volumes bound after publication into 26; volume 28, parts 3-4 and volume 29, part 4 are missing. (Note: the basic bibliographic item is not held). (ISO #14). Room use only. Not available for interlibrary loan, but will reproduce. Each bound volume (26 of them) has its own piece designation. Volumes 28 and 29 also have a piece identification assigned.




Example 5: A serial item with volumes 1-10 held in textual form and volumes 11-17 in microform. (ISO #23)




Example 6: Serial with indexes (USMARC Holdings, Appendix B - p11, April 1991)
The library holds v.1-9 in hard copy and several indexes. (Each volume contains 12 issues.)
The title is not currently received; all holdings are permanently retained. Volumes 1 to 4 share a single binder with piece id #ABC-0001; Volumes 5 to 9 share another one, piece id #ABC-0002; the two indexes are bound together, with piece id #ABC-0003.




Example 7: Serial with pattern changes and piece (item) information (USMARC Holdings, Appendix B - p15, July 1994)


Example 8: Audio CD set with collected and analytic records; circulated as a set or individually (four separate Holdings Statements). The discs are designated volume 1, volume 2, and volume 3. (NISO #10)


Example 9: A loose-leaf multipart item with serial updates to be interfiled, shown both as an itemized and as a compressed statement. (NISO #19)




APPENDICES

APPENDIX A: Structure of OPAC Bibliographic Level Holdings Statements



This appendix provides the general structure of all types of OPAC bibliographic level holdings statements. Relationship to ISO 10324's Data Areas is provided wherever a correspondence exists.

1) Minimal Bibliographic Level Holdings (B-1)

2) General Bibliographic Level Holdings (B-2)

3) Summary Bibliographic Level Holdings (B-3)

4) Detailed Bibliographic Level Holdings (B-4)





APPENDIX B: Structure of OPAC Piece Level Holdings Statements



This appendix provides the general structure of all types of OPAC piece level holdings statements. Relationship to ISO 10324's Data Areas is provided wherever a correspondence exists.

1) Minimal Piece Level Holdings (P-1)

2) General Piece Level Holdings (P-2)

3) Summary Piece Level Holdings (P-3)

4) Detailed Piece Level Holdings (P-4)



APPENDIX C: OPAC/Holdings Schema (May 1998 Version)


(to be included)




APPENDIX D: OPAC/Holdings Schema expressed in ASN.1



This appendix provides the corresponding ASN.1 definition for the OPAC/Holdings Schema. (It is included here for information only and has not been revised for possible syntax errors).


OPAC-1Record::= SEQUENCE {
	bibliographicRecord	[1]	IMPLICIT EXTERNAL OPTIONAL,
	holdingsData		[2]	IMPLICIT HoldingsData }

HoldingsData::= SEQUENCE {
	holdingsFormat   CHOICE {
		marcHoldingsRecords  	[1] IMPLICIT SEQUENCE OF EXTERNAL,
		holdingsStatements      [2] IMPLICIT SEQUENCE OF 
						HoldingsStatement },
	additionalHoldingsInfo		[3] IMPLICIT SEQUENCE OF Z3950sUrl 
						OPTIONAL,
						-- additional info for all 
						holdings, alternative servers/
						databases 
	nextHoldingsESN			[4] IMPLICIT InternationalString 
						OPTIONAL  -- "next chunk"   }

HoldingsStatement::= SEQUENCE {
	bibItemIdentifier			[1] IMPLICIT InternationalString, 
							-- 004 
	holdings		CHOICE {
		minimalBibLevelHoldings		[2] IMPLICIT SEQUENCE OF 
							LocationReport,
		generalBibLevelHoldings		[3] IMPLICIT SEQUENCE OF 
							GeneralBibLevelHoldings,
		summaryBibLevelHoldings		[4] IMPLICIT SEQUENCE OF 
							SummaryBibLevelHoldings,
		detailedBibLevelHoldings	[5] IMPLICIT SEQUENCE OF 
							DetailedBibLevelHoldings, 
		minimalPieceLevelHoldings	[6] IMPLICIT SEQUENCE OF 
							MinimalPieceLevelHoldings,
		generalPieceLevelHoldings	[7] IMPLICIT SEQUENCE OF 
							GeneralPieceLevelHoldings,
		summaryPieceLevelHoldings 	[8] IMPLICIT SEQUENCE OF 
							SummaryPieceLevelHoldings,
		detailedPieceLevelHoldings	[9] IMPLICIT SEQUENCE OF 
							DetailedPieceLevelHoldings } }


LocationReport::= SEQUENCE { -- Bib Level-1 (ISO 10324 Level-1)
	locationData		[1]	IMPLICIT LocationData,
	dateOfReport		[2]	IMPLICIT InternationalString OPTIONAL, 
						-- 008 26-31
	holdingsNotes		[3]	IMPLICIT SEQUENCE OF InternationalString 
						OPTIONAL -- 852 $z }

LocationData::= SEQUENCE { -- Physical location of an item (or a portion/segment
 				of it)
	countryId		[1]	IMPLICIT InternationalString, -- 852 $n
	regionId		[2]	IMPLICIT InternationalString OPTIONAL, 
						-- See list of regions/country
	institutionId  		[3]	IMPLICIT InternationalString, -- 852 $a
	sublocationId  		[4]	IMPLICIT SEQUENCE OF InternationalString 
						OPTIONAL,
					-- 852 $b $c
	copyId			[5]	IMPLICIT InternationalString OPTIONAL,
					-- 852 $t or 863-865 $t or 876-878 $t
	callNumber		[6]	IMPLICIT InternationalString OPTIONAL, 
					-- 852 $h-m }

GeneralBibLevelHoldings::= SEQUENCE { -- Bib Level-2 (ISO 10324 Level-2)
	locationReport		[1]	IMPLICIT LocationReport,
	generalBibUnits		[2]	IMPLICIT SEQUENCE OF GeneralBibUnit }

GeneralBibUnit::= IMPLICIT GeneralHoldings 

GeneralHoldings::= SEQUENCE {
	typeOfUnitDesignator		[1] IMPLICIT TypeOfUnitDesignator,    
	unitPartTypeDesignator		[2] IMPLICIT UnitPartTypeDesignator, 
						-- Leader 06
	physicalFormDesignator		[3] IMPLICIT PhysicalFormDesignator, 
						-- 007 00-01
	completenessDesignator		[4] IMPLICIT CompletenessDesignator, 
						-- 008 16
	acquisitionStatusDesignator 	[5] IMPLICIT AcquisitionStatusDesignator, 
						-- 008 06
	retentionDesignator		[6] IMPLICIT RetentionDesignator, 
						-- 008 12 
	lendingPolicy			[7] IMPLICIT INTEGER { 
						unknown		(0),
						willLend	(1),
						willNotLend	(2) } OPTIONAL, 
							-- 008 20
	reproductionPolicy		[8] IMPLICIT INTEGER {
						unknown		(0),
						willReproduce	(1),
						willNotReproduce(2) } OPTIONAL, 
								       -- 008 21
	reproductionNote		[9] IMPLICIT InternationalString 
						OPTIONAL, -- 843 }
	termsUseRepro			[10]IMPLICIT InternationalString 
						OPTIONAL  -- 845 
	copyrightArticleFeeCode		[11]IMPLICIT InternationalString 
						OPTIONAL 
					-- 852 $s or 863-865$s }

TypeOfUnitDesignator::= IMPLICIT InternationalString { -- From ISO 10324 and 
								NISO Z39.71
	basic 				('a'),
 	supplement 			('c'),
	index 				('d'),
	infoNotAvailableOrApplicable 	('0') }
 
UnitPartTypeDesignator ::= IMPLICIT INTEGER { 
	infoNotAvailable		(0),
	singlePart			(1),
 	multipart			(2),  
 	serial 				(3) }

PhysicalFormDesignator::= IMPLICIT InternationalString { 
	-- No correspondence between ISO 10324 and  NISO Z39.71;  Listed values 
		are from ISO 
	microform			('hh'),
	microformApertureCard		('ha'),
	microformMicrofilmCartridge	('hb'),
	microformMicrofilmCassette	('hc'),
	microformMicrofilmReel		('hd'),
	microformMicrofiche		('he'),
	microformMicrofichecassette	('hf'),
	microformMicroOpaque		('hg'),
	microformOtherType		('hz'),
	multiplePhysicalForms		('mm'),
	text				('tt'),
	textRegularPrint		('ta'),
	textLargePrint			('tb'),
	textBraille			('tc'),
	textOther			('tz'),
	visualMaterial			('vv'),
	motionPicture			('va'),
	visualProjection		('vb'),
	videorecording			('vc'),
	map				('ma'),
	globe				('mb'),
	musicPrinted			('ra'),
	soundRecording			('rb'),
	computerFile			('ca'),
	graphic				('ga'),
	kit				('km'),
	physicalFormUnspecified		('zu'),
	otherPhysicalMedia		('zz') }
		
CompletenessDesignator::= IMPLICIT INTEGER { -- From ISO 10324 and NISO Z39.71
	infoNotAvailable		(0),
 	complete			(1),  -- 95% - 100% held
 	incomplete 			(2),  -- 50% - 94% held
	veryIncompleteOrScattered 	(3),  -- less than 50% held
	notApplicable 			(4) }

AcquisitionStatusDesignator::= IMPLICIT INTEGER { -- From ISO 10324 and 
							NISO Z39.71
	infoNotAvailableOrApplicable	(0),
 	other 				(1), 
 	completedOrCeased		(2), 
	onOrder				(3),
	currentlyReceived 		(4),
	notCurrentlyReceived 		(5) }

RetentionDesignator::= IMPLICIT INTEGER { -- From ISO 10324 and NISO Z39.71
	infoNotAvailable			(0),
 	other 					(1), 
 	asReplacedByUpdates 			(2), 
	sampleIssueRetained			(3),
	untilReplacedByPreservationFormat	(4),
	untilReplacedByCumulationOrOther 	(5), 
	limitedRetention			(6),
	noRetention				(7),
	permanentRetention			(8) }


SummaryBibLevelHoldings::= SEQUENCE { -- Bib Level-3 (ISO 10324 Level-3)
	locationReport		[1]	IMPLICIT LocationReport,
	summaryBibUnits		[2]	IMPLICIT SEQUENCE OF ExtendedBibUnit }

ExtendedBibUnit::= SEQUENCE {
	generalHoldings		[1]	IMPLICIT GeneralHoldings,
	extentInfoChoice 	  CHOICE {
		notApplicable	[2] 	IMPLICIT NULL,  
		extentInfo	[3]	IMPLICIT SEQUENCE OF ExtentInfo }

ExtentInfo::= SEQUENCE {
	extentOfHoldingsChoice	CHOICE {
		notAvailable	[1]	IMPLICIT NULL,
		extentOfHoldings[2]	IMPLICIT ExtentOfHoldings }
	additionalHoldingsInfo	[3]	IMPLICIT SEQUENCE OF Z3950sUrl OPTIONAL
					-- additional info for bib unit's extent}

ExtentOfHoldings::= SEQUENCE { -- Physical unit(s) or each successive (summary or 
					detailed) part(s)
	nameOfUnit		[1]	IMPLICIT InternationalString OPTIONAL,
	extentOfUnit		[2]	IMPLICIT InternationalString OPTIONAL,
	enumAndChron		[3]	IMPLICIT EnumAndChron OPTIONAL,
	specificExtentNote	[4]	IMPLICIT InternationalString OPTIONAL -- 863-865 $z }

EnumAndChron::= SEQUENCE { -- 863, 864, 865 
	encodingLevel		[1]	IMPLICIT INTEGER {
					summary (1),  -- First level of enum and 
						chron only
					detailed(2)   -- All applicable levels of 
						enum and chron },
	compressed		[2]	IMPLICIT BOOLEAN,
					-- compressed = range of (volume or 
						issues or ...)
					-- uncompressed = itemized (single 
						volume or issue or ...)
	enumeration		[3]	IMPLICIT InternationalString OPTIONAL,
	chronology		[4]	IMPLICIT InternationalString OPTIONAL }


DetailedBibLevelHoldings::= SEQUENCE { -- Bib Level-4 (NISO Z39.71 Level-4)
	locationReport		[1]	IMPLICIT LocationReport,
	detailedBibUnits	[2]	IMPLICIT SEQUENCE OF ExtendedBibUnit }


MinimalPieceLevelHoldings::= SEQUENCE {  -- Piece level-1
	locationReport		[1]	IMPLICIT LocationReport,
	pieces			[2]	IMPLICIT SEQUENCE OF Piece }

Piece::= SEQUENCE {
	pieceId			[1]	IMPLICIT InternationalString, 
					-- 852 $p or 863-865$p or 876-878$p 
	temporaryLocation	[2]	IMPLICIT InternationalString OPTIONAL, 
					-- 876-878 $l
	circData		[3]	IMPLICIT CircData,
	specificPieceNote	[4]	IMPLICIT InternationalString OPTIONAL 
					-- 852 $q or 863-865 $q }

CircData::= SEQUENCE {
	circStatus		[1]	IMPLICIT CircStatus,  
	statusStartingDate	[2]	IMPLICIT InternationalString OPTIONAL, 
						-- "since"
	statusEndingDate	[3]	IMPLICIT InternationalString OPTIONAL, 
						-- "until"
	useRestrictions		[4]	IMPLICIT InternationalString OPTIONAL, 	
						-- 876-878 $h 
	circNotes		[5]	IMPLICIT InternationalString OPTIONAL  
						-- 876-878 $z }


CircStatus::= IMPLICIT INTEGER { -- Value 0 to 14 are from ISO 8459-4
			         -- Value 15 down are (arbitrary) additional 
					values
	availableOnShelves		(0), 
	undefined			(1),			
	onOrder				(2), 
	notAvailable			(3),
	onLoan				(4),
	onLoanUntilRecall		(5),   -- i.e. not available for recall 
						until earliest recall date
	inProcess			(6),
	recalled			(7),
	waitingOnReservationShelf 	(8),   -- on Hold 
	waitingToBeReshelved		(9),
	inTransit			(10), -- between library locations
	claimedReturnedOrNeverBorrowed	(11),
	lost				(12), 	
	missingBeingTraced 		(13),
	supplied			(14),  -- i.e. return not required
	inBinding			(15),
	inRepair			(16),
	pendingTransfer			(17),
	missingOverdue 			(18),
	withdrawn			(19),
	weeded				(20),
	other				(21)  }				

GeneralPieceLevelHoldings::= SEQUENCE {  -- Piece level-2
	locationReport		[1]	IMPLICIT LocationReport,
	generalPieces		[2]	IMPLICIT SEQUENCE OF GeneralPiece }

GeneralPiece::= SEQUENCE {
	piece			[1]	IMPLICIT Piece,
	generalBibUnits		[2]	IMPLICIT SEQUENCE OF GeneralBibUnit }

SummaryPieceLevelHoldings::= SEQUENCE { -- Piece level-3
	locationReport		[1]	IMPLICIT LocationReport,
	summaryPieces		[2]	IMPLICIT SEQUENCE OF ExtendedPiece }

ExtendedPiece::= SEQUENCE {
	piece			[1]	IMPLICIT Piece,
	extendedBibUnits	[2]	IMPLICIT SEQUENCE OF ExtendedBibUnit }


DetailedPieceLevelHoldings::= SEQUENCE { -- Piece level-4
	locationReport		[1]	IMPLICIT LocationReport,
	detailedPieces		[2]	IMPLICIT SEQUENCE OF ExtendedPiece }




Footnotes




1. Source: ISO 10324:1997(E), Annex A: Taxonomy of a bibliographic item (normative).

2. Source: ISO 10324:1997(E), Annex D: Guidelines for applying this International Standard (informative).

3. In parenthesis appear the corresponding ISO 10324/NISO Z39.71 data areas.

4. A comprehensive definition of a 'piece', as conveyed in this document, is provided in the definition sections of 'Minimal Piece Level Holdings' and 'Piece' elements.

5. US-Marc for Holdings document defines the 'copy identifier' as being the combination of 'copy-number' ($t) and piece-designation ($p). For the purpose of clarity, we have defined a distinct 'data area' for piece level information.

6. See the Z39.50 maintenance agency home page for a full description of Z39.50 URLs.

7. Most of the elements' definition have been extracted from this standard. When being the case, the definition appears in italic.

8. Code values for type of unit, completeness, acquisition status and retention designators are identical to ISO 10324 and NISO Z39.71.

9. There are no correspondence between ISO and NISO code values. Values listed are from ISO.

10. Not part of ISO 10324.

11. Piece level holdings described in this document are not part of neither ISO 10324 nor NISO Z39.71. They are all based on the US-MARC Item Information fields (876-878) and are meant to reflect the different possible ways of reporting a 'piece' using that standard.

12. 'Minimal piece level holdings' type wants to reflect the cases where a piece is identified 1) in the Location (852) field and 2) in an Item Information field with no explicit linking to any other bib unit fields (via $8) -- implying a link to Location field; the piece identified could therefore represent a single-part item or a copy level identification for a multipart or serial item, for instance.

13. Circulation statuses: Value 0 to 14 are defined according to ISO 8459-4; others are additional non-normative values

14. 'Summary piece level holdings' is meant to reflect the case where an Item Information field is linked (via $8) to one or many Enumeration/Chronology fields (863-865), encoded at the summary level.

15. 'Detailed piece level holdings' is meant to reflect the case where an Item Information field is linked (via $8) to one or many Enumeration/Chronology fields (863-865), encoded at the detailed level.