Schema reference

Signal

Project-level signal registry. Signals define data contract, behavior, and processing metadata, then link to ports through ontology predicates.

FieldTypeRequiredNotes
idstr (slug)yesStable signal identifier.
namestryesVendor-neutral logical name.
signal_typeenumyesdigital, analog, can, i2c, 1-wire, uart.
categoryenumyescommand, permission_interlock, feedback, safety, mode, monitoring.
subtypelist[str]noE.g. nc, no, pulse.
processingobjectnofiltered, delay, moving_average.
attributesobjectnoscaling, sampling, fail-safe, redundancy, sync/async, compatibility.
value_mappingValueMappingnoOptional raw/physical mapping.
vendor_io_mappingslist[VendorIOMapping]noPer-vendor IO tag bindings (party_id, item, direction, terminals).
assumedboolnoMark inferred values (true) vs. values extracted from vendor documentation.
source_doc_refstrnoProvenance pointer to the source document or datasheet.
notesstrnoFree-text notes.
Ontology linkage. Signals are linked to ports through actUpon. Connectivity between ports is modeled by Connection edges.
signals.yaml
YAML
signals:
  - id: start_cmd
    name: START COMMAND OF HYDRAULIC PUMP
    signal_type: digital
    category: command
    subtype: [no, pulse]
    processing:
      filtered: false
      delay_ms: 0
      moving_average_window: null
    attributes:
      scaling: 1.0
      sampling_interval_ms: 100
      fail_safe_mode: hold_last
      redundant_sil: false
      sync_mode: sync
      compatibility_note: "Hardwired command path"
    value_mapping:
      kind: discrete
      entries:
        - { raw: 0, meaning: "no command" }
        - { raw: 1, meaning: "start request" }

  - id: speed_setpoint
    name: SPEED SETPOINT
    signal_type: analog
    category: command
    processing:
      filtered: true
      delay_ms: 100
      moving_average_window: 5
    attributes:
      scaling: 1.0
      sampling_interval_ms: 500
      sync_mode: async
      compatibility_note: "0-10V command profile"