how to reuse a faceted classification and put it on the ... · represented according to multiple...

27
How to Reuse a Faceted Classification and Put It on the Semantic Web Bene Rodriguez-Castro Hugh Glaser Les Carr Shanghai - 9 th ISWC - 8 th November 2010

Upload: others

Post on 23-Mar-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

How to Reuse a Faceted Classification and Put It on the SemanticWeb

Bene Rodriguez-CastroHugh GlaserLes Carr

Shanghai - 9th ISWC - 8th November 2010

Page 2: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Outline• Introduction

• Faceted Classification Scheme (FCS)

• Dish Detergent FCS Example

• FCS Generic Structure

• Normalisation Ontology Design Pattern (ODP)

• Normalisation ODP Example

• Normalisation ODP Generic Structure

• Alignment: FCS to Normalisation ODP

• Dish Detergent FCS Normalisation Example

• Conclusions

• Future Work2

Page 3: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Introduction (1)• Modeling scenario

– There are domain concepts that can be represented according to multiple classification criteria

– The ontology model requires to represent multiple classification criteria of the domain concept in classification criteria of the domain concept in question

– A lack of guidelines in the context of the Semantic Web leaves ample room for ad-hoc practices

3

Page 4: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Introduction (2)

colour

region

grape

base

topping

winepizza

4

gender

kinship

form

brand

scent

persondish detergent

Page 5: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Faceted Classification Scheme (FCS)• FCS: a set of mutually exclusive and jointly exhaustive

categories, each made by isolating one perspective on the items (a facet), that combine to completely describe all the objects in question (Denton, 2003).

• Facet Analysis: the sorting of terms in a given field of knowledge into homogeneous, mutually exclusive facets,

a single each derived from the parent universe by a single characteristic of division (Vickery, 1960).

• The Principles of Homogeneity and Mutual Exclusivity state respectively that facets must be homogeneous and mutually exclusive, the contents of any two facets cannot overlap, and that each facet must represent only one characteristic of division of the parent universe (Spiteri, 1998).

5

Page 6: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Dish Detergent FCS Example (1)

Dish Detergent (Denton, 2003)

Facets Terms

Agent dishwasher, person

Form gel, gelpac, liquid, powder, tablet

Brand Name Cascade, Electrasol, Ivory, No Name, Palmolive, President's Choice, Sunlight

6

President's Choice, Sunlight

Scent green apple, green tea, lavender, lemon, mandarin, ocean breeze, orange blossom, orchard fresh, passion flower, ruby red grapefruit, ylang ylang

Effect on Agent aroma therapy (subdivisions: invigorating, relaxing)

Special Property antibacterial

Denton, W.: How to make a faceted classification and put it on the web (November 2003), http://www.miskatonic.org/library/facet-web-howto.html

Page 7: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Dish Detergent FCS Example (2)

• President's Choice Antibacterial Hand Soap & Dishwa shing Liquid

– Agent: person

– Form: liquid

– Brand Name: President's Choice

– Scent: (none)

– Effect on Agent: (none)

– Special Property: antibacterial

• Palmolive Aroma Therapy, Lavender and Ylang Ylang

– Agent: person

– Form: liquid

– Brand Name: Palmolive

– Scent: lavender, ylang ylang

– Effect on Agent: aroma therapy

– Special Property: (none) 7

Page 8: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

FCS Generic Structure

• TDC: Target Domain Concept

• Faceti: Facet1, Facet2, ..., rest of facets.

• FiTermj: Terms or foci organized by facets:

– Facet1: F1Term1, F1Term2, ..., rest of terms in Facet1.– Facet1: F1Term1, F1Term2, ..., rest of terms in Facet1.

– Facet2: F2Term1, F2Term2, ..., rest of terms in Facet2.

– ... rest of terms by facet.

• Itemx: Set of items (from the TDC) to classify: Item1, Item2, ..., rest of items.

8

Page 9: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Normalisation ODP• Regarded as a best practice and also known as Modularisation, or

