@prefix narn: . @prefix loc: . @prefix to: . @prefix rcc: . @prefix soc: . @prefix evnt: . @prefix plot: . @prefix act: . @prefix owl: . @prefix rdfs: . @prefix skos: . @prefix dct: . @prefix vann: . @prefix erdemonal: . @prefix xsd: . dct:created a owl:AnnotationProperty . dct:creator a owl:AnnotationProperty . dct:modified a owl:AnnotationProperty . skos:altLabel a owl:AnnotationProperty . narn: a owl:Ontology ; rdfs:label "Formal Model of Story Plots"@en ; rdfs:comment "An OWL ontology for modeling story plots and narrative structures. It provides a formal vocabulary to represent characters, locations, events, actions, and temporal relations within a narrative."@en ; dct:created "2026-03-17"^^xsd:date ; dct:modified "2026-03-19"^^xsd:date ; dct:creator erdemonal:me ; vann:preferredNamespaceUri "https://w3id.org/narn/" ; vann:preferredNamespacePrefix "narn" . loc:Place a owl:Class ; rdfs:label "place"@en ; skos:altLabel "location"@en ; rdfs:comment """A named location that has geographic or spatial significance in a story."""@en ; skos:example "Beleriand is a place in Middle-earth."@en . loc:Region a owl:Class ; rdfs:subClassOf loc:Place ; rdfs:label "region"@en ; skos:altLabel "area"@en ; rdfs:comment "A large geographic area, typically contains multiple subplaces."@en ; skos:example "Beleriand is a region containing Doriath, Hithlum, and Brethil."@en . loc:LandArea a owl:Class ; rdfs:subClassOf loc:Place ; rdfs:label "land area"@en ; skos:altLabel "land"@en ; rdfs:comment "A place that is primarily defined by its land territory."@en ; skos:example "Dor-lómin is a land area in Hithlum."@en . loc:Continent a owl:Class ; rdfs:subClassOf loc:LandArea ; rdfs:label "continent"@en ; skos:altLabel "landmass"@en ; rdfs:comment "A major landmass."@en ; skos:example "Endor is a continent within Arda."@en . loc:Realm a owl:Class ; rdfs:subClassOf loc:LandArea ; rdfs:label "realm"@en ; skos:altLabel "kingdom"@en ; rdfs:comment "A territory under the rule of a king or sovereign authority."@en ; skos:example "Doriath is a realm ruled by King Thingol, with Menegroth as its capital."@en . loc:NaturalArea a owl:Class ; rdfs:subClassOf loc:Place ; owl:disjointWith loc:Settlement ; rdfs:label "natural area"@en ; skos:altLabel "natural feature"@en ; rdfs:comment "A place defined by natural geographic features rather than habitation."@en ; skos:example "Brethil is a natural area east of Doriath."@en . loc:WoodedArea a owl:Class ; rdfs:subClassOf loc:NaturalArea ; rdfs:label "wooded area"@en ; skos:altLabel "woodland"@en ; rdfs:comment "A land area predominantly covered by trees."@en ; skos:example "Brethil is a wooded area in Beleriand."@en . loc:Forest a owl:Class ; rdfs:subClassOf loc:WoodedArea ; rdfs:label "forest"@en ; skos:altLabel "wood"@en ; rdfs:comment "A large, dense wooded area."@en ; skos:example "Brethil is a forest where Túrin lived under the name Turambar."@en . loc:Mountain a owl:Class ; rdfs:subClassOf loc:NaturalArea ; rdfs:label "mountain"@en ; skos:altLabel "peak"@en ; rdfs:comment "A large natural elevation of the earth's surface."@en ; skos:example "Ered Wethrin borders Hithlum."@en . loc:Hill a owl:Class ; rdfs:subClassOf loc:NaturalArea ; rdfs:label "hill"@en ; skos:altLabel "hillock"@en ; rdfs:comment "A naturally raised area of land, smaller than a mountain."@en ; skos:example "Amon Rûdh is a hill where Túrin hid with Mîm."@en . loc:Valley a owl:Class ; rdfs:subClassOf loc:NaturalArea ; rdfs:label "valley"@en ; skos:altLabel "vale"@en ; rdfs:comment "A low area of land between hills or mountains."@en ; skos:example "Tumladen is the valley where Gondolin was built."@en . loc:River a owl:Class ; rdfs:subClassOf loc:NaturalArea ; rdfs:label "river"@en ; skos:altLabel "waterway"@en ; rdfs:comment "A large natural stream of water."@en ; skos:example "The river Narog flows near Nargothrond."@en . loc:Lake a owl:Class ; rdfs:subClassOf loc:NaturalArea ; rdfs:label "lake"@en ; skos:altLabel "body of water"@en ; rdfs:comment "A large body of water surrounded by land."@en ; skos:example "There is a lake near the hidden city of Gondolin."@en . loc:Sea a owl:Class ; rdfs:subClassOf loc:NaturalArea ; rdfs:label "sea"@en ; skos:altLabel "ocean"@en ; rdfs:comment "A large body of salt water."@en ; skos:example "Belegaer is the Great Sea west of Middle-earth."@en . loc:Desert a owl:Class ; rdfs:subClassOf loc:NaturalArea ; rdfs:label "desert"@en ; skos:altLabel "wasteland"@en ; rdfs:comment "A barren, arid area with little vegetation."@en ; skos:example "The Anfauglith is a desert north of Beleriand."@en . loc:WildArea a owl:Class ; rdfs:subClassOf loc:NaturalArea ; rdfs:label "wild area"@en ; skos:altLabel "wilderness"@en ; rdfs:comment "An uncultivated, uninhabited region."@en ; skos:example "The wild lands between Doriath and Nargothrond."@en . loc:Settlement a owl:Class ; rdfs:subClassOf loc:Place ; rdfs:label "settlement"@en ; skos:altLabel "inhabited place"@en ; rdfs:comment "A place where people live permanently."@en ; skos:example "Menegroth is a settlement within Doriath."@en . loc:City a owl:Class ; rdfs:subClassOf loc:Settlement ; rdfs:label "city"@en ; skos:altLabel "urban area"@en ; rdfs:comment "A large and significant settlement."@en ; skos:example "Gondolin is a hidden city in Tumladen."@en . loc:Town a owl:Class ; rdfs:subClassOf loc:Settlement ; rdfs:label "town"@en ; skos:altLabel "township"@en ; rdfs:comment "A settlement larger than a village but smaller than a city."@en ; skos:example "There is a town along the road between Doriath and Nargothrond."@en . loc:Village a owl:Class ; rdfs:subClassOf loc:Settlement ; rdfs:label "village"@en ; skos:altLabel "hamlet"@en ; rdfs:comment "A small settlement, typically in a rural area."@en ; skos:example "There is a small village in Brethil where woodsmen live."@en . loc:Fortress a owl:Class ; rdfs:subClassOf loc:Settlement ; rdfs:label "fortress"@en ; skos:altLabel "stronghold"@en ; rdfs:comment "A fortified place, typically a military stronghold."@en ; skos:example "Angband is Morgoth's fortress in the Iron Mountains."@en . loc:Building a owl:Class ; rdfs:subClassOf loc:Place ; rdfs:label "building"@en ; skos:altLabel "structure"@en ; rdfs:comment "A constructed structure."@en ; skos:example "The great hall of Menegroth is a building within the city."@en . loc:UndergroundPlace a owl:Class ; rdfs:subClassOf loc:Place ; rdfs:label "underground place"@en ; skos:altLabel "subterranean place"@en ; rdfs:comment "A place located beneath the surface of the earth."@en ; skos:example "Menegroth and Nargothrond are underground places."@en . loc:UndergroundCity a owl:Class ; rdfs:label "underground city"@en ; skos:altLabel "subterranean city"@en ; rdfs:comment "A city built underground, within caves or excavated halls."@en ; skos:example "Menegroth is an underground city, the capital of Doriath."@en . # # Properties # loc:hasSpatialRelation a owl:ObjectProperty ; rdfs:label "has spatial relation"@en ; skos:altLabel "spatially related to"@en ; rdfs:domain loc:Place ; rdfs:range loc:Place ; rdfs:comment "A general spatial relation between two places."@en ; skos:example "Doriath has a spatial relation to Brethil, as they border each other."@en . loc:isAPartOf a owl:ObjectProperty, owl:TransitiveProperty ; rdfs:subPropertyOf loc:hasSpatialRelation ; rdfs:label "is a part of"@en ; skos:altLabel "part of"@en ; rdfs:domain loc:Place ; rdfs:range loc:Place ; rdfs:comment """Indicates that a place constitutes a subarea of another place."""@en ; skos:example "Dor-lómin is a part of Hithlum."@en . loc:contains a owl:ObjectProperty, owl:TransitiveProperty ; owl:inverseOf loc:isAPartOf ; rdfs:subPropertyOf loc:hasSpatialRelation ; rdfs:label "contains"@en ; skos:altLabel "includes"@en ; rdfs:domain loc:Place ; rdfs:range loc:Place ; rdfs:comment "Inverse of isAPartOf."@en ; skos:example "Beleriand contains Doriath."@en . loc:isStrictlyInsideOf a owl:ObjectProperty, owl:TransitiveProperty, owl:AsymmetricProperty, owl:IrreflexiveProperty ; rdfs:subPropertyOf loc:isAPartOf ; rdfs:label "is strictly inside of"@en ; skos:altLabel "strictly within"@en ; rdfs:comment "Stricter form of isAPartOf where boundaries do not touch."@en ; skos:example "Gondolin is strictly inside of Tumladen."@en . loc:borders a owl:ObjectProperty, owl:SymmetricProperty ; rdfs:subPropertyOf loc:hasSpatialRelation ; rdfs:label "borders"@en ; skos:altLabel "adjacent to"@en ; rdfs:comment "Two places share a boundary but neither contains the other."@en ; skos:example "Doriath borders Brethil."@en . loc:isNear a owl:ObjectProperty, owl:SymmetricProperty ; rdfs:subPropertyOf loc:hasSpatialRelation ; rdfs:label "is near"@en ; skos:altLabel "close to"@en ; rdfs:comment "Two places are in proximity."@en ; skos:example "The river Narog is near Nargothrond."@en . loc:isTheCapitalOf a owl:ObjectProperty, owl:FunctionalProperty ; rdfs:label "is the capital of"@en ; skos:altLabel "capital of"@en ; rdfs:domain loc:Settlement ; rdfs:range loc:Realm ; rdfs:comment "A settlement is the capital of a realm."@en ; skos:example "Menegroth is the capital of Doriath."@en . # # Axioms # loc:Forest owl:disjointWith loc:Desert . loc:Mountain owl:disjointWith loc:Sea . loc:River owl:disjointWith loc:Mountain . loc:Building owl:disjointWith loc:NaturalArea . loc:City owl:disjointWith loc:Village . loc:Town owl:disjointWith loc:Village . loc:UndergroundCity owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( loc:City loc:UndergroundPlace ) ] . loc:Realm owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( loc:LandArea [ a owl:Restriction ; owl:onProperty [ owl:inverseOf loc:isTheCapitalOf ] ; owl:someValuesFrom loc:Settlement ] ) ] . # Every Settlement is part of some place loc:Settlement rdfs:subClassOf [ a owl:Restriction ; owl:onProperty loc:isAPartOf ; owl:someValuesFrom loc:Place ] . # A Continent cannot have a capital loc:Continent rdfs:subClassOf [ a owl:Restriction ; owl:onProperty [ owl:inverseOf loc:isTheCapitalOf ] ; owl:maxQualifiedCardinality "0"^^xsd:nonNegativeInteger ; owl:onClass loc:Settlement ] . loc:Continent rdfs:subClassOf [ a owl:Restriction ; owl:onProperty loc:isAPartOf ; owl:allValuesFrom [ a owl:Class ; owl:complementOf loc:LandArea ] ] . loc:borders a owl:IrreflexiveProperty . loc:isNear a owl:IrreflexiveProperty . to:TemporalEntity a owl:Class ; rdfs:label "temporal entity"@en ; skos:altLabel "time entity"@en ; rdfs:comment "An entity existing within a specific temporal dimension."@en ; skos:example "The moment of Túrin's birth and the span of his life represent temporal entities."@en . to:Instant a owl:Class ; rdfs:subClassOf to:TemporalEntity ; owl:disjointWith to:Interval ; rdfs:label "instant"@en ; skos:altLabel "time point"@en ; rdfs:comment "A temporal entity representing a single point in time with a duration of strictly zero."@en ; skos:example "The precise moment of Túrin's birth constitutes an instant."@en . to:Interval a owl:Class ; rdfs:subClassOf to:TemporalEntity ; rdfs:label "interval"@en ; skos:altLabel "time span"@en ; rdfs:comment "A continuous temporal entity characterized by a strictly positive duration."@en ; skos:example "The complete timeline of the Narn represents a temporal interval."@en . to:FiniteInterval a owl:Class ; rdfs:subClassOf to:Interval, to:StartingInterval, to:EndingInterval ; owl:disjointWith to:InfiniteInterval ; rdfs:label "finite interval"@en ; skos:altLabel "bounded interval"@en ; rdfs:comment "A bounded temporal interval defined by both a distinct starting instant and a distinct ending instant."@en ; skos:example "The Battle of Unnumbered Tears constitutes a finite interval possessing defined chronological boundaries."@en . to:InfiniteInterval a owl:Class ; rdfs:subClassOf to:Interval ; rdfs:label "infinite interval"@en ; skos:altLabel "unbounded interval"@en ; rdfs:comment "A temporal interval extending infinitely in at least one direction."@en ; skos:example "The lifespan of an immortal Elf represents an infinite interval extending continuously into the future."@en . to:StartingInterval a owl:Class ; rdfs:subClassOf to:Interval ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty to:startsAt ; owl:someValuesFrom to:Instant ] ; rdfs:label "starting interval"@en ; skos:altLabel "begins with"@en ; rdfs:comment "An interval bounded by a distinct starting instant but lacking a defined ending point."@en ; skos:example "The life of an Elf exemplifies a starting interval since it begins at birth but possesses no natural conclusion."@en . to:EndingInterval a owl:Class ; rdfs:subClassOf to:Interval ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty to:endsAt ; owl:someValuesFrom to:Instant ] ; rdfs:label "ending interval"@en ; skos:altLabel "ending point"@en ; rdfs:comment "An interval bounded by a distinct ending instant but lacking a defined starting point."@en ; skos:example "A historical epoch stretching back indefinitely but concluding at a specific catastrophe represents an ending interval."@en . to:EternalInterval a owl:Class ; rdfs:subClassOf to:InfiniteInterval ; rdfs:label "eternal interval"@en ; skos:altLabel "everlasting interval"@en ; rdfs:comment "A temporally unbounded interval extending infinitely into both the past and the future."@en ; skos:example "The continuous existence of the universe Eä serves as an eternal interval."@en . # Properties to:occursBefore a owl:ObjectProperty, owl:TransitiveProperty ; rdfs:domain to:Instant ; rdfs:range to:Instant ; owl:propertyDisjointWith to:occursSimultaneouslyTo ; rdfs:label "occurs before"@en ; skos:altLabel "earlier than"@en ; rdfs:comment "A temporal relation placing the first instant chronologically prior to the second."@en ; skos:example "The moment of Túrin's birth occurs before the moment of Lalaith's birth."@en . to:occursAfter a owl:ObjectProperty, owl:TransitiveProperty ; owl:inverseOf to:occursBefore ; rdfs:domain to:Instant ; rdfs:range to:Instant ; rdfs:label "occurs after"@en ; skos:altLabel "later than"@en ; rdfs:comment "A temporal relation placing the first instant chronologically subsequent to the second."@en ; skos:example "The moment of Nienor's birth occurs after the moment of Lalaith's birth."@en . to:occursSimultaneouslyTo a owl:ObjectProperty, owl:SymmetricProperty, owl:ReflexiveProperty, owl:TransitiveProperty ; rdfs:domain to:Instant ; rdfs:range to:Instant ; rdfs:label "occurs simultaneously to"@en ; skos:altLabel "at same time as"@en ; rdfs:comment "A temporal relation linking two distinct instants that occupy the exact same chronological position."@en ; skos:example "Two separate observations mapping to the exact same chronological instant occur simultaneously."@en . to:hasInstant a owl:ObjectProperty ; rdfs:domain to:Interval ; rdfs:range to:Instant ; rdfs:label "has instant"@en ; skos:altLabel "at instant"@en ; rdfs:comment "The association between a temporal interval and a specific instant contained within or bounding it."@en ; skos:example "The overarching timeline of the Narn has an instant mapped to the moment of Túrin's birth."@en . to:startsAt a owl:ObjectProperty, owl:FunctionalProperty ; rdfs:subPropertyOf to:hasInstant ; rdfs:domain to:Interval ; rdfs:range to:Instant ; rdfs:label "starts at"@en ; skos:altLabel "beginning point"@en ; rdfs:comment "The absolute starting instant bounding the beginning of a temporal interval."@en ; skos:example "The chronological span of the Narn starts at the moment of Túrin's birth."@en . to:endsAt a owl:ObjectProperty, owl:FunctionalProperty ; rdfs:subPropertyOf to:hasInstant ; rdfs:domain to:Interval ; rdfs:range to:Instant ; rdfs:label "ends at"@en ; skos:altLabel "ending point"@en ; rdfs:comment "The absolute ending instant bounding the conclusion of a temporal interval."@en ; skos:example "The Battle of Unnumbered Tears ends at the precise instant of the final retreat."@en . to:occursDuring a owl:ObjectProperty ; rdfs:domain to:Instant ; rdfs:range to:Interval ; rdfs:label "occurs during"@en ; skos:altLabel "within timeframe of"@en ; rdfs:comment "The enclosure of a specific instant strictly within the temporal boundaries of an interval."@en ; skos:example "The precise moment of Khîm's death occurs during the interval of Túrin's habitation at Amon Rûdh."@en . to:hasDateTime a owl:DatatypeProperty, owl:FunctionalProperty ; rdfs:domain to:Instant ; rdfs:range xsd:dateTime ; rdfs:label "has date time"@en ; skos:altLabel "dateTime value"@en ; rdfs:comment "The standardized chronological date and time value of a specific temporal instant."@en ; skos:example "The instant of publication maps to a specific dateTime value in the standard calendar."@en . to:hasDuration a owl:DatatypeProperty, owl:FunctionalProperty ; rdfs:domain to:Interval ; rdfs:range xsd:duration ; rdfs:label "has duration"@en ; skos:altLabel "time length"@en ; rdfs:comment "The absolute temporal length spanned by a defined interval."@en ; skos:example "The interval representing Túrin's time in Doriath has a duration measured in several years."@en . to:intervalRelation a owl:ObjectProperty ; rdfs:domain to:Interval ; rdfs:range to:Interval ; rdfs:label "interval relation"@en ; skos:altLabel "Allen relation"@en ; rdfs:comment "A topological temporal relation between two distinct intervals."@en ; skos:example "The relational mapping between the birth of Túrin and the birth of Lalaith constitutes an interval relation."@en . to:before a owl:ObjectProperty, owl:TransitiveProperty ; rdfs:subPropertyOf to:intervalRelation ; rdfs:label "before"@en ; skos:altLabel "precedes"@en ; rdfs:comment "The primary interval concludes strictly prior to the commencement of the secondary interval."@en ; skos:example "The interval of Túrin's birth occurs strictly before the interval of Lalaith's birth."@en . to:after a owl:ObjectProperty, owl:TransitiveProperty ; owl:inverseOf to:before ; rdfs:subPropertyOf to:intervalRelation ; rdfs:label "after"@en ; skos:altLabel "follows"@en ; rdfs:comment "The primary interval commences strictly subsequent to the conclusion of the secondary interval."@en ; skos:example "The interval of Nienor's birth occurs strictly after the conclusion of the Nirnaeth Arnoediad."@en . to:meets a owl:ObjectProperty, owl:IrreflexiveProperty, owl:AsymmetricProperty ; rdfs:subPropertyOf to:intervalRelation ; rdfs:label "meets"@en ; skos:altLabel "immediately before"@en ; rdfs:comment "The ending instant of the primary interval is chronologically identical to the starting instant of the secondary interval."@en ; skos:example "The chronological span of the Nirnaeth Arnoediad meets the interval of Húrin's captivity without any intervening gap."@en . to:metBy a owl:ObjectProperty, owl:IrreflexiveProperty, owl:AsymmetricProperty ; owl:inverseOf to:meets ; rdfs:subPropertyOf to:intervalRelation ; rdfs:label "met by"@en ; skos:altLabel "immediately after"@en ; rdfs:comment "The starting instant of the primary interval is chronologically identical to the ending instant of the secondary interval."@en ; skos:example "The interval of Húrin's captivity is met by the conclusion of the Nirnaeth Arnoediad."@en . to:overlaps a owl:ObjectProperty, owl:IrreflexiveProperty, owl:AsymmetricProperty ; rdfs:subPropertyOf to:intervalRelation ; owl:propertyDisjointWith to:before, to:meets ; rdfs:label "overlaps"@en ; skos:altLabel "partially before"@en ; rdfs:comment "The primary interval begins before the secondary interval and concludes strictly within its duration."@en ; skos:example "The interval of Túrin's time among the outlaws overlaps with the beginning of his time at Amon Rûdh."@en . to:overlappedBy a owl:ObjectProperty, owl:IrreflexiveProperty, owl:AsymmetricProperty ; owl:inverseOf to:overlaps ; rdfs:subPropertyOf to:intervalRelation ; rdfs:label "overlapped by"@en ; skos:altLabel "partially after"@en ; rdfs:comment "The primary interval begins strictly within the duration of the secondary interval and concludes after it."@en ; skos:example "Túrin's time at Amon Rûdh is overlapped by the preceding interval of his time among the outlaws."@en . to:starts a owl:ObjectProperty, owl:IrreflexiveProperty, owl:AsymmetricProperty, owl:TransitiveProperty ; rdfs:subPropertyOf to:intervalRelation ; rdfs:label "starts"@en ; skos:altLabel "begins with"@en ; rdfs:comment "Both intervals share identical starting instants while the primary interval concludes strictly before the secondary interval."@en ; skos:example "The interval representing the birth of Túrin starts the overarching timeline of the Narn."@en . to:startedBy a owl:ObjectProperty, owl:IrreflexiveProperty, owl:AsymmetricProperty, owl:TransitiveProperty ; owl:inverseOf to:starts ; rdfs:subPropertyOf to:intervalRelation ; rdfs:label "started by"@en ; skos:altLabel "begun by"@en ; rdfs:comment "Both intervals share identical starting instants while the primary interval extends strictly beyond the conclusion of the secondary interval."@en ; skos:example "The overarching timeline of the Narn is started by the interval representing the birth of Túrin."@en . to:during a owl:ObjectProperty, owl:TransitiveProperty ; rdfs:subPropertyOf to:intervalRelation ; rdfs:label "during"@en ; skos:altLabel "contained in"@en ; rdfs:comment "The primary interval is strictly and completely enclosed within the chronological boundaries of the secondary interval."@en ; skos:example "The interval representing the killing of Khîm occurs strictly during Túrin's habitation at Amon Rûdh."@en . to:containsInterval a owl:ObjectProperty, owl:TransitiveProperty ; owl:inverseOf to:during ; rdfs:subPropertyOf to:intervalRelation ; rdfs:label "contains interval"@en ; skos:altLabel "temporally contains"@en ; rdfs:comment "The primary interval strictly and completely encloses the chronological boundaries of the secondary interval."@en ; skos:example "The overarching timeline of the Narn temporally contains the interval of Túrin's time in Doriath."@en . to:finishes a owl:ObjectProperty, owl:IrreflexiveProperty, owl:AsymmetricProperty, owl:TransitiveProperty ; rdfs:subPropertyOf to:intervalRelation ; rdfs:label "finishes"@en ; skos:altLabel "ends with"@en ; rdfs:comment "Both intervals share identical ending instants while the primary interval commences strictly after the secondary interval begins."@en ; skos:example "The interval representing the death of Turambar finishes the overarching timeline of the Narn."@en . to:finishedBy a owl:ObjectProperty, owl:IrreflexiveProperty, owl:AsymmetricProperty, owl:TransitiveProperty ; owl:inverseOf to:finishes ; rdfs:subPropertyOf to:intervalRelation ; rdfs:label "finished by"@en ; skos:altLabel "ended by"@en ; rdfs:comment "Both intervals share identical ending instants while the primary interval commences strictly before the secondary interval begins."@en ; skos:example "The overarching timeline of the Narn is finished by the interval representing the death of Turambar."@en . to:equals a owl:ObjectProperty, owl:SymmetricProperty, owl:ReflexiveProperty, owl:TransitiveProperty ; rdfs:subPropertyOf to:intervalRelation ; rdfs:label "equals"@en ; skos:altLabel "same time as"@en ; rdfs:comment "Absolute chronological equivalence where two intervals share identical starting and ending instants."@en ; skos:example "The temporal span of the Siege of Nargothrond equals the chronological span of the Fall of Nargothrond."@en . to:precedes a owl:ObjectProperty, owl:TransitiveProperty ; rdfs:subPropertyOf to:intervalRelation ; rdfs:label "precedes"@en ; skos:altLabel "happens before"@en ; rdfs:comment "The primary interval concludes either strictly prior to or exactly at the commencement of the secondary interval."@en ; skos:example "The span of the Nirnaeth Arnoediad temporally precedes Túrin's journey to Doriath."@en . to:before rdfs:subPropertyOf to:precedes . to:meets rdfs:subPropertyOf to:precedes . to:precededBy a owl:ObjectProperty, owl:TransitiveProperty ; owl:inverseOf to:precedes ; rdfs:label "preceded by"@en ; skos:altLabel "happens after"@en ; rdfs:comment "The primary interval commences either strictly subsequent to or exactly at the conclusion of the secondary interval."@en ; skos:example "Túrin's journey to Doriath is temporally preceded by the span of the Nirnaeth Arnoediad."@en . # # Axioms # to:FiniteInterval owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( to:Interval [ a owl:Restriction ; owl:onProperty to:startsAt ; owl:someValuesFrom to:Instant ] [ a owl:Restriction ; owl:onProperty to:endsAt ; owl:someValuesFrom to:Instant ] ) ] . to:EternalInterval owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( to:InfiniteInterval [ a owl:Class ; owl:complementOf to:StartingInterval ] [ a owl:Class ; owl:complementOf to:EndingInterval ] ) ] . to:StartingInterval owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( to:Interval [ a owl:Restriction ; owl:onProperty to:startsAt ; owl:someValuesFrom to:Instant ] ) ] . to:Interval rdfs:subClassOf [ a owl:Restriction ; owl:onProperty to:hasInstant ; owl:allValuesFrom to:Instant ] . to:FiniteInterval rdfs:subClassOf [ a owl:Restriction ; owl:onProperty to:startsAt ; owl:allValuesFrom to:Instant ] . to:FiniteInterval rdfs:subClassOf [ a owl:Restriction ; owl:onProperty to:startsAt ; owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ; owl:onClass to:Instant ] . to:FiniteInterval rdfs:subClassOf [ a owl:Restriction ; owl:onProperty to:endsAt ; owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ; owl:onClass to:Instant ] . to:EternalInterval owl:disjointWith to:FiniteInterval . to:startsAt owl:propertyDisjointWith to:endsAt . [] a owl:AllDisjointProperties ; owl:members ( to:before to:after to:meets to:metBy to:overlaps to:overlappedBy to:starts to:startedBy to:during to:containsInterval to:finishes to:finishedBy to:equals ) . to:startsAt a owl:AsymmetricProperty, owl:IrreflexiveProperty . to:endsAt a owl:AsymmetricProperty, owl:IrreflexiveProperty . to:hasInstant a owl:AsymmetricProperty, owl:IrreflexiveProperty . rcc:spatiallyRelatedTo a owl:ObjectProperty, owl:SymmetricProperty ; rdfs:label "spatially related to"@en ; skos:altLabel "spatial relation"@en ; rdfs:domain loc:Place ; rdfs:range loc:Place ; rdfs:comment "The most general spatial relation between two regions."@en ; skos:example "Doriath is spatially related to Brethil."@en . rcc:DC a owl:ObjectProperty, owl:SymmetricProperty, owl:IrreflexiveProperty ; rdfs:subPropertyOf rcc:spatiallyRelatedTo ; rdfs:label "disconnected"@en ; skos:altLabel "disjoint regions"@en ; rdfs:comment "Describes a spatial relation where two regions are strictly disjoint and share no spatial points."@en ; skos:example "Angband and Doriath are disconnected since they share no spatial regions."@en . rcc:EC a owl:ObjectProperty, owl:SymmetricProperty, owl:IrreflexiveProperty ; rdfs:subPropertyOf rcc:spatiallyRelatedTo ; rdfs:label "externally connected"@en ; skos:altLabel "touching regions"@en ; rdfs:comment "Denotes a relation where the boundaries of two regions intersect while their interiors remain disjoint."@en ; skos:example "Brethil is externally connected to Doriath because their boundaries touch."@en . rcc:PO a owl:ObjectProperty, owl:SymmetricProperty, owl:IrreflexiveProperty ; rdfs:subPropertyOf rcc:spatiallyRelatedTo ; rdfs:label "partially overlapping"@en ; skos:altLabel "overlapping regions"@en ; rdfs:comment "Indicates that two regions share a common interior subset without either fully subsuming the other."@en ; skos:example "The wild lands partially overlap with Brethil."@en . rcc:EQ a owl:ObjectProperty, owl:SymmetricProperty, owl:ReflexiveProperty, owl:TransitiveProperty ; rdfs:subPropertyOf rcc:spatiallyRelatedTo ; rdfs:label "equal"@en ; skos:altLabel "coextensive regions"@en ; rdfs:comment "Represents spatial equivalence where two distinct entities occupy the exact identical spatial extent."@en ; skos:example "The Thousand Caves and Menegroth are spatially equal entities."@en . rcc:TPP a owl:ObjectProperty, owl:AsymmetricProperty, owl:IrreflexiveProperty ; rdfs:subPropertyOf rcc:spatiallyRelatedTo ; rdfs:label "tangential proper part"@en ; skos:altLabel "tangential part"@en ; rdfs:comment "Defines a state where the primary region is entirely subsumed by the secondary region while sharing at least one boundary point."@en ; skos:example "Hithlum is a tangential proper part of Beleriand."@en . rcc:TPPi a owl:ObjectProperty, owl:AsymmetricProperty, owl:IrreflexiveProperty ; owl:inverseOf rcc:TPP ; rdfs:subPropertyOf rcc:spatiallyRelatedTo ; rdfs:label "tangential proper part inverse"@en ; skos:altLabel "tangential whole"@en ; rdfs:comment "The inverse relation where the primary region completely subsumes the secondary region while sharing boundary points."@en ; skos:example "Beleriand represents the tangential proper part inverse of Hithlum."@en . rcc:NTPP a owl:ObjectProperty, owl:TransitiveProperty, owl:AsymmetricProperty, owl:IrreflexiveProperty ; rdfs:subPropertyOf rcc:spatiallyRelatedTo ; rdfs:label "non-tangential proper part"@en ; skos:altLabel "interior part"@en ; rdfs:comment "Specifies a relation where the primary region is strictly contained within the interior of the secondary region with no shared boundary points."@en ; skos:example "Dor-lómin is a non-tangential proper part of Hithlum as it is completely enclosed."@en . rcc:NTPPi a owl:ObjectProperty, owl:TransitiveProperty, owl:AsymmetricProperty, owl:IrreflexiveProperty ; owl:inverseOf rcc:NTPP ; rdfs:subPropertyOf rcc:spatiallyRelatedTo ; rdfs:label "non-tangential proper part inverse"@en ; skos:altLabel "interior whole"@en ; rdfs:comment "The inverse relation where the primary region completely and strictly contains the secondary region within its interior."@en ; skos:example "Hithlum is the non-tangential proper part inverse of Dor-lómin."@en . # # Axioms # rcc:NTPP rdfs:subPropertyOf loc:isAPartOf . rcc:TPP rdfs:subPropertyOf loc:isAPartOf . rcc:NTPPi rdfs:subPropertyOf loc:contains . rcc:TPPi rdfs:subPropertyOf loc:contains . rcc:EC rdfs:subPropertyOf loc:borders . rcc:EQ rdfs:subPropertyOf loc:isAPartOf . rcc:EQ rdfs:subPropertyOf loc:contains . rcc:DC owl:propertyDisjointWith loc:isAPartOf . rcc:EC owl:propertyDisjointWith loc:isAPartOf . rcc:PO owl:propertyDisjointWith loc:isAPartOf . rcc:DC owl:propertyDisjointWith loc:borders . rcc:DC owl:propertyDisjointWith loc:isNear . rcc:DC owl:propertyDisjointWith loc:contains . rcc:EC owl:propertyDisjointWith loc:contains . rcc:EC owl:propertyDisjointWith rcc:NTPP . rcc:PO owl:propertyDisjointWith loc:contains . [] a owl:AllDisjointProperties ; owl:members ( rcc:DC rcc:EC rcc:PO rcc:EQ rcc:TPP rcc:TPPi rcc:NTPP rcc:NTPPi ) . soc:SocialRole a owl:Class ; rdfs:label "social role"@en ; skos:altLabel "role"@en ; rdfs:comment "A defined structural position that a character occupies within a social context."@en ; skos:example "Thingol occupies the social role of a King."@en . soc:PoliticalRole a owl:Class ; rdfs:subClassOf soc:SocialRole ; rdfs:label "political role"@en ; skos:altLabel "political position"@en ; rdfs:comment "A specific social role involving governance or formal political authority."@en ; skos:example "The positions of King and Chieftain serve as political roles."@en . soc:MilitaryRole a owl:Class ; rdfs:subClassOf soc:SocialRole ; rdfs:label "military role"@en ; skos:altLabel "military position"@en ; rdfs:comment "A social role structurally related to military leadership or combat functions."@en ; skos:example "Serving as a captain or general in the armies of Beleriand represents a military role."@en . soc:King a owl:Class ; rdfs:subClassOf soc:PoliticalRole ; owl:disjointWith soc:Servant ; rdfs:label "king"@en ; skos:altLabel "monarch"@en ; rdfs:comment "Designates the supreme sovereign or monarch of a defined realm or kingdom."@en ; skos:example "Thingol serves as the King governing the realm of Doriath."@en . soc:Chieftain a owl:Class ; rdfs:subClassOf soc:PoliticalRole ; rdfs:label "chieftain"@en ; skos:altLabel "chief"@en ; rdfs:comment "Denotes the principal leader or head of a specific people or tribal group."@en ; skos:example "Brandir acts as the chieftain leading the people of Brethil."@en . soc:Servant a owl:Class ; rdfs:subClassOf soc:SocialRole ; rdfs:label "servant"@en ; skos:altLabel "attendant"@en ; rdfs:comment "Identifies an individual bound to the service and assistance of another figure."@en ; skos:example "Sador operates as a servant in the household of Húrin."@en . soc:Outlaw a owl:Class ; rdfs:subClassOf soc:SocialRole ; rdfs:label "outlaw"@en ; skos:altLabel "fugitive"@en ; rdfs:comment "Classifies an individual existing outside the protection and constraints of organized legal structures."@en ; skos:example "Forweg and Andróg operate as outlaws in the wild lands."@en . soc:Ally a owl:Class ; rdfs:subClassOf soc:SocialRole ; owl:disjointWith soc:Outlaw ; rdfs:label "ally"@en ; skos:altLabel "companion"@en ; rdfs:comment "Represents an individual united with others in a formal or informal alliance."@en ; skos:example "Beleg stands as a steadfast ally to Túrin."@en . soc:Leader a owl:Class ; rdfs:label "leader"@en ; skos:altLabel "ruler"@en ; rdfs:comment "A general classification encompassing sovereign figures such as a King or a Chieftain."@en ; skos:example "Figures such as King Thingol and Chieftain Brandir act as leaders."@en . soc:NonLeader a owl:Class ; owl:complementOf soc:Leader ; rdfs:label "non-leader"@en ; skos:altLabel "non-ruler"@en ; rdfs:comment "Categorizes individuals who hold no sovereign or primary leadership authority."@en ; skos:example "A servant like Sador is classified as a non-leader."@en . soc:RoyalServant a owl:Class ; owl:intersectionOf ( soc:Servant [ a owl:Restriction ; owl:onProperty soc:served ; owl:someValuesFrom soc:King ] ) ; rdfs:label "royal servant"@en ; skos:altLabel "royal attendant"@en ; rdfs:comment "Designates a servant specifically sworn to the service of a royal monarch."@en ; skos:example "Beleg qualifies as a royal servant by virtue of serving King Thingol."@en . soc:EmotionalValence a owl:Class ; owl:oneOf ( soc:positive soc:negative soc:ambivalent ) ; rdfs:label "emotional valence"@en ; skos:altLabel "sentiment type"@en ; rdfs:comment "Defines a classification of emotional sentiments comprising positive negative or ambivalent states."@en ; skos:example "Húrin possesses a positive valence whereas Glaurung possesses a negative valence."@en . soc:positive a owl:NamedIndividual ; rdfs:label "positive"@en ; rdfs:comment "Represents a constructive and affirmative emotional state."@en ; skos:altLabel "positive sentiment"@en . soc:negative a owl:NamedIndividual ; rdfs:label "negative"@en ; rdfs:comment "Represents a destructive or hostile emotional state."@en ; skos:altLabel "negative sentiment"@en . soc:ambivalent a owl:NamedIndividual ; rdfs:label "ambivalent"@en ; rdfs:comment "Represents a mixed or unresolved emotional state."@en ; skos:altLabel "mixed sentiment"@en . soc:SuicidalCharacter a owl:Class ; owl:equivalentClass [ a owl:Restriction ; owl:onProperty soc:committedSuicide ; owl:hasSelf true ] ; rdfs:label "suicidal character"@en ; skos:altLabel "self slain character"@en ; rdfs:comment "Identifies a narrative figure who intentionally caused their own death."@en ; skos:example "Both Túrin and Níniel are categorized as suicidal characters."@en . soc:PositiveRelation a owl:Class ; owl:equivalentClass [ a owl:Restriction ; owl:onProperty soc:hasValence ; owl:hasValue soc:positive ] ; rdfs:label "positive relation"@en ; skos:altLabel "positive bond"@en ; rdfs:comment "Denotes a relational bond characterized by a strictly positive emotional valence."@en ; skos:example "Húrin maintains a positive relation due to his affirmative emotional valence."@en . # # Properties # soc:hasEmotionalRelationWith a owl:ObjectProperty ; rdfs:domain owl:Thing ; rdfs:range owl:Thing ; rdfs:label "has emotional relation with"@en ; skos:altLabel "feels towards"@en ; rdfs:comment "Defines a broad emotional directedness or sentiment from one character toward another."@en ; skos:example "Saeros holds a deep emotional relation rooted in hatred towards Túrin."@en . soc:loved a owl:ObjectProperty ; rdfs:subPropertyOf soc:hasEmotionalRelationWith ; rdfs:label "loved"@en ; skos:altLabel "had love for"@en ; rdfs:comment "Indicates a profound sentiment of affection or love directed at another entity."@en ; skos:example "Húrin held a deep affection and loved Morwen."@en . soc:hated a owl:ObjectProperty ; rdfs:subPropertyOf soc:hasEmotionalRelationWith ; rdfs:label "hated"@en ; skos:altLabel "had hatred for"@en ; rdfs:comment "Indicates a profound sentiment of malice or hatred directed at another entity."@en ; skos:example "Saeros harbored intense resentment and hated Túrin."@en . soc:feared a owl:ObjectProperty ; rdfs:subPropertyOf soc:hasEmotionalRelationWith ; rdfs:label "feared"@en ; skos:altLabel "had fear of"@en ; rdfs:comment "Denotes a state of dread or apprehension regarding another character."@en ; skos:example "Glaurung recognized the threat and feared Túrin."@en . soc:hasFriend a owl:ObjectProperty, owl:SymmetricProperty, owl:IrreflexiveProperty ; rdfs:subPropertyOf soc:hasEmotionalRelationWith ; rdfs:label "has friend"@en ; skos:altLabel "is a friend of"@en ; rdfs:comment "Represents a symmetric and mutual bond of friendship between two entities."@en ; skos:example "Túrin maintains a mutual friendship and has friend Sador."@en . soc:wasTheBestFriendOf a owl:ObjectProperty, owl:SymmetricProperty ; rdfs:subPropertyOf soc:hasFriend ; rdfs:label "was the best friend of"@en ; skos:altLabel "closest companion of"@en ; rdfs:comment "Specifies an exceptionally close and prioritized bond of mutual friendship."@en ; skos:example "Beleg proved his loyalty and was the best friend of Túrin."@en . soc:isAnEnemyOf a owl:ObjectProperty, owl:SymmetricProperty ; owl:propertyDisjointWith soc:hasFriend ; rdfs:label "is an enemy of"@en ; skos:altLabel "foe of"@en ; rdfs:comment "Defines a fundamentally antagonistic and hostile relationship."@en ; skos:example "Morgoth stands as a prime antagonist and is an enemy of Húrin."@en . soc:mutuallyLoved a owl:ObjectProperty, owl:SymmetricProperty ; rdfs:subPropertyOf soc:loved ; rdfs:label "mutually loved"@en ; skos:altLabel "reciprocally loved"@en ; rdfs:comment "Describes a symmetric emotional state where two characters share reciprocal affection."@en ; skos:example "Turambar and Níniel shared a bond and mutually loved each other."@en . soc:served a owl:ObjectProperty ; rdfs:domain owl:Thing ; rdfs:range owl:Thing ; rdfs:label "served"@en ; skos:altLabel "was in service of"@en ; rdfs:comment "Indicates a hierarchical relationship where one character acts as a subordinate to another."@en ; skos:example "Sador was loyal and served Húrin."@en . soc:wasServedBy a owl:ObjectProperty ; owl:inverseOf soc:served ; rdfs:label "was served by"@en ; skos:altLabel "had as servant"@en ; rdfs:comment "The inverse relation designating the superior who receives service."@en ; skos:example "Húrin held authority and was served by Sador."@en . soc:wasTheKingOf a owl:ObjectProperty, owl:AsymmetricProperty, owl:IrreflexiveProperty ; rdfs:label "was the king of"@en ; skos:altLabel "reigned over"@en ; rdfs:range loc:Place ; rdfs:comment "Specifies the geographical or political domain over which a character held absolute royal authority."@en ; skos:example "Thingol held supreme authority and was the king of Doriath."@en . soc:wasTheChieftainOf a owl:ObjectProperty ; rdfs:label "was the chieftain of"@en ; skos:altLabel "led as chief"@en ; rdfs:range loc:Place ; rdfs:comment "Specifies the domain or people over which a character exercised tribal leadership."@en ; skos:example "Brandir guided his people and was the chieftain of Brethil."@en . soc:ruled a owl:ObjectProperty ; owl:equivalentProperty soc:wasTheKingOf ; rdfs:label "ruled"@en ; skos:altLabel "governed"@en ; rdfs:comment "Functions as an equivalent property signifying sovereign rule over a domain."@en ; skos:example "Thingol governed and ruled Doriath."@en . soc:livedIn a owl:ObjectProperty ; rdfs:label "lived in"@en ; skos:altLabel "dwelt in"@en ; rdfs:range loc:Place ; rdfs:comment "Indicates a geographical location where a character resided for a significant duration."@en ; skos:example "Túrin spent parts of his life and lived in Dor-lómin and Doriath."@en . soc:wasHeldCaptiveIn a owl:ObjectProperty ; rdfs:subPropertyOf soc:livedIn ; rdfs:label "was held captive in"@en ; skos:altLabel "imprisoned in"@en ; rdfs:range loc:Place ; rdfs:comment "Specifies a location where a character was forcibly imprisoned or contained."@en ; skos:example "Húrin suffered greatly and was held captive in Angband."@en . soc:killed a owl:ObjectProperty, owl:IrreflexiveProperty, owl:AsymmetricProperty ; rdfs:label "killed"@en ; skos:altLabel "slew"@en ; rdfs:comment "Indicates a fatal action where the subject directly causes the death of the object."@en ; skos:example "Túrin engaged in a fatal conflict and killed Saeros."@en . soc:wasKilledBy a owl:ObjectProperty ; owl:inverseOf soc:killed ; rdfs:label "was killed by"@en ; skos:altLabel "slain by"@en ; rdfs:comment "The inverse relation specifying the perpetrator of a fatal action against the subject."@en ; skos:example "Beleg suffered a tragic fate and was killed by Gorthol."@en . soc:committedSuicide a owl:ObjectProperty ; rdfs:label "committed suicide"@en ; skos:altLabel "took own life"@en ; rdfs:comment "Denotes the tragic act of a character intentionally taking their own life."@en ; skos:example "Túrin fell into despair and committed suicide with his sword Gurthang."@en . soc:cursed a owl:ObjectProperty ; rdfs:label "cursed"@en ; skos:altLabel "placed a curse on"@en ; rdfs:comment "Describes an act where a character invokes supernatural malevolence or a curse upon another."@en ; skos:example "Mîm sought revenge and cursed Andróg after the killing of Khîm."@en . soc:hypnotised a owl:ObjectProperty ; rdfs:label "hypnotised"@en ; skos:altLabel "cast a spell on"@en ; rdfs:comment "Indicates the act of subjecting another character to a mental spell or hypnotic enchantment."@en ; skos:example "Glaurung used his power and hypnotised Níniel."@en . soc:isAKinsmanOf a owl:ObjectProperty, owl:SymmetricProperty ; rdfs:label "is a kinsman of"@en ; skos:altLabel "kin of"@en ; rdfs:comment "Represents a symmetric bond based on shared familial lineage or blood relation."@en ; skos:example "Túrin shares a bloodline and is a kinsman of Nienor."@en . soc:isMarriedTo a owl:ObjectProperty ; a owl:SymmetricProperty, owl:IrreflexiveProperty ; rdfs:label "is married to"@en ; skos:altLabel "wed to"@en ; rdfs:comment "Denotes a formal and symmetric matrimonial relationship between two entities."@en ; skos:example "Turambar formalized his bond and is married to Níniel."@en . soc:hasValence a owl:ObjectProperty ; a owl:FunctionalProperty ; rdfs:range soc:EmotionalValence ; rdfs:label "has valence"@en ; skos:altLabel "has sentiment"@en ; rdfs:comment "Functionally assigns a specific emotional state or valence to a relational entity."@en ; skos:example "Húrin acts functionally and has valence positive."@en . # # Axioms # soc:Leader owl:equivalentClass [ a owl:Class ; owl:unionOf ( soc:King soc:Chieftain ) ] . soc:livedIn owl:propertyChainAxiom ( soc:served soc:wasTheKingOf ) . soc:King rdfs:subClassOf [ a owl:Restriction ; owl:onProperty soc:wasServedBy ; owl:allValuesFrom soc:Servant ] . soc:King rdfs:subClassOf [ a owl:Restriction ; owl:onProperty soc:wasTheKingOf ; owl:someValuesFrom loc:Place ] . soc:Outlaw rdfs:subClassOf [ a owl:Restriction ; owl:onProperty soc:isAnEnemyOf ; owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; owl:onClass owl:Thing ] . soc:isAnEnemyOf a owl:IrreflexiveProperty . soc:served a owl:AsymmetricProperty, owl:IrreflexiveProperty . soc:hasFriend owl:propertyDisjointWith soc:isAnEnemyOf . soc:Ally owl:disjointWith soc:Outlaw . soc:Servant owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( soc:SocialRole [ a owl:Restriction ; owl:onProperty soc:served ; owl:someValuesFrom owl:Thing ] ) ] . soc:Chieftain rdfs:subClassOf [ a owl:Restriction ; owl:onProperty soc:wasTheChieftainOf ; owl:someValuesFrom loc:Place ] . soc:killed owl:propertyDisjointWith soc:served . soc:wasServedBy owl:propertyDisjointWith soc:isAnEnemyOf . [] a owl:AllDisjointProperties ; owl:members ( soc:loved soc:hated soc:feared ) . evnt:Event a owl:Class ; rdfs:subClassOf to:FiniteInterval ; rdfs:label "event"@en ; skos:altLabel "occurrence"@en ; rdfs:comment "A spatio-temporal occurrence involving participants and locations. Every event is a finite temporal interval."@en ; skos:example "The Battle of Unnumbered Tears is an event occurring in Beleriand."@en . evnt:LifeEvent a owl:Class ; rdfs:subClassOf evnt:Event ; rdfs:label "life event"@en ; skos:altLabel "life occurrence"@en ; rdfs:comment "A significant moment in a character's life."@en ; skos:example "The birth of Túrin in Dor-lómin is a life event."@en . evnt:Birth a owl:Class ; rdfs:subClassOf evnt:LifeEvent ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:begets ; owl:someValuesFrom owl:Thing ] ; rdfs:label "birth"@en ; skos:altLabel "nativity"@en ; rdfs:comment "The coming into existence of a character."@en ; skos:example "The birth of Túrin takes place in Dor-lómin."@en . evnt:Death a owl:Class ; rdfs:subClassOf evnt:LifeEvent ; owl:disjointWith evnt:Birth ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:hasVictim ; owl:someValuesFrom owl:Thing ] ; rdfs:label "death"@en ; skos:altLabel "demise"@en ; rdfs:comment "The death of a character."@en ; skos:example "The death of Beleg is caused by Túrin."@en . evnt:Suicide a owl:Class ; rdfs:subClassOf evnt:Death ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:hasAgent ; owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; owl:onClass owl:Thing ] ; rdfs:label "suicide"@en ; skos:altLabel "self-destruction"@en ; rdfs:comment "A form of death in which the agent and the victim are identical."@en ; skos:example "Turambar dies by falling on his own sword Gurthang."@en . evnt:Murder a owl:Class ; rdfs:subClassOf evnt:Death ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:hasAgent ; owl:someValuesFrom owl:Thing ] ; rdfs:label "murder"@en ; skos:altLabel "homicide"@en ; rdfs:comment "A death caused intentionally by another."@en ; skos:example "The death of Saeros is caused by Túrin."@en . evnt:Marriage a owl:Class ; rdfs:subClassOf evnt:LifeEvent ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:hasParticipant ; owl:qualifiedCardinality "2"^^xsd:nonNegativeInteger ; owl:onClass owl:Thing ] ; rdfs:label "marriage"@en ; skos:altLabel "wedding"@en ; rdfs:comment "A formal union between two characters."@en ; skos:example "The marriage of Turambar and Níniel in Brethil."@en . evnt:ConflictEvent a owl:Class ; rdfs:subClassOf evnt:Event ; rdfs:label "conflict event"@en ; skos:altLabel "clash"@en ; rdfs:comment "An event characterised by antagonism or violence."@en ; skos:example "The Nirnaeth Arnoediad is a conflict event in Beleriand."@en . evnt:Battle a owl:Class ; rdfs:subClassOf evnt:ConflictEvent ; rdfs:label "battle"@en ; skos:altLabel "armed conflict"@en ; rdfs:comment "A large scale violent confrontation."@en ; skos:example "The Nirnaeth Arnoediad is the Battle of Unnumbered Tears."@en . evnt:War a owl:Class ; rdfs:subClassOf evnt:ConflictEvent ; rdfs:label "war"@en ; skos:altLabel "prolonged conflict"@en ; rdfs:comment "A prolonged conflict composed of multiple battles."@en ; skos:example "The Wars of Beleriand include the Nirnaeth Arnoediad."@en . evnt:Duel a owl:Class ; rdfs:subClassOf evnt:ConflictEvent ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:hasParticipant ; owl:qualifiedCardinality "2"^^xsd:nonNegativeInteger ; owl:onClass owl:Thing ] ; rdfs:label "duel"@en ; skos:altLabel "single combat"@en ; rdfs:comment "A fight between exactly two combatants."@en ; skos:example "The duel between Turambar and Glaurung at Cabed-en-Aras."@en . evnt:Siege a owl:Class ; rdfs:subClassOf evnt:ConflictEvent ; rdfs:label "siege"@en ; skos:altLabel "blockade"@en ; rdfs:comment "A military blockade of a city or fortress."@en ; skos:example "The siege and sack of Nargothrond."@en . evnt:MovementEvent a owl:Class ; rdfs:subClassOf evnt:Event ; rdfs:label "movement event"@en ; skos:altLabel "movement"@en ; rdfs:comment "An event involving physical movement of characters between places."@en ; skos:example "Túrin travels from Dor-lómin to Doriath."@en . evnt:Travel a owl:Class ; rdfs:subClassOf evnt:MovementEvent ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:hasOrigin ; owl:someValuesFrom loc:Place ] ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:hasDestination ; owl:someValuesFrom loc:Place ] ; rdfs:label "travel"@en ; skos:altLabel "journey"@en ; rdfs:comment "A journey. Every travel has origin and destination."@en ; skos:example "Túrin travels from Dor-lómin to Doriath."@en . evnt:Flight a owl:Class ; rdfs:subClassOf evnt:MovementEvent ; rdfs:label "flight"@en ; skos:altLabel "escape"@en ; rdfs:comment "An event in which characters flee from danger."@en ; skos:example "The flight of survivors from the fall of Nargothrond."@en . evnt:Exile a owl:Class ; rdfs:subClassOf evnt:MovementEvent ; rdfs:label "exile"@en ; skos:altLabel "banishment"@en ; rdfs:comment "A forced departure from the homeland."@en ; skos:example "The exile of Túrin from Doriath after the death of Saeros."@en . evnt:Captivity a owl:Class ; rdfs:subClassOf evnt:Event ; rdfs:label "captivity"@en ; skos:altLabel "imprisonment"@en ; rdfs:comment "An event in which a character is held as a prisoner."@en ; skos:example "The captivity of Húrin in Angband by Morgoth."@en . evnt:SocialEvent a owl:Class ; rdfs:subClassOf evnt:Event ; rdfs:label "social event"@en ; skos:altLabel "social gathering"@en ; rdfs:comment "An event involving social interaction between characters."@en ; skos:example "The trial of Túrin in absence at Menegroth."@en . evnt:Meeting a owl:Class ; rdfs:subClassOf evnt:SocialEvent ; rdfs:label "meeting"@en ; skos:altLabel "encounter"@en ; rdfs:comment "An encounter or gathering of characters."@en ; skos:example "Túrin meets Beleg in the wild."@en . evnt:Coronation a owl:Class ; rdfs:subClassOf evnt:SocialEvent ; rdfs:label "coronation"@en ; skos:altLabel "crowning ceremony"@en ; rdfs:comment "A ceremony of crowning a ruler."@en ; skos:example "Turgon is crowned King of Gondolin."@en . evnt:Feast a owl:Class ; rdfs:subClassOf evnt:SocialEvent ; rdfs:label "feast"@en ; skos:altLabel "banquet"@en ; rdfs:comment "A large celebratory meal or banquet."@en ; skos:example "A feast held in the halls of Menegroth."@en . evnt:Council a owl:Class ; rdfs:subClassOf evnt:SocialEvent ; rdfs:label "council"@en ; skos:altLabel "deliberation"@en ; rdfs:comment "A formal meeting for deliberation or the reaching of a consensus."@en ; skos:example "A council of the Elves in Nargothrond."@en . evnt:Trial a owl:Class ; rdfs:subClassOf evnt:SocialEvent ; rdfs:label "trial"@en ; skos:altLabel "judgement"@en ; rdfs:comment "A judicial examination or hearing."@en ; skos:example "The trial of Túrin in absence, where Nellas testifies."@en . evnt:Curse a owl:Class ; rdfs:subClassOf evnt:Event ; rdfs:label "curse"@en ; skos:altLabel "malediction"@en ; rdfs:comment "A supernatural imprecation bringing misfortune."@en ; skos:example "Mîm curses Andróg after the killing of Khîm."@en . evnt:Prophecy a owl:Class ; rdfs:subClassOf evnt:Event ; rdfs:label "prophecy"@en ; skos:altLabel "foretelling"@en ; rdfs:comment "A prediction of future events, often supernatural."@en ; skos:example "Morgoth's doom: thou shalt see with my eyes."@en . evnt:Enchantment a owl:Class ; rdfs:subClassOf evnt:Event ; rdfs:label "enchantment"@en ; skos:altLabel "spell"@en ; rdfs:comment "A magical effect imposed on a character."@en ; skos:example "Glaurung hypnotises Níniel at Nargothrond."@en . evnt:Discovery a owl:Class ; rdfs:subClassOf evnt:Event ; rdfs:label "discovery"@en ; skos:altLabel "revelation"@en ; rdfs:comment "An event where something hidden is found or revealed."@en ; skos:example "The truth about Níniel's identity is revealed."@en . evnt:Betrayal a owl:Class ; rdfs:subClassOf evnt:Event ; rdfs:label "betrayal"@en ; skos:altLabel "treachery"@en ; rdfs:comment "An act of disloyalty involving betrayal of trust."@en ; skos:example "Mîm betrays Túrin to the Orcs at Amon Rûdh."@en . # # Properties # evnt:hasParticipant a owl:ObjectProperty ; rdfs:domain evnt:Event ; rdfs:label "has participant"@en ; skos:altLabel "involves"@en ; rdfs:comment "An entity that takes part in the event."@en ; skos:example "The Battle of Unnumbered Tears has participant Húrin."@en . evnt:hasAgent a owl:ObjectProperty ; rdfs:subPropertyOf evnt:hasParticipant ; rdfs:domain evnt:Event ; rdfs:label "has agent"@en ; skos:altLabel "done by"@en ; rdfs:comment "The entity that intentionally causes or performs the event."@en ; skos:example "The death of Saeros has agent Túrin."@en . evnt:hasPatient a owl:ObjectProperty ; rdfs:subPropertyOf evnt:hasParticipant ; rdfs:domain evnt:Event ; rdfs:label "has patient"@en ; skos:altLabel "affects"@en ; rdfs:comment "The entity affected by the event."@en ; skos:example "Glaurung hypnotises Níniel, with Níniel as the patient."@en . evnt:hasVictim a owl:ObjectProperty ; rdfs:subPropertyOf evnt:hasPatient ; rdfs:domain evnt:Event ; rdfs:label "has victim"@en ; skos:altLabel "harms"@en ; rdfs:comment "The entity that suffers harm in the event."@en ; skos:example "The death of Beleg has victim Beleg."@en . evnt:hasWitness a owl:ObjectProperty ; rdfs:subPropertyOf evnt:hasParticipant ; rdfs:domain evnt:Event ; rdfs:label "has witness"@en ; skos:altLabel "observed by"@en ; rdfs:comment "An entity that observes the event without acting."@en ; skos:example "Mîm's betrayal has witness Andróg."@en . evnt:begets a owl:ObjectProperty ; rdfs:subPropertyOf evnt:hasParticipant ; rdfs:domain evnt:Birth ; rdfs:label "begets"@en ; skos:altLabel "brings forth"@en ; rdfs:comment "The character brought into existence by a birth event."@en ; skos:example "The birth of Túrin begets Túrin."@en . evnt:isBegottenIn a owl:ObjectProperty ; owl:inverseOf evnt:begets ; rdfs:domain owl:Thing ; rdfs:range evnt:Birth ; rdfs:label "is begotten in"@en ; rdfs:comment "Inverse of begets. Links a character to the birth event that brings them into existence."@en ; skos:example "Túrin is begotten in the birth of Túrin."@en . evnt:hasTraveller a owl:ObjectProperty ; rdfs:subPropertyOf evnt:hasParticipant ; rdfs:domain evnt:Travel ; rdfs:label "has traveller"@en ; skos:altLabel "travelled by"@en ; rdfs:comment "The character who undertakes the travel."@en ; skos:example "Túrin, Gethron and Grithnir are travellers in the journey to Doriath."@en . evnt:occursAt a owl:ObjectProperty ; rdfs:domain evnt:Event ; rdfs:range loc:Place ; rdfs:label "occurs at"@en ; skos:altLabel "takes place at"@en ; rdfs:comment "The place where the event occurs."@en ; skos:example "The Captivity of Húrin occurs at Angband."@en . evnt:hasOrigin a owl:ObjectProperty ; rdfs:subPropertyOf evnt:occursAt ; rdfs:domain evnt:MovementEvent ; rdfs:range loc:Place ; rdfs:label "has origin"@en ; skos:altLabel "departs from"@en ; rdfs:comment "The starting place of a movement event."@en ; skos:example "Túrin's journey to Doriath has origin Dor-lómin."@en . evnt:hasDestination a owl:ObjectProperty ; rdfs:subPropertyOf evnt:occursAt ; rdfs:domain evnt:MovementEvent ; rdfs:range loc:Place ; rdfs:label "has destination"@en ; skos:altLabel "arrives at"@en ; rdfs:comment "The ending place of a movement event."@en ; skos:example "Túrin's journey has destination Doriath."@en . evnt:precedes a owl:ObjectProperty, owl:TransitiveProperty ; rdfs:subPropertyOf to:precedes ; rdfs:domain evnt:Event ; rdfs:range evnt:Event ; rdfs:label "precedes"@en ; skos:altLabel "comes before"@en ; rdfs:comment "This event occurs before another event."@en ; skos:example "The Nirnaeth Arnoediad precedes Túrin's journey to Doriath."@en . evnt:causes a owl:ObjectProperty, owl:TransitiveProperty ; rdfs:domain evnt:Event ; rdfs:range evnt:Event ; rdfs:label "causes"@en ; skos:altLabel "leads to"@en ; rdfs:comment "This event causally leads to another event."@en ; skos:example "The death of Saeros causes the exile of Túrin from Doriath."@en . evnt:isCausedBy a owl:ObjectProperty ; owl:inverseOf evnt:causes ; rdfs:label "is caused by"@en ; skos:altLabel "results from"@en ; rdfs:comment "Inverse of causes. This event results from another."@en ; skos:example "The exile of Túrin is caused by the death of Saeros."@en . evnt:hasSubEvent a owl:ObjectProperty, owl:TransitiveProperty ; rdfs:domain evnt:Event ; rdfs:range evnt:Event ; rdfs:label "has subevent"@en ; skos:altLabel "contains event"@en ; rdfs:comment "A smaller event that occurs as part of this one."@en ; skos:example "The Wars of Beleriand has subevent the Nirnaeth Arnoediad."@en . evnt:isSubEventOf a owl:ObjectProperty ; owl:inverseOf evnt:hasSubEvent ; rdfs:label "is subevent of"@en ; skos:altLabel "part of event"@en ; rdfs:comment "This event is part of a larger event."@en ; skos:example "The Nirnaeth Arnoediad is a subevent of the Wars of Beleriand."@en . evnt:hasCause a owl:ObjectProperty ; rdfs:domain evnt:Event ; rdfs:label "has cause"@en ; skos:altLabel "caused by"@en ; rdfs:comment "An entity involved as a contributing cause in the event."@en ; skos:example "The death of Beleg has cause Anglachel."@en . evnt:creates a owl:ObjectProperty ; rdfs:domain evnt:Event ; rdfs:label "creates"@en ; skos:altLabel "results in"@en ; rdfs:comment "An entity produced or created by the event."@en ; skos:example "The reforging of Anglachel creates Gurthang."@en . # # Axioms # evnt:isSubEventOf rdfs:subPropertyOf to:during . evnt:causes rdfs:subPropertyOf evnt:precedes . evnt:Murder owl:disjointWith evnt:Suicide . evnt:Murder owl:disjointWith evnt:Birth . evnt:Birth owl:disjointWith evnt:Marriage . evnt:ConflictEvent owl:disjointWith evnt:SocialEvent . evnt:MovementEvent owl:disjointWith evnt:ConflictEvent . evnt:Curse owl:disjointWith evnt:Prophecy . evnt:Betrayal owl:disjointWith evnt:Meeting . evnt:Murder owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( evnt:Death [ a owl:Restriction ; owl:onProperty evnt:hasAgent ; owl:someValuesFrom owl:Thing ] ) ] . evnt:War owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( evnt:ConflictEvent [ a owl:Restriction ; owl:onProperty evnt:hasSubEvent ; owl:someValuesFrom evnt:Battle ] ) ] . evnt:Travel owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( evnt:MovementEvent [ a owl:Restriction ; owl:onProperty evnt:hasOrigin ; owl:someValuesFrom loc:Place ] [ a owl:Restriction ; owl:onProperty evnt:hasDestination ; owl:someValuesFrom loc:Place ] ) ] . # A Birth occurs only at Places evnt:Birth rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:occursAt ; owl:allValuesFrom loc:Place ] . # Siege occurs only at fortified locations evnt:Siege rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:occursAt ; owl:allValuesFrom loc:Settlement ] . evnt:hasOrigin owl:propertyDisjointWith evnt:hasDestination . evnt:Suicide rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:hasVictim ; owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ; owl:onClass owl:Thing ] . evnt:Coronation rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:hasAgent ; owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ; owl:onClass owl:Thing ] . evnt:causes a owl:AsymmetricProperty, owl:IrreflexiveProperty . evnt:precedes a owl:AsymmetricProperty, owl:IrreflexiveProperty . evnt:hasSubEvent a owl:AsymmetricProperty, owl:IrreflexiveProperty . evnt:hasAgent a owl:IrreflexiveProperty . evnt:occursAt a owl:IrreflexiveProperty . evnt:hasAgent owl:propertyDisjointWith evnt:hasWitness . evnt:Event rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:occursAt ; owl:someValuesFrom loc:Place ] . evnt:Event rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:hasParticipant ; owl:someValuesFrom owl:Thing ] . plot:Story a owl:Class ; rdfs:label "story"@en ; skos:altLabel "narrative"@en ; rdfs:comment "A complete narrative work."@en ; skos:example "The Narn i Chîn Húrin is a story by J.R.R. Tolkien."@en . plot:NarrativeUnit a owl:Class ; rdfs:label "narrative unit"@en ; skos:altLabel "story division"@en ; rdfs:comment "A structural division of a story."@en ; skos:example "Part I: The Childhood of Túrin is a narrative unit."@en . plot:Part a owl:Class ; rdfs:subClassOf plot:NarrativeUnit ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty plot:containsUnit ; owl:someValuesFrom plot:Chapter ] ; rdfs:label "part"@en ; skos:altLabel "story part"@en ; rdfs:comment "A major division of a story containing chapters."@en ; skos:example "Part III: Túrin in Nargothrond and Brethil is a major story part."@en . plot:Chapter a owl:Class ; rdfs:subClassOf plot:NarrativeUnit ; rdfs:label "chapter"@en ; skos:altLabel "story chapter"@en ; rdfs:comment "A numbered or titled section of a narrative."@en ; skos:example "Túrin in Dor-lómin is a chapter in the Narn."@en . plot:Scene a owl:Class ; rdfs:subClassOf plot:NarrativeUnit ; rdfs:label "scene"@en ; skos:altLabel "story scene"@en ; rdfs:comment "The smallest narrative unit; a continuous action in one setting."@en ; skos:example "The scene where Túrin accidentally kills Beleg."@en . plot:Act a owl:Class ; rdfs:subClassOf plot:NarrativeUnit ; rdfs:label "act"@en ; skos:altLabel "story act"@en ; rdfs:comment "A major division in drama or narrative, often five in classical structure."@en ; skos:example "Act III of a five act tragedy."@en . plot:NarrativeElement a owl:Class ; rdfs:label "narrative element"@en ; skos:altLabel "story element"@en ; rdfs:comment "A stage in the narrative arc."@en ; skos:example "The Climax of the Narn is a narrative element."@en . plot:Exposition a owl:Class ; rdfs:subClassOf plot:NarrativeElement ; rdfs:label "exposition"@en ; skos:altLabel "setup"@en ; rdfs:comment "Introduction of setting, characters, and background."@en ; skos:example "Húrin's family and the curse of Morgoth."@en . plot:IncitingIncident a owl:Class ; rdfs:subClassOf plot:NarrativeElement ; rdfs:label "inciting incident"@en ; skos:altLabel "catalyst"@en ; rdfs:comment "The event that sets the main conflict in motion."@en ; skos:example "Túrin is sent to Doriath, setting his wanderings in motion."@en . plot:RisingAction a owl:Class ; rdfs:subClassOf plot:NarrativeElement ; rdfs:label "rising action"@en ; skos:altLabel "complication"@en ; rdfs:comment "Series of events building tension toward the climax."@en ; skos:example "Túrin's wanderings and tragedies such as the death of his father, his exile, and battles."@en . plot:Climax a owl:Class ; rdfs:subClassOf plot:NarrativeElement ; rdfs:label "climax"@en ; skos:altLabel "turning point"@en ; rdfs:comment "The turning point; the moment of highest tension."@en ; skos:example "The slaying of Glaurung and the truth about Níniel revealed."@en . plot:FallingAction a owl:Class ; rdfs:subClassOf plot:NarrativeElement ; rdfs:label "falling action"@en ; skos:altLabel "unwinding"@en ; rdfs:comment "Events after the climax leading to the resolution."@en ; skos:example "The aftermath of the revelation and the deaths that follow."@en . plot:Resolution a owl:Class ; rdfs:subClassOf plot:NarrativeElement ; rdfs:label "resolution"@en ; skos:altLabel "conclusion"@en ; rdfs:comment "The outcome; how the conflict is resolved."@en ; skos:example "The deaths of Níniel and Turambar resolve the Narn."@en . plot:Denouement a owl:Class ; owl:equivalentClass plot:Resolution ; rdfs:label "denouement"@en ; skos:altLabel "final outcome"@en ; rdfs:comment "The final unravelling of the plot."@en ; skos:example "Both Níniel and Turambar perish in the denouement of the Narn."@en . plot:PlotDevice a owl:Class ; rdfs:label "plot device"@en ; skos:altLabel "narrative device"@en ; rdfs:comment "A technique used to advance or structure the plot."@en ; skos:example "Dramatic irony is a plot device used throughout the Narn."@en . plot:PlotTwist a owl:Class ; rdfs:subClassOf plot:PlotDevice ; rdfs:label "plot twist"@en ; skos:altLabel "unexpected turn"@en ; rdfs:comment "An unexpected revelation that changes the story's direction."@en ; skos:example "Níniel's true identity as Nienor, sister of Túrin."@en . plot:Foreshadowing a owl:Class ; rdfs:subClassOf plot:PlotDevice ; rdfs:label "foreshadowing"@en ; skos:altLabel "hint of future events"@en ; rdfs:comment "Hints or clues about future events in the story."@en ; skos:example "Morgoth's curse foreshadows all the tragedies that befall Húrin's children."@en . plot:DramaticIrony a owl:Class ; rdfs:subClassOf plot:PlotDevice ; rdfs:label "dramatic irony"@en ; skos:altLabel "audience knowledge gap"@en ; rdfs:comment "When the audience knows more than the characters."@en ; skos:example "The audience knows Túrin's identity while others do not."@en . plot:Flashback a owl:Class ; rdfs:subClassOf plot:PlotDevice ; rdfs:label "flashback"@en ; skos:altLabel "retrospection"@en ; rdfs:comment "A scene set in a time earlier than the main story."@en ; skos:example "Húrin's memories of his family before the war."@en . plot:MacGuffin a owl:Class ; rdfs:subClassOf plot:PlotDevice ; rdfs:label "MacGuffin"@en ; skos:altLabel "plot motivator"@en ; rdfs:comment "An object or goal that motivates the plot but has no intrinsic importance."@en ; skos:example "The Dragon-helm marks Túrin's identity wherever he goes."@en . plot:Anagnorisis a owl:Class ; rdfs:subClassOf plot:PlotDevice ; rdfs:label "anagnorisis"@en ; skos:altLabel "moment of recognition"@en ; rdfs:comment "A moment where a character makes a critical discovery about an identity or situation."@en ; skos:example "Níniel discovers she is Nienor, sister of Túrin."@en . plot:Peripeteia a owl:Class ; rdfs:subClassOf plot:PlotDevice ; rdfs:label "peripeteia"@en ; skos:altLabel "reversal of fortune"@en ; rdfs:comment "A sudden reversal of fortune or change in circumstances."@en ; skos:example "Turambar's triumph over Glaurung turns to ruin when the truth is revealed."@en . plot:Conflict a owl:Class ; rdfs:label "conflict"@en ; skos:altLabel "tension"@en ; rdfs:comment "A struggle between opposing forces driving the plot."@en ; skos:example "Morgoth's curse against Húrin's family is a central conflict."@en . plot:InternalConflict a owl:Class ; rdfs:subClassOf plot:Conflict ; owl:disjointWith plot:ExternalConflict ; rdfs:label "internal conflict"@en ; skos:altLabel "inner struggle"@en ; rdfs:comment "Conflict within a character such as a moral dilemma or fear."@en ; skos:example "Túrin's struggle against fate and his own pride."@en . plot:ExternalConflict a owl:Class ; rdfs:subClassOf plot:Conflict ; rdfs:label "external conflict"@en ; skos:altLabel "outer struggle"@en ; rdfs:comment "Conflict between a character and an external force such as an antagonist, nature, or society."@en ; skos:example "Morgoth's curse against Húrin's family involves Morgoth and Húrin."@en . plot:CharacterRole a owl:Class ; rdfs:label "character role"@en ; skos:altLabel "story role"@en ; rdfs:comment "The narrative function a character plays in the story."@en ; skos:example "Túrin has the role of Protagonist and Tragic Hero."@en . plot:Protagonist a owl:Class ; rdfs:subClassOf plot:CharacterRole ; owl:disjointWith plot:Antagonist ; rdfs:label "protagonist"@en ; skos:altLabel "main character"@en ; rdfs:comment "The main character; the one driving the action."@en ; skos:example "Túrin is the protagonist of the Narn."@en . plot:Antagonist a owl:Class ; rdfs:subClassOf plot:CharacterRole ; rdfs:label "antagonist"@en ; skos:altLabel "villain"@en ; rdfs:comment "The character who opposes the protagonist."@en ; skos:example "Glaurung is the antagonist who opposes Túrin."@en . plot:Mentor a owl:Class ; rdfs:subClassOf plot:CharacterRole ; rdfs:label "mentor"@en ; skos:altLabel "guide figure"@en ; rdfs:comment "A character who guides or teaches the protagonist."@en ; skos:example "Beleg serves as mentor to the young Túrin."@en . plot:TragicHero a owl:Class ; rdfs:subClassOf plot:CharacterRole ; rdfs:label "tragic hero"@en ; skos:altLabel "tragic protagonist"@en ; rdfs:comment "A protagonist whose flaw leads to their downfall."@en ; skos:example "Túrin is a tragic hero whose pride leads to his downfall."@en . plot:Genre a owl:Class ; rdfs:label "genre"@en ; skos:altLabel "literary genre"@en ; rdfs:comment "A category of narrative with shared conventions."@en ; skos:example "The Narn fits into genres like Tragedy and Epic."@en . plot:Tragedy a owl:Class ; rdfs:subClassOf plot:Genre ; rdfs:label "tragedy"@en ; skos:altLabel "tragic genre"@en ; rdfs:comment "A story where the protagonist suffers a downfall."@en ; skos:example "The Narn is a tragedy: Túrin and Nienor both perish."@en . plot:Epic a owl:Class ; rdfs:subClassOf plot:Genre ; rdfs:label "epic"@en ; skos:altLabel "epic genre"@en ; rdfs:comment "A long narrative involving heroic deeds and grand scale."@en ; skos:example "The Narn is an epic spanning wars, exiles, and dragon slaying."@en . plot:Fantasy a owl:Class ; rdfs:subClassOf plot:Genre ; rdfs:label "fantasy"@en ; skos:altLabel "fantasy genre"@en ; rdfs:comment "A story with magical or supernatural elements."@en ; skos:example "The Narn is a fantasy with dragons, curses, and enchantments."@en . # # Properties # plot:containsUnit a owl:ObjectProperty, owl:TransitiveProperty ; rdfs:domain plot:NarrativeUnit ; rdfs:range plot:NarrativeUnit ; rdfs:label "contains unit"@en ; skos:altLabel "includes unit"@en ; rdfs:comment "Relates a narrative unit to its contained subunits."@en ; skos:example "Part I contains the chapter Túrin in Dor-lómin."@en . plot:isUnitOf a owl:ObjectProperty ; owl:inverseOf plot:containsUnit ; rdfs:label "is unit of"@en ; skos:altLabel "belongs to"@en ; rdfs:comment "Inverse of containsUnit, relates a unit to its parent."@en ; skos:example "The chapter Túrin in Dor-lómin is a unit of Part I."@en . plot:hasNarrativeUnit a owl:ObjectProperty ; rdfs:domain plot:Story ; rdfs:range plot:NarrativeUnit ; rdfs:label "has narrative unit"@en ; skos:altLabel "divided into"@en ; rdfs:comment "Links a story to its structural units."@en ; skos:example "The Narn has narrative units Part I, Part II, Part III."@en . plot:unitIndex a owl:DatatypeProperty ; rdfs:domain plot:NarrativeUnit ; rdfs:range xsd:positiveInteger ; rdfs:label "unit index"@en ; skos:altLabel "sequence number"@en ; rdfs:comment "The ordering position of a unit within its parent."@en ; skos:example "Part I has unit index 1."@en . plot:hasNarrativeElement a owl:ObjectProperty ; rdfs:domain plot:Story ; rdfs:range plot:NarrativeElement ; rdfs:label "has narrative element"@en ; skos:altLabel "has element"@en ; rdfs:comment "Links a story to its plot stages."@en ; skos:example "The Narn includes narrative elements like Exposition and Climax."@en . plot:correspondsToEvent a owl:ObjectProperty ; rdfs:domain plot:NarrativeElement ; rdfs:range evnt:Event ; rdfs:label "corresponds to event"@en ; skos:altLabel "maps to event"@en ; rdfs:comment "Maps a narrative element to the event it represents."@en ; skos:example "The Climax corresponds to the Slaying of Glaurung."@en . plot:occursInUnit a owl:ObjectProperty ; rdfs:domain plot:NarrativeElement ; rdfs:range plot:NarrativeUnit ; rdfs:label "occurs in unit"@en ; skos:altLabel "located in unit"@en ; rdfs:comment "The narrative unit in which this element appears."@en ; skos:example "The Falling Action occurs in Part III."@en . plot:usesDevice a owl:ObjectProperty ; rdfs:domain plot:Story ; rdfs:range plot:PlotDevice ; rdfs:label "uses device"@en ; skos:altLabel "employs device"@en ; rdfs:comment "Links a story to the plot devices it employs."@en ; skos:example "The Narn uses devices: Dramatic Irony, Anagnorisis, Peripeteia."@en . plot:deviceInvolvesCharacter a owl:ObjectProperty ; rdfs:domain plot:PlotDevice ; rdfs:label "device involves character"@en ; skos:altLabel "device concerns"@en ; rdfs:comment "A character involved in or affected by this plot device."@en ; skos:example "The Anagnorisis device involves Níniel and Turambar."@en . plot:foreshadowsEvent a owl:ObjectProperty ; rdfs:domain plot:Foreshadowing ; rdfs:range evnt:Event ; rdfs:label "foreshadows event"@en ; skos:altLabel "hints at"@en ; rdfs:comment "The event that this foreshadowing hints at."@en ; skos:example "Morgoth's curse foreshadows the death of Turambar."@en . plot:hasRole a owl:ObjectProperty ; rdfs:range plot:CharacterRole ; rdfs:label "has role"@en ; skos:altLabel "plays role"@en ; rdfs:comment "The narrative role a character plays."@en ; skos:example "Túrin has role Protagonist and Tragic Hero."@en . plot:hasConflict a owl:ObjectProperty ; rdfs:domain plot:Story ; rdfs:range plot:Conflict ; rdfs:label "has conflict"@en ; skos:altLabel "has tension"@en ; rdfs:comment "A conflict central to the story."@en ; skos:example "Morgoth's curse against Húrin's family is a conflict in the Narn."@en . plot:conflictInvolves a owl:ObjectProperty ; rdfs:domain plot:Conflict ; rdfs:label "conflict involves"@en ; skos:altLabel "tension involves"@en ; rdfs:comment "A character or entity involved in the conflict."@en ; skos:example "Morgoth's curse involves Morgoth and Húrin."@en . plot:hasGenre a owl:ObjectProperty ; rdfs:domain plot:Story ; rdfs:range plot:Genre ; rdfs:label "has genre"@en ; skos:altLabel "genre is"@en ; rdfs:comment "The genre(s) of the story."@en ; skos:example "The Narn has genre Tragedy, Epic, and Fantasy."@en . plot:hasAuthor a owl:ObjectProperty ; rdfs:domain plot:Story ; rdfs:label "has author"@en ; skos:altLabel "written by"@en ; rdfs:comment "The author of the story."@en ; skos:example "The Narn has author J.R.R. Tolkien."@en . plot:hasTheme a owl:ObjectProperty ; rdfs:domain plot:Story ; rdfs:label "has theme"@en ; skos:altLabel "explores theme"@en ; rdfs:comment "A thematic element or motif in the story."@en ; skos:example "The Narn explores themes like fate and pride."@en . plot:publishedDate a owl:DatatypeProperty ; rdfs:domain plot:Story ; rdfs:range xsd:date ; rdfs:label "published date"@en ; skos:altLabel "date published"@en ; rdfs:comment "The date the story was published."@en ; skos:example "The Narn was published on 2007-04-17."@en . # # Axioms # plot:Story rdfs:subClassOf [ a owl:Restriction ; owl:onProperty plot:hasNarrativeUnit ; owl:someValuesFrom plot:NarrativeUnit ] . plot:Scene rdfs:subClassOf [ a owl:Restriction ; owl:onProperty plot:containsUnit ; owl:allValuesFrom owl:Nothing ] . plot:TragicHero owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( plot:Protagonist [ a owl:Restriction ; owl:onProperty plot:involvedInDevice ; owl:someValuesFrom plot:Peripeteia ] ) ] . plot:Anagnorisis owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( plot:PlotDevice [ a owl:Restriction ; owl:onProperty plot:correspondsToEvent ; owl:someValuesFrom evnt:Discovery ] ) ] . plot:Exposition owl:disjointWith plot:Climax . plot:Exposition owl:disjointWith plot:Resolution . plot:Climax owl:disjointWith plot:Resolution . plot:RisingAction owl:disjointWith plot:FallingAction . plot:IncitingIncident owl:disjointWith plot:Resolution . plot:PlotDevice owl:disjointWith plot:NarrativeElement . plot:Genre owl:disjointWith plot:Conflict . plot:Story rdfs:subClassOf [ a owl:Restriction ; owl:onProperty plot:hasNarrativeElement ; owl:someValuesFrom plot:Resolution ] . plot:Story rdfs:subClassOf [ a owl:Restriction ; owl:onProperty plot:hasNarrativeElement ; owl:someValuesFrom plot:Climax ] . plot:ExternalConflict rdfs:subClassOf [ a owl:Restriction ; owl:onProperty plot:conflictInvolves ; owl:minQualifiedCardinality "2"^^xsd:nonNegativeInteger ; owl:onClass owl:Thing ] . plot:InternalConflict rdfs:subClassOf [ a owl:Restriction ; owl:onProperty plot:conflictInvolves ; owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ; owl:onClass owl:Thing ] . plot:Foreshadowing rdfs:subClassOf [ a owl:Restriction ; owl:onProperty plot:foreshadowsEvent ; owl:allValuesFrom evnt:Event ] . plot:NarrativeUnit rdfs:subClassOf [ a owl:Restriction ; owl:onProperty plot:containsUnit ; owl:allValuesFrom plot:NarrativeUnit ] . plot:hasNarrativeUnit a owl:IrreflexiveProperty, owl:AsymmetricProperty . plot:follows a owl:ObjectProperty, owl:TransitiveProperty, owl:IrreflexiveProperty, owl:AsymmetricProperty ; rdfs:domain plot:NarrativeUnit ; rdfs:range plot:NarrativeUnit ; rdfs:label "follows"@en ; skos:altLabel "comes after"@en ; rdfs:comment "One narrative unit sequentially comes after another."@en ; skos:example "Part II follows Part I in the Narn."@en . plot:hasGenre a owl:IrreflexiveProperty . plot:hasAuthor a owl:FunctionalProperty . plot:publishedDate a owl:FunctionalProperty . plot:hasAuthor owl:propertyDisjointWith plot:conflictInvolves . plot:involvedInDevice a owl:ObjectProperty ; rdfs:label "involved in device"@en ; skos:altLabel "affected by narrative device"@en ; rdfs:comment "Links a character role to a narrative device that affects them."@en ; skos:example "Túrin is involved in the Peripeteia device."@en . act:Action a owl:Class ; rdfs:subClassOf evnt:Event ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty act:performedBy ; owl:someValuesFrom owl:Thing ] ; rdfs:label "action"@en ; skos:altLabel "deed"@en ; rdfs:comment "An intentional deed. Every action has at least one performer."@en ; skos:example "Túrin killing Saeros is an action performed by Túrin."@en . act:ViolentAction a owl:Class ; rdfs:subClassOf act:Action ; rdfs:label "violent action"@en ; skos:altLabel "violent deed"@en ; rdfs:comment "An action involving physical violence or force."@en ; skos:example "The Slaying of Glaurung is a violent action performed by Turambar."@en . act:Attack a owl:Class ; rdfs:subClassOf act:ViolentAction ; rdfs:label "attack"@en ; skos:altLabel "assault"@en ; rdfs:comment "An aggressive action aimed at harming a target."@en ; skos:example "Túrin attacks the Orcs at Amon Rûdh using Anglachel."@en . act:Kill a owl:Class ; rdfs:subClassOf act:ViolentAction ; rdfs:label "kill"@en ; skos:altLabel "slaying"@en ; rdfs:comment "The action of causing the death of another."@en ; skos:example "Túrin kills Saeros in Doriath."@en . act:Defend a owl:Class ; rdfs:subClassOf act:ViolentAction ; rdfs:label "defend"@en ; skos:altLabel "defence"@en ; rdfs:comment "An action of protecting oneself or others from attack."@en ; skos:example "Beleg defends Túrin's camp from Orc raids."@en . act:MovementAction a owl:Class ; rdfs:subClassOf act:Action, evnt:MovementEvent ; rdfs:label "movement action"@en ; skos:altLabel "locomotion"@en ; rdfs:comment "An action involving deliberate physical movement."@en ; skos:example "Túrin travels to Nargothrond after the death of Beleg."@en . act:Flee a owl:Class ; rdfs:subClassOf act:MovementAction ; rdfs:label "flee"@en ; skos:altLabel "flight"@en ; rdfs:comment "The action of running away from danger or pursuit."@en ; skos:example "Túrin flees Doriath after killing Saeros."@en . act:GoTo a owl:Class ; rdfs:subClassOf act:MovementAction ; rdfs:label "go to"@en ; skos:altLabel "travel to"@en ; rdfs:comment "The action of deliberately travelling to a destination."@en ; skos:example "Túrin goes to Nargothrond seeking refuge."@en . act:CommunicativeAction a owl:Class ; rdfs:subClassOf act:Action ; rdfs:label "communicative action"@en ; skos:altLabel "speech act"@en ; rdfs:comment "An action involving communication between characters."@en ; skos:example "Turambar speaks to Túrin about his journey."@en . act:Speak a owl:Class ; rdfs:subClassOf act:CommunicativeAction ; rdfs:label "speak"@en ; skos:altLabel "utterance"@en ; rdfs:comment "The action of verbal communication."@en ; skos:example "Brandir speaks the truth to Turambar about Níniel's identity."@en . act:Deceive a owl:Class ; rdfs:subClassOf act:CommunicativeAction ; rdfs:label "deceive"@en ; skos:altLabel "deception"@en ; rdfs:comment "The action of intentionally misleading another character."@en ; skos:example "Glaurung deceives and hypnotises Níniel at Nargothrond."@en . act:Reveal a owl:Class ; rdfs:subClassOf act:CommunicativeAction ; rdfs:label "reveal"@en ; skos:altLabel "disclosure"@en ; rdfs:comment "The action of disclosing previously hidden information."@en ; skos:example "The truth about Níniel is revealed after the slaying of Glaurung."@en . act:Command a owl:Class ; rdfs:subClassOf act:CommunicativeAction ; rdfs:label "command"@en ; skos:altLabel "order"@en ; rdfs:comment "The action of giving an authoritative order."@en ; skos:example "Morgoth orders his servants to attack Nargothrond."@en . act:TransferAction a owl:Class ; rdfs:subClassOf act:Action ; rdfs:label "transfer action"@en ; skos:altLabel "transfer"@en ; rdfs:comment "An action involving the transfer of possession."@en ; skos:example "Beleg brings Anglachel to Túrin."@en . act:Give a owl:Class ; rdfs:subClassOf act:TransferAction ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty act:hasRecipient ; owl:someValuesFrom owl:Thing ] ; rdfs:label "give"@en ; skos:altLabel "bestowal"@en ; rdfs:comment "The action of voluntarily transferring something to another."@en ; skos:example "Beleg gives Anglachel to Túrin to rescue him."@en . act:Take a owl:Class ; rdfs:subClassOf act:TransferAction ; rdfs:label "take"@en ; skos:altLabel "seizure"@en ; rdfs:comment "The action of acquiring something, possibly by force."@en ; skos:example "Morgoth takes Húrin captive after the Nirnaeth Arnoediad."@en . act:CreationAction a owl:Class ; rdfs:subClassOf act:Action ; rdfs:label "creation action"@en ; skos:altLabel "making"@en ; rdfs:comment "An action that produces or transforms something."@en ; skos:example "The smiths of Nargothrond reforge Anglachel into Gurthang."@en . act:Forge a owl:Class ; rdfs:subClassOf act:CreationAction ; rdfs:label "forge"@en ; skos:altLabel "smithing"@en ; rdfs:comment "The action of creating or reshaping an object, especially a weapon."@en ; skos:example "The reforging of Anglachel into Gurthang in Nargothrond."@en . act:Build a owl:Class ; rdfs:subClassOf act:CreationAction ; rdfs:label "build"@en ; skos:altLabel "construction"@en ; rdfs:comment "The action of constructing a structure or settlement."@en ; skos:example "The Elves built the hidden city of Gondolin in Tumladen."@en . # # Properties # act:performedBy a owl:ObjectProperty ; rdfs:subPropertyOf evnt:hasAgent ; rdfs:domain act:Action ; rdfs:label "performed by"@en ; skos:altLabel "done by"@en ; rdfs:comment "The agent who intentionally performs the action."@en ; skos:example "The Slaying of Glaurung was performed by Turambar."@en . act:hasTarget a owl:ObjectProperty ; rdfs:subPropertyOf evnt:hasPatient ; rdfs:domain act:Action ; rdfs:label "has target"@en ; skos:altLabel "directed at"@en ; rdfs:comment "The entity that the action is directed towards."@en ; skos:example "The Slaying of Glaurung has target Glaurung."@en . act:hasInstrument a owl:ObjectProperty ; rdfs:subPropertyOf evnt:hasCause ; rdfs:domain act:Action ; rdfs:label "has instrument"@en ; skos:altLabel "using"@en ; rdfs:comment "An object used to perform the action (e.g. a sword)."@en ; skos:example "The Slaying of Glaurung has instrument Gurthang."@en . act:hasIntention a owl:ObjectProperty ; rdfs:domain act:Action ; rdfs:label "has intention"@en ; skos:altLabel "aims to"@en ; rdfs:comment "The goal or purpose behind the action."@en ; skos:example "Túrin's flight from Doriath has the intention of escaping judgement."@en . act:hasResult a owl:ObjectProperty ; rdfs:domain act:Action ; rdfs:range evnt:Event ; rdfs:label "has result"@en ; skos:altLabel "results in"@en ; rdfs:comment "The event or state that results from the action."@en ; skos:example "Brandir's speech results in the truth about Níniel being revealed."@en . act:hasRecipient a owl:ObjectProperty ; rdfs:subPropertyOf evnt:hasParticipant ; rdfs:domain act:TransferAction ; rdfs:label "has recipient"@en ; skos:altLabel "received by"@en ; rdfs:comment "The character who receives something in a transfer action."@en ; skos:example "Beleg's gift of Anglachel has recipient Túrin."@en . # # Axioms # # A violent action cannot simultaneously be a communicative action act:ViolentAction owl:disjointWith act:CommunicativeAction . # A transfer action is disjoint from a creation action act:TransferAction owl:disjointWith act:CreationAction . # Movement vs violent act:MovementAction owl:disjointWith act:ViolentAction . # Communicative vs movement act:CommunicativeAction owl:disjointWith act:MovementAction . # Transfer vs communicative act:TransferAction owl:disjointWith act:CommunicativeAction . # Attack ⊓ Defend = ⊥ act:Attack owl:disjointWith act:Defend . # Give ⊓ Take = ⊥ act:Give owl:disjointWith act:Take . # Forge ⊓ Build = ⊥ act:Forge owl:disjointWith act:Build . # A Kill is precisely a violent action whose result is a death, targeting exactly one entity act:Kill owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( act:ViolentAction [ a owl:Restriction ; owl:onProperty act:hasResult ; owl:someValuesFrom evnt:Death ] [ a owl:Restriction ; owl:onProperty act:hasTarget ; owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ; owl:onClass owl:Thing ] ) ] . # Flee ≡ MovementAction ⊓ ∃hasIntention.Escape act:Escape a owl:Class ; rdfs:label "escape"@en ; skos:altLabel "evasion"@en ; rdfs:comment "The intention of getting away from danger."@en ; skos:example "Túrin's intention when fleeing Doriath is escape from judgement."@en . act:Flee owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( act:MovementAction [ a owl:Restriction ; owl:onProperty act:hasIntention ; owl:someValuesFrom act:Escape ] ) ] . # A deception is a communicative action intended to mislead act:MisleadingIntention a owl:Class ; rdfs:label "misleading intention"@en ; skos:altLabel "intent to deceive"@en ; rdfs:comment "The intention of making another believe something false."@en ; skos:example "Glaurung's intention when hypnotising Níniel is to mislead her about her identity."@en . act:Deceive owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( act:CommunicativeAction [ a owl:Restriction ; owl:onProperty act:hasIntention ; owl:someValuesFrom act:MisleadingIntention ] ) ] . # A Give action transfers exactly 1 item act:Give rdfs:subClassOf [ a owl:Restriction ; owl:onProperty act:hasInstrument ; owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; owl:onClass owl:Thing ] . # A Command has exactly 1 target act:Command rdfs:subClassOf [ a owl:Restriction ; owl:onProperty act:hasTarget ; owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ; owl:onClass owl:Thing ] . # An Attack always has a target act:Attack rdfs:subClassOf [ a owl:Restriction ; owl:onProperty act:hasTarget ; owl:someValuesFrom owl:Thing ] . # A Defend always has something being protected act:Defend rdfs:subClassOf [ a owl:Restriction ; owl:onProperty act:hasTarget ; owl:someValuesFrom owl:Thing ] . # A CreationAction always produces something act:CreationAction rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:creates ; owl:someValuesFrom owl:Thing ] . # Build ≡ CreationAction ⊓ ∃creates.Place act:Build owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( act:CreationAction [ a owl:Restriction ; owl:onProperty evnt:creates ; owl:someValuesFrom loc:Place ] ) ] . # Forge produces a physical object act:Forge rdfs:subClassOf [ a owl:Restriction ; owl:onProperty evnt:creates ; owl:someValuesFrom owl:Thing ] . # A Take action has a target act:Take rdfs:subClassOf [ a owl:Restriction ; owl:onProperty act:hasTarget ; owl:someValuesFrom owl:Thing ] . # Reveal ≡ CommunicativeAction ⊓ ∃hasResult.Discovery act:Reveal owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( act:CommunicativeAction [ a owl:Restriction ; owl:onProperty act:hasResult ; owl:someValuesFrom evnt:Discovery ] ) ] . # GoTo action targets only places act:GoTo rdfs:subClassOf [ a owl:Restriction ; owl:onProperty act:hasTarget ; owl:allValuesFrom loc:Place ] . # CommunicativeAction targets only characters act:CommunicativeAction rdfs:subClassOf [ a owl:Restriction ; owl:onProperty act:hasTarget ; owl:allValuesFrom [ a owl:Class ; owl:complementOf loc:Place ] ] . # A Kill can only result in a Death act:Kill rdfs:subClassOf [ a owl:Restriction ; owl:onProperty act:hasResult ; owl:allValuesFrom evnt:Death ] . act:hasTarget a owl:AsymmetricProperty, owl:IrreflexiveProperty . act:hasInstrument a owl:IrreflexiveProperty . act:hasRecipient a owl:IrreflexiveProperty . act:hasIntention a owl:IrreflexiveProperty, owl:FunctionalProperty . act:performedBy owl:propertyDisjointWith act:hasInstrument . act:hasTarget owl:propertyDisjointWith act:hasInstrument . act:performedBy owl:propertyDisjointWith act:hasRecipient . # If agent performs action and action has result, agent causes result act:causesByAction a owl:ObjectProperty ; owl:propertyChainAxiom ( [ owl:inverseOf act:performedBy ] act:hasResult ) ; rdfs:label "causes by action"@en ; skos:altLabel "brings about"@en ; rdfs:comment "If an agent performs an action with a result, the agent indirectly causes that result."@en ; skos:example "Turambar causes the death of Glaurung by performing the slaying."@en . # hasResult is also a causal relation act:hasResult rdfs:subPropertyOf evnt:causes .