{
    "$schema":  "https://json-schema.org/draft/2020-12/schema",
    "$comment":  "https://schemas.mpai.community/AIF/V2.0/AIW-AIM-metadata.schema.json",
    "title":  "PortableAvatarMultiplexing",
    "Identifier":  {
                       "ImplementerID":  "/* String assigned by IIDRA */",
                       "Specification":  {
                                             "Name":  "MPAI-PAF",
                                             "AIW":  "",
                                             "AIM":  "PortableAvatarMultiplexing",
                                             "Version":  "V1.5"
                                         }
                   },
    "Description":  "This AIM provides a Portable Avatar from the input components.",
    "Types":  [
                  {
                      "Name":  "InstanceID_t",
                      "Type":  "string"
                  },
                  {
                      "Name":  "SpaceTime_t",
                      "Type":  "uint8[]"
                  },
                  {
                      "Name":  "Selector_t",
                      "Type":  "uint8[]"
                  },
                  {
                      "Name":  "SpeechObject_t",
                      "Type":  "uint8[]"
                  },
                  {
                      "Name":  "MLModel_t",
                      "Type":  "uint8[]"
                  },
                  {
                      "Name":  "TextObject_t",
                      "Type":  "uint8[]"
                  },
                  {
                      "Name":  "AVSceneDescriptors_t",
                      "Type":  "uint8[]"
                  },
                  {
                      "Name":  "PersonalStatus_t",
                      "Type":  "uint8[]"
                  },
                  {
                      "Name":  "PortableAvatar_t",
                      "Type":  "uint8[]"
                  }
              ],
    "Ports":  [
                  {
                      "Name":  "AvatarID",
                      "Direction":  "InputOutput",
                      "RecordType":  "InstanceID_t",
                      "Technology":  "Software",
                      "Protocol":  "",
                      "IsRemote":  false
                  },
                  {
                      "Name":  "AvatarSpaceTime",
                      "Direction":  "InputOutput",
                      "RecordType":  "SpaceTime_t",
                      "Technology":  "Software",
                      "Protocol":  "",
                      "IsRemote":  false
                  },
                  {
                      "Name":  "AvatarModel",
                      "Direction":  "InputOutput",
                      "RecordType":  "Model_t",
                      "Technology":  "Software",
                      "Protocol":  "",
                      "IsRemote":  false
                  },
                  {
                      "Name":  "LanguageSelector",
                      "Direction":  "InputOutput",
                      "RecordType":  "Selector_t",
                      "Technology":  "Software",
                      "Protocol":  "",
                      "IsRemote":  false
                  },
                  {
                      "Name":  "SpeechObject",
                      "Direction":  "InputOutput",
                      "RecordType":  "SpeechObject_t",
                      "Technology":  "Software",
                      "Protocol":  "",
                      "IsRemote":  false
                  },
                  {
                      "Name":  "TextObject",
                      "Direction":  "InputOutput",
                      "RecordType":  "TextObject_t",
                      "Technology":  "Software",
                      "Protocol":  "",
                      "IsRemote":  false
                  },
                  {
                      "Name":  "SpeechModel",
                      "Direction":  "InputOutput",
                      "RecordType":  "MLModel_t",
                      "Technology":  "Software",
                      "Protocol":  "",
                      "IsRemote":  false
                  },
                  {
                      "Name":  "PersonalStatus",
                      "Direction":  "InputOutput",
                      "RecordType":  "PersonalStatus_t",
                      "Technology":  "Software",
                      "Protocol":  "",
                      "IsRemote":  false
                  },
                  {
                      "Name":  "AVSceneSpaceTime",
                      "Direction":  "InputOutput",
                      "RecordType":  "SpaceTime_t",
                      "Technology":  "Software",
                      "Protocol":  "",
                      "IsRemote":  false
                  },
                  {
                      "Name":  "AVSceneDescriptors",
                      "Direction":  "InputOutput",
                      "RecordType":  "AVScebeDescriptors_t",
                      "Technology":  "Software",
                      "Protocol":  "",
                      "IsRemote":  false
                  },
                  {
                      "Name":  "PortableAvatar",
                      "Direction":  "OutputInput",
                      "RecordType":  "PortableAvatar_t",
                      "Technology":  "Software",
                      "Protocol":  "",
                      "IsRemote":  false
                  }
              ],
    "SubAIMs":  [

                ],
    "Topology":  [

                 ],
    "Implementations":  [

                        ],
    "Documentation":  [
                          {
                              "Type":  "Tutorial",
                              "URI":  "https://mpai.community/standards/MPAI-PAF/"
                          }
                      ],
    "$id":  "https://schemas.mpai.community/PAF/V1.5/AIMs/PortableAvatarMultiplexing.json"
}

