{
  "Identifier": {
    "ImplementerID": "/* String assigned by IIDRA */",
    "Specification": {
      "Standard": "MPAI-MMC",
      "AIW": "PersonalStatusExtraction",
      "AIM": "MMC-MST",
      "Version": "2.1"
    }
  },
  "Description": "This AIM implements Personal Status Extraction function.",
  "Types": [
    {
      "Name": "InputTextSelector_t",
      "Type": "Text_t | TextDescriptors_t"
    },
    {
      "Name": "Text_t",
      "Type": "uint8[] | uint16[]"
    },
    {
      "Name": "TextDescriptors_t",
      "Type": "uint8[]"
    },
    {
      "Name": "InputSpeechSelector_t",
      "Type": "Text_t | SpeechDescriptors_t"
    },
    {
      "Name": "Speech_t",
      "Type": "uint16[]"
    },
    {
      "Name": "SpeechDescriptors_t",
      "Type": "uint8[]"
    },
    {
      "Name": "InputFaceSelector_t",
      "Type": "FaceObject_t | FaceDescriptors_t"
    },
    {
      "Name": "FaceObject_t",
      "Type": "uint24[]"
    },
    {
      "Name": "FaceDescriptors_t",
      "Type": "uint8[]"
    },
    {
      "Name": "InputBodySelector_t",
      "Type": "BodyObject_t | GestureDescriptors_t"
    },
    {
      "Name": "BodyObject_t",
      "Type": "uint[]"
    },
    {
      "Name": "GestureDescriptors_t",
      "Type": "uint8[]"
    },
    {
      "Name": "PersonalStatus_t",
      "Type": "uint8[]"
    }
  ],
  "Ports": [
    {
      "Name": "InputTextSelector",
      "Direction": "InputOutput",
      "RecordType": "Selector_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "TextObject",
      "Direction": "InputOutput",
      "RecordType": "Text_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "TextDescriptors",
      "Direction": "InputOutput",
      "RecordType": "TextDescriptors_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "InputSpeechSelector",
      "Direction": "InputOutput",
      "RecordType": "Selector_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "SpeechObject",
      "Direction": "InputOutput",
      "RecordType": "Speech_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "SpeechDescriptors",
      "Direction": "InputOutput",
      "RecordType": "SpeechDescriptors_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "InputFaceSelector",
      "Direction": "InputOutput",
      "RecordType": "Selector_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "FaceObject",
      "Direction": "InputOutput",
      "RecordType": "FaceObject_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "FaceDescriptors",
      "Direction": "InputOutput",
      "RecordType": "FaceDescriptors_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "InputBodySelector",
      "Direction": "InputOutput",
      "RecordType": "Selector_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "BodyObject",
      "Direction": "InputOutput",
      "RecordType": "BodyObject_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "GestureDescriptors",
      "Direction": "InputOutput",
      "RecordType": "BodyDescriptors_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "PersonalStatus",
      "Direction": "OutputInput",
      "RecordType": "PersonalStatus_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    }
  ],
  "SubAIMs": [
    {
      "Name": "InputTextDescription",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-MMC",
          "AIW": "",
          "AIM": "InputTextDescription",
          "Version": "2"
        }
      }
    },
    {
      "Name": "InputSpeechDescription",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-MMC",
          "AIW": "",
          "AIM": "InputSpeechDescription",
          "Version": "2"
        }
      }
    },
    {
      "Name": "InputFaceDescription",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-MMC",
          "AIW": "",
          "AIM": "InputFaceDescription",
          "Version": "2"
        }
      }
    },
    {
      "Name": "InputBodyDescription",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-MMC",
          "AIW": "",
          "AIM": "InputGestureDescription",
          "Version": "2"
        }
      }
    },
    {
      "Name": "PSTextInterpretatiom",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-MMC",
          "AIW": "",
          "AIM": "PSTextInterpretatiom",
          "Version": "2"
        }
      }
    },
    {
      "Name": "PSSpeechInterpretatiom",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-MMC",
          "AIW": "",
          "AIM": "PSSpeechInterpretatiom",
          "Version": "2"
        }
      }
    },
    {
      "Name": "PSFaceInterpretatiom",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-MMC",
          "AIW": "",
          "AIM": "PSFaceInterpretatiom",
          "Version": "2"
        }
      }
    },
    {
      "Name": "PSGestureInterpretatiom",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-MMC",
          "AIW": "",
          "AIM": "PSGestureInterpretatiom",
          "Version": "2"
        }
      }
    },
    {
      "Name": "PersonalStatusMultiplexing",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-MMC",
          "AIW": "",
          "AIM": "PersonalStatusMultiplexing",
          "Version": "2"
        }
      }
    }
  ],
  "Topology": [
    {
      "Output": {
        "AIMName": "",
        "PortName": "InputTextSelector"
      },
      "Input": {
        "AIMName": "InputTextDescription",
        "PortName": "InputTextSelector"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "TextObject"
      },
      "Input": {
        "AIMName": "InputTextDescription",
        "PortName": "TextObject"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "InputSpeechSelector"
      },
      "Input": {
        "AIMName": "InputSpeechDescription",
        "PortName": "InputSpeechSelector"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "SpeechObject"
      },
      "Input": {
        "AIMName": "InputSpeechDescription",
        "PortName": "SpeechObject"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "InputFaceSelector"
      },
      "Input": {
        "AIMName": "InputFaceDescription",
        "PortName": "InputFaceSelector"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "FaceObject"
      },
      "Input": {
        "AIMName": "InputFaceDescription",
        "PortName": "FaceObject"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "InputBodySelector"
      },
      "Input": {
        "AIMName": "InputBodyDescription",
        "PortName": "InputBodySelector"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "BodyObject"
      },
      "Input": {
        "AIMName": "InputBodyDescription",
        "PortName": "BodyObject"
      }
    },
    {
      "Output": {
        "AIMName": "InputTextDescription",
        "PortName": "TextDescriptors"
      },
      "Input": {
        "AIMName": "PSTextInterpretation",
        "PortName": "TextDescriptors"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "TextDescriptors"
      },
      "Input": {
        "AIMName": "PSTextInterpretation",
        "PortName": "TextDescriptors"
      }
    },
    {
      "Output": {
        "AIMName": "InputSpeechDescription",
        "PortName": "SpeechDescriptors"
      },
      "Input": {
        "AIMName": "PSSpeechInterpretation",
        "PortName": "SpeechDescriptors"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "SpeechDescriptors"
      },
      "Input": {
        "AIMName": "PSSpeechInterpretation",
        "PortName": "SpeechDescriptors"
      }
    },
    {
      "Output": {
        "AIMName": "InputFaceDescription",
        "PortName": "FaceDescriptors"
      },
      "Input": {
        "AIMName": "PSFaceInterpretation",
        "PortName": "FaceDescriptors"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "FaceDescriptors"
      },
      "Input": {
        "AIMName": "PSFaceInterpretation",
        "PortName": "FaceDescriptors"
      }
    },
    {
      "Output": {
        "AIMName": "InputBodyDescription",
        "PortName": "GestureDescriptors"
      },
      "Input": {
        "AIMName": "PSSpeechInterpretation",
        "PortName": "GestureDescriptors"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "GestureDescriptors"
      },
      "Input": {
        "AIMName": "PSGestureInterpretation",
        "PortName": "GestureDescriptors"
      }
    },
    {
      "Output": {
        "AIMName": "PSTextInterpretation",
        "PortName": "PSText"
      },
      "Input": {
        "AIMName": "PersonalStatusMultiplexing",
        "PortName": "PSText"
      }
    },
    {
      "Output": {
        "AIMName": "PSTSpeechInterpretation",
        "PortName": "PSSpeech"
      },
      "Input": {
        "AIMName": "PersonalStatusMultiplexing",
        "PortName": "PSSpeech "
      }
    },
    {
      "Output": {
        "AIMName": "PSFaceInterpretation",
        "PortName": "PSFace"
      },
      "Input": {
        "AIMName": "PersonalStatusMultiplexing",
        "PortName": "PSFace"
      }
    },
    {
      "Output": {
        "AIMName": "PSGestureInterpretation",
        "PortName": "PSGesture"
      },
      "Input": {
        "AIMName": "PersonalStatusMultiplexing",
        "PortName": "PSGesture"
      }
    },
    {
      "Output": {
        "AIMName": "PersonalStatusMultiplexing",
        "PortName": "PersonalStatus"
      },
      "Input": {
        "AIMName": "",
        "PortName": "PersonalStatus"
      }
    }
  ],
  "Implementations": [],
  "Documentation": [
    {
      "Type": "Tutorial",
      "URI": "https://mpai.community/standards/mpai-mmc/"
    }
  ]
}