GMEOW Genealogy Module

What This Slice Covers

This slice owns 21 terms and contributes 47 mapping or projection rows. Use it when its terms match the native fact you want to preserve; use the linkage tables to see how those facts leave GMEOW for consumer vocabularies.

Dependencies

Consumers

Local Map

genealogy map

Examples

Biological And Adoptive

# SPDX-FileCopyrightText: 2026 Blackcat Informatics® Inc. <paudley@blackcatinformatics.ca>
# SPDX-License-Identifier: CC-BY-4.0
#
# Worked example: parent-child is not one relation (Principle 9). Most schemas have
# a single "parent" field; GMEOW reifies the KIND of parentage, so a child's
# BIOLOGICAL and ADOPTIVE parents COEXIST rather than overwrite. A
# gmeow:BiologicalParentChild and a gmeow:AdoptiveParentChild (siblings of
# Foster/Step) each bind a gmeow:relationshipParent to a gmeow:relationshipChild.
# Flat gmeow:hasParent / gmeow:hasFather remain available as the simple view; the
# reified relations carry the distinction the flat edges can't.
@prefix gmeow: <https://blackcatinformatics.ca/gmeow/> .
@prefix ex:    <https://blackcatinformatics.ca/gmeow/examples/genealogy/> .

ex:alex     a gmeow:Person ; gmeow:name "Alex"@en ; gmeow:hasParent ex:birthFather , ex:adoptiveMother .
ex:birthFather    a gmeow:Person ; gmeow:name "Jordan (birth father)"@en .
ex:adoptiveMother a gmeow:Person ; gmeow:name "Priya (adoptive mother)"@en .

# --- The two parentages coexist — neither erases the other (P9). A child has a
#     biological father AND an adoptive mother, each a distinct reified relation;
#     the flat gmeow:hasParent edges above are the simple, kind-blind view.
ex:biological a gmeow:BiologicalParentChild ;
    gmeow:relationshipParent ex:birthFather ;
    gmeow:relationshipChild  ex:alex .

ex:adoptive a gmeow:AdoptiveParentChild ;
    gmeow:relationshipParent ex:adoptiveMother ;
    gmeow:relationshipChild  ex:alex .

Terms

Classes

Term Label Definition
gmeow:AdoptiveParentChild Adoptive Parent-Child A parent-child relationship established by adoption.
gmeow:BiologicalParentChild Biological Parent-Child A parent-child relationship by biological descent.
gmeow:CoupleRelationship Couple Relationship A reified couple relationship (marriage, civil union, or partnership) between two persons; bears marriage, divorce and related events.
gmeow:Family Family A kinship group of persons related by descent, marriage, or adoption.
gmeow:FosterParentChild Foster Parent-Child A parent-child relationship through fostering.
gmeow:KinRelationship Kin Relationship A reified kinship relationship between persons, modelled as an observation (a claim-from-a-vantage) in the universal stack (observation-spine bridge). Able to...
gmeow:ParentChildRelationship Parent-Child Relationship A reified parent-child relationship, typed by its nature (biological, adoptive, step, or foster).
gmeow:StepParentChild Step Parent-Child A parent-child relationship through marriage to a biological/adoptive parent.

Properties

Term Label Definition
gmeow:hasAncestor has ancestor Relates a person to an ancestor — a parent, a parent's parent, and so on. Transitive: an ancestor of an ancestor is an ancestor. gmeow:hasParent (hence gmeow:h...
gmeow:hasChild has child Relates a person to a child; the inverse of hasParent.
gmeow:hasCoupleEvent has couple event Relates a couple relationship to an event in its history — the marriage, the divorce, an anniversary (project homepage and language). The seam the GEDCOM proje...
gmeow:hasDescendant has descendant Relates a person to a descendant — a child, a child's child, and so on; the transitive inverse of gmeow:hasAncestor. Derived by the reasoner (gmeow:hasChild is...
gmeow:hasFather has father Relates a person to a male parent.
gmeow:hasMother has mother Relates a person to a female parent.
gmeow:hasParent has parent Relates a person to a parent (any kind: biological, adoptive, step, or foster). Non-functional: contested parentage claims from multiple sources coexist as sta...
gmeow:hasPartner has partner Relates a couple relationship to one of its two partners.
gmeow:hasSibling has sibling Relates a person to a sibling; symmetric.
gmeow:hasSpouse has spouse Relates a person to a spouse; symmetric.
gmeow:relationshipChild relationship child The child in a reified parent-child relationship.
gmeow:relationshipParent relationship parent The parent in a reified parent-child relationship.
gmeow:withinFamily within family Anchors a reified kinship relationship in the family group it belongs to — the structural seam GEDCOM exchange requires (a child's family, a marriage's family)...