Untangling (Rector, 2003).

• Motivation: An ontology where a class can have many superclasses(poly-hierarchy).

– Subsumption becomes difficult to maintain and error-prone.

– Subsumption is implicitly stated.

• Aim: to untangle the poly-hierarchy using restrictions to encode subsumption relationships.

– Normalisation allows exactly one unlabelled flavour of is-kind-of link corresponding to the links declared in the primitive skeleton. All others are inferred by the reasoner.

– Assertion of multiple inheritance relations among primitive concepts are not allowed.

9

Rector, A.L.: Modularisation of domain ontologies implemented in description logics and related formalisms including owl. In: Proceedings of the 2nd International Conference on Knowledge Capture, K-CAP 2003, pp. 121–128. ACM, New York (2003)

Page 10: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Normalisation ODP Example (1)• Modeling problem (Egana, 2008)

poly-hierarchy

Target Domain Concept

10Egana, 2008. http://www.gong.manchester.ac.uk/odp/html/Normalisation.html

Page 11: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Normalisation ODP Example (2)• Implementation:

– Identify the modules

– Primitive classes form disjoint homogeneous trees

– Code the subsumption relationships using restrictions

11Egana, 2008. http://www.gong.manchester.ac.uk/odp/html/Normalisation.html

Asserted ontology model (Egana, 2008)

owl:topObjectPropertyowl:topObjectPropertyowl:topObjectPropertyowl:topObjectProperty|||| :performs_function:performs_function:performs_function:performs_function

Page 12: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Normalisation ODP Example (3):DefensiveCell:DefensiveCell:DefensiveCell:DefensiveCell

rdf:type owl:Class ;

rdfs:subClassOf :Cell:Cell:Cell:Cell;

owl:equivalentClassowl:equivalentClassowl:equivalentClassowl:equivalentClass [ rdf:type owl:Restriction ;

owl:onProperty :performs_function:performs_function:performs_function:performs_function;

owl:someValuesFrom :Defence :Defence :Defence :Defence ] .

12

:Neutrophil:Neutrophil:Neutrophil:Neutrophil

rdf:type owl:Class ;

rdfs:subClassOfrdfs:subClassOfrdfs:subClassOfrdfs:subClassOf :AnimalCell:AnimalCell:AnimalCell:AnimalCell,

[ rdf:type owl:Restriction ;

owl:onProperty :performs_function:performs_function:performs_function:performs_function;

owl:someValuesFrom :Defence :Defence :Defence :Defence ] ,

[ rdf:type owl:Restriction ;

owl:onProperty :performs_function:performs_function:performs_function:performs_function;

owl:someValuesFrom :Circulation :Circulation :Circulation :Circulation ] .

Page 13: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Normalisation ODP Example (4)• Result:

– The ontology gets untangled

– Reasoner maintains subsumption relations

– OWL DL ontology model

13Egana, 2008. http://www.gong.manchester.ac.uk/odp/html/Normalisation.html

Inferred ontology model (Egana, 2008)

Page 14: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Normalisation ODP Generic Structure (1)

:SpecificTDC:SpecificTDC:SpecificTDC:SpecificTDCxxxx

• Elements in the generic structure:

– :TDC

– :Modulei

– :MiClassj

– :MiClassjTDC

– :SpecificTDCx

14

:Module:Module:Module:Moduleiiii

:M:M:M:MiiiiClassClassClassClassjjjjTDCTDCTDCTDC

:TDC:TDC:TDC:TDC

:M:M:M:MiiiiClassClassClassClassjjjj

owl:topObjectPropertyowl:topObjectPropertyowl:topObjectPropertyowl:topObjectProperty|||| :performs_function:performs_function:performs_function:performs_function

:hasModule:hasModule:hasModule:hasModuleiiii

– :hasModulei

Page 15: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Normalisation ODP Generic Structure (2)• Elements in the generic structure:

– :TDC

– :Modulei

– :MiClassj

– :MiClassjTDC

