aboutsummaryrefslogtreecommitdiffstats
path: root/lv2/time/time.ttl
diff options
context:
space:
mode:
Diffstat (limited to 'lv2/time/time.ttl')
-rw-r--r--lv2/time/time.ttl143
1 files changed, 143 insertions, 0 deletions
diff --git a/lv2/time/time.ttl b/lv2/time/time.ttl
new file mode 100644
index 0000000..13137af
--- /dev/null
+++ b/lv2/time/time.ttl
@@ -0,0 +1,143 @@
+@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 time: <http://lv2plug.in/ns/ext/time#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+
+<http://lv2plug.in/ns/ext/time>
+ a owl:Ontology ;
+ rdfs:seeAlso <time.h> ,
+ <lv2-time.doap.ttl> ;
+ lv2:documentation """
+<p>This is a vocabulary for precisely describing a position in time and the
+passage of time itself, in both real and musical terms.</p>
+
+<p>In addition to real time (e.g. seconds), two units of time are used:
+<q>frames</q> and <q>beats</q>. A frame is a numbered quantum of time. Frame
+time is related to real-time by the <q>frame rate</q> or <q>sample rate</q>,
+time:framesPerSecond. A beat is a single pulse of musical time. Beat time is
+related to real-time by the <q>tempo</q>, time:beatsPerMinute.</p>
+
+<p>Musical time additionally has a <q>meter</q> which describes passage of time
+in terms of musical <q>bars</q>. A bar is a higher level grouping of beats.
+The meter describes how many beats are in one bar.</p>
+""" .
+
+time:Time
+ a rdfs:Class ;
+ rdfs:subClassOf time:Position ;
+ rdfs:label "Time" ;
+ rdfs:comment "A point in time in some unit/dimension." .
+
+time:Position
+ a rdfs:Class ;
+ rdfs:label "Position" ;
+ lv2:documentation """
+<p>A point in time and/or the speed at which time is passing. A position is
+both a point and a speed, which precisely defines a time within a timeline.</p>
+""" .
+
+time:Rate
+ a rdfs:Class ;
+ rdfs:subClassOf time:Position ;
+ rdfs:label "Rate" ;
+ lv2:documentation """
+<p>The rate of passage of time in terms of one unit with respect to
+another.</p> """ .
+
+time:position
+ a rdf:Property ,
+ owl:ObjectProperty ,
+ owl:FunctionalProperty ;
+ rdfs:range time:Position ;
+ rdfs:label "position" .
+
+time:barBeat
+ a rdf:Property ,
+ owl:DatatypeProperty ,
+ owl:FunctionalProperty ;
+ rdfs:domain time:Time ;
+ rdfs:range xsd:float ;
+ rdfs:label "beat within bar" ;
+ rdfs:comment "The beat number within the bar, from 0 to beatsPerBar." .
+
+time:bar
+ a rdf:Property ,
+ owl:DatatypeProperty ,
+ owl:FunctionalProperty ;
+ rdfs:domain time:Time ;
+ rdfs:range xsd:long ;
+ rdfs:label "bar" .
+
+time:beat
+ a rdf:Property ,
+ owl:DatatypeProperty ,
+ owl:FunctionalProperty ;
+ rdfs:domain time:Time ;
+ rdfs:range xsd:double ;
+ rdfs:label "beat" ;
+ rdfs:comment """
+The global running beat number. This is not the beat within a bar like barBeat,
+but relative to the same origin as time:bar and monotonically increases unless
+the transport is repositioned.
+""" .
+
+time:beatUnit
+ a rdf:Property ,
+ owl:DatatypeProperty ,
+ owl:FunctionalProperty ;
+ rdfs:domain time:Rate ;
+ rdfs:range xsd:nonNegativeInteger ;
+ lv2:documentation """
+<p>Beat unit, the note value that counts as one beat. This is the bottom number
+in a time signature: 2 for half note, 4 for quarter note, and so on.</p>
+""" .
+
+time:beatsPerBar
+ a rdf:Property ,
+ owl:DatatypeProperty ,
+ owl:FunctionalProperty ;
+ rdfs:domain time:Rate ;
+ rdfs:range xsd:float ;
+ rdfs:label "beats per bar" .
+
+time:beatsPerMinute
+ a rdf:Property ,
+ owl:DatatypeProperty ,
+ owl:FunctionalProperty ;
+ rdfs:domain time:Rate ;
+ rdfs:range xsd:float ;
+ rdfs:label "beats per minute" ;
+ rdfs:comment "Tempo in beats per minute." .
+
+time:frame
+ a rdf:Property ,
+ owl:DatatypeProperty ,
+ owl:FunctionalProperty ;
+ rdfs:domain time:Time ;
+ rdfs:range xsd:long ;
+ rdfs:label "frame" .
+
+time:framesPerSecond
+ a rdf:Property ,
+ owl:DatatypeProperty ,
+ owl:FunctionalProperty ;
+ rdfs:domain time:Rate ;
+ rdfs:range xsd:float ;
+ rdfs:label "frames per second" ;
+ rdfs:comment "Frame rate in frames per second." .
+
+time:speed
+ a rdf:Property ,
+ owl:DatatypeProperty ,
+ owl:FunctionalProperty ;
+ rdfs:domain time:Rate ;
+ rdfs:range xsd:float ;
+ rdfs:label "speed" ;
+ lv2:documentation """
+<p>The rate of the progress of time as a fraction of normal speed. For
+example, a rate of 0.0 is stopped, 1.0 is rolling at normal speed, 0.5 is
+rolling at half speed, -1.0 is reverse, and so on.
+</p>
+""" .