{ "$schema":              "https://json-schema.org/draft/2020-12/schema",
  "$comment":             "https://schemas.mpai.community/AIF/V3.0/data/AIMMetadata.json",
  "$id":                  "https://schemas.mpai.community/CAE1/V2.5/AIMs/AudioRecordingPreservation.json",
  "title":                "Audio Recording Preservation V2.5",
  "Header":               "CAE-ARP-V2.5",

  "Identifier":           {"ImplementerID": "/* String assigned by IIDRA */", "ImplementationID": "/* String assigned by Implementer */", "AIMName": "/* The name of the AIM, given by the concatenation of the two strings ImplementerID and ImplementationID, in this order, with no space and no character between them. */"},

  "APIProfile":           "Basic",
  "Execution":            "Continuous",
  "Description":          "Creates a digital copy of the digitised audio of an open reel magnetic tape for long-term preservation (Preservation Master Files) and an access copy, restored if necessary, for correct playback (Access Copy Files). The Audio Analysis for Preservation and the Video Analysis for Preservation exchange the Irregularity Files they produce, so the Module has a loop.",

  "InternalTypes":        [ ],

  "ExternalPorts":        [{"Name": "PreservationAudioFile", "Direction": "Input", "DataType": "OSD-BAO-V1.5", "Technology": "Software", "Protocol": "", "IsRemote": false},
                           {"Name": "PreservationAudioVisualFile", "Direction": "Input", "DataType": "OSD-BMO-V1.5", "Technology": "Software", "Protocol": "", "IsRemote": false},
                           {"Name": "AccessCopyFiles", "Direction": "Output", "DataType": "OSD-BAO-V1.5", "PortNumber": 1, "Technology": "Software", "Protocol": "", "IsRemote": false},
                           {"Name": "PreservationMasterFiles", "Direction": "Output", "DataType": "OSD-BAO-V1.5", "PortNumber": 2, "Technology": "Software", "Protocol": "", "IsRemote": false}],
  "SubAIMs":              [{"Header": "CAE-AAP-V2.5", "Identifier": {"ImplementerID": "/* String assigned by IIDRA */", "ImplementationID": "/* String assigned by Implementer */", "AIMName": "/* The name of the AIM, given by the concatenation of the two strings ImplementerID and ImplementationID, in this order, with no space and no character between them. */", "Relation": "Internal"}},
                           {"Header": "CAE-VAP-V2.5", "Identifier": {"ImplementerID": "/* String assigned by IIDRA */", "ImplementationID": "/* String assigned by Implementer */", "AIMName": "/* The name of the AIM, given by the concatenation of the two strings ImplementerID and ImplementationID, in this order, with no space and no character between them. */", "Relation": "Internal"}},
                           {"Header": "CAE-TIC-V2.5", "Identifier": {"ImplementerID": "/* String assigned by IIDRA */", "ImplementationID": "/* String assigned by Implementer */", "AIMName": "/* The name of the AIM, given by the concatenation of the two strings ImplementerID and ImplementationID, in this order, with no space and no character between them. */", "Relation": "Internal"}},
                           {"Header": "CAE-TAR-V2.5", "Identifier": {"ImplementerID": "/* String assigned by IIDRA */", "ImplementationID": "/* String assigned by Implementer */", "AIMName": "/* The name of the AIM, given by the concatenation of the two strings ImplementerID and ImplementationID, in this order, with no space and no character between them. */", "Relation": "Internal"}},
                           {"Header": "CAE-PAP-V2.5", "Identifier": {"ImplementerID": "/* String assigned by IIDRA */", "ImplementationID": "/* String assigned by Implementer */", "AIMName": "/* The name of the AIM, given by the concatenation of the two strings ImplementerID and ImplementationID, in this order, with no space and no character between them. */", "Relation": "Internal"}}],
  "Topology":             [{"Output": {"AIMName": "", "DataType": "OSD-BAO-V1.5"}, "Input": {"AIMName": "CAE-AAP-V2.5", "DataType": "OSD-BAO-V1.5"}},
                           {"Output": {"AIMName": "", "DataType": "OSD-BMO-V1.5"}, "Input": {"AIMName": "CAE-AAP-V2.5", "DataType": "OSD-BMO-V1.5"}},
                           {"Output": {"AIMName": "", "DataType": "OSD-BMO-V1.5"}, "Input": {"AIMName": "CAE-VAP-V2.5", "DataType": "OSD-BMO-V1.5"}},
                           {"Output": {"AIMName": "CAE-AAP-V2.5", "DataType": "CAE-IRR-V2.5"}, "Input": {"AIMName": "CAE-VAP-V2.5", "DataType": "CAE-IRR-V2.5"}},
                           {"Output": {"AIMName": "CAE-VAP-V2.5", "DataType": "CAE-IRR-V2.5"}, "Input": {"AIMName": "CAE-AAP-V2.5", "DataType": "CAE-IRR-V2.5"}},
                           {"Output": {"AIMName": "CAE-AAP-V2.5", "DataType": "OSD-BAO-V1.5"}, "Input": {"AIMName": "CAE-TIC-V2.5", "DataType": "OSD-BAO-V1.5"}},
                           {"Output": {"AIMName": "CAE-AAP-V2.5", "DataType": "CAE-IRR-V2.5"}, "Input": {"AIMName": "CAE-TIC-V2.5", "DataType": "CAE-IRR-V2.5", "PortNumber": 1}},
                           {"Output": {"AIMName": "CAE-VAP-V2.5", "DataType": "OSD-BVO-V1.5"}, "Input": {"AIMName": "CAE-TIC-V2.5", "DataType": "OSD-BVO-V1.5"}},
                           {"Output": {"AIMName": "CAE-VAP-V2.5", "DataType": "CAE-IRR-V2.5"}, "Input": {"AIMName": "CAE-TIC-V2.5", "DataType": "CAE-IRR-V2.5", "PortNumber": 2}},
                           {"Output": {"AIMName": "CAE-TIC-V2.5", "DataType": "CAE-IRR-V2.5"}, "Input": {"AIMName": "CAE-TAR-V2.5", "DataType": "CAE-IRR-V2.5"}},
                           {"Output": {"AIMName": "", "DataType": "OSD-BAO-V1.5"}, "Input": {"AIMName": "CAE-TAR-V2.5", "DataType": "OSD-BAO-V1.5"}},
                           {"Output": {"AIMName": "", "DataType": "OSD-BAO-V1.5"}, "Input": {"AIMName": "CAE-PAP-V2.5", "DataType": "OSD-BAO-V1.5", "PortNumber": 1}},
                           {"Output": {"AIMName": "CAE-TAR-V2.5", "DataType": "OSD-BAO-V1.5"}, "Input": {"AIMName": "CAE-PAP-V2.5", "DataType": "OSD-BAO-V1.5", "PortNumber": 2}},
                           {"Output": {"AIMName": "CAE-TAR-V2.5", "DataType": "CAE-ELS-V2.5"}, "Input": {"AIMName": "CAE-PAP-V2.5", "DataType": "CAE-ELS-V2.5"}},
                           {"Output": {"AIMName": "CAE-TIC-V2.5", "DataType": "CAE-IRR-V2.5"}, "Input": {"AIMName": "CAE-PAP-V2.5", "DataType": "CAE-IRR-V2.5"}},
                           {"Output": {"AIMName": "CAE-TIC-V2.5", "DataType": "OSD-BVO-V1.5"}, "Input": {"AIMName": "CAE-PAP-V2.5", "DataType": "OSD-BVO-V1.5"}},
                           {"Output": {"AIMName": "", "DataType": "OSD-BMO-V1.5"}, "Input": {"AIMName": "CAE-PAP-V2.5", "DataType": "OSD-BMO-V1.5"}},
                           {"Output": {"AIMName": "CAE-PAP-V2.5", "DataType": "OSD-BAO-V1.5", "PortNumber": 1}, "Input": {"AIMName": "", "DataType": "OSD-BAO-V1.5", "PortNumber": 1}},
                           {"Output": {"AIMName": "CAE-PAP-V2.5", "DataType": "OSD-BAO-V1.5", "PortNumber": 2}, "Input": {"AIMName": "", "DataType": "OSD-BAO-V1.5", "PortNumber": 2}}],

  "AIMLicence":          "/* AIM Licence offered by the Implementer (AIF-LIC-V3.0): Grant, Term, Updates, Payment, TermsURI - or omit it if the AIM needs no AIM Licence */",

  "Implementations":      [{"ImplementationURI": "/* URI storing Implementation */",
                            "BinaryName":       "/* BinaryName */",
                            "Architecture":     "/* x86 | x86-64 | ARM | ARM64 | MIPS | RISC-V */",
                            "OperatingSystem":  "/* Windows | Linux | MacOS | Debian | Ubuntu | RedHat | Android | Zephyr | RTOS | Oniro | iOS */",
                            "Version":          "/* Version */",
                            "Source":           "/* AIMStorage | MPAIStore | AIMURL */",
                            "Destination":      "/* Destination URI */"}],

  "ResourcePolicies":     [{"Name": "Memory",    "Minimum": "/* GB */",                  "Request": "/* GB */",                  "Maximum": "/* GB */"},
                           {"Name": "CPU:Class", "Minimum": "/* Low | Medium | High */", "Request": "/* Low | Medium | High */", "Maximum": "/* Low | Medium | High */"}],

  "DataXMData":           { },

  "Documentation":        [{"Type": "Specification", "URI": "https://mpai.community/standards/mpai-cae/usc/v2-5/ai-modules/audio-recording-preservation/"}]}