– :SpecificTDCx

owl:Thing| :Modulei

| :MiClassj| :TDC

15

– :hasModulei| :TDC

| (≡) :MiClassjTDC| :SpecificTDCx

owl:topObjectProperty| :hasModulei

(≡) denotes a defined class

Page 16: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

FCS Generic Structure

• TDC: Target Domain Concept

• Faceti: Facet1, Facet2, ..., rest of facets.

• FiTermj: Terms or foci organized by facets:

– Facet1: F1Term1, F1Term2, ..., rest of terms in Facet1.– Facet1: F1Term1, F1Term2, ..., rest of terms in Facet1.

– Facet2: F2Term1, F2Term2, ..., rest of terms in Facet2.

– ... rest of terms by facet.

• Itemx: Set of items (from the TDC) to classify: Item1, Item2, ..., rest of items.

16

Page 17: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Alignment: FCS to Normalisation ODP (1)• facet in FCSs and module (or semantic axis) in the Normalisation ODP

– One perspective of the domain being modeled.

– A single characteristic of division.

– A single criterion of classification.

• facets in a FCS to be homogeneous and mutually exclusive.

• modules in the Normalisation ODP to be comprised of primitive classes

17

• modules in the Normalisation ODP to be comprised of primitive classes arranged in a structure of disjoint homogeneous class trees.

• Both, a facet term and a module subclass, represents the same notion in their respective conceptual models. A subdivision, a refinement of the facet or module that they complement respectively.

• Both, an item in the FCS and a class with multiple parents in the Normalisation ODP, represent the same notion in their respective conceptual models. An element that is to be classified.

Page 18: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Alignment: FCS to Normalisation ODP (2)

Information Science

Ontology Modelling

FCS Normalisation ODP FCS in Norm. ODP OWL Implementatio n

TDC :TDC owl:Class (primitive)

Faceti:Modulei :Faceti owl:Class (primitive)

:hasModulei :hasFaceti owl:ObjectProperty

FiTermj

:MiClassj :FiTermj owl:Class (primitive)

:MiClassjTDC :FiTermjTDC owl:Class(defined) (≡)

Itemx :SpecificTDCx owl:Class (primitive)

18

Page 19: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Alignment: FCS to Normalisation ODP (3)

owl:Thing| :Modulei

| :MiClassj| :TDC

| (≡) :MiClassjTDC| :SpecificTDCx

owl:topObjectProperty| :hasModulei

TDCTDCTDCTDC: Target Domain ConceptFacetFacetFacetFacetiiii: Set of facets

Facet1, Facet2, ..., FacetnFFFFiiiiTermTermTermTermjjjj: Terms or foci organized by facets

Facet1: F1Term1, F1Term2, ..., F1TermnFacet2: F2Term1, F2Term2, ..., F2Termn... rest of terms by facet

ItemItemItemItemxxxx: Set of items to classifyItem1, Item2, ..., Itemn

ComparativeAnalysis

FCS Generic Structure Normalisation ODP Generic Stru cture

19

Information Science

Ontology Modelling

FCS Norm. ODP FCS in Norm. ODP

TDC :TDC

Faceti

:Modulei :Faceti

:hasModulei :hasFaceti

FiTermj

:MiClassj :FiTermj

:MiClassjTDC :FiTermjTDC

Itemx :SpecificTDCx

owl:Thing| :Faceti

| :FiTermj| :TDC

| (≡) :FiTermjTDC| :SpecificTDCx

owl:topObjectProperty| :hasFaceti

Alignment Guidelines FCS in Normalisation ODP Generic Structure

Page 20: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Dish Detergent FCS Example (1)

Dish Detergent (Denton, 2003)

Facets Terms

Agent dishwasher, person

Form gel, gelpac, liquid, powder, tablet

Brand Name Cascade, Electrasol, Ivory, No Name, Palmolive, President's Choice, Sunlight

20

President's Choice, Sunlight

