# LV2 Time Extension # Copyright 2011-2012 David Robillard # # Permission to use, copy, modify, and/or distribute this software for any # purpose with or without fee is hereby granted, provided that the above # copyright notice and this permission notice appear in all copies. # # THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. @prefix doap: . @prefix foaf: . @prefix lv2: . @prefix owl: . @prefix rdf: . @prefix rdfs: . @prefix time: . @prefix xsd: . a lv2:Specification ; rdfs:seeAlso , <../../people/people.ttl> ; doap:name "LV2 Time" ; doap:shortdesc "Properties for describing time." ; doap:release [ doap:revision "0.2" ; doap:created "2012-02-28" ; ] ; 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.

""" .