📄 z3950v3.asn
字号:
pdtdate (2), pdtexternal (3), pdtstring (4), pdttrueOrFalse (5), pdtoid (6), pdtintUnit (7), pdtempty (8), pdtnoneOfTheAbove (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, collatingSequence [1] IMPLICIT HumanString OPTIONAL, increasing [2] IMPLICIT BOOLEAN OPTIONAL} OPTIONAL, -- Occurs only if list is scanable. If list is scanable and if scanInfo is omitted, -- target doesn't consider these important. estNumberTerms [5] IMPLICIT INTEGER OPTIONAL, sampleTerms [6] IMPLICIT SEQUENCE OF Term OPTIONAL}ElementSetDetails ::= SEQUENCE { -- ElementSetDetails describes the way that database records are mapped to record elements. This -- mapping may be different for each combination of database name and element set. The database record -- description is a schema, which may be private to the target. The schema's abstract record structure -- and tag sets provide the vocabulary for discussing record content; their presence in the Explain -- database does not imply support for complex retrieval specification. commonInfo [0] IMPLICIT CommonInfo OPTIONAL, -- Key elements follow: databaseName [1] IMPLICIT DatabaseName, elementSetName [2] IMPLICIT ElementSetName, recordSyntax [3] IMPLICIT OBJECT IDENTIFIER, -- Non-key Brief elements follow: schema [4] IMPLICIT OBJECT IDENTIFIER, -- Non-brief elements follow: description [5] IMPLICIT HumanString OPTIONAL, detailsPerElement [6] IMPLICIT SEQUENCE OF PerElementDetails OPTIONAL -- mandatory in full record }RetrievalRecordDetails ::= SEQUENCE { commonInfo [0] IMPLICIT CommonInfo OPTIONAL, -- Key elements follow: databaseName [1] IMPLICIT DatabaseName, schema [2] IMPLICIT OBJECT IDENTIFIER, recordSyntax [3] IMPLICIT OBJECT IDENTIFIER, -- Non-brief elements follow: description [4] IMPLICIT HumanString OPTIONAL, detailsPerElement [5] IMPLICIT SEQUENCE OF PerElementDetails OPTIONAL -- mandatory in full record }-- PerElementDetails is referenced in RetrievalRecordDetails and ElementSetDetails. PerElementDetails ::= SEQUENCE { name [0] IMPLICIT InternationalString OPTIONAL, -- If the name is omitted, the record syntax's name for this element -- is appropriate. recordTag [1] IMPLICIT RecordTag OPTIONAL, -- The record tag may be omitted if tags are inappropriate for the record -- syntax, or if the origin can be expected to know it for some other reason. schemaTags [2] IMPLICIT SEQUENCE OF Path OPTIONAL, -- The information from the listed schema elements is combined -- in some way to produce the data sent in the listed record tag. The -- 'contents' element below may describe the logic used. maxSize [3] IMPLICIT INTEGER OPTIONAL, minSize [4] IMPLICIT INTEGER OPTIONAL, avgSize [5] IMPLICIT INTEGER OPTIONAL, fixedSize [6] IMPLICIT INTEGER OPTIONAL, repeatable [8] IMPLICIT BOOLEAN, required [9] IMPLICIT BOOLEAN, -- 'required' really means that target will always supply the element. description [12] IMPLICIT HumanString OPTIONAL, contents [13] IMPLICIT HumanString OPTIONAL, billingInfo [14] IMPLICIT HumanString OPTIONAL, restrictions [15] IMPLICIT HumanString OPTIONAL, alternateNames [16] IMPLICIT SEQUENCE OF InternationalString OPTIONAL, genericNames [17] IMPLICIT SEQUENCE OF InternationalString OPTIONAL, searchAccess [18] IMPLICIT AttributeCombinations OPTIONAL } -- RecordTag referenced in PerElementDetails above RecordTag ::= SEQUENCE { qualifier [0] StringOrNumeric OPTIONAL, -- E.g. tag set for GRS-1 tagValue [1] StringOrNumeric}SortDetails ::= SEQUENCE { commonInfo [0] IMPLICIT CommonInfo OPTIONAL, -- Key elements follow: databas
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -