-
Notifications
You must be signed in to change notification settings - Fork 23
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
generating IRIs? #346
Comments
For point (4.), there is a standard... it states that a blank node (starts with We should consistently remap these to our format (starts with We could also allow, if we thought this was insufficient, an alternative which is to use an integer for @id and treat it the same way as above. |
I've been resistant to the suggestion that we treat blank node identifiers in transactions as temporary ids because I feel like those semantics aren't obvious from the specs I've been reading. I've found only a couple mentions that would let me infer the semantics:
However, I do think that the suggestion makes sense. Now I'm just wondering about how to convey it so that it's not confusing to users. One thing I'm wondering is, how would we handle blank node ids that already start with |
Good question, and idea:
If it doesn't already exist, we'd have to decide between: |
Also worth keeping in mind there are a couple use cases here... and ideally one solutions works for both, but may not:
|
Best practice for working with RDF data is to use IRIs to identify business entities. However, it is unclear how developers should generate IRIs. What tools do we want to provide for generating IRIs, and what guidance do we want to give?
Considerations for generating IRIs:
For the last point, an example might be that we want to insert two new entities with a "mutual best friend" relationship. There are a lot of ways we could do this incorrectly that we want to avoid. How can we insert data that looks something like:
and have it get turned into something like:
Instead of
ex:200
orex:201
, we could have UUIDs or whatever.My recommendation here is to start by defining the UI we want to support before diving into the details of how it would work internally.
The text was updated successfully, but these errors were encountered: