-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
characteristics vs attributes vs values #1
Comments
I was not trying to make a grand philosophical claim with the word "fundamental". All penguins have a mass because they are material entities. All penguins have a genotypic sex because they are birds (or maybe eukaryotes, I'm not a biologist). We just look up the class hierarchy for the differentia at each level. What is the domain of 'has characteristic' here? It seems like a big change to include 'characteristic' in the domain of 'has characteristic'. I agree that the colour example shows that more than one level of determination is possible and worth capturing. I presented several version of this work that included something like 'quantity values'. Some of the problems were:
When time permits, I intend to write a "Roads not travelled" document, with alternatives that we have explored and decided against. This work has involved years of drafting documents, presenting them, digesting feedback, and trying to find something simple and comprehensive. It takes a long time. |
This is may be be easy for things at the top of the hierarchy (e.g.,
In COB, the domain of
I used the term
Yes. I agree the weight of N1A1 is a fact. However, the literals/data used to represent N1A1's weight seem best in information land, though this may not be a perfect fit. After all, "3750" could be recorded using Roman numerals, encoded in binary, etc. Moreover, weight is not a static thing. N1A1 is heavier on Jupiter, and lighter on the Moon. The literal values can also be related directly w/o an intervening "value type". E.g.:
The "value types" just provide an more organized way to assign literal values, which is useful for data quality checks.
These are characteristics. E.g.:
I find calling them "values" to be confusing, and it adds an extra level of complexity. If literal categorical are needed, then some like enums can be used.
I was only aware of one early google doc about this, which I also commented on. I realized I stepped away for a bit, but I don't recall seeing any more communication about that document for quite some time. Maybe you moved the communication to another channel?
Yes. That would be helpful. However, I think it would be good for a number of others who may not operate in your immediate circle to weigh in before this becomes a defacto standard for the OBO community. |
I find the above very odd. Shouldn't these classes be in a subclass hierarchy? That is how PATO has done it for years. I do agree about the need to chain characteristics several levels deep, but I think it could be handled with a property chain. Likewise, I find it strange that
although I do see where it could be a useful way to relate modifiers to characteristic (e.g., |
Hi @ramonawalls great to hear from you!
Yes, you could do it that way (an in many other cases too). The example was ad-hoc ... Does this make for a better example?:
Not sure I follow ... what would be property chain be? Do you mean something like?:
Suppose blood pressure is represented as a process. In COB, processes can have characteristics.
The notion of "characteristics of characteristics of characteristics ..." (i.e., second-order characteristics) strikes many as strange. Barry used to be against this. I don't know what he thinks now. In the current proposal, it should be noted that attributes and values are characteristics. So, it implements second-order characteristics. I'm only proposing that instead of creating special labels for these second-order characteristics (i.e., attribute, value), we just call them "characteristics". I think "values" live best in information land (though it may not be an ideal fit). |
Pardon for combing through this one more time, but there are parts that will take more finessing to explain to users, and even I, looking at this for years, and mulling these last few days, stumble! About the distinction between characteristic and attribute: Do we need to make this distinction here, or can it be established elsewhere, separately, to the same effect, but one step removed from qualitative and quantitative value handling? For purposes of argument only, and recalling some ontology concepts, presumably "substantial kind" characteristics are defined by axioms such as "is-a x if ‘has characteristic’ y”, meaning for sub-classes and instances, a characteristic necessarily exists for that entity by definition of its (or its ancestor’s) class. Here James you use ‘has attribute’. As you say an attribute is a subclass of characteristic, so:
Meanwhile, a "phasal kind" enables an instance of a substantial kind (e.g. human) to also be an instance of a phasal kind (human with hair) that in theory doesn't interfere with the identity of the substantial kind. Thus Phasal characteristics are axiomatized to exist only during some parts of a substantial kind entity’s history. The phasal kind likely includes an additional package of characteristic(s) (e.g. hair colour).
But instead I suggest for our qualitative and quantitative work we simply use a single “has characteristic” relation regardless of whether the range involves a phasal or substantial characteristic. We postpone adding “has [substantial / phasal] characteristic” or equivalent, since beyond setting the range, it doesn’t seem to enable us to infer anything more about the content of a characteristic description. I think a reasoner could infer and overlay those relations later in a knowledge graph, to show a use of ‘has characteristic’ can be inferred to be the more particular ‘has attribute’ if desired, using whatever logic we ourselves fashion to know when to invoke “has attribute” in the first place (namely, when a characteristic of a substantial kind is being referenced.) This simplifies the readability of "Values Without Attributes" section and other places where there is a mixture of attributes, characteristics, and "has characteristic", and "has attribute". |
@ddooley Thanks for putting the together the diagrams! I agree that using
I'm not following what you are wanting to use "characteristic specification" for. If you want to link the characteristic to literal values, can you make use of
If you don't like the |
So that "characteristic specification" can be a measurement datum (output of assay) as well (as noted in diagram far right), but not necessarily. There was the desire to have these ICE's possibly be estimates, etc. As for "is characteristic specification of", indeed it is directly related to "is about" object property:
The "is characteristic specification of" is a bit different from current "is about" subproperties "is quality specification of", and "is quality measurement of", in range and definitions that are specific to measurement processes and material transformation. |
But to reiterate - I'm not wedded to 'is characteristic specification of' etc. "Is about" might be too general, for example, insofar as a measurement datum can be about a characteristic, but also the material its about, so how to distinguish the two? |
I wasn't aware that Just make sure I understand you: The motivation for |
Yeah, its not axiomatized but "measurement datum" defn: "an information content entity that is a recording of the output of a measurement such as produced by a device". It does have axiom requiring it to be about some material entity. Right, range narrowed to characteristic. I just wanted to convey by "is characteristic specification of" something closer to "is value of" (inv. "has value"). Open to some other label. "is specification of characteristic"? "is specification of", "specifies". "is representation of" or "represents" / "has representation" could be promising (have to rename a certain OBI data property though if using that!) |
One other thing, one could easily enhance a characteristic specification directly with time that measurement was taken, or time interval it is truthful of (though this info originates from measuring process), and other contextual qualifications. The alternative is to have a phasal identifier that ties an instance of an entity (which the characteristic is about) to some place and interval of time. |
@ddooley For relating things in "information land" (e.g., ICEs) to characteristics, would the labels 'has characteristic value' and 'is characteristic value' suffice? |
@wdduncan yes that could work (maybe 'is characteristic value of'). Avoids semantic overload of "has value / is value" if that is a concern to people. James, are we bastardizing your creation!? 😮 |
@ddooley Very nice image. Does this triangle Imply the following role chain:
This would answer my question over in slack! |
Yes! Though "is measure of" / "measures" is a tentative proposal! "Assay measures characteristic" is in production. |
Very nice, looking forward to seeing this implemented! |
Hi @jamesaoverton. I think it is great that you put this together. So, please understand that the following comments/recommendations are in the spirit of improving the proposal, and that I am not trying to tear down the work you've done.
Comments
Attributes.
Your definition of an attribute as "fundamental to what an entity" seems too strong. I can envision future debates about what counts as "fundamental", and it doesn't seem (to me at least) to be necessary. In COB (I'm not sure about PATO:quality) characteristics can be characteristics of any owl:Thing, including other characteristics. So, a more direct way to define more specific characteristics would be to re-use the
has characteristic
relation. E.g, using your penguin sex example:This allows for cases (perhaps rare) in which the chain of characteristics may be more than 2 level deep. E.g.:
Values.
The range of
has value
in your examples is a characteristic. I find this confusing. The word 'value' in my mind (and perhaps others) connotes something to do with information/data.The OBO community is definitely in need of a standardized way to relate entities to literal values. I think better way to go about this is define specific classes of values (e.g., quantity values, geolocation values, image values, etc.) as subtypes of information. E.g.:
In the NMDC, we used an approach like this to represent AttributeValues. Although for purposes of the OBO Foundry, "characteristic values" would be a better label.
(tagging related COB issue)
The text was updated successfully, but these errors were encountered: