diff options
Diffstat (limited to 'lv2/units/units.ttl')
| -rw-r--r-- | lv2/units/units.ttl | 395 | 
1 files changed, 395 insertions, 0 deletions
| diff --git a/lv2/units/units.ttl b/lv2/units/units.ttl new file mode 100644 index 0000000..e40bef6 --- /dev/null +++ b/lv2/units/units.ttl @@ -0,0 +1,395 @@ +@prefix lv2:   <http://lv2plug.in/ns/lv2core#> . +@prefix owl:   <http://www.w3.org/2002/07/owl#> . +@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . +@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> . +@prefix units: <http://lv2plug.in/ns/extensions/units#> . +@prefix xsd:   <http://www.w3.org/2001/XMLSchema#> . + +<http://lv2plug.in/ns/extensions/units> +	a owl:Ontology ; +	owl:imports <http://lv2plug.in/ns/lv2core> ; +	rdfs:seeAlso <units.h> , +		<lv2-units.doap.ttl> ; +	lv2:documentation """ +<p>This vocabulary defines a number of units for use in audio processing.</p> + +<p>For example, to say that a gain port's value is in decibels (units:db)</p> +<pre class="turtle-code"> +@prefix units: <http://lv2plug.in/ns/extensions/units#> . +@prefix eg:    <http://example.org/> . + +eg:plugin lv2:port [ +    a            lv2:ControlPort , lv2:InputPort ; +    lv2:index    0 ; +    lv2:symbol   "gain" ; +    lv2:name     "gain" ; +    units:unit   units:db +] . +</pre> + +<p>Using the same form, plugins may also specify one-off units inline, to give +better display hints to hosts:</p> +<pre class="turtle-code"> +eg:plugin lv2:port [ +    a            lv2:ControlPort , lv2:InputPort ; +    lv2:index    0 ; +    lv2:symbol   "frob" ; +    lv2:name     "frob level" ; +    units:unit [ +        a            units:Unit ; +        rdfs:label   "frobnication" ; +        units:symbol "fr" ; +        units:render "%f f" +    ] +] . +</pre> + +<p>It is also possible to define conversions between various units, which makes +it possible for hosts to automatically and generically convert from a given +unit to a desired unit.  The units defined in this extension include conversion +definitions where it makes sense to do so.</p> +""" . + +units:Unit +	a rdfs:Class , +		owl:Class ; +	rdfs:label "Unit" ; +	rdfs:comment "A unit for LV2 port data" . + +units:unit +	a rdf:Property , +		owl:ObjectProperty ; +	rdfs:domain lv2:Port , +		lv2:Parameter ; +	rdfs:range units:Unit ; +	rdfs:label "unit" ; +	rdfs:comment "The unit used by the value of a port or parameter." . + +units:render +	a rdf:Property , +		owl:DatatypeProperty ; +	rdfs:label "unit format string" ; +	rdfs:domain units:Unit ; +	rdfs:range xsd:string ; +	rdfs:comment """A printf format string for rendering a value (eg. "%f dB").""" . + +units:symbol +	a rdf:Property , +		owl:DatatypeProperty ; +	rdfs:label "unit symbol" ; +	rdfs:domain units:Unit ; +	rdfs:range xsd:string ; +	rdfs:comment "The abbreviated symbol for the unit (e.g. dB)." . + +units:Conversion +	a rdfs:Class , +		owl:Class ; +	rdfs:subClassOf [ +		a owl:Restriction ; +		owl:onProperty units:to ; +		owl:cardinality 1 ; +		rdfs:comment "A conversion MUST have exactly 1 units:to property." +	] ; +	rdfs:label "Conversion" ; +	rdfs:comment "A conversion from one unit to another." . + +units:conversion +	a rdf:Property , +		owl:ObjectProperty ; +	rdfs:domain units:Unit ; +	rdfs:range units:Conversion ; +	rdfs:label "conversion" ; +	rdfs:comment "A conversion from this unit to another." . + +units:prefixConversion +	a rdf:Property , +		owl:ObjectProperty ; +	rdfs:subPropertyOf units:conversion ; +	rdfs:domain units:Unit ; +	rdfs:range units:Conversion ; +	rdfs:label "prefix conversion" ; +	rdfs:comment """A conversion from this unit to the same unit but with a different SI prefix (e.g. Hz to kHz).""" . + +units:to +	a rdf:Property , +		owl:ObjectProperty ; +	rdfs:domain units:Conversion ; +	rdfs:range units:Unit ; +	rdfs:label "conversion target" ; +	rdfs:comment "The target unit this conversion converts to." . + +units:factor +	a rdf:Property , +		owl:DatatypeProperty ; +	rdfs:domain units:Conversion ; +	rdfs:label "conversion factor" ; +	rdfs:comment """The factor to multiply the source value by in order to convert to the target unit.""" . + +units:s +	a units:Unit ; +	units:conversion [ +		units:factor 0.0166666666 ; +		units:to units:min +	] ; +	rdfs:label "seconds" ; +	units:prefixConversion [ +		units:factor 1000 ; +		units:to units:ms +	] ; +	units:render "%f s" ; +	units:symbol "s" . + +units:ms +	a units:Unit ; +	rdfs:label "milliseconds" ; +	units:prefixConversion [ +		units:factor 0.001 ; +		units:to units:s +	] ; +	units:render "%f ms" ; +	units:symbol "ms" . + +units:min +	a units:Unit ; +	units:conversion [ +		units:factor 60.0 ; +		units:to units:s +	] ; +	rdfs:label "minutes" ; +	units:render "%f mins" ; +	units:symbol "min" . + +units:bar +	a units:Unit ; +	rdfs:label "bars" ; +	units:render "%f bars" ; +	units:symbol "bars" . + +units:beat +	a units:Unit ; +	rdfs:label "beats" ; +	units:render "%f beats" ; +	units:symbol "beats" . + +units:frame +	a units:Unit ; +	rdfs:label "audio frames" ; +	units:render "%f frames" ; +	units:symbol "frames" . + +units:m +	a units:Unit ; +	units:conversion [ +		units:factor 39.37 ; +		units:to units:inch +	] ; +	rdfs:label "metres" ; +	units:prefixConversion [ +		units:factor 100 ; +		units:to units:cm +	] , [ +		units:factor 1000 ; +		units:to units:mm +	] , [ +		units:factor 0.001 ; +		units:to units:km +	] ; +	units:render "%f m" ; +	units:symbol "m" . + +units:cm +	a units:Unit ; +	units:conversion [ +		units:factor 0.3937 ; +		units:to units:inch +	] ; +	rdfs:label "centimetres" ; +	units:prefixConversion [ +		units:factor 0.01 ; +		units:to units:m +	] , [ +		units:factor 10 ; +		units:to units:mm +	] , [ +		units:factor 0.00001 ; +		units:to units:km +	] ; +	units:render "%f cm" ; +	units:symbol "cm" . + +units:mm +	a units:Unit ; +	units:conversion [ +		units:factor 0.03937 ; +		units:to units:inch +	] ; +	rdfs:label "millimetres" ; +	units:prefixConversion [ +		units:factor 0.001 ; +		units:to units:m +	] , [ +		units:factor 0.1 ; +		units:to units:cm +	] , [ +		units:factor 0.000001 ; +		units:to units:km +	] ; +	units:render "%f mm" ; +	units:symbol "mm" . + +units:km +	a units:Unit ; +	units:conversion [ +		units:factor 0.62138818 ; +		units:to units:mile +	] ; +	rdfs:label "kilometres" ; +	units:prefixConversion [ +		units:factor 1000 ; +		units:to units:m +	] , [ +		units:factor 100000 ; +		units:to units:cm +	] , [ +		units:factor 1000000 ; +		units:to units:mm +	] ; +	units:render "%f km" ; +	units:symbol "km" . + +units:inch +	a units:Unit ; +	units:conversion [ +		units:factor 2.54 ; +		units:to units:cm +	] ; +	rdfs:label "inches" ; +	units:render """%f\"""" ; +	units:symbol "in" . + +units:mile +	a units:Unit ; +	units:conversion [ +		units:factor 1.6093 ; +		units:to units:km +	] ; +	rdfs:label "miles" ; +	units:render "%f mi" ; +	units:symbol "mi" . + +units:db +	a units:Unit ; +	rdfs:label "decibels" ; +	units:render "%f dB" ; +	units:symbol "dB" . + +units:pc +	a units:Unit ; +	units:conversion [ +		units:factor 0.01 ; +		units:to units:coef +	] ; +	rdfs:label "percent" ; +	units:render "%f%%" ; +	units:symbol "%" . + +units:coef +	a units:Unit ; +	units:conversion [ +		units:factor 100 ; +		units:to units:pc +	] ; +	rdfs:label "coefficient" ; +	units:render "* %f" ; +	units:symbol "" . + +units:hz +	a units:Unit ; +	rdfs:label "hertz" ; +	units:prefixConversion [ +		units:factor 0.001 ; +		units:to units:khz +	] , [ +		units:factor 0.000001 ; +		units:to units:mhz +	] ; +	units:render "%f Hz" ; +	units:symbol "Hz" . + +units:khz +	a units:Unit ; +	rdfs:label "kilohertz" ; +	units:prefixConversion [ +		units:factor 1000 ; +		units:to units:hz +	] , [ +		units:factor 0.001 ; +		units:to units:mhz +	] ; +	units:render "%f kHz" ; +	units:symbol "kHz" . + +units:mhz +	a units:Unit ; +	rdfs:label "megahertz" ; +	units:prefixConversion [ +		units:factor 1000000 ; +		units:to units:hz +	] , [ +		units:factor 0.001 ; +		units:to units:khz +	] ; +	units:render "%f MHz" ; +	units:symbol "MHz" . + +units:bpm +	a units:Unit ; +	rdfs:label "beats per minute" ; +	units:prefixConversion [ +		units:factor 0.0166666666 ; +		units:to units:hz +	] ; +	units:render "%f BPM" ; +	units:symbol "BPM" . + +units:oct +	a units:Unit ; +	units:conversion [ +		units:factor 12.0 ; +		units:to units:semitone12TET +	] ; +	rdfs:label "octaves" ; +	units:render "%f octaves" ; +	units:symbol "oct" . + +units:cent +	a units:Unit ; +	units:conversion [ +		units:factor 0.01 ; +		units:to units:semitone12TET +	] ; +	rdfs:label "cents" ; +	units:render "%f ct" ; +	units:symbol "ct" . + +units:semitone12TET +	a units:Unit ; +	units:conversion [ +		units:factor 0.083333333 ; +		units:to units:oct +	] ; +	rdfs:label "semitones" ; +	units:render "%f semi" ; +	units:symbol "semi" . + +units:degree +	a units:Unit ; +	rdfs:label "degrees" ; +	units:render "%f deg" ; +	units:symbol "deg" . + +units:midiNote +	a units:Unit ; +	rdfs:label "MIDI note" ; +	units:render "MIDI note %d" ; +	units:symbol "note" . |