📄 z3950v3.asn
字号:
-- suggested possibility is an implementor agreement whereby the -- database name is a url which may be used to connect to the server. nicknames [3] IMPLICIT SEQUENCE OF DatabaseName OPTIONAL, icon [4] IMPLICIT IconObject OPTIONAL, user-fee [5] IMPLICIT BOOLEAN, available [6] IMPLICIT BOOLEAN, titleString [7] IMPLICIT HumanString OPTIONAL, -- Non-brief elements follow: keywords [8] IMPLICIT SEQUENCE OF HumanString OPTIONAL, description [9] IMPLICIT HumanString OPTIONAL, associatedDbs [10] IMPLICIT DatabaseList OPTIONAL, -- databases that may be searched in combination with this one subDbs [11] IMPLICIT DatabaseList OPTIONAL, -- When present, this database is a composite representing the combined -- databases 'subDbs'. The individual subDbs are also available. disclaimers [12] IMPLICIT HumanString OPTIONAL, news [13] IMPLICIT HumanString OPTIONAL, recordCount [14] CHOICE { actualNumber [0] IMPLICIT INTEGER, approxNumber [1] IMPLICIT INTEGER} OPTIONAL, defaultOrder [15] IMPLICIT HumanString OPTIONAL, avRecordSize [16] IMPLICIT INTEGER OPTIONAL, maxRecordSize [17] IMPLICIT INTEGER OPTIONAL, hours [18] IMPLICIT HumanString OPTIONAL, bestTime [19] IMPLICIT HumanString OPTIONAL, lastUpdate [20] IMPLICIT GeneralizedTime OPTIONAL, updateInterval [21] IMPLICIT IntUnit OPTIONAL, coverage [22] IMPLICIT HumanString OPTIONAL, proprietary [23] IMPLICIT BOOLEAN OPTIONAL, -- mandatory in full record copyrightText [24] IMPLICIT HumanString OPTIONAL, copyrightNotice [25] IMPLICIT HumanString OPTIONAL, producerContactInfo [26] IMPLICIT ContactInfo OPTIONAL, supplierContactInfo [27] IMPLICIT ContactInfo OPTIONAL, submissionContactInfo [28] IMPLICIT ContactInfo OPTIONAL, -- accessInfo lists items connected with the database. All listed items should be in the target's AccessInfo. accessInfo [29] IMPLICIT AccessInfo OPTIONAL}SchemaInfo ::= SEQUENCE { commonInfo [0] IMPLICIT CommonInfo OPTIONAL, -- Key elements follow: schema [1] IMPLICIT OBJECT IDENTIFIER, -- Non-key brief elements follow: name [2] IMPLICIT InternationalString, -- Non-brief elements follow: description [3] IMPLICIT HumanString OPTIONAL, tagTypeMapping [4] IMPLICIT SEQUENCE OF SEQUENCE { tagType [0] IMPLICIT INTEGER, tagSet [1] IMPLICIT OBJECT IDENTIFIER OPTIONAL, -- If tagSet is omitted, then this tagType is for a tagSet locally defined -- within the schema that cannot be referenced by another schema. defaultTagType [2] IMPLICIT NULL OPTIONAL } OPTIONAL, recordStructure [5] IMPLICIT SEQUENCE OF ElementInfo OPTIONAL} -- ElementInfo referenced in SchemaInfo and RecordSyntaxInfo ElementInfo ::= SEQUENCE { elementName [1] IMPLICIT InternationalString, elementTagPath [2] IMPLICIT Path, dataType [3] ElementDataType OPTIONAL, -- If omitted, not specified. required [4] IMPLICIT BOOLEAN, repeatable [5] IMPLICIT BOOLEAN, description [6] IMPLICIT HumanString OPTIONAL} -- Path is referenced by ElementInfo as well as PerElementDetails Path ::= SEQUENCE OF SEQUENCE{ tagType [1] IMPLICIT INTEGER, tagValue [2] StringOrNumeric} ElementDataType ::= CHOICE{ primitive [0] IMPLICIT PrimitiveDataType, structured [1] IMPLICIT SEQUENCE OF ElementInfo} PrimitiveDataType ::= INTEGER{ octetString (0), numeric (1), date (2), external (3), string (4), trueOrFalse (5), oid (6), intUnit (7), empty (8), noneOfTheAbove (100) -- see 'description' }TagSetInfo ::= SEQUENCE { commonInfo [0] IMPLICIT CommonInfo OPTIONAL, -- Key elements follow: tagSet [1] IMPLICIT OBJECT IDENTIFIER, -- non-key brief elements follow: name [2] IMPLICIT InternationalString, -- non-brief elements follow: description [3] IMPLICIT HumanString OPTIONAL, elements [4] IMPLICIT SEQUENCE OF SEQUENCE { elementname [1] IMPLICIT InternationalString, nicknames [2] IMPLICIT SEQUENCE OF InternationalString OPTIONAL, elementTag [3] StringOrNumeric, description [4] IMPLICIT HumanString OPTIONAL, dataType [5] PrimitiveDataType OPTIONAL, -- If the data type is expected to be structured, that is described in the schema info, -- and datatype is omitted here. otherTagInfo OtherInformation OPTIONAL} OPTIONAL}RecordSyntaxInfo ::= SEQUENCE { commonInfo [0] IMPLICIT CommonInfo OPTIONAL, -- Key elements follow: recordSyntax [1] IMPLICIT OBJECT IDENTIFIER, -- Non-key brief elements follow: name [2] IMPLICIT InternationalString, -- non-brief elements follow: transferSyntaxes [3] IMPLICIT SEQUENCE OF OBJECT IDENTIFIER OPTIONAL, description [4] IMPLICIT HumanString OPTIONAL, asn1Module [5] IMPLICIT InternationalString OPTIONAL, abstractStructure [6] IMPLICIT SEQUENCE OF ElementInfo OPTIONAL -- Omitting abstractStructure only means target isn't using -- Explain to describe the structure, not that there is no structure. }AttributeSetInfo ::= SEQUENCE { commonInfo [0] IMPLICIT CommonInfo OPTIONAL, -- Key elements follow: attributeSet [1] IMPLICIT AttributeSetId, -- non-key brief elements follow: name [2] IMPLICIT InternationalString, -- non-brief elements follow: attributes [3] IMPLICIT SEQUENCE OF AttributeType OPTIONAL, -- mandatory in full record description [4] IMPLICIT HumanString OPTIONAL}-- AttributeType referenced in AttributeSetInfo AttributeType ::= SEQUENCE { name [0] IMPLICIT InternationalString OPTIONAL, description [1] IMPLICIT HumanString OPTIONAL, attributeType [2] IMPLICIT INTEGER, attributeValues [3] IMPLICIT SEQUENCE OF AttributeDescription} AttributeDescription ::= SEQUENCE { name [0] IMPLICIT InternationalString OPTIONAL, description [1] IMPLICIT HumanString OPTIONAL, attributeValue [2] StringOrNumeric, equivalentAttributes [3] IMPLICIT SEQUENCE OF StringOrNumeric OPTIONAL -- each is an occurrence of 'attributeValue' from AttributeDescription for a -- different attribute. Equivalences listed here should be derived from the -- attribute set definition, not from a particular server's behavior. }TermListInfo ::= SEQUENCE{ commonInfo [0] IMPLICIT CommonInfo OPTIONAL, -- Key elements follow: databaseName [1] IMPLICIT DatabaseName, -- Non-key brief elements follow: termLists [2] IMPLICIT SEQUENCE OF SEQUENCE{ name [1] IMPLICIT InternationalString, title [2] IMPLICIT HumanString OPTIONAL, -- Title is for users to see and can differ by language. Name, on the -- other hand is typically a short string not necessarily meant to be -- human-readable, and not variable by language. searchCost [3] IMPLICIT INTEGER { optimized (0), -- The attribute (or combination) associated -- with this list will do fast searches. normal (1), -- The attribute (combination) will work as -- expected. So there's probably an index for the -- attribute (combination) or some similar -- mechanism. expensive (2), -- Can use the attribute (combination), but it -- might not provide satisfactory results. -- Probably there is no index, or post- -- processing of records is required. filter (3) -- can't search with this attribute (combination) alone. } OPTIONAL, scanable [4] IMPLICIT BOOLEAN, -- 'true' means this list can be scanned. broader [5] IMPLICIT SEQUENCE OF InternationalString OPTIONAL, narrower [6] IMPLICIT SEQUENCE OF InternationalString OPTIONAL -- broader and narrower list alternative term lists related to this one. -- The term lists so listed should also be in this termLists structure. } -- no non-brief elements }ExtendedServicesInfo ::= SEQUENCE { commonInfo [0] IMPLICIT CommonInfo OPTIONAL, -- Key elements follow: type [1] IMPLICIT OBJECT IDENTIFIER, -- Non-key brief elements follow: name [2] IMPLICIT InternationalString OPTIONAL, -- should be supplied if privateType is 'true' privateType [3] IMPLICIT BOOLEAN, restrictionsApply [5] IMPLICIT BOOLEAN, -- if 'true' see 'description' feeApply [6] IMPLICIT BOOLEAN, -- if 'true' see 'description' available [7] IMPLICIT BOOLEAN, retentionSupported [8] IMPLICIT BOOLEAN, waitAction [9] IMPLICIT INTEGER{ waitSupported (1), waitAlways (2), waitNotSupported (3), depends (4), notSaying (5)}, -- non-brief elements follow: -- To get brief plus 'description' use esn 'description' description [10] IMPLICIT HumanString OPTIONAL, -- to get above elements and 'specificExplain' use esn 'specificExplain' specificExplain [11] IMPLICIT EXTERNAL OPTIONAL, -- Use oid of specific ES, and select choice [3] 'explain'. Format -- to be developed in conjunction with the specific ES definition. -- to get all elements except 'specificExplain', use esn 'asn' esASN [12] IMPLICIT InternationalString OPTIONAL -- the ASN.1 for this ES }-- - - - - - - - - - - - - Detail records -- The detail records describe relationships among entities supported by the target. RetrievalRecordDetails describes -- the way that schema elements are mapped into record elements. This mapping may be different for each -- combination of database, schema, record syntax. The per-element details describe the default mapping. -- Origin-request re-tagging can change that mapping. When multiple databases are listed in a databaseNames -- element, the record applies equally to all of the listed databases. This is unrelated to searching the databases -- together. AttributeDetails describes how databases can be searched. Each supported attribute is listed, and the -- allowable combinations can be described.AttributeDetails ::= SEQUENCE { commonInfo [0] IMPLICIT CommonInfo OPTIONAL, -- Key elements follow: databaseName [1] IMPLICIT DatabaseName, -- Non-brief elements follow: attributesBySet [2] IMPLICIT SEQUENCE OF AttributeSetDetails OPTIONAL, -- mandatory in full record attributeCombinations [3] IMPLICIT AttributeCombinations OPTIONAL}-- AttributeSetDetails referenced by AttributeDetails AttributeSetDetails ::= SEQUENCE { attributeSet [0] IMPLICIT AttributeSetId, attributesByType [1] IMPLICIT SEQUENCE OF AttributeTypeDetails } AttributeTypeDetails ::= SEQUENCE { attributeType [0] IMPLICIT INTEGER, defaultIfOmitted [1] IMPLICIT OmittedAttributeInterpretation OPTIONAL, attributeValues [2] IMPLICIT SEQUENCE OF AttributeValue OPTIONAL } -- If no attributeValues are supplied, all values of this type are fully -- supported, and the descriptions in AttributeSetInfo are adequate. OmittedAttributeInterpretation ::= SEQUENCE { defaultValue [0] StringOrNumeric OPTIONAL, -- A default value is listed if that's how the server works defaultDescription [1] IMPLICIT HumanString OPTIONAL } -- The human-readable description should generally be provided. -- It is legal for both default elements to be missing, which -- means that the target will allow the attribute type to be -- omitted, but isn't saying what it will do. AttributeValue ::= SEQUENCE { value [0] StringOrNumeric, description [1] IMPLICIT HumanString OPTIONAL, subAttributes [2] IMPLICIT SEQUENCE OF StringOrNumeric OPTIONAL, superAttributes [3] IMPLICIT SEQUENCE OF StringOrNumeric OPTIONAL, partialSupport [4] IMPLICIT NULL OPTIONAL } -- partialSupport indicates that an attributeValue is accepted, but may not be processed in the -- "expected" way. One important reason for this is composite databases: in this case partialSupport -- may indicate that only some of the subDbs support the attribute, and others ignore it.TermListDetails ::= SEQUENCE{ -- one for each termList in TermListInfo commonInfo [0] IMPLICIT CommonInfo OPTIONAL, -- Key elements follow: termListName [1] IMPLICIT InternationalString, -- Non-key elements (all non-brief) follow: description [2] IMPLICIT HumanString OPTIONAL, attributes [3] IMPLICIT AttributeCombinations OPTIONAL, -- Pattern for attributes that hit this list. Mandatory in full record scanInfo [4] IMPLICIT SEQUENCE { maxStepSize [0] IMPLICIT INTEGER OPTIONAL,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -