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

How to deal with "inverse functional property" #1684

Closed
thadguidry opened this issue Jul 3, 2017 · 5 comments
Closed

How to deal with "inverse functional property" #1684

thadguidry opened this issue Jul 3, 2017 · 5 comments
Labels
no-issue-activity Discuss has gone quiet. Auto-tagging to encourage people to re-engage with the issue (or close it!).

Comments

@thadguidry
Copy link
Contributor

thadguidry commented Jul 3, 2017

(WARNING ON THIS ISSUE: The use case has nothing to do with URIs and should not even discuss them in this issue or any similarities to them.)

From the use case mentioned in the mailing list about "Disambiguating Things" or ""Disambiguating 1000's of properties for virtual IoT Things".

Reference: https://www.w3.org/wiki/InverseFunctionalProperty

@thadguidry has no idea what he's really asking or doing here...yet :)

@danbri
Copy link
Contributor

danbri commented Jul 3, 2017

I'm not sure either, but it gives us a place to figure it out.

Possibly related - https://www.w3.org/TR/2009/CR-owl2-syntax-20090611/#Keys

@thadguidry
Copy link
Contributor Author

thadguidry commented Jul 3, 2017

(WARNING ON THIS ISSUE: The use case has nothing to do with URIs and should not even discuss them in this issue or any similarities to them.)

@danbri Great related reference. Yes that sums up nicely what I am doing currently at the DB layer, by dynamically creating primary keys via a calculated set of properties, where some are current and future anticipated Schema.org properties.

Then the need I have might be to just sum up the fact that I want to say and tell the world that a particular identifier (even those that I dynamically generate now via various algorithms) SHOULD BE globally unique. Rule systems and management apps can then later assert that a Thing:identifier is IN FACT unique in the world. But the need is to somehow give a hint to the world that "here's an identifier, and I'm pretty darn sure that no other Thing in the world uses this identifier to hold this set of properties, and that no one ideally should not". DB's do this with constraint mechanisms. https://www.postgresql.org/docs/9.5/static/ddl-constraints.html#DDL-CONSTRAINTS-PRIMARY-KEYS

Some real world industry cases that involve unique identifiers and that could be impacted with this issue and as the IoT domain grows:
https://en.wikipedia.org/wiki/International_Mobile_Equipment_Identity
An IPv6 that has a theoretical lifetime = Infinity https://en.wikipedia.org/wiki/IPv6_address#Address_lifetime

Example of often thought of as unique identifier, but IN FACT is not (since they are reused):
http://schema.org/isbn

UPDATE: Possibly another way to say the above is "registered identifier". But that denotes a registration authority, and in fact, in Ethereum and Blockchain semantics, the whole world is a registering authority. And so that might not be the best term, and so "known to be globally unique" might express the need more. :)

@akuckartz
Copy link

The link to the OWL 2 spec above (W3C Candidate Recommendation 11 June 2009) is obsolete. This is the current one (W3C Recommendation 11 December 2012): https://www.w3.org/TR/owl2-syntax/

@github-actions
Copy link

This issue is being tagged as Stale due to inactivity.

@github-actions github-actions bot added the no-issue-activity Discuss has gone quiet. Auto-tagging to encourage people to re-engage with the issue (or close it!). label Jul 21, 2020
@danbri
Copy link
Contributor

danbri commented Aug 14, 2020

I think this discussion has served its purpose; not seeing any obvious actions I'm closing it.

@danbri danbri closed this as completed Aug 14, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
no-issue-activity Discuss has gone quiet. Auto-tagging to encourage people to re-engage with the issue (or close it!).
Projects
None yet
Development

No branches or pull requests

3 participants