Warning: These documents are under active
development and subject to change (version 2.1.0-beta).
The latest release documents are at:
https://purl.dataone.org/architecture
Versions
Quick Reference
v1_1.Types.
QueryEngineDescription
¶Describes a query engine that can be used to search content on the node. Query engines may be general purpose or specialized for particular communities or domains.
queryEngineVersion
¶Type: xs.string
The version of the underlying query engine. Used by clients to determine possible compatibility concerns or features available.
additionalInfo
¶Type: Types.NonEmptyString
An optional human readable description of the query engine. This can be used to describe any special capabilities or intended uses for the query engine. For example, a query engine may be tuned to suit a particular audience or domain as opposed to providing a general purpose discovery mechanism.
This field may also contain links to additional information about the query engine, such as documentation for the search syntax provided by the query engine implemntors.
queryField
¶Type: v1_1.Types.QueryField
A list of query fields supported by the query engine.
<xs:complexType xmlns:xs="http://www.w3.org/2001/XMLSchema" name="QueryEngineDescription">
<xs:sequence>
<xs:element name="queryEngineVersion" type="xs:string" minOccurs="1" maxOccurs="1">
</xs:element>
<xs:element name="querySchemaVersion" type="xs:string" minOccurs="0" maxOccurs="1">
</xs:element>
<xs:element name="name" type="xs:string" minOccurs="1" maxOccurs="1">
</xs:element>
<xs:element name="additionalInfo" type="d1:NonEmptyString" minOccurs="0" maxOccurs="unbounded">
</xs:element>
<xs:element name="queryField" type="d1_v1.1:QueryField" minOccurs="0" maxOccurs="unbounded">
</xs:element>
</xs:sequence>
</xs:complexType>
v1_1.Types.
QueryEngineList
¶A list of query engine names that indicate the possible values for CNRead.getQueryEngineDescription and CNRead.query REST API endpoints.
queryEngine
¶Type: Types.NonEmptyString
The name of a queryEngine. This value will be used as a path element in REST API calls and so should not contain characters that will need to be escaped.
<xs:complexType xmlns:xs="http://www.w3.org/2001/XMLSchema" name="QueryEngineList">
<xs:sequence>
<xs:element name="queryEngine" type="d1:NonEmptyString" minOccurs="0" maxOccurs="unbounded">
</xs:element>
</xs:sequence>
</xs:complexType>
v1_1.Types.
QueryField
¶name
¶Type: Types.NonEmptyString
The name of the field as used programmatically when constructing queries or other rferences to the field.
description
¶Type: xs.string
An optional, repeatable, brief description of the field that can be used to help guide developers or end users in appropriate use of the field. May for example, contain a links to additional documentation.
type
¶Type: Types.NonEmptyString
The type of the field, expressed in the language peculiar to the query engine being described.
searchable
¶Type: xs.boolean
Indicates if the field may be used in constructing queries (as opposed to only appearing in results)
returnable
¶Type: xs.boolean
Indicates if the field values may be returned in search results.
sortable
¶Type: xs.boolean
Indicates if the field can be used for sorting results.
multivalued
¶Type: xs.boolean
Indicates if the field may contain multiple values. Some query engines such as SOLR support this capability.
<xs:complexType xmlns:xs="http://www.w3.org/2001/XMLSchema" name="QueryField">
<xs:sequence>
<xs:element name="name" type="d1:NonEmptyString" minOccurs="1" maxOccurs="1">
</xs:element>
<xs:element name="description" type="xs:string" minOccurs="0" maxOccurs="unbounded">
</xs:element>
<xs:element name="type" type="d1:NonEmptyString" minOccurs="1" maxOccurs="1">
</xs:element>
<xs:element name="searchable" type="xs:boolean" minOccurs="1" maxOccurs="1">
</xs:element>
<xs:element name="returnable" type="xs:boolean" minOccurs="1" maxOccurs="1">
</xs:element>
<xs:element name="sortable" type="xs:boolean" minOccurs="1" maxOccurs="1">
</xs:element>
<xs:element name="multivalued" type="xs:boolean" minOccurs="0" maxOccurs="1">
</xs:element>
</xs:sequence>
</xs:complexType>