Scent green apple, green tea, lavender, lemon, mandarin, ocean breeze, orange blossom, orchard fresh, passion flower, ruby red grapefruit, ylang ylang

Effect on Agent aroma therapy (subdivisions: invigorating, relaxing)

Special Property antibacterial

Denton, W.: How to make a faceted classification and put it on the web (November 2003), http://www.miskatonic.org/library/facet-web-howto.html

Page 21: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Dish Detergent FCS Normalisation Example (1)

ComparativeAnalysis

owl:Thing| :Faceti

| :FiTermj| :TDC

| (≡) :FiTermjTDC| :SpecificTDCx

owl:topObjectProperty| :hasFaceti

Dish Detergent FCS FCS in Normalisation ODP Generic Structure

Facet Terms

Agent dishwasher, person

Form gel, gelpac, liquid, powder, tablet

Brand Name Cascade, Electrasol, Ivory, […]

Scent green apple, green tea, lavender, […]

Effect on Agent aroma therapy (invigorating, relaxing)

Special Property Antibacterial

21

owl:Thingowl:Thingowl:Thingowl:Thing| :Agent:Agent:Agent:Agent| :Person| :Dishwasher

| :Form:Form:Form:Form| :Gel| :Gelpac

| [...]| :BrandName:BrandName:BrandName:BrandName| :Cascade| :Electrasol

| [...]| :Scent:Scent:Scent:Scent| :GreenApple| :GreenTea

| [...]| :EffectOnAgent:EffectOnAgent:EffectOnAgent:EffectOnAgent| :AromaTherapy

| :Invigorating| :Relaxing

| :SpecialProperty:SpecialProperty:SpecialProperty:SpecialProperty| :Antibacterial

owl:Thingowl:Thingowl:Thingowl:Thing| :DishDetergent (:TDC):DishDetergent (:TDC):DishDetergent (:TDC):DishDetergent (:TDC)| (≡) :ManualDishDetergent| (≡) :DishwasherDishDetergent| (≡) :GelDishDetergent| (≡) :GelpacDishDetergent| (≡) [...]| (≡) :CascaseDishDetergent| (≡) :ElectrasolDishDetergent| (≡) [...]| (≡) :GreenAppleDishDetergent| (≡) :GreenTeaDishDetergent| (≡) [...]| (≡) :AromaTherapyDishDetergent| (≡) :InvigoratingDishDetergent| (≡) :RelaxingDishDetergent

| (≡) :AntibacterialDishDetergent| :PresidentsPersonLiquidAntibacterial| :PalmoliveAromaTherapyLavenderYlangYlang| :SpecificDishDetergent3| (... rest of :SpecificDishDetergentx)

Dish Detergent FCSNormalised Ontology

Page 22: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Dish Detergent FCS Normalisation Example (2)

owl:Thingowl:Thingowl:Thingowl:Thing| :Agent:Agent:Agent:Agent

| :Person| :Dishwasher

| :Form:Form:Form:Form| :Gel| :Gelpac| :Liquid | [...]

| :BrandName:BrandName:BrandName:BrandName| :Cascade

owl:Thingowl:Thingowl:Thingowl:Thing| :DishDetergent (:TDC):DishDetergent (:TDC):DishDetergent (:TDC):DishDetergent (:TDC)

| (≡) :ManualDishDetergent| (≡) :DishwasherDishDetergent| (≡) :GelDishDetergent| (≡) :GelpacDishDetergent| (≡) :LiquidDishDetergent | (≡) [...]| (≡) :CascaseDishDetergent| (≡) :ElectrasolDishDetergent| (≡) :IvoryDishDetergent

:hasAgent

• FCS Normalised Ontology

22

| :Cascade| :Electrasol| :Ivory| [...]

| :Scent:Scent:Scent:Scent| :GreenApple| :GreenTea| :Lavender| [...]

| :EffectOnAgent:EffectOnAgent:EffectOnAgent:EffectOnAgent| :AromaTherapy

| :Invigorating| :Relaxing

