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

Add UUID to core schema #62

Open
JJediny opened this issue Apr 3, 2016 · 1 comment
Open

Add UUID to core schema #62

JJediny opened this issue Apr 3, 2016 · 1 comment

Comments

@JJediny
Copy link
Contributor

JJediny commented Apr 3, 2016

With the addition of being able to swap schema(s) thanks to @timwis #60 ...

There is still one critical field missing in the common/shared JKAN/CKAN schema. Currently there is no unique identifier used (i.e. a Global - GUID or Universal - UUID which are two names for the same thing), without the use of one; machine re-association or human cross-referencing of a dataset is subject to a broken links/reference in the future and/or duplicative entries under two names.

To avoid this and to make it easier to build out features/use-cases around the datasets categories. I think it is critical to add a UUID to the core schema. As a feature of UUIDs are that they can be distributively generated and yet still be guaranteed* to be unique because of the tens of trillions that could be generated without a duplicate. A simple approach to implement would be to use JKAN's edit form to add a UUID if none exists or is new see identifier in this form as an example which uses a pure JS UUID function to generate one.

This would allow for backwards compatibility as the new blank field would have a UUID added next time a dataset is updated... so long as the UUID function only adds one if the field is blank this would ensure no UUID is overriden only that one be created if new or blank... This UUID too should/could be used as the permalink so that the URL to the dataset wouldn't break when the title is changed/updated

@timwis
Copy link
Owner

timwis commented Apr 3, 2016

Thanks @JJediny - I added separate issues for the other remaining data.json fields as well.

Do you think it would be possible to use the dataset slug as its UUID? If so, we could just do this in data.json.

The javascript generator is a good idea, though we'd also need to think about users who edit datasets directly in github.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants