From 1935b18038c77f294d58b427c00f13c9ce5718e1 Mon Sep 17 00:00:00 2001
From: Jeremy Nelson
Date: Tue, 7 May 2024 14:16:19 -0700
Subject: [PATCH 1/4] Generation of version 2.0 of PMO vocabulary
---
.../EnsembleSize/Ensemble_size.ttl | 0
.../Vocabularies/EventType/Event_type.ttl | 0
.../Medium_component_qualifier.ttl | 10 +-
2.0/index.html | 21 +
2.0/vocabularies/PMOEnsembleSize.html | 266 +++
2.0/vocabularies/PMOEnsembleSize.rdf | 148 ++
2.0/vocabularies/PMOEnsembleSize.ttl | 134 ++
2.0/vocabularies/PMOEventType.html | 302 ++++
2.0/vocabularies/PMOEventType.rdf | 171 ++
2.0/vocabularies/PMOEventType.ttl | 155 ++
.../PMOMediumComponentQualifier.html | 171 ++
.../PMOMediumComponentQualifier.rdf | 88 +
.../PMOMediumComponentQualifier.ttl | 79 +
2.0/vocabularies/ensemble_size/duo/duo.rdf | 21 +
2.0/vocabularies/ensemble_size/duo/duo.ttl | 14 +
2.0/vocabularies/ensemble_size/duo/index.html | 21 +
2.0/vocabularies/ensemble_size/index.html | 30 +
.../ensemble_size/large_ensemble/index.html | 21 +
.../large_ensemble/large_ensemble.rdf | 20 +
.../large_ensemble/large_ensemble.ttl | 13 +
.../ensemble_size/nonet/index.html | 21 +
.../ensemble_size/nonet/nonet.rdf | 20 +
.../ensemble_size/nonet/nonet.ttl | 13 +
.../ensemble_size/octet/index.html | 21 +
.../ensemble_size/octet/octet.rdf | 20 +
.../ensemble_size/octet/octet.ttl | 13 +
.../ensemble_size/quartet/index.html | 21 +
.../ensemble_size/quartet/quartet.rdf | 20 +
.../ensemble_size/quartet/quartet.ttl | 13 +
.../ensemble_size/quintet/index.html | 21 +
.../ensemble_size/quintet/quintet.rdf | 21 +
.../ensemble_size/quintet/quintet.ttl | 14 +
.../ensemble_size/septet/index.html | 21 +
.../ensemble_size/septet/septet.rdf | 20 +
.../ensemble_size/septet/septet.ttl | 13 +
.../ensemble_size/sextet/index.html | 21 +
.../ensemble_size/sextet/sextet.rdf | 20 +
.../ensemble_size/sextet/sextet.ttl | 13 +
.../ensemble_size/small_ensemble/index.html | 21 +
.../small_ensemble/small_ensemble.rdf | 20 +
.../small_ensemble/small_ensemble.ttl | 13 +
.../solo_or_individual/index.html | 21 +
.../solo_or_individual/solo_or_individual.rdf | 20 +
.../solo_or_individual/solo_or_individual.ttl | 13 +
.../ensemble_size/trio/index.html | 21 +
2.0/vocabularies/ensemble_size/trio/trio.rdf | 20 +
2.0/vocabularies/ensemble_size/trio/trio.ttl | 13 +
.../event_type/audition/audition.rdf | 20 +
.../event_type/audition/audition.ttl | 13 +
.../event_type/audition/index.html | 21 +
.../benefit_concert/benefit_concert.rdf | 20 +
.../benefit_concert/benefit_concert.ttl | 13 +
.../event_type/benefit_concert/index.html | 21 +
.../event_type/ceremony/ceremony.rdf | 20 +
.../event_type/ceremony/ceremony.ttl | 13 +
.../event_type/ceremony/index.html | 21 +
.../commmand_performance.rdf | 20 +
.../commmand_performance.ttl | 13 +
.../commmand_performance/index.html | 21 +
.../event_type/concert/concert.rdf | 21 +
.../event_type/concert/concert.ttl | 14 +
.../event_type/concert/index.html | 21 +
.../concert_series/concert_series.rdf | 20 +
.../concert_series/concert_series.ttl | 13 +
.../event_type/concert_series/index.html | 21 +
.../event_type/concert_tour/concert_tour.rdf | 20 +
.../event_type/concert_tour/concert_tour.ttl | 13 +
.../event_type/concert_tour/index.html | 21 +
.../first_performance/first_performance.rdf | 20 +
.../first_performance/first_performance.ttl | 13 +
.../event_type/first_performance/index.html | 21 +
2.0/vocabularies/event_type/index.html | 32 +
.../event_type/master_class/index.html | 21 +
.../event_type/master_class/master_class.rdf | 20 +
.../event_type/master_class/master_class.ttl | 13 +
.../open_mic_performance/index.html | 21 +
.../open_mic_performance.rdf | 20 +
.../open_mic_performance.ttl | 13 +
.../event_type/performance/index.html | 21 +
.../event_type/performance/performance.rdf | 20 +
.../event_type/performance/performance.ttl | 13 +
.../event_type/recording_session/index.html | 21 +
.../recording_session/recording_session.rdf | 20 +
.../recording_session/recording_session.ttl | 13 +
.../event_type/rehearsal/index.html | 21 +
.../event_type/rehearsal/rehearsal.rdf | 20 +
.../event_type/rehearsal/rehearsal.ttl | 13 +
2.0/vocabularies/index.html | 21 +
.../ad_lib/ad_lib.rdf | 21 +
.../ad_lib/ad_lib.ttl | 14 +
.../ad_lib/index.html | 21 +
.../amplified/amplified.rdf | 20 +
.../amplified/amplified.ttl | 13 +
.../amplified/index.html | 21 +
.../medium_component_qualifier/index.html | 25 +
.../obbligato/index.html | 21 +
.../obbligato/obbligato.rdf | 20 +
.../obbligato/obbligato.ttl | 13 +
.../offstage/index.html | 21 +
.../offstage/offstage.rdf | 20 +
.../offstage/offstage.ttl | 13 +
.../optional/index.html | 21 +
.../optional/optional.rdf | 21 +
.../optional/optional.ttl | 14 +
.../solo/index.html | 21 +
.../medium_component_qualifier/solo/solo.rdf | 20 +
.../medium_component_qualifier/solo/solo.ttl | 13 +
Documentation/Version2.0.ipynb | 1514 +++++++++++++++++
Documentation/migration.ipynb | 24 +-
index.html | 4 +
110 files changed, 4801 insertions(+), 24 deletions(-)
rename 2.0/{ => Ontology}/Vocabularies/EnsembleSize/Ensemble_size.ttl (100%)
rename 2.0/{ => Ontology}/Vocabularies/EventType/Event_type.ttl (100%)
rename 2.0/{ => Ontology}/Vocabularies/MediumComponentQualifier/Medium_component_qualifier.ttl (84%)
create mode 100644 2.0/index.html
create mode 100644 2.0/vocabularies/PMOEnsembleSize.html
create mode 100644 2.0/vocabularies/PMOEnsembleSize.rdf
create mode 100644 2.0/vocabularies/PMOEnsembleSize.ttl
create mode 100644 2.0/vocabularies/PMOEventType.html
create mode 100644 2.0/vocabularies/PMOEventType.rdf
create mode 100644 2.0/vocabularies/PMOEventType.ttl
create mode 100644 2.0/vocabularies/PMOMediumComponentQualifier.html
create mode 100644 2.0/vocabularies/PMOMediumComponentQualifier.rdf
create mode 100644 2.0/vocabularies/PMOMediumComponentQualifier.ttl
create mode 100644 2.0/vocabularies/ensemble_size/duo/duo.rdf
create mode 100644 2.0/vocabularies/ensemble_size/duo/duo.ttl
create mode 100644 2.0/vocabularies/ensemble_size/duo/index.html
create mode 100644 2.0/vocabularies/ensemble_size/index.html
create mode 100644 2.0/vocabularies/ensemble_size/large_ensemble/index.html
create mode 100644 2.0/vocabularies/ensemble_size/large_ensemble/large_ensemble.rdf
create mode 100644 2.0/vocabularies/ensemble_size/large_ensemble/large_ensemble.ttl
create mode 100644 2.0/vocabularies/ensemble_size/nonet/index.html
create mode 100644 2.0/vocabularies/ensemble_size/nonet/nonet.rdf
create mode 100644 2.0/vocabularies/ensemble_size/nonet/nonet.ttl
create mode 100644 2.0/vocabularies/ensemble_size/octet/index.html
create mode 100644 2.0/vocabularies/ensemble_size/octet/octet.rdf
create mode 100644 2.0/vocabularies/ensemble_size/octet/octet.ttl
create mode 100644 2.0/vocabularies/ensemble_size/quartet/index.html
create mode 100644 2.0/vocabularies/ensemble_size/quartet/quartet.rdf
create mode 100644 2.0/vocabularies/ensemble_size/quartet/quartet.ttl
create mode 100644 2.0/vocabularies/ensemble_size/quintet/index.html
create mode 100644 2.0/vocabularies/ensemble_size/quintet/quintet.rdf
create mode 100644 2.0/vocabularies/ensemble_size/quintet/quintet.ttl
create mode 100644 2.0/vocabularies/ensemble_size/septet/index.html
create mode 100644 2.0/vocabularies/ensemble_size/septet/septet.rdf
create mode 100644 2.0/vocabularies/ensemble_size/septet/septet.ttl
create mode 100644 2.0/vocabularies/ensemble_size/sextet/index.html
create mode 100644 2.0/vocabularies/ensemble_size/sextet/sextet.rdf
create mode 100644 2.0/vocabularies/ensemble_size/sextet/sextet.ttl
create mode 100644 2.0/vocabularies/ensemble_size/small_ensemble/index.html
create mode 100644 2.0/vocabularies/ensemble_size/small_ensemble/small_ensemble.rdf
create mode 100644 2.0/vocabularies/ensemble_size/small_ensemble/small_ensemble.ttl
create mode 100644 2.0/vocabularies/ensemble_size/solo_or_individual/index.html
create mode 100644 2.0/vocabularies/ensemble_size/solo_or_individual/solo_or_individual.rdf
create mode 100644 2.0/vocabularies/ensemble_size/solo_or_individual/solo_or_individual.ttl
create mode 100644 2.0/vocabularies/ensemble_size/trio/index.html
create mode 100644 2.0/vocabularies/ensemble_size/trio/trio.rdf
create mode 100644 2.0/vocabularies/ensemble_size/trio/trio.ttl
create mode 100644 2.0/vocabularies/event_type/audition/audition.rdf
create mode 100644 2.0/vocabularies/event_type/audition/audition.ttl
create mode 100644 2.0/vocabularies/event_type/audition/index.html
create mode 100644 2.0/vocabularies/event_type/benefit_concert/benefit_concert.rdf
create mode 100644 2.0/vocabularies/event_type/benefit_concert/benefit_concert.ttl
create mode 100644 2.0/vocabularies/event_type/benefit_concert/index.html
create mode 100644 2.0/vocabularies/event_type/ceremony/ceremony.rdf
create mode 100644 2.0/vocabularies/event_type/ceremony/ceremony.ttl
create mode 100644 2.0/vocabularies/event_type/ceremony/index.html
create mode 100644 2.0/vocabularies/event_type/commmand_performance/commmand_performance.rdf
create mode 100644 2.0/vocabularies/event_type/commmand_performance/commmand_performance.ttl
create mode 100644 2.0/vocabularies/event_type/commmand_performance/index.html
create mode 100644 2.0/vocabularies/event_type/concert/concert.rdf
create mode 100644 2.0/vocabularies/event_type/concert/concert.ttl
create mode 100644 2.0/vocabularies/event_type/concert/index.html
create mode 100644 2.0/vocabularies/event_type/concert_series/concert_series.rdf
create mode 100644 2.0/vocabularies/event_type/concert_series/concert_series.ttl
create mode 100644 2.0/vocabularies/event_type/concert_series/index.html
create mode 100644 2.0/vocabularies/event_type/concert_tour/concert_tour.rdf
create mode 100644 2.0/vocabularies/event_type/concert_tour/concert_tour.ttl
create mode 100644 2.0/vocabularies/event_type/concert_tour/index.html
create mode 100644 2.0/vocabularies/event_type/first_performance/first_performance.rdf
create mode 100644 2.0/vocabularies/event_type/first_performance/first_performance.ttl
create mode 100644 2.0/vocabularies/event_type/first_performance/index.html
create mode 100644 2.0/vocabularies/event_type/index.html
create mode 100644 2.0/vocabularies/event_type/master_class/index.html
create mode 100644 2.0/vocabularies/event_type/master_class/master_class.rdf
create mode 100644 2.0/vocabularies/event_type/master_class/master_class.ttl
create mode 100644 2.0/vocabularies/event_type/open_mic_performance/index.html
create mode 100644 2.0/vocabularies/event_type/open_mic_performance/open_mic_performance.rdf
create mode 100644 2.0/vocabularies/event_type/open_mic_performance/open_mic_performance.ttl
create mode 100644 2.0/vocabularies/event_type/performance/index.html
create mode 100644 2.0/vocabularies/event_type/performance/performance.rdf
create mode 100644 2.0/vocabularies/event_type/performance/performance.ttl
create mode 100644 2.0/vocabularies/event_type/recording_session/index.html
create mode 100644 2.0/vocabularies/event_type/recording_session/recording_session.rdf
create mode 100644 2.0/vocabularies/event_type/recording_session/recording_session.ttl
create mode 100644 2.0/vocabularies/event_type/rehearsal/index.html
create mode 100644 2.0/vocabularies/event_type/rehearsal/rehearsal.rdf
create mode 100644 2.0/vocabularies/event_type/rehearsal/rehearsal.ttl
create mode 100644 2.0/vocabularies/index.html
create mode 100644 2.0/vocabularies/medium_component_qualifier/ad_lib/ad_lib.rdf
create mode 100644 2.0/vocabularies/medium_component_qualifier/ad_lib/ad_lib.ttl
create mode 100644 2.0/vocabularies/medium_component_qualifier/ad_lib/index.html
create mode 100644 2.0/vocabularies/medium_component_qualifier/amplified/amplified.rdf
create mode 100644 2.0/vocabularies/medium_component_qualifier/amplified/amplified.ttl
create mode 100644 2.0/vocabularies/medium_component_qualifier/amplified/index.html
create mode 100644 2.0/vocabularies/medium_component_qualifier/index.html
create mode 100644 2.0/vocabularies/medium_component_qualifier/obbligato/index.html
create mode 100644 2.0/vocabularies/medium_component_qualifier/obbligato/obbligato.rdf
create mode 100644 2.0/vocabularies/medium_component_qualifier/obbligato/obbligato.ttl
create mode 100644 2.0/vocabularies/medium_component_qualifier/offstage/index.html
create mode 100644 2.0/vocabularies/medium_component_qualifier/offstage/offstage.rdf
create mode 100644 2.0/vocabularies/medium_component_qualifier/offstage/offstage.ttl
create mode 100644 2.0/vocabularies/medium_component_qualifier/optional/index.html
create mode 100644 2.0/vocabularies/medium_component_qualifier/optional/optional.rdf
create mode 100644 2.0/vocabularies/medium_component_qualifier/optional/optional.ttl
create mode 100644 2.0/vocabularies/medium_component_qualifier/solo/index.html
create mode 100644 2.0/vocabularies/medium_component_qualifier/solo/solo.rdf
create mode 100644 2.0/vocabularies/medium_component_qualifier/solo/solo.ttl
create mode 100644 Documentation/Version2.0.ipynb
diff --git a/2.0/Vocabularies/EnsembleSize/Ensemble_size.ttl b/2.0/Ontology/Vocabularies/EnsembleSize/Ensemble_size.ttl
similarity index 100%
rename from 2.0/Vocabularies/EnsembleSize/Ensemble_size.ttl
rename to 2.0/Ontology/Vocabularies/EnsembleSize/Ensemble_size.ttl
diff --git a/2.0/Vocabularies/EventType/Event_type.ttl b/2.0/Ontology/Vocabularies/EventType/Event_type.ttl
similarity index 100%
rename from 2.0/Vocabularies/EventType/Event_type.ttl
rename to 2.0/Ontology/Vocabularies/EventType/Event_type.ttl
diff --git a/2.0/Vocabularies/MediumComponentQualifier/Medium_component_qualifier.ttl b/2.0/Ontology/Vocabularies/MediumComponentQualifier/Medium_component_qualifier.ttl
similarity index 84%
rename from 2.0/Vocabularies/MediumComponentQualifier/Medium_component_qualifier.ttl
rename to 2.0/Ontology/Vocabularies/MediumComponentQualifier/Medium_component_qualifier.ttl
index 8386955..1d8f621 100644
--- a/2.0/Vocabularies/MediumComponentQualifier/Medium_component_qualifier.ttl
+++ b/2.0/Ontology/Vocabularies/MediumComponentQualifier/Medium_component_qualifier.ttl
@@ -13,7 +13,7 @@
a skos:Concept ;
skos:prefLabel "ad lib"@en ;
skos:altLabel "ad libitum"@en ;
- skos:definition "For medium components marked "ad lib" or "ad libitum" in a score or otherwise."@en ;
+ skos:definition """For medium components marked "ad lib" or "ad libitum" in a score or otherwise."""@en ;
rdfs:comment "Value for: MediumComponentQualifier."@en ;
skos:inScheme ;
skos:changeNote [
@@ -24,7 +24,7 @@
a skos:Concept ;
skos:prefLabel "amplified"@en ;
- skos:definition "For medium components marked "amplified" in a score or otherwise."@en ;
+ skos:definition """For medium components marked "amplified" in a score or otherwise."""@en ;
rdfs:comment "Value for: MediumComponentQualifier."@en ;
skos:inScheme ;
skos:changeNote [
@@ -35,7 +35,7 @@
a skos:Concept ;
skos:prefLabel "obbligato"@en ;
- skos:definition "For medium components marked "obbligato" in a score or otherwise.."@en ;
+ skos:definition """For medium components marked "obbligato" in a score or otherwise.."""@en ;
rdfs:comment "Value for: MediumComponentQualifier."@en ;
skos:inScheme ;
skos:changeNote [
@@ -57,7 +57,7 @@
a skos:Concept ;
skos:prefLabel "optional"@en ;
- skos:definition "For a medium component marked "optional" in a score or otherwise."@en ;
+ skos:definition """For a medium component marked "optional" in a score or otherwise."""@en ;
rdfs:comment "Value for: MediumComponentQualifier."@en ;
skos:inScheme ;
skos:changeNote [
@@ -69,7 +69,7 @@
a skos:Concept ;
skos:prefLabel "solo"@en ;
- skos:definition "For a medium component marked "solo" in a score or is clearly a solo part in the context of the work, such as the oboe part in a concerto for oboe and orchestra."@en ;
+ skos:definition """For a medium component marked "solo" in a score or is clearly a solo part in the context of the work, such as the oboe part in a concerto for oboe and orchestra."""@en ;
rdfs:comment "Value for: MediumComponentQualifier."@en ;
skos:inScheme ;
skos:changeNote [
diff --git a/2.0/index.html b/2.0/index.html
new file mode 100644
index 0000000..8027784
--- /dev/null
+++ b/2.0/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+ Performed Music Ontology 2.0
+
+ Performed Music Ontology 2.0
+ An extension of the BIBFRAME ontology for describing performed music, both for mainstream and archival performed music collections.
+
+
+
+
diff --git a/2.0/vocabularies/PMOEnsembleSize.html b/2.0/vocabularies/PMOEnsembleSize.html
new file mode 100644
index 0000000..ab4cdb7
--- /dev/null
+++ b/2.0/vocabularies/PMOEnsembleSize.html
@@ -0,0 +1,266 @@
+
+
+
+
+
+
+
+
+
+
+
+
+PMO Ensemble Size Vocabulary
+
+
+
+
PMO Ensemble Size Vocabulary
+
http://performedmusicontology.org/2.0/vocabularies/ensemble_size/
+
+
+
+
+
+
+
+
+
+ solo or individualc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: A solo or individual performer. May be accompanied by a larger ensemble.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Use for: duet
+
+
Scope note: An ensemble of 2 performers.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: An ensemble of 3 performers.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ quartetc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: An ensemble of 4 performers.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ quintetc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: An ensemble of 5 performers.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ sextetc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: An ensemble of 6 performers.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ septetc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: An ensemble of 7 performers.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ octetc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: An ensemble of 8 performers.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ nonetc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: An ensemble of 9 performers.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ small ensemblec
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: An unspecified ensemble of fewer than 10 performers.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ large ensemblec
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: An ensemble of more than 9 performers.
+
Current version: NEW 2024-04-30
+
+
+
+
+
Namespace Declarations back to ToC
+
+ dcterms
+ http://purl.org/dc/terms/
+ rdf
+ http://www.w3.org/1999/02/22-rdf-syntax-ns#
+ rdfs
+ http://www.w3.org/2000/01/rdf-schema#
+ skos
+ http://www.w3.org/2004/02/skos/core#
+
+
+
+
diff --git a/2.0/vocabularies/PMOEnsembleSize.rdf b/2.0/vocabularies/PMOEnsembleSize.rdf
new file mode 100644
index 0000000..252cf26
--- /dev/null
+++ b/2.0/vocabularies/PMOEnsembleSize.rdf
@@ -0,0 +1,148 @@
+
+
+
+
+ octet
+ An ensemble of 8 performers.
+ Value for: MediumType.
+
+
+
+
+
+ quintet
+ An ensemble of 5 performers.
+ Value for: MediumType.
+
+
+
+
+
+ nonet
+ An ensemble of 9 performers.
+ Value for: MediumType.
+
+
+
+
+
+ PMO Ensemble Size Vocabulary
+ PMO Ensemble Size Vocabulary
+ The PMO Ensemble Size Vocabulary is a controlled vocabulary that indicates the size of a music ensemble, from solo performer to large ensemble. It was developed for the Performed Music Ontology 2.0, specifically the Medium type class, but may be used with other ontologies.
+
+
+
+ sextet
+ An ensemble of 6 performers.
+ Value for: MediumType.
+
+
+
+
+
+ solo or individual
+ A solo or individual performer. May be accompanied by a larger ensemble.
+ Value for: MediumType.
+
+
+
+
+ NEW
+
+ 2024-04-30
+
+
+
+ small ensemble
+ An unspecified ensemble of fewer than 10 performers.
+ Value for: MediumType.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ trio
+ An ensemble of 3 performers.
+ Value for: MediumType.
+
+
+
+
+
+ septet
+ An ensemble of 7 performers.
+ Value for: MediumType.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ quartet
+ An ensemble of 4 performers.
+ Value for: MediumType.
+
+
+
+
+
+ duo
+ duet
+ An ensemble of 2 performers.
+ Value for: MediumType.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
+
+ large ensemble
+ An ensemble of more than 9 performers.
+ Value for: MediumType.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/PMOEnsembleSize.ttl b/2.0/vocabularies/PMOEnsembleSize.ttl
new file mode 100644
index 0000000..d28a237
--- /dev/null
+++ b/2.0/vocabularies/PMOEnsembleSize.ttl
@@ -0,0 +1,134 @@
+
+@prefix skos: .
+@prefix rdfs: .
+@prefix dc: .
+@prefix rdf: .
+
+
+ a skos:ConceptScheme ;
+ rdfs:label "PMO Ensemble Size Vocabulary"@en ;
+ dc:title "PMO Ensemble Size Vocabulary"@en ;
+ skos:definition "The PMO Ensemble Size Vocabulary is a controlled vocabulary that indicates the size of a music ensemble, from solo performer to large ensemble. It was developed for the Performed Music Ontology 2.0, specifically the Medium type class, but may be used with other ontologies."@en .
+
+
+ a skos:Concept ;
+ skos:prefLabel "solo or individual"@en ;
+ skos:definition "A solo or individual performer. May be accompanied by a larger ensemble."@en ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "duo"@en ;
+ skos:altLabel "duet"@en ;
+ skos:definition "An ensemble of 2 performers."@en ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "trio"@en ;
+ skos:definition "An ensemble of 3 performers."@en ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "quartet"@en ;
+ skos:definition "An ensemble of 4 performers."@en ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "quintet"@en ;
+ skos:definition "An ensemble of 5 performers."@en ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:creator ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "sextet"@en ;
+ skos:definition "An ensemble of 6 performers."@en ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "septet"@en ;
+ skos:definition "An ensemble of 7 performers."@en ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "octet"@en ;
+ skos:definition "An ensemble of 8 performers."@en ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "nonet"@en ;
+ skos:definition "An ensemble of 9 performers."@en ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "small ensemble"@en ;
+ skos:definition "An unspecified ensemble of fewer than 10 performers."@en ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "large ensemble"@en ;
+ skos:definition "An ensemble of more than 9 performers."@en ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
diff --git a/2.0/vocabularies/PMOEventType.html b/2.0/vocabularies/PMOEventType.html
new file mode 100644
index 0000000..ef7a9c9
--- /dev/null
+++ b/2.0/vocabularies/PMOEventType.html
@@ -0,0 +1,302 @@
+
+
+
+
+
+
+
+
+
+
+
+
+PMO Event Type Vocabulary
+
+
+
+
PMO Event Type Vocabulary
+
http://performedmusicontology.org/2.0/vocabularies/event_type/
+
+
+
+
+
+
+
+
+
+ Auditionc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: Event in which a performer or actor is applying for a position in an ensemble, cast, film, etc.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ Benefit concertc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: Concert held for charitable purposes, i.e., to raise funds or awareness.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ Ceremonyc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: Ritual event, performed on special occasions (e.g., death, baptism, wedding, graduation, equinox, coronation, victory).
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+
+
+
+ Concertc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: Live musical performance of one or more works in front of an audience or in a single recording session.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ Concert seriesc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: Group of concerts in the same geographic area by a single performer or brought together by a common theme, usually available for sale as a package. e.g., an orchestra concert season, a series featuring chamber ensembles.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ Series of concerts by a performer or group of performers in different cities, countries, or locations.c
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: An ensemble of 7 performers.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+
+
+
+ Master classc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: Event in which a recognized performer critiques the performances of one or more other performers.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+
+
+
+
+
+
+ Recording sessionc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: Event in which one or more performances are recorded with the aim of producing a recording for issue.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ Rehearsalc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: Event in which a performer or group of performers prepare for a performance.
+
Current version: NEW 2024-04-30
+
+
+
+
+
Namespace Declarations back to ToC
+
+ dcterms
+ http://purl.org/dc/terms/
+ rdf
+ http://www.w3.org/1999/02/22-rdf-syntax-ns#
+ rdfs
+ http://www.w3.org/2000/01/rdf-schema#
+ skos
+ http://www.w3.org/2004/02/skos/core#
+
+
+
+
diff --git a/2.0/vocabularies/PMOEventType.rdf b/2.0/vocabularies/PMOEventType.rdf
new file mode 100644
index 0000000..cd41a28
--- /dev/null
+++ b/2.0/vocabularies/PMOEventType.rdf
@@ -0,0 +1,171 @@
+
+
+
+
+ Concert
+ Live musical performance of one or more works in front of an audience or in a single recording session.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
+
+ Open mic performance
+ Live performance at a coffee house, night club, or other venue by amateur performers.
+ Use as type of bf:Event.
+
+
+
+
+
+ Ceremony
+ Ritual event, performed on special occasions (e.g., death, baptism, wedding, graduation, equinox, coronation, victory).
+ Use as type of bf:Event.
+
+
+
+
+
+ Performance
+ Event in which a performer or group of performers perform an improvisation or pre-existing work to an audience or in a recording studio.
+ Use as type of bf:Event.
+
+
+
+
+
+ Recording session
+ Event in which one or more performances are recorded with the aim of producing a recording for issue.
+ Use as type of bf:Event.
+
+
+
+
+
+ Command performance
+ Concert or performance done at the request of a monarch or other head of state.
+ Use as type of bf:Event.
+
+
+
+
+
+ First performance
+ The first known performance of a work.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ Rehearsal
+ Event in which a performer or group of performers prepare for a performance.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
+
+ Audition
+ Event in which a performer or actor is applying for a position in an ensemble, cast, film, etc.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ Series of concerts by a performer or group of performers in different cities, countries, or locations.
+ An ensemble of 7 performers.
+ Use as type of bf:Event.
+
+
+
+
+
+ Benefit concert
+ Concert held for charitable purposes, i.e., to raise funds or awareness.
+ Use as type of bf:Event.
+
+
+
+
+
+ Master class
+ Event in which a recognized performer critiques the performances of one or more other performers.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
+
+ Concert series
+ Group of concerts in the same geographic area by a single performer or brought together by a common theme, usually available for sale as a package. e.g., an orchestra concert season, a series featuring chamber ensembles.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
+ NEW
+
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
+
+ PMO Event Type Vocabulary
+ PMO Event Type Vocabulary
+ The PMO Event Type Vocabulary is a controlled vocabulary that indicates the type of BIBFRAME Event being describe, e.g, Ceremony, Performance. It was developed for the Performed Music Ontology 2.0, as an extension to bf:Event, but may be used with other ontologies.
+
+
diff --git a/2.0/vocabularies/PMOEventType.ttl b/2.0/vocabularies/PMOEventType.ttl
new file mode 100644
index 0000000..20ffff5
--- /dev/null
+++ b/2.0/vocabularies/PMOEventType.ttl
@@ -0,0 +1,155 @@
+
+@prefix skos: .
+@prefix rdfs: .
+@prefix dc: .
+@prefix rdf: .
+
+
+ a skos:ConceptScheme ;
+ rdfs:label "PMO Event Type Vocabulary"@en ;
+ dc:title "PMO Event Type Vocabulary"@en ;
+ skos:definition "The PMO Event Type Vocabulary is a controlled vocabulary that indicates the type of BIBFRAME Event being describe, e.g, Ceremony, Performance. It was developed for the Performed Music Ontology 2.0, as an extension to bf:Event, but may be used with other ontologies."@en .
+
+
+ a skos:Concept ;
+ skos:prefLabel "Audition"@en ;
+ skos:definition "Event in which a performer or actor is applying for a position in an ensemble, cast, film, etc."@en ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "Benefit concert"@en ;
+ skos:definition "Concert held for charitable purposes, i.e., to raise funds or awareness."@en ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "Ceremony"@en ;
+ skos:definition "Ritual event, performed on special occasions (e.g., death, baptism, wedding, graduation, equinox, coronation, victory)."@en ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "Command performance"@en ;
+ skos:definition "Concert or performance done at the request of a monarch or other head of state."@en ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "Concert"@en ;
+ skos:definition "Live musical performance of one or more works in front of an audience or in a single recording session."@en ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:creator ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "Concert series"@en ;
+ skos:definition "Group of concerts in the same geographic area by a single performer or brought together by a common theme, usually available for sale as a package. e.g., an orchestra concert season, a series featuring chamber ensembles."@en ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "Series of concerts by a performer or group of performers in different cities, countries, or locations."@en ;
+ skos:definition "An ensemble of 7 performers."@en ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "First performance"@en ;
+ skos:definition "The first known performance of a work."@en ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "Master class"@en ;
+ skos:definition "Event in which a recognized performer critiques the performances of one or more other performers."@en ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "Open mic performance"@en ;
+ skos:definition "Live performance at a coffee house, night club, or other venue by amateur performers."@en ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "Performance"@en ;
+ skos:definition "Event in which a performer or group of performers perform an improvisation or pre-existing work to an audience or in a recording studio."@en ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "Recording session"@en ;
+ skos:definition "Event in which one or more performances are recorded with the aim of producing a recording for issue."@en ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "Rehearsal"@en ;
+ skos:definition "Event in which a performer or group of performers prepare for a performance."@en ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
diff --git a/2.0/vocabularies/PMOMediumComponentQualifier.html b/2.0/vocabularies/PMOMediumComponentQualifier.html
new file mode 100644
index 0000000..9754f3c
--- /dev/null
+++ b/2.0/vocabularies/PMOMediumComponentQualifier.html
@@ -0,0 +1,171 @@
+
+
+
+
+
+
+
+
+
+
+
+
+PMO Medium Component Qualifier Vocabulary
+
+
+
+
PMO Medium Component Qualifier Vocabulary
+
http://performedmusicontology.org/vocabularies/medium_component_qualifier/
+
+
+
+
+
+
+
+
+
+ ad libc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Use for: ad libitum
+
+
Scope note: For medium components marked "ad lib" or "ad libitum" in a score or otherwise.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ amplifiedc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: For medium components marked "amplified" in a score or otherwise.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ obbligatoc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: For medium components marked "obbligato" in a score or otherwise..
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ offstagec
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: For a medium component that is marked to be performed or is performed offstage, often out of sight of the audience.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+ optionalc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: For a medium component marked "optional" in a score or otherwise.
+
Current version: NEW 2024-04-30
+
+
+
+
+
+
+
IRI: http://performedmusicontology.org/2.0/vocabularies/event_type/rehearsal
+
+
Scope note: For a medium component marked "solo" in a score or is clearly a solo part in the context of the work, such as the oboe part in a concerto for oboe and orchestra.
+
Current version: NEW 2024-04-30
+
+
+
+
+
Namespace Declarations back to ToC
+
+ dcterms
+ http://purl.org/dc/terms/
+ rdf
+ http://www.w3.org/1999/02/22-rdf-syntax-ns#
+ rdfs
+ http://www.w3.org/2000/01/rdf-schema#
+ skos
+ http://www.w3.org/2004/02/skos/core#
+
+
+
+
diff --git a/2.0/vocabularies/PMOMediumComponentQualifier.rdf b/2.0/vocabularies/PMOMediumComponentQualifier.rdf
new file mode 100644
index 0000000..b7279f6
--- /dev/null
+++ b/2.0/vocabularies/PMOMediumComponentQualifier.rdf
@@ -0,0 +1,88 @@
+
+
+
+
+ ad lib
+ ad libitum
+ For medium components marked "ad lib" or "ad libitum" in a score or otherwise.
+ Value for: MediumComponentQualifier.
+
+
+
+
+
+ obbligato
+ For medium components marked "obbligato" in a score or otherwise..
+ Value for: MediumComponentQualifier.
+
+
+
+
+
+ offstage
+ For a medium component that is marked to be performed or is performed offstage, often out of sight of the audience.
+ Value for: MediumComponentQualifier.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ solo
+ For a medium component marked "solo" in a score or is clearly a solo part in the context of the work, such as the oboe part in a concerto for oboe and orchestra.
+ Value for: MediumComponentQualifier.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ optional
+ For a medium component marked "optional" in a score or otherwise.
+ Value for: MediumComponentQualifier.
+
+
+
+
+
+ amplified
+ For medium components marked "amplified" in a score or otherwise.
+ Value for: MediumComponentQualifier.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ PMO Medium Component Qualifier Vocabulary
+ PMO Medium Component Qualifier Vocabulary
+ The PMO Medium Component Qualifier Vocabulary is a controlled vocabulary that provides a qualifying description for a medium of performance, e.g., amplified, obbligato, offstage. It was developed for the Performed Music Ontology 2.0, specifically the Medium component qualifier class, but may be used with other ontologies.
+
+
+ NEW
+
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/PMOMediumComponentQualifier.ttl b/2.0/vocabularies/PMOMediumComponentQualifier.ttl
new file mode 100644
index 0000000..1d8f621
--- /dev/null
+++ b/2.0/vocabularies/PMOMediumComponentQualifier.ttl
@@ -0,0 +1,79 @@
+@prefix skos: .
+@prefix rdfs: .
+@prefix dc: .
+@prefix rdf: .
+
+
+ a skos:ConceptScheme ;
+ rdfs:label "PMO Medium Component Qualifier Vocabulary"@en ;
+ dc:title "PMO Medium Component Qualifier Vocabulary"@en ;
+ skos:definition "The PMO Medium Component Qualifier Vocabulary is a controlled vocabulary that provides a qualifying description for a medium of performance, e.g., amplified, obbligato, offstage. It was developed for the Performed Music Ontology 2.0, specifically the Medium component qualifier class, but may be used with other ontologies."@en .
+
+
+ a skos:Concept ;
+ skos:prefLabel "ad lib"@en ;
+ skos:altLabel "ad libitum"@en ;
+ skos:definition """For medium components marked "ad lib" or "ad libitum" in a score or otherwise."""@en ;
+ rdfs:comment "Value for: MediumComponentQualifier."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "amplified"@en ;
+ skos:definition """For medium components marked "amplified" in a score or otherwise."""@en ;
+ rdfs:comment "Value for: MediumComponentQualifier."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "obbligato"@en ;
+ skos:definition """For medium components marked "obbligato" in a score or otherwise.."""@en ;
+ rdfs:comment "Value for: MediumComponentQualifier."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "offstage"@en ;
+ skos:definition "For a medium component that is marked to be performed or is performed offstage, often out of sight of the audience."@en ;
+ rdfs:comment "Value for: MediumComponentQualifier."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "optional"@en ;
+ skos:definition """For a medium component marked "optional" in a score or otherwise."""@en ;
+ rdfs:comment "Value for: MediumComponentQualifier."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:creator ;
+ dc:date "2024-04-30"
+ ] .
+
+
+ a skos:Concept ;
+ skos:prefLabel "solo"@en ;
+ skos:definition """For a medium component marked "solo" in a score or is clearly a solo part in the context of the work, such as the oboe part in a concerto for oboe and orchestra."""@en ;
+ rdfs:comment "Value for: MediumComponentQualifier."@en ;
+ skos:inScheme ;
+ skos:changeNote [
+ rdf:value "NEW" ;
+ dc:date "2024-04-30"
+ ] .
+
diff --git a/2.0/vocabularies/ensemble_size/duo/duo.rdf b/2.0/vocabularies/ensemble_size/duo/duo.rdf
new file mode 100644
index 0000000..10c8097
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/duo/duo.rdf
@@ -0,0 +1,21 @@
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ duo
+ duet
+ An ensemble of 2 performers.
+ Value for: MediumType.
+
+
+
+
diff --git a/2.0/vocabularies/ensemble_size/duo/duo.ttl b/2.0/vocabularies/ensemble_size/duo/duo.ttl
new file mode 100644
index 0000000..0eb13fa
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/duo/duo.ttl
@@ -0,0 +1,14 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:altLabel "duet"@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "An ensemble of 2 performers."@en ;
+ skos:inScheme ;
+ skos:prefLabel "duo"@en .
+
diff --git a/2.0/vocabularies/ensemble_size/duo/index.html b/2.0/vocabularies/ensemble_size/duo/index.html
new file mode 100644
index 0000000..3495da5
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/duo/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ duo
+
+ Documentation at duo .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/ensemble_size/index.html b/2.0/vocabularies/ensemble_size/index.html
new file mode 100644
index 0000000..2c4bdca
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/index.html
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
+
+ PMO Ensemble Size Vocabulary
+
+ Documentation at PMO Ensemble Size Vocabulary .
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/ensemble_size/large_ensemble/index.html b/2.0/vocabularies/ensemble_size/large_ensemble/index.html
new file mode 100644
index 0000000..1bdd9a8
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/large_ensemble/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ large ensemble
+
+ Documentation at large ensemble .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/ensemble_size/large_ensemble/large_ensemble.rdf b/2.0/vocabularies/ensemble_size/large_ensemble/large_ensemble.rdf
new file mode 100644
index 0000000..0575fe7
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/large_ensemble/large_ensemble.rdf
@@ -0,0 +1,20 @@
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ large ensemble
+ An ensemble of more than 9 performers.
+ Value for: MediumType.
+
+
+
+
diff --git a/2.0/vocabularies/ensemble_size/large_ensemble/large_ensemble.ttl b/2.0/vocabularies/ensemble_size/large_ensemble/large_ensemble.ttl
new file mode 100644
index 0000000..fd7a6cc
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/large_ensemble/large_ensemble.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "An ensemble of more than 9 performers."@en ;
+ skos:inScheme ;
+ skos:prefLabel "large ensemble"@en .
+
diff --git a/2.0/vocabularies/ensemble_size/nonet/index.html b/2.0/vocabularies/ensemble_size/nonet/index.html
new file mode 100644
index 0000000..30d909e
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/nonet/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ nonet
+
+ Documentation at nonet .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/ensemble_size/nonet/nonet.rdf b/2.0/vocabularies/ensemble_size/nonet/nonet.rdf
new file mode 100644
index 0000000..018721a
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/nonet/nonet.rdf
@@ -0,0 +1,20 @@
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ nonet
+ An ensemble of 9 performers.
+ Value for: MediumType.
+
+
+
+
diff --git a/2.0/vocabularies/ensemble_size/nonet/nonet.ttl b/2.0/vocabularies/ensemble_size/nonet/nonet.ttl
new file mode 100644
index 0000000..8076f6e
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/nonet/nonet.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "An ensemble of 9 performers."@en ;
+ skos:inScheme ;
+ skos:prefLabel "nonet"@en .
+
diff --git a/2.0/vocabularies/ensemble_size/octet/index.html b/2.0/vocabularies/ensemble_size/octet/index.html
new file mode 100644
index 0000000..5769b60
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/octet/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ octet
+
+ Documentation at octet .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/ensemble_size/octet/octet.rdf b/2.0/vocabularies/ensemble_size/octet/octet.rdf
new file mode 100644
index 0000000..cc99fb2
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/octet/octet.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ octet
+ An ensemble of 8 performers.
+ Value for: MediumType.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/ensemble_size/octet/octet.ttl b/2.0/vocabularies/ensemble_size/octet/octet.ttl
new file mode 100644
index 0000000..ef2a58c
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/octet/octet.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "An ensemble of 8 performers."@en ;
+ skos:inScheme ;
+ skos:prefLabel "octet"@en .
+
diff --git a/2.0/vocabularies/ensemble_size/quartet/index.html b/2.0/vocabularies/ensemble_size/quartet/index.html
new file mode 100644
index 0000000..f58481e
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/quartet/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ quartet
+
+ Documentation at quartet .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/ensemble_size/quartet/quartet.rdf b/2.0/vocabularies/ensemble_size/quartet/quartet.rdf
new file mode 100644
index 0000000..9e0886f
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/quartet/quartet.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ quartet
+ An ensemble of 4 performers.
+ Value for: MediumType.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/ensemble_size/quartet/quartet.ttl b/2.0/vocabularies/ensemble_size/quartet/quartet.ttl
new file mode 100644
index 0000000..32d4d62
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/quartet/quartet.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "An ensemble of 4 performers."@en ;
+ skos:inScheme ;
+ skos:prefLabel "quartet"@en .
+
diff --git a/2.0/vocabularies/ensemble_size/quintet/index.html b/2.0/vocabularies/ensemble_size/quintet/index.html
new file mode 100644
index 0000000..149e553
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/quintet/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ quintet
+
+ Documentation at quintet .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/ensemble_size/quintet/quintet.rdf b/2.0/vocabularies/ensemble_size/quintet/quintet.rdf
new file mode 100644
index 0000000..c0a89b0
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/quintet/quintet.rdf
@@ -0,0 +1,21 @@
+
+
+
+
+ quintet
+ An ensemble of 5 performers.
+ Value for: MediumType.
+
+
+
+
+ NEW
+
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/ensemble_size/quintet/quintet.ttl b/2.0/vocabularies/ensemble_size/quintet/quintet.ttl
new file mode 100644
index 0000000..6fea972
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/quintet/quintet.ttl
@@ -0,0 +1,14 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:changeNote [ dc1:creator ;
+ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "An ensemble of 5 performers."@en ;
+ skos:inScheme ;
+ skos:prefLabel "quintet"@en .
+
diff --git a/2.0/vocabularies/ensemble_size/septet/index.html b/2.0/vocabularies/ensemble_size/septet/index.html
new file mode 100644
index 0000000..1baca7e
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/septet/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ septet
+
+ Documentation at septet .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/ensemble_size/septet/septet.rdf b/2.0/vocabularies/ensemble_size/septet/septet.rdf
new file mode 100644
index 0000000..cfa67ea
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/septet/septet.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ septet
+ An ensemble of 7 performers.
+ Value for: MediumType.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/ensemble_size/septet/septet.ttl b/2.0/vocabularies/ensemble_size/septet/septet.ttl
new file mode 100644
index 0000000..3736b2f
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/septet/septet.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "An ensemble of 7 performers."@en ;
+ skos:inScheme ;
+ skos:prefLabel "septet"@en .
+
diff --git a/2.0/vocabularies/ensemble_size/sextet/index.html b/2.0/vocabularies/ensemble_size/sextet/index.html
new file mode 100644
index 0000000..7013076
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/sextet/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ sextet
+
+ Documentation at sextet .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/ensemble_size/sextet/sextet.rdf b/2.0/vocabularies/ensemble_size/sextet/sextet.rdf
new file mode 100644
index 0000000..b462a63
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/sextet/sextet.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ sextet
+ An ensemble of 6 performers.
+ Value for: MediumType.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/ensemble_size/sextet/sextet.ttl b/2.0/vocabularies/ensemble_size/sextet/sextet.ttl
new file mode 100644
index 0000000..a408c28
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/sextet/sextet.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "An ensemble of 6 performers."@en ;
+ skos:inScheme ;
+ skos:prefLabel "sextet"@en .
+
diff --git a/2.0/vocabularies/ensemble_size/small_ensemble/index.html b/2.0/vocabularies/ensemble_size/small_ensemble/index.html
new file mode 100644
index 0000000..0fc6043
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/small_ensemble/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ small ensemble
+
+ Documentation at small ensemble .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/ensemble_size/small_ensemble/small_ensemble.rdf b/2.0/vocabularies/ensemble_size/small_ensemble/small_ensemble.rdf
new file mode 100644
index 0000000..a9ea3d5
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/small_ensemble/small_ensemble.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ small ensemble
+ An unspecified ensemble of fewer than 10 performers.
+ Value for: MediumType.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/ensemble_size/small_ensemble/small_ensemble.ttl b/2.0/vocabularies/ensemble_size/small_ensemble/small_ensemble.ttl
new file mode 100644
index 0000000..03adcad
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/small_ensemble/small_ensemble.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "An unspecified ensemble of fewer than 10 performers."@en ;
+ skos:inScheme ;
+ skos:prefLabel "small ensemble"@en .
+
diff --git a/2.0/vocabularies/ensemble_size/solo_or_individual/index.html b/2.0/vocabularies/ensemble_size/solo_or_individual/index.html
new file mode 100644
index 0000000..4466e58
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/solo_or_individual/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ solo or individual
+
+ Documentation at solo or individual .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/ensemble_size/solo_or_individual/solo_or_individual.rdf b/2.0/vocabularies/ensemble_size/solo_or_individual/solo_or_individual.rdf
new file mode 100644
index 0000000..97601df
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/solo_or_individual/solo_or_individual.rdf
@@ -0,0 +1,20 @@
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ solo or individual
+ A solo or individual performer. May be accompanied by a larger ensemble.
+ Value for: MediumType.
+
+
+
+
diff --git a/2.0/vocabularies/ensemble_size/solo_or_individual/solo_or_individual.ttl b/2.0/vocabularies/ensemble_size/solo_or_individual/solo_or_individual.ttl
new file mode 100644
index 0000000..4aa2b73
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/solo_or_individual/solo_or_individual.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "A solo or individual performer. May be accompanied by a larger ensemble."@en ;
+ skos:inScheme ;
+ skos:prefLabel "solo or individual"@en .
+
diff --git a/2.0/vocabularies/ensemble_size/trio/index.html b/2.0/vocabularies/ensemble_size/trio/index.html
new file mode 100644
index 0000000..de1704c
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/trio/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ trio
+
+ Documentation at trio .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/ensemble_size/trio/trio.rdf b/2.0/vocabularies/ensemble_size/trio/trio.rdf
new file mode 100644
index 0000000..dd421ba
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/trio/trio.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ trio
+ An ensemble of 3 performers.
+ Value for: MediumType.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/ensemble_size/trio/trio.ttl b/2.0/vocabularies/ensemble_size/trio/trio.ttl
new file mode 100644
index 0000000..d4c3028
--- /dev/null
+++ b/2.0/vocabularies/ensemble_size/trio/trio.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumType."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "An ensemble of 3 performers."@en ;
+ skos:inScheme ;
+ skos:prefLabel "trio"@en .
+
diff --git a/2.0/vocabularies/event_type/audition/audition.rdf b/2.0/vocabularies/event_type/audition/audition.rdf
new file mode 100644
index 0000000..d0c9752
--- /dev/null
+++ b/2.0/vocabularies/event_type/audition/audition.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ Audition
+ Event in which a performer or actor is applying for a position in an ensemble, cast, film, etc.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/event_type/audition/audition.ttl b/2.0/vocabularies/event_type/audition/audition.ttl
new file mode 100644
index 0000000..7eedd96
--- /dev/null
+++ b/2.0/vocabularies/event_type/audition/audition.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "Event in which a performer or actor is applying for a position in an ensemble, cast, film, etc."@en ;
+ skos:inScheme ;
+ skos:prefLabel "Audition"@en .
+
diff --git a/2.0/vocabularies/event_type/audition/index.html b/2.0/vocabularies/event_type/audition/index.html
new file mode 100644
index 0000000..f612bf3
--- /dev/null
+++ b/2.0/vocabularies/event_type/audition/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ Audition
+
+ Documentation at Audition .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/benefit_concert/benefit_concert.rdf b/2.0/vocabularies/event_type/benefit_concert/benefit_concert.rdf
new file mode 100644
index 0000000..75e909e
--- /dev/null
+++ b/2.0/vocabularies/event_type/benefit_concert/benefit_concert.rdf
@@ -0,0 +1,20 @@
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ Benefit concert
+ Concert held for charitable purposes, i.e., to raise funds or awareness.
+ Use as type of bf:Event.
+
+
+
+
diff --git a/2.0/vocabularies/event_type/benefit_concert/benefit_concert.ttl b/2.0/vocabularies/event_type/benefit_concert/benefit_concert.ttl
new file mode 100644
index 0000000..67c144f
--- /dev/null
+++ b/2.0/vocabularies/event_type/benefit_concert/benefit_concert.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "Concert held for charitable purposes, i.e., to raise funds or awareness."@en ;
+ skos:inScheme ;
+ skos:prefLabel "Benefit concert"@en .
+
diff --git a/2.0/vocabularies/event_type/benefit_concert/index.html b/2.0/vocabularies/event_type/benefit_concert/index.html
new file mode 100644
index 0000000..c4a9371
--- /dev/null
+++ b/2.0/vocabularies/event_type/benefit_concert/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ Benefit concert
+
+ Documentation at Benefit concert .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/ceremony/ceremony.rdf b/2.0/vocabularies/event_type/ceremony/ceremony.rdf
new file mode 100644
index 0000000..5cccdc3
--- /dev/null
+++ b/2.0/vocabularies/event_type/ceremony/ceremony.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ Ceremony
+ Ritual event, performed on special occasions (e.g., death, baptism, wedding, graduation, equinox, coronation, victory).
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/event_type/ceremony/ceremony.ttl b/2.0/vocabularies/event_type/ceremony/ceremony.ttl
new file mode 100644
index 0000000..9c5a514
--- /dev/null
+++ b/2.0/vocabularies/event_type/ceremony/ceremony.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "Ritual event, performed on special occasions (e.g., death, baptism, wedding, graduation, equinox, coronation, victory)."@en ;
+ skos:inScheme ;
+ skos:prefLabel "Ceremony"@en .
+
diff --git a/2.0/vocabularies/event_type/ceremony/index.html b/2.0/vocabularies/event_type/ceremony/index.html
new file mode 100644
index 0000000..d7d632f
--- /dev/null
+++ b/2.0/vocabularies/event_type/ceremony/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ Ceremony
+
+ Documentation at Ceremony .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/commmand_performance/commmand_performance.rdf b/2.0/vocabularies/event_type/commmand_performance/commmand_performance.rdf
new file mode 100644
index 0000000..245c090
--- /dev/null
+++ b/2.0/vocabularies/event_type/commmand_performance/commmand_performance.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ Command performance
+ Concert or performance done at the request of a monarch or other head of state.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/event_type/commmand_performance/commmand_performance.ttl b/2.0/vocabularies/event_type/commmand_performance/commmand_performance.ttl
new file mode 100644
index 0000000..15c3115
--- /dev/null
+++ b/2.0/vocabularies/event_type/commmand_performance/commmand_performance.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "Concert or performance done at the request of a monarch or other head of state."@en ;
+ skos:inScheme ;
+ skos:prefLabel "Command performance"@en .
+
diff --git a/2.0/vocabularies/event_type/commmand_performance/index.html b/2.0/vocabularies/event_type/commmand_performance/index.html
new file mode 100644
index 0000000..a357b61
--- /dev/null
+++ b/2.0/vocabularies/event_type/commmand_performance/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ Command performance
+
+ Documentation at Command performance .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/concert/concert.rdf b/2.0/vocabularies/event_type/concert/concert.rdf
new file mode 100644
index 0000000..85b2872
--- /dev/null
+++ b/2.0/vocabularies/event_type/concert/concert.rdf
@@ -0,0 +1,21 @@
+
+
+
+
+ Concert
+ Live musical performance of one or more works in front of an audience or in a single recording session.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/event_type/concert/concert.ttl b/2.0/vocabularies/event_type/concert/concert.ttl
new file mode 100644
index 0000000..3c5c163
--- /dev/null
+++ b/2.0/vocabularies/event_type/concert/concert.ttl
@@ -0,0 +1,14 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:changeNote [ dc1:creator ;
+ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "Live musical performance of one or more works in front of an audience or in a single recording session."@en ;
+ skos:inScheme ;
+ skos:prefLabel "Concert"@en .
+
diff --git a/2.0/vocabularies/event_type/concert/index.html b/2.0/vocabularies/event_type/concert/index.html
new file mode 100644
index 0000000..98e962f
--- /dev/null
+++ b/2.0/vocabularies/event_type/concert/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ Concert
+
+ Documentation at Concert .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/concert_series/concert_series.rdf b/2.0/vocabularies/event_type/concert_series/concert_series.rdf
new file mode 100644
index 0000000..bab8171
--- /dev/null
+++ b/2.0/vocabularies/event_type/concert_series/concert_series.rdf
@@ -0,0 +1,20 @@
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ Concert series
+ Group of concerts in the same geographic area by a single performer or brought together by a common theme, usually available for sale as a package. e.g., an orchestra concert season, a series featuring chamber ensembles.
+ Use as type of bf:Event.
+
+
+
+
diff --git a/2.0/vocabularies/event_type/concert_series/concert_series.ttl b/2.0/vocabularies/event_type/concert_series/concert_series.ttl
new file mode 100644
index 0000000..4280332
--- /dev/null
+++ b/2.0/vocabularies/event_type/concert_series/concert_series.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "Group of concerts in the same geographic area by a single performer or brought together by a common theme, usually available for sale as a package. e.g., an orchestra concert season, a series featuring chamber ensembles."@en ;
+ skos:inScheme ;
+ skos:prefLabel "Concert series"@en .
+
diff --git a/2.0/vocabularies/event_type/concert_series/index.html b/2.0/vocabularies/event_type/concert_series/index.html
new file mode 100644
index 0000000..e3535ab
--- /dev/null
+++ b/2.0/vocabularies/event_type/concert_series/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ Concert series
+
+ Documentation at Concert series .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/concert_tour/concert_tour.rdf b/2.0/vocabularies/event_type/concert_tour/concert_tour.rdf
new file mode 100644
index 0000000..837744c
--- /dev/null
+++ b/2.0/vocabularies/event_type/concert_tour/concert_tour.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ Series of concerts by a performer or group of performers in different cities, countries, or locations.
+ An ensemble of 7 performers.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/event_type/concert_tour/concert_tour.ttl b/2.0/vocabularies/event_type/concert_tour/concert_tour.ttl
new file mode 100644
index 0000000..a34d63e
--- /dev/null
+++ b/2.0/vocabularies/event_type/concert_tour/concert_tour.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "An ensemble of 7 performers."@en ;
+ skos:inScheme ;
+ skos:prefLabel "Series of concerts by a performer or group of performers in different cities, countries, or locations."@en .
+
diff --git a/2.0/vocabularies/event_type/concert_tour/index.html b/2.0/vocabularies/event_type/concert_tour/index.html
new file mode 100644
index 0000000..f2316c0
--- /dev/null
+++ b/2.0/vocabularies/event_type/concert_tour/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ Series of concerts by a performer or group of performers in different cities, countries, or locations.
+
+ Documentation at Series of concerts by a performer or group of performers in different cities, countries, or locations. .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/first_performance/first_performance.rdf b/2.0/vocabularies/event_type/first_performance/first_performance.rdf
new file mode 100644
index 0000000..1c98e57
--- /dev/null
+++ b/2.0/vocabularies/event_type/first_performance/first_performance.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ First performance
+ The first known performance of a work.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/event_type/first_performance/first_performance.ttl b/2.0/vocabularies/event_type/first_performance/first_performance.ttl
new file mode 100644
index 0000000..ca3526e
--- /dev/null
+++ b/2.0/vocabularies/event_type/first_performance/first_performance.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "The first known performance of a work."@en ;
+ skos:inScheme ;
+ skos:prefLabel "First performance"@en .
+
diff --git a/2.0/vocabularies/event_type/first_performance/index.html b/2.0/vocabularies/event_type/first_performance/index.html
new file mode 100644
index 0000000..4dd0b43
--- /dev/null
+++ b/2.0/vocabularies/event_type/first_performance/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ First performance
+
+ Documentation at First performance .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/index.html b/2.0/vocabularies/event_type/index.html
new file mode 100644
index 0000000..0401081
--- /dev/null
+++ b/2.0/vocabularies/event_type/index.html
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
+
+ PMO Event Type Vocabulary
+
+ Documentation at PMO Event Type Vocabulary .
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/master_class/index.html b/2.0/vocabularies/event_type/master_class/index.html
new file mode 100644
index 0000000..a6cf5c7
--- /dev/null
+++ b/2.0/vocabularies/event_type/master_class/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ Master class
+
+ Documentation at Master class .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/master_class/master_class.rdf b/2.0/vocabularies/event_type/master_class/master_class.rdf
new file mode 100644
index 0000000..aff8a06
--- /dev/null
+++ b/2.0/vocabularies/event_type/master_class/master_class.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ Master class
+ Event in which a recognized performer critiques the performances of one or more other performers.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/event_type/master_class/master_class.ttl b/2.0/vocabularies/event_type/master_class/master_class.ttl
new file mode 100644
index 0000000..014fe9f
--- /dev/null
+++ b/2.0/vocabularies/event_type/master_class/master_class.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "Event in which a recognized performer critiques the performances of one or more other performers."@en ;
+ skos:inScheme ;
+ skos:prefLabel "Master class"@en .
+
diff --git a/2.0/vocabularies/event_type/open_mic_performance/index.html b/2.0/vocabularies/event_type/open_mic_performance/index.html
new file mode 100644
index 0000000..da8ae5c
--- /dev/null
+++ b/2.0/vocabularies/event_type/open_mic_performance/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ Open mic performance
+
+ Documentation at Open mic performance .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/open_mic_performance/open_mic_performance.rdf b/2.0/vocabularies/event_type/open_mic_performance/open_mic_performance.rdf
new file mode 100644
index 0000000..dccd1c6
--- /dev/null
+++ b/2.0/vocabularies/event_type/open_mic_performance/open_mic_performance.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ Open mic performance
+ Live performance at a coffee house, night club, or other venue by amateur performers.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/event_type/open_mic_performance/open_mic_performance.ttl b/2.0/vocabularies/event_type/open_mic_performance/open_mic_performance.ttl
new file mode 100644
index 0000000..2476986
--- /dev/null
+++ b/2.0/vocabularies/event_type/open_mic_performance/open_mic_performance.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "Live performance at a coffee house, night club, or other venue by amateur performers."@en ;
+ skos:inScheme ;
+ skos:prefLabel "Open mic performance"@en .
+
diff --git a/2.0/vocabularies/event_type/performance/index.html b/2.0/vocabularies/event_type/performance/index.html
new file mode 100644
index 0000000..ffe7936
--- /dev/null
+++ b/2.0/vocabularies/event_type/performance/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ Performance
+
+ Documentation at Performance .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/performance/performance.rdf b/2.0/vocabularies/event_type/performance/performance.rdf
new file mode 100644
index 0000000..51269d0
--- /dev/null
+++ b/2.0/vocabularies/event_type/performance/performance.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ Performance
+ Event in which a performer or group of performers perform an improvisation or pre-existing work to an audience or in a recording studio.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/event_type/performance/performance.ttl b/2.0/vocabularies/event_type/performance/performance.ttl
new file mode 100644
index 0000000..3533522
--- /dev/null
+++ b/2.0/vocabularies/event_type/performance/performance.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "Event in which a performer or group of performers perform an improvisation or pre-existing work to an audience or in a recording studio."@en ;
+ skos:inScheme ;
+ skos:prefLabel "Performance"@en .
+
diff --git a/2.0/vocabularies/event_type/recording_session/index.html b/2.0/vocabularies/event_type/recording_session/index.html
new file mode 100644
index 0000000..3412081
--- /dev/null
+++ b/2.0/vocabularies/event_type/recording_session/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ Recording session
+
+ Documentation at Recording session .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/recording_session/recording_session.rdf b/2.0/vocabularies/event_type/recording_session/recording_session.rdf
new file mode 100644
index 0000000..3a097d5
--- /dev/null
+++ b/2.0/vocabularies/event_type/recording_session/recording_session.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ Recording session
+ Event in which one or more performances are recorded with the aim of producing a recording for issue.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/event_type/recording_session/recording_session.ttl b/2.0/vocabularies/event_type/recording_session/recording_session.ttl
new file mode 100644
index 0000000..d7144be
--- /dev/null
+++ b/2.0/vocabularies/event_type/recording_session/recording_session.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "Event in which one or more performances are recorded with the aim of producing a recording for issue."@en ;
+ skos:inScheme ;
+ skos:prefLabel "Recording session"@en .
+
diff --git a/2.0/vocabularies/event_type/rehearsal/index.html b/2.0/vocabularies/event_type/rehearsal/index.html
new file mode 100644
index 0000000..d135a8e
--- /dev/null
+++ b/2.0/vocabularies/event_type/rehearsal/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ Rehearsal
+
+ Documentation at Rehearsal .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/event_type/rehearsal/rehearsal.rdf b/2.0/vocabularies/event_type/rehearsal/rehearsal.rdf
new file mode 100644
index 0000000..b1cea79
--- /dev/null
+++ b/2.0/vocabularies/event_type/rehearsal/rehearsal.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ Rehearsal
+ Event in which a performer or group of performers prepare for a performance.
+ Use as type of bf:Event.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/event_type/rehearsal/rehearsal.ttl b/2.0/vocabularies/event_type/rehearsal/rehearsal.ttl
new file mode 100644
index 0000000..faf4893
--- /dev/null
+++ b/2.0/vocabularies/event_type/rehearsal/rehearsal.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Use as type of bf:Event."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "Event in which a performer or group of performers prepare for a performance."@en ;
+ skos:inScheme ;
+ skos:prefLabel "Rehearsal"@en .
+
diff --git a/2.0/vocabularies/index.html b/2.0/vocabularies/index.html
new file mode 100644
index 0000000..51f52d4
--- /dev/null
+++ b/2.0/vocabularies/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+ Performed Music Ontology 2.0
+
+ Performed Music Ontology 2.0
+ An extension of the BIBFRAME ontology for describing performed music, both for mainstream and archival performed music collections.
+
+
+
+
diff --git a/2.0/vocabularies/medium_component_qualifier/ad_lib/ad_lib.rdf b/2.0/vocabularies/medium_component_qualifier/ad_lib/ad_lib.rdf
new file mode 100644
index 0000000..b4b1480
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/ad_lib/ad_lib.rdf
@@ -0,0 +1,21 @@
+
+
+
+
+ ad lib
+ ad libitum
+ For medium components marked "ad lib" or "ad libitum" in a score or otherwise.
+ Value for: MediumComponentQualifier.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/medium_component_qualifier/ad_lib/ad_lib.ttl b/2.0/vocabularies/medium_component_qualifier/ad_lib/ad_lib.ttl
new file mode 100644
index 0000000..07120d8
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/ad_lib/ad_lib.ttl
@@ -0,0 +1,14 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumComponentQualifier."@en ;
+ skos:altLabel "ad libitum"@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "For medium components marked \"ad lib\" or \"ad libitum\" in a score or otherwise."@en ;
+ skos:inScheme ;
+ skos:prefLabel "ad lib"@en .
+
diff --git a/2.0/vocabularies/medium_component_qualifier/ad_lib/index.html b/2.0/vocabularies/medium_component_qualifier/ad_lib/index.html
new file mode 100644
index 0000000..b32266f
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/ad_lib/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ ad lib
+
+ Documentation at ad lib .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/medium_component_qualifier/amplified/amplified.rdf b/2.0/vocabularies/medium_component_qualifier/amplified/amplified.rdf
new file mode 100644
index 0000000..d120f24
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/amplified/amplified.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ amplified
+ For medium components marked "amplified" in a score or otherwise.
+ Value for: MediumComponentQualifier.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/medium_component_qualifier/amplified/amplified.ttl b/2.0/vocabularies/medium_component_qualifier/amplified/amplified.ttl
new file mode 100644
index 0000000..697868f
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/amplified/amplified.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumComponentQualifier."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "For medium components marked \"amplified\" in a score or otherwise."@en ;
+ skos:inScheme ;
+ skos:prefLabel "amplified"@en .
+
diff --git a/2.0/vocabularies/medium_component_qualifier/amplified/index.html b/2.0/vocabularies/medium_component_qualifier/amplified/index.html
new file mode 100644
index 0000000..7e33ed2
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/amplified/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ amplified
+
+ Documentation at amplified .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/medium_component_qualifier/index.html b/2.0/vocabularies/medium_component_qualifier/index.html
new file mode 100644
index 0000000..611f341
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/index.html
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+ PMO Medium Component Qualifier Vocabulary
+
+ Documentation at PMO Medium Component Qualifier Vocabulary .
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/medium_component_qualifier/obbligato/index.html b/2.0/vocabularies/medium_component_qualifier/obbligato/index.html
new file mode 100644
index 0000000..e69f2d2
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/obbligato/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ obbligato
+
+ Documentation at obbligato .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/medium_component_qualifier/obbligato/obbligato.rdf b/2.0/vocabularies/medium_component_qualifier/obbligato/obbligato.rdf
new file mode 100644
index 0000000..b9d4444
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/obbligato/obbligato.rdf
@@ -0,0 +1,20 @@
+
+
+
+ NEW
+ 2024-04-30
+
+
+
+ obbligato
+ For medium components marked "obbligato" in a score or otherwise..
+ Value for: MediumComponentQualifier.
+
+
+
+
diff --git a/2.0/vocabularies/medium_component_qualifier/obbligato/obbligato.ttl b/2.0/vocabularies/medium_component_qualifier/obbligato/obbligato.ttl
new file mode 100644
index 0000000..bc5155c
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/obbligato/obbligato.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumComponentQualifier."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "For medium components marked \"obbligato\" in a score or otherwise.."@en ;
+ skos:inScheme ;
+ skos:prefLabel "obbligato"@en .
+
diff --git a/2.0/vocabularies/medium_component_qualifier/offstage/index.html b/2.0/vocabularies/medium_component_qualifier/offstage/index.html
new file mode 100644
index 0000000..25bebfa
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/offstage/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ offstage
+
+ Documentation at offstage .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/medium_component_qualifier/offstage/offstage.rdf b/2.0/vocabularies/medium_component_qualifier/offstage/offstage.rdf
new file mode 100644
index 0000000..4f55032
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/offstage/offstage.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ offstage
+ For a medium component that is marked to be performed or is performed offstage, often out of sight of the audience.
+ Value for: MediumComponentQualifier.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/medium_component_qualifier/offstage/offstage.ttl b/2.0/vocabularies/medium_component_qualifier/offstage/offstage.ttl
new file mode 100644
index 0000000..3c3e0b8
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/offstage/offstage.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumComponentQualifier."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "For a medium component that is marked to be performed or is performed offstage, often out of sight of the audience."@en ;
+ skos:inScheme ;
+ skos:prefLabel "offstage"@en .
+
diff --git a/2.0/vocabularies/medium_component_qualifier/optional/index.html b/2.0/vocabularies/medium_component_qualifier/optional/index.html
new file mode 100644
index 0000000..8288524
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/optional/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ optional
+
+ Documentation at optional .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/medium_component_qualifier/optional/optional.rdf b/2.0/vocabularies/medium_component_qualifier/optional/optional.rdf
new file mode 100644
index 0000000..e368a80
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/optional/optional.rdf
@@ -0,0 +1,21 @@
+
+
+
+ NEW
+
+ 2024-04-30
+
+
+
+ optional
+ For a medium component marked "optional" in a score or otherwise.
+ Value for: MediumComponentQualifier.
+
+
+
+
diff --git a/2.0/vocabularies/medium_component_qualifier/optional/optional.ttl b/2.0/vocabularies/medium_component_qualifier/optional/optional.ttl
new file mode 100644
index 0000000..047dfbe
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/optional/optional.ttl
@@ -0,0 +1,14 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumComponentQualifier."@en ;
+ skos:changeNote [ dc1:creator ;
+ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "For a medium component marked \"optional\" in a score or otherwise."@en ;
+ skos:inScheme ;
+ skos:prefLabel "optional"@en .
+
diff --git a/2.0/vocabularies/medium_component_qualifier/solo/index.html b/2.0/vocabularies/medium_component_qualifier/solo/index.html
new file mode 100644
index 0000000..f1e6218
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/solo/index.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ solo
+
+ Documentation at solo .
+ Other versions:
+
+
+
+
\ No newline at end of file
diff --git a/2.0/vocabularies/medium_component_qualifier/solo/solo.rdf b/2.0/vocabularies/medium_component_qualifier/solo/solo.rdf
new file mode 100644
index 0000000..19a9025
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/solo/solo.rdf
@@ -0,0 +1,20 @@
+
+
+
+
+ solo
+ For a medium component marked "solo" in a score or is clearly a solo part in the context of the work, such as the oboe part in a concerto for oboe and orchestra.
+ Value for: MediumComponentQualifier.
+
+
+
+
+ NEW
+ 2024-04-30
+
+
diff --git a/2.0/vocabularies/medium_component_qualifier/solo/solo.ttl b/2.0/vocabularies/medium_component_qualifier/solo/solo.ttl
new file mode 100644
index 0000000..05e296c
--- /dev/null
+++ b/2.0/vocabularies/medium_component_qualifier/solo/solo.ttl
@@ -0,0 +1,13 @@
+@prefix dc1: .
+@prefix rdf: .
+@prefix rdfs: .
+@prefix skos: .
+
+ a skos:Concept ;
+ rdfs:comment "Value for: MediumComponentQualifier."@en ;
+ skos:changeNote [ dc1:date "2024-04-30" ;
+ rdf:value "NEW" ] ;
+ skos:definition "For a medium component marked \"solo\" in a score or is clearly a solo part in the context of the work, such as the oboe part in a concerto for oboe and orchestra."@en ;
+ skos:inScheme ;
+ skos:prefLabel "solo"@en .
+
diff --git a/Documentation/Version2.0.ipynb b/Documentation/Version2.0.ipynb
new file mode 100644
index 0000000..a497c0a
--- /dev/null
+++ b/Documentation/Version2.0.ipynb
@@ -0,0 +1,1514 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "5256c8e4-2f86-42ef-812e-2632e0101959",
+ "metadata": {},
+ "source": [
+ "# Generation of PMO Version 2.0\n",
+ "## 6 May 2024"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 98,
+ "id": "a929f843-280d-4761-a5aa-dc976d382847",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import datetime\n",
+ "import pathlib\n",
+ "import urllib.parse\n",
+ "import xml.etree.ElementTree as etree\n",
+ "\n",
+ "import rdflib\n",
+ "\n",
+ "from jinja2 import Template\n",
+ "\n",
+ "DC = rdflib.Namespace(\"http://purl.org/dc/terms/\")\n",
+ "OWL = rdflib.Namespace(\"http://www.w3.org/2002/07/owl#\")\n",
+ "RDACT = rdflib.Namespace(\"http://rdaregistry.info/termList/RDACarrierType/\")\n",
+ "SKOS = rdflib.Namespace(\"http://www.w3.org/2004/02/skos/core#\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "d7cc7472-c7cd-407f-a4e1-934e95973b24",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "rdf_template = \"\"\"\n",
+ "\n",
+ " \"\"\"\n",
+ "\n",
+ "ontology_html_template =\"\"\"\n",
+ "\n",
+ "\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "\n",
+ "\n",
+ " {label} \n",
+ " \n",
+ " Documentation at {label} .\n",
+ "
\n",
+ " \n",
+ " {entities_list}\n",
+ " \n",
+ "\n",
+ "\"\"\"\n",
+ "\n",
+ "html_template = \"\"\"\n",
+ "\n",
+ "\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "\n",
+ "\n",
+ " {label} \n",
+ " \n",
+ " Documentation at {label} .\n",
+ " Other versions:\n",
+ "
\n",
+ " \n",
+ "\n",
+ "\"\"\""
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 145,
+ "id": "8bc03402-3472-40fb-b375-2ac78077d123",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "main_html_template = Template(\"\"\"\n",
+ "\n",
+ "\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "\n",
+ "\n",
+ "\n",
+ "{{ vocab.title }} \n",
+ "\n",
+ "\n",
+ "\n",
+ "
{{ vocab.title }} \n",
+ "
{{ vocab.url }}
\n",
+ "\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
Classes \n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "{% for class_ in classes %}\n",
+ "\n",
+ "
\n",
+ "
\n",
+ " {{ class_.prefLabel }}c \n",
+ " back to ToC or Class ToC \n",
+ " \n",
+ "
IRI: {{ class_.url }}
\n",
+ " {% if class_.altLabel %}\n",
+ "
Use for: {{ class_.altLabel }}
\n",
+ " {% endif %}\n",
+ "
Scope note: {{ class_.definition }}
\n",
+ "
Current version: {{ class_.changeNote }}
\n",
+ "
\n",
+ "\n",
+ "{% endfor %}\n",
+ "\n",
+ "
Namespace Declarations back to ToC \n",
+ "
\n",
+ " dcterms \n",
+ " http://purl.org/dc/terms/ \n",
+ " rdf \n",
+ " http://www.w3.org/1999/02/22-rdf-syntax-ns# \n",
+ " rdfs \n",
+ " http://www.w3.org/2000/01/rdf-schema# \n",
+ " skos \n",
+ " http://www.w3.org/2004/02/skos/core# \n",
+ " \n",
+ "
\n",
+ "\n",
+ "\n",
+ "\"\"\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "id": "0c3fad7d-976c-4e35-a6e9-2f262ccd4a91",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "version_2_0 = pathlib.Path(\"/Users/jpnelson/30-39 LD4P, PCC, and Sinopia/35.01 LD4P Performed Music Ontology/2.0\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "id": "c58e3334-288d-418f-a2aa-b151b3b8edc0",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "\u001b[0;31mSignature:\u001b[0m \u001b[0mversion_2_0\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mparent\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmkdir\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmode\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m511\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mparents\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mexist_ok\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
+ "\u001b[0;31mDocstring:\u001b[0m Create a new directory at this given path.\n",
+ "\u001b[0;31mFile:\u001b[0m /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pathlib.py\n",
+ "\u001b[0;31mType:\u001b[0m method"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "version_2_0.parent.mkdir?"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 156,
+ "id": "a8671a27-fbe1-4f5d-9eec-0c60a006a77a",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def init_ontology(**kwargs):\n",
+ " rdf_path = pathlib.Path(kwargs.get(\"rdf_path\"))\n",
+ " html_doc_file = kwargs.get(\"html_doc_file\")\n",
+ " start = datetime.datetime.now(datetime.UTC)\n",
+ " print(\"{} Staring ontology initialization\".format(start.isoformat()))\n",
+ " if not rdf_path.exists():\n",
+ " raise ValueError(f\"{rdf_path} rdf_path doesn't exist\")\n",
+ " ontology_graph = rdflib.Graph()\n",
+ " ontology_graph.parse(rdf_path, format='turtle')\n",
+ " ontology_entity = ontology_graph.value(predicate=rdflib.RDF.type, object=SKOS.ConceptScheme)\n",
+ " ontology_label = ontology_graph.value(subject=ontology_entity, predicate=rdflib.RDFS.label)\n",
+ " entities = list(ontology_graph.subjects(predicate=rdflib.RDF.type, object=SKOS.Concept))\n",
+ " ontology_uri = urllib.parse.urlparse(str(ontology_entity))\n",
+ " ontology_path = pathlib.Path(f\"../{ontology_uri.path}\")\n",
+ " print(ontology_path.absolute(), ontology_path.exists())\n",
+ " if not ontology_path.exists():\n",
+ " ontology_path.mkdir(parents=True, exist_ok=True)\n",
+ " generate_vocab_home(\n",
+ " ontology_entity,\n",
+ " ontology_graph,\n",
+ " ontology_path,\n",
+ " html_doc_file,\n",
+ " entities)\n",
+ " entity_list_html = ''\n",
+ " for i,row in enumerate(entities):\n",
+ " if i > 0 and not i%10:\n",
+ " print(f\"{i:2}\", end=\"\")\n",
+ " else:\n",
+ " print(\".\", end=\"\")\n",
+ " entity_list_html += \"{}\\n\".format(\n",
+ " init_entity(entity=row,\n",
+ " ontology_name=ontology_label,\n",
+ " ontology_path=ontology_path,\n",
+ " ontology_graph=ontology_graph,\n",
+ " html_doc_file=html_doc_file)\n",
+ " )\n",
+ " raw_html = ontology_html_template.format(**{\n",
+ " \"label\": ontology_label,\n",
+ " \"html_doc\": html_doc_file,\n",
+ " \"entities_list\": entity_list_html})\n",
+ " with (ontology_path / \"index.html\").open(\"w+\") as fo:\n",
+ " fo.write(raw_html)\n",
+ " end = datetime.datetime.now(datetime.UTC)\n",
+ " print(f\"\\n{end.isoformat()} - Finished {ontology_label}, total time {(end-start).seconds / 60.0:,} minutes\")\n",
+ "\n",
+ "def generate_vocab_home(ontology_entity, graph, ontology_path, html_file_name, entities):\n",
+ " vocab = {\n",
+ " \"title\": graph.value(subject=ontology_entity, predicate=DC.title),\n",
+ " \"url\": str(ontology_entity),\n",
+ " \"definition\": graph.value(subject=ontology_entity, predicate=SKOS.definition)\n",
+ " }\n",
+ " classes = []\n",
+ " for entity in entities:\n",
+ " class_ = {\n",
+ " \"id\": str(entity).split(\"/\")[-1],\n",
+ " \"definition\": graph.value(subject=entity, predicate=SKOS.definition),\n",
+ " \"prefLabel\": graph.value(subject=entity, predicate=SKOS.prefLabel),\n",
+ " \"changeNote\": _change_note(entity, graph),\n",
+ " \"url\": str(class_uri)\n",
+ " \n",
+ " }\n",
+ " alt_label = graph.value(subject=entity, predicate=SKOS.altLabel)\n",
+ " if alt_label:\n",
+ " class_[\"altLabel\"] = alt_label\n",
+ " classes.append(class_)\n",
+ " with (ontology_path.parent / html_file_name).open(\"w+\") as fo:\n",
+ " fo.write(main_html_template.render(vocab=vocab, classes=classes))\n",
+ " \n",
+ "def _change_note(uri, graph):\n",
+ " change_note_bnode = graph.value(subject=uri, predicate=SKOS.changeNote)\n",
+ " note_val = graph.value(subject=change_note_bnode, predicate=rdflib.RDF.value)\n",
+ " date = graph.value(subject=change_note_bnode, predicate=DC.date)\n",
+ " return f\"{note_val} {date}\"\n",
+ "\n",
+ "def init_entity(**kwargs):\n",
+ " entity = kwargs.get('entity')\n",
+ " ontology_name = kwargs.get(\"ontology_name\")\n",
+ " ontology_path = kwargs.get(\"ontology_path\")\n",
+ " ontology_graph = kwargs.get(\"ontology_graph\")\n",
+ " html_doc_file = kwargs.get(\"html_doc_file\")\n",
+ "\n",
+ " name = str(entity).split(\"/\")[-1]\n",
+ "\n",
+ " # Make sub-directory if it doesn't exist\n",
+ " entity_path = ontology_path / name\n",
+ " if not entity_path.exists():\n",
+ " entity_path.mkdir(parents=True, exist_ok=True)\n",
+ " # Create an HTML file that redirects to Entity\n",
+ " html_path = entity_path / \"index.html\"\n",
+ " label = ontology_graph.value(subject=entity, predicate=SKOS.prefLabel)\n",
+ " if not html_path.exists():\n",
+ " with html_path.open(\"w+\") as fo:\n",
+ " fo.write(html_template.format(**{ \"html_doc\": html_doc_file,\n",
+ " \"label\": label, \n",
+ " \"name\": name }))\n",
+ "\n",
+ " graph = rdflib.ConjunctiveGraph()\n",
+ " graph.namespace_manager.bind(\"dc\", DC)\n",
+ " graph.namespace_manager.bind(\"rdact\", RDACT)\n",
+ " graph.namespace_manager.bind(\"skos\", SKOS)\n",
+ " for pred, obj in ontology_graph.predicate_objects(entity):\n",
+ " graph.add((entity, pred, obj))\n",
+ " if isinstance(obj, rdflib.BNode):\n",
+ " for bnode_pred, bnode_obj in ontology_graph.predicate_objects(obj):\n",
+ " graph.add((obj, bnode_pred, bnode_obj))\n",
+ " # Writes an RDF XML file if it doesn't exist\n",
+ " rdf_xml_path = entity_path / f\"{name}.rdf\"\n",
+ " save_rdf(graph, rdf_xml_path, \"xml\")\n",
+ " # Writes a RDF Turtle file\n",
+ " rdf_ttl_path = entity_path / f\"{name}.ttl\"\n",
+ " save_rdf(graph, rdf_ttl_path, \"ttl\") \n",
+ " print(\"\\t{time} Finished initializing {label}\".format(\n",
+ " **{ \"time\": datetime.datetime.now(datetime.UTC).isoformat(),\n",
+ " \"label\": label }))\n",
+ " \n",
+ " return f\"\"\"{label} \"\"\"\n",
+ " \n",
+ "def save_rdf(graph, path, serialize_as):\n",
+ " if not path.exists():\n",
+ " print(\"\\t\\t{} Saving {}, {} triples as {}\".format(datetime.datetime.now(datetime.UTC).isoformat(),\n",
+ " path,\n",
+ " len(graph),\n",
+ " serialize_as))\n",
+ " #path.mkdir(parents=True, exist_ok=True)\n",
+ " with path.open(\"w+\") as fo:\n",
+ " fo.write(graph.serialize(format=serialize_as))\n",
+ " print(\".\", end=\"\")\n",
+ "\n",
+ "def generate_resource(subject: rdflib.URIRef):\n",
+ " name = str(subject).split(\"/\")[-1]\n",
+ " resource_graph = rdflib.ConjunctiveGraph()\n",
+ " resource_graph.namespace_manager.bind(\"dc\", DC)\n",
+ " resource_graph.namespace_manager.bind(\"rdact\", RDACT)\n",
+ " resource_graph.namespace_manager.bind(\"skos\", SKOS)\n",
+ " resource_path = ontology_path / name\n",
+ " resource_path.mkdir(exist_ok=True)\n",
+ " # label = pmo_2_0.value(subject=subject, predicate=rdflib.RDFS.label)\n",
+ " # if label is None:\n",
+ " # label = name\n",
+ " # definition = pmo_2_0.value(subject=subject, predicate=SKOS.definition)\n",
+ " # raw_html = html_template.format(name=name, label=label, definition=definition)\n",
+ " # index_path = resource_path/\"index.html\"\n",
+ " # index_path.write_text(raw_html)\n",
+ " # Populate resource graph\n",
+ " # for pred, obj in pmo_2_0.predicate_objects(subject=subject):\n",
+ " # resource_graph.add((subject, pred, obj))\n",
+ " # Write RDF XML and Turtle serialization\n",
+ " # rdf_path = resource_path/f\"{name}.rdf\"\n",
+ " # rdf_path.write_text(resource_graph.serialize(format='xml'))\n",
+ " # ttl_path = resource_path/f\"{name}.ttl\"\n",
+ " # ttl_path.write_text(resource_graph.serialize(format='turtle'))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 81,
+ "id": "5ce8fc2b-a9e4-4664-99c0-cb47f2252b75",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "PosixPath('/Users/jpnelson/30-39 LD4P, PCC, and Sinopia/35.01 LD4P Performed Music Ontology/2.0')"
+ ]
+ },
+ "execution_count": 81,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "version_2_0.absolute()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "c40b5016-b90e-46c5-b3ae-0a7eda9294c8",
+ "metadata": {},
+ "source": [
+ "## Ensemble Size"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 146,
+ "id": "f05a38c8-b138-40c9-a6ec-77a5c808e906",
+ "metadata": {
+ "collapsed": true,
+ "jupyter": {
+ "outputs_hidden": true
+ },
+ "scrolled": true
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "2024-05-07T18:11:07.091742+00:00 Staring ontology initialization\n",
+ "/Users/jpnelson/30-39 LD4P, PCC, and Sinopia/35.01 LD4P Performed Music Ontology/Documentation/../2.0/vocabularies/ensemble_size False\n",
+ ".\t\t2024-05-07T18:11:07.103859+00:00 Saving ../2.0/vocabularies/ensemble_size/solo_or_individual/solo_or_individual.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:07.104528+00:00 Saving ../2.0/vocabularies/ensemble_size/solo_or_individual/solo_or_individual.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:07.105316+00:00 Finished initializing solo or individual\n",
+ ".\t\t2024-05-07T18:11:07.106405+00:00 Saving ../2.0/vocabularies/ensemble_size/duo/duo.rdf, 9 triples as xml\n",
+ ".\t\t2024-05-07T18:11:07.107138+00:00 Saving ../2.0/vocabularies/ensemble_size/duo/duo.ttl, 9 triples as ttl\n",
+ ".\t2024-05-07T18:11:07.108146+00:00 Finished initializing duo\n",
+ ".\t\t2024-05-07T18:11:07.109129+00:00 Saving ../2.0/vocabularies/ensemble_size/trio/trio.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:07.109714+00:00 Saving ../2.0/vocabularies/ensemble_size/trio/trio.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:07.110426+00:00 Finished initializing trio\n",
+ ".\t\t2024-05-07T18:11:07.111417+00:00 Saving ../2.0/vocabularies/ensemble_size/quartet/quartet.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:07.111974+00:00 Saving ../2.0/vocabularies/ensemble_size/quartet/quartet.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:07.112617+00:00 Finished initializing quartet\n",
+ ".\t\t2024-05-07T18:11:07.113665+00:00 Saving ../2.0/vocabularies/ensemble_size/quintet/quintet.rdf, 9 triples as xml\n",
+ ".\t\t2024-05-07T18:11:07.114213+00:00 Saving ../2.0/vocabularies/ensemble_size/quintet/quintet.ttl, 9 triples as ttl\n",
+ ".\t2024-05-07T18:11:07.114890+00:00 Finished initializing quintet\n",
+ ".\t\t2024-05-07T18:11:07.116017+00:00 Saving ../2.0/vocabularies/ensemble_size/sextet/sextet.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:07.116806+00:00 Saving ../2.0/vocabularies/ensemble_size/sextet/sextet.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:07.117479+00:00 Finished initializing sextet\n",
+ ".\t\t2024-05-07T18:11:07.118490+00:00 Saving ../2.0/vocabularies/ensemble_size/septet/septet.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:07.119054+00:00 Saving ../2.0/vocabularies/ensemble_size/septet/septet.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:07.119704+00:00 Finished initializing septet\n",
+ ".\t\t2024-05-07T18:11:07.120741+00:00 Saving ../2.0/vocabularies/ensemble_size/octet/octet.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:07.121293+00:00 Saving ../2.0/vocabularies/ensemble_size/octet/octet.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:07.121938+00:00 Finished initializing octet\n",
+ ".\t\t2024-05-07T18:11:07.123350+00:00 Saving ../2.0/vocabularies/ensemble_size/nonet/nonet.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:07.124024+00:00 Saving ../2.0/vocabularies/ensemble_size/nonet/nonet.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:07.124807+00:00 Finished initializing nonet\n",
+ ".\t\t2024-05-07T18:11:07.125841+00:00 Saving ../2.0/vocabularies/ensemble_size/small_ensemble/small_ensemble.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:07.126759+00:00 Saving ../2.0/vocabularies/ensemble_size/small_ensemble/small_ensemble.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:07.127670+00:00 Finished initializing small ensemble\n",
+ "10\t\t2024-05-07T18:11:07.128751+00:00 Saving ../2.0/vocabularies/ensemble_size/large_ensemble/large_ensemble.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:07.129428+00:00 Saving ../2.0/vocabularies/ensemble_size/large_ensemble/large_ensemble.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:07.130240+00:00 Finished initializing large ensemble\n",
+ "\n",
+ "2024-05-07T18:11:07.130515+00:00 - Finished PMO Ensemble Size Vocabulary, total time 0.0 minutes\n"
+ ]
+ }
+ ],
+ "source": [
+ "init_ontology(rdf_path = (version_2_0 / \"Ontology/Vocabularies/EnsembleSize/Ensemble_size.ttl\"),\n",
+ " html_doc_file=\"PMOEnsembleSize.html\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "d6706c96-5483-480c-ae03-3bdea3e40eb4",
+ "metadata": {},
+ "source": [
+ "## EventType"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 147,
+ "id": "1202a82f-d65c-4483-bfa1-e7de23ff7b54",
+ "metadata": {
+ "collapsed": true,
+ "jupyter": {
+ "outputs_hidden": true
+ }
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "2024-05-07T18:11:09.397671+00:00 Staring ontology initialization\n",
+ "/Users/jpnelson/30-39 LD4P, PCC, and Sinopia/35.01 LD4P Performed Music Ontology/Documentation/../2.0/vocabularies/event_type False\n",
+ ".\t\t2024-05-07T18:11:09.407961+00:00 Saving ../2.0/vocabularies/event_type/audition/audition.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:09.408539+00:00 Saving ../2.0/vocabularies/event_type/audition/audition.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:09.409272+00:00 Finished initializing Audition\n",
+ ".\t\t2024-05-07T18:11:09.410206+00:00 Saving ../2.0/vocabularies/event_type/benefit_concert/benefit_concert.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:09.410747+00:00 Saving ../2.0/vocabularies/event_type/benefit_concert/benefit_concert.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:09.411406+00:00 Finished initializing Benefit concert\n",
+ ".\t\t2024-05-07T18:11:09.412461+00:00 Saving ../2.0/vocabularies/event_type/ceremony/ceremony.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:09.412994+00:00 Saving ../2.0/vocabularies/event_type/ceremony/ceremony.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:09.413633+00:00 Finished initializing Ceremony\n",
+ ".\t\t2024-05-07T18:11:09.414519+00:00 Saving ../2.0/vocabularies/event_type/commmand_performance/commmand_performance.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:09.415056+00:00 Saving ../2.0/vocabularies/event_type/commmand_performance/commmand_performance.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:09.415720+00:00 Finished initializing Command performance\n",
+ ".\t\t2024-05-07T18:11:09.416660+00:00 Saving ../2.0/vocabularies/event_type/concert/concert.rdf, 9 triples as xml\n",
+ ".\t\t2024-05-07T18:11:09.417528+00:00 Saving ../2.0/vocabularies/event_type/concert/concert.ttl, 9 triples as ttl\n",
+ ".\t2024-05-07T18:11:09.418411+00:00 Finished initializing Concert\n",
+ ".\t\t2024-05-07T18:11:09.419339+00:00 Saving ../2.0/vocabularies/event_type/concert_series/concert_series.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:09.419883+00:00 Saving ../2.0/vocabularies/event_type/concert_series/concert_series.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:09.420542+00:00 Finished initializing Concert series\n",
+ ".\t\t2024-05-07T18:11:09.421445+00:00 Saving ../2.0/vocabularies/event_type/concert_tour/concert_tour.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:09.421978+00:00 Saving ../2.0/vocabularies/event_type/concert_tour/concert_tour.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:09.423211+00:00 Finished initializing Series of concerts by a performer or group of performers in different cities, countries, or locations.\n",
+ ".\t\t2024-05-07T18:11:09.424195+00:00 Saving ../2.0/vocabularies/event_type/first_performance/first_performance.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:09.424926+00:00 Saving ../2.0/vocabularies/event_type/first_performance/first_performance.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:09.425942+00:00 Finished initializing First performance\n",
+ ".\t\t2024-05-07T18:11:09.427293+00:00 Saving ../2.0/vocabularies/event_type/master_class/master_class.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:09.427938+00:00 Saving ../2.0/vocabularies/event_type/master_class/master_class.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:09.428746+00:00 Finished initializing Master class\n",
+ ".\t\t2024-05-07T18:11:09.430015+00:00 Saving ../2.0/vocabularies/event_type/open_mic_performance/open_mic_performance.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:09.430606+00:00 Saving ../2.0/vocabularies/event_type/open_mic_performance/open_mic_performance.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:09.431253+00:00 Finished initializing Open mic performance\n",
+ "10\t\t2024-05-07T18:11:09.432294+00:00 Saving ../2.0/vocabularies/event_type/performance/performance.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:09.432839+00:00 Saving ../2.0/vocabularies/event_type/performance/performance.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:09.433476+00:00 Finished initializing Performance\n",
+ ".\t\t2024-05-07T18:11:09.434336+00:00 Saving ../2.0/vocabularies/event_type/recording_session/recording_session.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:09.434861+00:00 Saving ../2.0/vocabularies/event_type/recording_session/recording_session.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:09.435590+00:00 Finished initializing Recording session\n",
+ ".\t\t2024-05-07T18:11:09.436472+00:00 Saving ../2.0/vocabularies/event_type/rehearsal/rehearsal.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:11:09.436993+00:00 Saving ../2.0/vocabularies/event_type/rehearsal/rehearsal.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:11:09.437850+00:00 Finished initializing Rehearsal\n",
+ "\n",
+ "2024-05-07T18:11:09.438875+00:00 - Finished PMO Event Type Vocabulary, total time 0.0 minutes\n"
+ ]
+ }
+ ],
+ "source": [
+ "init_ontology(rdf_path = (version_2_0 / \"Ontology/Vocabularies/EventType/Event_type.ttl\"),\n",
+ " html_doc_file=\"PMOEventType.html\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "681a67f1-ccaf-4864-ade6-b771a4c16a4d",
+ "metadata": {},
+ "source": [
+ "## Medium Component Qualifier"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 149,
+ "id": "ab79dc82-3c71-49a6-9448-89cf8bc572dd",
+ "metadata": {
+ "collapsed": true,
+ "jupyter": {
+ "outputs_hidden": true,
+ "source_hidden": true
+ }
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "2024-05-07T18:20:49.685041+00:00 Staring ontology initialization\n",
+ "/Users/jpnelson/30-39 LD4P, PCC, and Sinopia/35.01 LD4P Performed Music Ontology/Documentation/../vocabularies/medium_component_qualifier False\n",
+ ".\t\t2024-05-07T18:20:49.693062+00:00 Saving ../vocabularies/medium_component_qualifier/ad_lib/ad_lib.rdf, 9 triples as xml\n",
+ ".\t\t2024-05-07T18:20:49.693650+00:00 Saving ../vocabularies/medium_component_qualifier/ad_lib/ad_lib.ttl, 9 triples as ttl\n",
+ ".\t2024-05-07T18:20:49.694340+00:00 Finished initializing ad lib\n",
+ ".\t\t2024-05-07T18:20:49.695525+00:00 Saving ../vocabularies/medium_component_qualifier/amplified/amplified.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:20:49.696063+00:00 Saving ../vocabularies/medium_component_qualifier/amplified/amplified.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:20:49.696700+00:00 Finished initializing amplified\n",
+ ".\t\t2024-05-07T18:20:49.697568+00:00 Saving ../vocabularies/medium_component_qualifier/obbligato/obbligato.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:20:49.698159+00:00 Saving ../vocabularies/medium_component_qualifier/obbligato/obbligato.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:20:49.698796+00:00 Finished initializing obbligato\n",
+ ".\t\t2024-05-07T18:20:49.699673+00:00 Saving ../vocabularies/medium_component_qualifier/offstage/offstage.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:20:49.700190+00:00 Saving ../vocabularies/medium_component_qualifier/offstage/offstage.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:20:49.700812+00:00 Finished initializing offstage\n",
+ ".\t\t2024-05-07T18:20:49.701686+00:00 Saving ../vocabularies/medium_component_qualifier/optional/optional.rdf, 9 triples as xml\n",
+ ".\t\t2024-05-07T18:20:49.702227+00:00 Saving ../vocabularies/medium_component_qualifier/optional/optional.ttl, 9 triples as ttl\n",
+ ".\t2024-05-07T18:20:49.702898+00:00 Finished initializing optional\n",
+ ".\t\t2024-05-07T18:20:49.703932+00:00 Saving ../vocabularies/medium_component_qualifier/solo/solo.rdf, 8 triples as xml\n",
+ ".\t\t2024-05-07T18:20:49.704492+00:00 Saving ../vocabularies/medium_component_qualifier/solo/solo.ttl, 8 triples as ttl\n",
+ ".\t2024-05-07T18:20:49.705191+00:00 Finished initializing solo\n",
+ "\n",
+ "2024-05-07T18:20:49.705461+00:00 - Finished PMO Medium Component Qualifier Vocabulary, total time 0.0 minutes\n"
+ ]
+ }
+ ],
+ "source": [
+ "init_ontology(rdf_path = (version_2_0 / \"Ontology/Vocabularies/MediumComponentQualifier/Medium_component_qualifier.ttl\"),\n",
+ " html_doc_file=\"PMOMediumComponentQualifier.html\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 36,
+ "id": "339588fb-9a3f-40ab-83e3-127a4818a7d1",
+ "metadata": {
+ "jupyter": {
+ "source_hidden": true
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ")>"
+ ]
+ },
+ "execution_count": 36,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pmo_1_0 = rdflib.ConjunctiveGraph()\n",
+ "pmo_1_0.parse(\"/Users/jpnelson/30-39 LD4P, PCC, and Sinopia/35.01 LD4P Performed Music Ontology/ontologies/PerformedMusicOntology.rdf\")\n",
+ "pmo_2_0 = rdflib.ConjunctiveGraph()\n",
+ "pmo_2_0.parse(\"/Users/jpnelson/30-39 LD4P, PCC, and Sinopia/35.01 LD4P Performed Music Ontology/2.0/Ontology/PMO.rdf\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 46,
+ "id": "4d725c4b-f78f-4f17-8e26-a61e44485f2d",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Version 2.O: http://www.w3.org/1999/02/22-rdf-syntax-ns#type,http://www.w3.org/2002/07/owl#Class\n",
+ "Version 2.O: http://www.w3.org/2000/01/rdf-schema#label,Dramatic role\n",
+ "Version 2.O: http://www.w3.org/2004/02/skos/core#definition,A dramatic role performed by a contributing agent.\n",
+ "Version 2.O: http://www.w3.org/2004/02/skos/core#example,Role of \"Carmen\" in the opera Carmen.\n"
+ ]
+ }
+ ],
+ "source": [
+ "for pred, obj in pmo_2_0.predicate_objects(subject=dramatic_role):\n",
+ " print(f\"Version 2.O: {pred},{obj}\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 157,
+ "id": "e6086b5d-12f8-4d50-95e4-1701de2971c3",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Adding http://www.w3.org/2002/07/owl#Class\n"
+ ]
+ },
+ {
+ "ename": "NameError",
+ "evalue": "name 'ontology_path' is not defined",
+ "output_type": "error",
+ "traceback": [
+ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+ "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
+ "Cell \u001b[0;32mIn[157], line 4\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[38;5;28mprint\u001b[39m(\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mAdding \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mrdf_type\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 3\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m s \u001b[38;5;129;01min\u001b[39;00m pmo_2_0\u001b[38;5;241m.\u001b[39msubjects(predicate\u001b[38;5;241m=\u001b[39mrdflib\u001b[38;5;241m.\u001b[39mRDF\u001b[38;5;241m.\u001b[39mtype, \u001b[38;5;28mobject\u001b[39m\u001b[38;5;241m=\u001b[39mrdf_type):\n\u001b[0;32m----> 4\u001b[0m \u001b[43mgenerate_resource\u001b[49m\u001b[43m(\u001b[49m\u001b[43ms\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 5\u001b[0m \u001b[38;5;28mprint\u001b[39m(\u001b[38;5;28mstr\u001b[39m(s)\u001b[38;5;241m.\u001b[39msplit(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m/\u001b[39m\u001b[38;5;124m\"\u001b[39m)[\u001b[38;5;241m-\u001b[39m\u001b[38;5;241m1\u001b[39m])\n",
+ "Cell \u001b[0;32mIn[156], line 135\u001b[0m, in \u001b[0;36mgenerate_resource\u001b[0;34m(subject)\u001b[0m\n\u001b[1;32m 133\u001b[0m resource_graph\u001b[38;5;241m.\u001b[39mnamespace_manager\u001b[38;5;241m.\u001b[39mbind(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mrdact\u001b[39m\u001b[38;5;124m\"\u001b[39m, RDACT)\n\u001b[1;32m 134\u001b[0m resource_graph\u001b[38;5;241m.\u001b[39mnamespace_manager\u001b[38;5;241m.\u001b[39mbind(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mskos\u001b[39m\u001b[38;5;124m\"\u001b[39m, SKOS)\n\u001b[0;32m--> 135\u001b[0m resource_path \u001b[38;5;241m=\u001b[39m \u001b[43montology_path\u001b[49m \u001b[38;5;241m/\u001b[39m name\n\u001b[1;32m 136\u001b[0m resource_path\u001b[38;5;241m.\u001b[39mmkdir(exist_ok\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mTrue\u001b[39;00m)\n",
+ "\u001b[0;31mNameError\u001b[0m: name 'ontology_path' is not defined"
+ ]
+ }
+ ],
+ "source": [
+ "for rdf_type in [OWL.Class, OWL.ObjectProperty, OWL.DatatypeProperty]:\n",
+ " print(f\"Adding {rdf_type}\")\n",
+ " for s in pmo_2_0.subjects(predicate=rdflib.RDF.type, object=rdf_type):\n",
+ " generate_resource(s)\n",
+ " print(str(s).split(\"/\")[-1])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 101,
+ "id": "0615302b-ddc9-4628-906c-09992e8d73b3",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ")>"
+ ]
+ },
+ "execution_count": 101,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "ontology_graph = rdflib.Graph()\n",
+ "ontology_graph.parse((version_2_0 / \"Ontology/Vocabularies/EventType/Event_type.ttl\"), format='turtle')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 102,
+ "id": "0411733d-2816-4c05-a2b7-44c692886816",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "event_type_uri = rdflib.URIRef(\"http://performedmusicontology.org/2.0/vocabularies/event_type/\")\n",
+ "vocab = {\n",
+ " \"title\": ontology_graph.value(subject=event_type_uri, predicate=DC.title),\n",
+ " \"url\": str(event_type_uri),\n",
+ " \"definition\": ontology_graph.value(subject=event_type_uri, predicate=SKOS.definition)\n",
+ "}"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 116,
+ "id": "2e304f3a-7429-4156-bbfb-73fde886fd5c",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def _change_note(uri, graph):\n",
+ " change_note_bnode = graph.value(subject=uri, predicate=SKOS.changeNote)\n",
+ " note_val = graph.value(subject=change_note_bnode, predicate=rdflib.RDF.value)\n",
+ " date = graph.value(subject=change_note_bnode, predicate=DC.date)\n",
+ " return f\"{note_val} {date}\""
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 118,
+ "id": "38698e07-a2e9-4e71-80bc-9b6b61d7aeeb",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "classes = []\n",
+ "for class_uri in ontology_graph.subjects(predicate=rdflib.RDF.type, object=SKOS.Concept):\n",
+ " class_ = {\n",
+ " \"id\": str(class_uri).split(\"/\")[-1],\n",
+ " \"definition\": ontology_graph.value(subject=class_uri, predicate=SKOS.definition),\n",
+ " \"prefLabel\": ontology_graph.value(subject=class_uri, predicate=SKOS.prefLabel),\n",
+ " \"changeNote\": _change_note(class_uri, ontology_graph),\n",
+ " \"url\": str(class_uri)\n",
+ " \n",
+ " }\n",
+ " classes.append(class_)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 119,
+ "id": "eba7bed0-2704-4ed3-ac9a-39fb87bdc2b4",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "html = main_html_template.render(vocab=vocab, classes=classes)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 150,
+ "id": "4593bef3-5a32-4fa2-bb7c-3ab7eae0a50d",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "PosixPath('/Users/jpnelson/30-39 LD4P, PCC, and Sinopia/35.01 LD4P Performed Music Ontology/2.0/Ontology/Vocabularies/EnsembleSize/Ensemble_size.ttl')"
+ ]
+ },
+ "execution_count": 150,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "def convert_ttl_rdf_xml(rdf_filepath, output_path):\n",
+ " graph = rdflib.Graph()\n",
+ " graph.parse(rdf_filepath, format='turtle')\n",
+ " with output_path.open(\"w+\") as fo:\n",
+ " fo.write(graph.serialize(format='xml'))\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 151,
+ "id": "015e7ee8-5888-4693-9dfd-08c46653779a",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "convert_ttl_rdf_xml(\n",
+ " (version_2_0 / \"Ontology/Vocabularies/EnsembleSize/Ensemble_size.ttl\"),\n",
+ " (version_2_0 / \"vocabularies/ensemble_size/PMOEnsembleSize.rdf\"))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 152,
+ "id": "8ffe5004-0699-4ed3-9bb4-e28fb6146eac",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "convert_ttl_rdf_xml(\n",
+ " (version_2_0 / \"Ontology/Vocabularies/EventType/Event_type.ttl\"),\n",
+ " (version_2_0 / \"vocabularies/event_type/PMOEventType.rdf\"))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 153,
+ "id": "7bdb2184-f4d8-4400-949d-229e07914522",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "convert_ttl_rdf_xml(\n",
+ " (version_2_0 / \"Ontology/Vocabularies/MediumComponentQualifier/Medium_component_qualifier.ttl\"),\n",
+ " (version_2_0 / \"vocabularies/medium_component_qualifier/PMOMediumComponentQualifier.rdf\"))"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "055e9607-0f14-469f-995f-8c50e977aa84",
+ "metadata": {},
+ "source": [
+ "## PMO Version 2.0 Page"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "2d9967af-2faf-4b5f-b513-2b788b7c36c9",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "template = Template(\"\"\"\n",
+ "\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
Performed Music Ontology 2.0 \n",
+ "
\n",
+ " IRI: \n",
+ " http://performedmusicontology.org/2.0/ontology/ \n",
+ " Version IRI: \n",
+ " http://performedmusicontology.org/2.0/ontology/ \n",
+ " \n",
+ "
\n",
+ " Other visualisation: \n",
+ " Ontology source \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
Classes \n",
+ "
\n",
+ " {% for class_ in classes %}\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ " {{ class_.prefLabel }}c \n",
+ " back to ToC or Class ToC \n",
+ " \n",
+ "
IRI: {{ class_.url }}
\n",
+ " {% if class_.altLabel %}\n",
+ "
Use for: {{ class_.altLabel }}
\n",
+ " {% endif %}\n",
+ "
Scope note: {{ class_.definition }}
\n",
+ "
Current version: {{ class_.changeNote }}
\n",
+ "
\n",
+ " {% endfor %}\n",
+ "
\n",
+ " \n",
+ "\"\"\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 164,
+ "id": "ae118d08-075c-4c39-9dbe-8e008c1fc63f",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "http://performedmusicontology.org/ontology/phonogramCopyrightDate\n",
+ "http://performedmusicontology.org/ontology/hasMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/Tempo\n",
+ "http://performedmusicontology.org/ontology/hasInspiration\n",
+ "http://performedmusicontology.org/ontology/hasPerformance\n",
+ "http://performedmusicontology.org/ontology/hasMediumCount\n",
+ "http://performedmusicontology.org/ontology/OpusNumber\n",
+ "http://performedmusicontology.org/ontology/hasMode\n",
+ "http://performedmusicontology.org/ontology/DramaticRole\n",
+ "http://performedmusicontology.org/ontology/RismNumber\n",
+ "http://performedmusicontology.org/ontology/createdFor\n",
+ "http://performedmusicontology.org/ontology/createdFor\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogNumber\n",
+ "http://performedmusicontology.org/ontology/performanceOf\n",
+ "http://performedmusicontology.org/ontology/DramaticRole\n",
+ "http://performedmusicontology.org/ontology/hasMode\n",
+ "http://performedmusicontology.org/ontology/hasDramaticRole\n",
+ "http://performedmusicontology.org/ontology/hasMediumComponent\n",
+ "http://performedmusicontology.org/ontology/OpusNumber\n",
+ "http://performedmusicontology.org/ontology/usesMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/asMemberOf\n",
+ "http://performedmusicontology.org/ontology/usesMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/KeyMode\n",
+ "http://performedmusicontology.org/ontology/aggregates\n",
+ "http://performedmusicontology.org/ontology/aggregatedIn\n",
+ "http://performedmusicontology.org/ontology/DramaticRole\n",
+ "http://performedmusicontology.org/ontology/hasMediumCount\n",
+ "http://performedmusicontology.org/ontology/inspirationFor\n",
+ "http://performedmusicontology.org/ontology/hasKeyMode\n",
+ "http://performedmusicontology.org/ontology/VideogamePlatformIdentifier\n",
+ "http://performedmusicontology.org/ontology/hasEventName\n",
+ "http://performedmusicontology.org/ontology/inspirationFor\n",
+ "http://performedmusicontology.org/ontology/MusicBrainzId\n",
+ "http://performedmusicontology.org/ontology/hasMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/EventName\n",
+ "http://performedmusicontology.org/ontology/Tempo\n",
+ "http://performedmusicontology.org/ontology/remixOf\n",
+ "http://performedmusicontology.org/ontology/hasMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/aggregatedIn\n",
+ "http://performedmusicontology.org/ontology/hasMediumComponentQualifier\n",
+ "http://performedmusicontology.org/ontology/hasInspiration\n",
+ "http://performedmusicontology.org/ontology/performanceOf\n",
+ "http://performedmusicontology.org/ontology/Mode\n",
+ "http://performedmusicontology.org/ontology/OpusNumber\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogNumber\n",
+ "http://performedmusicontology.org/ontology/MusicBrainzId\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/MediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/EnsembleSize\n",
+ "http://performedmusicontology.org/ontology/hasEnsembleSize\n",
+ "http://performedmusicontology.org/ontology/associatedWith\n",
+ "http://performedmusicontology.org/ontology/Mode\n",
+ "http://performedmusicontology.org/ontology/MusicBrainzId\n",
+ "http://performedmusicontology.org/ontology/associatedWith\n",
+ "http://performedmusicontology.org/ontology/hasMediumCount\n",
+ "http://performedmusicontology.org/ontology/inspirationFor\n",
+ "http://performedmusicontology.org/ontology/aggregatedIn\n",
+ "http://performedmusicontology.org/ontology/hasDramaticRole\n",
+ "http://performedmusicontology.org/ontology/inspirationFor\n",
+ "http://performedmusicontology.org/ontology/MediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/hasInspiration\n",
+ "http://performedmusicontology.org/ontology/phonogramCopyrightDate\n",
+ "http://performedmusicontology.org/ontology/MediumComponentQualifier\n",
+ "http://performedmusicontology.org/ontology/createdFor\n",
+ "http://performedmusicontology.org/ontology/hasMediumCount\n",
+ "http://performedmusicontology.org/ontology/hasEventName\n",
+ "http://performedmusicontology.org/ontology/sampledBy\n",
+ "http://performedmusicontology.org/ontology/remixOf\n",
+ "http://performedmusicontology.org/ontology/associatedWith\n",
+ "http://performedmusicontology.org/ontology/hasKeyMode\n",
+ "http://performedmusicontology.org/ontology/hasMediumComponentQualifier\n",
+ "http://performedmusicontology.org/ontology/hasPerformance\n",
+ "http://performedmusicontology.org/ontology/associatedWith\n",
+ "http://performedmusicontology.org/ontology/samplesFrom\n",
+ "http://performedmusicontology.org/ontology/aggregates\n",
+ "http://performedmusicontology.org/ontology/asMemberOf\n",
+ "http://performedmusicontology.org/ontology/AllMusicId\n",
+ "http://performedmusicontology.org/ontology/MusicBrainzId\n",
+ "http://performedmusicontology.org/ontology/hasTempo\n",
+ "http://performedmusicontology.org/ontology/KeyMode\n",
+ "http://performedmusicontology.org/ontology/associatedWith\n",
+ "http://performedmusicontology.org/ontology/hasEnsembleSize\n",
+ "http://performedmusicontology.org/ontology/hasTempo\n",
+ "http://performedmusicontology.org/ontology/hasEnsembleSize\n",
+ "http://performedmusicontology.org/ontology/hasPerformance\n",
+ "http://performedmusicontology.org/ontology/hasEventName\n",
+ "http://performedmusicontology.org/ontology/performanceOf\n",
+ "http://performedmusicontology.org/ontology/hasInspiration\n",
+ "http://performedmusicontology.org/ontology/recordingOf\n",
+ "http://performedmusicontology.org/ontology/aggregatedIn\n",
+ "http://performedmusicontology.org/ontology/sampledBy\n",
+ "http://performedmusicontology.org/ontology/MediumComponent\n",
+ "http://performedmusicontology.org/ontology/Tempo\n",
+ "http://performedmusicontology.org/ontology/hasNumberOfHands\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogNumber\n",
+ "http://performedmusicontology.org/ontology/hasEnsembleSize\n",
+ "http://performedmusicontology.org/ontology/aggregates\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/samplesFrom\n",
+ "http://performedmusicontology.org/ontology/samplesFrom\n",
+ "http://performedmusicontology.org/ontology/hasMode\n",
+ "http://performedmusicontology.org/ontology/performanceOf\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogNumber\n",
+ "http://performedmusicontology.org/ontology/hasMediumComponent\n",
+ "http://performedmusicontology.org/ontology/remixOf\n",
+ "http://performedmusicontology.org/ontology/remixOf\n",
+ "http://performedmusicontology.org/ontology/remixedIn\n",
+ "http://performedmusicontology.org/ontology/MediumComponentQualifier\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/createdFor\n",
+ "http://performedmusicontology.org/ontology/hasNumberOfHands\n",
+ "http://performedmusicontology.org/ontology/hasMediumComponent\n",
+ "http://performedmusicontology.org/ontology/Mode\n",
+ "http://performedmusicontology.org/ontology/RismNumber\n",
+ "http://performedmusicontology.org/ontology/KeyMode\n",
+ "http://performedmusicontology.org/ontology/hasEnsembleSize\n",
+ "http://performedmusicontology.org/ontology/AllMusicId\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogNumber\n",
+ "http://performedmusicontology.org/ontology/asMemberOf\n",
+ "http://performedmusicontology.org/ontology/hasMediumComponentQualifier\n",
+ "http://performedmusicontology.org/ontology/aggregatedIn\n",
+ "http://performedmusicontology.org/ontology/hasTempo\n",
+ "http://performedmusicontology.org/ontology/hasInspiration\n",
+ "http://performedmusicontology.org/ontology/EnsembleSize\n",
+ "http://performedmusicontology.org/ontology/aggregates\n",
+ "http://performedmusicontology.org/ontology/hasNumberOfHands\n",
+ "http://performedmusicontology.org/ontology/recordingOf\n",
+ "http://performedmusicontology.org/ontology/recordingOf\n",
+ "http://performedmusicontology.org/ontology/MediumComponentQualifier\n",
+ "http://performedmusicontology.org/ontology/DiscogsId\n",
+ "http://performedmusicontology.org/ontology/MediumComponent\n",
+ "http://performedmusicontology.org/ontology/recordingOf\n",
+ "http://performedmusicontology.org/ontology/DiscogsId\n",
+ "http://performedmusicontology.org/ontology/VideogamePlatformIdentifier\n",
+ "http://performedmusicontology.org/ontology/aggregatedIn\n",
+ "http://performedmusicontology.org/ontology/hasEventName\n",
+ "http://performedmusicontology.org/ontology/hasMode\n",
+ "http://performedmusicontology.org/ontology/hasDramaticRole\n",
+ "http://performedmusicontology.org/ontology/asMemberOf\n",
+ "http://performedmusicontology.org/ontology/AllMusicId\n",
+ "http://performedmusicontology.org/ontology/\n",
+ "http://performedmusicontology.org/ontology/RismNumber\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/hasMediumCount\n",
+ "http://performedmusicontology.org/ontology/MediumComponentQualifier\n",
+ "http://performedmusicontology.org/ontology/VideogamePlatformIdentifier\n",
+ "http://performedmusicontology.org/ontology/DramaticRole\n",
+ "http://performedmusicontology.org/ontology/associatedWith\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/hasKeyMode\n",
+ "http://performedmusicontology.org/ontology/hasMediumComponent\n",
+ "http://performedmusicontology.org/ontology/remixedIn\n",
+ "http://performedmusicontology.org/ontology/sampledBy\n",
+ "http://performedmusicontology.org/ontology/VideogamePlatformIdentifier\n",
+ "http://performedmusicontology.org/ontology/DiscogsId\n",
+ "http://performedmusicontology.org/ontology/performanceOf\n",
+ "http://performedmusicontology.org/ontology/DiscogsId\n",
+ "http://performedmusicontology.org/ontology/remixedIn\n",
+ "http://performedmusicontology.org/ontology/EnsembleSize\n",
+ "http://performedmusicontology.org/ontology/MediumComponent\n",
+ "http://performedmusicontology.org/ontology/AllMusicId\n",
+ "http://performedmusicontology.org/ontology/OpusNumber\n",
+ "http://performedmusicontology.org/ontology/EventName\n",
+ "http://performedmusicontology.org/ontology/asMemberOf\n",
+ "http://performedmusicontology.org/ontology/hasDramaticRole\n",
+ "http://performedmusicontology.org/ontology/hasNumberOfHands\n",
+ "http://performedmusicontology.org/ontology/hasEventName\n",
+ "http://performedmusicontology.org/ontology/sampledBy\n",
+ "http://performedmusicontology.org/ontology/VideogamePlatformIdentifier\n",
+ "http://performedmusicontology.org/ontology/\n",
+ "http://performedmusicontology.org/ontology/hasTempo\n",
+ "http://performedmusicontology.org/ontology/hasPerformance\n",
+ "http://performedmusicontology.org/ontology/MediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/createdFor\n",
+ "http://performedmusicontology.org/ontology/OpusNumber\n",
+ "http://performedmusicontology.org/ontology/RismNumber\n",
+ "http://performedmusicontology.org/ontology/hasPerformance\n",
+ "http://performedmusicontology.org/ontology/EnsembleSize\n",
+ "http://performedmusicontology.org/ontology/hasInspiration\n",
+ "http://performedmusicontology.org/ontology/recordingOf\n",
+ "http://performedmusicontology.org/ontology/KeyMode\n",
+ "http://performedmusicontology.org/ontology/EnsembleSize\n",
+ "http://performedmusicontology.org/ontology/EventName\n",
+ "http://performedmusicontology.org/ontology/samplesFrom\n",
+ "http://performedmusicontology.org/ontology/hasDramaticRole\n",
+ "http://performedmusicontology.org/ontology/hasMediumComponent\n",
+ "http://performedmusicontology.org/ontology/MediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/hasKeyMode\n",
+ "http://performedmusicontology.org/ontology/phonogramCopyrightDate\n",
+ "http://performedmusicontology.org/ontology/hasTempo\n",
+ "http://performedmusicontology.org/ontology/hasKeyMode\n",
+ "http://performedmusicontology.org/ontology/hasKeyMode\n",
+ "http://performedmusicontology.org/ontology/associatedWith\n",
+ "http://performedmusicontology.org/ontology/hasMediumComponentQualifier\n",
+ "http://performedmusicontology.org/ontology/Mode\n",
+ "http://performedmusicontology.org/ontology/hasInspiration\n",
+ "http://performedmusicontology.org/ontology/hasNumberOfHands\n",
+ "http://performedmusicontology.org/ontology/MediumComponentQualifier\n",
+ "http://performedmusicontology.org/ontology/recordingOf\n",
+ "http://performedmusicontology.org/ontology/MediumComponent\n",
+ "http://performedmusicontology.org/ontology/usesMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/hasMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/hasMediumComponentQualifier\n",
+ "http://performedmusicontology.org/ontology/performanceOf\n",
+ "http://performedmusicontology.org/ontology/phonogramCopyrightDate\n",
+ "http://performedmusicontology.org/ontology/sampledBy\n",
+ "http://performedmusicontology.org/ontology/inspirationFor\n",
+ "http://performedmusicontology.org/ontology/aggregates\n",
+ "http://performedmusicontology.org/ontology/remixOf\n",
+ "http://performedmusicontology.org/ontology/inspirationFor\n",
+ "http://performedmusicontology.org/ontology/hasMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/hasNumberOfHands\n",
+ "http://performedmusicontology.org/ontology/usesMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/Tempo\n",
+ "http://performedmusicontology.org/ontology/remixedIn\n",
+ "http://performedmusicontology.org/ontology/\n",
+ "http://performedmusicontology.org/ontology/phonogramCopyrightDate\n",
+ "http://performedmusicontology.org/ontology/hasPerformance\n",
+ "http://performedmusicontology.org/ontology/usesMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/hasPerformance\n",
+ "http://performedmusicontology.org/ontology/hasMode\n"
+ ]
+ }
+ ],
+ "source": [
+ "for s in pmo_2_0.subjects():\n",
+ " print(s)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 163,
+ "id": "64b9d75e-0316-4ae4-86ea-3cd13fb096d1",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "http://performedmusicontology.org/ontology/ThematicCatalogStatement\n",
+ "http://performedmusicontology.org/ontology/MasterClass\n",
+ "http://performedmusicontology.org/ontology/hasTempo\n",
+ "http://performedmusicontology.org/ontology/hasMode\n",
+ "http://performedmusicontology.org/ontology/hasMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/createdFor\n",
+ "http://performedmusicontology.org/ontology/Tempo\n",
+ "http://performedmusicontology.org/ontology/Tempo\n",
+ "http://performedmusicontology.org/ontology/hasNumberOfHands\n",
+ "http://performedmusicontology.org/ontology/asMemberOf\n",
+ "http://performedmusicontology.org/ontology/aggregates\n",
+ "http://performedmusicontology.org/ontology/hasMediumPartType\n",
+ "http://performedmusicontology.org/ontology/hasEnsembleCount\n",
+ "http://performedmusicontology.org/ontology/hasKeyMode\n",
+ "http://performedmusicontology.org/ontology/DramaticRole\n",
+ "http://performedmusicontology.org/ontology/DramaticRole\n",
+ "http://performedmusicontology.org/ontology/hasPerformance\n",
+ "http://performedmusicontology.org/ontology/hasEventName\n",
+ "http://performedmusicontology.org/ontology/hasMedium\n",
+ "http://performedmusicontology.org/ontology/EnsembleMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/hasEnsembleCount\n",
+ "http://performedmusicontology.org/ontology/hasTonalCenter\n",
+ "http://performedmusicontology.org/ontology/Tempo\n",
+ "http://performedmusicontology.org/ontology/hasRequiredPerformerCount\n",
+ "http://performedmusicontology.org/ontology/CommandPerformance\n",
+ "http://performedmusicontology.org/ontology/Mode\n",
+ "http://performedmusicontology.org/ontology/hasMusicPart\n",
+ "http://performedmusicontology.org/ontology/OpusNumber\n",
+ "http://performedmusicontology.org/ontology/hasDramaticRole\n",
+ "http://performedmusicontology.org/ontology/LivePerformance\n",
+ "http://performedmusicontology.org/ontology/MediumPart\n",
+ "http://performedmusicontology.org/ontology/hasDoublingMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/asMemberOf\n",
+ "http://performedmusicontology.org/ontology/associatedWith\n",
+ "http://performedmusicontology.org/ontology/MasterClass\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogNumber\n",
+ "http://performedmusicontology.org/ontology/hasKeyMode\n",
+ "http://performedmusicontology.org/ontology/VideogamePlatformIdentifier\n",
+ "http://performedmusicontology.org/ontology/ConcertSeries\n",
+ "http://performedmusicontology.org/ontology/hasMusicPart\n",
+ "http://performedmusicontology.org/ontology/Ceremony\n",
+ "http://performedmusicontology.org/ontology/inspirationFor\n",
+ "http://performedmusicontology.org/ontology/Discogs\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogNumber\n",
+ "http://performedmusicontology.org/ontology/DeclaredMedium\n",
+ "http://performedmusicontology.org/ontology/MusicPart\n",
+ "http://performedmusicontology.org/ontology/TonalCenter\n",
+ "http://performedmusicontology.org/ontology/associatedWith\n",
+ "http://performedmusicontology.org/ontology/Mode\n",
+ "http://performedmusicontology.org/ontology/Audition\n",
+ "http://performedmusicontology.org/ontology/associatedWith\n",
+ "http://performedmusicontology.org/ontology/composedOf\n",
+ "http://performedmusicontology.org/ontology/RecordingSession\n",
+ "http://performedmusicontology.org/ontology/OpusNumberPart\n",
+ "http://performedmusicontology.org/ontology/DiscCutting\n",
+ "http://performedmusicontology.org/ontology/EventName\n",
+ "http://performedmusicontology.org/ontology/Rehearsal\n",
+ "http://performedmusicontology.org/ontology/Discogs\n",
+ "http://performedmusicontology.org/ontology/OpusNumberStatement\n",
+ "http://performedmusicontology.org/ontology/inspirationFor\n",
+ "http://performedmusicontology.org/ontology/associatedWith\n",
+ "http://performedmusicontology.org/ontology/ConcertTour\n",
+ "http://performedmusicontology.org/ontology/IndividualMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/performanceOf\n",
+ "http://performedmusicontology.org/ontology/recordingOf\n",
+ "http://performedmusicontology.org/ontology/DeclaredMedium\n",
+ "http://performedmusicontology.org/ontology/WorkComponent\n",
+ "http://performedmusicontology.org/ontology/hasDistinctPartCount\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogNumber\n",
+ "http://performedmusicontology.org/ontology/createdFor\n",
+ "http://performedmusicontology.org/ontology/OpusNumberPart\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogPrefix\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/Performance\n",
+ "http://performedmusicontology.org/ontology/FirstPerformance\n",
+ "http://performedmusicontology.org/ontology/hasPerformerCount\n",
+ "http://performedmusicontology.org/ontology/performanceOf\n",
+ "http://performedmusicontology.org/ontology/MusicBrainz\n",
+ "http://performedmusicontology.org/ontology/hasRequiredPerformerCount\n",
+ "http://performedmusicontology.org/ontology/PerformedMedium\n",
+ "http://performedmusicontology.org/ontology/inspirationFor\n",
+ "http://performedmusicontology.org/ontology/hasRequiredPerformerCount\n",
+ "http://performedmusicontology.org/ontology/MediumPartType\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/MediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/ConcertTour\n",
+ "http://performedmusicontology.org/ontology/DeclaredMedium\n",
+ "http://performedmusicontology.org/ontology/hasOrder\n",
+ "http://performedmusicontology.org/ontology/Concert\n",
+ "http://performedmusicontology.org/ontology/Concert\n",
+ "http://performedmusicontology.org/ontology/asMemberOf\n",
+ "http://performedmusicontology.org/ontology/MediumPartType\n",
+ "http://performedmusicontology.org/ontology/aggregatedIn\n",
+ "http://performedmusicontology.org/ontology/hasEventName\n",
+ "http://performedmusicontology.org/ontology/MusicBrainz\n",
+ "http://performedmusicontology.org/ontology/MusicPart\n",
+ "http://performedmusicontology.org/ontology/VideogamePlatformIdentifier\n",
+ "http://performedmusicontology.org/ontology/hasTempo\n",
+ "http://performedmusicontology.org/ontology/hasDramaticRole\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/hasTrackNumber\n",
+ "http://performedmusicontology.org/ontology/aggregates\n",
+ "http://performedmusicontology.org/ontology/composedOf\n",
+ "http://performedmusicontology.org/ontology/FirstPerformance\n",
+ "http://performedmusicontology.org/ontology/KeyMode\n",
+ "http://performedmusicontology.org/ontology/hasDistinctPartCount\n",
+ "http://performedmusicontology.org/ontology/recordingOf\n",
+ "http://performedmusicontology.org/ontology/recordingOf\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogStatement\n",
+ "http://performedmusicontology.org/ontology/hasMode\n",
+ "http://performedmusicontology.org/ontology/ConcertSeries\n",
+ "http://performedmusicontology.org/ontology/hasEnsembleCount\n",
+ "http://performedmusicontology.org/ontology/PerformedMedium\n",
+ "http://performedmusicontology.org/ontology/Performance\n",
+ "http://performedmusicontology.org/ontology/OpusNumberStatement\n",
+ "http://performedmusicontology.org/ontology/RismNumber\n",
+ "http://performedmusicontology.org/ontology/hasInspiration\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/Performance\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogStatement\n",
+ "http://performedmusicontology.org/ontology/VideogamePlatformIdentifier\n",
+ "http://performedmusicontology.org/ontology/hasMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/EventName\n",
+ "http://performedmusicontology.org/ontology/FirstPerformance\n",
+ "http://performedmusicontology.org/ontology/hasKeyMode\n",
+ "http://performedmusicontology.org/ontology/MusicPart\n",
+ "http://performedmusicontology.org/ontology/MediumPart\n",
+ "http://performedmusicontology.org/ontology/CommandPerformance\n",
+ "http://performedmusicontology.org/ontology/performanceOf\n",
+ "http://performedmusicontology.org/ontology/Mode\n",
+ "http://performedmusicontology.org/ontology/hasTrackNumber\n",
+ "http://performedmusicontology.org/ontology/RismNumber\n",
+ "http://performedmusicontology.org/ontology/ConcertSeries\n",
+ "http://performedmusicontology.org/ontology/IndividualMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/TonalCenter\n",
+ "http://performedmusicontology.org/ontology/VideogamePlatformIdentifier\n",
+ "http://performedmusicontology.org/ontology/\n",
+ "http://performedmusicontology.org/ontology/OpusNumber\n",
+ "http://performedmusicontology.org/ontology/Concert\n",
+ "http://performedmusicontology.org/ontology/createdFor\n",
+ "http://performedmusicontology.org/ontology/createdFor\n",
+ "http://performedmusicontology.org/ontology/EnsembleMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/hasPerformance\n",
+ "http://performedmusicontology.org/ontology/OpusNumberPart\n",
+ "http://performedmusicontology.org/ontology/hasPerformance\n",
+ "http://performedmusicontology.org/ontology/hasEventName\n",
+ "http://performedmusicontology.org/ontology/hasPerformerCount\n",
+ "http://performedmusicontology.org/ontology/RecordingSession\n",
+ "http://performedmusicontology.org/ontology/Ceremony\n",
+ "http://performedmusicontology.org/ontology/asMemberOf\n",
+ "http://performedmusicontology.org/ontology/phonogramCopyrightDate\n",
+ "http://performedmusicontology.org/ontology/hasTempo\n",
+ "http://performedmusicontology.org/ontology/hasKeyMode\n",
+ "http://performedmusicontology.org/ontology/hasPerformerCount\n",
+ "http://performedmusicontology.org/ontology/hasMedium\n",
+ "http://performedmusicontology.org/ontology/hasPerformance\n",
+ "http://performedmusicontology.org/ontology/recordingOf\n",
+ "http://performedmusicontology.org/ontology/hasMediumPartType\n",
+ "http://performedmusicontology.org/ontology/EnsembleMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/performanceOf\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogStatement\n",
+ "http://performedmusicontology.org/ontology/MediumPartType\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogPrefix\n",
+ "http://performedmusicontology.org/ontology/MusicBrainz\n",
+ "http://performedmusicontology.org/ontology/TonalCenter\n",
+ "http://performedmusicontology.org/ontology/RecordingSession\n",
+ "http://performedmusicontology.org/ontology/RismNumber\n",
+ "http://performedmusicontology.org/ontology/hasDoublingMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/hasEnsembleCount\n",
+ "http://performedmusicontology.org/ontology/hasPerformance\n",
+ "http://performedmusicontology.org/ontology/PerformedMedium\n",
+ "http://performedmusicontology.org/ontology/hasMode\n",
+ "http://performedmusicontology.org/ontology/RismNumber\n",
+ "http://performedmusicontology.org/ontology/phonogramCopyrightDate\n",
+ "http://performedmusicontology.org/ontology/createdFor\n",
+ "http://performedmusicontology.org/ontology/WorkComponent\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogNumber\n",
+ "http://performedmusicontology.org/ontology/hasMediumPart\n",
+ "http://performedmusicontology.org/ontology/DramaticRole\n",
+ "http://performedmusicontology.org/ontology/hasOrder\n",
+ "http://performedmusicontology.org/ontology/IndividualMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/hasNumberOfHands\n",
+ "http://performedmusicontology.org/ontology/EventName\n",
+ "http://performedmusicontology.org/ontology/hasTrackNumber\n",
+ "http://performedmusicontology.org/ontology/hasMediumPart\n",
+ "http://performedmusicontology.org/ontology/hasInspiration\n",
+ "http://performedmusicontology.org/ontology/Audition\n",
+ "http://performedmusicontology.org/ontology/OpusNumberPart\n",
+ "http://performedmusicontology.org/ontology/Ceremony\n",
+ "http://performedmusicontology.org/ontology/MasterClass\n",
+ "http://performedmusicontology.org/ontology/Rehearsal\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/FirstPerformance\n",
+ "http://performedmusicontology.org/ontology/KeyMode\n",
+ "http://performedmusicontology.org/ontology/MediumPart\n",
+ "http://performedmusicontology.org/ontology/IndividualMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/hasDistinctPartCount\n",
+ "http://performedmusicontology.org/ontology/ConcertTour\n",
+ "http://performedmusicontology.org/ontology/associatedWith\n",
+ "http://performedmusicontology.org/ontology/performanceOf\n",
+ "http://performedmusicontology.org/ontology/ConcertTour\n",
+ "http://performedmusicontology.org/ontology/Audition\n",
+ "http://performedmusicontology.org/ontology/LivePerformance\n",
+ "http://performedmusicontology.org/ontology/MasterClass\n",
+ "http://performedmusicontology.org/ontology/Performance\n",
+ "http://performedmusicontology.org/ontology/createdFor\n",
+ "http://performedmusicontology.org/ontology/phonogramCopyrightDate\n",
+ "http://performedmusicontology.org/ontology/hasInspiration\n",
+ "http://performedmusicontology.org/ontology/hasDoublingMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/IndividualMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/hasPerformance\n",
+ "http://performedmusicontology.org/ontology/MediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogPrefix\n",
+ "http://performedmusicontology.org/ontology/hasEnsembleCount\n",
+ "http://performedmusicontology.org/ontology/OpusNumber\n",
+ "http://performedmusicontology.org/ontology/Concert\n",
+ "http://performedmusicontology.org/ontology/KeyMode\n",
+ "http://performedmusicontology.org/ontology/hasDramaticRole\n",
+ "http://performedmusicontology.org/ontology/BenefitConcert\n",
+ "http://performedmusicontology.org/ontology/hasTrackNumber\n",
+ "http://performedmusicontology.org/ontology/DiscCutting\n",
+ "http://performedmusicontology.org/ontology/CommandPerformance\n",
+ "http://performedmusicontology.org/ontology/hasInspiration\n",
+ "http://performedmusicontology.org/ontology/aggregatedIn\n",
+ "http://performedmusicontology.org/ontology/EnsembleMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/OpenMicPerformance\n",
+ "http://performedmusicontology.org/ontology/DiscCutting\n",
+ "http://performedmusicontology.org/ontology/Audition\n",
+ "http://performedmusicontology.org/ontology/hasInspiration\n",
+ "http://performedmusicontology.org/ontology/Discogs\n",
+ "http://performedmusicontology.org/ontology/VideogamePlatformIdentifier\n",
+ "http://performedmusicontology.org/ontology/hasMode\n",
+ "http://performedmusicontology.org/ontology/hasRecording\n",
+ "http://performedmusicontology.org/ontology/WorkComponent\n",
+ "http://performedmusicontology.org/ontology/phonogramCopyrightDate\n",
+ "http://performedmusicontology.org/ontology/OpusNumberStatement\n",
+ "http://performedmusicontology.org/ontology/recordingOf\n",
+ "http://performedmusicontology.org/ontology/Rehearsal\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogPrefix\n",
+ "http://performedmusicontology.org/ontology/MediumPart\n",
+ "http://performedmusicontology.org/ontology/BenefitConcert\n",
+ "http://performedmusicontology.org/ontology/hasNumberOfHands\n",
+ "http://performedmusicontology.org/ontology/hasDistinctPartCount\n",
+ "http://performedmusicontology.org/ontology/Performance\n",
+ "http://performedmusicontology.org/ontology/WorkComponent\n",
+ "http://performedmusicontology.org/ontology/CommandPerformance\n",
+ "http://performedmusicontology.org/ontology/hasOrder\n",
+ "http://performedmusicontology.org/ontology/hasMode\n",
+ "http://performedmusicontology.org/ontology/associatedWith\n",
+ "http://performedmusicontology.org/ontology/recordingOf\n",
+ "http://performedmusicontology.org/ontology/MusicPart\n",
+ "http://performedmusicontology.org/ontology/hasMediumPartType\n",
+ "http://performedmusicontology.org/ontology/hasEventName\n",
+ "http://performedmusicontology.org/ontology/aggregatedIn\n",
+ "http://performedmusicontology.org/ontology/EnsembleMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/MediumPartType\n",
+ "http://performedmusicontology.org/ontology/hasMusicPart\n",
+ "http://performedmusicontology.org/ontology/OpusNumberStatement\n",
+ "http://performedmusicontology.org/ontology/hasMediumPart\n",
+ "http://performedmusicontology.org/ontology/hasTonalCenter\n",
+ "http://performedmusicontology.org/ontology/composedOf\n",
+ "http://performedmusicontology.org/ontology/OpusNumber\n",
+ "http://performedmusicontology.org/ontology/RecordingSession\n",
+ "http://performedmusicontology.org/ontology/hasDistinctPartCount\n",
+ "http://performedmusicontology.org/ontology/Ceremony\n",
+ "http://performedmusicontology.org/ontology/BenefitConcert\n",
+ "http://performedmusicontology.org/ontology/LivePerformance\n",
+ "http://performedmusicontology.org/ontology/OpusNumberPart\n",
+ "http://performedmusicontology.org/ontology/hasMedium\n",
+ "http://performedmusicontology.org/ontology/hasMediumPartType\n",
+ "http://performedmusicontology.org/ontology/LivePerformance\n",
+ "http://performedmusicontology.org/ontology/MediumPart\n",
+ "http://performedmusicontology.org/ontology/OpusNumberStatement\n",
+ "http://performedmusicontology.org/ontology/hasNumberOfHands\n",
+ "http://performedmusicontology.org/ontology/hasRequiredPerformerCount\n",
+ "http://performedmusicontology.org/ontology/hasMediumPart\n",
+ "http://performedmusicontology.org/ontology/hasEventName\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogPrefix\n",
+ "http://performedmusicontology.org/ontology/MediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/MusicBrainz\n",
+ "http://performedmusicontology.org/ontology/WorkComponent\n",
+ "http://performedmusicontology.org/ontology/ConcertSeries\n",
+ "http://performedmusicontology.org/ontology/KeyMode\n",
+ "http://performedmusicontology.org/ontology/hasDoublingMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/OpenMicPerformance\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogNumber\n",
+ "http://performedmusicontology.org/ontology/Discogs\n",
+ "http://performedmusicontology.org/ontology/DramaticRole\n",
+ "http://performedmusicontology.org/ontology/aggregates\n",
+ "http://performedmusicontology.org/ontology/hasMediumPart\n",
+ "http://performedmusicontology.org/ontology/MediumPartType\n",
+ "http://performedmusicontology.org/ontology/hasDramaticRole\n",
+ "http://performedmusicontology.org/ontology/hasMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/hasMediumPartType\n",
+ "http://performedmusicontology.org/ontology/TonalCenter\n",
+ "http://performedmusicontology.org/ontology/DiscCutting\n",
+ "http://performedmusicontology.org/ontology/OpenMicPerformance\n",
+ "http://performedmusicontology.org/ontology/OpenMicPerformance\n",
+ "http://performedmusicontology.org/ontology/\n",
+ "http://performedmusicontology.org/ontology/composedOf\n",
+ "http://performedmusicontology.org/ontology/ThematicCatalogStatement\n",
+ "http://performedmusicontology.org/ontology/hasMediumPartType\n",
+ "http://performedmusicontology.org/ontology/hasOrder\n",
+ "http://performedmusicontology.org/ontology/hasMediumOfPerformance\n",
+ "http://performedmusicontology.org/ontology/OpusNumber\n",
+ "http://performedmusicontology.org/ontology/performanceOf\n",
+ "http://performedmusicontology.org/ontology/hasRequiredPerformerCount\n",
+ "http://performedmusicontology.org/ontology/hasMusicPart\n",
+ "http://performedmusicontology.org/ontology/Mode\n",
+ "http://performedmusicontology.org/ontology/hasPerformerCount\n",
+ "http://performedmusicontology.org/ontology/Rehearsal\n",
+ "http://performedmusicontology.org/ontology/hasMediumPart\n",
+ "http://performedmusicontology.org/ontology/hasTonalCenter\n",
+ "http://performedmusicontology.org/ontology/inspirationFor\n"
+ ]
+ }
+ ],
+ "source": [
+ "for s in pmo_1_0.subjects():\n",
+ " print(s)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "b6c5512e-20cb-4b6e-9066-a8e6e5b08baf",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.12.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/Documentation/migration.ipynb b/Documentation/migration.ipynb
index cf5e60d..a8c8a93 100644
--- a/Documentation/migration.ipynb
+++ b/Documentation/migration.ipynb
@@ -87,11 +87,7 @@
{
"cell_type": "code",
"execution_count": 13,
- "metadata": {
- "jupyter": {
- "source_hidden": true
- }
- },
+ "metadata": {},
"outputs": [],
"source": [
"def init_ontology(**kwargs):\n",
@@ -361,12 +357,7 @@
{
"cell_type": "code",
"execution_count": 17,
- "metadata": {
- "collapsed": true,
- "jupyter": {
- "outputs_hidden": true
- }
- },
+ "metadata": {},
"outputs": [
{
"name": "stdout",
@@ -1130,12 +1121,7 @@
{
"cell_type": "code",
"execution_count": 33,
- "metadata": {
- "collapsed": true,
- "jupyter": {
- "outputs_hidden": true
- }
- },
+ "metadata": {},
"outputs": [
{
"name": "stdout",
@@ -1281,7 +1267,7 @@
],
"metadata": {
"kernelspec": {
- "display_name": "Python 3",
+ "display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
@@ -1295,7 +1281,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.9.1"
+ "version": "3.12.1"
}
},
"nbformat": 4,
diff --git a/index.html b/index.html
index 7b7b885..aef7641 100644
--- a/index.html
+++ b/index.html
@@ -20,5 +20,9 @@ Performed Music Ontology
PMO Playing Speed Vocabulary
PMO Tonal Center Vocabulary
+ Version 2.0
+
+ Version 2.0
+
From b8adf8502f294ca5fea301e157933a3501fe5fa7 Mon Sep 17 00:00:00 2001
From: Jeremy Nelson
Date: Tue, 14 May 2024 16:29:03 -0700
Subject: [PATCH 2/4] Adds PMO html
---
2.0/Ontology/PMO.html | 4385 ++++++++++++++++++++++++
2.0/index.html | 1 +
Documentation/Version2.0.ipynb | 5696 ++++++++++++++++++++++++++++----
3 files changed, 9500 insertions(+), 582 deletions(-)
create mode 100644 2.0/Ontology/PMO.html
diff --git a/2.0/Ontology/PMO.html b/2.0/Ontology/PMO.html
new file mode 100644
index 0000000..749ccff
--- /dev/null
+++ b/2.0/Ontology/PMO.html
@@ -0,0 +1,4385 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Performed Music Ontology 2.0
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/
+ Version IRI:
+ http://performedmusicontology.org/2.0/ontology/
+
+
+ Other visualisation:
+ Ontology source
+
+
+
+
+
+
Classes
+
+
+
+
+
+ Eventc
+ back to ToC or Class ToC
+
+
IRI: http://id.loc.gov/ontologies/bibframe/Event
+
+
+
+
+
+
+
+ Identifierc
+ back to ToC or Class ToC
+
+
IRI: http://id.loc.gov/ontologies/bibframe/Identifier
+
+
+
+
+
+ has sub-classes
+
+
+ identifier
+ c
+
+
+
+
+
+
+
+
+
+
+ SoundCharacteristicc
+ back to ToC or Class ToC
+
+
IRI: http://id.loc.gov/ontologies/bibframe/SoundCharacteristic
+
+
+
+
+
+
+
+
IRI: http://id.loc.gov/ontologies/bibframe/Work
+
+
+
+
+
+
+
+ AllMusic IDc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/AllMusicId
+
+
+
+
+ has super-classes
+
+
+ identifier
+
+
+
+
+
+
+
+
+
+
+
+ Discogs IDc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/DiscogsId
+
+
+
+
+ has super-classes
+
+
+ identifier
+
+
+
+
+
+
+
+
+
+
+
+ Dramatic rolec
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/DramaticRole
+
+
+
+
+
+
+
+ Ensemble sizec
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/EnsembleSize
+
+
+
+
+
+
+
+ Event namec
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/EventName
+
+
+
+
+
+
+
+ Music keyc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/KeyMode
+
+
+
+
+
+
+
+ Medium componentc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/MediumComponent
+
+
+
+
+
+
+
+ Medium component qualifierc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/MediumComponentQualifier
+
+
+
+
+
+
+
+
+
+ Music modec
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/Mode
+
+
+
+
+
+
+
+ MusicBrainz IDc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/MusicBrainzId
+
+
+
+
+ has super-classes
+
+
+ identifier
+
+
+
+
+
+
+
+
+
+
+
+ Opus numberc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/OpusNumber
+
+
+
+
+ has super-classes
+
+
+ identifier
+
+
+
+
+
+
+
+
+
+
+
+ RISM numberc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/RismNumber
+
+
+
+
+ has super-classes
+
+
+ identifier
+
+
+
+
+
+
+
+
+
+
+
+ Tempoc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/Tempo
+
+
+
+
+
+
+
+ Thematic catalog numberc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/ontology/ThematicCatalogNumber
+
+
+
+
+ has super-classes
+
+
+ identifier
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AllMusic IDc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/AllMusicId
+
+
+
+
+ has super-classes
+
+
+ identifier
+
+
+
+
+
+
+
+
+
+
+
+ Discogs IDc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/DiscogsId
+
+
+
+
+ has super-classes
+
+
+ identifier
+
+
+
+
+
+
+
+
+
+
+
+ Dramatic rolec
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/DramaticRole
+
+
+
+
+
+
+
+ Ensemble sizec
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/EnsembleSize
+
+
+
+
+
+
+
+ Event namec
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/EventName
+
+
+
+
+
+
+
+ Music keyc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/KeyMode
+
+
+
+
+
+
+
+ Medium componentc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/MediumComponent
+
+
+
+
+
+
+
+ Medium component qualifierc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/MediumComponentQualifier
+
+
+
+
+
+
+
+
+
+ Music modec
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/Mode
+
+
+
+
+
+
+
+ MusicBrainz IDc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/MusicBrainzId
+
+
+
+
+ has super-classes
+
+
+ identifier
+
+
+
+
+
+
+
+
+
+
+
+ Opus numberc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/OpusNumber
+
+
+
+
+ has super-classes
+
+
+ identifier
+
+
+
+
+
+
+
+
+
+
+
+ RISM numberc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/RismNumber
+
+
+
+
+ has super-classes
+
+
+ identifier
+
+
+
+
+
+
+
+
+
+
+
+ Tempoc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/Tempo
+
+
+
+
+
+
+
+ Thematic catalog numberc
+ back to ToC or Class ToC
+
+
IRI: http://performedmusicontology.org/2.0/ontology/ThematicCatalogNumber
+
+
+
+
+ has super-classes
+
+
+ identifier
+
+
+
+
+
+
+
+
+
+
+
+
Object Properties
+
+
+
+
+
+
+ IRI:
+ http://id.loc.gov/ontologies/bibframe/eventContent
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://id.loc.gov/ontologies/bibframe/eventContentOf
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/aggregatedIn
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ work
+
+
+
+
+
+ is inverse of
+
+
+
+ Aggregates
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/aggregates
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ work
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/asMemberOf
+
+
+
+
+
+
+
+ has domain
+
+
+
+ contribution
+
+
+
+
+
+ has range
+
+
+
+ organization
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/associatedWith
+
+
+
+
+
+
+ has super-properties
+
+
+
+ related to
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/createdFor
+
+
+
+
+
+
+ has super-properties
+
+
+
+ related to
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/hasDramaticRole
+
+
+
+
+
+
+
+ has domain
+
+
+
+ contribution
+
+
+
+
+
+ has range
+
+
+
+ Dramatic role
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/hasEnsembleSize
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ Ensemble size
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/hasEventName
+
+
+
+
+
+
+
+ has domain
+
+
+
+ event
+
+
+
+
+
+ has range
+
+
+
+ Event name
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/hasInspiration
+
+
+
+
+
+
+ has super-properties
+
+
+
+ related to
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+
+ is inverse of
+
+
+
+ Inspiration for
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/hasKeyMode
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ Music key
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/hasMediumComponent
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ Medium component
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Has medium component qualifier op
+ back to ToC or Object Property ToC
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/hasMediumComponentQualifier
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/hasMode
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ Music mode
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/hasRecording
+
+
+
+
+
+
+ has super-properties
+
+
+
+ event content
+
+
+
+
+
+ has domain
+
+
+
+ event
+
+
+
+
+
+ has range
+
+
+
+ work
+
+
+
+
+
+ is inverse of
+
+
+
+ Recording of
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/hasTempo
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ Tempo
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/inspirationFor
+
+
+
+
+
+
+ has super-properties
+
+
+
+ related to
+
+
+
+
+
+ has domain
+
+
+
+ event
+
+
+
+
+
+ has range
+
+
+
+ work
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/recordingOf
+
+
+
+
+
+
+ has super-properties
+
+
+
+ event content of
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ event
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/remixOf
+
+
+
+
+
+
+ has super-properties
+
+
+
+ derivative of
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/remixedIn
+
+
+
+
+
+
+ has super-properties
+
+
+
+ has derivative
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/sampledBy
+
+
+
+
+
+
+ has super-properties
+
+
+
+ referenced by
+
+
+
+
+
+
+
+ is inverse of
+
+
+
+ Samples from
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/samplesFrom
+
+
+
+
+
+
+ has super-properties
+
+
+
+ references
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/aggregatedIn
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ work
+
+
+
+
+
+ is inverse of
+
+
+
+ Aggregates
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/aggregates
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ work
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/asMemberOf
+
+
+
+
+
+
+
+ has domain
+
+
+
+ contribution
+
+
+
+
+
+ has range
+
+
+
+ organization
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/associatedWith
+
+
+
+
+
+
+ has super-properties
+
+
+
+ related to
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/createdFor
+
+
+
+
+
+
+ has super-properties
+
+
+
+ related to
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/hasDramaticRole
+
+
+
+
+
+
+
+ has domain
+
+
+
+ contribution
+
+
+
+
+
+ has range
+
+
+
+ Dramatic role
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/hasEnsembleSize
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ Ensemble size
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/hasEventName
+
+
+
+
+
+
+
+ has domain
+
+
+
+ event
+
+
+
+
+
+ has range
+
+
+
+ Event name
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/hasInspiration
+
+
+
+
+
+
+ has super-properties
+
+
+
+ related to
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+
+ is inverse of
+
+
+
+ Inspiration for
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/hasKeyMode
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ Music key
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/hasMediumComponent
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ Medium component
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Has medium component qualifier op
+ back to ToC or Object Property ToC
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/hasMediumComponentQualifier
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/hasMode
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ Music mode
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/hasRecording
+
+
+
+
+
+
+ has super-properties
+
+
+
+ event content
+
+
+
+
+
+ has domain
+
+
+
+ event
+
+
+
+
+
+ has range
+
+
+
+ work
+
+
+
+
+
+ is inverse of
+
+
+
+ Recording of
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/hasTempo
+
+
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ Tempo
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/inspirationFor
+
+
+
+
+
+
+ has super-properties
+
+
+
+ related to
+
+
+
+
+
+ has domain
+
+
+
+ event
+
+
+
+
+
+ has range
+
+
+
+ work
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/recordingOf
+
+
+
+
+
+
+ has super-properties
+
+
+
+ event content of
+
+
+
+
+
+ has domain
+
+
+
+ work
+
+
+
+
+
+ has range
+
+
+
+ event
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/remixOf
+
+
+
+
+
+
+ has super-properties
+
+
+
+ derivative of
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/remixedIn
+
+
+
+
+
+
+ has super-properties
+
+
+
+ has derivative
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/sampledBy
+
+
+
+
+
+
+ has super-properties
+
+
+
+ referenced by
+
+
+
+
+
+
+
+ is inverse of
+
+
+
+ Samples from
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/samplesFrom
+
+
+
+
+
+
+ has super-properties
+
+
+
+ references
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Data Properties
+
+
+
+
+
+
+ IRI:
+ http://id.loc.gov/ontologies/bibframe/date
+
+
+
+
+
+
+
+
has domain
+
+
+
+ contribution
+
+
+
+
+
+
has range
+
+
+
+ Medium of performance
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/hasMediumCount
+
+
+
+
+
+
+
+
+
+
has domain
+
+
+
+ contribution
+
+
+
+
+
+
has range
+
+
+
+ Medium of performance
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/hasNumberOfHands
+
+
+
+
+
+
+
+
+
+
+
+
has domain
+
+
+
+ contribution
+
+
+
+
+
+
has range
+
+
+
+ Medium of performance
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+ Phonogram copyright date
+ dp
+ back to ToC or Data Property ToC
+
+
+ IRI:
+ http://performedmusicontology.org/ontology/phonogramCopyrightDate
+
+
+
+
+
+
+
+
+
+
has domain
+
+
+
+ contribution
+
+
+
+
+
+
has range
+
+
+
+ Medium of performance
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/hasMediumCount
+
+
+
+
+
+
+
+
+
+
has domain
+
+
+
+ contribution
+
+
+
+
+
+
has range
+
+
+
+ Medium of performance
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/hasNumberOfHands
+
+
+
+
+
+
+
+
+
+
+
+
has domain
+
+
+
+ contribution
+
+
+
+
+
+
has range
+
+
+
+ Medium of performance
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+ Phonogram copyright date
+ dp
+ back to ToC or Data Property ToC
+
+
+ IRI:
+ http://performedmusicontology.org/2.0/ontology/phonogramCopyrightDate
+
+
+
+
+
+
+
+
+
+
has domain
+
+
+
+ contribution
+
+
+
+
+
+
has range
+
+
+
+ Medium of performance
+ op
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Namespace Declarations back to ToC
+
+ default namespace
+ http://performedmusicontology.org/ontology/
+ bibframe
+ http://id.loc.gov/ontologies/bibframe/
+ dc
+ http://purl.org/dc/elements/1.1/
+ efrbroo
+ http://erlangen-crm.org/efrbroo/
+ owl
+ http://www.w3.org/2002/07/owl#
+ rdf
+ http://www.w3.org/1999/02/22-rdf-syntax-ns#
+ rdfs
+ http://www.w3.org/2000/01/rdf-schema#
+ regap
+ http://metadataregistry.org/uri/profile/regap/
+ skos
+ http://www.w3.org/2004/02/skos/core#
+ xsd
+ http://www.w3.org/2001/XMLSchema#
+
+
+
+
\ No newline at end of file
diff --git a/2.0/index.html b/2.0/index.html
index 8027784..cccfc23 100644
--- a/2.0/index.html
+++ b/2.0/index.html
@@ -12,6 +12,7 @@
Performed Music Ontology 2.0
An extension of the BIBFRAME ontology for describing performed music, both for mainstream and archival performed music collections.
+ Performed Music Ontology
PMO Ensemble Size Vocabulary
PMO Event Type Vocabulary
PMO Medium Component Qualifier Vocabulary
diff --git a/Documentation/Version2.0.ipynb b/Documentation/Version2.0.ipynb
index a497c0a..690420a 100644
--- a/Documentation/Version2.0.ipynb
+++ b/Documentation/Version2.0.ipynb
@@ -11,7 +11,7 @@
},
{
"cell_type": "code",
- "execution_count": 98,
+ "execution_count": 1,
"id": "a929f843-280d-4761-a5aa-dc976d382847",
"metadata": {},
"outputs": [],
@@ -177,7 +177,7 @@
},
{
"cell_type": "code",
- "execution_count": 3,
+ "execution_count": 2,
"id": "0c3fad7d-976c-4e35-a6e9-2f262ccd4a91",
"metadata": {},
"outputs": [],
@@ -185,29 +185,6 @@
"version_2_0 = pathlib.Path(\"/Users/jpnelson/30-39 LD4P, PCC, and Sinopia/35.01 LD4P Performed Music Ontology/2.0\")"
]
},
- {
- "cell_type": "code",
- "execution_count": 4,
- "id": "c58e3334-288d-418f-a2aa-b151b3b8edc0",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "\u001b[0;31mSignature:\u001b[0m \u001b[0mversion_2_0\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mparent\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmkdir\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmode\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m511\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mparents\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mexist_ok\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
- "\u001b[0;31mDocstring:\u001b[0m Create a new directory at this given path.\n",
- "\u001b[0;31mFile:\u001b[0m /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pathlib.py\n",
- "\u001b[0;31mType:\u001b[0m method"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- }
- ],
- "source": [
- "version_2_0.parent.mkdir?"
- ]
- },
{
"cell_type": "code",
"execution_count": 156,
@@ -822,7 +799,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 206,
"id": "2d9967af-2faf-4b5f-b513-2b788b7c36c9",
"metadata": {},
"outputs": [],
@@ -881,610 +858,5165 @@
" \n",
" {% for class_ in classes %}\n",
" \n",
- " \n",
- " {{ class_.prefLabel }} \n",
+ " \n",
+ " {{ class_.label }} \n",
" \n",
" \n",
" {% endfor %}\n",
" \n",
" {% for class_ in classes %}\n",
" \n",
- "
\n",
+ "
\n",
"
\n",
- " {{ class_.prefLabel }}c \n",
+ " {{ class_.label }}c \n",
" back to ToC or Class ToC \n",
" \n",
- "
IRI: {{ class_.url }}
\n",
- " {% if class_.altLabel %}\n",
- "
Use for: {{ class_.altLabel }}
\n",
+ "
IRI: {{ class_.uri }}
\n",
+ " \n",
+ " {% if class_.superClass or class_.children %}\n",
+ "
\n",
+ " {% if class_.superClass %}\n",
+ " has super-classes \n",
+ " {% for row in class_.superClass %}\n",
+ " \n",
+ " {{ row.label }} \n",
+ " \n",
+ " {% endfor %}\n",
+ " {% endif %}\n",
+ " {% if class_.children %}\n",
+ " has sub-classes \n",
+ " {% for child in class_.children %}\n",
+ " \n",
+ " {{ child.label }} \n",
+ " c {% if not loop.last %},{% endif %}\n",
+ " \n",
+ " {% endfor %}\n",
+ " {% endif %}\n",
+ " \n",
" {% endif %}\n",
- "
Scope note: {{ class_.definition }}
\n",
- "
Current version: {{ class_.changeNote }}
\n",
"
\n",
" {% endfor %}\n",
+ " \n",
+ "
Object Properties \n",
+ "
\n",
+ " {% for obj_prop in object_properties %}\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ " {{ obj_prop.label }} op \n",
+ " back to ToC or Object Property ToC \n",
+ " \n",
+ "
\n",
+ " IRI: \n",
+ " {{ obj_prop.uri }}\n",
+ "
\n",
+ " \n",
+ " {% if obj_prop.has_description %}\n",
+ "
\n",
+ "
\n",
+ " {% if obj_prop.super_properties|length > 0 %}\n",
+ " has super-properties \n",
+ " {% for row in obj_prop.super_properties %}\n",
+ " \n",
+ " \n",
+ " {{ row.label|safe }}\n",
+ " \n",
+ " \n",
+ " {% endfor %}\n",
+ " {% endif %}\n",
+ " {% if obj_prop.domain|length > 0 %}\n",
+ " has domain \n",
+ " {% for row in obj_prop.domain %}\n",
+ " \n",
+ " \n",
+ " {{ row.label|safe }}\n",
+ " \n",
+ " \n",
+ " {% endfor %}\n",
+ " {% endif %}\n",
+ " {% if obj_prop.range|length > 0 %}\n",
+ " has range \n",
+ " {% for row in obj_prop.range %}\n",
+ " \n",
+ " \n",
+ " {{ row.label|safe }}\n",
+ " \n",
+ " \n",
+ " {% endfor %}\n",
+ " {% endif %}\n",
+ " {% if obj_prop.inverse_of|length > 0 %}\n",
+ " is inverse of \n",
+ " {% for row in obj_prop.inverse_of %}\n",
+ " \n",
+ " \n",
+ " {{ row.label|safe }}\n",
+ " \n",
+ " \n",
+ " {% endfor %}\n",
+ " {% endif %}\n",
+ " \n",
+ "
\n",
+ " {% endif %}\n",
+ "
\n",
+ " {% endfor %}\n",
+ "
\n",
+ "
Data Properties \n",
+ "
\n",
+ " {% for data_type in data_types %}\n",
+ " \n",
+ " {{ data_type.label }} \n",
+ " \n",
+ " {% endfor %}\n",
+ " \n",
+ " {% for data_type in data_types %}\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ " {{ data_type.label }}\n",
+ " dp \n",
+ " back to ToC or Data Property ToC \n",
+ " \n",
+ "
\n",
+ " IRI: \n",
+ " {{ data_type.uri }}\n",
+ "
\n",
+ " {% if data_type.definition %}\n",
+ " \n",
+ " {% endif %}\n",
+ " {% if data_type.comments %}\n",
+ " \n",
+ " {% endif %}\n",
+ " {% if data_type.has_description %}\n",
+ "
\n",
+ " {% if data_type.super_properties|length > 0 %}\n",
+ "
has super-properties \n",
+ " {% for row in data_type.super_properties %}\n",
+ " \n",
+ " \n",
+ " {{ row.label|safe }}\n",
+ " \n",
+ " \n",
+ " {% endfor %}\n",
+ " {% endif %}\n",
+ " {% if data_type.domain|length > 0 %}\n",
+ " has domain \n",
+ " {% for row in data_type.domain %}\n",
+ " \n",
+ " \n",
+ " {{ row.label|safe }}\n",
+ " \n",
+ " \n",
+ " {% endfor %}\n",
+ " {% endif %}\n",
+ " {% if data_type.range|length > 0 %}\n",
+ " has range \n",
+ " {% for row in data_type.range %}\n",
+ " \n",
+ " \n",
+ " {{ row.label|safe }}\n",
+ " \n",
+ " \n",
+ " {% endfor %}\n",
+ " {% endif %}\n",
+ " {% if data_type.inverse_of|length > 0 %}\n",
+ " is inverse of \n",
+ " {% for row in data_type.inverse_of %}\n",
+ " \n",
+ " \n",
+ " {{ row.label|safe }}\n",
+ " \n",
+ " \n",
+ " {% endfor %}\n",
+ " {% endif %}\n",
+ " \n",
+ " {% endif %}\n",
+ "
\n",
+ " {% endfor %}\n",
+ "
\n",
+ "
\n",
" \n",
+ " \n",
+ "
Namespace Declarations back to ToC \n",
+ "
\n",
+ " default namespace \n",
+ " http://performedmusicontology.org/ontology/ \n",
+ " bibframe \n",
+ " http://id.loc.gov/ontologies/bibframe/ \n",
+ " dc \n",
+ " http://purl.org/dc/elements/1.1/ \n",
+ " efrbroo \n",
+ " http://erlangen-crm.org/efrbroo/ \n",
+ " owl \n",
+ " http://www.w3.org/2002/07/owl# \n",
+ " rdf \n",
+ " http://www.w3.org/1999/02/22-rdf-syntax-ns# \n",
+ " rdfs \n",
+ " http://www.w3.org/2000/01/rdf-schema# \n",
+ " regap \n",
+ " http://metadataregistry.org/uri/profile/regap/ \n",
+ " skos \n",
+ " http://www.w3.org/2004/02/skos/core# \n",
+ " xsd \n",
+ " http://www.w3.org/2001/XMLSchema# \n",
+ " \n",
+ "
\n",
"
The PMO Ensemble Size Vocabulary is a controlled vocabulary that indicates the size of a music ensemble, from solo performer to large ensemble. It was developed for the Performed Music Ontology 2.0, specifically the Medium type class, but may be used with other ontologies.
+ +Vocabulary source
+