SkosCoreGuideToc/SectionFacets
Modelling Fundamental Facets
@@TODO what are fundamental facets (a.k.a. fundamental categories)?
@@TODO example of fundamental facets in a thesaurus (AAT).
@@TODO how to model this example in RDF using RDFS, OWL and SKOS ...
This is a description of how to model 'fundamental facets' (a.k.a. 'fundamental categories') within a thesaurus.
I'll take some facets from the AAT as an example.
For each fundamental facet in the concept scheme, define a sub-class of the skos:Concept
class e.g. ...
<rdf:RDF> <rdfs:Class rdf:about="ObjectConcept"> <rdfs:subClassOf rdf:about="&skos;Concept"/> </rdfs:Class> <rdfs:Class rdf:about="ProcessConcept"> <rdfs:subClassOf rdf:about="&skos;Concept"/> </rdfs:Class> <rdfs:Class rdf:about="TimeConcept"> <rdfs:subClassOf rdf:about="&skos;Concept"/> </rdfs:Class> <rdfs:Class rdf:about="MaterialConcept"> <rdfs:subClassOf rdf:about="&skos;Concept"/> </rdfs:Class> </rdf:RDF>
... then for each fundamental facet, define the root concept for that facet e.g. ...
<rdf:RDF> <aat:ObjectConcept rdf:about="RootObjectConcept"> <skos:prefLabel>Objects</skos:prefLabel> </aat:ObjectConcept> <aat:ProcessConcept rdf:about="RootProcessConcept"> <skos:prefLabel>Processes</skos:prefLabel> </aat:ProcessConcept> <aat:MaterialConcept rdf:about="RootMaterialConcept"> <skos:prefLabel>Materials</skos:prefLabel> </aat:MaterialConcept> <aat:TimeConcept rdf:about="RootTimeConcept"> <skos:prefLabel>Times</skos:prefLabel> </aat:TimeConcept> </rdf:RDF>
... then define these root concepts as the top concepts for your scheme, e.g. ...
<rdf:RDF> <skos:ConceptScheme rdf:about="theAAT"> <dc:title>The Art and Architecture Thesaurus</dc:title> <skos:hasTopConcept rdf:resource="RootObjectConcept"/> <skos:hasTopConcept rdf:resource="RootProcessConcept"/> <skos:hasTopConcept rdf:resource="RootMaterialConcept"/> <skos:hasTopConcept rdf:resource="RootTimeConcept"/> </skos:ConceptScheme> </rdf:RDF>
Use these facet classes when describing other concepts in the scheme, e.g. ...
<rdf:RDF> <aat:ObjectConcept rdf:about="001"> <skos:prefLabel>brocade</skos:prefLabel> <skos:related rdf:resource="007"/> <skos:broader rdf:resource="003"/> </aat:ObjectConcept> <aat:ObjectConcept rdf:about="003"> <skos:prefLabel>???</skos:prefLabel> <skos:narrower rdf:resource="001"/> </aat:ObjectConcept> <aat:ProcessConcept rdf:about="007"> <skos:prefLabel>brocading</skos:prefLabel> <skos:related rdf:resource="001"/> </aat:ProcessConcept> </rdf:RDF>
Now, if you want to express the fact that no concept may be a member of more than one facet (i.e. all facets are mutually disjoint classes of concept) you can use owl, e.g. ...
<rdf:RDF> <rdf:Description rdf:about="ObjectConcept"> <owl:disjointWith rdf:resource="ProcessConcept"/> <owl:disjointWith rdf:resource="MaterialConcept"/> <owl:disjointWith rdf:resource="TimeConcept"/> </rdf:Description> <rdf:Description rdf:about="ProcessConcept"> <owl:disjointWith rdf:resource="MaterialConcept"/> <owl:disjointWith rdf:resource="TimeConcept"/> </rdf:Description> <rdf:Description rdf:about="MaterialConcept"> <owl:disjointWith rdf:resource="TimeConcept"/> </rdf:Description> </rdf:RDF>
The End.