PuranOS Engineering Schemas
Standards-Aligned Engineering Contracts
16 JSON Schema contracts generated from Pydantic models, aligned to ISA, IEC, OPC UA, IDTA AAS, and other industry standards. Each schema carries a canonical $id URI and is machine-linkable.
Generated Schemas
Pydantic models in libs/engineering-utils/ are the source of truth. JSON Schema files are generated artifacts with $id URIs at https://puranwater.com/schemas/. These URIs serve as canonical logical identifiers; the raw JSON is also available on GitHub.
Core
31-component process stream with flow, temperature, pressure, pH, and computed aggregates
Equipment identity (UUID + ISA 5.1 tag), nameplate, sizing, materials, costing
Model status, decision grade, validation basis, license, parameterization method
Instrumentation
Rationalized alarms: tag, setpoint, priority, probable cause, deadbands
Sparse C&E matrix with standard mark types (X, T, D, A, S)
Instrument index + IO list: loops, instruments, device specs, signals
Engineering
Node-by-node HGL/EGL with gravity feasibility validation
Process segments, control loops, interlocks, sequences, PLC programs
HAZOP nodes/deviations with LOPA scenarios and IPL credit factors
Compliance
Facilities, discharge points, permit conditions, monitoring, exceedances
Project Controls
EV baselines/snapshots (PV/EV/AC/CPI/SPI), cash flow, contingency
Ensaras Exchange
One-time handover: equipment registry, spare parts, baselines
Monthly operational metrics per equipment
Completed work orders from CMMS
Permit compliance status per discharge point
Improvement requests with viewpoints and cost estimates
Standards Covered
PuranOS implements practical subsets of these standards — interoperability with industry practice, not exhaustive compliance.
ISA 5.1
Instrument identification and tagging
ISA-5.2
Binary logic diagrams, cause-and-effect
ISA-18.2
Alarm management lifecycle
ISA-88 / IEC 61512
Batch control, recipe hierarchy
ISA-95 / IEC 62264
Equipment hierarchy and operations
IEC 61131-3
PLC programming languages
IEC 61882
HAZOP study procedure
IEC 61511
Functional safety (SIS/LOPA)
IEC 62424
Instrumentation in process control
DEXPI (ISO 15926)
P&ID data exchange
OPC UA DI
Device identity and automation models
IDTA AAS
Asset Administration Shell (digital nameplate)
CFIHOS
Capital facilities handover information
ISO 14224
Equipment reliability and maintenance
ANSI/EIA-748
Earned value management
NPDES / 40 CFR
Water discharge permits and DMR
BCF-XML
Issue/defect exchange (buildingSMART)
Schema Generation
Every schema starts as a Pydantic model — Python classes with typed fields, validation logic, and docstrings citing the standards they implement. A generation script produces JSON Schema files with canonical $id URIs.
This means one source of truth in Python, consumed by MCP servers at runtime and by non-Python tools (schema validators, documentation generators, exchange partners) via the generated JSON Schema.
Pydantic model (source of truth)
↓
generate_schemas.py
↓
JSON Schema with $id: puranwater.com/schemas/...
↓
MCP servers, validators, documentation, exchange partners
Full Documentation
For detailed treatment of the ontology layers, standards alignment, and schema governance, see the full architecture documentation.
