@prefix aop: <https://www.wwilsonjones.net/aopld/aopsxx#> .
@prefix bf: <http://id.loc.gov/ontologies/bibframe/> .
@prefix dc11: <http://purl.org/dc/elements/1.1/> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix ev: <http://purl.org/NET/c4dm/event.owl#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix lib: <http://purl.org/library/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix schema: <https://schema.org/> .
@prefix time: <http://www.w3.org/2006/time#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .


#2026-06-17

<https://www.wwilsonjones.net/aopld/aopsxx.ttl>
    a owl:Ontology ;
    dc:title "Linked Data for Opera Production (LDOP)" .

aop:CharacterPart
a rdfs:Class ;
rdfs:label "Character part"@en ;
rdfs:comment "Non-singing/dancing part for individual/ensemble performer."@en ;
rdfs:subClassOf aop:Part ;
rdfs:subClassOf aop:NonSingingParts .

aop:DancePart
a rdfs:Class ;
rdfs:label "Dance Part"@en ;
rdfs:comment "Non-singing part for individual/ensemble dancer(s)."@en ;
rdfs:subClassOf aop:Part ;
rdfs:subClassOf aop:NonSingingParts .

aop:Extent
a rdfs:Class ;
rdfs:label "Extent of resource" ;
rdfs:comment "number and type of units making up a resource"@en .

aop:InstrumentalPart
a rdfs:Class ;
rdfs:label "Instrumental part"@en ;
rdfs:comment "Notated music for individual non-vocal instrument/ensemble."@en ;
rdfs:subClassOf aop:Part ;
owl:equivalentClass <https://www.wikidata.org/wiki/Q7401> .

aop:Intermission
a rdfs:Class ;
rdfs:label "Intermission"@en ;
rdfs:comment "A break between parts of a performance or production"@en ;
owl:equivalentClass <https://www.wikidata.org/wiki/Q1642833> .

aop:Manifestation
a rdfs:Class ;
rdfs:label "Manifestation"@en ;
rdfs:comment "Physical embodiment of expression of work."@en .

aop:NonSingingParts
owl:equivalentClass
[ a rdfs:Class ;
owl:unionOf (aop:CharacterPart aop:DancePart aop:SuperPart) ] ;
rdfs:label "Non-singing parts"@en ;
rdfs:comment "Parts for non-singing performers, e.g. character, dance amd super parts."@en .

aop:Orchestration
a rdfs:Class ;
rdfs:label "Orchestration"@en ;
rdfs:comment "instrumentation, the handling of groups of instruments and their balance and interaction."@en ;
owl:equivalentClass <http://purl.org/ontology/mo/orchestration> .

aop:Part
a rdfs:Class ;
rdfs:label "Part"@en ;
rdfs:comment "dramatic character, any individual melody that can be abstracted as continuous and independent from other notes being performed simultaneously, notated choreographic movements"@en ;
owl:equivalentClass <https://schema.org/PerformanceRole> .

aop:Performance
a rdfs:Class ;
rdfs:label "Performance"@en ;
rdfs:comment "Realization of a work intended for presentation to an audience."@en ;
owl:equivalentClass <http://purl.org/ontology/mo/performance> ;
owl:equivalentClass <https://schema.org/Event> .

aop:PerformancePart
a rdfs:Class ;
rdfs:label "Performance Part"@en ;
rdfs:comment "A discrete segment of a performance, usually a specific work, one or more of which comprise the whole performance."@en ;
owl:equivalentClass <https://schema.org/Event> .

aop:Role
a rdfs:Class ;
rdfs:label "Role"@en ;
rdfs:comment "Staff position, e.g. conductor, stage director, designers (set, costume, lighting), stage management, etc."@en ;
rdfs:subClassOf <https://schema.org/Role> .

aop:Production
a rdfs:Class ;
rdfs:label "Production"@en ;
rdfs:comment "Plan for a series of individual performances, including all elements of mise-en-scene: a cast, the blocking of actors' movements, a design for sets, lights, costumes, props, and so on."@en ;
owl:equivalentClass <https://www.wikidata.org/wiki/Q43099500> .

aop:Contribution
a rdfs:Class ;
rdfs:label "Contribution"@en ;
rdfs:comment "Agent and role with respect to the resource being described."@en ;
owl:equivalentClass <http://id.loc.gov/ontologies/bibframe/Contribution> .

