Revision 0.1.0
2026-07-06- Internal improvements and maintenance.
Revision 0.1.0a2
2026-07-03- Clarified
Port.idfield description to indicate vendor-specific identification (e.g. 'DI01') rather than generic descriptive names. - Renamed port IDs in examples from descriptive names (
cmd_out,speed_out,ready_in) to vendor-style identifiers (DO01,AO07,DI02). - Updated website tagline from "a System-Integration initiative" to "A DNV Initiative".
- Corrected "Complex Integrated System" to "Complex Integrated Systems" (plural) in published metadata and website.
Revision 0.1.0a1
2026-07-03- Added field-level descriptions to core Pydantic schema models and regenerated the published JSON Schema outputs to expose the new metadata.
Revision 0.0.9
2026-07-02- Example files are now validated against Pydantic models by automated tests.
- Example files are now published alongside schemas.
TEST_SHEET_DATA_STRUCTURE.mdremoved from published output.
Revision 0.0.8
2026-07-02- Moved generated JSON schema files into
schemas/subdirectory to mirror the public repository layout. - Breaking:
ProjectMeta.schema_versionis now a required field (no default). Must be a valid PEP 440 version string and must not exceed the current package version. - Breaking: Standardized all enum values to lowercase/snake_case for uniformity across the JSON schema. Affected enums:
Direction,SignalType,PortType,ProtocolFamily,SignalCategory,FunctionCategory,SignalSubtype,DataType. -Direction:IN/OUTchanged toin/out-SignalType:Digital/Analog/CAN/I2C/UARTchanged todigital/analog/can/i2c/uart(1-wirekept as-is) -PortType:Signal/CAN-TC/Analog/Resistor/Serial/Networkchanged tosignal/can_tc/analog/resistor/serial/network(4-20mAand0-10Vkept as engineering notation) -ProtocolFamily:ModbusRTU/ModbusTCP/CANopen/OPCUA/Profinet/EtherNetIP/VendorSpecificchanged tomodbus_rtu/modbus_tcp/canopen/opcua/profinet/ethernet_ip/vendor_specific-SignalCategory:permission/interlockchanged topermission_interlock-FunctionCategory: PascalCase values changed to lowercase -SignalSubtype:NO/NCchanged tono/nc-DataType:analog_4_20mA/analog_0_10Vchanged toanalog_4_20ma/analog_0_10v - Website changelog page now auto-syncs at build time.
Revision 0.0.7
2026-07-01- Vendor-subset JSON Schema (
vendor.si_schema.schema.json): a focused schema containing only entities a component vendor is expected to populate (project, parties, components, functions, signals, glossary). Excludes SI-only concerns (connections, contract-layer entities, legacy systems). VendorSISchemaPydantic model with dedicated cross-reference validation.- Schema generator now produces both full and vendor schemas by default (use
--variant full|vendor|allto control). - Website download badges are now profile-aware: vendor-tagged pages link to the vendor schema, SI-tagged pages link to the full schema, mixed pages show both.
- Homepage hero section shows both "Full Schema" and "Vendor Schema" download pills.
- Dropped Python 3.10 support; added Python 3.14.
- Migrated all enums from
(str, Enum)toStrEnum(stdlib in 3.11+). schema/pyproject.toml(consolidated into rootpyproject.toml).
Revision 0.0.6
2026-06-29- Unified party/vendor/actor terminology:
Partyis the primary type withPartyKindenum;Actor,Vendor,ActorKindkept as backward-compatible aliases. Lineage,TransformationHop, andLineageSignalReftypes for cross-party signal transformation chains.- Validation rules SIG018 (artefact lifecycle coherence), SIG019 (deprecated/withdrawn lifecycle), SIG020 (lineage integrity), SIG024 (
component.vendormust reference a party withkind=vendor). VendorIOMappingwithparty_idfield;ActorIOMappingandPartyIOMappingas backward-compatible aliases.- Contract-layer top-level types (
ProtocolBinding,ModeDefinition,AuthorityRule,AlarmDefinition,Interface,AcceptanceCase,Lineage) moved intomodels.py; sub-types remain incontract.py.
Revision 0.0.5
2026-06-21- Contract layer (WIP):
Interface,ProtocolBinding,ModeDefinition,AuthorityRule,AlarmDefinition,AcceptanceCase. ArtifactMetawith role, status, compatibility class, lifecycle governance.- Physical-link profiles for hardwired interface contracts.
- Protocol addressing variants (Modbus, CANopen, NMEA 0183/2000, OPC UA, vendor-specific) with discriminated union.
- Network profile for segment/VLAN/security/redundancy metadata.
Revision 0.0.4
2026-05-18- Generated JSON Schema published at a stable URL.
- New optional
Signal.assumed(bool) andSignal.source_doc_ref(str) fields for explicit provenance tracking. - Validation rule SIG014 (released artefact governance) added to the spec.
- Spec promoted to its own published artefact section.
- Signal
signal_orderpattern clarified.
Revision 0.0.3
2026-04- Initial public draft of the prose specification.