{
  "metadata": {
    "id": "rev-41-1320-pk8-15mm-plastic-inside-corner-bracket",
    "name": "REV DUO 15mm Plastic Inside Corner Bracket (8 Pack)",
    "type": "mechanical_bracket",
    "manufacturer": "REV Robotics",
    "part_number": "REV-41-1320-PK8",
    "datasheet_url": "https://www.revrobotics.com/content/docs/REV-41-1320-DR.pdf",
    "description": "Plastic (PA66 nylon) inside-corner bracket for REV DUO 15mm extrusion. Models two mounting legs (A and B) as two mounting slots/interfaces.",
    "tags": [
      "mechanical",
      "bracket",
      "rev_duo",
      "15mm_extrusion",
      "inside_corner",
      "pa66",
      "m3"
    ],
    "schema_version": "1.4.0",
    "taxonomy": [
      "mechanical.mounting",
      "robotics.ftc"
    ],
    "version": "0.2.0"
  },
  "domains": [
    {
      "domain": "mechanical",
      "dimensions_mm": {},
      "weight_g": null,
      "mount_holes": [],
      "metadata": {
        "mounting_method": "bolt_on",
        "field_serviceable": true,
        "requires_special_tools": false
      },
      "resources": [
        {
          "id": "mount_leg_a_slot",
          "name": "Mounting slot (Leg A)",
          "description": "Mounting leg A slot/feature used to bolt the bracket to a mating structure (e.g., REV DUO 15mm extrusion channel).",
          "connector_type": "slot",
          "functions": [
            {
              "name": "MECHANICAL_MOUNT_A",
              "description": "Mechanical mounting point (fastener-based).",
              "direction": "bidirectional",
              "signal_class": "mechanical_drive"
            }
          ]
        },
        {
          "id": "mount_leg_b_slot",
          "name": "Mounting slot (Leg B)",
          "description": "Mounting leg B slot/feature used to bolt the bracket to a mating structure (e.g., REV DUO 15mm extrusion channel).",
          "connector_type": "slot",
          "functions": [
            {
              "name": "MECHANICAL_MOUNT_B",
              "description": "Mechanical mounting point (fastener-based).",
              "direction": "bidirectional",
              "signal_class": "mechanical_drive"
            }
          ]
        }
      ],
      "interfaces": [
        {
          "id": "mount_leg_a",
          "name": "Mounting interface (Leg A)",
          "description": "Mechanical mounting connection for bracket leg A.",
          "protocol": {
            "type": "mechanical_connection",
            "role": "mounting_point"
          },
          "requires": [
            {
              "function": "MECHANICAL_MOUNT_A",
              "count": 1
            }
          ],
          "max_instances": 1
        },
        {
          "id": "mount_leg_b",
          "name": "Mounting interface (Leg B)",
          "description": "Mechanical mounting connection for bracket leg B.",
          "protocol": {
            "type": "mechanical_connection",
            "role": "mounting_point"
          },
          "requires": [
            {
              "function": "MECHANICAL_MOUNT_B",
              "count": 1
            }
          ],
          "max_instances": 1
        }
      ]
    }
  ],
  "usage_notes": "This definition intentionally models only two mounting legs (A/B) as two mounting slots for clean auto-connect behavior."
}