Metreeca Wire
    Preparing search index...
    • Creates a Repository backed by an RDF4J REST API endpoint.

      Brackets every execute task in a server-managed RDF4J transaction, committed when the task completes and rolled back if it throws or any transactional operation fails.

      Operations issued outside an enclosing execute task are dispatched to the canonical SPARQL 1.1 Protocol endpoints (/repositories/{id} for query, /repositories/{id}/statements for update) by delegating to a createHTTPRepository instance, so a one-off ask / update does not pay the start-and-commit roundtrip cost.

      Important

      Transaction Isolation — Determined by the target RDF4J repository.

      Error handling — every HTTP exchange is funnelled through createFetch, so:

      • Network failures (DNS, refused connection, TLS, abort) reject with a Problem carrying status: 0
      • Non-2xx responses reject with a Problem carrying the wire status, the response statusText as detail, and the parsed body (RFC 7807 JSON, plain text, or omitted) as report
      • Malformed JSON in a 2xx ask/select response rejects with a synthesised Problem carrying the response status and a parse-failure detail
      • A 2xx construct response whose Content-Type is not N-Triples rejects with a synthesised Problem
      • A missing Location header on the start-transaction response rejects with a synthesised Problem
      • A malformed result payload surfaces the decoder's own error: a SyntaxError for ill-formed N-Triples, or a RangeError for an unexpected SPARQL Results JSON term

      Rollback (DELETE on the transaction URL) is best-effort: a network or 5xx failure on rollback is swallowed so the original task error propagates; without best-effort handling a transient network glitch on the rollback would mask the real cause of the task failure.

      Parameters

      • options: {
            server: string;
            repository: string;
            fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
        }

        Server URL and repository identifier

        • Readonlyserver: string

          RDF4J Server base URL, for example http://localhost:8080/rdf4j-server

        • Readonlyrepository: string

          Repository identifier within the RDF4J Server instance

        • Optional Readonlyfetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>

          Custom fetch implementation used for every HTTP exchange, enabling header, auth, and exchange customisation; defaults to the global fetch

      Returns Repository

      A Repository instance