{
  "$schema":      "https://schemas.mpai.community/AIF/V2.0/AIW-AIM-metadata.schema.json",
  "CanonicalURI": "https://schemas.mpai.community/CAE1/V2.4/AIMs/SpeechRestorationAssembly.json",
  "title":        "Speech Restoration Assembly V2.4",
  "Identifier":   { "ImplementerID": "/* String assigned by IIDRA */",
                  "Specification": { "Standard": "CAE-USC", "AIW": "CAE-SRS", "AIM": "SpeechRestorationAssembly", "Version": "V2.4" } },
  "Description":  "This AIM receives as input the entire Damaged Segment, plus Damaged List Time Labels, a list indicating the locations of any damaged sections within the Damaged Segment. The list will be null if the Damaged Segment in its entirety was replaced. The Assembler produces as output the Restored Segment, in which any repaired sections have been replaced by synthetic sections, or in which the entire Damaged Segment has been replaced.",

  "Types": [
    { "Name": "SpeechObject_t",   "Type": "uint8[]" },
    { "Name": "DamagedList_t",    "Type": "uint8[]" } ],

  "Ports": [
    { "Name": "DamagedSegments",     "Direction": "InputOutput", "RecordType": "SpeechObject_t",
      "Technology": "Software",      "Protocol": "",             "IsRemote": false },

    { "Name": "DamagedList",         "Direction": "InputOutput", "RecordType": "DamagedList_t",
      "Technology": "Software",      "Protocol": "",             "IsRemote": false },

    { "Name": "SynthesisedSpeech",   "Direction": "InputOutput", "RecordType": "SpeechObject_t",
      "Technology": "Software",      "Protocol": "",             "IsRemote": false },

    { "Name": "RestoredSegment",     "Direction": "OutputInput", "RecordType": "SpeechObject_t",
      "Technology": "Software",      "Protocol": "",             "IsRemote": false } ],

  "SubAIMs": [],
  "Topology": [],
  "Implementations": [],
  "Documentation": [ { "Type": "Tutorial", "URI": "https://mpai.community/standards/mpai-cae/usc/v2-4" } ]
}
