luckinet / ontologics

Code-Logics to Handle Ontologies
https://luckinet.github.io/ontologics/
GNU General Public License v3.0
3 stars 2 forks source link

Document the conceptual understanding of "an ontology" as seen by `ontologics` #3

Open rue-a opened 2 years ago

rue-a commented 2 years ago

I'm not sure if the IDs should resemble the hierarchy of the ontology. The problem that I see here, is that this requires the ontology to be strictly hierarchical, which renders it less flexible. This does not have to be bad, but it prevents a given concept from having two different broader concepts. A concept like "wheat" can, depending on the perspective, both be narrower than food and cropland.

I understand that different perspectives can be resembled by different "ontologies", but in my understanding, it is that flexibility that separates an ontology from a taxonomy. I also see that this proliferation of relations between concepts does not necessarily help to solve the problem the ontology is built for. Possibly an ontology could have a property that identifies it as "strictly hierarchical" or something, if every concept has not more than one broader concept.

Summing this up, I don't think it is a pressing problem right now, I just wanted to state my thoughts.

EhrmannS commented 2 years ago

Hm, thinking about it, with this implementation (https://github.com/luckinet/ontologics/issues/6#issuecomment-1173894648), the issue here probably doesn't apply anymore? We can then very flexibly map all sort of concepts, also with a broader/narrower match, irrespectively of the hierarchy in the concept IDs. And I think also that the concepts don't have to have a hierarchy (didn't test that explicitly though). Does this solve this issue?

rue-a commented 2 years ago

Not, really. What I want to address here is the question, if it makes sense to try to construct the IDs of the concepts so that they resemble the has_broader relation. The benefit of this is obvious: I can look at the ID of a concept and find the ID of the concept that is broader than this concept (if I understand the ID generation algorithm right).

E.g.: "Concept A" has the ID .05. Then I define a concept "Concept g", which has the broader concept "Concept A". "Concept g", then gets an ID like .05.45. So the .05-part is a result of the has_broader relation, right?

My question is twofold now:

(1) Is it allowed for a concept to be narrower than more than one concept. Can I say "Concept g" has the broader concepts "Concept A" and "Concept T"? (2) And if (1) is true, how would the ID of "Concept g" look like (Given "Concept T" had the ID .03)?

If (1) is false OR I misunderstood the construction of the IDs we can close this issue.

EhrmannS commented 2 years ago

I see...

E.g.: "Concept A" has the ID .05. Then I define a concept "Concept g", which has the broader concept "Concept A". "Concept g", then gets an ID like .05.45. So the .05-part is a result of the has_broader relation, right?

Yes, that is correct.

(1) Is it allowed for a concept to be narrower than more than one concept. Can I say "Concept g" has the broader concepts "Concept A" and "Concept T"?

Well... I would say that it is false. But it might be a simple case of definition, or how we want to deal with that within the scope of ontologics. Of course it can be possible that a concept has several broader concepts, from the logic of it. However, I would say "a harmonised ontology" has to have the additional restriction, that within that ontology, one concept is NOT allowed to have more than one parent, otherwise it would not be harmonised. This comes from an understanding that a "harmonised" ontology how I would like to regard it, is harmonised along one dimension. Obviously any concept has not only one dimension, i.e., the things covering a certain place of the earth can be described according to their taxonomic dimension (how botanists have systematically ordered them), but it could also be described according to their social value (recreation, production of something, just fallow where nature is free to be as chaotic and "untidy" as it wants, etc), perhaps the economic dimension (how intensively is it produced, is the recreation free of charge or is it even for spiritual reasons prohibited to ask money or behave in a certain way, which is arguably also part of the social dimension, etc), or even more physical dimension (is there water or not, are there plants or not, is it bare rock or not, etc).

So I would propose that within one dimension there should only be one broader per concept, because I would argue that if there are several broader concepts, they are typically from another dimension, and thus "another ontology", where these other concepts should then actually be recorded in the external concepts table and matches instead of semantic relations should be defined. Does that all make sense to you?

rue-a commented 2 years ago

Yes, I would strongly agree with that. We should possibly communicate these thoughts somewhere (in the future). So I'm not sure if we're closing the issue now or letting it open until this is part of some vignette or so.