nikita 0.4 released

Thomas Sødring thomas.sodring at
Wed May 22 10:58:42 CEST 2019


We are pleased to announce that we have released version 0.4 of nikita. The following is a list of changes since March:

* Roll out OData handling to all endpoints where applicable
* Changed the relation key for "ny-journalpost" to the official one.
* Better link generation on outgoing links. 
* Tidy up code and make code and approaches more consistent throughout
  the codebase
* Update rels to be in compliance with updated version in the
  interface standard
* Avoid printing links on empty objects as they can't have links
* Small bug fixes and improvements
* Start moving generation of outgoing links to @Service layer so access
  control can be used when generating links
* Log exception that was being swallowed so it's traceable
* Fix name mapping problem
* Update templated printing so templated should only be printed if it
  is set true. Requires more work to roll out across entire
* Remove Record->DocumentObject as per domain model of n5v4
* Add ability to delete lists filtered with OData
* Return NO_CONTENT (204) on delete as per interface standard
* Introduce support for ConstraintViolationException exception 
* Make Service classes extend NoarkService
* Make code base respect X-Forwarded-Host, X-Forwarded-Proto and
* Update CorrespondencePart* code to be more in line with Single
  Responsibility Principle
* Make package name follow directory structure
* Make sure Document number starts at 1, not 0
* Fix isues discovered by FindBugs
* Update from Date to ZonedDateTime
* Fix wrong tablename
* Introduce Service layer tests
* Improvements to CorrespondencePart
* Continued work on Class / Classificationsystem
* Fix feature where authors were stored as storageLocations
* Update HQL builder for OData
* Update OData search capability from webpage has been upgraded to the latest release. You can login with 

  username : admin at
  passord  : password

if you want to take a look. You can also browse the API at the following address:

using the same credentials.

This has also been an incremental release and worked on bug-fixes and undertaken improvements. The big news in this release is the rollout of OData handling to all HTTP-endpoints. It is now possible to do GET and DELETE via OData syntax. A lot of time was also spent on the CorrespondencePart implementation as it is a bit complex to implement in the domain model.

We have spent a considerable amount of time on the interface standard and are seeing some of our proposed changes being brought in. Notably, the description of how to handle business specific metadata has been approved. We are happy to continue to work with Arkivverket and share our experiences with them in the standardisation process. There are still some large issues that should be ironed out in the interface standard. 

We are hoping Arkivverket choose standardise the interface standard with Noark 5v5 rather than Noark 5v4 and are ready to quickly role out an updated domain model. Leaving it at Noark 5v4 is a recipe for disaster in terms of uptake and implementation.  The public sector will be left in confusion about Noark if it is left at n5v4. Arkivverket have said they are considering it and we have sent in a concrete pull-request that should bring the interface standard up to n5v5.

Going forward for the 0.5 Release we will focus on 
 * business specific metadata
 * access control at the object level
 * the ability to create an XML extraction of the records
 * Introduce freetext search on uploaded documents

With these in place I think we really will begin to see an interesting archival open source product that has really strong retrieval and extension capabilities, and that notably  conforms to the governing standard. 

On the horison, we would like to see how nikita can be used beyond basic casehandling (sak/arkiv). KS is working on standardised descriptions of building applications. KDRS released a report showing the mismatch between Noark and Child Protection Services metadata. These are areas we would like to see brought into nikita and if you think you might be able to contribute in getting an understanding of how these, or other,  areas can be implemented we would be more than happy to discuss it here or offline.

We are discussing a lot of interesting stuff going forward and you are welcome to join us on #nikita on freenode. 

Thank you to everyone who has contributed to the project!

 - Tom

More information about the nikita-noark mailing list