Skip to content

Repository files navigation

corese-w3c

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.

Conformance Dashboard

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.

Supported W3C Specifications

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.

Running Tests

Execute all W3C test suites

./gradlew test

Running ./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-daemon

The 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.

Execute a specific test suite

# 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*"

Exclusions Policy

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).

About

W3C Semantic Web standards conformance test suite and live dashboard for Corese.

Topics

Resources

Stars

0 stars

Watchers

3 watching

Forks

Releases

Packages

Contributors

Languages