Linkages

Source Kind Profile Predicate/Relation Target Evidence
gmeow:AdoptiveParentChild equivalence - skos:closeMatch gx:AdoptiveParent gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy047; confidence 0.9
gmeow:BiologicalParentChild equivalence - skos:closeMatch gx:BiologicalParent gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy046; confidence 0.9
gmeow:CoupleRelationship equivalence - skos:closeMatch gx:Couple gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy044; confidence 0.95
gmeow:Family equivalence - owl:equivalentClass gedcom:Family gmeow-classes.sssom.tsv; gmeow:eqClasses033; confidence 1
gmeow:Family equivalence - skos:exactMatch wd:Q8436 gmeow-wikidata.sssom.tsv; gmeow:eqWikidata005; confidence 0.9
gmeow:FosterParentChild equivalence - skos:closeMatch gx:FosterParent gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy049; confidence 0.9
gmeow:KinRelationship equivalence - skos:closeMatch sosa:Observation gmeow-observations.sssom.tsv; gmeow:eqObs023; confidence 0.8
gmeow:ParentChildRelationship equivalence - skos:closeMatch gx:ParentChild gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy045; confidence 0.95
gmeow:StepParentChild equivalence - skos:closeMatch gx:StepParent gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy048; confidence 0.9
gmeow:hasChild equivalence - skos:closeMatch bio:child gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy056; confidence 0.9
gmeow:hasChild equivalence - skos:closeMatch gedcom:child gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy071; confidence 0.8
gmeow:hasChild equivalence - owl:equivalentProperty rel:parentOf gmeow-properties.sssom.tsv; gmeow:eqProperties023; confidence 0.95
gmeow:hasChild equivalence - owl:equivalentProperty schema:children gmeow-properties.sssom.tsv; gmeow:eqProperties022; confidence 1
gmeow:hasChild equivalence - skos:closeMatch wdt:P40 gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy066; confidence 0.95
gmeow:hasFather equivalence - skos:closeMatch bio:father gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy054; confidence 0.9
gmeow:hasFather equivalence - skos:closeMatch wdt:P22 gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy064; confidence 0.95
gmeow:hasMother equivalence - skos:closeMatch bio:mother gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy055; confidence 0.9
gmeow:hasMother equivalence - skos:closeMatch wdt:P25 gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy065; confidence 0.95
gmeow:hasParent equivalence - owl:equivalentProperty rel:childOf gmeow-properties.sssom.tsv; gmeow:eqProperties021; confidence 0.95
gmeow:hasParent equivalence - owl:equivalentProperty schema:parent gmeow-properties.sssom.tsv; gmeow:eqProperties020; confidence 1
gmeow:hasParent equivalence - skos:closeMatch wdt:P8810 gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy063; confidence 0.9
gmeow:hasPartner equivalence - skos:closeMatch gedcom:husband gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy072; confidence 0.7
gmeow:hasPartner equivalence - skos:closeMatch gedcom:wife gmeow-genealogy.sssom.tsv; gmeow:eqGenealogy073; confidence 0.7
gmeow:hasSibling equivalence - owl:equivalentProperty rel:siblingOf gmeow-properties.sssom.tsv; gmeow:eqProperties027; confidence 1
... ... ... ... ... 23 more rows

Guide

Genealogy — evidence-centric kinship, derived ancestry

Slice: https://blackcatinformatics.ca/gmeow/slices/genealogy · tier: extension Reified, typed kinship as observation; ancestry the reasoner derives, never asserts.

Genealogy is the discipline of contested evidence, and the slice models it that way. A kinship claim is an observation — a claim-from-a-vantage in the universal stack (observation-spine bridge) — not a brute fact. The standpoint doctrine governs everything contested: disputed parentage, conflicting birth/death dates, competing civil vs parish records are standpoint-indexed claims that coexist, none privileged (Principle 9). A contested parentage is two accordingTo-annotated hasParent triples, or two reified ParentChildRelationship instances each carrying gmeow:accordingTo. There is no genealogy-specific dispute mechanism, no preferredParent, no primaryKinship — only the cross-cutting standpoint facility. A withdrawn claim sets gmeow:displayable false, never deletion (Principle 10).

