Lesson 4 - Incorrect Use of "Tuple" in Video

I believe the use of the word “tuple” was incorrect in the video. In relational theory, a tuple is an individual within the set of possible mappings between members of classes defined by the relation. Similar to the idea of an “instance” of the relation. The relation is the set, the tuple is the member.

So, a usage is really a relation, not a tuple.

The slide was correct: “Usages classify tuples of things” (the classifier, or usage, being the relation). Just some of the verbal description didn’t sound right. And I think it’s easier to just say usages are relations.

I don’t think it was far off. The initial description was right. He described it as a “relationship”. Some of the later dialog seemed off. Not a big deal. I’m just persnickety.

@jdoerr3, notice that a “usage” (aka property) is a type in KerML/SysML2, and not a relation. Its interpretation (according to KerML’s model-theoretic semantics) is a relation.

@gwagner thank you. Understood. I was mostly speaking conceptually. My main point was that the video suggesting “tuple” as the mnemonic to associate with “usage” is not quite right. A tuple is an individual, not the set. Usages can be instantiated multiple times (classify multiple tuples), right?

@gwagner or is it better to think of the more specific feature as the relation in this context? I am still used to the v1 expression of definition and usage, which was not really baked into the specification but just conceptually understood. In v1, a composite or reference association provided the mapping from one class onto another (which I would describe as a relation). In v2, perhaps it’s really only features (owned usages) that can be considered this way. Is my thinking off?

@jdoerr3, you are right that the meaning/interpretation of a “usage” (or “feature” aka property) is based on relations as sets of tuples, and not on single tuples. More precisely, it’s based on (a) binary relations as sets of 2-tuples, if the “usage” is declared for a classifier/”definition”, (b) n-ary relations as sets of tuples, if the “usage” is declared for another “usage” (in the case of nested feature declarations). And, as you say, the semantics of “usages” is related to the semantics of associations.

@gwagner thank you for the clarification and sharing your knowledge. I hadn’t thought about the n-ary aspect of transitive usages, but that certainly makes sense.