ANSI/NISO Z39.50-1992 ISSN: 1041-5653 (Revision of ANSI/NISO Z39.50-1988)
Object Identifiers Assigned in This Standard
(This appendix is part of the American National Standard for Information Retrieval Application Service Definition and Protocol Specification for Open Systems Interconnection, ANSI/NISO Z39.50-1992.)
The following object identifier value has been assigned to this standard, ANSI/NISO Z39.50-1992:
{ iso (1) member-body (2) US (840)
ANSI-standard-Z39.50 (10003)}
This standard assigns the following values at the level immediately subordinate
to ANSI-standard-Z39.50:
1 = application context 2 = abstract syntax 3 = attribute set 4 = diagnostic set 5 = abstract record syntax 6 = transfer syntax for non-bibliographic records 7 = resource report formatA.1 Application Context
This standard assigns the following object identifier for the application-context-definition `basic-Z39.50-ac,' contained in Appendix B:
{ iso member-body US ANSI-standard-Z39.50 application-context (1) basic-Z39.50-ac (1) }
A.2 Abstract Syntax
This standard assigns the following object identifier for the ASN.1 module, contained in section 4.1, defining the Z39.50 APDUs:
{ iso member-body US ANSI-standard-Z39.50
abstract-syntax (2) Z39.50-apdus (1) }
Note: No object identifier is assigned by this standard for any transfer syntax
for APDUs. The transfer syntax results from the application of the ASN.1 Basic
Encoding Rules (ISO 8825). For the purposes of Presentation Context
negotiation, this syntax is identified by a pair of object identifiers, one for
the abstract-syntax (Z39.50-apdus) and one for the basic encoding rules:
{ joint-iso-ccitt asn1 (1) basic-encoding (1) }
A.3 Attribute SetThis standard assigns the following object identifier for the attribute-set definition `bib-1', contained in Appendix C:
attribute-set (3) bib-1 (1) }
{ iso member-body US ANSI-standard-Z39.50
A.4 Diagnostic Set
This standard assigns the following object identifier for the diagnostic set definition contained in Appendix D.
{ iso member-body US ANSI-standard-Z39.50
diagnostic-set (4) bib-1 (1)}
A.5 Abstract Record SyntaxObject identifier for Record syntaxes are contained in Appendix E.
A.6 Transfer Syntax for Non-Bibliographic Records
No transfer syntaxes for non-bibliographic records are designated within this standard.
A.7 Resource Report Format
This standard assigns the following object identifier for the resource report format defined in Appendix F.
{ iso member-body US ANSI-standard-Z39.50 resource-report-format (7) bib-1 (1)}
Definition of Application Context basic-Z39.50-ac
(This appendix is part of the American National Standard for Information Retrieval Application Service Definition and Protocol Specification for Open Systems Interconnection, ANSI/NISO Z39.50-1992.)
This appendix defines the application context basic-Z39.50-ac. The object identifier for application context basic-Z39.50-ac is registered in Appendix A.
Definition of application context basic-Z39.50-ac
ANSI-standard-Z39.50 application context basic-Z39.50-ac supports an application-entity that contains only the following two application service elements (ASEs):
The P-Data service is used to transmit Z39.50 APDUs.
In the event of protocol errors, the system detecting the error shall abort the association.
Attribute Set bib-1
(This appendix is part of the American National Standard for Information Retrieval Application Service Definition and Protocol Specification for Open Systems Interconnection, ANSI/NISO Z39.50-1992.)
This appendix defines the attribute-set bib-1. Attribute-set bib-1 is primarily intended for use with bibliographic databases. The object identifier for attribute set bib-1 is defined and registered in Appendix A. When the value of AttributeSetId (within the RPN query within the Search APDU) equals the object identifier for this attribute-set, then:
Table C-1: Attribute Types
Attribute Type | Value
_________________________|____________________
Use | 1
_________________________|____________________
Relation | 2
_________________________|____________________
Position | 3
_________________________|____________________
Structure | 4
_________________________|____________________
Truncation | 5
_________________________|____________________
Completeness | 6
_________________________|____________________
Table C-2: Use Attributes
Use |Value| Use |Value| Use | Value
__________________|_____|__________________|_____|__________________|_______
Personal name | 1 | Local subj. index| 29 | Name and title | 57
__________________|_____|__________________|_____|__________________|_______
Corporate name | 2 | Date | 30 | Name geographic | 58
__________________|_____|__________________|_____|__________________|_______
Conference name | 3 | Date of public. | 31 | Place publication| 59
__________________|_____|__________________|_____|__________________|_______
Title | 4 | Date of acquis. | 32 | CODEN | 60
__________________|_____|__________________|_____|__________________|_______
Title series | 5 | Title key | 33 | Microform | 61
| | | | generation |
__________________|_____|__________________|_____|__________________|_______
Title uniform | 6 | Title collective | 34 | Abstract | 62
__________________|_____|__________________|_____|__________________|_______
ISBN | 7 | Title parallel | 35 | Note | 63
__________________|_____|__________________|_____|__________________|_______
ISSN | 8 | Title cover | 36 | Author-title | 1000
__________________|_____|__________________|_____|__________________|_______
LC card number | 9 | Title added | 37 | Record type | 1001
| | title page | | |
__________________|_____|__________________|_____|__________________|_______
BNB card number | 10 | Title caption | 38 | Name | 1002
__________________|_____|__________________|_____|__________________|_______
BGF number | 11 | Title running | 39 | Author | 1003
__________________|_____|__________________|_____|__________________|_______
Local number | 12 | Title spine | 40 | Author-name pers.| 1004
__________________|_____|__________________|_____|__________________|_______
Dewey class. | 13 | Title other | 41 | Author-name | 1005
| | variant | | corporation |
__________________|_____|__________________|_____|__________________|_______
UDC class. | 14 | Title former | 42 | Author-name | 1006
| | | | conference |
__________________|_____|__________________|_____|__________________|_______
Bliss class. | 15 | Title | 43 | Identifier -- | 1007
| | abbreviated | | standard |
__________________|_____|__________________|_____|__________________|_______
LC call number | 16 | Title expanded | 44 | Subject -- LC | 1008
| | | | children's |
__________________|_____|__________________|_____|__________________|_______
NLM call number | 17 | Subject precis | 45 | Subject name -- | 1009
| | | | personal |
__________________|_____|__________________|_____|__________________|_______
NAL call number | 18 | Subject rswk | 46 | Body of text | 1010
__________________|_____|__________________|_____|__________________|_______
MOS call number | 19 | Subject | 47 | Date/time added | 1011
| | subdivision | | to database |
__________________|_____|__________________|_____|__________________|_______
Local class. | 20 | Number natl | 48 | Date/time last | 1012
| | bibliography | | modified |
__________________|_____|__________________|_____|__________________|_______
Subject heading | 21 | Number legal | 49 | Authority and | 1013
| | deposit | | format identifier|
__________________|_____|__________________|_____|__________________|_______
Subject Rameau | 22 | Number govt | 50 | Concept-text | 1014
| | publication | | |
__________________|_____|__________________|_____|__________________|_______
BDI index subj. | 23 | Number publisher | 51 | Concept- | 1015
| | for music | | reference |
__________________|_____|__________________|_____|__________________|_______
INSPEC subject | 24 | Number db | 52 | |
__________________|_____|__________________|_____|__________________|_______
MESH subject | 25 | Number local call| 53 | |
__________________|_____|__________________|_____|__________________|_______
PA subject | 26 | Code--lanaguage | 54 | |
__________________|_____|__________________|_____|__________________|_______
LC subj. heading | 27 | Code--geographic | 55 | |
| | area | | |
__________________|_____|__________________|_____|__________________|_______
RVM subj. heading| 28 | Code--institution| 56 | |
__________________|_____|__________________|_____|__________________|_______
Table C-3: Relation Attributes
Relation | Value
_________________________|____________________
less than | 1
_________________________|____________________
less than or equal to | 2
_________________________|____________________
equal | 3
_________________________|____________________
greater or equal | 4
_________________________|____________________
greater than | 5
_________________________|____________________
not equal | 6
_________________________|____________________
Table C-4: Position Attributes
Position | Value
_________________________|____________________
first in field | 1
_________________________|____________________
first in subfield | 2
_________________________|____________________
any position in field | 3
_________________________|____________________
Table C-5: Structure Attributes
Structure | Value
_________________________|____________________
phrase | 1
_________________________|____________________
word | 2
_________________________|____________________
key | 3
_________________________|____________________
year | 4
_________________________|____________________
date (normalized) | 5
_________________________|____________________
word list | 6
_________________________|____________________
date (un-normalized) | 100
_________________________|____________________
name (normalized) | 101
_________________________|____________________
name (un-normalized) | 102
_________________________|____________________
Table C-6: Truncation Attributes
Truncation | Value
_________________________|____________________
Right truncatation | 1
_________________________|____________________
Left truncatation | 2
_________________________|____________________
Left and Right | 3
_________________________|____________________
Do not truncate | 100
_________________________|____________________
Process # in the |
search term | 101
_________________________|____________________
Table C-7: Completeness Value
Completeness | Value
_________________________|____________________
incomplete subfield | 1
_________________________|____________________
complete subfield | 2
_________________________|____________________
complete field | 3
_________________________|____________________
Diagnostic Set bib-1
(This appendix is part of the American National Standard for Information Retrieval Application Service Definition and Protocol Specification for Open Systems Interconnection, ANSI/NISO Z39.50-1992.)
This Appendix defines the diagnostic set bib-1. The object identifier for diagnostic set bib-1 is defined and registered in Appendix A.
When the value of DiagnosticSetId (within DiagRec within the auxiliary definitions for Search Response and Present Response APDUs) equals the object identifier for this diagnostic set, then "condition" (within DiagRec) takes values from the "Condition" column in the table below.
Table D-1: Diagnostic Conditions
Condition | Meaning | Addinfo | Type
___________|________________________________________________|_________|______
1 | Permanent system error | | 1
___________|________________________________________________|_________|______
2 | Temporary system error | | 1
___________|________________________________________________|_________|______
3 | Unsupported search | | 2
___________|________________________________________________|_________|______
4 | Terms only exclusion (stop) words | | 2
___________|________________________________________________|_________|______
5 | Too many arguments words | | 2
___________|________________________________________________|_________|______
6 | Too many Boolean operators | | 2
___________|________________________________________________|_________|______
7 | Too many truncated words | | 2
___________|________________________________________________|_________|______
8 | Too many incomplete subfields | | 2
___________|________________________________________________|_________|______
9 | Truncated words too short | | 2
___________|________________________________________________|_________|______
10 | Invalid format for record number (search term) | | 2
___________|________________________________________________|_________|______
11 | Too many characters in search statement | | 2
___________|________________________________________________|_________|______
12 | Too many records retrieved | | 2
___________|________________________________________________|_________|______
13 | Present request out-of-range | | 3
___________|________________________________________________|_________|______
14 | System error in presenting record | | 4
___________|________________________________________________|_________|______
15 | Record not authorized to be sent intersystem | | 4
___________|________________________________________________|_________|______
16 | Record exceeds Preferred-message size | | 4
___________|________________________________________________|_________|______
17 | Record exceeds Maximum-record-size | | 4
___________|________________________________________________|_________|______
18 | Result set not supported as a search term | | 2
___________|________________________________________________|_________|______
19 | Only single result set as search term supported| | 2
___________|________________________________________________|_________|______
20 | Only ANDing of a single result set as search | | 2
| term supported | |
___________|________________________________________________|_________|______
21 | Result set exists and replace indicator off | | 2
___________|________________________________________________|_________|______
22 | Result set naming not supported | | 2
___________|________________________________________________|_________|______
23 | Combination of specified databases not | | 2
| supported | |
___________|________________________________________________|_________|______
24 | Element set names not supported | | 1
___________|________________________________________________|_________|______
25 | Specified element set name not valid for | | 1
| database | |
___________|________________________________________________|_________|______
26 | Only a single element set name supported | | 1
___________|________________________________________________|_________|______
27 | Result set no longer exists -- unilaterally | | 1
| deleted by target | |
___________|________________________________________________|_________|______
28 | Result set in use | | 1
___________|________________________________________________|_________|______
29 | One of the specified databases is locked | | 1
___________|________________________________________________|_________|______
30 | Specified result set does not exist | | 1
___________|________________________________________________|_________|______
31 | Resources exhausted -- no results available | | 2
___________|________________________________________________|_________|______
32 | Resources exhausted -- unpredictable partial | | 2
| results available | |
___________|________________________________________________|_________|______
33 | Resources exhausted -- valid subset of results | | 2
| available | |
___________|________________________________________________|_________|______
100 | Unspecified error | | 1
___________|________________________________________________|_________|______
101 | Access-control failure | | 1
___________|________________________________________________|_________|______
102 | Security challenge required but could not be | | 1
| issued -- request terminated | |
___________|________________________________________________|_________|______
103 | Security challenge required but could not be | | 4
| issued -- record not included | |
___________|________________________________________________|_________|______
104 | Security challenge failed -- record not | | 4
| included | |
___________|________________________________________________|_________|______
105 | Terminated by negative continue response | | 1
___________|________________________________________________|_________|______
106 | No abstract syntaxes agreed to for this record | | 4
___________|________________________________________________|_________|______
107 | Query type not supported | | 2
___________|________________________________________________|_________|______
108 | Malformed query | | 2
___________|________________________________________________|_________|______
109 | Database unavailable |database | 2
| | name |
___________|________________________________________________|_________|______
110 | Operator unsupported |operator | 2
___________|________________________________________________|_________|______
111 | Too many databases specified | maximum | 2
___________|________________________________________________|_________|______
112 | Too many result sets created | maximum | 2
___________|________________________________________________|_________|______
113 | Unsupported attribute type | type | 2
___________|________________________________________________|_________|______
114 | Unsupported Use attribute | value | 2
___________|________________________________________________|_________|______
115 | Unsupported value for Use attribute | term | 2
___________|________________________________________________|_________|______
116 | Unsupported required but not supplied | | 2
___________|________________________________________________|_________|______
117 | Unsupported Relation attribute | value | 2
___________|________________________________________________|_________|______
118 | Unsupported Structure attribute | value | 2
___________|________________________________________________|_________|______
119 | Unsupported Position attribute | value | 2
___________|________________________________________________|_________|______
120 | Unsupported Truncation attribute | value | 2
___________|________________________________________________|_________|______
121 | Unsupported Attribute set | oid | 2
___________|________________________________________________|_________|______
122 | Unsupported Completeness attribute | value | 2
___________|________________________________________________|_________|______
123 | Unsupported attribute combination | |
___________|________________________________________________|_________|______
124 | Unsupported coded value for term | value | 2
___________|________________________________________________|_________|______
125 | Malformed search term | | 2
___________|________________________________________________|_________|______
126 | Illegal term value for attribute | term | 2
___________|________________________________________________|_________|______
127 | Unparsable format for un-normalize value | value | 2
___________|________________________________________________|_________|______
128 | Illegal result set name | name | 1
___________|________________________________________________|_________|______
129 | Proximity search of sets not supported | | 2
___________|________________________________________________|_________|______
130 | Illegal result set in proximity search | result | 2
| | set name|
___________|________________________________________________|_________|______
131 | Unsupported proximity relation | value | 2
___________|________________________________________________|_________|______
132 | Unsupported proximity unit code | value | 2
Notes:
Record Syntaxes
(This appendix is part of the American National Standard for Information Retrieval Application Service Definition and Protocol Specification for Open Systems Interconnection, ANSI/NISO Z39.50-1992.)
This appendix defines and registers object identifiers for abstract record syntaxes. These identifiers are intended to be used as values of PreferredRecordSyntax in Search and Present APDUs.
E.1 Abstract Record Syntaxes
E.1.1 Abstract Record Syntaxes Registered by This Standard
Names are assigned using the ASN.1 notation (ISO 8824) for OBJECT IDENTIFIER values:
ANSI-Z39.50-2 DEFINITIONS ::=
BEGIN
Z39-50 OBJECT IDENTIFIER ::=
{iso (1) member-body (2) US (840)
ANSI-standard-Z39.50 (10003)}
RecordSyntax OBJECT IDENTIFIER ::=
{Z39-50 (5)}
Unimarc ::= OBJECT IDENTIFIER {RecordSyntax(1)}
Intermarc ::= OBJECT IDENTIFIER {RecordSyntax(2)}
CCF ::= OBJECT IDENTIFIER {RecordSyntax(3)}
USmarc ::= OBJECT IDENTIFIER {RecordSyntax(10)}
UKmarc ::= OBJECT IDENTIFIER {RecordSyntax(11)}
Normarc ::= OBJECT IDENTIFIER {RecordSyntax(12)}
Librismarc ::= OBJECT IDENTIFIER {RecordSyntax(13)}
Danmarc ::= OBJECT IDENTIFIER {RecordSyntax(14)}
Finmarc ::= OBJECT IDENTIFIER {RecordSyntax(15)}
MAB ::= OBJECT IDENTIFIER {RecordSyntax(16)}
Canmarc ::= OBJECT IDENTIFIER {RecordSyntax(17)}
SBN ::= OBJECT IDENTIFIER {RecordSyntax(18)}
Picamarc ::= OBJECT IDENTIFIER {RecordSyntax(19)}
END
E.1.2 Local Abstract Record SyntaxesFor registration of local abstract record syntaxes, this appendix defines and registers the following object identifier.
LocalSyntax ::= OBJECT IDENTIFIER
{RecordSyntax (1000)}
Local abstract record syntaxes will be registered subordinate to this
object identifier. Contact the Z39.50 Maintenance Agency for registration
procedures.E.2 Transfer Syntaxes for Records
For the purposes of Presentation Context negotiations, record syntax is identified by a pair of object identifiers, one for the abstract syntax and one for the transfer syntax.
For bibliogrpahic records, no object identifiers for transfer syntax are assigned by this standard. However, an object identifier has been assigned (outside of this standard) for the transfer syntax for bibliographic records defined in ISO 2709:
{iso standard 2709 transfer-syntax (1)
character-encoding (1)}
For non-bibliographic records, transfer syntaxes will be registered
subordinate to the object identifier {Z39-50 7} (see Appendix A).
Resource Report Format bib-1
(This appendix is part of the American National Standard for Information Retrieval Application Service Definition and Protocol Specification for Open Systems Interconnection, ANSI/NISO Z39.50-1992.)
This appendix defines the resource report format bib-1. The object identifier for resource report format bib-1 is defined and registered in Appendix A.
ResourceReportFormat-Bib-1
RR { iso (1) member-body (2) US (840) ANSI-standard-Z39.50 (10003) resource-
report-format (7) bib-1 (1)} DEFINITIONS ::=
BEGIN
--
ResourceReport ::= SEQUENCE{
estimates [1] IMPLICIT SEQUENCE OF Estimate,
message [2] IMPLICIT VisibleString}
--
Estimate::=SEQUENCE{
type [1] IMPLICIT EstimateType,
value [2] IMPLICIT INTEGER, -- the actual estimate
currency-code [3] IMPLICIT INTEGER OPTIONAL}
-- code for representation of currencies defined in ISO 4217-1990.
-- Applicable only to monetary estimates.
--
EstimateType ::= INTEGER{
currentSearchResults (1), -- estimated number of records in
-- current (incomplete) result set for
-- search
finalSearchResults (2), -- estimated number of records that
-- will be in the result set for search
-- if search completes
currentPresentRecords (3), -- estimated number of records in
-- current (incomplete) set of records
-- to be returned to Present
finalPresentRecords (4), -- estimated number of records that
-- will be in the set of records to be
-- returned by Present if Present
-- completes
currentOpTimeProcessing (5), -- processing time (in .001 CPU seconds)
-- used by this operation so far
finalOpTimeProcessing (6), -- estimated total processing time (in
-- .001 CPU seconds) that will be used by
-- this operation if it completes
currentAssocTime (7), -- estimated processing time used by
-- this association (in .001 CPU seconds)
currentOperationCost (8), -- estimated cost for this operation so far
finalOperationCost (9), -- estimated cost for this operation if
-- it completes
currentAssocCost (10), -- estimated cost for this association
-- so far
finalOpTimeElapsed (11)}, -- estimated elapsed time for this
-- operation if it completes (in .001
-- second units)
END
Proximity Query
(This appendix is part of the American National Standard for Information Retrieval Application Service Definition and Protocol Specification for Open Systems Interconnection, ANSI/NISO Z39.50-1992.)
This appendix defines the proximity query, Type-101.
G.1 Structure of the Proximity Query
The Proximity query is an extension of the RPN-Query. It is identical in structure with the exception that a proximity operator is represented in addition to the existing RPN-Query operators AND, OR, AND-NOT. Thus the Proximity query is defined as follows:
where the notation is as described in section 3.2.2.1.1.1.Proximity-query ::=argument | argument + argument + operator
argument ::= operand | Proximity-query operand ::= attribute-set + term | Result-set-id operator ::= AND | OR | AND-NOT | PROX
G.2 Representation and Evaluation
At the origin, the Type-101 query is represented by a tree. Each leaf node contains a simple operand and each non-leaf node contains a complex operand. A simple operand is either a Result-set-id or an Attribute-set+Term. A complex operand is a subtree whose root is an operator and which contains two subtrees: a left-hand operand and a right-hand operand, LO and RO. A complex operand is thus one of the following:
(b) Result-set-id,
(c) Operator.
Whenever (c) is encountered:
Note: in all cases, A' and B' are sets. Each is either a result result set or an intermediate set resulting from a previous operation.
The proximity operator, PROX, includes a Distance, Relation-type, Proximity-unit-code, and two Boolean flags; Exclusion and Ordered.
Example: suppose A and B respectively specify "personal name = 'McGraw, J.'." and "personal name = 'Stengel, C.'," and:
Using the same example, if the Exclusion flag is set to "true," the result is the set of records in which the two personal names never both occur within the same paragraph.
If the Ordered flag is set to "true" (and Exclusion flag to "false") then the result is the set of records in which the personal name 'McGraw, J.' occurs within the same paragraph as, but before, the personal name 'Stengel, C.'.
If distance is instead 1 ("ordered" and "exclusion" flag "false") the result is the set of records in which the two personal names occur in adjacent paragraphs. If, in addition, Relation-type is "less-than-or-equal" the result is the set of records in which the two names occur within the same or adjacent paragraphs.
G.4 ASN.1 Description of Proximity Query
The proximity query is an extension of the RPN query and has the same structure with the addition of a proximity operator. Thus the proximity query is described by replacing (within the description of RPN-Query in section 4.1.1):
With the following:Operator ::= [46] CHOICE{
and [0] IMPLICIT NULL, or [1] IMPLICIT NULL, and-not [2] IMPLICIT NULL}
Operator ::= [46] CHOICE{
and [0] IMPLICIT NULL, or [1] IMPLICIT NULL, and-not [2] IMPLICIT NULL, prox [3] IMPLICIT ProximityOperator}ProximityOperator ::= SEQUENCE{
exclusion [1] IMPLICIT BOOLEAN OPTIONAL, -- "true" means that "not" is to be applied -- to the proximity operation. The default -- is "false." distance [2] IMPLICIT INTEGER, -- Number of units between the operands plus -- one; i.e. the difference between the -- ordinal positional values of the two -- operands. Distance is never negative. ordered [3] IMPLICIT BOOLEAN, -- "True" means "right proximity only"; -- "false" means "right or left." relationType [4] IMPLICIT INTEGER,{ lessThan (1), lessThanOrEqual (2), equal (3), greaterThanOrEqual (4), greaterThan (5), notEqual (6)}, proximityUnitCode[5] CHOICE{ known [1] IMPLICIT KnownProximityUnit, private [2] IMPLICIT INTEGER}} KnownProximityUnit ::= INTEGER{ character (1), word (2), sentence (3), paragraph (4), section (5), chapter (6), document (7), field (8), subfield (9), fieldtype (10)} -- Other codes may be added