Architecture

Primmel has two sides branching off the published reference: a Reference side (read, interact, evaluate a standard) and an Application side (implement, operate, audit against a standard). The Publisher is upstream — they produce the reference both sides consume.

The flow

Primmel's two sides: Reference and Application, branching off the published referenceDEFINE · PUBLISHERAuthor & publishreference .prl + optional .prd extractpublished reference modelconsumed by both sidesREFERENCE · READERSRead · Interact · EvaluateReadNavigate the standard's provisions, processes,data classes, and references.InteractRun the test processes the model declares.Evaluate formulas against sample inputs.EvaluateCheck whether a product, process, or datasetmeets the standard. Dimensional & formula checks.APPLICATION · IMPLEMENTERS / OPERATORS / AUDITORS3ImplementMaintain the digital twin. Adopt, import, customize.Map to references. Close Statement of Applicability.4OperateRun the implementation in production.Store evidence as required (.pws/ YAML records).5AuditNavigate like readers; view evidence like operators;correlate via .prm. Compliance verdict + trace.inheritsinherits

The five pillars

Pillar Audience Side Output artifact
Define Publishers upstream reference .prl + .prd
Reference Readers Reference transient verdicts (read/interact/evaluate)
Implement Implementers Application implementation .prl + .prm + Statement of Applicability
Operate Operators Application .pws/ workspace directory (YAML records)
Audit Auditors Application compliance verdict + evidence trace

The five pillars are MECE by output artifact — each pillar produces a distinct artefact, and every Primmel activity fits into one of them.

Cross-cutting: capability inheritance

The Auditor role is notable because it inherits capabilities from both Readers and Operators:

  • Standard navigation — from Readers.
  • Evidence viewing — from Operators.
  • Correlation via .prm — the Auditor’s own distinct skill.

Tools built for Readers and Operators can be reused by Auditors without modification. The Auditor-specific tool is the mapping navigator. See Auditors for the full breakdown.

Cross-cutting: Reference primitive

A reference { ... } declaration in any .prl model cites an external source clause (typically a .prd extract of a source standard). It is a primitive type used by every pillar — by a publisher to cite the source standard, by an organisation to cite both standard and internal-policy clauses. It is not itself a phase; it is the mechanism every phase uses to point at things outside the local model.

File types

Extension Kind Purpose
.prl File Primmel model — the core artifact. Plain text, UTF-8.
.prd File Primmel Document — clause-level extracts of a source standard.
.prm File Primmel Map — a JSON mapping between two models (e.g. implementation ↔ reference).
.pws Directory Primmel Workspace — actual records produced when a model runs. One YAML file per record, organised into subdirectories per data registry, with a manifest.yaml at the root.

The same artifact can appear in multiple pillars:

  • A .prl is produced in Define (reference) or Implement (implementation).
  • A .prd is produced in Define (from a source standard) and consulted in Reference and Implement.
  • A .prm is produced in Implement (mapping) and consulted in Audit.
  • A .pws/ is produced in Operate and consulted in Audit.