THE M-IDL ARCHITECTURE

Machine-Interpretable Device Language: A structured schema for encoding appliance operation procedures

PROCEDURES

Step-by-step task sequences with preconditions, actions, and expected outcomes. Each procedure is decomposed into atomic operations with explicit state transitions.

CONTROLS

Physical interface mappings including buttons, dials, displays, and sensors. Normalized control semantics across device variations.

CONSTRAINTS

Safety requirements, operational limits, and failure modes. Explicit encoding of hazards, warnings, and recovery procedures.

Network Data Visualization

TECHNICAL SPECIFICATIONS

FORMATJSON-LD with schema.org extensions
VALIDATIONJSON Schema + semantic validators
COVERAGE500+ procedures (800+ appliances in pipeline)
EXPORT TARGETSPDDL, ROS2, OpenAI Function Calling

FULL EXTRACTION SAMPLE

Complete M-IDL extraction from a Bosch dishwasher user manual. Every procedure includes preconditions, postconditions, constraints, and failure modes.

{
  "schema_version": "1.3.0",
  "source": {
    "oem": "Bosch",
    "model": "SHPM88Z75N",
    "document_type": "user_manual",
    "extraction_date": "2026-01-03",
    "quality_score": 0.988
  },
  "procedures": [
    {
      "procedure_id": "PROC_001",
      "name": "Start Normal Wash Cycle",
      "steps": [
        {
          "id": "STEP_01",
          "action": "VerifyState",
          "target": "door",
          "expected": "closed"
        },
        {
          "id": "STEP_02",
          "action": "Press",
          "target": "power_button",
          "postcondition": "display_on"
        },
        {
          "id": "STEP_03",
          "action": "Select",
          "target": "cycle_dial",
          "value": "normal"
        },
        {
          "id": "STEP_04",
          "action": "Press",
          "target": "start_button",
          "precondition": "door_closed AND water_supply_on",
          "postcondition": "cycle_running"
        }
      ],
      "failure_modes": [
        {
          "trigger": "door_not_latched",
          "behavior": "cycle_will_not_start",
          "recovery": "Close door firmly until click"
        }
      ],
      "hazards": [
        {
          "description": "Hot steam when opening mid-cycle",
          "severity": "warning"
        }
      ],
      "constraints": {
        "water_temp_min_c": 50,
        "max_load_kg": 12
      }
    }
  ],
  "controls": [
    {"id": "power_button", "type": "momentary_switch"},
    {"id": "cycle_dial", "type": "rotary_selector"}
  ]
}

Simplified sample. Full extractions include 15-30 procedures per appliance with complete parts catalogs.

EXPORT FORMATS

M-IDL (Native)

JSON-LD schema with full semantic markup. Best for custom integrations and LLM function calling.

BehaviorTree.XML

Direct export to BehaviorTree.CPP format. Drop into your ROS2 stack.

PDDL

Planning Domain Definition Language. Preconditions and effects for task planners.

ROS2 Actions

Action definitions and service interfaces for ROS2 navigation and manipulation.

Sample exports available in pilot packages.

VALIDATION & PROVENANCE

Every extraction includes full audit trail:

SOURCE TRACKING

SHA256 hash linking to original PDF page

QUALITY SCORE

0-1 composite metric (schema validity, primitive coverage, provenance)

HALLUCINATION CHECK

All primitives validated against skill ontology

HUMAN REVIEW

Spot-check on sample extractions

Latest extraction batch: 0.988 quality score. Zero hallucinated primitives.