cannam@135: @prefix owl: . cannam@135: @prefix rdf: . cannam@135: @prefix rdfs: . cannam@135: @prefix xsd: . cannam@135: @prefix foaf: . cannam@135: @prefix vs: . cannam@135: @prefix list: . cannam@135: @prefix dc: . cannam@135: @prefix mo: . cannam@135: @prefix event: . cannam@135: @prefix af: . cannam@135: @prefix tl: . cannam@135: @prefix vamp: . cannam@135: @prefix : <> . cannam@135: cannam@135: <> cannam@135: a owl:Ontology; cannam@135: dc:title "Vamp Plugins Ontology"; cannam@135: rdfs:label "Vamp Plugins Ontology"; cannam@135: rdfs:comment """ cannam@141: Vamp Ontology. This ontology includes the following descriptions: cannam@136: cannam@141: - OWL description of the Vamp API cannam@141: - OWL description of the Transform environment necessary to set up the execution of any plugin cannam@136: cannam@136: This Ontology provides semantics to describe and control Vamp plugins in RDF. Any "RDF-speaker" host is therefore able to cannam@136: use this ontology to read, set up and execute plugins. cannam@141: The extracted features are expressed in terms of the Audio Features Ontology: http://purl.org/ontology/af/. cannam@141: For more information, please visit the Vamp Plugins website: http://www.vamp-plugins.org/ cannam@135: """; cannam@135: foaf:maker "Chris Cannam"; cannam@135: foaf:maker "Chris Sutton"; cannam@135: foaf:maker "Yves Raimond"; cannam@135: foaf:maker "David Pastor Escuredo"; cannam@135: dc:date "$Date: 2008/05/21 17:05:11 $"; cannam@135: . cannam@135: cannam@135: vs:term_status a owl:AnnotationProperty. cannam@135: cannam@135: #Authors foaf cannam@135: cannam@135: ############################################# cannam@141: # Part 1: Describing a Vamp plugin cannam@135: ############################################# cannam@135: cannam@136: ######################################### cannam@136: # CLASSES cannam@136: ######################################### cannam@136: cannam@141: # Note: we don't include a Feature concept because we rely on the Audio Feature ontology cannam@141: # Note: we additionally define a Transform concept to link the running context cannam@135: cannam@135: vamp:Plugin cannam@135: a owl:Class; cannam@135: rdfs:label "Vamp Plugin"; cannam@135: rdfs:comment """ cannam@141: A Vamp plugin is an implementation of an audio feature extraction algorithm using the Vamp API. cannam@135: """; cannam@135: vs:term_status "stable"; cannam@135: . cannam@135: cannam@135: vamp:PluginLibrary cannam@135: a owl:Class; cannam@135: rdfs:label "Vamp Plugin Library"; cannam@135: rdfs:comment """ cannam@141: Library of Vamp Plugins. This may need to include rights. cannam@135: """; cannam@135: vs:term_status "stable"; cannam@135: . cannam@135: cannam@135: vamp:ParameterDescriptor cannam@135: a owl:Class; cannam@135: rdfs:label "Vamp Plugin Parameter Descriptor"; cannam@135: rdfs:comment """ cannam@141: 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: """; cannam@135: vs:term_status "stable"; cannam@135: . cannam@135: cannam@135: vamp:PluginOutput cannam@135: a owl:Class; cannam@135: rdfs:label "Vamp Plugin output descriptor"; cannam@135: rdfs:comment """ cannam@141: 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: """; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@135: vamp:DenseOutput cannam@135: a owl:Class; cannam@135: rdfs:subClassOf vamp:PluginOutput; cannam@136: rdfs:label "Dense output"; cannam@135: rdfs:comment """ cannam@141: 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: """; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@135: vamp:SparseOutput cannam@135: a owl:Class; cannam@136: rdfs:label "Sparse output"; cannam@135: rdfs:subClassOf vamp:PluginOutput; cannam@135: rdfs:comment """ cannam@141: Specific output type for data that consist of features that require their own individual temporal information. cannam@135: """; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@135: vamp:TrackLevelOutput cannam@135: a owl:Class; cannam@136: rdfs:label "track level output"; cannam@135: rdfs:subClassOf vamp:PluginOutput; cannam@135: rdfs:comment """ cannam@141: 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: """; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@135: vamp:PluginProgram cannam@135: a owl:Class; cannam@135: rdfs:label "Plugin program"; cannam@135: rdfs:comment """ cannam@141: 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: """; cannam@136: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@135: vamp:Feature cannam@135: a owl:Class; cannam@135: rdfs:label "Vamp Feature"; cannam@135: rdfs:comment "This may be removed mighty soon as we rely on the Audio Features Ontology for this"; cannam@135: vs:term_status "deprecated"; cannam@135: . cannam@135: cannam@141: # Classes for enumerations in the Vamp API cannam@135: cannam@135: vamp:InputDomain cannam@135: a owl:Class; cannam@135: rdfs:label "Plugin input domain"; cannam@136: rdfs:comment """ cannam@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: """; cannam@135: vs:term_status "stable"; cannam@135: . cannam@135: cannam@135: vamp:SampleType cannam@135: a owl:Class; cannam@135: rdfs:label "sample type"; cannam@136: rdfs:comment """ cannam@141: 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: """; cannam@135: vs:term_status "stable"; cannam@135: . cannam@135: cannam@135: ################################################################## cannam@136: # PROPERTIES. cannam@135: ################################################################## cannam@135: cannam@135: ##### Plugin properties cannam@135: cannam@135: vamp:parameter_descriptor cannam@135: a rdf:Property; cannam@135: a owl:ObjectProperty; cannam@135: rdfs:label "parameter descriptor"; cannam@135: rdfs:comment """ cannam@141: Links each parameter descriptor to the plugin. cannam@135: """; cannam@135: rdfs:range vamp:ParameterDescriptor; cannam@135: rdfs:domain vamp:Plugin; cannam@135: vs:term_status "stable"; cannam@135: . cannam@135: cannam@135: vamp:output_descriptor cannam@135: a rdf:Property; cannam@135: a owl:ObjectProperty; cannam@135: rdfs:label "output descriptor"; cannam@135: rdfs:comment """ cannam@141: Links each output type to the plugin. cannam@135: """; cannam@135: rdfs:range vamp:PluginOutput; cannam@135: rdfs:domain vamp:Plugin; cannam@135: vs:term_status "stable"; cannam@135: . cannam@135: cannam@136: ##### Plugin Library properties (could include affiliation, rights...) cannam@135: cannam@135: vamp:available_plugin cannam@135: a rdf:Property; cannam@135: a owl:ObjectProperty; cannam@135: rdfs:label "available plugin"; cannam@135: rdfs:comment """ cannam@141: Available plugins in the library cannam@135: """; cannam@135: rdfs:range vamp:Plugin; cannam@135: rdfs:domain vamp:PluginLibrary; cannam@135: vs:term_status "stable"; cannam@135: . cannam@135: cannam@136: #### Plugin Descriptor properties cannam@135: cannam@135: vamp:identifier cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: rdfs:label "plugin identifier"; cannam@135: rdfs:comment """ cannam@141: 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: """; cannam@138: rdfs:domain vamp:Plugin; cannam@143: rdfs:domain vamp:PluginLibrary; cannam@135: rdfs:domain vamp:PluginProgram; cannam@135: rdfs:domain vamp:PluginOutput; cannam@135: rdfs:domain vamp:ParameterDescriptor; cannam@135: vs:term_status "stable"; cannam@135: . cannam@135: cannam@135: vamp:name cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: rdfs:label "plugin name"; cannam@135: rdfs:comment """ cannam@135: Human-readable identifier for the plugin. cannam@135: """; cannam@138: rdfs:domain vamp:Plugin; cannam@135: vs:term_status "stable"; cannam@135: . cannam@135: cannam@135: vamp:vamp_API_version cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: rdfs:label "vamp API version"; cannam@135: rdfs:comment """ cannam@141: Version of the Vamp API used to implement this plugin. cannam@135: """; cannam@138: rdfs:domain vamp:Plugin; cannam@135: vs:term_status "stable"; cannam@135: . cannam@135: cannam@135: vamp:input_domain cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: rdfs:label "input domain"; cannam@135: rdfs:comment """ cannam@141: Input domain required by the plugin (time or frequency). cannam@135: """; cannam@135: rdfs:domain vamp:Plugin; cannam@135: rdfs:range vamp:InputDomain; cannam@135: vs:term_status "stable"; cannam@135: . cannam@135: cannam@141: # Note that other properties like maker can be linked to the plugin descriptor using other namespaces cannam@135: cannam@135: ##### Parameter Descriptor properties cannam@135: cannam@141: # Note: Identifier has been already defined cannam@135: cannam@135: vamp:max_value cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: a owl:FunctionalProperty; cannam@135: rdfs:label "max value"; cannam@136: rdfs:comment """ cannam@136: Maximum value of the parameter range cannam@136: """; cannam@135: rdfs:range vamp:ParameterDescriptor; cannam@135: rdfs:range vamp:PluginOutput; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@135: vamp:min_value cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: a owl:FunctionalProperty; cannam@135: rdfs:label "min value"; cannam@136: rdfs:comment """ cannam@136: Minimum value of the parameter range cannam@136: """; cannam@135: rdfs:range vamp:ParameterDescriptor; cannam@135: rdfs:range vamp:PluginOutput; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@135: vamp:default_value cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: a owl:FunctionalProperty; cannam@135: rdfs:label "default value"; cannam@136: rdfs:comment """ cannam@136: Default value of the parameter cannam@136: """; cannam@135: rdfs:range vamp:ParameterDescriptor; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@135: ########Output Descriptor properties cannam@135: cannam@135: vamp:fixed_bin_count cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: rdfs:label "fixed bin count"; cannam@136: rdfs:comment """ cannam@136: Fixed bin count. A boolean type. cannam@136: """; cannam@135: rdfs:domain vamp:PluginOutput; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@138: vamp:is_quantized cannam@138: a rdf:Property; cannam@138: a owl:DatatypeProperty; cannam@138: rdfs:label "is quantised"; cannam@138: rdfs:comment """ cannam@138: Quantised. A boolean type. cannam@138: """; cannam@138: rdfs:domain vamp:PluginOutput; cannam@138: vs:term_status "unstable"; cannam@138: . cannam@138: cannam@135: vamp:unit cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: a owl:FunctionalProperty; cannam@135: rdfs:label "unit"; cannam@136: rdfs:comment """ cannam@136: Unit of the output/parameter. A string type cannam@136: """; cannam@135: rdfs:domain vamp:PluginOutput; cannam@135: rdfs:domain vamp:ParameterDescriptor; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@135: vamp:sample_rate cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: rdfs:label "sample rate"; cannam@136: rdfs:comment """ cannam@136: Sample rate of the output if any. Should be read depending on SampleType and Output classes. cannam@136: """; cannam@135: rdfs:domain vamp:PluginOutput; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@138: vamp:quantize_step cannam@135: a rdf:Property; cannam@135: a owl:FunctionalProperty; cannam@135: a owl:DatatypeProperty; cannam@135: rdfs:label "quantized step"; cannam@136: rdfs:comment """ cannam@138: Quantize step. Only defined if is_quantised is true cannam@136: """; cannam@135: rdfs:domain vamp:PluginOutput; cannam@135: rdfs:domain vamp:ParameterDescriptor; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@135: vamp:bin_count cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: rdfs:label "bin count"; cannam@136: rdfs:comment """ cannam@136: 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: """; cannam@135: rdfs:domain vamp:PluginOutput; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@135: vamp:bin_names cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: rdfs:label "bin names"; cannam@136: rdfs:comment """ cannam@136: List of bin names if available cannam@136: """; cannam@135: rdfs:domain vamp:PluginOutput; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@135: vamp:sample_type cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: a owl:FunctionalProperty; cannam@135: rdfs:label "sample type"; cannam@136: rdfs:comment """ cannam@136: The sample type specifies the temporal information of the output. cannam@136: """; cannam@135: rdfs:domain vamp:PluginOutput; cannam@135: rdfs:range vamp:SampleType; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@135: cannam@135: vamp:computes_feature_type cannam@135: a rdf:Property; cannam@135: a owl:ObjectProperty; cannam@135: rdfs:label "feature type"; cannam@135: rdfs:comment """ cannam@136: Feature Types output by the plugin. Links the vamp ontology to the audio features ontology. cannam@135: """; cannam@135: rdfs:domain vamp:PluginOutput; cannam@136: rdfs:range af:AudioFeature; cannam@135: vs:term_status "unstable"; cannam@135: . cannam@138: cannam@138: vamp:computes_event_type cannam@138: a rdf:Property; cannam@138: a owl:ObjectProperty; cannam@138: rdfs:label "event type"; cannam@138: rdfs:comment """ cannam@138: Event Type output by the plugin. cannam@138: """; cannam@138: rdfs:domain vamp:PluginOutput; cannam@138: rdfs:range event:Event; cannam@138: vs:term_status "unstable"; cannam@138: . cannam@135: cannam@135: ######################## cannam@135: # INDIVIDUALS cannam@135: ######################## cannam@135: cannam@138: vamp:TimeDomain cannam@135: a vamp:InputDomain; cannam@135: . cannam@135: cannam@138: vamp:FrequencyDomain cannam@135: a vamp:InputDomain; cannam@135: . cannam@135: cannam@135: vamp:OneSamplePerStep cannam@135: a vamp:SampleType; cannam@135: . cannam@135: cannam@135: vamp:FixedSampleRate cannam@135: a vamp:SampleType; cannam@135: . cannam@135: cannam@135: vamp:VariableSampleRate cannam@135: a vamp:SampleType; cannam@135: . cannam@135: cannam@135: ################################################### END OF THE VAMP API DESCRIPTION ############################################################ cannam@135: cannam@135: cannam@135: ############################################# cannam@141: # Part 2: Classes to describe plugin execution. TRANSFORM cannam@135: ############################################# cannam@135: cannam@141: # Note: we need to define this part of the ontology to give a minimun common standard for hosts. cannam@141: # Note: this may split up in some other ontology or become part of the DSP namespace cannam@135: cannam@135: vamp:Transform cannam@135: a owl:Class; cannam@136: rdfs:label "Transform"; cannam@135: vs:term_status "stable"; cannam@135: rdfs:comment """ cannam@141: The Transform defines the environment of any audio processing computation. cannam@135: """; cannam@135: . cannam@135: cannam@135: vamp:Parameter cannam@135: a owl:Class; cannam@135: rdfs:label "Parameter"; cannam@135: vs:term_status "unstable"; cannam@135: rdfs:comment """ cannam@141: 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: """; cannam@136: . cannam@136: cannam@136: vamp:Configuration cannam@136: a owl:Class; cannam@136: rdfs:label "Configuration"; cannam@136: vs:term_status "unstable"; cannam@136: rdfs:comment """ cannam@141: For extension (key/value data provided to DSSI plugins, not relevant to Vamp) cannam@136: """; cannam@136: . cannam@136: cannam@136: vamp:TransformType cannam@136: a owl:Class; cannam@136: rdfs:label "Transform Type"; cannam@136: vs:term_status "unstable"; cannam@136: rdfs:comment """ cannam@136: Specifies the type of transform. May be feature extraction, effect... cannam@136: """; cannam@136: . cannam@136: cannam@141: ##individuals of transformtype cannam@136: vamp:FeatureExtraction cannam@136: a vamp:TransformType; cannam@136: rdfs:label "Feature Extraction"; cannam@136: vs:term_status "unstable"; cannam@136: rdfs:comment """ cannam@136: Feature extraction transform. This may be just a subclass of Transform... cannam@136: """; cannam@136: . cannam@136: cannam@136: vamp:Effect cannam@136: a vamp:TransformType; cannam@136: rdfs:label "Effect"; cannam@136: vs:term_status "unstable"; cannam@136: rdfs:comment """ cannam@136: Effect transform. This may be just a subclass of Transform... cannam@135: """; cannam@135: . cannam@135: cannam@135: ################ cannam@135: # Properties cannam@135: ################ cannam@135: cannam@135: ##### Plugin Transform properties cannam@135: cannam@136: vamp:identifier cannam@136: rdfs:domain vamp:Transform; cannam@136: #the ID is the plugin ID? cannam@136: . cannam@136: cannam@136: vamp:engine cannam@135: a rdf:Property; cannam@135: a owl:ObjectProperty; cannam@135: rdfs:label "plugin"; cannam@135: vs:term_status "stable"; cannam@135: rdfs:comment """ cannam@141: Specifies the sort of plugin in execution. This is an extension to use Transform with other plugin libraries cannam@135: """; cannam@136: rdfs:domain vamp:Transform; cannam@135: rdfs:range vamp:Plugin; cannam@135: . cannam@135: cannam@135: vamp:program cannam@135: a rdf:Property; cannam@135: a owl:ObjectProperty; cannam@135: a owl:FunctionalProperty; cannam@135: rdfs:label "program"; cannam@135: vs:term_status "stable"; cannam@135: rdfs:comment """ cannam@141: 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: """; cannam@135: rdfs:domain vamp:Transform; cannam@135: rdfs:range vamp:PluginProgram; cannam@135: . cannam@135: cannam@136: vamp:program cannam@136: a rdf:Property; cannam@136: a owl:ObjectProperty; cannam@136: a owl:FunctionalProperty; cannam@136: rdfs:label "program"; cannam@136: vs:term_status "stable"; cannam@136: rdfs:comment """ cannam@141: Extension for configuration. cannam@136: """; cannam@136: rdfs:domain vamp:Transform; cannam@136: rdfs:range vamp:Configuration; cannam@136: . cannam@136: cannam@135: vamp:parameter cannam@135: a rdf:Property; cannam@135: a owl:ObjectProperty; cannam@135: rdfs:label "parameter"; cannam@135: vs:term_status "stable"; cannam@135: rdfs:comment """ cannam@135: Specifies the parameter to set the plugin in execution. cannam@135: """; cannam@136: rdfs:domain vamp:Transform; cannam@135: rdfs:range vamp:Parameter; cannam@135: . cannam@135: cannam@135: vamp:step_size cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: a owl:FunctionalProperty; cannam@135: rdfs:label "step size"; cannam@135: vs:term_status "stable"; cannam@135: rdfs:comment """ cannam@135: Specifies the step size for the framing. cannam@135: """; cannam@136: rdfs:domain vamp:Transform; cannam@135: . cannam@135: cannam@135: vamp:block_size cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: a owl:FunctionalProperty; cannam@135: rdfs:label "block size"; cannam@135: vs:term_status "stable"; cannam@135: rdfs:comment """ cannam@135: Specifies the block size for the framing. cannam@135: """; cannam@136: rdfs:domain vamp:Transform; cannam@135: . cannam@135: cannam@135: vamp:sample_rate cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: a owl:FunctionalProperty; cannam@135: rdfs:label "sample rate"; cannam@135: vs:term_status "stable"; cannam@135: rdfs:comment """ cannam@135: Specifies the sample rate if it is not constant. cannam@135: """; cannam@136: rdfs:domain vamp:Transform; cannam@135: . cannam@135: cannam@135: vamp:transform_type cannam@135: a rdf:Property; cannam@136: a owl:ObjectProperty; cannam@135: a owl:FunctionalProperty; cannam@135: rdfs:label "transform type"; cannam@135: vs:term_status "unstable"; cannam@135: rdfs:comment """ cannam@136: Specifies the transform type (we could do this by subclassin transform instead of using a property). cannam@135: """; cannam@136: rdfs:domain vamp:Transform; cannam@135: . cannam@135: cannam@135: vamp:window_type cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: a owl:FunctionalProperty; cannam@135: rdfs:label "window type"; cannam@135: vs:term_status "unstable"; cannam@135: rdfs:comment """ cannam@135: Specifies the window type (they should be individuals and clearly not here). cannam@135: """; cannam@136: rdfs:domain vamp:Transform; cannam@135: . cannam@135: cannam@136: vamp:start cannam@136: a rdf:Property; cannam@136: a owl:DatatypeProperty; cannam@136: a owl:FunctionalProperty; cannam@136: rdfs:label "start"; cannam@136: vs:term_status "unstable"; cannam@136: rdfs:comment """ cannam@136: Specifies temporal information when processing a data stream. cannam@136: """; cannam@136: rdfs:domain vamp:Transform; cannam@136: . cannam@136: cannam@136: vamp:duration cannam@136: a rdf:Property; cannam@136: a owl:DatatypeProperty; cannam@136: a owl:FunctionalProperty; cannam@136: rdfs:label "start"; cannam@136: vs:term_status "unstable"; cannam@136: rdfs:comment """ cannam@136: Specifies temporal information when processing a data stream. cannam@136: """; cannam@136: rdfs:domain vamp:Transform; cannam@136: . cannam@136: cannam@135: ##### Parameter properties cannam@135: cannam@135: vamp:value cannam@135: a rdf:Property; cannam@135: a owl:DatatypeProperty; cannam@135: a owl:FunctionalProperty; cannam@135: rdfs:label "value"; cannam@135: vs:term_status "stable"; cannam@135: rdfs:comment """ cannam@135: Specifies the current value of the parameter. cannam@135: """; cannam@135: rdfs:domain vamp:Parameter; cannam@135: . cannam@135: cannam@135: vamp:parameter_descriptor cannam@135: a rdf:Property; cannam@135: a owl:ObjectProperty; cannam@135: rdfs:label "parameter descriptor"; cannam@135: vs:term_status "stable"; cannam@135: rdfs:comment """ cannam@135: Specifies exactly the type of descriptor to set in the transform by linking it. cannam@135: """; cannam@135: rdfs:domain vamp:Parameter; cannam@135: rdfs:range vamp:ParameterDescriptor; cannam@135: . cannam@135: cannam@135: cannam@135: cannam@135: