3.3.2 Record: ServerCapabilities
Topic Version | 1 | Published | 10/31/2016 | |
For Standard | ETP v1.1 |
Record describing the capabilities of a server. This record, though described in Avro, is not part of any ETP message. It simply describes the content of the JSON object that is used for pre-session server discovery.
Avro Schema |
---|
{ "type": "record", "namespace": "Energistics.Datatypes", "name": "ServerCapabilities", "fields": [ { "name": "applicationName", "type": "string" }, { "name": "applicationVersion", "type": "string" }, { "name": "supportedProtocols", "type": { "type": "array", "items": "Energistics.Datatypes.SupportedProtocol" } }, { "name": "supportedObjects", "type": { "type": "array", "items": "string" } }, { "name": "contactInformation", "type": "Energistics.Datatypes.Contact" }, { "name": "supportedEncodings", "type": "string" } ] } |
Attribute |
Description |
Data Type |
Min |
Max |
---|---|---|---|---|
applicationName |
The string by which the server identifies itself. This MAY or MAY NOT include a version, and is entirely application dependent. Vendors are encouraged to identify their company name as part of this string. |
string |
1 |
1 |
applicationVersion |
string |
1 |
1 |
|
supportedProtocols |
An array of identifiers of the subprotocols supported by the server. |
SupportedProtocol |
1 |
n |
supportedObjects |
A list of objects that are supported for any of the object protocols (discovery, store, etc.) supported by this server. The form of the list is an array of strings, where each value is a contentType as described in the Energistics Identifier Specification (and serialized as JSON). For example: "supportedObjects": [ "application/x-witsml+xml;version=2.0;type=Well", "application/x-witsml+xml;version=2.0;type=Wellbore", "application/x-witsml+xml;version=2.0;type=Channel", "application/x-witsml+xml;version=2.0;type=Trajectory", "application/x-witsml+xml;version=2.0;type=part_TrajectoryStation", "application/x-prodml+xml;version=2.0;type=WellTest", "application/x-resqml+xml;version=2.0;type=TectonicBoundaryFeature" ], Note that the Identifier Specification states: the contentType specifies both the schema family and version. If multiple versions are supported by the server, it includes a list of contentTypes for each version. As a special case, type=* can be used to specify that an entire schema release is supported. The following are examples of Well and Wellbore objects from WITSML v1.4.1.1 and WITSML v2.0; the WellTest object from PRODML v2.0; all objects in RESQML v2.0.1; and a TLO (an activity) from Energistics common v2.1. "supportedObjects": [ "application/x-witsml+xml;version=1.4.1.1;type=well", "application/x-witsml+xml;version=1.4.1.1;type=wellbore", "application/x-witsml+xml;version=2.0;type=Well", "application/x-witsml+xml;version=2.0;type=Wellbore", "application/x-prodml+xml;version=2.0;type=WellTest", "application/x-resqml+xml;version=2.0.1;type=*" ] "application/x-eml+xml;version=2.1;type=Activity” |
string |
1 |
n |
contactInformation |
Contact information for this server. |
Contact |
1 |
1 |
supportedEncodings |
Supported encodings for the server can be:
|
string |
1 |
1 |