aop:RealizedActivity
a rdfs:Class ;
rdfs:label "Realized role/part"@en ;
rdfs:comment "Playing/singing of music, rendering of dramatic character role, utterance of dialogue, execution of choreographed movement, execution of duties/responsibilities associated with a role, e.g. stage manager, conductor."@en .

aop:Rehearsal
a rdfs:Class ;
rdfs:label "Rehearsal"@en ;
rdfs:comment "Practice session preparatory to a public appearance"@en ;
owl:equivalentClass <https://schema.org/Event> .

aop:RehearsalPart
a rdfs:Class ;
rdfs:label "Rehearsal Part"@en ;
rdfs:comment "A discrete segment of a rehearsal, usually a specific work, one or more of which comprise the whole rehearsal."@en ;
owl:equivalentClass <https://schema.org/Event> .

aop:RevivalProduction
a rdfs:Class ;
rdfs:label "Revival production"@en ;
rdfs:comment "Renewed/revised plan for a previously produced series of individual performances, including all elements of mise-en-scene: a cast, the blocking of actors' movements, a design for sets, lights, costumes, props, and so on. "@en ;
rdfs:subClassOf <https://www.wikidata.org/wiki/Q43099500> .

aop:ScoreFull
a rdfs:Class ;
rdfs:label "Full score"@en ;
rdfs:comment "Notated music for singers (solo, chorus, etc.) and instruments."@en ;
rdfs:subClassOf aop:Manifestation ;
owl:equivalentClass <https://www.wikidata.org/wiki/Q187947> ;
owl:equivalentClass <http://id.loc.gov/authorities/genreForms/gf2014027077> .

aop:ScorePV
a rdfs:Class ;
rdfs:label "Piano/vocal score"@en ;
rdfs:subClassOf aop:Manifestation ;
rdfs:comment "Notated music for piano and singers."@en ;
cowl:equivalentClass <https://www.wikidata.org/wiki/Q7190079> ;
owl:equivalentClass <http://id.loc.gov/authorities/genreForms/gf2014027206> .

aop:Service
a rdfs:Class ;
rdfs:label "Service"@en ;
rdfs:comment "Service for ensemble."@en ;

aop:IndividualService
a rdfs:Class ;
rdfs:label "Individual Service"@en ;
rdfs:comment "Service for individual performer of ensemble."@en ;

aop:Singer
a rdfs:Class ;
owl:equivalentClass
[ a rdfs:Class ;
owl:intersectionOf ( foaf:Person
[ a owl:Restriction ;
owl:onProperty aop:hasVoice ;
owl:minCardinality 1
] )
] ;
rdfs:label "Singer"@en ;
rdfs:comment "performing persons who sing."@en .

aop:SuperPart
a rdfs:Class ;
rdfs:label "Super part"@en ;
rdfs:comment "Non-singing/speaking/dancing part for individual/ensemble performer."@en ;
rdfs:subClassOf aop:Part ;
rdfs:subClassOf aop:NonSingingParts .

aop:VocalPart
a rdfs:Class ;
rdfs:label "Vocal part"@en ;
rdfs:comment "Notated music for individual/ensemble singer."@en ;
rdfs:subClassOf aop:Part ;
rdfs:subClassOf aop:SingingParts .

aop:Work
a rdfs:Class ;
rdfs:label "Work"@en ;
rdfs:comment "Creative work or project for the development of such a work intended for performance."@en ;
owl:equivalentClass <https://schema.org/CreativeWork> .

aop:Soprano
a rdfs:Class ;
owl:equivalentClass
[ a rdfs:Class ;
owl:intersectionOf
( aop:Singer
[ a owl:Restriction;
owl:onProperty aop:hasVoice ;
owl:hasValue <http://id.loc.gov/authorities/performanceMediums/mp2013015666>
] )
] ;
rdfs:label "Sopranos"@en ;
rdfs:comment "Singer with soprano voice."@en ;
rdfs:subClassOf aop:Singer .

aop:MezzoSoprano
a rdfs:Class ;
owl:equivalentClass
[ a rdfs:Class ;
owl:intersectionOf
( aop:Singer
[ a owl:Restriction ;
owl:onProperty aop:hasVoice ;
owl:hasValue <http://id.loc.gov/authorities/performanceMediums/mp2013015473>
] )
] ;
rdfs:label "Mezzo-sopranos"@en ;
rdfs:comment "Singer with mezzo-soprano voice."@en ;
rdfs:subClassOf aop:Singer .

