schema;schema_component_attributes: type: map required: True mapping: attribute: type: map required: True mapping: key: type: str required: True # is_* are False by default is_editable: type: bool is_container: type: bool is_enum: type: bool value: type: any required: True liminf: type: number limsup: type: number label: type: any unit: type: any schema;schema_capability: type: map required: True mapping: component: type: str required: True attributes: type: seq required: False # True if we're not using default values seq: - include : schema_component_attributes # old version # schema;schema_capability: # type: map # required: True # mapping: schema;schema_capabilities: type: seq sequence: - type: map mapping: CAPABILITY: include: schema_capability schema;schema_device: type: map required: True mapping: generic: type: str required: False inventory_label: type: str required: True manufacturer: type: str required: False model: type: str required: False description: type: str required: False sn: type: text required: True power: type: map required: False mapping: voltage: type: int intensity: type: int socket: type: str hostname: type: str virtual_machine: type: bool network_interfaces: type: seq sequence: - type: str connector: type: map mapping: input: type: str output: type: str os: type: str os_version: type: str protocol: type: map mapping: transport: type: str langage: type: str read: type: bool write: type: bool CAPABILITIES: include: schema_capabilities required: True ATTACHED_DEVICES: type: seq sequence: - type: map mapping: file: type: str type: map mapping: schema: type: str required: True DEVICE: include: schema_device