Jump to navigation Jump to search

KOST-Val is an open source validator for different file formats (TIFF, SIARD, PDF/A, JP2, JPEG) and Submission Information Package (SIP).
License:GNU General Public License 3+
Platforms:should run under Java 1.6 on Windows
Input Formats:JP2, JPEG, PDF/A, SIARD, TIFF
Function:Quality Assurance,Validation
Content type:Database,Document,Image


The KOST-Val application is used to validate TIFF, SIARD, PDF/A, JP2, JPEG files and Submission Information Package (SIP).

KOST-Val supersedes the format validation tools SIARD-VAL, TIFF-Val and SIP-Val by KOST-CECO.

Functional Principle[edit]

KOST-Val complies with the following requirements.

  • TIFF validation: KOST-Val reads a TIFF file and uses JHOVE to validate the structure, the content, and ExifTool to validate the key properties such as compression, colour space, and multipage. These properties can be configured.
  • SIARD validation: KOST-Val reads a SIARD (eCH-0165 v1 and v2-2017) file and validates the structure and the content.
  • PDF/A validation: KOST-Val reads a PDF or PDF/A file (ISO 19005-1 and 19005-2) and uses 3-Heights™ PDF/A Validator by PDF-Tools or pdfaPilot by callas to validate the structure and the content of the PDF file. KOST-Val organises the different error messages into main categories such as fonts, graphics, and metadata. KOST-Val supplies only a limited version from 3-Heights™ PDF/A Validator by PDF-Tools and pdfaPilot by callas. Module J extracts (with iText) and validates the JPEG and JP2 images contained in the PDF file (depending on the configuration). It is also possible to configure whether the JBIG2 compression is accepted or not.
  • JP2 validation: KOST-Val reads a JP2 file (ISO 15444) and uses Jpylyzer to validate the structure and the content.
  • JPEG validation: KOST-Val reads a JPEG file (ISO 10918-1) and uses Bad Peggy to validate the structure and the content.
  • SIP validation: KOST-Val reads an SIP (eCH-0160 v1 and v1.1 ) and validates the mandatory requirements of the SIP specification. The validated requirements are organised into groups such as folder structure, schema validation, and checksum validation. At the outset, a file format validation is performed.

The results (including information on inconsistencies and errors) are output for every step and written into a validation log. The validation steps are executed sequentially. Whenever possible the validation shall continue after an error has been detected in order to reduce the number of correction cycles.

KOST-Val FuntionalPrincipleFormatValidation.JPG

Third-party applications[edit]

KOST-Val uses unmodified components of other manufacturers by embedding them directly into the source code. Users of KOST-Val are requested to adhere to these components ‘terms of licence.

  • The TIFF validation module uses JHOVE and ExifTool and evaluates its output further.
  • For the PDF/A validation module pdfaPilot or 3-Heights™ PDF/A Validator are used.
  • The JP2 validation module uses Jpylyzer and translates the failed tests into appropriate error messages (DE/FR/EN).
  • The JPEG validation module uses Bad Peggy and evaluates the error message "Not a JPEG file" further.
  • To extract the JPEG and JP2 images from PDF/A the iText library is used.
  • For the file format identification DROID is used. For performance and granularity reasons an own SignatureFile is used instead of the official PRONOM registry.

Read Me & Download[edit]

The KOST-Val application is used to validate TIFF, SIARD, PDF/A, JP2, JPEG files and Submission Information Package (SIP).

KOST-Val, Copyright (C) 2012-2017 Claire Roethlisberger (KOST-CECO), Christian Eugster, Olivier Debenath, Peter Schneider (Staatsarchiv Aargau), Markus Hahn (coderslagoon), Daniel Ludin (BEDAG AG)

This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions; see GPL-3.0_COPYING.txt for details.

You can download KOST-Val under http://github.com/KOST-CECO/KOST-Val/releases. For installation instructions please check the manual (DE/FR/EN).

SIARD format[edit]

SIARD stands for Software Independent Archiving of Relational Databases. Originally the Swiss Federal Archives (SFA) have developed the SIARD format as a sustainable solution for the archiving of relations databases.

In early 2013 SIARD format has been adopted as an eCH Standard (eCH-0165: SIARD format specification https://www.ech.ch/ech/ech-0165).

eCH is the Swiss organization for standardization in the field of e-government. eCH Standards define guidelines for recurring applications and their results, as for example format definitions or procedural standards. The aim of those standards is to unify and thus facilitate the electronic collaboration between authorities as well as between authorities and organizations, educational and research institutions, firms and private organizations.


See http://github.com/KOST-CECO/KOST-Val/issues

Feedback & Issues[edit]

Feedback about KOST-Val is very welcome at http://github.com/KOST-CECO/KOST-Val/issues or kost-val[at]kost-ceco.ch


User Experiences[edit]

  • ZBW:
    • KOST-Val v1.6.0
    • The tool is very easy to install and to handle.
    • The output in xml-Format (open in a browser to have a table) is easy to understand
    • Running the JPEG-Module against almost 2,400 JPEGs has only lasted 7 minutes
    • The tool recognises fake-JPEGs (jpeg-extension, but no jpeg inside) and issues with jpegs and can differentiate easily between these two cases.


Development Activity[edit]

All development activity is visible on GitHub: http://github.com/KOST-CECO/KOST-Val/commits

Release Feed[edit]

Below the last 3 release feeds:

2023-02-14 12:26:06
[tag:github.com,2008:Repository/10448958/KOST-Tools_v1.0.3 KOST-Tools v1.0.3]
by Chlara
2022-05-30 07:26:23
[tag:github.com,2008:Repository/10448958/v2.1.2.0 v2.1.2.0]
by Chlara
2022-05-04 12:30:05
[tag:github.com,2008:Repository/10448958/v2.1.1.0b v2.1.1.0 MSI-Installer with Java]
by Chlara

Activity Feed[edit]

Below the last 5 commits:

2022-12-15 17:26:42
[tag:github.com,2008:Grit::Commit/3b73b6285924b0242084555fa314d129a9d4e2d2 Merge pull request #72 from KOST-CECO/master_20221013]
by Chlara https://github.com/Chlara
2022-12-15 10:48:34
[tag:github.com,2008:Grit::Commit/19483c2643adb0ddbbf332a54fda5473eed2ff66 Lizenzvertrag für den Package Handler]
by Chlara https://github.com/Chlara
2022-10-26 08:01:27
[tag:github.com,2008:Grit::Commit/9c2942bfbde2d6666238ad6ec708f86fd459c564 KOST-Val v2.1.3.0 Teil 5]
by Chlara https://github.com/Chlara
2022-10-25 09:25:57
[tag:github.com,2008:Grit::Commit/df8bfa353b24510c7a4db9ff770ff05b3be87839 KOST-Val v2.1.3.0 Teil 4]
by Chlara https://github.com/Chlara
2022-10-20 08:43:28
[tag:github.com,2008:Grit::Commit/9c9a0fd57ce5f783630dddeca0552305604f18b1 KOST-Val v2.1.3.0 Teil 3]
by Chlara https://github.com/Chlara