- From: Patrick J Hayes <phayes@ihmc.us>
- Date: Wed, 8 Jul 2020 21:25:02 -0500
- To: Thomas Passin <tpassin@tompassin.net>
- CC: Semantic Web <semantic-web@w3.org>
> On Jul 8, 2020, at 10:54 AM, Thomas Passin <tpassin@tompassin.net> wrote: > > On 7/8/2020 10:51 AM, Nicolas Chauvat wrote: >> On Wed, Jul 08, 2020 at 08:28:05AM -0400, Thomas Passin wrote: >>> the same points if they are not (and yes, I know that it could be considered >>> a nice philosophical question whether they are "really" the same, but let's >>> not enter in that here). >> Isn't it the whole point of the current (sub)discussion ? >> Would you say that in the real world there are several different >> literals that can have the value "hello" or would you say that two >> literals that have the same value can be considered to be the same ? > > Here's what I am thinking of, and I'll talk about points, since that was the example I responded to (well, I think it was actually about the center of the circle, but never mind). Think of a data point with a specific (x,y) value for the central location, one point of a set of data points, and let's say that that value is (1, 2). The point might have had a value of (1.001, 1.999), but perhaps because of round-off error or some quantization procedure, the value recorded data tuple is (1.0, 2.0). or even (1, 2), by which I mean (int(1), int(2)). You are introducing a whole new can of worms here, involving error bounds and approximations in data and so on. That is a whole different topic. Issues about data come after you have decided and resolved all that stuff. Datatypes help with data. “2”^^xsd:integer means TWO, not nearly two, or close enough to two for engineering purposes, etc.. > Now consider another data set, one of whose data points also has the data tuple (1, 2). I am going to claim that those two data points, members of two different data sets, are not necessarily the same points even if they end up being represented by the same data tuple - (1, 2) in this case. First, what is a ‘data set’? Second, in the actual data, symbols mean what they are /defined/ to mean, and in RDF they are /defined/ to have the same meaning globally. URIs are /globally unique names/ and datatyped literals have the same meaning everywhere they occur. If you want something else, please don't use RDF. > In physics, maybe the tuple values represent energy levels that change when a magnetic field is applied, but are degenerate when there is no field. In this case they happen to be the same as each other because no field was applied to the one case, and in the other case the field would not have changed the value. Sounds complicated. If you want to describe something like this, you need a much richer ontology to do it properly. You need to be able to talk about time and changes over time, maybe about causal influences. etc.. There are several alternatives you can try using, eg the core concepts in the OBO ontology foundry (widely used in biomedical applications) or PSL or WMSO or ISO15926 (part 2). > You may say that this is a contrived case because the points in question originally were mathematical points, and they are characterized by pair of 2-D coordinates. My point, though, is that in the context of an RDF graph (not to mention "real life"), any particular thing (or call it a resource, subject, or what have you) may have any number of additional complexities associate with it even if you don't happen to have included them in your graph. That's the good old open world assumption. Yes and no. Sure, you can always say more about something by adding some more RDF triples, and that should not contradict anything you have inferred before you knew that new stuff. That is the OWA. But it doesn't matter how much you say about a literal value, the literal is not going to change what it means. Even if you were to invent a new datatype for approximate values, the literal “27.6”^^foo:EngineeringMeasurementCms would still have a fixed meaning in RDF. Maybe it would be an interval with confidence values attached: but whatever it is, it will be that thing wherever the literal occurs in any RDF graph. > So unless you truly know that two point nodes with the same coordinate tuple of (1, 2) are the representing the very same thing If they are the same string attached to the same datatype, then they MUST represent the same thing. That is fixed by the RDF specifications. > , they may very well be different - in the context of RDF and the open world assumption. It's not about a philosophical difference. > > Or put another way, just because the same literal value is assigned to two nodes does not make them the same. Now, that is of course true, but that is a different claim. Two different literals might have the same value. But two occurrences of the same literal can't have different values. > Is that literal value itself the "same" for both? In some software it might be - if it's been memoized, for example - but that's normally an implementation detail, not something fundamental. Sigh. RDF is not software. It is a data representation language. Think of it as JSON with semantics. Pat > > TomP > > >> https://en.wikipedia.org/wiki/String_interning shows that some >> programming languages store only one copy of immutable strings (or >> immutable composite values/immutable structs in some cases) even when >> these strings that have the same value are created at different places >> and times in the program. >> Why would you call that question "philosophical" ? Do you mean it is >> irrelevant ? If you think it is irrelevant, could you explain why ? > >
Received on Thursday, 9 July 2020 02:25:17 UTC