Daniel@0
|
1 @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
Daniel@0
|
2 @prefix owl: <http://www.w3.org/2002/07/owl#> .
|
Daniel@0
|
3 @prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
Daniel@0
|
4 @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
Daniel@0
|
5 @prefix dml: <http://dml.org/dml/cla#> .
|
Daniel@0
|
6 @prefix vamp: <http://purl.org/ontology/vamp/> .
|
Daniel@0
|
7 @prefix dc: <http://purl.org/dc/elements/1.1/> .
|
Daniel@0
|
8
|
Daniel@0
|
9 # This file defines an ontology, which also imports the vamp plugin ontology
|
Daniel@0
|
10 <dmlclaOntology.n3> a owl:Ontology;
|
Daniel@0
|
11 owl:imports <http://vamp-plugins.org/rdf/plugins/qm-vamp-plugins> .
|
Daniel@0
|
12
|
Daniel@0
|
13 # Our highest level class is a dml:Transform
|
Daniel@0
|
14 dml:Transform a owl:Class .
|
Daniel@0
|
15 dml:CollectionLevelAnalysis rdfs:subClassOf dml:Transform .
|
Daniel@0
|
16
|
Daniel@0
|
17 dml:type rdfs:subPropertyOf rdf:type .
|
Daniel@0
|
18
|
Daniel@0
|
19 vamp:Transform rdfs:subClassOf dml:Transform .
|
Daniel@0
|
20
|
Daniel@0
|
21 dml:input a owl:ObjectProperty .
|
Daniel@0
|
22 dml:output a owl:ObjectProperty .
|
Daniel@0
|
23
|
Daniel@0
|
24 # A CollectionLevelKeyTonic is a CollectionLevelAnalysis,
|
Daniel@0
|
25 # it requires at least one input, and these inputs
|
Daniel@0
|
26 # will all be outputs from the qm keydetector vamp plugin.
|
Daniel@0
|
27 dml:CollectionLevelKeyTonic rdfs:subClassOf dml:CollectionLevelAnalysis ;
|
Daniel@0
|
28 owl:equivalentClass [ a owl:restriction ;
|
Daniel@0
|
29 owl:onProperty dml:collectionLevelKeyTonicInput ;
|
Daniel@0
|
30 owl:minCardinality 1] ;
|
Daniel@0
|
31 owl:equivalentClass [ a owl:restriction ;
|
Daniel@0
|
32 owl:onProperty dml:collectionLevelKeyTonicOutput ;
|
Daniel@0
|
33 owl:cardinality 1] .
|
Daniel@0
|
34
|
Daniel@0
|
35 dml:collectionLevelKeyTonicInput rdfs:subPropertyOf dml:input ;
|
Daniel@0
|
36 rdfs:range <http://vamp-plugins.org/rdf/plugins/qm-vamp-plugins#qm-keydetector_output_tonic> .
|
Daniel@0
|
37
|
Daniel@0
|
38 dml:collectionLevelKeyTonicOutput rdfs:subPropertyOf dml:output ;
|
Daniel@0
|
39 rdfs:range dml:KeyTonicHistogram .
|
Daniel@0
|
40
|
Daniel@0
|
41 # A (Tonic) Key Histogram is defined as:
|
Daniel@0
|
42 dml:KeyTonicHistogram a vamp:DenseOutput ;
|
Daniel@0
|
43 vamp:identifier "keytonichistogram" ;
|
Daniel@0
|
44 dc:title "Key Tonic Histogram" ;
|
Daniel@0
|
45 dc:description "Histogram of estimated tonic key (from C major = 1 to B major = 12)." ;
|
Daniel@0
|
46 vamp:fixed_bin_count "true" ;
|
Daniel@0
|
47 vamp:unit "" ;
|
Daniel@0
|
48 vamp:bin_count 12 ;
|
Daniel@0
|
49 vamp:bin_names ( "C" "C#" "D" "D#" "E" "F" "F#" "G" "G#" "A" "A#" "B");
|
Daniel@0
|
50 owl:intersectionOf (
|
Daniel@0
|
51 [ a owl:Restriction;
|
Daniel@0
|
52 owl:onProperty dml:sample_count ;
|
Daniel@0
|
53 owl:cardinality 1]
|
Daniel@0
|
54 [ a owl:Restriction;
|
Daniel@0
|
55 owl:onProperty dml:bin ;
|
Daniel@0
|
56 owl:cardinality 12] ) .
|
Daniel@0
|
57
|
Daniel@0
|
58 dml:bin a owl:ObjectProperty ;
|
Daniel@0
|
59 rdfs:range dml:Bin .
|
Daniel@0
|
60
|
Daniel@0
|
61 dml:Bin a owl:Class;
|
Daniel@0
|
62 owl:intersectionOf (
|
Daniel@0
|
63 [ a owl:Restriction;
|
Daniel@0
|
64 owl:onProperty dml:bin_number ;
|
Daniel@0
|
65 owl:cardinality 1]
|
Daniel@0
|
66 [ a owl:Restriction;
|
Daniel@0
|
67 owl:onProperty dml:bin_value ;
|
Daniel@0
|
68 owl:cardinality 1] ) .
|
Daniel@0
|
69
|
Daniel@0
|
70 dml:bin_number a owl:DatatypeProperty ;
|
Daniel@0
|
71 rdfs:range xsd:integer .
|
Daniel@0
|
72
|
Daniel@0
|
73 dml:bin_value a owl:DatatypeProperty .
|
Daniel@0
|
74
|
Daniel@0
|
75 dml:sample_count a owl:DatatypeProperty ;
|
Daniel@0
|
76 rdfs:range xsd:integer .
|
Daniel@0
|
77
|
Daniel@0
|
78 # A Key Histogram is defined as:
|
Daniel@0
|
79 dml:KeyTonicHistogram a vamp:DenseOutput ;
|
Daniel@0
|
80 vamp:identifier "keyhistogram" ;
|
Daniel@0
|
81 dc:title "Key Histogram" ;
|
Daniel@0
|
82 dc:description "Histogram of estimated key (from C major = 1 to B major = 12 and C minor = 13 to B minor = 24)." ;
|
Daniel@0
|
83 vamp:fixed_bin_count "true" ;
|
Daniel@0
|
84 vamp:unit "" ;
|
Daniel@0
|
85 vamp:bin_count 24 ;
|
Daniel@0
|
86 vamp:bin_names ( "Cmaj" "C#maj" "Dmaj" "D#maj" "Emaj" "Fmaj" "F#maj" "Gmaj" "G#maj" "Amaj" "A#maj" "Bmaj" "Cmin" "C#min" "Dmin" "D#min" "Emin" "Fmin" "F#min" "Gmin" "G#min" "Amin" "A#min" "Bmin");
|
Daniel@0
|
87 dml:sample_count [ a xsd:integer] ;
|
Daniel@0
|
88 owl:equivalentClass [ a owl:restriction ;
|
Daniel@0
|
89 owl:onProperty dml:bin ;
|
Daniel@0
|
90 owl:cardinality 24] .
|
Daniel@0
|
91
|
Daniel@0
|
92
|
Daniel@0
|
93
|
Daniel@0
|
94 # A CollectionLevelTuningFrequencyStatistics is a CollectionLevelAnalysis,
|
Daniel@0
|
95 # it requires at least one input, and these inputs
|
Daniel@0
|
96 # will all be outputs from the silvet transcription plugin.
|
Daniel@0
|
97 dml:CollectionLevelTuningFrequencyStatistics rdfs:subClassOf dml:CollectionLevelAnalysis ;
|
Daniel@0
|
98 owl:equivalentClass [ a owl:restriction ;
|
Daniel@0
|
99 owl:onProperty dml:collectionLevelTuningFrequencyStatisticsInput ;
|
Daniel@0
|
100 owl:minCardinality 1] ;
|
Daniel@0
|
101 owl:equivalentClass [ a owl:restriction ;
|
Daniel@0
|
102 owl:onProperty dml:collectionLevelTuningFrequencyStatisticsOutput ;
|
Daniel@0
|
103 owl:cardinality 1] .
|
Daniel@0
|
104
|
Daniel@0
|
105 dml:collectionLevelTuningFrequencyStatisticsInput rdfs:subPropertyOf dml:input ;
|
Daniel@0
|
106 rdfs:range <http://vamp-plugins.org/rdf/plugins/silvet#silvet_output_notes> .
|
Daniel@0
|
107
|
Daniel@0
|
108 dml:collectionLevelTuningFrequencyStatisticsOutput rdfs:subPropertyOf dml:output ;
|
Daniel@0
|
109 rdfs:range dml:TuningFrequencyStatistics .
|
Daniel@0
|
110
|
Daniel@0
|
111 # TuningFrequencyStatistics is defined as:
|
Daniel@0
|
112 dml:TuningFrequencyStatistics a vamp:DenseOutput ;
|
Daniel@0
|
113 vamp:identifier "tuningfrequencystatistics" ;
|
Daniel@0
|
114 dc:title "Tuning Frequency Statistics" ;
|
Daniel@0
|
115 dc:description "Statistics of Estimated Tuning Frequency including mean, standard deviation and histogram" ;
|
Daniel@0
|
116 owl:intersectionOf (
|
Daniel@0
|
117 [ a owl:Restriction;
|
Daniel@0
|
118 owl:onProperty dml:mean ;
|
Daniel@0
|
119 owl:cardinality 1]
|
Daniel@0
|
120 [ a owl:Restriction;
|
Daniel@0
|
121 owl:onProperty dml:std_dev ;
|
Daniel@0
|
122 owl:cardinality 1]
|
Daniel@0
|
123 [ a owl:Restriction;
|
Daniel@0
|
124 owl:onProperty dml:bin ;
|
Daniel@0
|
125 owl:cardinality 100]) .
|
Daniel@0
|
126
|
Daniel@0
|
127 dml:mean a owl:DatatypeProperty ;
|
Daniel@0
|
128 rdfs:range xsd:float .
|
Daniel@0
|
129
|
Daniel@0
|
130 dml:std_dev a owl:DatatypeProperty ;
|
Daniel@0
|
131 rdfs:range xsd:float .
|
Daniel@0
|
132
|
Daniel@0
|
133 # Some example data
|
Daniel@0
|
134 _:cl_tuning_statistics dml:type dml:CollectionLevelTuningFrequencyStatistics ;
|
Daniel@0
|
135 # dml:input <file:///mnt/audio/Bruckner/_Analysis/silvet_settings_slow_nonfinetune_allinstruments.n3_1db32/020A-H03614XXXXXX-0104A0_vamp_silvet_silvet_notes.n3> ;
|
Daniel@0
|
136 # dml:input <file:///mnt/audio/Bruckner/_Analysis/silvet_settings_slow_nonfinetune_allinstruments.n3_1db32/020A-H03799XXXXXX-0103A0_vamp_silvet_silvet_notes.n3> ;
|
Daniel@0
|
137 dml:input <file:///D:/mirg/Pitch_Analysis/026A-1CL0001773XX-0100A0_vamp_silvet_silvet_notes.csv> ;
|
Daniel@0
|
138 # dml:input <file:///D:/mirg/Pitch_Analysis/026A-1CL0002164XX-0100A0_vamp_silvet_silvet_notes.n3> ;
|
Daniel@0
|
139 dml:input <file:///D:/mirg/Pitch_Analysis/026A-1CL0001773XX-0100A0_vamp_silvet_silvet_notes.n3> . |