aop:CounterTenor
a rdfs:Class ;
owl:equivalentClass
[ a rdfs:Class ;
owl:intersectionOf
( aop:Singer
[ a owl:Restriction;
owl:onProperty aop:hasVoice ;
owl:hasValue <http://id.loc.gov/authorities/performanceMediums/mp2013015186>
] )
] ;
rdfs:label "Countertenors"@en ;
rdfs:comment "Singer with countertenor voice."@en ;
rdfs:subClassOf aop:Singer .

aop:Tenor
a rdfs:Class ;
owl:equivalentClass
[ a rdfs:Class ;
owl:intersectionOf
( aop:Singer
[ a owl:Restriction;
owl:onProperty aop:hasVoice ;
owl:hasValue <http://id.loc.gov/authorities/performanceMediums/mp2013015725>
] )
] ;
rdfs:label "Tenors"@en ;
rdfs:comment "Singer with tenor voice."@en ;
rdfs:subClassOf aop:Singer .

aop:Baritone
a rdfs:Class ;
owl:equivalentClass
[ a rdfs:Class ;
owl:intersectionOf
( aop:Singer
[ a owl:Restriction;
owl:onProperty aop:hasVoice ;
owl:hasValue <http://id.loc.gov/authorities/performanceMediums/mp2013015058>
] )
] ;
rdfs:label "Baritones"@en ;
rdfs:comment "Singer with baritone voice."@en ;
rdfs:subClassOf aop:Singer .

aop:BassBaritone
a rdfs:Class ;
owl:equivalentClass
[ a rdfs:Class ;
owl:intersectionOf
( aop:Singer
[ a owl:Restriction;
owl:onProperty aop:hasVoice ;
owl:hasValue <http://id.loc.gov/authorities/performanceMediums/mp2013015063>
] )
] ;
rdfs:label "Bass Baritones"@en ;
rdfs:comment "Singer with bass baritone voice."@en ;
rdfs:subClassOf aop:Singer .

aop:Bass
a rdfs:Class ;
owl:equivalentClass
[ a rdfs:Class ;
owl:intersectionOf
( aop:Singer
[ a owl:Restriction;
owl:onProperty aop:hasVoice ;
owl:hasValue <http://id.loc.gov/authorities/performanceMediums/mp2013015071>
] )
] ;
rdfs:label "Basses"@en ;
rdfs:comment "Singer with bass voice."@en ;
rdfs:subClassOf aop:Singer .

 aop:Song
   a rdfs:Class ;
   owl:equivalentClass
     [ a owl:Restriction ;
       owl:onProperty schema:genre ;
       owl:hasValue <http://id.loc.gov/authorities/genreForms/gf2014027103>
     ] ;
    rdfs:label "Songs"@en ;
    rdfs:comment "Work is a song."@en .


 aop:Opera
   a rdfs:Class ;
   owl:equivalentClass
     [ a owl:Restriction ;
       owl:onProperty schema:genre ;
       owl:hasValue <https://id.loc.gov/authorities/genreForms/gf2014026976>
     ] ;
    rdfs:label "Operas"@en ;
    rdfs:comment "Work is an opera."@en .



aop:agent
a rdf:Property ;
rdfs:label "agent is"@en ;
rdfs:domain aop:RealizedActivity, aop:Contribution ;
rdfs:range foaf:Agent .

aop:cover
a rdf:Property ;
rdfs:label "cover is"@en ;
rdfs:comment "An understudy in opera"@en ;
rdfs:domain aop:RealizedActivity ;
rdfs:range foaf:Agent .

aop:extent
a rdf:Property ;
rdfs:label "extent of resource"@en ;
rdfs:comment "Non-physical extent of indicated resource"@en ;
rdfs:domain aop:Work, aop:RealizedActivity ;
rdfs:range aop:Extent .

aop:role
a rdf:Property ;
rdfs:label "has role"@en ;
rdfs:domain aop:Contribution ;
rdfs:range aop:Role, xsd:anyURI .

aop:hasIntermission
a rdf:Property ;
rdfs:label "has intermission"@en ;
rdfs:domain aop:Performance ;
rdfs:range aop:Intermission .

