cannam@135
|
1 @prefix owl: <http://www.w3.org/2002/07/owl#>.
|
cannam@135
|
2 @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
|
cannam@135
|
3 @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
|
cannam@135
|
4 @prefix xsd: <http://www.w3.org/2001/XMLSchema#>.
|
cannam@135
|
5 @prefix foaf: <http://xmlns.com/foaf/0.1/>.
|
cannam@135
|
6 @prefix vs: <http://www.w3.org/2003/06/sw-vocab-status/ns#>.
|
cannam@135
|
7 @prefix list: <http://www.w3.org/2000/10/swap/list#>.
|
cannam@135
|
8 @prefix dc: <http://purl.org/dc/elements/1.1/>.
|
cannam@135
|
9 @prefix mo: <http://purl.org/ontology/mo/>.
|
cannam@135
|
10 @prefix event: <http://purl.org/NET/c4dm/event.owl#>.
|
cannam@135
|
11 @prefix af: <http://purl.org/ontology/af/>.
|
cannam@135
|
12 @prefix tl: <http://purl.org/NET/c4dm/timeline.owl#>.
|
cannam@135
|
13 @prefix vamp: <http://purl.org/ontology/vamp/>.
|
cannam@135
|
14 @prefix : <> .
|
cannam@135
|
15
|
cannam@135
|
16 <>
|
cannam@135
|
17 a owl:Ontology;
|
cannam@135
|
18 dc:title "Vamp Plugins Ontology";
|
cannam@135
|
19 rdfs:label "Vamp Plugins Ontology";
|
cannam@135
|
20 rdfs:comment """
|
cannam@141
|
21 Vamp Ontology. This ontology includes the following descriptions:
|
cannam@136
|
22
|
cannam@141
|
23 - OWL description of the Vamp API
|
cannam@141
|
24 - OWL description of the Transform environment necessary to set up the execution of any plugin
|
cannam@136
|
25
|
cannam@136
|
26 This Ontology provides semantics to describe and control Vamp plugins in RDF. Any "RDF-speaker" host is therefore able to
|
cannam@136
|
27 use this ontology to read, set up and execute plugins.
|
cannam@141
|
28 The extracted features are expressed in terms of the Audio Features Ontology: http://purl.org/ontology/af/.
|
cannam@141
|
29 For more information, please visit the Vamp Plugins website: http://www.vamp-plugins.org/
|
cannam@135
|
30 """;
|
cannam@135
|
31 foaf:maker "Chris Cannam";
|
cannam@135
|
32 foaf:maker "Chris Sutton";
|
cannam@135
|
33 foaf:maker "Yves Raimond";
|
cannam@135
|
34 foaf:maker "David Pastor Escuredo";
|
cannam@135
|
35 dc:date "$Date: 2008/05/21 17:05:11 $";
|
cannam@135
|
36 .
|
cannam@135
|
37
|
cannam@135
|
38 vs:term_status a owl:AnnotationProperty.
|
cannam@135
|
39
|
cannam@135
|
40 #Authors foaf
|
cannam@135
|
41
|
cannam@135
|
42 #############################################
|
cannam@141
|
43 # Part 1: Describing a Vamp plugin
|
cannam@135
|
44 #############################################
|
cannam@135
|
45
|
cannam@136
|
46 #########################################
|
cannam@136
|
47 # CLASSES
|
cannam@136
|
48 #########################################
|
cannam@136
|
49
|
cannam@141
|
50 # Note: we don't include a Feature concept because we rely on the Audio Feature ontology
|
cannam@141
|
51 # Note: we additionally define a Transform concept to link the running context
|
cannam@135
|
52
|
cannam@135
|
53 vamp:Plugin
|
cannam@135
|
54 a owl:Class;
|
cannam@135
|
55 rdfs:label "Vamp Plugin";
|
cannam@135
|
56 rdfs:comment """
|
cannam@141
|
57 A Vamp plugin is an implementation of an audio feature extraction algorithm using the Vamp API.
|
cannam@135
|
58 """;
|
cannam@135
|
59 vs:term_status "stable";
|
cannam@135
|
60 .
|
cannam@135
|
61
|
cannam@135
|
62 vamp:PluginLibrary
|
cannam@135
|
63 a owl:Class;
|
cannam@135
|
64 rdfs:label "Vamp Plugin Library";
|
cannam@135
|
65 rdfs:comment """
|
cannam@141
|
66 Library of Vamp Plugins. This may need to include rights.
|
cannam@135
|
67 """;
|
cannam@135
|
68 vs:term_status "stable";
|
cannam@135
|
69 .
|
cannam@135
|
70
|
cannam@135
|
71 vamp:ParameterDescriptor
|
cannam@135
|
72 a owl:Class;
|
cannam@135
|
73 rdfs:label "Vamp Plugin Parameter Descriptor";
|
cannam@135
|
74 rdfs:comment """
|
cannam@141
|
75 Descriptor for a plugin parameter. Hosts need to know about the specific type and form of the parameters of a particular plugin for a correct transform setup.
|
cannam@135
|
76 """;
|
cannam@135
|
77 vs:term_status "stable";
|
cannam@135
|
78 .
|
cannam@135
|
79
|
cannam@135
|
80 vamp:PluginOutput
|
cannam@135
|
81 a owl:Class;
|
cannam@135
|
82 rdfs:label "Vamp Plugin output descriptor";
|
cannam@135
|
83 rdfs:comment """
|
cannam@141
|
84 Descriptor for an output of a plugin. This descriptor provides information that is necessary to correctly interpret the output features. The output type will determine how to read the temporal information of the extracted features and how to manage the burden of ouput data.
|
cannam@135
|
85 """;
|
cannam@135
|
86 vs:term_status "unstable";
|
cannam@135
|
87 .
|
cannam@135
|
88
|
cannam@135
|
89 vamp:DenseOutput
|
cannam@135
|
90 a owl:Class;
|
cannam@135
|
91 rdfs:subClassOf vamp:PluginOutput;
|
cannam@136
|
92 rdfs:label "Dense output";
|
cannam@135
|
93 rdfs:comment """
|
cannam@141
|
94 Specific output type for data evenly spaced in time, which may be of high volume and which it is usually desirable to represent in a compact form.
|
cannam@135
|
95 """;
|
cannam@135
|
96 vs:term_status "unstable";
|
cannam@135
|
97 .
|
cannam@135
|
98
|
cannam@135
|
99 vamp:SparseOutput
|
cannam@135
|
100 a owl:Class;
|
cannam@136
|
101 rdfs:label "Sparse output";
|
cannam@135
|
102 rdfs:subClassOf vamp:PluginOutput;
|
cannam@135
|
103 rdfs:comment """
|
cannam@141
|
104 Specific output type for data that consist of features that require their own individual temporal information.
|
cannam@135
|
105 """;
|
cannam@135
|
106 vs:term_status "unstable";
|
cannam@135
|
107 .
|
cannam@135
|
108
|
cannam@135
|
109 vamp:TrackLevelOutput
|
cannam@135
|
110 a owl:Class;
|
cannam@136
|
111 rdfs:label "track level output";
|
cannam@135
|
112 rdfs:subClassOf vamp:PluginOutput;
|
cannam@135
|
113 rdfs:comment """
|
cannam@141
|
114 Specific output type for track level information. The Vamp API does not provide for this sort of output directly, so this will require a "hacky" interpretation of the feature timestamp to establish that it reflects track metadata instead of temporal data.
|
cannam@135
|
115 """;
|
cannam@135
|
116 vs:term_status "unstable";
|
cannam@135
|
117 .
|
cannam@135
|
118
|
cannam@135
|
119 vamp:PluginProgram
|
cannam@135
|
120 a owl:Class;
|
cannam@135
|
121 rdfs:label "Plugin program";
|
cannam@135
|
122 rdfs:comment """
|
cannam@141
|
123 The program is a predefined context of parameters. We may not need a concept for this and just a property linking a string representing the program name.
|
cannam@135
|
124 """;
|
cannam@136
|
125 vs:term_status "unstable";
|
cannam@135
|
126 .
|
cannam@135
|
127
|
cannam@135
|
128 vamp:Feature
|
cannam@135
|
129 a owl:Class;
|
cannam@135
|
130 rdfs:label "Vamp Feature";
|
cannam@135
|
131 rdfs:comment "This may be removed mighty soon as we rely on the Audio Features Ontology for this";
|
cannam@135
|
132 vs:term_status "deprecated";
|
cannam@135
|
133 .
|
cannam@135
|
134
|
cannam@141
|
135 # Classes for enumerations in the Vamp API
|
cannam@135
|
136
|
cannam@135
|
137 vamp:InputDomain
|
cannam@135
|
138 a owl:Class;
|
cannam@135
|
139 rdfs:label "Plugin input domain";
|
cannam@136
|
140 rdfs:comment """
|
cannam@141
|
141 Plugins declare the input domain they require, so the host can convert the input data properly. Hosts using the Vamp SDK PluginAdapter to wrap plugins should see this work done for them automatically - see the Vamp documentation.
|
cannam@136
|
142 """;
|
cannam@135
|
143 vs:term_status "stable";
|
cannam@135
|
144 .
|
cannam@135
|
145
|
cannam@135
|
146 vamp:SampleType
|
cannam@135
|
147 a owl:Class;
|
cannam@135
|
148 rdfs:label "sample type";
|
cannam@136
|
149 rdfs:comment """
|
cannam@141
|
150 The sample type specifies the temporal information of the plugin output. This information should be combined with the output type for a correct interpretation.
|
cannam@136
|
151 """;
|
cannam@135
|
152 vs:term_status "stable";
|
cannam@135
|
153 .
|
cannam@135
|
154
|
cannam@135
|
155 ##################################################################
|
cannam@136
|
156 # PROPERTIES.
|
cannam@135
|
157 ##################################################################
|
cannam@135
|
158
|
cannam@135
|
159 ##### Plugin properties
|
cannam@135
|
160
|
cannam@135
|
161 vamp:parameter_descriptor
|
cannam@135
|
162 a rdf:Property;
|
cannam@135
|
163 a owl:ObjectProperty;
|
cannam@135
|
164 rdfs:label "parameter descriptor";
|
cannam@135
|
165 rdfs:comment """
|
cannam@141
|
166 Links each parameter descriptor to the plugin.
|
cannam@135
|
167 """;
|
cannam@135
|
168 rdfs:range vamp:ParameterDescriptor;
|
cannam@135
|
169 rdfs:domain vamp:Plugin;
|
cannam@135
|
170 vs:term_status "stable";
|
cannam@135
|
171 .
|
cannam@135
|
172
|
cannam@135
|
173 vamp:output_descriptor
|
cannam@135
|
174 a rdf:Property;
|
cannam@135
|
175 a owl:ObjectProperty;
|
cannam@135
|
176 rdfs:label "output descriptor";
|
cannam@135
|
177 rdfs:comment """
|
cannam@141
|
178 Links each output type to the plugin.
|
cannam@135
|
179 """;
|
cannam@135
|
180 rdfs:range vamp:PluginOutput;
|
cannam@135
|
181 rdfs:domain vamp:Plugin;
|
cannam@135
|
182 vs:term_status "stable";
|
cannam@135
|
183 .
|
cannam@135
|
184
|
cannam@136
|
185 ##### Plugin Library properties (could include affiliation, rights...)
|
cannam@135
|
186
|
cannam@135
|
187 vamp:available_plugin
|
cannam@135
|
188 a rdf:Property;
|
cannam@135
|
189 a owl:ObjectProperty;
|
cannam@135
|
190 rdfs:label "available plugin";
|
cannam@135
|
191 rdfs:comment """
|
cannam@141
|
192 Available plugins in the library
|
cannam@135
|
193 """;
|
cannam@135
|
194 rdfs:range vamp:Plugin;
|
cannam@135
|
195 rdfs:domain vamp:PluginLibrary;
|
cannam@135
|
196 vs:term_status "stable";
|
cannam@135
|
197 .
|
cannam@135
|
198
|
cannam@136
|
199 #### Plugin Descriptor properties
|
cannam@135
|
200
|
cannam@135
|
201 vamp:identifier
|
cannam@135
|
202 a rdf:Property;
|
cannam@135
|
203 a owl:DatatypeProperty;
|
cannam@135
|
204 rdfs:label "plugin identifier";
|
cannam@135
|
205 rdfs:comment """
|
cannam@141
|
206 Machine-readable identifier for a Vamp plugin within the scope of its library, or for a plugin descriptor within the scope of the plugin.
|
cannam@135
|
207 """;
|
cannam@138
|
208 rdfs:domain vamp:Plugin;
|
cannam@135
|
209 rdfs:domain vamp:PluginProgram;
|
cannam@135
|
210 rdfs:domain vamp:PluginOutput;
|
cannam@135
|
211 rdfs:domain vamp:ParameterDescriptor;
|
cannam@135
|
212 vs:term_status "stable";
|
cannam@135
|
213 .
|
cannam@135
|
214
|
cannam@135
|
215 vamp:name
|
cannam@135
|
216 a rdf:Property;
|
cannam@135
|
217 a owl:DatatypeProperty;
|
cannam@135
|
218 rdfs:label "plugin name";
|
cannam@135
|
219 rdfs:comment """
|
cannam@135
|
220 Human-readable identifier for the plugin.
|
cannam@135
|
221 """;
|
cannam@138
|
222 rdfs:domain vamp:Plugin;
|
cannam@135
|
223 vs:term_status "stable";
|
cannam@135
|
224 .
|
cannam@135
|
225
|
cannam@135
|
226 vamp:vamp_API_version
|
cannam@135
|
227 a rdf:Property;
|
cannam@135
|
228 a owl:DatatypeProperty;
|
cannam@135
|
229 rdfs:label "vamp API version";
|
cannam@135
|
230 rdfs:comment """
|
cannam@141
|
231 Version of the Vamp API used to implement this plugin.
|
cannam@135
|
232 """;
|
cannam@138
|
233 rdfs:domain vamp:Plugin;
|
cannam@135
|
234 vs:term_status "stable";
|
cannam@135
|
235 .
|
cannam@135
|
236
|
cannam@135
|
237 vamp:input_domain
|
cannam@135
|
238 a rdf:Property;
|
cannam@135
|
239 a owl:DatatypeProperty;
|
cannam@135
|
240 rdfs:label "input domain";
|
cannam@135
|
241 rdfs:comment """
|
cannam@141
|
242 Input domain required by the plugin (time or frequency).
|
cannam@135
|
243 """;
|
cannam@135
|
244 rdfs:domain vamp:Plugin;
|
cannam@135
|
245 rdfs:range vamp:InputDomain;
|
cannam@135
|
246 vs:term_status "stable";
|
cannam@135
|
247 .
|
cannam@135
|
248
|
cannam@141
|
249 # Note that other properties like maker can be linked to the plugin descriptor using other namespaces
|
cannam@135
|
250
|
cannam@135
|
251 ##### Parameter Descriptor properties
|
cannam@135
|
252
|
cannam@141
|
253 # Note: Identifier has been already defined
|
cannam@135
|
254
|
cannam@135
|
255 vamp:max_value
|
cannam@135
|
256 a rdf:Property;
|
cannam@135
|
257 a owl:DatatypeProperty;
|
cannam@135
|
258 a owl:FunctionalProperty;
|
cannam@135
|
259 rdfs:label "max value";
|
cannam@136
|
260 rdfs:comment """
|
cannam@136
|
261 Maximum value of the parameter range
|
cannam@136
|
262 """;
|
cannam@135
|
263 rdfs:range vamp:ParameterDescriptor;
|
cannam@135
|
264 rdfs:range vamp:PluginOutput;
|
cannam@135
|
265 vs:term_status "unstable";
|
cannam@135
|
266 .
|
cannam@135
|
267
|
cannam@135
|
268 vamp:min_value
|
cannam@135
|
269 a rdf:Property;
|
cannam@135
|
270 a owl:DatatypeProperty;
|
cannam@135
|
271 a owl:FunctionalProperty;
|
cannam@135
|
272 rdfs:label "min value";
|
cannam@136
|
273 rdfs:comment """
|
cannam@136
|
274 Minimum value of the parameter range
|
cannam@136
|
275 """;
|
cannam@135
|
276 rdfs:range vamp:ParameterDescriptor;
|
cannam@135
|
277 rdfs:range vamp:PluginOutput;
|
cannam@135
|
278 vs:term_status "unstable";
|
cannam@135
|
279 .
|
cannam@135
|
280
|
cannam@135
|
281 vamp:default_value
|
cannam@135
|
282 a rdf:Property;
|
cannam@135
|
283 a owl:DatatypeProperty;
|
cannam@135
|
284 a owl:FunctionalProperty;
|
cannam@135
|
285 rdfs:label "default value";
|
cannam@136
|
286 rdfs:comment """
|
cannam@136
|
287 Default value of the parameter
|
cannam@136
|
288 """;
|
cannam@135
|
289 rdfs:range vamp:ParameterDescriptor;
|
cannam@135
|
290 vs:term_status "unstable";
|
cannam@135
|
291 .
|
cannam@135
|
292
|
cannam@135
|
293 ########Output Descriptor properties
|
cannam@135
|
294
|
cannam@135
|
295 vamp:fixed_bin_count
|
cannam@135
|
296 a rdf:Property;
|
cannam@135
|
297 a owl:DatatypeProperty;
|
cannam@135
|
298 rdfs:label "fixed bin count";
|
cannam@136
|
299 rdfs:comment """
|
cannam@136
|
300 Fixed bin count. A boolean type.
|
cannam@136
|
301 """;
|
cannam@135
|
302 rdfs:domain vamp:PluginOutput;
|
cannam@135
|
303 vs:term_status "unstable";
|
cannam@135
|
304 .
|
cannam@135
|
305
|
cannam@138
|
306 vamp:is_quantized
|
cannam@138
|
307 a rdf:Property;
|
cannam@138
|
308 a owl:DatatypeProperty;
|
cannam@138
|
309 rdfs:label "is quantised";
|
cannam@138
|
310 rdfs:comment """
|
cannam@138
|
311 Quantised. A boolean type.
|
cannam@138
|
312 """;
|
cannam@138
|
313 rdfs:domain vamp:PluginOutput;
|
cannam@138
|
314 vs:term_status "unstable";
|
cannam@138
|
315 .
|
cannam@138
|
316
|
cannam@135
|
317 vamp:unit
|
cannam@135
|
318 a rdf:Property;
|
cannam@135
|
319 a owl:DatatypeProperty;
|
cannam@135
|
320 a owl:FunctionalProperty;
|
cannam@135
|
321 rdfs:label "unit";
|
cannam@136
|
322 rdfs:comment """
|
cannam@136
|
323 Unit of the output/parameter. A string type
|
cannam@136
|
324 """;
|
cannam@135
|
325 rdfs:domain vamp:PluginOutput;
|
cannam@135
|
326 rdfs:domain vamp:ParameterDescriptor;
|
cannam@135
|
327 vs:term_status "unstable";
|
cannam@135
|
328 .
|
cannam@135
|
329
|
cannam@135
|
330 vamp:sample_rate
|
cannam@135
|
331 a rdf:Property;
|
cannam@135
|
332 a owl:DatatypeProperty;
|
cannam@135
|
333 rdfs:label "sample rate";
|
cannam@136
|
334 rdfs:comment """
|
cannam@136
|
335 Sample rate of the output if any. Should be read depending on SampleType and Output classes.
|
cannam@136
|
336 """;
|
cannam@135
|
337 rdfs:domain vamp:PluginOutput;
|
cannam@135
|
338 vs:term_status "unstable";
|
cannam@135
|
339 .
|
cannam@135
|
340
|
cannam@138
|
341 vamp:quantize_step
|
cannam@135
|
342 a rdf:Property;
|
cannam@135
|
343 a owl:FunctionalProperty;
|
cannam@135
|
344 a owl:DatatypeProperty;
|
cannam@135
|
345 rdfs:label "quantized step";
|
cannam@136
|
346 rdfs:comment """
|
cannam@138
|
347 Quantize step. Only defined if is_quantised is true
|
cannam@136
|
348 """;
|
cannam@135
|
349 rdfs:domain vamp:PluginOutput;
|
cannam@135
|
350 rdfs:domain vamp:ParameterDescriptor;
|
cannam@135
|
351 vs:term_status "unstable";
|
cannam@135
|
352 .
|
cannam@135
|
353
|
cannam@135
|
354 vamp:bin_count
|
cannam@135
|
355 a rdf:Property;
|
cannam@135
|
356 a owl:DatatypeProperty;
|
cannam@135
|
357 rdfs:label "bin count";
|
cannam@136
|
358 rdfs:comment """
|
cannam@136
|
359 Number of elements of the bin output. This information is necessary to define the output as belonging to a specific subclass of Plugin Output.
|
cannam@136
|
360 """;
|
cannam@135
|
361 rdfs:domain vamp:PluginOutput;
|
cannam@135
|
362 vs:term_status "unstable";
|
cannam@135
|
363 .
|
cannam@135
|
364
|
cannam@135
|
365 vamp:bin_names
|
cannam@135
|
366 a rdf:Property;
|
cannam@135
|
367 a owl:DatatypeProperty;
|
cannam@135
|
368 rdfs:label "bin names";
|
cannam@136
|
369 rdfs:comment """
|
cannam@136
|
370 List of bin names if available
|
cannam@136
|
371 """;
|
cannam@135
|
372 rdfs:domain vamp:PluginOutput;
|
cannam@135
|
373 vs:term_status "unstable";
|
cannam@135
|
374 .
|
cannam@135
|
375
|
cannam@135
|
376 vamp:sample_type
|
cannam@135
|
377 a rdf:Property;
|
cannam@135
|
378 a owl:DatatypeProperty;
|
cannam@135
|
379 a owl:FunctionalProperty;
|
cannam@135
|
380 rdfs:label "sample type";
|
cannam@136
|
381 rdfs:comment """
|
cannam@136
|
382 The sample type specifies the temporal information of the output.
|
cannam@136
|
383 """;
|
cannam@135
|
384 rdfs:domain vamp:PluginOutput;
|
cannam@135
|
385 rdfs:range vamp:SampleType;
|
cannam@135
|
386 vs:term_status "unstable";
|
cannam@135
|
387 .
|
cannam@135
|
388
|
cannam@135
|
389 vamp:computes_feature_type
|
cannam@135
|
390 a rdf:Property;
|
cannam@135
|
391 a owl:ObjectProperty;
|
cannam@135
|
392 rdfs:label "feature type";
|
cannam@135
|
393 rdfs:comment """
|
cannam@136
|
394 Feature Types output by the plugin. Links the vamp ontology to the audio features ontology.
|
cannam@135
|
395 """;
|
cannam@135
|
396 rdfs:domain vamp:PluginOutput;
|
cannam@136
|
397 rdfs:range af:AudioFeature;
|
cannam@135
|
398 vs:term_status "unstable";
|
cannam@135
|
399 .
|
cannam@138
|
400
|
cannam@138
|
401 vamp:computes_event_type
|
cannam@138
|
402 a rdf:Property;
|
cannam@138
|
403 a owl:ObjectProperty;
|
cannam@138
|
404 rdfs:label "event type";
|
cannam@138
|
405 rdfs:comment """
|
cannam@138
|
406 Event Type output by the plugin.
|
cannam@138
|
407 """;
|
cannam@138
|
408 rdfs:domain vamp:PluginOutput;
|
cannam@138
|
409 rdfs:range event:Event;
|
cannam@138
|
410 vs:term_status "unstable";
|
cannam@138
|
411 .
|
cannam@135
|
412
|
cannam@135
|
413 ########################
|
cannam@135
|
414 # INDIVIDUALS
|
cannam@135
|
415 ########################
|
cannam@135
|
416
|
cannam@138
|
417 vamp:TimeDomain
|
cannam@135
|
418 a vamp:InputDomain;
|
cannam@135
|
419 .
|
cannam@135
|
420
|
cannam@138
|
421 vamp:FrequencyDomain
|
cannam@135
|
422 a vamp:InputDomain;
|
cannam@135
|
423 .
|
cannam@135
|
424
|
cannam@135
|
425 vamp:OneSamplePerStep
|
cannam@135
|
426 a vamp:SampleType;
|
cannam@135
|
427 .
|
cannam@135
|
428
|
cannam@135
|
429 vamp:FixedSampleRate
|
cannam@135
|
430 a vamp:SampleType;
|
cannam@135
|
431 .
|
cannam@135
|
432
|
cannam@135
|
433 vamp:VariableSampleRate
|
cannam@135
|
434 a vamp:SampleType;
|
cannam@135
|
435 .
|
cannam@135
|
436
|
cannam@135
|
437 ################################################### END OF THE VAMP API DESCRIPTION ############################################################
|
cannam@135
|
438
|
cannam@135
|
439
|
cannam@135
|
440 #############################################
|
cannam@141
|
441 # Part 2: Classes to describe plugin execution. TRANSFORM
|
cannam@135
|
442 #############################################
|
cannam@135
|
443
|
cannam@141
|
444 # Note: we need to define this part of the ontology to give a minimun common standard for hosts.
|
cannam@141
|
445 # Note: this may split up in some other ontology or become part of the DSP namespace
|
cannam@135
|
446
|
cannam@135
|
447 vamp:Transform
|
cannam@135
|
448 a owl:Class;
|
cannam@136
|
449 rdfs:label "Transform";
|
cannam@135
|
450 vs:term_status "stable";
|
cannam@135
|
451 rdfs:comment """
|
cannam@141
|
452 The Transform defines the environment of any audio processing computation.
|
cannam@135
|
453 """;
|
cannam@135
|
454 .
|
cannam@135
|
455
|
cannam@135
|
456 vamp:Parameter
|
cannam@135
|
457 a owl:Class;
|
cannam@135
|
458 rdfs:label "Parameter";
|
cannam@135
|
459 vs:term_status "unstable";
|
cannam@135
|
460 rdfs:comment """
|
cannam@141
|
461 Parameter used by the plugin transform to set up the plugin. The parameter class instances should be instantiated according to the specific vamp:PluginDescriptor instance for each plugin.
|
cannam@136
|
462 """;
|
cannam@136
|
463 .
|
cannam@136
|
464
|
cannam@136
|
465 vamp:Configuration
|
cannam@136
|
466 a owl:Class;
|
cannam@136
|
467 rdfs:label "Configuration";
|
cannam@136
|
468 vs:term_status "unstable";
|
cannam@136
|
469 rdfs:comment """
|
cannam@141
|
470 For extension (key/value data provided to DSSI plugins, not relevant to Vamp)
|
cannam@136
|
471 """;
|
cannam@136
|
472 .
|
cannam@136
|
473
|
cannam@136
|
474 vamp:TransformType
|
cannam@136
|
475 a owl:Class;
|
cannam@136
|
476 rdfs:label "Transform Type";
|
cannam@136
|
477 vs:term_status "unstable";
|
cannam@136
|
478 rdfs:comment """
|
cannam@136
|
479 Specifies the type of transform. May be feature extraction, effect...
|
cannam@136
|
480 """;
|
cannam@136
|
481 .
|
cannam@136
|
482
|
cannam@141
|
483 ##individuals of transformtype
|
cannam@136
|
484 vamp:FeatureExtraction
|
cannam@136
|
485 a vamp:TransformType;
|
cannam@136
|
486 rdfs:label "Feature Extraction";
|
cannam@136
|
487 vs:term_status "unstable";
|
cannam@136
|
488 rdfs:comment """
|
cannam@136
|
489 Feature extraction transform. This may be just a subclass of Transform...
|
cannam@136
|
490 """;
|
cannam@136
|
491 .
|
cannam@136
|
492
|
cannam@136
|
493 vamp:Effect
|
cannam@136
|
494 a vamp:TransformType;
|
cannam@136
|
495 rdfs:label "Effect";
|
cannam@136
|
496 vs:term_status "unstable";
|
cannam@136
|
497 rdfs:comment """
|
cannam@136
|
498 Effect transform. This may be just a subclass of Transform...
|
cannam@135
|
499 """;
|
cannam@135
|
500 .
|
cannam@135
|
501
|
cannam@135
|
502 ################
|
cannam@135
|
503 # Properties
|
cannam@135
|
504 ################
|
cannam@135
|
505
|
cannam@135
|
506 ##### Plugin Transform properties
|
cannam@135
|
507
|
cannam@136
|
508 vamp:identifier
|
cannam@136
|
509 rdfs:domain vamp:Transform;
|
cannam@136
|
510 #the ID is the plugin ID?
|
cannam@136
|
511 .
|
cannam@136
|
512
|
cannam@136
|
513 vamp:engine
|
cannam@135
|
514 a rdf:Property;
|
cannam@135
|
515 a owl:ObjectProperty;
|
cannam@135
|
516 rdfs:label "plugin";
|
cannam@135
|
517 vs:term_status "stable";
|
cannam@135
|
518 rdfs:comment """
|
cannam@141
|
519 Specifies the sort of plugin in execution. This is an extension to use Transform with other plugin libraries
|
cannam@135
|
520 """;
|
cannam@136
|
521 rdfs:domain vamp:Transform;
|
cannam@135
|
522 rdfs:range vamp:Plugin;
|
cannam@135
|
523 .
|
cannam@135
|
524
|
cannam@135
|
525 vamp:program
|
cannam@135
|
526 a rdf:Property;
|
cannam@135
|
527 a owl:ObjectProperty;
|
cannam@135
|
528 a owl:FunctionalProperty;
|
cannam@135
|
529 rdfs:label "program";
|
cannam@135
|
530 vs:term_status "stable";
|
cannam@135
|
531 rdfs:comment """
|
cannam@141
|
532 Specifies the program to set the plugin in execution. Here the plugin program matches with the one in the plugin descriptor. There is not descriptor required for the program (just a string), is it?
|
cannam@135
|
533 """;
|
cannam@135
|
534 rdfs:domain vamp:Transform;
|
cannam@135
|
535 rdfs:range vamp:PluginProgram;
|
cannam@135
|
536 .
|
cannam@135
|
537
|
cannam@136
|
538 vamp:program
|
cannam@136
|
539 a rdf:Property;
|
cannam@136
|
540 a owl:ObjectProperty;
|
cannam@136
|
541 a owl:FunctionalProperty;
|
cannam@136
|
542 rdfs:label "program";
|
cannam@136
|
543 vs:term_status "stable";
|
cannam@136
|
544 rdfs:comment """
|
cannam@141
|
545 Extension for configuration.
|
cannam@136
|
546 """;
|
cannam@136
|
547 rdfs:domain vamp:Transform;
|
cannam@136
|
548 rdfs:range vamp:Configuration;
|
cannam@136
|
549 .
|
cannam@136
|
550
|
cannam@135
|
551 vamp:parameter
|
cannam@135
|
552 a rdf:Property;
|
cannam@135
|
553 a owl:ObjectProperty;
|
cannam@135
|
554 rdfs:label "parameter";
|
cannam@135
|
555 vs:term_status "stable";
|
cannam@135
|
556 rdfs:comment """
|
cannam@135
|
557 Specifies the parameter to set the plugin in execution.
|
cannam@135
|
558 """;
|
cannam@136
|
559 rdfs:domain vamp:Transform;
|
cannam@135
|
560 rdfs:range vamp:Parameter;
|
cannam@135
|
561 .
|
cannam@135
|
562
|
cannam@135
|
563 vamp:step_size
|
cannam@135
|
564 a rdf:Property;
|
cannam@135
|
565 a owl:DatatypeProperty;
|
cannam@135
|
566 a owl:FunctionalProperty;
|
cannam@135
|
567 rdfs:label "step size";
|
cannam@135
|
568 vs:term_status "stable";
|
cannam@135
|
569 rdfs:comment """
|
cannam@135
|
570 Specifies the step size for the framing.
|
cannam@135
|
571 """;
|
cannam@136
|
572 rdfs:domain vamp:Transform;
|
cannam@135
|
573 .
|
cannam@135
|
574
|
cannam@135
|
575 vamp:block_size
|
cannam@135
|
576 a rdf:Property;
|
cannam@135
|
577 a owl:DatatypeProperty;
|
cannam@135
|
578 a owl:FunctionalProperty;
|
cannam@135
|
579 rdfs:label "block size";
|
cannam@135
|
580 vs:term_status "stable";
|
cannam@135
|
581 rdfs:comment """
|
cannam@135
|
582 Specifies the block size for the framing.
|
cannam@135
|
583 """;
|
cannam@136
|
584 rdfs:domain vamp:Transform;
|
cannam@135
|
585 .
|
cannam@135
|
586
|
cannam@135
|
587 vamp:sample_rate
|
cannam@135
|
588 a rdf:Property;
|
cannam@135
|
589 a owl:DatatypeProperty;
|
cannam@135
|
590 a owl:FunctionalProperty;
|
cannam@135
|
591 rdfs:label "sample rate";
|
cannam@135
|
592 vs:term_status "stable";
|
cannam@135
|
593 rdfs:comment """
|
cannam@135
|
594 Specifies the sample rate if it is not constant.
|
cannam@135
|
595 """;
|
cannam@136
|
596 rdfs:domain vamp:Transform;
|
cannam@135
|
597 .
|
cannam@135
|
598
|
cannam@135
|
599 vamp:transform_type
|
cannam@135
|
600 a rdf:Property;
|
cannam@136
|
601 a owl:ObjectProperty;
|
cannam@135
|
602 a owl:FunctionalProperty;
|
cannam@135
|
603 rdfs:label "transform type";
|
cannam@135
|
604 vs:term_status "unstable";
|
cannam@135
|
605 rdfs:comment """
|
cannam@136
|
606 Specifies the transform type (we could do this by subclassin transform instead of using a property).
|
cannam@135
|
607 """;
|
cannam@136
|
608 rdfs:domain vamp:Transform;
|
cannam@135
|
609 .
|
cannam@135
|
610
|
cannam@135
|
611 vamp:window_type
|
cannam@135
|
612 a rdf:Property;
|
cannam@135
|
613 a owl:DatatypeProperty;
|
cannam@135
|
614 a owl:FunctionalProperty;
|
cannam@135
|
615 rdfs:label "window type";
|
cannam@135
|
616 vs:term_status "unstable";
|
cannam@135
|
617 rdfs:comment """
|
cannam@135
|
618 Specifies the window type (they should be individuals and clearly not here).
|
cannam@135
|
619 """;
|
cannam@136
|
620 rdfs:domain vamp:Transform;
|
cannam@135
|
621 .
|
cannam@135
|
622
|
cannam@136
|
623 vamp:start
|
cannam@136
|
624 a rdf:Property;
|
cannam@136
|
625 a owl:DatatypeProperty;
|
cannam@136
|
626 a owl:FunctionalProperty;
|
cannam@136
|
627 rdfs:label "start";
|
cannam@136
|
628 vs:term_status "unstable";
|
cannam@136
|
629 rdfs:comment """
|
cannam@136
|
630 Specifies temporal information when processing a data stream.
|
cannam@136
|
631 """;
|
cannam@136
|
632 rdfs:domain vamp:Transform;
|
cannam@136
|
633 .
|
cannam@136
|
634
|
cannam@136
|
635 vamp:duration
|
cannam@136
|
636 a rdf:Property;
|
cannam@136
|
637 a owl:DatatypeProperty;
|
cannam@136
|
638 a owl:FunctionalProperty;
|
cannam@136
|
639 rdfs:label "start";
|
cannam@136
|
640 vs:term_status "unstable";
|
cannam@136
|
641 rdfs:comment """
|
cannam@136
|
642 Specifies temporal information when processing a data stream.
|
cannam@136
|
643 """;
|
cannam@136
|
644 rdfs:domain vamp:Transform;
|
cannam@136
|
645 .
|
cannam@136
|
646
|
cannam@135
|
647 ##### Parameter properties
|
cannam@135
|
648
|
cannam@135
|
649 vamp:value
|
cannam@135
|
650 a rdf:Property;
|
cannam@135
|
651 a owl:DatatypeProperty;
|
cannam@135
|
652 a owl:FunctionalProperty;
|
cannam@135
|
653 rdfs:label "value";
|
cannam@135
|
654 vs:term_status "stable";
|
cannam@135
|
655 rdfs:comment """
|
cannam@135
|
656 Specifies the current value of the parameter.
|
cannam@135
|
657 """;
|
cannam@135
|
658 rdfs:domain vamp:Parameter;
|
cannam@135
|
659 .
|
cannam@135
|
660
|
cannam@135
|
661 vamp:parameter_descriptor
|
cannam@135
|
662 a rdf:Property;
|
cannam@135
|
663 a owl:ObjectProperty;
|
cannam@135
|
664 rdfs:label "parameter descriptor";
|
cannam@135
|
665 vs:term_status "stable";
|
cannam@135
|
666 rdfs:comment """
|
cannam@135
|
667 Specifies exactly the type of descriptor to set in the transform by linking it.
|
cannam@135
|
668 """;
|
cannam@135
|
669 rdfs:domain vamp:Parameter;
|
cannam@135
|
670 rdfs:range vamp:ParameterDescriptor;
|
cannam@135
|
671 .
|
cannam@135
|
672
|
cannam@135
|
673
|
cannam@135
|
674
|
cannam@135
|
675
|