| :SpecialProperty:SpecialProperty:SpecialProperty:SpecialProperty| :Antibacterial

| (≡) :IvoryDishDetergent| (≡) [...]| (≡) :GreenAppleDishDetergent| (≡) :GreenTeaDishDetergent| (≡) :LavenderDishDetergent| (≡) [...]| (≡) :AromaTherapyDishDetergent| (≡) :InvigoratingDishDetergent| (≡) :RelaxingDishDetergent

| (≡) :AntibacterialDishDetergent| :PresidentsPersonLiquidAntibacterial| :PalmoliveAromaTherapyLavenderYlangYlang| :SpecificDishDetergent3| (... rest of :SpecificDishDetergentx)

http://purl.org/net/project/enakting/ontology/detergent_fcs_norm

Page 23: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Dish Detergent FCS Example (2)

• President's Choice Antibacterial Hand Soap & Dishwa shing Liquid

– Agent: person

– Form: liquid

– Brand Name: President's Choice

– Scent: (none)

– Effect on Agent: (none)

– Special Property: antibacterial

• Palmolive Aroma Therapy, Lavender and Ylang Ylang

– Agent: person

– Form: liquid

– Brand Name: Palmolive

– Scent: lavender, ylang ylang

– Effect on Agent: aroma therapy

– Special Property: (none) 23

Page 24: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

:PresidentsPersonLiquidAntibacterial:PresidentsPersonLiquidAntibacterial:PresidentsPersonLiquidAntibacterial:PresidentsPersonLiquidAntibacterial

rdf:type owl:Class ;

rdfs:subClassOfrdfs:subClassOfrdfs:subClassOfrdfs:subClassOf :DishDetergent :DishDetergent :DishDetergent :DishDetergent ,

[ rdf:type owl:Restriction ;

owl:onProperty :hasAgent:hasAgent:hasAgent:hasAgent;

owl:someValuesFrom :Person :Person :Person :Person ] ,

[ rdf:type owl:Restriction ;

Dish Detergent FCS Normalisation Example (3)

24

[ rdf:type owl:Restriction ;

owl:onProperty :hasForm:hasForm:hasForm:hasForm;

owl:someValuesFrom :Liquid :Liquid :Liquid :Liquid ] ,

[ rdf:type owl:Restriction ;

owl:onProperty :hasBrandName:hasBrandName:hasBrandName:hasBrandName;

owl:someValuesFrom :PresidentsChoice :PresidentsChoice :PresidentsChoice :PresidentsChoice ] ,

[ rdf:type owl:Restriction ;

owl:onProperty :hasSpecialProperty:hasSpecialProperty:hasSpecialProperty:hasSpecialProperty;

owl:someValuesFrom :Antibacterial :Antibacterial :Antibacterial :Antibacterial ] ,

Page 25: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Dish Detergent FCS Normalisation Example (4)

• FCS Normalised Ontology

25

Page 26: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Conclusions• Initial set of basic design guidelines to develop an ontology model within

OWL DL that supports the representation of multiple classification criteria of a specific domain concept.

• A series of mappings between the elements of a generic FCS and the Normalization ODP have been identified that allow us to convert a given FCS into an OWL DL ontology model following a consistent and systematic approach.

• The guidelines presented in this first effort consider explicitly the conceptualization of existing classification criteria in the context of ontology modeling for the Semantic Web and provide a partial solution to the problem scenario described.

• An existing FCS example in the domain of “Dishwashing Detergent” is used to illustrate the main steps of our conversion procedure

26

Page 27: How to Reuse a Faceted Classification and Put It on the ... · represented according to multiple classification criteria – The ontology model requires to represent multiple classification

Future Work• FCS and Normalization ODP: bidirectional alignment?

• Multiple FCSs in the same ontology model

• Universal Faceted Classifications

• Revisiting the Normalization ODP using OWL 2 meta-modelling (punning)modelling (punning)

• :MiClassj and :SpecificTDCx - owl:Class or owl:NamedIndividual

27