A qsac is created by PUTing RDF metadata to the SAC's intended URL, as described in the SAC interface documentation. The metadata uploaded here is unconstrained, but will most typically include Dublin Core information about the SAC's purpose, maintainer, and so on.
The SAC metadata may also be used to configure the SAC, by making additional assertions about the SAC URI. In the following documentation, the following prefix declaration is assumed:
@prefix quaestor: <http://ns.eurovotech.org/quaestor#>.
For example, a SAC, named by a URI you decide, might be created and set up for delegation by PUTting the following metadata to the URI for the new SAC:
@prefix dc: <http://purl.org/dc/elements/1.1/>. @prefix quaestor: <http://ns.eurovotech.org/quaestor#>. <> dc:description "My SAC"; quaestor:delegatesTo <http://foo/myothersac>.
When the metadata is being parsed, the base URI is always taken to
be the name of the SAC being created. Thus, as in this example, you
may always refer to the SAC itself by the resource
<>, or about="" in RDF/XML syntax.
SACs support a simple form of query delegation.
A SAC can be configured, using the property
quaestor:delegatesTo,
to forward queries to another SAC.
The delegation is rather simple-minded. If the metadata of a
SAC A includes a triple of the form <A>
quaestor:delegatesTo <B>, then when a query is made
against SAC A, the same query is made
against B (and against any other objects of the same property
relation) and the results of the queries against A and
B are concatenated. This works adequately if the
SACs have similar and independent information, but it fails
to answer queries where the relevant triples are in the union of the
SACs A and B, but not in either
SAC separately.
Depending on its (server-side) configuration, the claims in a SAC
may or may not be persistent, and persist beyond server restarts.
Typically, however, multi-SACs are configured to make the SACs they
contain persistent ones. If you need to override this, and force a
SAC to be non-persistent (perhaps for testing reasons), then you
should use the SAC metadata to declare that the SAC is a
quaestor:TransientModel, by including a statement such as
the following in the SAC metadata:
@prefix quaestor: <http://ns.eurovotech.org/quaestor#>. <> a quaestor:TransientModel.