Today, after many months of development, a new release of
Nikita
Noark 5 core project was finally
announced
on the project mailing list. The Nikita free software solution is
an implementation of the Norwegian archive standard Noark 5 used by
government offices in Norway. These were the changes in version 0.5
since version 0.4, see the email link above for links to a demo
site:
- Updated to Noark 5 versjon 5.0 API specification.
- Changed formatting of _links from [] to {} to match IETF draft
on JSON HAL.
- Merged Registrering og Basisregistrering in version 4 to
combined Registrering.
- DokumentObjekt is now subtype of ArkivEnhet.
- Introducing new entity Arkivnotat.
- Changed all relation keys to use /v5/ instead of /v4/.
- Corrected to use new official relation keys when possible.
- Renamed Sakspart to Part and connect it to Mappe, Registrering
and Dokumentbeskrivelse instead of only Saksmappe.
- Moved Korrespondansepart connection from Journalpost to
Registrering.
- Moved Part and Korrespondansepart from package sakarkiv to
arkivstruktur.
- Renamed presedensstatus to presedensStatus.
- Use new JSON content-type "application/vnd.noark5+json".
- Updated prepopulated format list to use PRONOM codes.
- Implemented endpoint for system information.
- Implemented national identifiers for both file and record.
- Implemented comments.
- implemented sign off.
- implemented conversion.
- Improved/implemented OData search and paging support for more entities.
- No longer exposes attribute Dokumentobjekt.referanseDokumentfil,
one should use the relation in _links instead.
- Corrected relation keys under
https://rel.arkivverket.no/noark5/v5/api/administrasjon/, replacing
'administrasjon' with 'admin'.
- Fixed several security and stability issues discovered by Coverity.
- Corrected handling ETag errors, now return code 409.
- Improved handling of Kryssreferanse.
- Changed internal database model to use UUID/SystemID as primary keys
in tables.
- Changed internal database table names to use package prefix.
- Changed time zone handling for date and datetime attributes, to be
more according to the new definition in the API specification.
- Change revoke-token to only drop token on POST requests, not GET.
- Updated to newer Spring version.
- Changed primary key and URL component for metadata code lists to
use the 'kode' value instead of a SystemID.
- Corrected implementation of Part and Sakspart.
- Changed instance lists with subtypes (like .../registrering/ and
.../mappe/) to include the attributes and _links entries for the
subtype in the supertype lists.
- Adjusted _links relations to make it possible to figure out the
entity of an instance using the self->href->relation key lookup
method.
- Fixed several end points to make sure GET, PUT, POST and DELETE
match each other.
- Updated DELETE endpoints to work with UUID based entity
identifiers.
- Restructured code to use more common URL related constants in entry
point values and replace @RequestMapping with method specific
annotations.
- Added first unit test code.
- Updated web GUI to work with the updated API.
- Changed integer fields, enforce them as numeric.
- Rewrote and simplify metadata handling to use common service and
controller code instead of duplicating for each type.
- Implemented the remaining metadata types.
- Changed Country list source from Wikipedia to Debian iso-codes and
updated the list of Countries.
- Many many corrections and improvements.
If free and open standardized archiving API sound interesting to
you, please contact us on IRC
(#nikita on
irc.freenode.net) or email
(nikita-noark
mailing list).
As usual, if you use Bitcoin and want to show your support of my
activities, please send Bitcoin donations to my address
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b.