annotate rdf/vamp.n3 @ 153:2282b572c386

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