aboutsummaryrefslogtreecommitdiffstats
path: root/lv2/lv2plug.in/ns/ext/time/time.ttl
blob: 4375f863ad44b90d31dfbba0266fd9a90c746e52 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
@prefix dcs:  <http://ontologi.es/doap-changeset#> .
@prefix doap: <http://usefulinc.com/ns/doap#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@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 lv2:Specification ;
	rdfs:seeAlso <time.h> ,
		<../../meta/meta.ttl> ;
	doap:name "LV2 Time" ;
	doap:shortdesc "Properties for describing time." ;
	doap:release [
		doap:revision "1.1" ;
		doap:created "2012-07-29" ;
		dcs:blame <http://drobilla.net/drobilla#me> ;
		dcs:changeset [
			dcs:item [
				rdfs:label "Use consistent label style."
			]
		]
	] , [
		doap:revision "1.0" ;
		doap:created "2012-04-17" ;
		doap:file-release <http://lv2plug.in/spec/lv2-1.0.0.tar.bz2> ;
		dcs:blame <http://drobilla.net/drobilla#me> ;
		dcs:changeset [
			dcs:item [
				rdfs:label "Initial release."
			]
		]
	] ;
	doap:created "2011-10-05" ;
	doap:developer <http://drobilla.net/drobilla#me> ;
	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" .

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>
""" .