Equally important is what the slice does not own. Life events belong to the universal events module (LifeEvent occurrences carrying eventTypeBirth / …Marriage / …NameChange values, with Participation relators for principal/witness/officiant); names belong to the names module (PersonName, linked to its conferring event via conferredByEvent); sex and gender belong to the gender and sexuality modules. The slice supersedes the unmaintained W3C SWAP gedcom vocabulary and is aligned to BIO, GEDCOM X, schema.org, Wikidata, REL, and GeoNames. Its Principle-15 consumer, declared in the manifest: kin relationships for the family-history use of the mail corpus, and the GEDCOM alignment.

The reified layer

gmeow:KinRelationship

The root reified kinship relator — simultaneously a gmeow:Observation and a gufo:Relator: a relationship is a claim from a vantage, able to bear its own events, dates, sources, and standpoint-indexed sub-claims. The participants are co-observed features (relationshipParent/relationshipChild/hasPartner are observedFeature sub-properties — the slice-dependency doctrine bridge declared here, so the observation spine never knows the slice).

gmeow:ParentChildRelationship

The parent-child relator, typed by nature via its four subkinds. Relator mediation is axiomatized (EL someValuesFrom: a parent and a child exist) so ELK sees the structure; closed-world cardinality is SHACL's (SHACL closure gate).

gmeow:BiologicalParentChild · gmeow:AdoptiveParentChild · gmeow:StepParentChild · gmeow:FosterParentChild

The four natures of parenthood as subkinds — one of the few places GMEOW subclasses rather than using a value vocabulary, because the nature changes the relator's identity conditions (an adoption is a different relationship, not the same one re-labelled).

gmeow:relationshipParent · gmeow:relationshipChild

The functional role properties of a ParentChildRelationship: one parent, one child per relator. A child with two parents has two relators — which is exactly what lets each parentage claim carry its own evidence and standpoint.

gmeow:CoupleRelationship

The reified couple relator — marriage, civil union, or partnership — bearing marriage, divorce, and related events. Its two partners attach via gmeow:hasPartner (an observedFeature bridge like the parent/child roles).

gmeow:Family

A Group subkind: a kinship group related by descent, marriage, or adoption. The GEDCOM-style family record, grounded in the universal Group machinery rather than reinvented.

The flat layer (the 80 % case)

gmeow:hasParent · gmeow:hasChild

The flat shortcuts, mutually inverse, deliberately non-functional: contested parentage claims from multiple sources coexist as accordingTo-annotated statements (Principle 9). hasMother/hasFather specialize hasParent. Both are sub-properties of gmeow:connectsTo — kinship bonds are traversable links in the universal graph layer (connectivity spine), safely, because connectsTo is neither symmetric nor transitive.

gmeow:hasSpouse · gmeow:hasSibling

Symmetric flat shortcuts, also connectsTo sub-properties. Their symmetry stays local — the connectivity spine imposes nothing back.

gmeow:hasAncestor · gmeow:hasDescendant

The derived closure (relator-mediation doctrine, phase 2 of the reasoning-depth design): hasAncestor is transitive with hasParent as a sub-property, so the reasoner entails the full ancestor closure that was never asserted; hasDescendant adds the DL inverse (HermiT-complete). Both are non-simple (transitive) and are deliberately kept out of every cardinality and functional axiom, preserving OWL 2 DL regularity. Never assert ancestry directly — assert parentage and let the reasoner do its one job.

Solver layer & alignment

Beyond the OWL-derived ancestor closure, genealogy computation — relationship-degree calculation ("second cousin once removed"), pedigree collapse, generation numbering — is the solver layer's work (Principle 12) over the asserted parentage graph. The GEDCOM X / BIO / schema.org alignments are projections of the reified relators; the evidence-bearing form is canonical, the flat GEDCOM record is the lossy down-projection.

Dependencies

Depends on kernel, entities (Person, Group), and observations (the Observation spine the relators sit on). Leans on events, names, gender, and connectivity by convention — each contribution declared in the slice that owns it.

Couple events (project homepage and language)

gmeow:hasCoupleEvent

Links a gmeow:CoupleRelationship to an event in its history — the marriage, divorce, or anniversary. The seam the GEDCOM projection walks: a marriage gmeow:Event's gmeow:eventTime / gmeow:eventLocation source gedcom:date / gedcom:place on the couple's minted Marriage node.