@prefix lv2: . @prefix owl: . @prefix rdf: . @prefix rdfs: . @prefix time: . @prefix xsd: . a owl:Ontology ; rdfs:seeAlso , ; 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 "Time" ; rdfs:comment "A point in time in some unit/dimension." . time:Position a rdfs:Class ; rdfs:label "Position" ; 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" . 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 """

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

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.

""" .