cwrc / ontology

CWRC ontology - primary repository
13 stars 7 forks source link

Create oneOf constructs for items that straddle Language / Nationality / Culture #178

Closed rwarren2 closed 6 years ago

rwarren2 commented 7 years ago

eg: Portugese, English, French, etc...

joelacummings commented 7 years ago

Currently utilizes the same rdfs:label for both NationalHeritage and NationalIdentity. Utilizing label to link resources that are ambiguous in Orlando. Look at definition that links to relevant concepts, look at skosxl labels.

joelacummings commented 6 years ago

First thoughts are around the definition of an overloaded term type which defines the label once i.e. English and then uses rdf:type to subclass the applicable terms that it would be overloaded in i.e Nationality, Culture etc. The advantages to this method is that the label on appears once, and we only have to define a single instance for each overloaded term. This method was partially chosen since it appears that none of the other types include a definition meaning only one definition for the overloaded term is necessary. Definitions for NationalHeritage can be used for viewers interested in the meaning of a heritage but this is defined at the class level.

<owl:Class rdf:about="#overloadedTerm">
    <rdf:label lang="en">overloaded term</rdf:label>
    <rdfs:comment lang="en">Overloaded terms are those who share a single label when used in language but with several contexts that affect the meaning of that label. Labels will associate their type with each context they belong to. </rdfs:comment>
</owl:Class>

<cwrc:overloadedTerm rdf:type="#English">
    <rdfs:label lang="en">English</rdfs:label>
    <rdf:type rdf:resource="#NationalIdentity"/> <!-- Type is used to subclass the overloaded from other classes that it reflects -->
    <rdf:type rdf:resource="#Language"/>
    <skos:broader rdf:resource="#englishLabel"/>
    <skos:definition>Definition for English</skos:definition>
</cwrc:overloadedTerm>
rwarren2 commented 6 years ago

I'm confused about your explanation. The reason for the owl:oneOf structure is a term that could be one of any of the instances (using multiple rdf:type means that they are "and" both Natural Language / NationalIdentity at the same time instead of being "and/or") .

There is the issue of the concept of the label versus the rdfs:label that gets put on the screen. Which one are you trying to address?

joelacummings commented 6 years ago

Notes here for further discussion.

The goal is to reduce the number of structures, I think through the use of skosxl labels we can create better labels that include the specific context so when viewed in a graphical sense one is able to see that something is a national identity versus a culture etc. To potentially discuss with Huviz team.

ghost commented 6 years ago

Let’s put it on the agenda for our next meeting or the one after. If time allows, might be good to talk over with Deb.

On Sep 28, 2017, at 7:27 PM, Joel Cummings notifications@github.com wrote:

Notes here for further discussion.

The goal is to reduce the number of structures, I think through the use of skosxl labels we can create better labels that include the specific context so when viewed in a graphical sense one is able to see that something is a national identity versus a culture etc. To potentially discuss with Huviz team.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/cwrc/ontology/issues/178#issuecomment-332990638, or mute the thread https://github.com/notifications/unsubscribe-auth/AA1s9ZAaNLrYfKCPuxVRwDhKtIIDvGqrks5snCtUgaJpZM4PYDAy.

joelacummings commented 6 years ago

Yes this is something I'd like Deb's opinion on as well.

joelacummings commented 6 years ago

I'm now thinking we create instances for Language, Nationality and Culture to avoid creating triples that have the same label. Would look like the attached image. We can hopefully discuss when I return.

oneofconstructs

rwarren2 commented 6 years ago

Please see Issue #184 and Issue #6 which deals separately with the issue of triples with the same label. We need to address that problem separately.

The above diagram is a bit messy since it indicates that cwrc:jewishLabel or cwrc:englishLabel are owl:oneOf cwrc:NationalHeritage, cwrc:NationalIdentity or cwrc:GeographicalHeritage instead of being owl:oneOf of one instance of those classes. cwrc:OverloadedLabel should be cwrc:TextLabels which is the class used to represent labels.

Attached is part of the AnnaLeonOwens diagram that outlines the current solution that I'd like cloned to other circumstances. languagesnationalityoneof

joelacummings commented 6 years ago

Sorry you’re right that wasn’t as extensive as it should have been. What I was trying to illustrate is that instead of like you have above we don’t declare cwrc:englishNationalHeritage but instead just refer to it as the (owl:OneOf) cwrc:NationalHertiage instance along with the englishLabel because the cwrc:englishNationalHeritage really doesn’t appear to add anything, there’s no specific definition that NationalHeritage couldn’t cover in my mind. So you’d have NationalHeritage as a Class and an Instance to allow for existing functionality while reducing the number of triples and reducing duplicate labels. The way it currently is you’d have a instance of NationalHeritage for each language that overlaps. I want to get the duplicate label issue solved here as well instead of going back and solving it later, this would also reduce the number of triples without hindering us I believe.

rwarren2 commented 6 years ago

We have some flexibility in how to handle the owl:oneOf and the logic works in a few ways, but in what you're describing 3.1.1 Enumeration cwrc:NationalHeritage, cwrc:NationalIdentity or cwrc:GeographicalHeritage would be instances of cwrc:englishLabel and cwrc:jewishLabel and cwrc:dutchLabel which does not seem right.

The reason for the longhand cwrc:englishNationalHeritage is that Orlando allows the author to explicitly reference english as a national heritage (or Identity, etc) or simply use the word without specificity. Hence we need instances for these cases. We can specify this during extraction, but then we'd be repeating the same triple structure all the time.

The graphs are over-simplified to be readable but in the end we want something along the lines that allows the cwrc:englishLabel to be potentially anything that it can 3.1.3.2 owl:unionOf be without committing the instance to this.

SusanBrown commented 6 years ago

I love the idea of reducing the number of instances and conceptually I think that works well because we're precisely saying that they can't be fully disambiguated.

At the same time, obviously we can't assert that NationalHeritage is an instance of a CWRClabel instance such as englishLabel.

rwarren2 commented 6 years ago

We can't eat the piece of cake and keep it too.

cwrc:englishLabel deals with the cases that can't be fully disambiguated. cwrc:englishNationalHeritage deals with the Orlando markup where it's been typed as such.

joelacummings commented 6 years ago

Ok I now understand what you’re referring to Rob. I didn’t realize that was how Orlando was handling it. With that being the case I think Deb and I may have an answer.

joelacummings commented 6 years ago

The definition of CWRC represents resolves this issue -- further discussion can be had in #279