W3C standards conformance test suite and dynamic execution harness for Corese.
Tests are dynamically loaded from official W3C manifests and executed against Corese using JUnit 5 Dynamic Tests.
The live interactive W3C conformance dashboard and benchmark reports are published at: https://corese-stack.github.io/corese-w3c/
Key dashboard features:
- Interactive KPI cards and specification breakdown.
- Instant search across all 2,900+ test cases (press
/to focus). - Deep-linking via URL hash state (
#suite=...&status=...&q=...&test=...). - EARL 1.0 Turtle and JSON report downloads.
- 3-state theme toggle (Auto, Light, Dark) without tracking cookies.
| Specification | W3C Test Suite Manifest | Test Types Covered |
|---|---|---|
| Turtle (RDF 1.1) | Turtle Test Suite | Positive/Negative Syntax, Positive Evaluation |
| TriG (RDF 1.1) | TriG Test Suite | Positive/Negative Syntax, Positive Evaluation |
| RDF/XML (RDF 1.1) | RDF/XML Test Suite | Positive/Negative Syntax, Positive Evaluation |
| N-Triples (RDF 1.1) | N-Triples Test Suite | Positive/Negative Syntax, Positive Evaluation |
| N-Quads (RDF 1.1) | N-Quads Test Suite | Positive/Negative Syntax, Positive Evaluation |
| RDFC-1.0 (Canonicalization) | RDF-Canon Test Suite | Canonical Evaluation, Map Tests, Negative Evaluation |
| RDFa 1.1 (XHTML, XML, SVG) | RDFa Test Suite | XHTML, XML, and SVG Evaluation |
JSON-LD 1.1 (toRdf & fromRdf) |
JSON-LD 1.1 Test Suite | toRdf and fromRdf Syntax and Evaluation |
| SPARQL 1.0 | SPARQL 1.0 Test Suite | Query Evaluation (SELECT, ASK, CONSTRUCT, DESCRIBE), Positive/Negative Syntax |
| SPARQL 1.1 | SPARQL 1.1 Test Suite | Query Evaluation, Syntax, Update Evaluation, CSV Results |
Documented Test Exclusions & Rationale: All documented exclusions (e.g. non-standard Generalized RDF or upstream dependency edge-cases) are formally specified in
docs/W3C_TEST_EXCLUSIONS.md.
./gradlew testRunning ./gradlew test executes all supported W3C suites and displays the consolidated terminal conformance summary table. It also generates and validates two reports from the same in-memory result model:
build/reports/w3c-report.json, the stable dashboard contract;build/reports/earl-report.ttl, an RDF report based on the W3C EARL 1.0 vocabulary with PROV-O provenance.
EARL 1.0 is a W3C Working Group Note, not a W3C Recommendation. The Turtle graph is constructed and serialized with Corese, parsed again by Corese, and checked with Corese SPARQL queries. Run the standalone verification after the tests with:
./gradlew validateEarlReport --no-daemonThe dashboard's passRate is passed / total official manifest entries. executedPassRate is passed / (passed + failed) and is null when no test was executed. Inapplicable, untested, and cannot-tell outcomes are displayed separately and are never counted as passes.
See the EARL application profile for the exact model, provenance, validation, and identifier rules.
# Example: Run Turtle test suite only
./gradlew test --tests "*TurtleDynamicTest*"
# Example: Run Canonicalization test suite only
./gradlew test --tests "*CanonicalDynamicTest*"
# JSON-LD 1.1 fromRdf (RDF to JSON-LD) tests
./gradlew test --tests "*Rdf11JsonldFromRdfDynamicTest*"
# All JSON-LD tests
./gradlew test --tests "*Jsonld*"
# RDFa 1.1 XHTML tests
./gradlew test --tests "*Rdf11RDFaXHTMLDynamicTest*"
# RDFa 1.1 XML tests
./gradlew test --tests "*Rdf11RDFaXMLDynamicTest*"
# RDFa 1.1 SVG tests
./gradlew test --tests "*Rdf11RDFaSVGDynamicTest*"
# All RDFa tests
./gradlew test --tests "*RDFa*"
# SPARQL 1.0 tests
./gradlew test --tests "*Sparql10DynamicTest*"
# SPARQL 1.1 tests
./gradlew test --tests "*Sparql11DynamicTest*"To ensure high scientific integrity and transparency, no test is skipped silently. All exclusions are documented with exact fragment identifiers and reactivation conditions in docs/W3C_TEST_EXCLUSIONS.md:
- Inapplicable Tests: features outside the RDF 1.1 profile (e.g. generalized RDF blank nodes, unapproved SPARQL 1.1 draft tests).
- Untested Tests: isolated upstream dependency edge-cases (Titanium JSON-LD 1.6.0, composite RDFa fixtures).
- Cannot Tell Tests: actively executed tests with upstream manifest expectation discrepancies (
cast-decimal).