DAP4 Web Services - StartingPoint: Difference between revisions

From OPeNDAP Documentation
⧼opendap2-jumptonavigation⧽
No edit summary
No edit summary
Line 16: Line 16:


In practice these have traditionally been implemented over HTTP. However they could just as easily be pushed over a different protocol, as long as the usage of the URL components remain consistent.  
In practice these have traditionally been implemented over HTTP. However they could just as easily be pushed over a different protocol, as long as the usage of the URL components remain consistent.  


== Required Responses ==
== Required Responses ==
Line 37: Line 35:
=== Data: The data response for the dataset. ===
=== Data: The data response for the dataset. ===


A Data response is the way DAP4 returns data to a client. Each Data response is returned over the wire as a multipart MIME document where the first MIME part contains the ''constrained'' Dataset response describing the data requested and the following MIME parts contain the data values, encoded using XDR, for each variable in the dataset.
A Data response is the way DAP4 returns data to a client. Each Data response is returned over the wire as a multipart MIME document where the first MIME part contains the ''constrained'' Dataset response describing the data requested and the following MIME parts contain the data values, encoded using XDR,  followed by a checksum, for each variable in the dataset.


More information on the Data response can be found on the [[DAP4:_Responses#Data_Response | DAP4: Responses]] page.
More information on the Data response can be found on the [[DAP4:_Responses#Data_Response | DAP4: Responses]] page.
Line 44: Line 42:
:<font size="2"><code>baseURL + '.dap' + [?dap_constraint]</code></font>
:<font size="2"><code>baseURL + '.dap' + [?dap_constraint]</code></font>


<!--
=== Data + Checksum: Pithy title referring to the checksum use case... ===
=== Data + Checksum: Pithy title referring to the checksum use case... ===


Line 52: Line 51:
The standard URL for this response is:  
The standard URL for this response is:  
:<font size="2"><code>baseURL + '.cdap' + [?dap_constraint]</code></font>
:<font size="2"><code>baseURL + '.cdap' + [?dap_constraint]</code></font>
 
-->
=== Service Description ===
=== Service Description ===



Revision as of 15:13, 20 March 2012

Protocol Independence

Proposal: The DAP4 data model and it's persistent (over-the-wire) representations are transport protocol agnostic. All of the information required by the DAP must be present in the content of the DAP requests and responses. The DAP won't uniquely embed information required by the DAP into HTTP Headers or AMQP thingys, or other whatnot.

Discussion:

  1. Does this matter? Is it something to strive for? Is it a Must? Is this just noise??
  2. Can the clients really make a request that's protocol independent?
  3. Would we need to add new syntax server-side functions etc. to the protocol to enable this?

Overview

This page describes the various web services that a DAP4 server must provide. These are for the most part REST services and as such are stateless unless noted otherwise.

The services are all defined as a modification of the service (aka resource or base) URL. This base URL essentially becomes a prefix (and could even be seen as a namespace) for all of the services available for that data resource.

In practice these have traditionally been implemented over HTTP. However they could just as easily be pushed over a different protocol, as long as the usage of the URL components remain consistent.

Required Responses

Dataset: The metadata

The Dataset response is an XML document containing a dap:Dataset object as it's root element. It contains the persistent DAP4: Data Model representation of the dataset held at the server. If a constraint expression has been successfully applied, the service will returned the constrained view of the dap:Dataset object. The constrained view may contain different data structures than the unconstrained view as the constraint may alter the reasonable representation of the data set.

Also: All dap:Attribute objects have been removed from constrained dap:Dataset objects.

More information on the Dataset response can be found on the DAP4: Responses page.

More information on the syntax of DAP4 constraint expressions can be found on DAP4: Data Model page.


The standard URL for this response is:

baseURL + '.xml' + [?dap_constraint]

Data: The data response for the dataset.

A Data response is the way DAP4 returns data to a client. Each Data response is returned over the wire as a multipart MIME document where the first MIME part contains the constrained Dataset response describing the data requested and the following MIME parts contain the data values, encoded using XDR, followed by a checksum, for each variable in the dataset.

More information on the Data response can be found on the DAP4: Responses page.

The standard URL for this response is:

baseURL + '.dap' + [?dap_constraint]

Service Description

The base URL for a data set accessed through a DAP4 web server will return a service document that describes the various responses possible for that data set, including URLs that can be used to access those responses.

More information on the Service Description response can be found on the DAP Service Terminus page.


The standard URL for this response is:

baseURL

Error

TBD

Suggested Responses

HTML

An HTML based Data Request Form for data constraints and access

The standard URL for this response is:

baseURL + '.html'

RDF

An RDF representation of the Dataset document.

The standard URL for this response is:

baseURL + '.rdf'

NC

NetCDF file-out response.

The standard URL for this response is:

baseURL + '.nc' + [?dap_constraint]


ISO 19115

ISO 19115 Metadata Representation of the Dataset document

The standard URL for this response is:

baseURL + '.iso'

ISO 19115 Conformance

ISO 19115 Metadata Representation conformance score for this dataset.

The standard URL for this response is:

baseURL + '.rubric'

FILE

Access to dataset file in it's native format. Typically this would be implemented as a runtime configurable option. No constraint expressions allowed.

The standard URL for this response is:

baseURL + '.file'

DAP2 Responses

DDX

DDS

DAS

INFO

HTML