aop:hasQuantity
a rdf:Property ;
rdfs:label "has quantity"@en ;
rdfs:domain aop:Part ;
rdfs:range xsd:integer .

aop:revival
a rdf:Property ;
rdfs:label "has revival production"@en ;
rdfs:domain aop:Production ;
rdfs:range aop:RevivalProduction .

aop:part
a rdf:Property ;
rdfs:label "has part"@en ;
rdfs:domain aop:Manifestation ;
rdfs:range aop:Part .

aop:alternateMOP
a rdf:Property ;
rdfs:label "is an alternate medium of performance"@en ;
rdfs:domain aop:InstrumentalPart, aop:VocalPart ;
rdfs:range aop:InstrumentalPart, aop:VocalPart .

aop:debutFor
a rdf:Property ;
rdfs:label "is debut performance for"@en ;
rdfs:domain aop:RealizedActivity ;
rdfs:range foaf:Agent .

aop:doubledWith
a rdf:Property ;
rdfs:label "is doubled with"@en ;
rdfs:domain aop:Part ;
rdfs:range aop:Part .

aop:medium
a rdf:Property ;
rdfs:label "is medium of performance"@en ;
rdfs:domain aop:Part, aop:IndividualService ;
rdfs:range xsd:anyURI ;
owl:cardinality 1 .

aop:contractedAgent
a rdf:Property ;
rdfs:label "agent comprised by individual performers"@en ;
rdfs:domain aop:Service ;
rdfs:range foaf:Agent .

aop:hasVoice
a rdf:Property ;
rdfs:label "has voice medium"@en ;
rdfs:domain foaf:Person ;
rdfs:range xsd:anyURI ;
owl:cardinality 1 .

aop:contribution
a rdf:Property ;
rdfs:label "contribution"@en ;
rdfs:domain aop:Work, aop:Production, aop:RevivalProduction ;
rdfs:range aop:Contribution ;
owl:equivalentProperty <http://id.loc.gov/ontologies/bibframe/contribution> .

aop:realizationOf
a rdf:Property ;
rdfs:label "is realization of Part/Role"@en ;
rdfs:domain aop:RealizedActivity ;
rdfs:range aop:Part, aop:Role ;
owl:cardinality 1 .

aop:individualService
a rdf:Property ;
rdfs:label "has Individual Service"@en ;
rdfs:domain aop:Service ;
rdfs:range aop:IndividualService ;

aop:inChair
a rdf:Property ;
rdfs:label "is chair"@en ;
rdfs:domain aop:IndividualService ;
rdfs:range xsd:integer ;

aop:isType
a rdf:Property ;
rdfs:label "is type"@en ;
rdfs:domain aop:Part ;
rdfs:range xsd:string .

aop:performanceOf
a rdf:Property ;
rdfs:label "performance of"@en ;
rdfs:domain aop:PerformancePart ;
rdfs:range aop:Production, aop:RevivalProduction, aop:Work ;
owl:equivalentProperty <https://schema.org/workPerformed> .

aop:performancePart
a rdf:Property ;
rdfs:label "has performance part"@en ;
rdfs:domain aop:Performance ;
rdfs:range aop:PerformancePart ;
owl:equivalentProperty <https://schema.org/subEvent> .

aop:productionOf
a rdf:Property ;
rdfs:label "is production of"@en ;
rdfs:domain aop:Production ;
rdfs:range aop:Work .

aop:proposedOrch
a rdf:Property ;
rdfs:label "has proposed orchestration"@en ;
rdfs:domain aop:Work ;
rdfs:range aop:Orchestration .

aop:manifestation
a rdf:Property ;
rdfs:label "published as"@en ;
rdfs:domain aop:Work ;
rdfs:range aop:Manifestation .

aop:realizedActivity
a rdf:Property ;
rdfs:label "part/role being realized and agent"@en ;
rdfs:domain aop:PerformancePart ;
rdfs:range aop:RealizedActivity .

aop:serviceFor
a rdf:Property ;
owl:inverseOf aop:usesService ;
rdfs:label "service for"@en ;
rdfs:domain aop:Service ;
rdfs:range aop:PerformancePart, RehearsalPart .

aop:usesService
a rdf:Property ;
owl:inverseOf aop:serviceFor ;
rdfs:label "uses service"@en ;
rdfs:domain aop:PerformancePart, RehearsalPart ;
rdfs:range aop:Service .

