Difference between revisions of "PRONOM Signature Development Utility"

From COPTR
Jump to navigation Jump to search
Line 1: Line 1:
<!-- Use the structure provided in this template, do not change it! -->
+
{{Infobox tool
 
 
{{Infobox_tool
 
 
|purpose=Output DROID compatible file format signature files using PRONOM syntax
 
|purpose=Output DROID compatible file format signature files using PRONOM syntax
|image=
 
 
|homepage=https://github.com/exponential-decay/signature-development-utility
 
|homepage=https://github.com/exponential-decay/signature-development-utility
 
|license=Open source (see URL above)
 
|license=Open source (see URL above)
 
|platforms=PHP + JQuery + Javascript + text/html
 
|platforms=PHP + JQuery + Javascript + text/html
 +
|function=File Format Identification
 
}}
 
}}
 
+
{{Infobox tool details}}
<!-- Add one ore more categories to describe the function of the tool. Choose carefully, and view the list of existing categories first (see the Navigation sidebar on the left). The following are common category examples, remove those that don't apply -->
 
[[Category:File Format Identification]]
 
 
 
<!-- Add relevant categories to describe the content type that the tool addresses. Choose carefully, and view the list of existing categories first (see the Navigation sidebar on the left). If the tool works on any content type, do not add a category. The following are common category examples, remove those that don't apply -->
 
 
 
 
== Description ==
 
== Description ==
 
<!-- Describe the what the tool does, focusing on it's digital preservation value. Keep it factual. -->
 
<!-- Describe the what the tool does, focusing on it's digital preservation value. Keep it factual. -->
Line 116: Line 109:
 
   
 
   
 
<!-- Add the Ohloh.com ID for the tool, if known. -->
 
<!-- Add the Ohloh.com ID for the tool, if known. -->
{{Infobox_tool_details
 
|ohloh_id=
 
}}
 

Revision as of 15:18, 26 April 2021



Output DROID compatible file format signature files using PRONOM syntax
Homepage:https://github.com/exponential-decay/signature-development-utility
License:Open source (see URL above)
Platforms:PHP + JQuery + Javascript + text/html
Function:File Format Identification




Description

Utility to enable the creation of DROID compatible signature files using PRONOM regular expression syntax. The tool outputs in an XML format compatible with DROID 4 upwards (including DROID 5 and 6). Three sequences can be combined to create a single file format signature. Signature files can be concatenated manually if more complex collections are required for testing.

Signature File 88 contains of 1427 different PUIDs.

Using its Output

DROID

The signature development utility output can be directly uploaded to DROID via its 'Install Signature File' mechanism. Be sure to then select the new file from 'Preferences'.

Siegfried

Siegfried is a useful tool for testing because it can combine a new signature file from this utility with all the other signatures in the PRONOM corpus, plus its many others.

Instructions for Linux

We use a utility called Roy to extend signature files. This is installed alongside Siegfried.

To extend a signature file to include a custom signature file, we need to make sure that there is a 'custom' folder, where Roy can find it. We will need our signature to be on a path that looks as follows:

/home/{username}/siegfried/custom/{custom-dev-sig}.xml

Extending the signature file can then be completed in two stages:

1) Roy harvest

This will download PRONOM signature file reports. This is the most accurate way to run Siegfried. An alternative is to let Siegfried parse the DROID signature file, but this has shown to lead to some inconsistencies where PRONOM and DROID do not reflect each other entirely.

2) Roy build -extend {custom-dev-sig}.xml

Try Siegfried on a single file of the format we have created the signature for:

3) sf {custom-dev-format}.{ext}

The result will be:

---
siegfried   : 1.7.6
scandate    : 2017-10-25T23:35:31+13:00
signature   : default.sig
created     : 2017-10-25T23:23:59+13:00
identifiers : 
  - name    : 'pronom'
    details : 'DROID_SignatureFile_V91.xml; container-signature-20170330.xml; extensions: {custom-dev-sig}.xml'
---
filename : '{custom-dev-format}.{ext}'
filesize : 1492992
modified : 2017-10-22T16:02:13+13:00
errors   : 
matches  :
  - ns      : 'pronom'
    id      : 'dev/1'
    format  : '{custom-dev-format}'
    version : '1.0'
    mime    : 'application/{custom-dev-format}'
    basis   : 'extension match img; byte match at 1024, 32'
    warning : 

RDF

The tool's output suggests a potential RDF representation of a DROID signature. This looks as follows

<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:sigdev="http://nationalarchives.gov.uk/preservation/sigdev/signature/" xmlns:bytes="http://nationalarchives.gov.uk/preservation/sigdev/signature/byteSequence/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
  <sigdev:DevelopmentSignature rdf:about="http://nationalarchives.gov.uk/preservation/sigdev/signature/ddc3ab7d-db41-49c5-b3fa-262ad83dd703">
    <rdfs:label>Development Signature</rdfs:label>
    <sigdev:version>1.0</sigdev:version>
    <sigdev:extension>ext</sigdev:extension>
    <sigdev:internetMediaType>text/x-test-signature</sigdev:internetMediaType>
    <sigdev:puid>dev/1</sigdev:puid>
    <sigdev:byteSequence>
      <rdf:Description rdf:about="http://nationalarchives.gov.uk/preservation/sigdev/signature/byteSequence/228c0626-3e0d-40bc-98d3-d897a21b20e1/1">
        <bytes:string rdf:datatype="http://nationalarchives.gov.uk/preservation/sigdev/signature/droidRegularExpression">255044462D312E34</bytes:string>
        <bytes:anchor>BOFoffset</bytes:anchor>
        <bytes:offset rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">0</bytes:offset>
        <bytes:maxOffset rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">0</bytes:maxOffset>
      </rdf:Description>
    </sigdev:byteSequence>
  </sigdev:DevelopmentSignature>
</rdf:RDF>

This can be used to generate a graph visualization of a signature, and provides another serialization of a DROID signature that could potentially be consumed by tools in the future.

User Experiences

Development Activity

All development activity is visible on GitHub: https://github.com/exponential-decay/signature-development-utility/commits

Activity Feed

Below the last 5 commits: Failed to load RSS feed from https://github.com/exponential-decay/signature-development-utility/commits/master.atom: There was a problem during the HTTP request: 404 Not Found