Skip to content

Commit 1244a86

Browse files
committed
Update README
1 parent 3314298 commit 1244a86

File tree

2 files changed

+20
-17
lines changed

2 files changed

+20
-17
lines changed

README.md

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22

33
[![Build and tests with Node.js](https://github.com/rdf-connect/sparql-ingest-processor-ts/actions/workflows/build-test.yml/badge.svg)](https://github.com/rdf-connect/sparql-ingest-processor-ts/actions/workflows/build-test.yml) [![npm](https://img.shields.io/npm/v/@rdfc/sparql-ingest-processor-ts.svg?style=popout)](https://npmjs.com/package/@rdfc/sparql-ingest-processor-ts)
44

5-
TypeScript [RDF-Connect](https://rdf-connect.github.io/rdfc.github.io/) processor for ingesting [SDS records](https://treecg.github.io/SmartDataStreams-Spec/) into a SPARQL endpoint.
5+
TypeScript [RDF-Connect](https://rdf-connect.github.io/rdfc.github.io/) processor for ingesting [SDS records](https://treecg.github.io/SmartDataStreams-Spec/) or in general, a stream of RDF quads into a SPARQL endpoint.
66

7-
This processor takes a stream of RDF records, transforms them into [SPARQL Update](https://www.w3.org/TR/sparql11-update/) queries, and executes them against a SPARQL Graph Store via the [SPARQL Protocol](https://www.w3.org/TR/sparql11-protocol/).
8-
It supports `INSERT DATA`, `DELETE INSERT WHERE`, and `DELETE WHERE` queries, configurable through change semantics or SDS record content.
7+
This processor takes a stream of RDF records, transforms them into corresponding [SPARQL Update](https://www.w3.org/TR/sparql11-update/) queries, and executes them against a SPARQL Graph Store via the [SPARQL Protocol](https://www.w3.org/TR/sparql11-protocol/).
8+
It supports `INSERT DATA`, `DELETE INSERT WHERE`, and `DELETE WHERE` queries, configurable through change semantics or SDS record content. It also supports direct quad ingestion via the SPARQL Graph Store Protocol.
99

1010
---
1111

@@ -46,8 +46,7 @@ npm install @rdfc/sparql-ingest-processor-ts
4646
<ingester> a rdfc:SPARQLIngest;
4747
rdfc:memberStream <in>;
4848
rdfc:ingestConfig [
49-
rdfc:memberIsGraph false;
50-
rdfc:memberShape "http://ex.org/Shape1", "http://ex.org/Shape2";
49+
rdfc:memberShape "http://ex.org/Shape";
5150
rdfc:changeSemantics [
5251
rdfc:changeTypePath "http://ex.org/changeType";
5352
rdfc:createValue "http://ex.org/Create";
@@ -60,7 +59,14 @@ npm install @rdfc/sparql-ingest-processor-ts
6059
rdfc:transactionEndPath "http://ex.org/transactionEnd"
6160
];
6261
rdfc:graphStoreUrl "http://example.org/sparql";
63-
rdfc:forVirtuoso false
62+
rdfc:forVirtuoso false;
63+
rdfc:accessToken "myAccessToken";
64+
rdfc:measurePerformance [
65+
rdfc:name "myPerformanceMeasurement";
66+
rdfc:outputPath "/path/to/output.json";
67+
rdfc:failureIsFatal true;
68+
rdfc:queryTimeout 30000
69+
]
6470
];
6571
rdfc:sparqlWriter <out>.
6672
```
@@ -77,13 +83,12 @@ npm install @rdfc/sparql-ingest-processor-ts
7783
---
7884

7985
### Parameters of `rdfc:IngestConfig`:
80-
- `rdfc:memberIsGraph` (**boolean**, required): Whether each SDS record represents a named graph.
81-
- `rdfc:memberShape` (**string**, optional, repeatable): SHACL shape identifiers used to guide query construction when payloads are incomplete.
86+
- `rdfc:memberShape` (**string**, optional): SHACL shape used to guide query construction when payloads are incomplete.
8287
- `rdfc:changeSemantics` (**rdfc:ChangeSemantics**, optional): Configures mapping between change types (create/update/delete) and SPARQL operations.
83-
- `rdfc:targetNamedGraph` (**string**, optional): Force all operations into a specific named graph (ignored if `memberIsGraph = true`).
88+
- `rdfc:targetNamedGraph` (**string**, optional): Force all operations into a specific named graph.
8489
- `rdfc:transactionConfig` (**rdfc:TransactionConfig**, optional): Groups records by transaction ID for atomic updates.
8590
- `rdfc:graphStoreUrl` (**string**, optional): SPARQL Graph Store endpoint URL.
86-
- `rdfc:forVirtuoso` (**boolean**, optional): Enables Virtuoso-specific handling.
91+
- `rdfc:forVirtuoso` (**boolean**, optional): Enables Virtuoso-specific handling to avoid query size limits.
8792
- `rdfc:accessToken` (**string**, optional): Access token for authenticated graph stores.
8893
- `rdfc:measurePerformance` (**rdfc:PerformanceConfig**, optional): Enables performance measurement of SPARQL queries.
8994

@@ -117,7 +122,6 @@ npm install @rdfc/sparql-ingest-processor-ts
117122
<ingester> a rdfc:SPARQLIngest;
118123
rdfc:memberStream <in>;
119124
rdfc:ingestConfig [
120-
rdfc:memberIsGraph true;
121125
rdfc:targetNamedGraph "http://example.org/targetGraph";
122126
rdfc:graphStoreUrl "http://example.org/sparql"
123127
];
@@ -128,8 +132,7 @@ npm install @rdfc/sparql-ingest-processor-ts
128132

129133
## Notes
130134

131-
- Delete operations can be handled differently depending on how complete the SDS record payload is.
132-
- When `memberIsGraph = true`, queries are wrapped with `GRAPH` and `WITH` clauses.
133-
- Transactions can buffer multiple SDS records and commit them together using `rdfc:transactionConfig`.
134-
- SHACL shapes (`rdfc:memberShape`) can be provided to help identify deletion targets when payloads are incomplete.
135+
- Delete operations can be handled differently depending on how complete the input record is.
136+
- Transactions can buffer multiple input records and commit them together using `rdfc:transactionConfig`.
137+
- A SHACL shape (`rdfc:memberShape`) can be provided to help identify deletion targets when payloads are incomplete.
135138

bun.lock

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)