Z39.50 International Standard Maintenance Agency - Library of Congress, Network Development and MARC Standards Office

Z39.50 Text
Part 22

Appendix 12 (TAG): TagSets and Schemas

[Table of Contents | Previous Section | Next Section]

Appendix 12 TAG: TagSet Definitions and Schemas (Normative)

A database schema represents a common understanding shared by the origin and target, of the information contained in the records of the database represented by that schema, to allow retrieval of portions of that information.

The primary component of a database schema is an abstract record structure, which lists schema elements in terms of their tagPaths. A tagPath is a representation of the hierarchical path of an element, expressed as a sequence of nodes, each represented by a tag. Each tag in a tagPath consists of a tagType and tagValue. The tagType is an integer; the tagValue may be an integer or character string. The tagType qualifies the tagValue; it might identify a tagSet, which might be registered (or alternatively, it might be defined locally within the schema).

Also included in a schema is a definition of how the various tagTypes are used within the tagPaths for the schema elements. The definition might simply be a mapping of tagTypes to tagSets.

For all schemas, tagTypes 1 through 3 are assumed to have the following meaning:

tagType and what it is used to qualify:

  1. an element defined in tagSet-M
  2. an element defined in tagSet-G
  3. a tag locally defined by the target (intended primarily for string tags, but numeric tags are not precluded)

For a detailed description of the use of schemas, tagSets, etc. see Appendix RET.

TAG.1 Schema Definitions
This standard registers the following object identifiers for Schemas:

WAIS {Z39-50-schema 1}
GILS {Z39-50-schema 2}

TAG.2 TagSet Definitions
This standard defines and registers the tag set definitions tagSet-M and tagSet-G. TagSet-M includes elements intended for use as meta-data associated with a database record. TagSet-G includes generic elements.

The object identifier for these definitions are:

tagSet-M {Z39-50-tagSet 1} [See TagSet -G and -M Elements]
tagSet-G {Z39-50-tagSet 2} [See TagSet -G and -M Elements]

For detailed semantics of the elements defined in these tagSets, see Appendix RET.

In addition, this standard registers the following tagSet:

tag-Set-STAS {Z39-50-tagSet 3}

[For a complete list of TagSet definitions, see http://www.loc.gov/z3950/agency/defns/oids.html#14]

TAG.2.1 Definition of tagSet-M

Element tag

Recommended ASN.1 datatype

schemaIdentifier 1 OBJECT IDENTIFIER
elementsOrdered 2 BOOLEAN
elementOrdering 3 INTEGER
defaultTagType 4 INTEGER
defaultVariantSetId 5 defaultVariantSetId 5 OBJECT IDENTIFIER
defaultVariantSpec 6 VariantSpec
processingInstructions 7 InternationalString
recordUsage 8 INTEGER
restriction 9 InternationalString
rank 10 INTEGER
userMessage 11 InternationalString
url 12 InternationalString
record 13 structured
localControlNumber 14 InternationalString
creationDate 15 GeneralizedTime
dateOfLastModification 16 GeneralizedTime
dateOfLastReview 17 GeneralizedTime
score 18 INTEGER
wellKnown 19 InternationalString
recordWrapper 20 structured

schemaIdentifier -- Identifies the schema in use. This element is available for cases where the origin does not specify a schema in the request, or where the target uses a schema different than that requested by the origin.

elementsOrdered -- If 'true', then sibling elements (i.e. with the same parent) are presented as follows: tagTypes are ascending; for elements with the same tagType, integer tag values are ascending, and precede elements with string tags (which are not necessarily ordered).

elementOrdering -- How sibling elements with the same tag are ordered:

1 = "Normal" consumption order (pages, frames).
2 = Chronological, e.g., news articles.
3 = Semantic size, e.g., increasingly comprehensive abstracts.
4 = Generality, e.g., thesaurus words, increasing generality, concentric object snapshots, zoom-out order.
5 = Elements explicitly undistinguished by order.
6 = undefined; may (or not) be ordered by private agreement.
7 = Singleton; never more than one occurrence.

defaultTagType -- The tagType that applies for any element for which tagType is not included.

defaultVariantSetId -- The Variant set identifier that applies when the target returns a variant specification for an element, but does not include a variant set identifier.

defaultVariantSpec -- If this element is present, then the specified variant applies to all subsequent elements, when applicable, which do not include a variant specification.

processingInstructions -- Recommendation by the target on how to display this record to the user.


1 = Redistributable.
2 = Restricted, and the tagSet-M element 'restriction' (defined below) contains the restriction.
3 = Restricted, and the restriction, contains a license pointer.

restriction -- This element, if present, should immediately follow recordUsage, and is a statement (if recordUsage is 1 or 2), or a pointer to the license (if recordUsage is 3).

rank -- The rank of this record within the result set. If N records are in the result set, each record should have a unique rank from 1 to N.

userMessage -- A message, pertaining to this record, that the target asks the origin to display to the user.

url -- Uniform resource locator. This is a URL for the record.

record -- This element may be used for nested records, when the database record itself includes database records (possibly from a different database). Note that tagSet-M elements that occur subordinate to this element apply only to that nested record.

localControlNumber -- An identifier of the record, unique within the database.

creationDate -- Date that the record was created.

dateOfLastModification -- Most recent date that this record was modified.

dateOfLastReview -- Most recent date that this record was verified.

score -- A normalized score assigned to the record by the target. Each record in the result set should have a score from 1 to N where N is the normalization factor (more than one record may have the same score). The normalization factor should be specified in the schema.

wellKnown -- When an element is defined to be "structured into locally defined elements," the target may use this tag in lieu of, or along with, locally defined tags. For example, an element named 'title' might be described to be "locally structured." The target might present the element structured into the following subelements: 'wellKnown', "spineTitle," and "variantTitle," where the latter two are string tags, target defined. In this case, 'wellKnown' is assumed to mean "title."

recordWrapper -- This element may be used to represent the root of the record, particularly when the record otherwise has no root. The origin may request the record skeleton by reference to this element.

defaultTagSetId -- This element may be used in lieu of defaultTagType, to identify the default tag set.

TAG.2.2 Definition of tagSet-G

Element tag recommended ASN.1 datatype
title 1 InternationalString
author 2 InternationalString
publicationPlace 3 InternationalString
publicationDate 4 InternationalString or GeneralizedTime
documentId 5 InternationalString
abstrac 6 InternationalString
name 7 InternationalString
date 8 date 8 GeneralizedTime
bodyOfDisplay 9 InternationalString
organization 10 InternationalString
postalAddress 11 InternationalString
networkAddress 12 InternationalString
eMailAddress 13 InternationalString
phoneNumber 14 InternationalString
faxNumber 15 InternationalString
country 16 InternationalString
description 17 description 17
time 18 IntUnit
DocumentContent 19 OCTET STRING

These elements (with the exception of bodyOfDisplay) are for generic use and their definitions are not supplied.

BodyOfDisplay -- The target might combine several elements into this single element, into a display format, for display.

[Table of Contents | Previous Section | Next Section]