content-explorer/connectors/AUTHORING.md
tegwick f8c94d3272
All checks were successful
synthetic / suite (push) Successful in 56s
Finish the computing-basics pilot and the local OnCo reference slice.
The single-operator pilot keeps static projection. Local OnCo use requires a CC BY-NC origin notice, and the slice stays out of public CI.

Assistant: grok
Assistant-Session: 01a15378-f601-7fe2-a143-8e1500a1d59c
2026-10-19 13:04:55 +02:00

2.1 KiB

Connector authoring

A connector maps one source format to candidate records, then calls project_records and publish_directory in content_explorer/ingest.py. It does not render and it does not import UI code. Native source identifiers are aliases on urn:ce: ids. Publication stays fail-closed: a forbidden license, an unresolved reference, or an identity conflict returns no snapshot.

Certify a connector with a pinned local file, not a live API:

  1. An accepted run publishes a snapshot, a manifest, and both import reports. Every claim cites a source whose license is CC0-1.0, CC-BY-4.0, or MIT.
  2. A refused run (forbidden rights, unresolved reference, or identity conflict) publishes no snapshot.
  3. Replaying the same file yields the same entity set.
  4. A changed file refreshes the snapshot. The report records the connector version, the input digest, and the counts.

connectors/wikidata_export.py and tests/test_wikidata_connector.py are the worked example. The input is examples/sources/wikidata/computing-basics.json.

Update and governance

The repository owner refreshes a pinned source. A new source needs a license review before activation, and the review names the license, the attribution duties, and whether publish_directory may write it under examples/. CC-BY-NC-4.0 stays out of that allowlist.

Wikidata computing-basics is CC0. Refresh it by replacing examples/sources/wikidata/computing-basics.json with a new pinned export, then rerun the connector tests. The import report keeps the connector version and the input digest.

The OnCo reference slice is a separate adapter, connectors/onco_reference.py. It writes only under tests/onco-reference/local/ after tests/onco-reference/authorization.json grants local use and refuses redistribution and public CI. The owner of that file is the repository owner. The slice is not a published dataspace. Pages that render it show the CC BY-NC origin notice from the source record: attribution, license link, material link, retrieval date, origin SHA, non-commercial mark, and modification notice.