Skip to content

Re-using local copies of ontologies (classes & properties) - bundles & schema pre-loading #1104

@joepio

Description

@joepio

AtomicData makes it easy to re-use classes and properties from external sources. That's an important part of the proposition, but relying on fetching individual HTTP requests for classes and properties has a bunch of downsides:

  • Servers can go offline, which would mean your validations and forms no longer work. Unless you've cached them somewhere, of course.
  • It's slow. It requires round trips. These shouldn't be needed.

So it's better to include the schema data in your client application. Probably in its source code, as you'd do in most other paradigms.

Thoughts on implementation

  • AtomicServer caches schema data (e.g. external properties and classes), so there is a fallback.
  • We already have a /properties and /classes request on initialization of Atomic Browser, which gives the client all the properties that it needs for caching schema / ontology data. But that still isn't included in the source code.

Adding ontology pre-loading to ad-generate

Those who make apps with @tomic/lib should probably also use ad-generate to create TS bindings. In this flow, we could also include a json (or js) representation of the entire ontology.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions