Skip to content

Follow LinkedDataHub off the LDT and apps namespaces - #27

Open
namedgraph wants to merge 1 commit into
masterfrom
rename/dataspace-vocabulary-retire-ldt
Open

namedgraph wants to merge 1 commit into
masterfrom
rename/dataspace-vocabulary-retire-ldt

Conversation

@namedgraph

Copy link
Copy Markdown
Member

LinkedDataHub 6.0.0 retires https://www.w3.org/ns/ldt and renames its deployment-configuration ontology — AtomGraph/LinkedDataHub#394. Both are breaking for stored data as well as for stylesheets, and this repo carries both: every document in app/ and datasets/ is typed dh:Container or dh:Item, and the dataspace descriptions in config/ are typed and wired with lapp: and ldt: terms.

dh: moves host without changing shape

https://www.w3.org/ns/ldt/document-hierarchy# → https://w3id.org/atomgraph/linkeddatahub/document-hierarchy#

The dh: prefix and the Container, Item and slug local names are untouched, so across the 57 files holding app data, ETL mappings and SHACL shapes only the namespace string differs — the diff is one line per prefix declaration, not one per term.

lapp: becomes lds:

https://w3id.org/atomgraph/linkeddatahub/apps# → https://w3id.org/atomgraph/linkeddatahub/dataspaces#

  • config/dataspaces.trig and config/system.trig type their dataspaces lds:Dataspace, lds:EndUserDataspace, lds:AdminDataspace and wire them with lds:origin, lds:ontology, lds:service
  • ldt:ontology and ldt:service move into that same vocabulary, so each config file now needs one prefix where it needed two
  • files/layout.xsl: lapp:origin() → lds:origin(), and the footer's $ldt:base — a parameter LinkedDataHub retired before this change — → lds:base()

The client SEF path from #26 is untouched; this only moves the function names.

Verification

  • files/layout.xsl compiles under Saxon-HE Java and files/client.xsl exports to SEF, both against a LinkedDataHub tree built from the rename. The SSR check has to go through Saxon-HE: SaxonJS cannot compile the server-side stylesheet, because the use-when duals leave ac:langs() undefined for it.
  • All 58 Turtle, TriG and SPARQL files in this commit parse with riot and qparse.

Not in this PR

  • files/client.xsl.sef.json still needs rebuilding. It is untracked build output, and make sef has to run against a LinkedDataHub image that carries the rename — rebuilding it against the current published image would bake the old namespaces back in.
  • Nine files with uncommitted local work are deliberately left out, so this branch is only the rename: CLAUDE.md, Makefile, README.md, app/.ldhignore, app/import-ns.sh, app/install.sh, the app/update-folder.sh deletion, docker-compose.override.yml, and the bin/make-public.sh comment reword. Where the rename touched those files it touched text that is itself uncommitted — CLAUDE.md's $ldt:base gotcha, for instance — so those touch-ups will ride along when that work is committed. bin/make-public.sh is the one exception: its dh: prefix line is committed here, its comment reword is not.
  • Merged master (Serve the client SEF from static/lt/linkeddata/ instead of static/com/ltlod/ #26) is included — this branch is a fast-forward from bde764d.

🤖 Generated with Claude Code

LinkedDataHub 6.0.0 retires https://www.w3.org/ns/ldt and renames its
deployment-configuration ontology (AtomGraph/LinkedDataHub#394). Both are
breaking for data as well as for stylesheets, and this repo carries both: every
document in app/ and datasets/ is typed dh:Container or dh:Item, and the
dataspace descriptions in config/ are typed and wired with lapp: and ldt: terms.

The document-hierarchy namespace moves host without changing shape -
www.w3.org/ns/ldt/document-hierarchy# becomes
w3id.org/atomgraph/linkeddatahub/document-hierarchy#. The dh: prefix and the
Container, Item and slug local names are untouched, so in the 57 files that
carry app data, ETL mappings and SHACL shapes only the namespace string differs.

lapp: becomes lds: and .../linkeddatahub/apps# becomes
.../linkeddatahub/dataspaces#, so config/dataspaces.trig and config/system.trig
type their dataspaces lds:Dataspace, lds:EndUserDataspace and lds:AdminDataspace
and wire them with lds:origin, lds:ontology and lds:service. ldt:ontology and
ldt:service move into the same vocabulary, which leaves each config file with one
prefix where it had two.

files/layout.xsl follows the prefix: lapp:origin() is lds:origin(), and the
footer's $ldt:base - a parameter LinkedDataHub retired before this - is
lds:base(). The client SEF path from #26 is unchanged; only the function names
move.

Verified: layout.xsl compiles under Saxon-HE Java and client.xsl exports to SEF,
both against a LinkedDataHub tree built from the rename, and all 58 Turtle, TriG
and SPARQL files in this commit parse with riot and qparse.

The compiled files/client.xsl.sef.json is untracked build output and still has to
be rebuilt with `make sef` against a LinkedDataHub image carrying the rename.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant