Model and Operations Overview

Documaster Model

Documaster model closely follows the Noark5 stadnard. As in the Noark5 definition, at the very top of the entities objects structure are the Fonds (Arkiv).

As depicted on the diagram below, a Fonds (Arkiv) should have at least one Fonds Creator (Arkivskaper) and can have zero or many (0..*) linked Series (Arkivdel). Relations between entities can be referenced by two different names depending on the entity which is using the link. As in the example below, Fonds (Arkiv) link to Series (Arkivdel), when referenced from the Fonds is accessed by the reference name refArkivdel. When the same link is refferred to from the Series (Arkivde) it is accesed by the reference name refArkiv. All reference names start with the ref prefix.

Each relation also has cardinality depicted on the diagrams, which indicates whether the relation is one-to-one, one-to-many or many-to-many.

child-parent-relation

Operations

Transaction

Keeping data in consistent state, requires fine grained control over core entities creation and modification. Documaster Noark5 API v1 uses a single operation POST /noark5/v1/transaction to execute a sequencial series of actions towards the Noark5 structure in order to modify it. Transaction is considered successfully completed only when all the actions part of it are executed without an error. An error in any of the actions would result in rollback of the whole transaction, which means the data will remain the the state before the transaction.

Query

Looking for entity objects in Documaster Archive is done using POST /noark5/v1/query operation. It allows retrieving one or more entitie object of the same type (or the same base type) using a comprehensive query language, that allows following relations between entities deep in the structure.

Upload and Download Operations

Documaster Archive provides two opeations for managing electronic docments:

  • for uploading an electronic document - POST /noark5/v1/upload
  • for downloading an electronic document - GET /noark5/v1/download

Document metadata cannot be added to Documaster Archive before the electronic version of the document is uploaded (excluding use cases where real documents are not electronic).

Code Lists, Business Specific Metadata (BSM), Bulk Operations

Any other model data, that is not part of the core set of entities, in Documaster Noark5 API is managed through a separate set of API operations.

Key Takeouts

  • Core Noark5 entity objects are modified using POST /noark5/v1/transaction API (reffered in the documentation as transacton)
  • Core Noark5 entity objects are queries using POST /noark5/v1/query API (reffered in the documentation as query)

Relations

Relations between entities are used for two purposes:

  • link entities to each other (using POST /noark/v1/transaction operation, transaction::link action)

  • query linked entities (using POST /noark/v1/query operation)

While the Documaster implementation is flexible in regards of how references are used, as a general rule, when two objects are linked using POST /noark5/v1/transaction operation, the child entity (the one lower in the Noark5 structure), should reference an entity object up the structure. Querying the structure can be done using any references suitable.


Now that all required details for the authentication, model and operations are covered, the next step would be making a couple of queries against the API.

First API Interaction