Chris@0: @prefix rdf: . Chris@0: @prefix : . Chris@0: @prefix daml: . Chris@0: @prefix dc: . Chris@0: @prefix dcterms: . Chris@0: @prefix owl: . Chris@0: @prefix foaf: . Chris@0: @prefix rdfs: . Chris@0: @prefix xsd: . Chris@0: @prefix time: . Chris@0: Chris@0: Chris@0: Chris@0: a owl:Ontology; Chris@0: rdfs:comment """ Chris@0: Extends owl-time ontology (http://www.w3.org/2006/time) with Chris@0: support for several timelines, acting as a backbone to adress Chris@0: time interval/instants. Chris@0: Chris@0: Mainly designed with a multimedia use-case in mind. Chris@0: Chris@0: Copyright (c) Yves Raimond, Samer Abdallah, Centre for Digital Music, Queen Mary, University of London Chris@0: """^^xsd:string; Chris@0: foaf:maker ; Chris@0: owl:imports , . # Some things for OWL geeks, although I think this is completely useless Chris@0: Chris@0: ############################################### Chris@0: # Part 1: Core terms defined by this ontology # Chris@0: ############################################### Chris@0: Chris@0: :TimeLine Chris@0: a owl:Class; Chris@0: rdfs:label "timeline"; Chris@0: rdfs:comment """Represents a linear and coherent piece of time -- can be either abstract (such as the one behind a score) or concrete (such as the universal time line). Chris@0: Two timelines can be mapped using timeline maps."""^^xsd:string . Chris@0: Chris@0: :Instant a owl:Class; Chris@0: rdfs:label "instant"; Chris@0: rdfs:comment "An instant (same as in OWL-Time)"; Chris@0: owl:sameAs time:Instant; Chris@0: . Chris@0: Chris@0: :Interval a owl:Class; Chris@0: rdfs:label "interval"; Chris@0: rdfs:comment "An interval (same as in OWL-Time). Allen's relationships are defined in OWL-Time."; Chris@0: owl:sameAs time:ProperInterval; Chris@0: . Chris@0: Chris@0: :onTimeLine Chris@0: a owl:FunctionalProperty, owl:ObjectProperty; Chris@0: rdfs:label "on timeline"; Chris@0: rdfs:comment """ Chris@0: Relates an interval or an instant to the timeline on which it is defined. Chris@0: Chris@0: The 29th of August, 2007 would be linked through this property to the universal timeline, whereas Chris@0: \"from 2s to 5s on this particular signal\" would be defined on the signal' timeline. Chris@0: Chris@0: """^^xsd:string; Chris@0: rdfs:range :TimeLine; Chris@0: rdfs:domain [ Chris@0: a owl:Class; Chris@0: owl:unionOf ( Chris@0: :Instant Chris@0: :Interval Chris@0: ) Chris@0: ] . Chris@0: Chris@0: :at Chris@0: a owl:FunctionalProperty; Chris@0: rdfs:label "at"; Chris@0: rdfs:comment "refers to a point or an interval on the time line, through an explicit datatype"^^xsd:string; Chris@0: rdfs:domain [ Chris@0: a owl:Class; Chris@0: owl:unionOf ( Chris@0: :Interval Chris@0: :Instant Chris@0: ) Chris@0: ]; Chris@0: a owl:DatatypeProperty . Chris@0: Chris@0: :duration Chris@0: rdfs:label "duration"; Chris@0: rdfs:comment "the duration of a time interval"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:domain :Interval . Chris@0: Chris@0: :endsAt Chris@0: rdfs:label "ends at"; Chris@0: rdfs:comment "refers to the end of a time interval, through an explicit datatype. time:hasEnd can be used as well, if you want to associate the end of the interval to an explicit time point resource"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:domain :Interval . Chris@0: Chris@0: :beginsAt Chris@0: rdfs:label "begins at"; Chris@0: rdfs:comment "refers to the beginning of a time interval, through an explicit datatype. time:hasBeginning can be used as well, if you want to associate the beginning of the interval to an explicit time point resource"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:domain :Interval . Chris@0: Chris@0: Chris@0: ############################################################################ Chris@0: # Part 2: Extra DL stuff, timeline taxonomies, coordinate systems handling # Chris@0: # - This section is not compulsory and should be avoided for simple use # Chris@0: ############################################################################ Chris@0: Chris@0: Chris@0: :AbstractInterval Chris@0: a owl:Class; Chris@0: rdfs:label "abstract interval"; Chris@0: rdfs:comment """ Chris@0: An interval defined on an abstract time-line. Chris@0: """; Chris@0: owl:equivalentClass [ Chris@0: a owl:Restriction; Chris@0: owl:someValuesFrom :AbstractTimeLine; Chris@0: owl:onProperty :onTimeLine Chris@0: ]; Chris@0: rdfs:subClassOf :Interval . Chris@0: Chris@0: :AbstractTimeLine Chris@0: a owl:Class; Chris@0: rdfs:label "abstract timeline"; Chris@0: rdfs:comment """ Chris@0: Abstract time lines may be used as a backbone for Score, Works, ... Chris@0: This allows for TimeLine maps to relate works to a given Chris@0: performance (this part was played at this time)."""^^xsd:string; Chris@0: rdfs:subClassOf :TimeLine . Chris@0: Chris@0: :UTInstant Chris@0: a owl:Class; Chris@0: rdfs:label "instant on the universal timeline"; Chris@0: rdfs:comment "This concept expresses that an instant defined on the universal timeline must be associated to a dateTime value"; Chris@0: rdfs:subClassOf [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty :atDateTime Chris@0: ]; Chris@0: owl:equivalentClass [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:hasValue :universaltimeline; Chris@0: owl:onProperty :onTimeLine Chris@0: ] Chris@0: :Instant Chris@0: ) Chris@0: ] . Chris@0: Chris@0: :atDateTime Chris@0: rdfs:label "at date/time"; Chris@0: rdfs:comment "This property links an instant defined on the universal time line to an XSD date/time value"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:range xsd:dateTime; Chris@0: rdfs:subPropertyOf :at . Chris@0: Chris@0: :universaltimeline Chris@0: dc:title "the universal time line"; Chris@0: dc:description "The timeline one can addresss \"the 1st of July, 2007\""; Chris@0: a :PhysicalTimeLine; Chris@0: rdfs:comment "this is the `universal' time line -- can adress time intervals on it using date/dateTime -- UTC"^^xsd:string . Chris@0: Chris@0: :UniformSamplingMap Chris@0: a owl:Class; Chris@0: rdfs:label "uniform sampling map"; Chris@0: rdfs:subClassOf [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty :sampleRate Chris@0: ], [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :rangeTimeLine; Chris@0: owl:someValuesFrom :DiscreteTimeLine Chris@0: ], [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :domainTimeLine; Chris@0: owl:someValuesFrom :RelativeTimeLine Chris@0: ], :TimeLineMap; Chris@0: rdfs:comment "Describe the relation between a continuous time-line and its sampled equivalent"^^xsd:string; Chris@0: owl:disjointWith :UniformWindowingMap . Chris@0: Chris@0: :sampleRate Chris@0: a owl:FunctionalProperty; Chris@0: rdfs:label "sample rate"; Chris@0: rdfs:comment "associates a sample rate value to a uniform sampling map"; Chris@0: rdfs:range xsd:int; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:domain :UniformSamplingMap . Chris@0: Chris@0: :rangeTimeLine Chris@0: rdfs:label "range timeline"; Chris@0: rdfs:comment "associates a timeline map to its range timeline"; Chris@0: a owl:FunctionalProperty; Chris@0: rdfs:domain :TimeLineMap; Chris@0: a owl:ObjectProperty; Chris@0: rdfs:range :TimeLine . Chris@0: Chris@0: :DiscreteTimeLine Chris@0: a owl:Class; Chris@0: rdfs:label "discrete time line"; Chris@0: rdfs:subClassOf :TimeLine; Chris@0: rdfs:comment "A discrete time line (like the time line backing a digital signal"^^xsd:string; Chris@0: owl:disjointWith :ContinuousTimeLine . Chris@0: Chris@0: :domainTimeLine Chris@0: rdfs:label "domain timeline"; Chris@0: rdfs:comment "associates a timeline map to its domain timeline"; Chris@0: a owl:FunctionalProperty; Chris@0: rdfs:range :TimeLine; Chris@0: rdfs:domain :TimeLineMap; Chris@0: a owl:ObjectProperty . Chris@0: Chris@0: :RelativeTimeLine Chris@0: rdfs:label "relative timeline"; Chris@0: a owl:Class; Chris@0: rdfs:subClassOf :ContinuousTimeLine; Chris@0: rdfs:comment "Semi infinite time line...canonical coordinate system --> adressed through xsd:duration since the instant 0."^^xsd:string; Chris@0: owl:disjointWith :PhysicalTimeLine . Chris@0: Chris@0: :TimeLineMap Chris@0: a owl:Class; Chris@0: rdfs:label "timeline map"; Chris@0: rdfs:comment "Allows to map two time lines together"^^xsd:string . Chris@0: Chris@0: :UniformWindowingMap Chris@0: a owl:Class; Chris@0: rdfs:label "uniform windowing map"; Chris@0: rdfs:subClassOf [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty :hopSize Chris@0: ], [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty :windowLength Chris@0: ], :TimeLineMap, [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :domainTimeLine; Chris@0: owl:someValuesFrom :DiscreteTimeLine Chris@0: ], [ Chris@0: a owl:Restriction; Chris@0: owl:someValuesFrom :DiscreteTimeLine; Chris@0: owl:onProperty :rangeTimeLine Chris@0: ]; Chris@0: rdfs:comment "Describes the relation between a discrete time line and its windowed equivalent"^^xsd:string; Chris@0: owl:disjointWith :UniformSamplingMap . Chris@0: Chris@0: :DiscreteInstant Chris@0: a owl:Class; Chris@0: rdfs:label "discrete instant"; Chris@0: rdfs:comment "An instant defined on a discrete timeline"; Chris@0: owl:equivalentClass [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :onTimeLine; Chris@0: owl:someValuesFrom :DiscreteTimeLine Chris@0: ] Chris@0: :Instant Chris@0: ) Chris@0: ]; Chris@0: rdfs:subClassOf [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :atInt; Chris@0: owl:cardinality "1"^^xsd:int Chris@0: ] . Chris@0: Chris@0: :atInt Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:label "at (integer)"; Chris@0: rdfs:comment "A subproperty of :at, having as a specific range xsd:int"; Chris@0: rdfs:range xsd:int; Chris@0: rdfs:subPropertyOf :at . Chris@0: Chris@0: :ContinuousTimeLine Chris@0: a owl:Class; Chris@0: rdfs:label "continuous timeline"; Chris@0: rdfs:comment "A continuous timeline, like the universal one, or the one backing an analog signal"; Chris@0: rdfs:subClassOf :TimeLine; Chris@0: owl:disjointWith :DiscreteTimeLine; Chris@0: owl:equivalentClass [ Chris@0: a owl:Class; Chris@0: owl:unionOf ( Chris@0: :PhysicalTimeLine Chris@0: :RelativeTimeLine Chris@0: ) Chris@0: ] . Chris@0: Chris@0: :PhysicalTimeLine Chris@0: a owl:Class; Chris@0: rdfs:label "physical timeline"; Chris@0: rdfs:subClassOf :ContinuousTimeLine; Chris@0: rdfs:comment "A \"physical\" time-line (the universal time line (UTC)) is an instance of this class. Other time zones consists in instances of this class as well, with a \"shifting\" time line map relating them to the universal time line map."^^xsd:string; Chris@0: owl:disjointWith :RelativeTimeLine . Chris@0: Chris@0: :OriginMap Chris@0: a owl:Class; Chris@0: rdfs:label "origin map"; Chris@0: rdfs:comment "A timeline map linking a physical timeline to a relative one (originating at some point on the physical timeline)"; Chris@0: rdfs:subClassOf [ Chris@0: a owl:Restriction; Chris@0: owl:someValuesFrom :RelativeTimeLine; Chris@0: owl:onProperty :rangeTimeLine Chris@0: ], [ Chris@0: a owl:Restriction; Chris@0: owl:someValuesFrom :PhysicalTimeLine; Chris@0: owl:onProperty :domainTimeLine Chris@0: ], :TimeLineMap . Chris@0: Chris@0: :DiscreteInterval Chris@0: a owl:Class; Chris@0: rdfs:label "discrete interval"; Chris@0: rdfs:comment "An interval defined on a discrete timeline, like the one backing a digital signal"; Chris@0: rdfs:subClassOf [ Chris@0: a owl:Class; Chris@0: owl:unionOf ( Chris@0: [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty ; Chris@0: owl:cardinality "1"^^xsd:int Chris@0: ] Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty ; Chris@0: owl:cardinality "1"^^xsd:int Chris@0: ] Chris@0: ) Chris@0: ] Chris@0: [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty :beginsAtInt Chris@0: ] Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :endsAtInt; Chris@0: owl:cardinality "1"^^xsd:int Chris@0: ] Chris@0: ) Chris@0: ] Chris@0: [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty :beginsAtInt Chris@0: ] Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :durationInt; Chris@0: owl:cardinality "1"^^xsd:int Chris@0: ] Chris@0: ) Chris@0: ] Chris@0: ) Chris@0: ]; Chris@0: owl:equivalentClass [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:someValuesFrom :DiscreteTimeLine; Chris@0: owl:onProperty :onTimeLine Chris@0: ] Chris@0: :Interval Chris@0: ) Chris@0: ] . Chris@0: Chris@0: :beginsAtInt Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:label "begins at (integer)"; Chris@0: rdfs:comment "A subproperty of :beginsAt, having xsd:int as a range"; Chris@0: rdfs:range xsd:int; Chris@0: rdfs:subPropertyOf :beginsAt . Chris@0: Chris@0: :endsAtInt Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:label "ends at (integer)"; Chris@0: rdfs:comment "A subproperty of :endsAt, having xsd:int as a range"; Chris@0: rdfs:subPropertyOf :endsAt; Chris@0: rdfs:range xsd:int . Chris@0: Chris@0: :durationInt Chris@0: rdfs:label "duration (integer)"; Chris@0: rdfs:comment "A subproperty of :duration, having xsd:int as a range"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:range xsd:int; Chris@0: rdfs:subPropertyOf :duration . Chris@0: Chris@0: :RelativeInterval Chris@0: a owl:Class; Chris@0: rdfs:label "relative interval"; Chris@0: rdfs:comment "an interval defined on a relative timeline"; Chris@0: rdfs:subClassOf [ Chris@0: a owl:Class; Chris@0: owl:unionOf ( Chris@0: [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty Chris@0: ] Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty Chris@0: ] Chris@0: ) Chris@0: ] Chris@0: [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :beginsAtDuration; Chris@0: owl:cardinality "1"^^xsd:int Chris@0: ] Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :durationXSD; Chris@0: owl:cardinality "1"^^xsd:int Chris@0: ] Chris@0: ) Chris@0: ] Chris@0: [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty :beginsAtDuration Chris@0: ] Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :endsAtDuration; Chris@0: owl:cardinality "1"^^xsd:int Chris@0: ] Chris@0: ) Chris@0: ] Chris@0: ) Chris@0: ]; Chris@0: owl:equivalentClass [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:someValuesFrom :RelativeTimeLine; Chris@0: owl:onProperty :onTimeLine Chris@0: ] Chris@0: :Interval Chris@0: ) Chris@0: ] . Chris@0: Chris@0: :beginsAtDuration Chris@0: rdfs:label "begins at (xsd:duration)"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:comment "A property enabling to adress a start time point P of an interval [P,E] through the duration of the interval [0,P] on a continuous timeline"^^xsd:string; Chris@0: rdfs:subPropertyOf :beginsAt; Chris@0: rdfs:range xsd:duration . Chris@0: Chris@0: :durationXSD Chris@0: rdfs:label "duration (xsd:duration)"; Chris@0: rdfs:comment "A subproperty of :duration, having xsd:duration as a range"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:range xsd:duration; Chris@0: rdfs:subPropertyOf :duration . Chris@0: Chris@0: :endsAtDuration Chris@0: rdfs:label "ends at (xsd:duration)"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:comment "A property enabling to adress an end time point P of an interval [S,P] through the duration of the interval [0,P] on a continuous timeline"^^xsd:string; Chris@0: rdfs:subPropertyOf :endsAt; Chris@0: rdfs:range xsd:duration . Chris@0: Chris@0: :ShiftMap Chris@0: rdfs:comment "a map just shifting one timeline to another"; Chris@0: rdfs:label "shift map"; Chris@0: a owl:Class; Chris@0: rdfs:subClassOf :TimeLineMap . Chris@0: Chris@0: :UTInterval Chris@0: rdfs:label "universal timeline interval"; Chris@0: rdfs:comment "an interval defined on the universal time line"; Chris@0: a owl:Class; Chris@0: owl:equivalentClass [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :onTimeLine; Chris@0: owl:hasValue :universaltimeline Chris@0: ] Chris@0: :Interval Chris@0: ) Chris@0: ]; Chris@0: rdfs:subClassOf [ Chris@0: a owl:Class; Chris@0: owl:unionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :atYear; Chris@0: owl:cardinality "1"^^xsd:int Chris@0: ] Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :atYearMonth; Chris@0: owl:cardinality "1"^^xsd:int Chris@0: ] Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty :atDate Chris@0: ] Chris@0: [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :beginsAtDateTime; Chris@0: owl:cardinality "1"^^xsd:int Chris@0: ] Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty :durationXSD Chris@0: ] Chris@0: ) Chris@0: ] Chris@0: [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty Chris@0: ] Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty Chris@0: ] Chris@0: ) Chris@0: ] Chris@0: [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :beginsAtDateTime; Chris@0: owl:cardinality "1"^^xsd:int Chris@0: ] Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:onProperty :endsAtDateTime; Chris@0: owl:cardinality "1"^^xsd:int Chris@0: ] Chris@0: ) Chris@0: ] Chris@0: ) Chris@0: ] . Chris@0: Chris@0: :atYear Chris@0: rdfs:label "at (year)"; Chris@0: rdfs:comment "A subproperty of :at, allowing to address a year (beginning of it for an instant, all of it for an interval)"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:subPropertyOf :at; Chris@0: rdfs:range xsd:gYear . Chris@0: Chris@0: :atYearMonth Chris@0: rdfs:label "at (year/month)"; Chris@0: rdfs:comment "A subproperty of :at, allowing to address a year/month (beginning of it for an instant, all of it for an interval)"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:subPropertyOf :at; Chris@0: rdfs:range xsd:gYearMonth . Chris@0: Chris@0: :atDate Chris@0: rdfs:label "at (date)"; Chris@0: rdfs:comment "A subproperty of :at, allowing to address a date (beginning of it for an instant, all of it for an interval)"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:subPropertyOf :at; Chris@0: rdfs:range xsd:date . Chris@0: Chris@0: :beginsAtDateTime Chris@0: rdfs:label "begins at (date/time)"; Chris@0: rdfs:comment "A subproperty of :beginsAt, allowing to address the beginning of an interval as a date/time"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:subPropertyOf :beginsAt; Chris@0: rdfs:range xsd:dateTime . Chris@0: Chris@0: :endsAtDateTime Chris@0: rdfs:label "ends at (date/time)"; Chris@0: rdfs:comment "A subproperty of :endsAt, allowing to address the end of an interval as a date/time"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:range xsd:dateTime; Chris@0: rdfs:subPropertyOf :endsAt . Chris@0: Chris@0: :hopSize Chris@0: rdfs:label "hop size"; Chris@0: rdfs:comment "hop size, associated to a uniform windowing map"; Chris@0: a owl:FunctionalProperty, owl:DatatypeProperty; Chris@0: rdfs:range xsd:int; Chris@0: rdfs:domain :UniformWindowingMap . Chris@0: Chris@0: :windowLength Chris@0: rdfs:label "window length"; Chris@0: rdfs:comment "window length, associated to a uniform windowing map"; Chris@0: a owl:FunctionalProperty, owl:DatatypeProperty; Chris@0: rdfs:range xsd:int; Chris@0: rdfs:domain :UniformWindowingMap . Chris@0: Chris@0: :RelativeInstant Chris@0: rdfs:label "relative instant"; Chris@0: rdfs:comment "An instant defined on a relative timeline"; Chris@0: a owl:Class; Chris@0: rdfs:subClassOf [ Chris@0: a owl:Restriction; Chris@0: owl:cardinality "1"^^xsd:int; Chris@0: owl:onProperty :atDuration Chris@0: ]; Chris@0: owl:equivalentClass [ Chris@0: a owl:Class; Chris@0: owl:intersectionOf ( Chris@0: [ Chris@0: a owl:Restriction; Chris@0: owl:someValuesFrom :RelativeTimeLine; Chris@0: owl:onProperty :onTimeLine Chris@0: ] Chris@0: :Instant Chris@0: ) Chris@0: ] . Chris@0: Chris@0: :atDuration Chris@0: rdfs:label "at (duration)"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:range xsd:duration; Chris@0: rdfs:subPropertyOf :at; Chris@0: rdfs:comment "A property enabling to adress a time point P through the duration of the interval [0,P] on a continuous timeline"^^xsd:string . Chris@0: Chris@0: :AbstractInstant Chris@0: rdfs:label "abstract instant"; Chris@0: rdfs:comment "An instant defined on an abstract timeline"; Chris@0: a owl:Class; Chris@0: rdfs:subClassOf :Instant; Chris@0: owl:equivalentClass [ Chris@0: a owl:Restriction; Chris@0: owl:someValuesFrom :AbstractTimeLine; Chris@0: owl:onProperty :onTimeLine Chris@0: ] . Chris@0: Chris@0: :atReal Chris@0: rdfs:label "at (real)"; Chris@0: rdfs:comment "subproperty of :at, having xsd:float as a range"; Chris@0: a owl:DatatypeProperty; Chris@0: rdfs:range xsd:float; Chris@0: rdfs:subPropertyOf :at . Chris@0: Chris@0: Chris@0: :delay Chris@0: rdfs:label "delay"; Chris@0: rdfs:comment "associate a shift map to a particular delay"; Chris@0: a owl:FunctionalProperty; Chris@0: rdfs:domain :ShiftMap; Chris@0: a owl:DatatypeProperty . Chris@0: Chris@0: :origin Chris@0: rdfs:label "origin"; Chris@0: rdfs:comment "associate an origin map to its origin on the domain physical timeline"; Chris@0: a owl:FunctionalProperty, owl:DatatypeProperty; Chris@0: rdfs:range xsd:dateTime; Chris@0: rdfs:domain :OriginMap . Chris@0: