Training:Advanced Ontology Engineering at FOI - 2011/Ontology Testing/Testing Solution

From Odp

(Difference between revisions)
Jump to: navigation, search
Line 18: Line 18:
   }  
   }  
*CQ3: roles are not time-indexed, they are asserted through specific properties, e.g. bassPlayerOf
*CQ3: roles are not time-indexed, they are asserted through specific properties, e.g. bassPlayerOf
 +
** We would need to add a new class (according to the n-ary relation pattern) representing the situation of a person playing a role in a band, and then relate  the situation to a band, a person, a role and a time interval.
*CS4: missing name property for persons, Anthony Kiedis is using the property for bands and is inferred to be a band. Also missing the contextual statement that implies cardinality restrictions on people and bands, on the hasName property.  
*CS4: missing name property for persons, Anthony Kiedis is using the property for bands and is inferred to be a band. Also missing the contextual statement that implies cardinality restrictions on people and bands, on the hasName property.  
 +
** Either add Person to the domain of the property (Band or Person) or add a new datatype property that has the domain Person and range xsd:string.
*Ontology is inconsistent because the domain of releaseDate is the intersection of Album and Track instead of the union.
*Ontology is inconsistent because the domain of releaseDate is the intersection of Album and Track instead of the union.
 +
** The domain should be Album or Track (in TopBraid "or" means union, while adding two separate domains mean intersection).
*A track realising "some" song doesn't mean only one!
*A track realising "some" song doesn't mean only one!
** We should add a restriction on the Track, under rdfs:SubClassOf: recordingOf exactly 1
** We should add a restriction on the Track, under rdfs:SubClassOf: recordingOf exactly 1

Revision as of 09:55, 6 October 2011

Problems in musicindustry.owl

  • CQ2: The end time is missing.
    • The query you would like to be able to write:
  SELECT ?band ?member ?start ?end
  WHERE {
     ?x :band ?band .
     ?x :member ?member .
     ?x :membershipStartDate ?start .
     ?x :membershipEndDate ?end
  } 
    • But the end date property is missing, hence the only thing we can write is:
  SELECT ?band ?member ?start
  WHERE {
     ?x :band ?band .
     ?x :member ?member .
     ?x :membershipStartDate ?start 
  } 
  • CQ3: roles are not time-indexed, they are asserted through specific properties, e.g. bassPlayerOf
    • We would need to add a new class (according to the n-ary relation pattern) representing the situation of a person playing a role in a band, and then relate the situation to a band, a person, a role and a time interval.
  • CS4: missing name property for persons, Anthony Kiedis is using the property for bands and is inferred to be a band. Also missing the contextual statement that implies cardinality restrictions on people and bands, on the hasName property.
    • Either add Person to the domain of the property (Band or Person) or add a new datatype property that has the domain Person and range xsd:string.
  • Ontology is inconsistent because the domain of releaseDate is the intersection of Album and Track instead of the union.
    • The domain should be Album or Track (in TopBraid "or" means union, while adding two separate domains mean intersection).
  • A track realising "some" song doesn't mean only one!
    • We should add a restriction on the Track, under rdfs:SubClassOf: recordingOf exactly 1
  • Definition of PopBand should be "equivalent class" instead of subclass restriction
  • The second reasoning requirement is missing, hence we cannot infer the genre of an album - can be done with an OWL 2 property chain.
  • Some missing domains and ranges, missing annotations etc.
Personal tools
Quality Committee
Content OP publishers