Skip to content

feat(metadata): Spalten-Metadaten (CSVW) im JSON-LD (PR8)#44

Merged
lepy merged 1 commit into
masterfrom
feat/metadata-column-jsonld
Jun 26, 2026
Merged

feat(metadata): Spalten-Metadaten (CSVW) im JSON-LD (PR8)#44
lepy merged 1 commit into
masterfrom
feat/metadata-column-jsonld

Conversation

@lepy

@lepy lepy commented Jun 26, 2026

Copy link
Copy Markdown
Owner

Qualifiziert tabellarische Daten vollständig: die per-Spalten-Metadaten eines DataFrame (Einheit/Label/dtype je Spalte) erscheinen jetzt als geordnete csvw:column-Liste im JSON-LD/RDF/Sidecar.

Änderungen

  • vocab.py: csvw-Namespace + Terme columns (csvw:column, @list) und datatype (csvw:datatype).
  • semantic.py: column_node(attr){name, datatype(xsd), unitRef/symbol, label, description}; to_jsonld(columns=) ergänzt die geordnete Spaltenliste; rdf_from_doc()/write_sidecar_doc() serialisieren ein vorgefertigtes Doc.
  • sclass/dataframe.py: to_jsonld/to_turtle/write_sidecar überschrieben — Spalten in echter df-Reihenfolge (nicht alphabetisch).

Beispiel

"columns": [
  {"name":"force","datatype":"xsd:double","unitRef":"unit:KiloN","symbol":"kN","label":"Force"},
  {"name":"n","datatype":"xsd:integer"},
  {"name":"label","datatype":"xsd:string"}
]

Tests/Coverage

tests/test_semantic_columns.py. 465 passed, 9 skipped, Coverage 100 %.

Qualifiziert tabellarische Daten vollständig: die per-Spalten-Metadaten eines
DataFrame (Einheit/Label/dtype je Spalte) werden als geordnete csvw:column-Liste
in den JSON-LD-/RDF-/Sidecar-Export aufgenommen.

- vocab.py: csvw-Namespace + Terme columns (csvw:column, @list) und datatype
  (csvw:datatype).
- semantic.py: column_node(attr) (Spalte -> {name, datatype(xsd), unit, label,
  description}); to_jsonld(columns=) ergänzt geordnete Spaltenliste; rdf_from_doc()
  und write_sidecar_doc() serialisieren ein vorgefertigtes Doc (mit Spalten).
- sclass/dataframe.py: to_jsonld/to_turtle/write_sidecar überschrieben; Spalten in
  echter df-Reihenfolge (nicht alphabetisch sortiert).

Tests test_semantic_columns.py. Coverage 100%.
@lepy lepy merged commit 5e6d0fe into master Jun 26, 2026
@lepy lepy deleted the feat/metadata-column-jsonld branch June 26, 2026 09:11
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