Commit graph

7 commits

Author SHA1 Message Date
bb78b8a758 Add step-08: merge migration reasons and refactor temporal properties
Replace tm:reason and tm:secondaryReason with a single tm:hasReason
property (937 triples). Refactor 6 flat date properties into structured
tm:uncertainBeginning/tm:uncertainEnd intervals using W3C OWL-Time,
introducing tm:FuzzyInterval as a superclass of tm:Migration,
org:Membership, tm:Relationship, tm:PersonName, and
tm:ReligionAffiliation. Output: data/graph-08.ttl (218,251 triples).
2026-03-01 17:41:50 +01:00
b4ed3cbde7 Add step-07: clean up secondary organisations and simplify person-profession
- Remove redundant tm:secondaryOrganisation when it equals org:organization (230)
- Promote tm:secondaryOrganisation to org:organization when no primary exists (256)
- Replace tm:PersonProfession intermediate class with direct schema:hasOccupation
  links from persons to schema:Occupation instances (742 instances removed)
- Remove tm:PersonProfession class and its properties from the ontology
- Add step-07 binary, Rakefile task, figures, and documentation
2026-03-01 15:48:51 +01:00
c79ae45859 Add Step 6: map to Theatre Migrants ontology (tm: namespace)
SPARQL CONSTRUCT queries transform graph-05 into graph-06 using the tm:
vocabulary. Persons keep schema:Person properties, works become
org:Membership, professions become schema:Occupation, enumerations
become skos:Concept with tm: subtypes. Split 010-occupations into two
query files (passthrough + retype). Includes step-06 binary, Rakefile
tasks, and example data for Irene Abendroth.
2026-03-01 12:20:40 +01:00
3d0829aa9d Add Step 5: use well-known vocabularies (Schema.org, OWL, WGS84, SKOS)
SPARQL UPDATE queries add standard vocabulary properties alongside
existing custom predicates: schema:Person/Place/Organization types,
schema:givenName/familyName/birthDate, owl:sameAs for authority links,
wgs84:lat/long for coordinates, skos:Concept/prefLabel for enumerations,
and rdfs:label for persons.
2026-03-01 12:07:01 +01:00
28eb1e7cfd Add Step 4: remove empty string literals representing missing data. 2026-02-28 19:07:36 +01:00
1c15bc8cf7 Add Step 3: annotate literal datatypes (xsd:date, xsd:float, xsd:integer, IRIs). 2026-02-28 18:49:35 +01:00
34754cc68a Reimplement mapping scripts (step-01, step-02) in Rust.
step-01 performs W3C Direct Mapping from MariaDB to Turtle using sophia.
step-02 applies SPARQL UPDATE queries using oxigraph.
2026-02-28 06:08:38 +01:00