{
  "BGM": {
    "requires": 0,
    "elements": [
      {
        "id": "C002",
        "name": "documentMessageName",
        "requires": 0,
        "components": [
          { "id": "1001", "name": "documentNameCode", "format": "an..3" },
          {
            "id": "1131",
            "name": "codeListIdentificationCode",
            "format": "an..17"
          },
          {
            "id": "3055",
            "name": "codeListResponsibleAgencyCode",
            "format": "an..3"
          },
          { "id": "1000", "name": "documentName", "format": "an..35" }
        ]
      },
      {
        "id": "C106",
        "name": "documentMessageIdentification",
        "requires": 0,
        "components": [
          { "id": "1004", "name": "documentIdentifier", "format": "an..35" },
          { "id": "1056", "name": "versionIdentifier", "format": "an..9" },
          { "id": "1060", "name": "revisionIdentifier", "format": "an..6" }
        ]
      },
      {
        "id": "1225",
        "name": "messageFunctionCode",
        "requires": 0,
        "components": [
          { "id": "1225", "name": "messageFunctionCode", "format": "an..3" }
        ]
      },
      {
        "id": "4343",
        "name": "responseTypeCode",
        "requires": 0,
        "components": [
          { "id": "4343", "name": "responseTypeCode", "format": "an..3" }
        ]
      }
    ]
  },
  "CNT": {
    "requires": 1,
    "elements": [
      {
        "id": "C270",
        "name": "control",
        "requires": 2,
        "components": [
          {
            "id": "6069",
            "name": "controlTotalTypeCodeQualifier",
            "format": "an..3"
          },
          { "id": "6066", "name": "controlTotalValue", "format": "n..18" },
          { "id": "6411", "name": "measurementUnitCode", "format": "an..3" }
        ]
      }
    ]
  },
  "DOC": {
    "requires": 1,
    "elements": [
      {
        "id": "C002",
        "name": "documentMessageName",
        "requires": 0,
        "components": [
          { "id": "1001", "name": "documentNameCode", "format": "an..3" },
          {
            "id": "1131",
            "name": "codeListIdentificationCode",
            "format": "an..17"
          },
          {
            "id": "3055",
            "name": "codeListResponsibleAgencyCode",
            "format": "an..3"
          },
          { "id": "1000", "name": "documentName", "format": "an..35" }
        ]
      },
      {
        "id": "C503",
        "name": "documentMessageDetails",
        "requires": 0,
        "components": [
          { "id": "1004", "name": "documentIdentifier", "format": "an..35" },
          { "id": "1373", "name": "documentStatusCode", "format": "an..3" },
          {
            "id": "1366",
            "name": "documentSourceDescription",
            "format": "an..70"
          },
          { "id": "3453", "name": "languageNameCode", "format": "an..3" },
          { "id": "1056", "name": "versionIdentifier", "format": "an..9" },
          { "id": "1060", "name": "revisionIdentifier", "format": "an..6" }
        ]
      },
      {
        "id": "3153",
        "name": "communicationMediumTypeCode",
        "requires": 0,
        "components": [
          {
            "id": "3153",
            "name": "communicationMediumTypeCode",
            "format": "an..3"
          }
        ]
      },
      {
        "id": "1220",
        "name": "documentCopiesRequiredQuantity",
        "requires": 0,
        "components": [
          {
            "id": "1220",
            "name": "documentCopiesRequiredQuantity",
            "format": "n..2"
          }
        ]
      },
      {
        "id": "1218",
        "name": "documentOriginalsRequiredQuantity",
        "requires": 0,
        "components": [
          {
            "id": "1218",
            "name": "documentOriginalsRequiredQuantity",
            "format": "n..2"
          }
        ]
      }
    ]
  },
  "DTM": {
    "requires": 1,
    "elements": [
      {
        "id": "C507",
        "name": "dateTimePeriod",
        "requires": 1,
        "components": [
          {
            "id": "2005",
            "name": "dateOrTimeOrPeriodFunctionCodeQualifier",
            "format": "an..3"
          },
          {
            "id": "2380",
            "name": "dateOrTimeOrPeriodValue",
            "format": "an..35"
          },
          {
            "id": "2379",
            "name": "dateOrTimeOrPeriodFormatCode",
            "format": "an..3"
          }
        ]
      }
    ]
  },
  "MOA": {
    "requires": 1,
    "elements": [
      {
        "id": "C516",
        "name": "monetaryAmount",
        "requires": 1,
        "components": [
          {
            "id": "5025",
            "name": "monetaryAmountTypeCodeQualifier",
            "format": "an..3"
          },
          { "id": "5004", "name": "monetaryAmount", "format": "n..35" },
          {
            "id": "6345",
            "name": "currencyIdentificationCode",
            "format": "an..3"
          },
          {
            "id": "6343",
            "name": "currencyTypeCodeQualifier",
            "format": "an..3"
          },
          { "id": "4405", "name": "statusDescriptionCode", "format": "an..3" }
        ]
      }
    ]
  },
  "NAD": {
    "requires": 1,
    "elements": [
      {
        "id": "3035",
        "name": "partyFunctionCodeQualifier",
        "requires": 1,
        "components": [
          {
            "id": "3035",
            "name": "partyFunctionCodeQualifier",
            "format": "an..3"
          }
        ]
      },
      {
        "id": "C082",
        "name": "partyIdentificationDetails",
        "requires": 1,
        "components": [
          { "id": "3039", "name": "partyIdentifier", "format": "an..35" },
          {
            "id": "1131",
            "name": "codeListIdentificationCode",
            "format": "an..17"
          },
          {
            "id": "3055",
            "name": "codeListResponsibleAgencyCode",
            "format": "an..3"
          }
        ]
      },
      {
        "id": "C058",
        "name": "nameAndAddress",
        "requires": 1,
        "components": [
          {
            "id": "3124",
            "name": "nameAndAddressDescription",
            "format": "an..35"
          },
          {
            "id": "3124",
            "name": "nameAndAddressDescription2",
            "format": "an..35"
          },
          {
            "id": "3124",
            "name": "nameAndAddressDescription3",
            "format": "an..35"
          },
          {
            "id": "3124",
            "name": "nameAndAddressDescription4",
            "format": "an..35"
          },
          {
            "id": "3124",
            "name": "nameAndAddressDescription5",
            "format": "an..35"
          }
        ]
      },
      {
        "id": "C080",
        "name": "partyName",
        "requires": 1,
        "components": [
          { "id": "3036", "name": "partyName", "format": "an..35" },
          { "id": "3036", "name": "partyName2", "format": "an..35" },
          { "id": "3036", "name": "partyName3", "format": "an..35" },
          { "id": "3036", "name": "partyName4", "format": "an..35" },
          { "id": "3036", "name": "partyName5", "format": "an..35" },
          { "id": "3045", "name": "partyNameFormatCode", "format": "an..3" }
        ]
      },
      {
        "id": "C059",
        "name": "street",
        "requires": 1,
        "components": [
          {
            "id": "3042",
            "name": "streetAndNumberOrPostOfficeBoxIdentifier",
            "format": "an..35"
          },
          {
            "id": "3042",
            "name": "streetAndNumberOrPostOfficeBoxIdentifier2",
            "format": "an..35"
          },
          {
            "id": "3042",
            "name": "streetAndNumberOrPostOfficeBoxIdentifier3",
            "format": "an..35"
          },
          {
            "id": "3042",
            "name": "streetAndNumberOrPostOfficeBoxIdentifier4",
            "format": "an..35"
          }
        ]
      },
      {
        "id": "3164",
        "name": "cityName",
        "requires": 0,
        "components": [{ "id": "3164", "name": "cityName", "format": "an..35" }]
      },
      {
        "id": "C819",
        "name": "countrySubEntityDetails",
        "requires": 0,
        "components": [
          {
            "id": "3229",
            "name": "countrySubEntityNameCode",
            "format": "an..9"
          },
          {
            "id": "1131",
            "name": "codeListIdentificationCode",
            "format": "an..17"
          },
          {
            "id": "3055",
            "name": "codeListResponsibleAgencyCode",
            "format": "an..3"
          },
          { "id": "3228", "name": "countrySubEntityName", "format": "an..70" }
        ]
      },
      {
        "id": "3251",
        "name": "postalIdentificationCode",
        "requires": 0,
        "components": [
          {
            "id": "3251",
            "name": "postalIdentificationCode",
            "format": "an..17"
          }
        ]
      },
      {
        "id": "3207",
        "name": "countryNameCode",
        "requires": 0,
        "components": [
          { "id": "3207", "name": "countryNameCode", "format": "an..3" }
        ]
      }
    ]
  },
  "RFF": {
    "requires": 1,
    "elements": [
      {
        "id": "C506",
        "name": "reference",
        "requires": 1,
        "components": [
          { "id": "1153", "name": "referenceCodeQualifier", "format": "an..3" },
          { "id": "1154", "name": "referenceIdentifier", "format": "an..70" },
          { "id": "1156", "name": "documentLineIdentifier", "format": "an..6" },
          {
            "id": "4000",
            "name": "referenceVersionIdentifier",
            "format": "an..35"
          },
          { "id": "1060", "name": "revisionIdentifier", "format": "an..6" }
        ]
      }
    ]
  },
  "TAX": {
    "requires": 1,
    "elements": [
      {
        "id": "5283",
        "name": "dutyOrTaxOrFeeFunctionCodeQualifier",
        "requires": 1,
        "components": [
          {
            "id": "5283",
            "name": "dutyOrTaxOrFeeFunctionCodeQualifier",
            "format": "an..3"
          }
        ]
      },
      {
        "id": "C241",
        "name": "dutyTaxFeeType",
        "requires": 0,
        "components": [
          {
            "id": "5153",
            "name": "dutyOrTaxOrFeeTypeNameCode",
            "format": "an..3"
          },
          {
            "id": "1131",
            "name": "codeListIdentificationCode",
            "format": "an..17"
          },
          {
            "id": "3055",
            "name": "codeListResponsibleAgencyCode",
            "format": "an..3"
          },
          { "id": "5152", "name": "dutyOrTaxOrFeeTypeName", "format": "an..35" }
        ]
      },
      {
        "id": "C533",
        "name": "dutyTaxFeeAccountDetail",
        "requires": 1,
        "components": [
          {
            "id": "5289",
            "name": "dutyOrTaxOrFeeAccountCode",
            "format": "an..6"
          },
          {
            "id": "1131",
            "name": "codeListIdentificationCode",
            "format": "an..17"
          },
          {
            "id": "3055",
            "name": "codeListResponsibleAgencyCode",
            "format": "an..3"
          }
        ]
      },
      {
        "id": "5286",
        "name": "dutyOrTaxOrFeeAssessmentBasisValue",
        "requires": 0,
        "components": [
          {
            "id": "5286",
            "name": "dutyOrTaxOrFeeAssessmentBasisValue",
            "format": "an..15"
          }
        ]
      },
      {
        "id": "C243",
        "name": "dutyTaxFeeDetail",
        "requires": 0,
        "components": [
          { "id": "5279", "name": "dutyOrTaxOrFeeRateCode", "format": "an..7" },
          {
            "id": "1131",
            "name": "codeListIdentificationCode",
            "format": "an..17"
          },
          {
            "id": "3055",
            "name": "codeListResponsibleAgencyCode",
            "format": "an..3"
          },
          { "id": "5278", "name": "dutyOrTaxOrFeeRate", "format": "an..17" },
          {
            "id": "5273",
            "name": "dutyOrTaxOrFeeRateBasisCode",
            "format": "an..12"
          },
          {
            "id": "1131",
            "name": "codeListIdentificationCode2",
            "format": "an..17"
          },
          {
            "id": "3055",
            "name": "codeListResponsibleAgencyCode2",
            "format": "an..3"
          }
        ]
      },
      {
        "id": "5305",
        "name": "dutyOrTaxOrFeeCategoryCode",
        "requires": 0,
        "components": [
          {
            "id": "5305",
            "name": "dutyOrTaxOrFeeCategoryCode",
            "format": "an..3"
          }
        ]
      },
      {
        "id": "3446",
        "name": "partyTaxIdentifier",
        "requires": 0,
        "components": [
          { "id": "3446", "name": "partyTaxIdentifier", "format": "an..20" }
        ]
      },
      {
        "id": "1227",
        "name": "calculationSequenceCode",
        "requires": 0,
        "components": [
          { "id": "1227", "name": "calculationSequenceCode", "format": "an..3" }
        ]
      }
    ]
  }
}
