@prefix dcs: . @prefix doap: . @prefix foaf: . @prefix lv2: . @prefix owl: . @prefix rdf: . @prefix rdfs: . @prefix time: . @prefix xsd: . a lv2:Specification ; rdfs:seeAlso , <../../meta/meta.ttl> ; doap:name "LV2 Time" ; doap:shortdesc "Properties for describing time." ; doap:release [ doap:revision "1.0" ; doap:created "2012-04-17" ; doap:file-release ; dcs:blame ; dcs:changeset [ dcs:item [ rdfs:label "Initial release." ] ] ] ; doap:created "2011-10-05" ; doap:developer ; lv2:documentation """

This is a vocabulary for precisely describing a position in time and the passage of time itself, in both real and musical terms.

In addition to real time (e.g. seconds), two units of time are used: frames and beats. A frame is a numbered quantum of time. Frame time is related to real-time by the frame rate or sample rate, time:framesPerSecond. A beat is a single pulse of musical time. Beat time is related to real-time by the tempo, time:beatsPerMinute.

Musical time additionally has a meter which describes passage of time in terms of musical bars. A bar is a higher level grouping of beats. The meter describes how many beats are in one bar.

""" . time:Time a rdfs:Class ; rdfs:subClassOf time:Position ; rdfs:label "A point in time" ; rdfs:comment "A point in time in some unit/dimension." . time:Position a rdfs:Class ; lv2:documentation """

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.

""" . time:Rate a rdfs:Class ; rdfs:subClassOf time:Position ; rdfs:label "Rate" ; lv2:documentation """

The rate of passage of time in terms of one unit with respect to another.

""" . time:position a rdf:Property , owl:ObjectProperty , owl:FunctionalProperty ; rdfs:range time:Position ; rdfs:label "Position in time" . time:barBeat a rdf:Property , owl:DatatypeProperty , owl:FunctionalProperty ; rdfs:domain time:Time ; rdfs:range xsd:float ; rdfs:label "Beat within this 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 "Global position in bars" . time:beat a rdf:Property , owl:DatatypeProperty , owl:FunctionalProperty ; rdfs:domain time:Time ; rdfs:range xsd:double ; rdfs:label "Global position in beats" . time:beatUnit a rdf:Property , owl:DatatypeProperty , owl:FunctionalProperty ; rdfs:domain time:Rate ; rdfs:range xsd:nonNegativeInteger ; lv2:documentation """

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.

""" . 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 "Global position in frames" . 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 """

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.

""" .