Websocket Streaming

Websocket streaming concerns SPARQL queries which are executed in through interaction with a Websocket connection. The connection is established through an initial WS/HTTP request. This “upgrades” the connection to a websocket connection, after which it is retained for successive request/response exchanges.

These can be either synchronic requests - that is targeting a single repository version, or they can be diachronic requests over a version window. Each requst is accompanied with the requisite HTTP request headers and each response frame includes the corresponding response headers.

executed immediately to yield the completion code, but instead are queued for subsequent, serialized execution and notification through a separate request to an external location.

The request headers Location``and  ``Content-Disposition govern destination for responses.

mode

effect

notify

The request is executed asynchronously returning a 204 status, the task identifier and any user id

execute

The request is executed immediately with the status and the result returned as response

Websocket Request Form

The initial request takes the form of an HTTP request object which upgrades the connection to a websocket. This includes the minimal authentication information and carries client location information.

Subsequent requests carry a content disposition

Authorization

The client authentication header to be used to execute the asynchronous import.

Client-Request-ID

The client request id to be reported with the notification request.

Content-Disposition

The client socket identifier to route responses to websocket destinations.

Content-Type

The content type to be used to execute the asynchronous import.

Context

The graph to be used to execute the asynchronous import. For a POST request, this will have been generated if none was provided

Location

The client socket identifier to mark the created websocket as a response destination.

Request-ID

The task id from the initial request to be used to track the asynchronous execution.

Revision-Windows

An ISO-8601 temporal interval which indicates how to reiterate the query in order to generate a sequence of respones. (See Revision Window Specification .)