glam/data/entity_annotation/modules/processing/relationships.yaml
2025-12-05 15:30:23 +01:00

145 lines
4.1 KiB
YAML

# =============================================================================
# Relationship Patterns Module
# =============================================================================
# Version: 1.7.0
# Module: processing/relationships.yaml
#
# Bidirectional relationships between entity types, with ontology predicates.
# =============================================================================
id: relationships
name: "Ontology Relationship Patterns"
description: |
Relationships connect entities extracted from text. Each relationship
has a subject, predicate, and object, with ontology mappings for RDF
serialization. Relationships are bidirectional where applicable.
patterns:
- name: "staff_member_of"
subject_type: "AGT.STF"
predicate: "org:memberOf"
inverse_predicate: "org:hasMember"
object_type: "GRP.HER"
example:
text: "Dr. Maria van den Berg, Director of the Rijksmuseum"
subject: "Dr. Maria van den Berg"
object: "Rijksmuseum"
- name: "governed_by"
subject_type: "GRP.HER"
predicate: "org:subOrganizationOf"
inverse_predicate: "org:hasSubOrganization"
object_type: "GRP.PAR"
example:
text: "The Rijksmuseum, part of the Ministry of Culture"
subject: "Rijksmuseum"
object: "Ministry of Culture"
- name: "located_in"
subject_type: "GRP.HER"
predicate: "schema:location"
inverse_predicate: "schema:containsPlace"
object_type: "TOP"
example:
text: "The British Museum in London"
subject: "British Museum"
object: "London"
- name: "has_address"
subject_type: "GRP.HER"
predicate: "schema:address"
object_type: "TOP.IAD"
example:
text: "Rijksmuseum, Museumstraat 1, 1071 XX Amsterdam"
subject: "Rijksmuseum"
object: "Museumstraat 1, 1071 XX Amsterdam"
- name: "has_email"
subject_type: "GRP.HER"
predicate: "schema:email"
object_type: "WRK.EML"
example:
subject: "Rijksmuseum"
object: "info@rijksmuseum.nl"
- name: "has_website"
subject_type: "GRP.HER"
predicate: "schema:url"
object_type: "WRK.URL"
example:
subject: "Rijksmuseum"
object: "https://www.rijksmuseum.nl"
- name: "has_social_media"
subject_type: "GRP.HER"
predicate: "schema:sameAs"
object_type: "WRK.SOC"
example:
subject: "Rijksmuseum"
object: "@rijksmuseum"
- name: "has_collection"
subject_type: "GRP.HER"
predicate: "rico:hasOrHadAllMembersOf"
inverse_predicate: "rico:isOrWasIncludedIn"
object_type: "APP.COL"
example:
text: "The Rijksmuseum Golden Age Collection"
subject: "Rijksmuseum"
object: "Golden Age Collection"
- name: "created_by"
subject_type: "THG.ART"
predicate: "crm:P14_carried_out_by"
inverse_predicate: "crm:P14i_performed"
object_type: "AGT.PER"
example:
text: "The Night Watch by Rembrandt"
subject: "The Night Watch"
object: "Rembrandt"
- name: "held_position"
subject_type: "AGT.PER"
predicate: "org:holds"
inverse_predicate: "org:heldBy"
object_type: "ROL.POS"
example:
text: "Jan de Wit served as Director"
subject: "Jan de Wit"
object: "Director"
- name: "has_opening_hours"
subject_type: "GRP.HER"
predicate: "schema:openingHours"
object_type: "TMP.OPH"
example:
subject: "Rijksmuseum"
object: "Tuesday-Sunday 10:00-17:00"
- name: "founded_on"
subject_type: "GRP.HER"
predicate: "schema:foundingDate"
object_type: "TMP.DAB"
example:
text: "Founded in 1800"
subject: "Rijksmuseum"
object: "1800"
- name: "work_instance_of"
subject_type: "WRK.ITM"
predicate: "frbroo:R7_is_materialization_of"
object_type: "WRK.MAN"
example:
text: "This copy of the First Folio"
subject: "This copy"
object: "First Folio"
- name: "has_geometry"
subject_type: "TOP"
predicate: "geo:hasGeometry"
object_type: "GEO"
example:
subject: "Amsterdam"
object: "POINT(4.9041 52.3676)"
note: "Links toponyms to their geometric representations"