gyorgyf@0
|
1 @prefix owl: <http://www.w3.org/2002/07/owl#> .
|
gyorgyf@0
|
2 @prefix tl: <http://purl.org/NET/c4dm/timeline.owl#> .
|
gyorgyf@0
|
3 @prefix time: <http://www.w3.org/2006/time#> .
|
gyorgyf@0
|
4 @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
gyorgyf@0
|
5 @prefix event: <http://purl.org/NET/c4dm/event.owl#> .
|
gyorgyf@0
|
6 @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
gyorgyf@0
|
7 @prefix dc: <http://purl.org/dc/elements/1.1/> .
|
gyorgyf@0
|
8 @prefix vs: <http://www.w3.org/2003/06/sw-vocab-status/ns#> .
|
gyorgyf@0
|
9 @prefix af: <http://purl.org/ontology/af/> .
|
gyorgyf@0
|
10 @prefix foaf: <http://xmlns.com/foaf/0.1/> .
|
gyorgyf@0
|
11 @prefix mo: <http://purl.org/ontology/mo/> .
|
gyorgyf@0
|
12
|
gyorgyf@0
|
13 # Ontology header
|
gyorgyf@0
|
14 <> a owl:Ontology;
|
gyorgyf@0
|
15 dc:title "The Audio Features ontology";
|
gyorgyf@0
|
16 owl:versionInfo "Revision: 1.1";
|
gyorgyf@0
|
17 rdfs:label "The Audio Features ontology";
|
gyorgyf@0
|
18 dc:description """
|
gyorgyf@0
|
19 This ontology expresses some common concepts
|
gyorgyf@0
|
20 to represent automatically extracted features
|
gyorgyf@0
|
21 from audio signals. Therefore, it mainly relies
|
gyorgyf@0
|
22 on the Event ontology, in order to classify particular
|
gyorgyf@0
|
23 parts of the timeline backing an audio signal.
|
gyorgyf@0
|
24
|
gyorgyf@0
|
25 Programs outputting RDF according to this ontology should
|
gyorgyf@0
|
26 also describe the ouputted document to express some information
|
gyorgyf@0
|
27 about itself (estimated confidence, maintainer of the program, etc.)
|
gyorgyf@0
|
28 """;
|
gyorgyf@0
|
29 dc:creator <http://moustaki.org/foaf.rdf#moustaki>;
|
gyorgyf@0
|
30 foaf:maker <http://moustaki.org/foaf.rdf#moustaki>;
|
gyorgyf@0
|
31 dc:date "$Date: 2008/06/23 10:24:13 $";
|
gyorgyf@0
|
32 .
|
gyorgyf@0
|
33
|
gyorgyf@0
|
34 # Status of terms
|
gyorgyf@0
|
35 vs:term_status a owl:AnnotationProperty.
|
gyorgyf@0
|
36
|
gyorgyf@0
|
37 #
|
gyorgyf@0
|
38 # PART 0
|
gyorgyf@0
|
39 #
|
gyorgyf@0
|
40 # - This part of the ontology deals with track-level features
|
gyorgyf@0
|
41 #
|
gyorgyf@0
|
42 af:Signal
|
gyorgyf@0
|
43 a owl:Class;
|
gyorgyf@0
|
44 vs:term_status "testing";
|
gyorgyf@0
|
45 rdfs:label "Signal-level feature";
|
gyorgyf@0
|
46 rdfs:subClassOf mo:Signal;
|
gyorgyf@0
|
47 rdfs:comment """
|
gyorgyf@0
|
48 A signal-like feature, holding dense data describing another signal.
|
gyorgyf@0
|
49 Examples of signal features include chromagrams, spectrograms, onset detection functions etc.
|
gyorgyf@0
|
50 """;
|
gyorgyf@0
|
51 .
|
gyorgyf@0
|
52 af:Chromagram
|
gyorgyf@0
|
53 a owl:Class;
|
gyorgyf@0
|
54 vs:term_status "testing";
|
gyorgyf@0
|
55 rdfs:label "Chromagram";
|
gyorgyf@0
|
56 rdfs:subClassOf af:Signal;
|
gyorgyf@0
|
57 rdfs:comment """
|
gyorgyf@0
|
58 A chromagram feature.
|
gyorgyf@0
|
59 """;
|
gyorgyf@0
|
60 .
|
gyorgyf@0
|
61 af:DetectionFunction # Following Chris's suggestion at http://www.omras2.com/cgi-sys/cgiwrap/musicstr/view/Main/AudioFeaturesOntology
|
gyorgyf@0
|
62 a owl:Class;
|
gyorgyf@0
|
63 vs:term_status "testing";
|
gyorgyf@0
|
64 rdfs:label "Detection function";
|
gyorgyf@0
|
65 rdfs:subClassOf af:Signal;
|
gyorgyf@0
|
66 rdfs:comment """
|
gyorgyf@0
|
67 A detection function.
|
gyorgyf@0
|
68 """;
|
gyorgyf@0
|
69 .
|
gyorgyf@0
|
70 af:TempoDetectionFunction
|
gyorgyf@0
|
71 a owl:Class;
|
gyorgyf@0
|
72 vs:term_status "testing";
|
gyorgyf@0
|
73 rdfs:label "Tempo detection function";
|
gyorgyf@0
|
74 rdfs:subClassOf af:DetectionFunction;
|
gyorgyf@0
|
75 rdfs:comment """
|
gyorgyf@0
|
76 A tempo detection function
|
gyorgyf@0
|
77 """;
|
gyorgyf@0
|
78 .
|
gyorgyf@0
|
79 af:OnsetDetectionFunction
|
gyorgyf@0
|
80 a owl:Class;
|
gyorgyf@0
|
81 vs:term_status "testing";
|
gyorgyf@0
|
82 rdfs:label "Onset detection function";
|
gyorgyf@0
|
83 rdfs:subClassOf af:DetectionFunction;
|
gyorgyf@0
|
84 rdfs:comment """
|
gyorgyf@0
|
85 An onset detection function
|
gyorgyf@0
|
86 """;
|
gyorgyf@0
|
87 .
|
gyorgyf@0
|
88 af:TonalChangeDetectionFunction
|
gyorgyf@0
|
89 a owl:Class;
|
gyorgyf@0
|
90 vs:term_status "testing";
|
gyorgyf@0
|
91 rdfs:label "Tonal change detection function";
|
gyorgyf@0
|
92 rdfs:subClassOf af:DetectionFunction;
|
gyorgyf@0
|
93 rdfs:comment """
|
gyorgyf@0
|
94 A tonal change detection function
|
gyorgyf@0
|
95 """;
|
gyorgyf@0
|
96 .
|
gyorgyf@0
|
97 af:TonalContentSpace
|
gyorgyf@0
|
98 a owl:Class;
|
gyorgyf@0
|
99 vs:term_status "testing";
|
gyorgyf@0
|
100 rdfs:label "Tonal content space";
|
gyorgyf@0
|
101 rdfs:subClassOf af:Signal;
|
gyorgyf@0
|
102 rdfs:comment """
|
gyorgyf@0
|
103 A 6-D tonal content space
|
gyorgyf@0
|
104 """;
|
gyorgyf@0
|
105 .
|
gyorgyf@0
|
106 af:Amplitude
|
gyorgyf@0
|
107 a owl:Class;
|
gyorgyf@0
|
108 vs:term_status "testing";
|
gyorgyf@0
|
109 rdfs:label "Amplitude";
|
gyorgyf@0
|
110 rdfs:subClassOf af:Signal;
|
gyorgyf@0
|
111 rdfs:comment """
|
gyorgyf@0
|
112 Result of an amplitude following process
|
gyorgyf@0
|
113 """;
|
gyorgyf@0
|
114 .
|
gyorgyf@0
|
115 af:SpectralCentroid
|
gyorgyf@0
|
116 a owl:Class;
|
gyorgyf@0
|
117 vs:term_status "testing";
|
gyorgyf@0
|
118 rdfs:label "Spectral centroid";
|
gyorgyf@0
|
119 rdfs:subClassOf af:Signal;
|
gyorgyf@0
|
120 rdfs:comment """
|
gyorgyf@0
|
121 Spectral centroid
|
gyorgyf@0
|
122 """;
|
gyorgyf@0
|
123 .
|
gyorgyf@0
|
124 af:LogFrequencyCentroid
|
gyorgyf@0
|
125 a owl:Class;
|
gyorgyf@0
|
126 vs:term_Status "testing";
|
gyorgyf@0
|
127 rdfs:label "Log-frequency spectral centroid";
|
gyorgyf@0
|
128 rdfs:subClassOf af:SpectralCentroid;
|
gyorgyf@0
|
129 rdfs:comment """
|
gyorgyf@0
|
130 Log-frequency spectral centroid
|
gyorgyf@0
|
131 """;
|
gyorgyf@0
|
132 .
|
gyorgyf@0
|
133 af:LinearFrequencyCentroid
|
gyorgyf@0
|
134 a owl:Class;
|
gyorgyf@0
|
135 vs:term_status "testing";
|
gyorgyf@0
|
136 rdfs:label "Linear-frequency spectral centroid";
|
gyorgyf@0
|
137 rdfs:subClassOf af:SpectralCentroid;
|
gyorgyf@0
|
138 rdfs:comment """
|
gyorgyf@0
|
139 Log-frequency spectral centroid
|
gyorgyf@0
|
140 """;
|
gyorgyf@0
|
141 .
|
gyorgyf@0
|
142 af:ZeroCrossingCount
|
gyorgyf@0
|
143 a owl:Class;
|
gyorgyf@0
|
144 vs:term_status "testing";
|
gyorgyf@0
|
145 rdfs:label "Zero-crossing counts";
|
gyorgyf@0
|
146 rdfs:subClassOf af:Signal;
|
gyorgyf@0
|
147 rdfs:comment """
|
gyorgyf@0
|
148 Zero-crossing counts
|
gyorgyf@0
|
149 """;
|
gyorgyf@0
|
150 .
|
gyorgyf@0
|
151
|
gyorgyf@0
|
152 af:signal_feature
|
gyorgyf@0
|
153 a owl:DatatypeProperty;
|
gyorgyf@0
|
154 vs:term_status "testing";
|
gyorgyf@0
|
155 rdfs:domain mo:Signal;
|
gyorgyf@0
|
156 rdfs:label "signal-level feature";
|
gyorgyf@0
|
157 rdfs:range af:Signal;
|
gyorgyf@0
|
158 rdfs:comment """
|
gyorgyf@0
|
159 Associates an audio signal with a track-level signal feature.
|
gyorgyf@0
|
160 eg. a spectrogram, a chromagram, an onset detection function.
|
gyorgyf@0
|
161 """;
|
gyorgyf@0
|
162 .
|
gyorgyf@0
|
163 af:value
|
gyorgyf@0
|
164 a owl:DatatypeProperty;
|
gyorgyf@0
|
165 vs:term_status "testing";
|
gyorgyf@0
|
166 rdfs:subPropertyOf rdf:value; # Not sure about that bit
|
gyorgyf@0
|
167 rdfs:domain af:Signal;
|
gyorgyf@0
|
168 rdfs:label "value";
|
gyorgyf@0
|
169 rdfs:comment """
|
gyorgyf@0
|
170 Associates a signal resource as defined in the Music Ontology to a literal: its actual value.
|
gyorgyf@0
|
171 For example, it can be used to link an onset detection function to a list of values.
|
gyorgyf@0
|
172 """;
|
gyorgyf@0
|
173 .
|
gyorgyf@0
|
174
|
gyorgyf@0
|
175 af:dimensions
|
gyorgyf@0
|
176 a owl:DatatypeProperty;
|
gyorgyf@0
|
177 vs:term_status "testing";
|
gyorgyf@0
|
178 rdfs:domain af:Signal;
|
gyorgyf@0
|
179 rdfs:label "dimensions";
|
gyorgyf@0
|
180 rdfs:comment """
|
gyorgyf@0
|
181 Associates a signal with its dimensions, eg. "12 3546". Equivalent to the mpeg7:dim attribute of the mpeg7:Raw
|
gyorgyf@0
|
182 element.
|
gyorgyf@0
|
183 """;
|
gyorgyf@0
|
184 .
|
gyorgyf@0
|
185
|
gyorgyf@0
|
186 #
|
gyorgyf@0
|
187 # PART 1
|
gyorgyf@0
|
188 #
|
gyorgyf@0
|
189 # - This part of the ontology deals with classification of time intervals occuring on a timeline
|
gyorgyf@0
|
190 #
|
gyorgyf@0
|
191
|
gyorgyf@0
|
192 af:Segment a owl:Class;
|
gyorgyf@0
|
193 vs:term_status "testing";
|
gyorgyf@0
|
194 rdfs:label "Segment";
|
gyorgyf@0
|
195 rdfs:subClassOf event:Event;
|
gyorgyf@0
|
196 rdfs:comment """
|
gyorgyf@0
|
197 A classifier for a temporal region corresponding to the output
|
gyorgyf@0
|
198 of an automatic process---an artificial cognitive agent.
|
gyorgyf@0
|
199 """;
|
gyorgyf@0
|
200 rdfs:subClassOf [
|
gyorgyf@0
|
201 a owl:Restriction;
|
gyorgyf@0
|
202 owl:onProperty event:time;
|
gyorgyf@0
|
203 owl:someValuesFrom tl:Interval
|
gyorgyf@0
|
204 ]
|
gyorgyf@0
|
205 .
|
gyorgyf@0
|
206 af:StructuralSegment a owl:Class;
|
gyorgyf@0
|
207 vs:term_status "testing";
|
gyorgyf@0
|
208 rdfs:label "Structural Segment";
|
gyorgyf@0
|
209 rdfs:subClassOf af:Segment;
|
gyorgyf@0
|
210 rdfs:comment """
|
gyorgyf@0
|
211 A classifier trying to capture the notion of structure in an audio piece.
|
gyorgyf@0
|
212 This classifier should be subsumed by more specific classifiers: speech/music
|
gyorgyf@0
|
213 segmentation, structural music segmmentation (intro, verse, chorus, etc.).
|
gyorgyf@0
|
214 """;
|
gyorgyf@0
|
215 .
|
gyorgyf@0
|
216 af:Point a owl:Class;
|
gyorgyf@0
|
217 vs:term_status "testing";
|
gyorgyf@0
|
218 rdfs:label "Point";
|
gyorgyf@0
|
219 rdfs:subClassOf event:Event;
|
gyorgyf@0
|
220 rdfs:comment """
|
gyorgyf@0
|
221 A classifier for instants corresponding to the output of an automatic process---an
|
gyorgyf@0
|
222 artificial cognitive agent (should be associated to a time:Instant---DL version).
|
gyorgyf@0
|
223 """;
|
gyorgyf@0
|
224 rdfs:subClassOf [
|
gyorgyf@0
|
225 a owl:Restriction;
|
gyorgyf@0
|
226 owl:onProperty event:time;
|
gyorgyf@0
|
227 owl:someValuesFrom tl:Instant
|
gyorgyf@0
|
228 ]
|
gyorgyf@0
|
229 .
|
gyorgyf@0
|
230
|
gyorgyf@0
|
231 # Speech-related part
|
gyorgyf@0
|
232
|
gyorgyf@0
|
233 af:SpeechSegment a owl:Class;
|
gyorgyf@0
|
234 vs:term_status "testing";
|
gyorgyf@0
|
235 rdfs:label "Speech";
|
gyorgyf@0
|
236 rdfs:subClassOf af:StructuralSegment;
|
gyorgyf@0
|
237 rdfs:comment """
|
gyorgyf@0
|
238 A classifier capturing the notion of an audio segment holding speech
|
gyorgyf@0
|
239 content
|
gyorgyf@0
|
240 """;
|
gyorgyf@0
|
241 .
|
gyorgyf@0
|
242 af:Laugh a owl:Class;
|
gyorgyf@0
|
243 vs:term_status "testing";
|
gyorgyf@0
|
244 rdfs:label "Laugh";
|
gyorgyf@0
|
245 rdfs:subClassOf af:SpeechSegment;
|
gyorgyf@0
|
246 rdfs:comment """
|
gyorgyf@0
|
247 A classifier for laugh content
|
gyorgyf@0
|
248 """;
|
gyorgyf@0
|
249 .
|
gyorgyf@0
|
250 af:Text a owl:Class;
|
gyorgyf@0
|
251 vs:term_status "testing";
|
gyorgyf@0
|
252 rdfs:label "Text";
|
gyorgyf@0
|
253 rdfs:subClassOf af:SpeechSegment;
|
gyorgyf@0
|
254 rdfs:comment """
|
gyorgyf@0
|
255 A classifier allowing to associate some text to a segment
|
gyorgyf@0
|
256 """;
|
gyorgyf@0
|
257 .
|
gyorgyf@0
|
258 af:EmotionSegment a owl:Class;
|
gyorgyf@0
|
259 vs:term_status "testing";
|
gyorgyf@0
|
260 rdfs:label "Emotion segment";
|
gyorgyf@0
|
261 rdfs:subClassOf af:SpeechSegment;
|
gyorgyf@0
|
262 rdfs:comment """
|
gyorgyf@0
|
263 A classifier for emotional content
|
gyorgyf@0
|
264 """;
|
gyorgyf@0
|
265 .
|
gyorgyf@0
|
266 af:IdiomSegment a owl:Class;
|
gyorgyf@0
|
267 vs:term_status "testing";
|
gyorgyf@0
|
268 rdfs:label "Idiom segment";
|
gyorgyf@0
|
269 rdfs:subClassOf af:SpeechSegment;
|
gyorgyf@0
|
270 rdfs:comment """
|
gyorgyf@0
|
271 A classifier for recognized idiom (English with Irish accent, etc.)
|
gyorgyf@0
|
272 """;
|
gyorgyf@0
|
273 .
|
gyorgyf@0
|
274 af:PersonSpeaking a owl:Class;
|
gyorgyf@0
|
275 vs:term_status "testing";
|
gyorgyf@0
|
276 rdfs:label "Person speaking";
|
gyorgyf@0
|
277 rdfs:comment """
|
gyorgyf@0
|
278 A classifier associating a FOAF description to a particular segment
|
gyorgyf@0
|
279 (to classify genre, recognized speaker, etc.)
|
gyorgyf@0
|
280 """;
|
gyorgyf@0
|
281 rdfs:subClassOf af:SpeechSegment;
|
gyorgyf@0
|
282 .
|
gyorgyf@0
|
283
|
gyorgyf@0
|
284 # Music-related part
|
gyorgyf@0
|
285
|
gyorgyf@0
|
286 af:MusicSegment a owl:Class;
|
gyorgyf@0
|
287 vs:term_status "testing";
|
gyorgyf@0
|
288 rdfs:label "Music";
|
gyorgyf@0
|
289 rdfs:subClassOf af:StructuralSegment;
|
gyorgyf@0
|
290 rdfs:comment """
|
gyorgyf@0
|
291 A classifier capturing the notion of an audio segment holding music.
|
gyorgyf@0
|
292 This classifier can be subsumed with more specific classifiers.
|
gyorgyf@0
|
293 """;
|
gyorgyf@0
|
294 .
|
gyorgyf@0
|
295
|
gyorgyf@0
|
296 # Interval-based musical features
|
gyorgyf@0
|
297
|
gyorgyf@0
|
298 af:MusicStructuralSegment a owl:Class;
|
gyorgyf@0
|
299 vs:term_status "testing";
|
gyorgyf@0
|
300 rdfs:label "Music structural segment";
|
gyorgyf@0
|
301 rdfs:subClassOf af:MusicSegment;
|
gyorgyf@0
|
302 rdfs:comment """
|
gyorgyf@0
|
303 Classifier capturing the notion of chorus, verse, intro, bridge, phrase, etc.
|
gyorgyf@0
|
304 """;
|
gyorgyf@0
|
305 .
|
gyorgyf@0
|
306 af:ChordSegment a owl:Class;
|
gyorgyf@0
|
307 vs:term_status "testing";
|
gyorgyf@0
|
308 rdfs:comment """
|
gyorgyf@0
|
309 A classifier for chords. Equivalent concept as the one
|
gyorgyf@0
|
310 in the Chord ontology.
|
gyorgyf@0
|
311 """;
|
gyorgyf@0
|
312 owl:equivalentClass <http://purl.org/ontology/chord/ChordEvent>;
|
gyorgyf@0
|
313 rdfs:subClassOf af:MusicSegment;
|
gyorgyf@0
|
314 .
|
gyorgyf@0
|
315 af:KeySegment a owl:Class;
|
gyorgyf@0
|
316 vs:term_status "testing";
|
gyorgyf@0
|
317 rdfs:comment """
|
gyorgyf@0
|
318 A classifier for keys.
|
gyorgyf@0
|
319 In case of a \"clean cut\", instances of such events
|
gyorgyf@0
|
320 should have one factor: the detected key (perhaps using the
|
gyorgyf@0
|
321 key ontology at http://purl.org/NET/c4dm/keys.owl).
|
gyorgyf@0
|
322 In other cases, we can put several keys as a factor, maybe with different confidence
|
gyorgyf@0
|
323 factors, using event decomposition.
|
gyorgyf@0
|
324 """;
|
gyorgyf@0
|
325 rdfs:subClassOf af:MusicSegment;
|
gyorgyf@0
|
326 rdfs:label "Key event";
|
gyorgyf@0
|
327 .
|
gyorgyf@0
|
328 af:TonicSegment a owl:Class;
|
gyorgyf@0
|
329 vs:term_status "testing";
|
gyorgyf@0
|
330 rdfs:comment """
|
gyorgyf@0
|
331 A classifier for tonics.
|
gyorgyf@0
|
332 In case of a \"clean cut\", instances of such events have one
|
gyorgyf@0
|
333 factor. In other cases, this event can have several factors, each associated
|
gyorgyf@0
|
334 with a particular confidence using event decomposition.
|
gyorgyf@0
|
335 """;
|
gyorgyf@0
|
336 rdfs:subClassOf af:MusicSegment;
|
gyorgyf@0
|
337 rdfs:label "Tonic event";
|
gyorgyf@0
|
338 .
|
gyorgyf@0
|
339 af:Major a owl:Class;
|
gyorgyf@0
|
340 vs:term_status "testing";
|
gyorgyf@0
|
341 rdfs:comment """
|
gyorgyf@0
|
342 A classifier for a major mode region.
|
gyorgyf@0
|
343 In case of a \"clean cut\", instances of such events have one
|
gyorgyf@0
|
344 factor. In other cases, this event can have several factors, each associated
|
gyorgyf@0
|
345 with a particular confidence using event decomposition.
|
gyorgyf@0
|
346 """;
|
gyorgyf@0
|
347 rdfs:subClassOf af:MusicSegment;
|
gyorgyf@0
|
348 rdfs:label "Major segment";
|
gyorgyf@0
|
349 .
|
gyorgyf@0
|
350 af:Minor a owl:Class;
|
gyorgyf@0
|
351 vs:term_status "testing";
|
gyorgyf@0
|
352 rdfs:comment """
|
gyorgyf@0
|
353 A classifier for a minor mode region.
|
gyorgyf@0
|
354 In case of a \"clean cut\", instances of such events have one
|
gyorgyf@0
|
355 factor. In other cases, this event can have several factors, each associated
|
gyorgyf@0
|
356 with a particular confidence using event decomposition.
|
gyorgyf@0
|
357 """;
|
gyorgyf@0
|
358 rdfs:subClassOf af:MusicSegment;
|
gyorgyf@0
|
359 rdfs:label "Minor segment";
|
gyorgyf@0
|
360 .
|
gyorgyf@0
|
361 af:Loudness a owl:Class;
|
gyorgyf@0
|
362 vs:term_status "testing";
|
gyorgyf@0
|
363 rdfs:comment "Event holding a loudness value";
|
gyorgyf@0
|
364 rdfs:subClassOf af:MusicSegment; #or instant? or both?
|
gyorgyf@0
|
365 rdfs:label "Loudness event";
|
gyorgyf@0
|
366 .
|
gyorgyf@0
|
367 af:Pitch a owl:Class;
|
gyorgyf@0
|
368 vs:term_status "testing";
|
gyorgyf@0
|
369 rdfs:comment "Event holding a pitch value (for example coming from a monophonic transcription process)";
|
gyorgyf@0
|
370 rdfs:subClassOf af:MusicSegment;
|
gyorgyf@0
|
371 rdfs:label "Pitch event";
|
gyorgyf@0
|
372 .
|
gyorgyf@0
|
373 af:Tempo a owl:Class;
|
gyorgyf@0
|
374 vs:term_status "testing";
|
gyorgyf@0
|
375 rdfs:comment "Event holding a tempo value (120bpm...)";
|
gyorgyf@0
|
376 rdfs:subClassOf af:MusicSegment;
|
gyorgyf@0
|
377 rdfs:label "Tempo event";
|
gyorgyf@0
|
378 .
|
gyorgyf@0
|
379 af:Ornament a owl:Class;
|
gyorgyf@0
|
380 vs:term_status "testing";
|
gyorgyf@0
|
381 rdfs:subClassOf af:MusicSegment;
|
gyorgyf@0
|
382 rdfs:label "Ornament event";
|
gyorgyf@0
|
383 rdfs:comment "Classifying a temporal region holding a musical ornament";
|
gyorgyf@0
|
384 .
|
gyorgyf@0
|
385 af:TimeSignature a owl:Class;
|
gyorgyf@0
|
386 vs:term_status "testing";
|
gyorgyf@0
|
387 rdfs:subClassOf af:MusicSegment;
|
gyorgyf@0
|
388 rdfs:label "Time signature";
|
gyorgyf@0
|
389 rdfs:comment "Classifying a temporal region with a particular time signature (what? there is something else than 4/4?? :-)";
|
gyorgyf@0
|
390 .
|
gyorgyf@0
|
391
|
gyorgyf@0
|
392
|
gyorgyf@0
|
393 # Point-based musical features
|
gyorgyf@0
|
394
|
gyorgyf@0
|
395 # An onset is the start of a musical event:
|
gyorgyf@0
|
396 # {:evt a :Onset;event:time ?t1} => {_:me a :MusicalEvent; event:time ?t2. ?t2 tl:begins ?t1}
|
gyorgyf@0
|
397 af:Onset a owl:Class;
|
gyorgyf@0
|
398 vs:term_status "testing";
|
gyorgyf@0
|
399 rdfs:label "Onset";
|
gyorgyf@0
|
400 rdfs:subClassOf af:Point;
|
gyorgyf@0
|
401 rdfs:comment """
|
gyorgyf@0
|
402 A classifier corresponding to the output of an onset detection process.
|
gyorgyf@0
|
403 """;
|
gyorgyf@0
|
404 .
|
gyorgyf@0
|
405 af:TonalOnset a owl:Class;
|
gyorgyf@0
|
406 vs:term_status "testing";
|
gyorgyf@0
|
407 rdfs:label "Pitched onset";
|
gyorgyf@0
|
408 rdfs:subClassOf af:Onset;
|
gyorgyf@0
|
409 rdfs:comment "A pitched onset";
|
gyorgyf@0
|
410 .
|
gyorgyf@0
|
411 af:NonTonalOnset a owl:Class;
|
gyorgyf@0
|
412 vs:term_status "testing";
|
gyorgyf@0
|
413 rdfs:label "Percussive onset";
|
gyorgyf@0
|
414 rdfs:subClassOf af:Onset;
|
gyorgyf@0
|
415 rdfs:comment "A percussive onset";
|
gyorgyf@0
|
416 .
|
gyorgyf@0
|
417 af:Beat a owl:Class;
|
gyorgyf@0
|
418 vs:term_status "testing";
|
gyorgyf@0
|
419 rdfs:label "Beat event";
|
gyorgyf@0
|
420 rdfs:comment "A beat event (instantaneous)";
|
gyorgyf@0
|
421 rdfs:subClassOf af:Point;
|
gyorgyf@0
|
422 .
|
gyorgyf@0
|
423 af:Pitch a owl:Class;
|
gyorgyf@0
|
424 vs:term_status "testing";
|
gyorgyf@0
|
425 rdfs:label "Pitch event";
|
gyorgyf@0
|
426 rdfs:comment "Associate a point to a particular pitch";
|
gyorgyf@0
|
427 rdfs:subClassOf af:Point;
|
gyorgyf@0
|
428 .
|
gyorgyf@0
|
429 af:KeyChange a owl:Class;
|
gyorgyf@0
|
430 vs:term_status "testing";
|
gyorgyf@0
|
431 rdfs:label "Key change event";
|
gyorgyf@0
|
432 rdfs:comment "A key change event. The factor of such an event captures the key that holds after that event.";
|
gyorgyf@0
|
433 rdfs:subClassOf af:Point;
|
gyorgyf@0
|
434 .
|
gyorgyf@0
|
435 af:TonicChange a owl:Class;
|
gyorgyf@0
|
436 vs:term_status "testing";
|
gyorgyf@0
|
437 rdfs:label "Tonic change event";
|
gyorgyf@0
|
438 rdfs:comment "A tonic change event. The factors of such events include the tonic that holds after the event.";
|
gyorgyf@0
|
439 rdfs:subClassOf af:Point;
|
gyorgyf@0
|
440 .
|
gyorgyf@0
|
441 af:ModeChange a owl:Class;
|
gyorgyf@0
|
442 vs:term_status "testing";
|
gyorgyf@0
|
443 rdfs:label "Mode change event";
|
gyorgyf@0
|
444 rdfs:comment "A mode change event. The factors of such events include the mode that holds after the event.";
|
gyorgyf@0
|
445 rdfs:subClassOf af:Point;
|
gyorgyf@0
|
446 .
|
gyorgyf@0
|
447 af:TonalChange a owl:Class;
|
gyorgyf@0
|
448 vs:term_status "testing";
|
gyorgyf@0
|
449 rdfs:label "Tonal change event";
|
gyorgyf@0
|
450 rdfs:comment "A tonal change event.";
|
gyorgyf@0
|
451 rdfs:subClassOf af:Point;
|
gyorgyf@0
|
452 .
|
gyorgyf@0
|
453 af:ZeroCrossing a owl:Class;
|
gyorgyf@0
|
454 vs:term_status "testing";
|
gyorgyf@0
|
455 rdfs:label "Zero crossing";
|
gyorgyf@0
|
456 rdfs:comment "Classifier for a zero-crossing point";
|
gyorgyf@0
|
457 rdfs:subClassOf af:Point;
|
gyorgyf@0
|
458 .
|
gyorgyf@0
|
459
|
gyorgyf@0
|
460 #
|
gyorgyf@0
|
461 # PART 2
|
gyorgyf@0
|
462 #
|
gyorgyf@0
|
463 # - This part of the ontology defines some segment-specific concepts
|
gyorgyf@0
|
464 #
|
gyorgyf@0
|
465
|
gyorgyf@0
|
466 # Custom concepts
|
gyorgyf@0
|
467
|
gyorgyf@0
|
468 # Speech-related
|
gyorgyf@0
|
469
|
gyorgyf@0
|
470 af:Idiom a owl:Class;
|
gyorgyf@0
|
471 vs:term_status "testing";
|
gyorgyf@0
|
472 rdfs:label "Idiom";
|
gyorgyf@0
|
473 rdfs:comment """
|
gyorgyf@0
|
474 Idiom (English with Irish accent, Austrian German, etc.)
|
gyorgyf@0
|
475 """;
|
gyorgyf@0
|
476 .
|
gyorgyf@0
|
477 af:EnglishIdiom a owl:Class;
|
gyorgyf@0
|
478 vs:term_status "testing";
|
gyorgyf@0
|
479 rdfs:label "English idiom";
|
gyorgyf@0
|
480 rdfs:comment """
|
gyorgyf@0
|
481 English idiom
|
gyorgyf@0
|
482 """;
|
gyorgyf@0
|
483 .
|
gyorgyf@0
|
484 af:standard_british_english a af:EnglishIdiom;
|
gyorgyf@0
|
485 vs:term_status "testing";
|
gyorgyf@0
|
486 dc:title "Standard British English";
|
gyorgyf@0
|
487 .
|
gyorgyf@0
|
488 af:standard_us_english a af:EnglishIdiom;
|
gyorgyf@0
|
489 vs:term_status "testing";
|
gyorgyf@0
|
490 dc:title "Standard US English";
|
gyorgyf@0
|
491 .
|
gyorgyf@0
|
492 af:english_irish_accent a af:EnglishIdiom;
|
gyorgyf@0
|
493 vs:term_status "testing";
|
gyorgyf@0
|
494 dc:title "English with an Irish accent";
|
gyorgyf@0
|
495 .
|
gyorgyf@0
|
496 af:english_scottish_accent a af:EnglishIdiom;
|
gyorgyf@0
|
497 vs:term_status "testing";
|
gyorgyf@0
|
498 dc:title "English with a Scottish accent";
|
gyorgyf@0
|
499 .
|
gyorgyf@0
|
500 af:GermanIdiom a owl:Class;
|
gyorgyf@0
|
501 vs:term_status "testing";
|
gyorgyf@0
|
502 rdfs:label "German idiom";
|
gyorgyf@0
|
503 rdfs:comment """
|
gyorgyf@0
|
504 German idiom
|
gyorgyf@0
|
505 """;
|
gyorgyf@0
|
506 .
|
gyorgyf@0
|
507 af:austrian_german a af:GermanIdiom;
|
gyorgyf@0
|
508 vs:term_status "testing";
|
gyorgyf@0
|
509 dc:title "Austrian German";
|
gyorgyf@0
|
510 .
|
gyorgyf@0
|
511 af:swiss_german a af:GermanIdiom;
|
gyorgyf@0
|
512 vs:term_status "testing";
|
gyorgyf@0
|
513 dc:title "Swiss German";
|
gyorgyf@0
|
514 .
|
gyorgyf@0
|
515 af:standard_german a af:GermanIdiom;
|
gyorgyf@0
|
516 vs:term_status "testing";
|
gyorgyf@0
|
517 dc:title "Standard German";
|
gyorgyf@0
|
518 .
|
gyorgyf@0
|
519 af:HungarianIdiom a owl:Class;
|
gyorgyf@0
|
520 vs:term_status "testing";
|
gyorgyf@0
|
521 rdfs:label "Hungarian idiom";
|
gyorgyf@0
|
522 rdfs:comment "Hungarian idiom";
|
gyorgyf@0
|
523 .
|
gyorgyf@0
|
524 af:standard_hungarian a af:HungarianIdiom;
|
gyorgyf@0
|
525 vs:term_status "testing";
|
gyorgyf@0
|
526 dc:title "Standard Hungarian";
|
gyorgyf@0
|
527 .
|
gyorgyf@0
|
528
|
gyorgyf@0
|
529 # Predicates
|
gyorgyf@0
|
530
|
gyorgyf@0
|
531 af:text a owl:DatatypeProperty;
|
gyorgyf@0
|
532 vs:term_status "testing";
|
gyorgyf@0
|
533 a rdf:Property;
|
gyorgyf@0
|
534 rdfs:comment """
|
gyorgyf@0
|
535 Relates a Text segment (classifying a time interval that can
|
gyorgyf@0
|
536 be associated to some text) to a text string or other literals (number, etc.)
|
gyorgyf@0
|
537 """;
|
gyorgyf@0
|
538 rdfs:subPropertyOf event:hasLiteralFactor;
|
gyorgyf@0
|
539 rdfs:domain af:Text;
|
gyorgyf@0
|
540 rdfs:range rdfs:Literal;
|
gyorgyf@0
|
541 .
|
gyorgyf@0
|
542 af:idiom a owl:DatatypeProperty;
|
gyorgyf@0
|
543 vs:term_status "testing";
|
gyorgyf@0
|
544 a rdf:Property;
|
gyorgyf@0
|
545 rdfs:comment """
|
gyorgyf@0
|
546 Associates a segment which classify an idiom (English with Irish accent, etc.) to an actual idiom
|
gyorgyf@0
|
547 """;
|
gyorgyf@0
|
548 rdfs:subPropertyOf event:hasLiteralFactor;
|
gyorgyf@0
|
549 rdfs:domain af:IdiomSegment;
|
gyorgyf@0
|
550 rdfs:range af:Idiom;
|
gyorgyf@0
|
551 .
|
gyorgyf@0
|
552 af:person a owl:ObjectProperty;
|
gyorgyf@0
|
553 vs:term_status "testing";
|
gyorgyf@0
|
554 a rdf:Property;
|
gyorgyf@0
|
555 rdfs:comment """
|
gyorgyf@0
|
556 Associates a segment classified as holding speech content to a FOAF
|
gyorgyf@0
|
557 profile (maybe holding information about genre, recognized speaker URI, etc.)
|
gyorgyf@0
|
558 """;
|
gyorgyf@0
|
559 rdfs:label "person";
|
gyorgyf@0
|
560 rdfs:domain af:PersonSegment;
|
gyorgyf@0
|
561 rdfs:range foaf:Person;
|
gyorgyf@0
|
562 .
|
gyorgyf@0
|
563 af:emotional_intensity a owl:ObjectProperty;
|
gyorgyf@0
|
564 vs:term_status "testing";
|
gyorgyf@0
|
565 a rdf:Property;
|
gyorgyf@0
|
566 rdfs:comment """
|
gyorgyf@0
|
567 Associates an \"emotional intensity\" value to a
|
gyorgyf@0
|
568 segment detected as being \"emotional\"
|
gyorgyf@0
|
569 """;
|
gyorgyf@0
|
570 rdfs:label "emotional intensity";
|
gyorgyf@0
|
571 rdfs:domain af:EmotionSegment;
|
gyorgyf@0
|
572 rdfs:range rdfs:Literal;
|
gyorgyf@0
|
573 .
|
gyorgyf@0
|
574
|
gyorgyf@0
|
575 af:key a owl:ObjectProperty;
|
gyorgyf@0
|
576 vs:term_status "testing";
|
gyorgyf@0
|
577 rdfs:domain af:KeySegment;
|
gyorgyf@0
|
578 rdfs:range owl:Thing; # More specific...
|
gyorgyf@0
|
579 rdfs:subPropertyOf event:factor;
|
gyorgyf@0
|
580 rdfs:label "key";
|
gyorgyf@0
|
581 rdfs:comment "Associates a key event to the corresponding key";
|
gyorgyf@0
|
582 .
|
gyorgyf@0
|
583 af:new_key a owl:ObjectProperty;
|
gyorgyf@0
|
584 vs:term_status "testing";
|
gyorgyf@0
|
585 rdfs:domain af:KeyChange;
|
gyorgyf@0
|
586 rdfs:range owl:Thing;
|
gyorgyf@0
|
587 rdfs:subPropertyOf event:factor;
|
gyorgyf@0
|
588 rdfs:label "new key";
|
gyorgyf@0
|
589 rdfs:comment "Associates a key change event to the new key, holding after the change";
|
gyorgyf@0
|
590 .
|
gyorgyf@0
|
591 af:tonic a owl:ObjectProperty;
|
gyorgyf@0
|
592 vs:term_status "testing";
|
gyorgyf@0
|
593 rdfs:domain af:TonicSegment;
|
gyorgyf@0
|
594 rdfs:range owl:Thing;
|
gyorgyf@0
|
595 rdfs:subPropertyOf event:factor;
|
gyorgyf@0
|
596 rdfs:label "tonic";
|
gyorgyf@0
|
597 rdfs:comment "Associates a tonic event with the corresponding tonic";
|
gyorgyf@0
|
598 .
|
gyorgyf@0
|
599 af:new_tonic a owl:ObjectProperty;
|
gyorgyf@0
|
600 vs:term_status "testing";
|
gyorgyf@0
|
601 rdfs:domain af:TonicChangeEvent;
|
gyorgyf@0
|
602 rdfs:range owl:Thing;
|
gyorgyf@0
|
603 rdfs:subPropertyOf event:factor;
|
gyorgyf@0
|
604 rdfs:label "new tonic";
|
gyorgyf@0
|
605 rdfs:comment "Tonic that holds after the tonic change event";
|
gyorgyf@0
|
606 .
|
gyorgyf@0
|
607 af:new_mode a owl:ObjectProperty;
|
gyorgyf@0
|
608 vs:term_status "testing";
|
gyorgyf@0
|
609 rdfs:domain af:ModeChangeEvent;
|
gyorgyf@0
|
610 rdfs:range owl:Thing;
|
gyorgyf@0
|
611 rdfs:subPropertyOf event:factor;
|
gyorgyf@0
|
612 rdfs:label "new mode";
|
gyorgyf@0
|
613 rdfs:comment "Mode that holds after the mode change event";
|
gyorgyf@0
|
614 .
|
gyorgyf@0
|
615
|
gyorgyf@0
|
616
|
gyorgyf@0
|
617 # Literals associated with features
|
gyorgyf@0
|
618
|
gyorgyf@0
|
619 af:feature a owl:DatatypeProperty;
|
gyorgyf@0
|
620 vs:term_status "testing";
|
gyorgyf@0
|
621 a rdf:Property;
|
gyorgyf@0
|
622 rdfs:comment """
|
gyorgyf@0
|
623 Associates a segment classifying a feature to the actual feature---we should use mpeg7 sort-of datatypes here
|
gyorgyf@0
|
624 """;
|
gyorgyf@0
|
625 rdfs:label "feature";
|
gyorgyf@0
|
626 rdfs:subPropertyOf event:literal_factor;
|
gyorgyf@0
|
627 rdfs:domain af:Segment;
|
gyorgyf@0
|
628 rdfs:range rdfs:Literal;
|
gyorgyf@0
|
629 .
|
gyorgyf@0
|
630 af:tempo a owl:DatatypeProperty;
|
gyorgyf@0
|
631 rdfs:subPropertyOf af:feature;
|
gyorgyf@0
|
632 vs:term_status "testing";
|
gyorgyf@0
|
633 rdfs:label "tempo";
|
gyorgyf@0
|
634 rdfs:domain af:Tempo;
|
gyorgyf@0
|
635 rdfs:comment """
|
gyorgyf@0
|
636 Associates a tempo event to the corresponding tempo value.
|
gyorgyf@0
|
637 """;
|
gyorgyf@0
|
638 .
|
gyorgyf@0
|
639 af:pitch a owl:DatatypeProperty;
|
gyorgyf@0
|
640 rdfs:subPropertyOf af:feature;
|
gyorgyf@0
|
641 vs:term_status "testing";
|
gyorgyf@0
|
642 rdfs:label "pitch";
|
gyorgyf@0
|
643 rdfs:domain af:Pitch;
|
gyorgyf@0
|
644 rdfs:comment """
|
gyorgyf@0
|
645 Associates a pitch event to the corresponding pitch
|
gyorgyf@0
|
646 """;
|
gyorgyf@0
|
647 .
|
gyorgyf@0
|
648
|
gyorgyf@0
|
649 #af:mfcc_2_10 (mean/variance) should go there, as well as af:chroma ...
|
gyorgyf@0
|
650
|
gyorgyf@0
|
651
|
gyorgyf@0
|
652
|
gyorgyf@0
|
653 #
|
gyorgyf@0
|
654 # Part III
|
gyorgyf@0
|
655 #
|
gyorgyf@0
|
656 # Generic things, related to outputs of automatic processes
|
gyorgyf@0
|
657 #
|
gyorgyf@0
|
658 # Most of these things should be elsewhere
|
gyorgyf@0
|
659 #
|
gyorgyf@0
|
660
|
gyorgyf@0
|
661 af:confidence a owl:DatatypeProperty;
|
gyorgyf@0
|
662 vs:term_status "testing";
|
gyorgyf@0
|
663 a rdf:Property;
|
gyorgyf@0
|
664 rdfs:comment """
|
gyorgyf@0
|
665 A really generic property, allowing to associate a confidence to a document or to a particular
|
gyorgyf@0
|
666 resource (such as an automatically detected segment)
|
gyorgyf@0
|
667 """;
|
gyorgyf@0
|
668 rdfs:label "confidence";
|
gyorgyf@0
|
669 rdfs:range rdfs:Literal;
|
gyorgyf@0
|
670 .
|
gyorgyf@0
|
671
|