Skip to content
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

Remove arch-id-correlation assertion #768

Merged
merged 1 commit into from
May 24, 2022

Conversation

mmccool
Copy link
Contributor

@mmccool mmccool commented May 19, 2022

Resolves Issue #635
Relevant to Issue #625

  • delete arch-id-correlation assertion
  • adjust text immediately before, which I think was written when we were constraining Things to represent physical entities, and implied an Intermediary was not a Thing, but "like" a Thing. I changed this to say an Intermediary is a "kind of" Thing, and also changed the phrase "virtual entity" to "Virtual Thing" since we have a consistent definition for that now.

ASIDE: the "big discussion" in discovery was actually about whether the ID refers to the TD (as a document) or to the Thing being described by the TD. In other words, do we identify the map or the territory? If we choose the latter interpretation, AND insist that only physical entities can be Things, it would mean the same ID would end up getting used for Intermediaries pointing at the same physical entity, which would be logical but would cause chaos in other ways (e.g. collisions in directories, being unable to hide ids of things being proxied which you may want to do for privacy reasons, etc). At the same time, we do tend to reuse the same ID when we subset a TD (for example, limit it to one language after language negotiation) so we can't really say the ID identifies the document, either. I think the correct interpretation is that the id is in fact the the id of the Thing, but that a Thing is an abstraction, and there may in fact be Virtual Things (like Intermediaries) that don't directly map to a physical entity. This logically means that there could be variant TDs describing the same (Virtual) Thing which we frankly have not quite come to terms with yet in WoT Discovery (trying to register two different TDs with the same id in a directory will cause one to overwrite the other) but for now we are going to have to let it go and deal with this in a later round, and assume a 1:1 mapping between TDs and Things so the same ID can be used for both. This is one of several reasons I was arguing for using local ids in directories rather than the IDs in the TDs themselves as directory keys; then it would be no problem to register multiple TDs with the same internal ID, since they would be assigned different local IDs. I lost that argument but plan to re-open it in Discovery 2.0. Part of the issue is the information model for TDs themselves probably needs to resolve this issue first, and fixing that will be a non-backwards-compatible change to the information model.

PS: I know the assertion that was just deleted said the IDs for intermediaries should be correlated, not the same, but since there is no actual normative mechanism to do this, and it conflicts with other assertions about privacy, use of uuids, etc, I still think we should remove it. It's still possible to use links to indicate in an Intermediary what it is "wrapping".


Preview | Diff

@mlagally mlagally merged commit c568b9a into w3c:main May 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants