Nikita version 0.5 released - updated free software archive API server
2nd March 2020
Today, after many months of development, a new release of
- 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.