@@ -413,6 +413,60 @@ PRONOM IDs that can then be referenced in the JSONID output.
413413Evantually, PRONOM or a PRONOM - like tool might host an authoritative version
414414of the JSONID registry.
415415
416+ # ## JSONID for PRONOM Signature Development
417+
418+ JSONID provides a high- level language for output of PRONOM compatible
419+ signatures. The feature set is still in its BETA phase but JSONID provides
420+ two distinct capabilities:
421+
422+ # ### 1. Registry output
423+
424+ JSONID ' s registry can be output using the `--pronom` flag. A signature file
425+ will be created under `jsonid_pronom.xml` which can be imported into DROID
426+ for identification of document types registered with JSONID .
427+
428+ JSONID ' s registry is output alongisde a handful of baseline JSON signatures
429+ designed to capture " plain" - JSON that is not yet encoded in the registry.
430+
431+ # ### 2. Signature development
432+
433+ A standalone `json2pronom` utility is provided for creation of potentially
434+ robust DROID compatible signatures.
435+
436+ As a high- level language, signatures can be defined in easy to understand
437+ syntax and then output consistently via the `json2pronom` utility. Signatures
438+ include sensible defaults for whitespace and other aspects that are
439+ difficult for signature developers to consistently anticipate when writing
440+ JSON based signatures.
441+
442+ Given a [sample pattern file ](./ pronom_example/ patterns_example.json) a DROID
443+ compatible snippet can be output as follows (UTF - 8 shown for brevity):
444+
445+ < !-- markdownlint- disable-- >
446+
447+ ```xml
448+ < ? xml version = " 1.0" ? >
449+ < FFSignatureFile xmlns = " http://www.nationalarchives.gov.uk/pronom/SignatureFile" Version = " 1" DateCreated = " 2026-01-04T16:14:16Z" >
450+ < InternalSignatureCollection>
451+ < InternalSignature ID = " 1" Specificity = " Specific" >
452+ < ByteSequence Reference = " BOF" Sequence = " {0-4095}7B" MinOffset = " 0" MaxOffset = " 4095" / >
453+ < ByteSequence Reference = " VAR" Sequence = " 226B65793122{0-16}3A" MinOffset = " " MaxOffset = " " / >
454+ < ByteSequence Reference = " VAR" Sequence = " 226B65793222{0-16}3A" MinOffset = " " MaxOffset = " " / >
455+ < ByteSequence Reference = " EOF" Sequence = " 7D{0-4095}" MinOffset = " 0" MaxOffset = " 4095" / >
456+ < / InternalSignature>
457+ < / InternalSignatureCollection>
458+ < FileFormatCollection>
459+ < FileFormat ID = " 1" Name = " JSONID2PRONOM Conversion (UTF-8)" PUID = " jsonid2pronom/1" Version = " " MIMEType = " application/json" FormatType = " structured text" >
460+ < InternalSignatureID> 1 < / InternalSignatureID>
461+ < Extension> json< / Extension>
462+ < / FileFormat>
463+ < / FFSignatureFile>
464+ ```
465+
466+ < !-- markdownlint- enable-- >
467+
468+ Feedback on this utility is welcome.
469+
416470# # Output format
417471
418472Previously JSONID output YAML containing all result object metadata. It has
0 commit comments