atomic-data-docs icon indicating copy to clipboard operation
atomic-data-docs copied to clipboard

Making it easier to create Atomic Data

Open joepio opened this issue 3 years ago • 3 comments

Creating Atomic Data is easy to do if you use the tools I've built, but if you want to implement (part of) the spec yourself theres quite a bit of challenges to overcome:

  • Hosting the data properly (resolving Subject URLs with JSON-AD) is not always an option. Users should have some altertnative
  • Creating Commit resources is difficult, and signing these even more so. Without a library (@tomic/lib for js, or atomic_lib for rust) you're in for a deep dive.

Solutions

  • Tables should provide a standard JSON endpoint to which users can POST resources. #37
  • Easy Atomic Export Protocol is all about sharing without actually minting subject URLs or signing Commits. Similar to RSS / Atom feeds, but more flexible. The client needs to create the identifiers and host it somewhere. #93
  • Importer tools: Atomizer will be a piece of software that helps with converting data to atomic data. It's all about one-time converting without (manually) minting subject URLs or signing Commits - and without the complications of implementing and hosting an Atomic Data Export Protocol endpoint (which is optimized for an ongoing subscription model and a massive waste of time for a one-time conversion)
  • Use git to manage data! Many people do this for blogs, and it also makes sense for ontologies. #97
  • Find existing Ontologies, Classes and Properties more easily
  • ? Share your thoughts below!

joepio avatar Feb 13 '22 11:02 joepio

  • Atomizer is all about one-time converting without actually minting subject URLs or signing Commits - and without the complications of implementing and hosting an Atomic Data Export Protocol endpoint (which is optimized for an ongoing subscription model and a massive waste of time for a one-time conversion)

edit by joepio: added to list

jonassmedegaard avatar Feb 13 '22 11:02 jonassmedegaard

This is a bit over my head still, but if I think of how I'd like to use AD with as little effort as possible, I think: I host my JSON-LD serialized AD data in a github script, and on each commit (that changes the data file) I send it to some API on atomicdata.dev with curl or wget, where it gets hosted. I then optionally direct a PURL for my ontology to the URL where atomicdata.dev serves my data. ahhhh ... This workflow would be for my ontology. I guess you are rather talking about the data, right? :D

hoijui avatar Feb 14 '22 10:02 hoijui

@hoijui Interesting, yes, using GitHub as versioning / state management system. JAMSTACK style! I've added it as issue in #97

joepio avatar Feb 14 '22 16:02 joepio