- From: Richard Cyganiak <richard@cyganiak.de>
- Date: Sat, 2 Mar 2013 18:23:42 +0000
- To: Dave Reynolds <dave.e.reynolds@gmail.com>
- Cc: W3C public GLD WG WG <public-gld-wg@w3.org>
On 2 Mar 2013, at 17:10, Dave Reynolds wrote: > ISSUE-39 [1] concerns the use of skos:Collections to represent the set of allowed codes for a qb:CodedProperty such as a qb:DimensionProperty. > > Proposed solution: Generalize the range of qb:codeList. That sounds good to me. > Introduce qb:CodeList as a super class of skos:Collection and skos:ConceptScheme. This has the unfortunate side effect of making every skos:Collection and skos:ConceptScheme an instance of qb:CodeList, which I think is not desirable. Options, in order of my personal preference: 1. Declare the range of qb:codeList like this: qb:codeList rdfs:range [ owl:unionOf (skos:ConceptScheme skosCollection) ]; 2. Define the subclass relationship like this: qb:CodeList rdfs:subClassOf [ owl:unionOf (skos:ConceptScheme skosCollection) ]; 3. Leave the range of qb:CodeList formally undefined. Best, Richard > > Specifically: > > qb:codeList a rdf:Property, owl:ObjectProperty; > rdfs:label "code list"@en; > rdfs:comment "gives the code list associated with a CodedProperty"@en; > rdfs:domain qb:CodedProperty; > rdfs:range qb:CodeList; > rdfs:isDefinedBy <http://purl.org/linked-data/cube>; > . > > qb:CodeList a rdfs:Class, owl:Class; > rdfs:label "Code List"@en; > rdfs:comment "Superclass of things that can be used as the code lists for coded properties, includes skos:ConceptScheme and skos:Collection"@en; > rdfs:isDefinedBy <http://purl.org/linked-data/cube>; > . > > skos:ConceptScheme rdfs:subClassOf qb:CodeList . > skos:Collection rdfs:subClassOf qb:CodeList . > > > > This also provides a basis the proposed solution to ISSUE-31 by adding: > > qb:Hierarchy a rdfs:Class, owl:Class; > rdfs:subClassOf qb:CodeList; > rdfs:label "Heirarchy"@en; > rdfs:comment "Represents a generalized hierarchy of concepts which can be used for coding. The hierarchy is defined by one or more roots together with a property which relates concepts in the hierarchy to either their parent or their child concept. At least one of qb:narrowingProperty or qb:broadeningProperty must be specified, it is permissible to provide both. The same concepts may be members of multiple hierarchies provided that different qb:[narrowing/broadening]Property values are using for each hierarchy."@en; > . > > qb:hierarchyRoot a rdfs:Property, owl:ObjectProperty; > rdfs:domain qb:Hierarchy; > rdfs:range skos:Concept; > rdfs:comment "Specifies a root of the hierarchy. A hierarchy may have multiple roots but must have at least one."@en; > . > > qb:narrowingProperty a rdfs:Property, owl:ObjectProperty; > rdfs:label "narrowing property"@en; > rdfs:domain qb:Hierarchy; > rdfs:range rdf:Property; > rdfs:comment "Specifies a property which relates a parent concept in the hierarchy to a child concept. One of qb:narrowingProperty or qb:broadeningProperty must be given but it is not necessary to have both. Note that a child may have more than one parent."@en; > . > > qb:broadeningProperty a rdfs:Property, owl:ObjectProperty; > rdfs:label "broadening property"@en; > rdfs:domain qb:Hierarchy; > rdfs:range rdf:Property; > rdfs:comment "Specifies a property which relates a child concept in the hierarchy to a parent concept. One of qb:narrowingProperty or qb:broadeningProperty must be given but it is not necessary to have both. Note that a child may have more than one parent."@en; > . > > qb:AggregatableHierarchy > rdfs:label "Aggregatable Hierarchy"@en; > rdfs:subClassOf qb:Hierarchy; > rdfs:comment "Indicates a hierarchy in which each parent concept is a disjoint union of its child concepts. So that measures such as simple counts may be aggregated up the hierarchy."@en; > . > > Dave > > > [1] http://www.w3.org/2011/gld/track/issues/39 >
Received on Saturday, 2 March 2013 18:24:15 UTC