gyorgyf@0: @prefix owl: . gyorgyf@0: @prefix tl: . gyorgyf@0: @prefix time: . gyorgyf@0: @prefix rdfs: . gyorgyf@0: @prefix event: . gyorgyf@0: @prefix rdf: . gyorgyf@0: @prefix dc: . gyorgyf@0: @prefix vs: . gyorgyf@0: @prefix af: . gyorgyf@0: @prefix foaf: . gyorgyf@0: @prefix mo: . gyorgyf@0: gyorgyf@0: # Ontology header gyorgyf@0: <> a owl:Ontology; gyorgyf@0: dc:title "The Audio Features ontology"; gyorgyf@0: owl:versionInfo "Revision: 1.1"; gyorgyf@0: rdfs:label "The Audio Features ontology"; gyorgyf@0: dc:description """ gyorgyf@0: This ontology expresses some common concepts gyorgyf@0: to represent automatically extracted features gyorgyf@0: from audio signals. Therefore, it mainly relies gyorgyf@0: on the Event ontology, in order to classify particular gyorgyf@0: parts of the timeline backing an audio signal. gyorgyf@0: gyorgyf@0: Programs outputting RDF according to this ontology should gyorgyf@0: also describe the ouputted document to express some information gyorgyf@0: about itself (estimated confidence, maintainer of the program, etc.) gyorgyf@0: """; gyorgyf@0: dc:creator ; gyorgyf@0: foaf:maker ; gyorgyf@0: dc:date "$Date: 2008/06/23 10:24:13 $"; gyorgyf@0: . gyorgyf@0: gyorgyf@0: # Status of terms gyorgyf@0: vs:term_status a owl:AnnotationProperty. gyorgyf@0: gyorgyf@0: # gyorgyf@0: # PART 0 gyorgyf@0: # gyorgyf@0: # - This part of the ontology deals with track-level features gyorgyf@0: # gyorgyf@0: af:Signal gyorgyf@0: a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Signal-level feature"; gyorgyf@0: rdfs:subClassOf mo:Signal; gyorgyf@0: rdfs:comment """ gyorgyf@0: A signal-like feature, holding dense data describing another signal. gyorgyf@0: Examples of signal features include chromagrams, spectrograms, onset detection functions etc. gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:Chromagram gyorgyf@0: a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Chromagram"; gyorgyf@0: rdfs:subClassOf af:Signal; gyorgyf@0: rdfs:comment """ gyorgyf@0: A chromagram feature. gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:DetectionFunction # Following Chris's suggestion at http://www.omras2.com/cgi-sys/cgiwrap/musicstr/view/Main/AudioFeaturesOntology gyorgyf@0: a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Detection function"; gyorgyf@0: rdfs:subClassOf af:Signal; gyorgyf@0: rdfs:comment """ gyorgyf@0: A detection function. gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:TempoDetectionFunction gyorgyf@0: a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Tempo detection function"; gyorgyf@0: rdfs:subClassOf af:DetectionFunction; gyorgyf@0: rdfs:comment """ gyorgyf@0: A tempo detection function gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:OnsetDetectionFunction gyorgyf@0: a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Onset detection function"; gyorgyf@0: rdfs:subClassOf af:DetectionFunction; gyorgyf@0: rdfs:comment """ gyorgyf@0: An onset detection function gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:TonalChangeDetectionFunction gyorgyf@0: a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Tonal change detection function"; gyorgyf@0: rdfs:subClassOf af:DetectionFunction; gyorgyf@0: rdfs:comment """ gyorgyf@0: A tonal change detection function gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:TonalContentSpace gyorgyf@0: a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Tonal content space"; gyorgyf@0: rdfs:subClassOf af:Signal; gyorgyf@0: rdfs:comment """ gyorgyf@0: A 6-D tonal content space gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:Amplitude gyorgyf@0: a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Amplitude"; gyorgyf@0: rdfs:subClassOf af:Signal; gyorgyf@0: rdfs:comment """ gyorgyf@0: Result of an amplitude following process gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:SpectralCentroid gyorgyf@0: a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Spectral centroid"; gyorgyf@0: rdfs:subClassOf af:Signal; gyorgyf@0: rdfs:comment """ gyorgyf@0: Spectral centroid gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:LogFrequencyCentroid gyorgyf@0: a owl:Class; gyorgyf@0: vs:term_Status "testing"; gyorgyf@0: rdfs:label "Log-frequency spectral centroid"; gyorgyf@0: rdfs:subClassOf af:SpectralCentroid; gyorgyf@0: rdfs:comment """ gyorgyf@0: Log-frequency spectral centroid gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:LinearFrequencyCentroid gyorgyf@0: a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Linear-frequency spectral centroid"; gyorgyf@0: rdfs:subClassOf af:SpectralCentroid; gyorgyf@0: rdfs:comment """ gyorgyf@0: Log-frequency spectral centroid gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:ZeroCrossingCount gyorgyf@0: a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Zero-crossing counts"; gyorgyf@0: rdfs:subClassOf af:Signal; gyorgyf@0: rdfs:comment """ gyorgyf@0: Zero-crossing counts gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: gyorgyf@0: af:signal_feature gyorgyf@0: a owl:DatatypeProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:domain mo:Signal; gyorgyf@0: rdfs:label "signal-level feature"; gyorgyf@0: rdfs:range af:Signal; gyorgyf@0: rdfs:comment """ gyorgyf@0: Associates an audio signal with a track-level signal feature. gyorgyf@0: eg. a spectrogram, a chromagram, an onset detection function. gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:value gyorgyf@0: a owl:DatatypeProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:subPropertyOf rdf:value; # Not sure about that bit gyorgyf@0: rdfs:domain af:Signal; gyorgyf@0: rdfs:label "value"; gyorgyf@0: rdfs:comment """ gyorgyf@0: Associates a signal resource as defined in the Music Ontology to a literal: its actual value. gyorgyf@0: For example, it can be used to link an onset detection function to a list of values. gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: gyorgyf@0: af:dimensions gyorgyf@0: a owl:DatatypeProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:domain af:Signal; gyorgyf@0: rdfs:label "dimensions"; gyorgyf@0: rdfs:comment """ gyorgyf@0: Associates a signal with its dimensions, eg. "12 3546". Equivalent to the mpeg7:dim attribute of the mpeg7:Raw gyorgyf@0: element. gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: gyorgyf@0: # gyorgyf@0: # PART 1 gyorgyf@0: # gyorgyf@0: # - This part of the ontology deals with classification of time intervals occuring on a timeline gyorgyf@0: # gyorgyf@0: gyorgyf@0: af:Segment a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Segment"; gyorgyf@0: rdfs:subClassOf event:Event; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier for a temporal region corresponding to the output gyorgyf@0: of an automatic process---an artificial cognitive agent. gyorgyf@0: """; gyorgyf@0: rdfs:subClassOf [ gyorgyf@0: a owl:Restriction; gyorgyf@0: owl:onProperty event:time; gyorgyf@0: owl:someValuesFrom tl:Interval gyorgyf@0: ] gyorgyf@0: . gyorgyf@0: af:StructuralSegment a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Structural Segment"; gyorgyf@0: rdfs:subClassOf af:Segment; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier trying to capture the notion of structure in an audio piece. gyorgyf@0: This classifier should be subsumed by more specific classifiers: speech/music gyorgyf@0: segmentation, structural music segmmentation (intro, verse, chorus, etc.). gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:Point a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Point"; gyorgyf@0: rdfs:subClassOf event:Event; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier for instants corresponding to the output of an automatic process---an gyorgyf@0: artificial cognitive agent (should be associated to a time:Instant---DL version). gyorgyf@0: """; gyorgyf@0: rdfs:subClassOf [ gyorgyf@0: a owl:Restriction; gyorgyf@0: owl:onProperty event:time; gyorgyf@0: owl:someValuesFrom tl:Instant gyorgyf@0: ] gyorgyf@0: . gyorgyf@0: gyorgyf@0: # Speech-related part gyorgyf@0: gyorgyf@0: af:SpeechSegment a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Speech"; gyorgyf@0: rdfs:subClassOf af:StructuralSegment; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier capturing the notion of an audio segment holding speech gyorgyf@0: content gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:Laugh a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Laugh"; gyorgyf@0: rdfs:subClassOf af:SpeechSegment; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier for laugh content gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:Text a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Text"; gyorgyf@0: rdfs:subClassOf af:SpeechSegment; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier allowing to associate some text to a segment gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:EmotionSegment a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Emotion segment"; gyorgyf@0: rdfs:subClassOf af:SpeechSegment; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier for emotional content gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:IdiomSegment a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Idiom segment"; gyorgyf@0: rdfs:subClassOf af:SpeechSegment; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier for recognized idiom (English with Irish accent, etc.) gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:PersonSpeaking a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Person speaking"; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier associating a FOAF description to a particular segment gyorgyf@0: (to classify genre, recognized speaker, etc.) gyorgyf@0: """; gyorgyf@0: rdfs:subClassOf af:SpeechSegment; gyorgyf@0: . gyorgyf@0: gyorgyf@0: # Music-related part gyorgyf@0: gyorgyf@0: af:MusicSegment a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Music"; gyorgyf@0: rdfs:subClassOf af:StructuralSegment; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier capturing the notion of an audio segment holding music. gyorgyf@0: This classifier can be subsumed with more specific classifiers. gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: gyorgyf@0: # Interval-based musical features gyorgyf@0: gyorgyf@0: af:MusicStructuralSegment a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Music structural segment"; gyorgyf@0: rdfs:subClassOf af:MusicSegment; gyorgyf@0: rdfs:comment """ gyorgyf@0: Classifier capturing the notion of chorus, verse, intro, bridge, phrase, etc. gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:ChordSegment a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier for chords. Equivalent concept as the one gyorgyf@0: in the Chord ontology. gyorgyf@0: """; gyorgyf@0: owl:equivalentClass ; gyorgyf@0: rdfs:subClassOf af:MusicSegment; gyorgyf@0: . gyorgyf@0: af:KeySegment a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier for keys. gyorgyf@0: In case of a \"clean cut\", instances of such events gyorgyf@0: should have one factor: the detected key (perhaps using the gyorgyf@0: key ontology at http://purl.org/NET/c4dm/keys.owl). gyorgyf@0: In other cases, we can put several keys as a factor, maybe with different confidence gyorgyf@0: factors, using event decomposition. gyorgyf@0: """; gyorgyf@0: rdfs:subClassOf af:MusicSegment; gyorgyf@0: rdfs:label "Key event"; gyorgyf@0: . gyorgyf@0: af:TonicSegment a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier for tonics. gyorgyf@0: In case of a \"clean cut\", instances of such events have one gyorgyf@0: factor. In other cases, this event can have several factors, each associated gyorgyf@0: with a particular confidence using event decomposition. gyorgyf@0: """; gyorgyf@0: rdfs:subClassOf af:MusicSegment; gyorgyf@0: rdfs:label "Tonic event"; gyorgyf@0: . gyorgyf@0: af:Major a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier for a major mode region. gyorgyf@0: In case of a \"clean cut\", instances of such events have one gyorgyf@0: factor. In other cases, this event can have several factors, each associated gyorgyf@0: with a particular confidence using event decomposition. gyorgyf@0: """; gyorgyf@0: rdfs:subClassOf af:MusicSegment; gyorgyf@0: rdfs:label "Major segment"; gyorgyf@0: . gyorgyf@0: af:Minor a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier for a minor mode region. gyorgyf@0: In case of a \"clean cut\", instances of such events have one gyorgyf@0: factor. In other cases, this event can have several factors, each associated gyorgyf@0: with a particular confidence using event decomposition. gyorgyf@0: """; gyorgyf@0: rdfs:subClassOf af:MusicSegment; gyorgyf@0: rdfs:label "Minor segment"; gyorgyf@0: . gyorgyf@0: af:Loudness a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:comment "Event holding a loudness value"; gyorgyf@0: rdfs:subClassOf af:MusicSegment; #or instant? or both? gyorgyf@0: rdfs:label "Loudness event"; gyorgyf@0: . gyorgyf@0: af:Pitch a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:comment "Event holding a pitch value (for example coming from a monophonic transcription process)"; gyorgyf@0: rdfs:subClassOf af:MusicSegment; gyorgyf@0: rdfs:label "Pitch event"; gyorgyf@0: . gyorgyf@0: af:Tempo a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:comment "Event holding a tempo value (120bpm...)"; gyorgyf@0: rdfs:subClassOf af:MusicSegment; gyorgyf@0: rdfs:label "Tempo event"; gyorgyf@0: . gyorgyf@0: af:Ornament a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:subClassOf af:MusicSegment; gyorgyf@0: rdfs:label "Ornament event"; gyorgyf@0: rdfs:comment "Classifying a temporal region holding a musical ornament"; gyorgyf@0: . gyorgyf@0: af:TimeSignature a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:subClassOf af:MusicSegment; gyorgyf@0: rdfs:label "Time signature"; gyorgyf@0: rdfs:comment "Classifying a temporal region with a particular time signature (what? there is something else than 4/4?? :-)"; gyorgyf@0: . gyorgyf@0: gyorgyf@0: gyorgyf@0: # Point-based musical features gyorgyf@0: gyorgyf@0: # An onset is the start of a musical event: gyorgyf@0: # {:evt a :Onset;event:time ?t1} => {_:me a :MusicalEvent; event:time ?t2. ?t2 tl:begins ?t1} gyorgyf@0: af:Onset a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Onset"; gyorgyf@0: rdfs:subClassOf af:Point; gyorgyf@0: rdfs:comment """ gyorgyf@0: A classifier corresponding to the output of an onset detection process. gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:TonalOnset a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Pitched onset"; gyorgyf@0: rdfs:subClassOf af:Onset; gyorgyf@0: rdfs:comment "A pitched onset"; gyorgyf@0: . gyorgyf@0: af:NonTonalOnset a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Percussive onset"; gyorgyf@0: rdfs:subClassOf af:Onset; gyorgyf@0: rdfs:comment "A percussive onset"; gyorgyf@0: . gyorgyf@0: af:Beat a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Beat event"; gyorgyf@0: rdfs:comment "A beat event (instantaneous)"; gyorgyf@0: rdfs:subClassOf af:Point; gyorgyf@0: . gyorgyf@0: af:Pitch a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Pitch event"; gyorgyf@0: rdfs:comment "Associate a point to a particular pitch"; gyorgyf@0: rdfs:subClassOf af:Point; gyorgyf@0: . gyorgyf@0: af:KeyChange a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Key change event"; gyorgyf@0: rdfs:comment "A key change event. The factor of such an event captures the key that holds after that event."; gyorgyf@0: rdfs:subClassOf af:Point; gyorgyf@0: . gyorgyf@0: af:TonicChange a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Tonic change event"; gyorgyf@0: rdfs:comment "A tonic change event. The factors of such events include the tonic that holds after the event."; gyorgyf@0: rdfs:subClassOf af:Point; gyorgyf@0: . gyorgyf@0: af:ModeChange a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Mode change event"; gyorgyf@0: rdfs:comment "A mode change event. The factors of such events include the mode that holds after the event."; gyorgyf@0: rdfs:subClassOf af:Point; gyorgyf@0: . gyorgyf@0: af:TonalChange a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Tonal change event"; gyorgyf@0: rdfs:comment "A tonal change event."; gyorgyf@0: rdfs:subClassOf af:Point; gyorgyf@0: . gyorgyf@0: af:ZeroCrossing a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Zero crossing"; gyorgyf@0: rdfs:comment "Classifier for a zero-crossing point"; gyorgyf@0: rdfs:subClassOf af:Point; gyorgyf@0: . gyorgyf@0: gyorgyf@0: # gyorgyf@0: # PART 2 gyorgyf@0: # gyorgyf@0: # - This part of the ontology defines some segment-specific concepts gyorgyf@0: # gyorgyf@0: gyorgyf@0: # Custom concepts gyorgyf@0: gyorgyf@0: # Speech-related gyorgyf@0: gyorgyf@0: af:Idiom a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Idiom"; gyorgyf@0: rdfs:comment """ gyorgyf@0: Idiom (English with Irish accent, Austrian German, etc.) gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:EnglishIdiom a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "English idiom"; gyorgyf@0: rdfs:comment """ gyorgyf@0: English idiom gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:standard_british_english a af:EnglishIdiom; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: dc:title "Standard British English"; gyorgyf@0: . gyorgyf@0: af:standard_us_english a af:EnglishIdiom; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: dc:title "Standard US English"; gyorgyf@0: . gyorgyf@0: af:english_irish_accent a af:EnglishIdiom; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: dc:title "English with an Irish accent"; gyorgyf@0: . gyorgyf@0: af:english_scottish_accent a af:EnglishIdiom; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: dc:title "English with a Scottish accent"; gyorgyf@0: . gyorgyf@0: af:GermanIdiom a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "German idiom"; gyorgyf@0: rdfs:comment """ gyorgyf@0: German idiom gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:austrian_german a af:GermanIdiom; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: dc:title "Austrian German"; gyorgyf@0: . gyorgyf@0: af:swiss_german a af:GermanIdiom; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: dc:title "Swiss German"; gyorgyf@0: . gyorgyf@0: af:standard_german a af:GermanIdiom; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: dc:title "Standard German"; gyorgyf@0: . gyorgyf@0: af:HungarianIdiom a owl:Class; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "Hungarian idiom"; gyorgyf@0: rdfs:comment "Hungarian idiom"; gyorgyf@0: . gyorgyf@0: af:standard_hungarian a af:HungarianIdiom; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: dc:title "Standard Hungarian"; gyorgyf@0: . gyorgyf@0: gyorgyf@0: # Predicates gyorgyf@0: gyorgyf@0: af:text a owl:DatatypeProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: a rdf:Property; gyorgyf@0: rdfs:comment """ gyorgyf@0: Relates a Text segment (classifying a time interval that can gyorgyf@0: be associated to some text) to a text string or other literals (number, etc.) gyorgyf@0: """; gyorgyf@0: rdfs:subPropertyOf event:hasLiteralFactor; gyorgyf@0: rdfs:domain af:Text; gyorgyf@0: rdfs:range rdfs:Literal; gyorgyf@0: . gyorgyf@0: af:idiom a owl:DatatypeProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: a rdf:Property; gyorgyf@0: rdfs:comment """ gyorgyf@0: Associates a segment which classify an idiom (English with Irish accent, etc.) to an actual idiom gyorgyf@0: """; gyorgyf@0: rdfs:subPropertyOf event:hasLiteralFactor; gyorgyf@0: rdfs:domain af:IdiomSegment; gyorgyf@0: rdfs:range af:Idiom; gyorgyf@0: . gyorgyf@0: af:person a owl:ObjectProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: a rdf:Property; gyorgyf@0: rdfs:comment """ gyorgyf@0: Associates a segment classified as holding speech content to a FOAF gyorgyf@0: profile (maybe holding information about genre, recognized speaker URI, etc.) gyorgyf@0: """; gyorgyf@0: rdfs:label "person"; gyorgyf@0: rdfs:domain af:PersonSegment; gyorgyf@0: rdfs:range foaf:Person; gyorgyf@0: . gyorgyf@0: af:emotional_intensity a owl:ObjectProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: a rdf:Property; gyorgyf@0: rdfs:comment """ gyorgyf@0: Associates an \"emotional intensity\" value to a gyorgyf@0: segment detected as being \"emotional\" gyorgyf@0: """; gyorgyf@0: rdfs:label "emotional intensity"; gyorgyf@0: rdfs:domain af:EmotionSegment; gyorgyf@0: rdfs:range rdfs:Literal; gyorgyf@0: . gyorgyf@0: gyorgyf@0: af:key a owl:ObjectProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:domain af:KeySegment; gyorgyf@0: rdfs:range owl:Thing; # More specific... gyorgyf@0: rdfs:subPropertyOf event:factor; gyorgyf@0: rdfs:label "key"; gyorgyf@0: rdfs:comment "Associates a key event to the corresponding key"; gyorgyf@0: . gyorgyf@0: af:new_key a owl:ObjectProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:domain af:KeyChange; gyorgyf@0: rdfs:range owl:Thing; gyorgyf@0: rdfs:subPropertyOf event:factor; gyorgyf@0: rdfs:label "new key"; gyorgyf@0: rdfs:comment "Associates a key change event to the new key, holding after the change"; gyorgyf@0: . gyorgyf@0: af:tonic a owl:ObjectProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:domain af:TonicSegment; gyorgyf@0: rdfs:range owl:Thing; gyorgyf@0: rdfs:subPropertyOf event:factor; gyorgyf@0: rdfs:label "tonic"; gyorgyf@0: rdfs:comment "Associates a tonic event with the corresponding tonic"; gyorgyf@0: . gyorgyf@0: af:new_tonic a owl:ObjectProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:domain af:TonicChangeEvent; gyorgyf@0: rdfs:range owl:Thing; gyorgyf@0: rdfs:subPropertyOf event:factor; gyorgyf@0: rdfs:label "new tonic"; gyorgyf@0: rdfs:comment "Tonic that holds after the tonic change event"; gyorgyf@0: . gyorgyf@0: af:new_mode a owl:ObjectProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:domain af:ModeChangeEvent; gyorgyf@0: rdfs:range owl:Thing; gyorgyf@0: rdfs:subPropertyOf event:factor; gyorgyf@0: rdfs:label "new mode"; gyorgyf@0: rdfs:comment "Mode that holds after the mode change event"; gyorgyf@0: . gyorgyf@0: gyorgyf@0: gyorgyf@0: # Literals associated with features gyorgyf@0: gyorgyf@0: af:feature a owl:DatatypeProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: a rdf:Property; gyorgyf@0: rdfs:comment """ gyorgyf@0: Associates a segment classifying a feature to the actual feature---we should use mpeg7 sort-of datatypes here gyorgyf@0: """; gyorgyf@0: rdfs:label "feature"; gyorgyf@0: rdfs:subPropertyOf event:literal_factor; gyorgyf@0: rdfs:domain af:Segment; gyorgyf@0: rdfs:range rdfs:Literal; gyorgyf@0: . gyorgyf@0: af:tempo a owl:DatatypeProperty; gyorgyf@0: rdfs:subPropertyOf af:feature; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "tempo"; gyorgyf@0: rdfs:domain af:Tempo; gyorgyf@0: rdfs:comment """ gyorgyf@0: Associates a tempo event to the corresponding tempo value. gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: af:pitch a owl:DatatypeProperty; gyorgyf@0: rdfs:subPropertyOf af:feature; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: rdfs:label "pitch"; gyorgyf@0: rdfs:domain af:Pitch; gyorgyf@0: rdfs:comment """ gyorgyf@0: Associates a pitch event to the corresponding pitch gyorgyf@0: """; gyorgyf@0: . gyorgyf@0: gyorgyf@0: #af:mfcc_2_10 (mean/variance) should go there, as well as af:chroma ... gyorgyf@0: gyorgyf@0: gyorgyf@0: gyorgyf@0: # gyorgyf@0: # Part III gyorgyf@0: # gyorgyf@0: # Generic things, related to outputs of automatic processes gyorgyf@0: # gyorgyf@0: # Most of these things should be elsewhere gyorgyf@0: # gyorgyf@0: gyorgyf@0: af:confidence a owl:DatatypeProperty; gyorgyf@0: vs:term_status "testing"; gyorgyf@0: a rdf:Property; gyorgyf@0: rdfs:comment """ gyorgyf@0: A really generic property, allowing to associate a confidence to a document or to a particular gyorgyf@0: resource (such as an automatically detected segment) gyorgyf@0: """; gyorgyf@0: rdfs:label "confidence"; gyorgyf@0: rdfs:range rdfs:Literal; gyorgyf@0: . gyorgyf@0: