annotate rdf/vamp.n3 @ 148:afd60ff5ceef

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