Primmel specification

Primmel is the public successor to MMEL (Multi-Modal Modelling Language), a domain-specific modelling language developed jointly by Ribose and BSI for the BSI SMART programme and now adopted as the basis of OIML SMART for legal metrology certification.

Primmel unifies data modelling, process modelling, compliance tracking, quantitative measurement, and cross-model mapping into a single executable notation. The same model serves as a referenceable standard, an executable programme, and an audit target.

1. Specification parts

Part Covers
Specification Core language reference: identifiers, file types, syntax, formal grammar
Data model Classes, enumerations, data registries, field types, cardinality
Process model Processes, events, gateways, subprocesses, approvals
Compliance Provisions, modality keywords, references, notes
Measurement NUMERIC, DATALIST, DERIVED, TABLE_REFERENCE; validation expressions
Mapping Cross-model alignment, .map files, coverage
Documentation Tables, figures, multimedia, term entries
Terminology Multilingual term definitions
Workspace and runtime Workspace state files ( .sws ), runtime data flow
Authoring guide How to author Primmel models
Methodology guide How to model standards with Primmel

2. Examples

The examples/ directory in the source repository holds fictional, anonymised Primmel artifacts that demonstrate each language primitive. The reading order and per-example explanations are in examples/README.adoc .

3. Source

This specification is developed in the open at github.com/primmel/spec .