Data Model Extensibility, Part 3
This is the third of a five part series on the DFT data model. Part one covered the fundamentals: RDF, OWL, and Named Graphs. Part two demonstrated how basic genealogical information can be recorded in RDF.
What’s In a Name?
As we saw yesterday, an individual’s name can be recorded like so:
#brandon  gc:name  "Brandon Gilbert"
This works just fine for Brandon, but is not expressive enough for his wife. Her name as recorded on her birth certificate was Samantha Davis:
#samantha  gc:name  "Samantha Davis"
This changed to Samantha Gilbert with marriage to Brandon:
#brandon+samantha  rdf:type    gc:Marriage
#brandon           gc:married  #brandon+samantha
#samantha          gc:married  #brandon+samantha
#samantha          gc:name     "Samantha Gilbert"
The DFT already accepts multiple values for the same property, but if we simply record the two names just so, it will appear that there is a conflict. Is there a way to explicitly indicate the relationship between the two names?
Clarification Using Temporal Data
Of course there is. We’ll use Named Graphs to add additional information about Samantha’s married name. First, we put the second name into a named graph:
#graph { #samantha  gc:name  "Samantha Gilbert"  }
Now we can tag this graph with clarifying information:
#graph   gc:duration  #dur
#dur    rdf:type     gc:TimeSpan
#dur    gc:start     #brandon+samantha
These statements indicate that the information in #graph, namely Samantha’s married name, was the case after her marriage to Brandon. Before her marriage, the other name was used.
Next Time
In part four we’ll see how we can use graphs to record other additional information about genealogical statements (specifically provenance, or source data).
Technorati Tags:
Filed in 
Trackbacks/Pingbacks
