How to run the example

This EBA EURO1/STEP1 MX Validation will use the sample files to demonstrate the generation of validation reports as output from an EBA EURO1/STEP1 XML message.

The stopValidation.json file will report the validation failure due to the pre-conversion checks:

If input file is other than any of the supported EBA EURO1/STEP1 messages as per schema list indicated above.
  1. Import the eba_e1s1.zip project into the Design Server.
  2. Open the eba_e1s1 project in Design Server and view the flow eba_e1s1_validation_flow.
    1. The Flow Description points to all the maps to be executed during the flow process, which will be called from within some of the map nodes in the flow. The following is a list of maps invoked using RUN built-in function during the flow process:
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_pacs_validation_enh/e1s17101_pacs_002_001_10
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_pacs_validation_enh/e1s17102_pacs_004_001_09
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_pacs_validation_enh/e1s17103_pacs_008_001_08
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_pacs_validation_enh/e1s17104_pacs_009_001_08
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_pacs_validation_enh/e1s17105_pacs_010_001_03
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_pacs_validation_enh/e1s17151_head111_pacs
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17051_head111_camt
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17001_camt_054_001_08
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17002_camt_003_001_07
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17003_camt_004_001_08
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17004_camt_005_001_08
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17005_camt_006_001_08
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17006_camt_009_001_07
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17007_camt_010_001_08
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17008_camt_011_001_07
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17009_camt_029_001_09
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17010_camt_052_001_08
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17011_camt_053_001_08
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17012_camt_056_001_08
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17013_camt_998_001_03_gar
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17014_sup_camt_998_001_03_gar
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17015_camt_998_001_03_rar
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_camt_validation_enh/e1s17016_sup_camt_998_001_03_rar
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_admi_validation_enh/e1s17501_admi_007_001_01
      • @packagemap=eba_e1s1/validation/mx_extended/maps/e1s1_mx_admi_validation_enh/e1s17551_head111_admi
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17201_camt_054_001_08
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17202_camt_003_001_07
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17203_camt_004_001_08
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17204_camt_005_001_08
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17205_camt_006_001_08
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17206_camt_009_001_07
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17207_camt_010_001_08
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17208_camt_011_001_07
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17209_camt_029_001_09
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17210_camt_052_001_08
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17211_camt_053_001_08
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17212_camt_056_001_08
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17213_camt_998_001_03_gar
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17214_sup_camt_998_001_03_gar
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17215_camt_998_001_03_rar
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17216_sup_camt_998_001_03_rar
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17301_pacs_002_001_10
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17302_pacs_004_001_09
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17303_pacs_008_001_08
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17304_pacs_009_001_08
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17305_pacs_010_001_03
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17401_admi_007_001_01
      • @packagemap=eba_e1s1/validation/schema_only/maps/e1s1_mx_schema_validation_xsd/e1s17651_head_001_001_01
    2. It utilizes the following nodes:
      1. Source Nodes:
        • mx_input

          This node identifies the input data to be validated in the flow. It uses the INPUT_FILE variable to set the location of the data.

      2. Map Nodes:
        • MX pre-check

          This node runs map mxut1003_bizsvc_e1s1 which sets the flow variables, checks pre-validation conditions and creates infoset.json for validation.

        • EXT_VAL

          This node runs map e1s17100_val which calls the appropriate map to perform extended validation of an EBA message.

        • XSD_VAL

          This node runs map e1s17200_val which calls the appropriate map to perform schema validation of an EBA message.

        Note: The maps e1s17100_val and e1s17200_val internally call all the other maps identified in the above Flow Description step.
      3. Decision Nodes:
        • pre-valid chk

          This node checks the flow variable stopValidation to decide if further validation/processing is not required.

        • EXT_RESULT_FORMAT

          This node checks the value of the flow variable REPORT_FORMAT to determine if the resulting report for extended validation should be generated in XML (default) or JSON.

        • XSD_RESULT_FORMAT

          This node checks the value of the flow variable REPORT_FORMAT to determine if the resulting report for schema-only validation should be generated in XML (default) or JSON.

      4. Route Nodes:
        • VAL_TYPE

          This node checks the variable VALIDATION_TYPE to determine if the process will do extended validation or schema-only validation on the data.

      5. Log Nodes:
        • FAILURE

          This node creates a log file specified by the flow variable FAILURE_LOG in case of no validation due to precondition check failures.

      6. Fail Node:
        • STOP

          It generates error message setup in the node in case of no validation performed.

      7. Passthrough Nodes
        • EXT_XML_CONVERT

          This node receives an extended validation report in XML format and does not modify the content, thus passing it as is to the appropriate target node.

        • XSD_XML_CONVERT

          This node receives a schema-only validation report in XML format and does not modify the content, thus passing it as is to the appropriate target node.

      8. Format Converter Nodes
        • EXT_JSON_CONVERT

          This node receives an extended validation report in XML format and converts it to JSON before passing it to the appropriate target node.

        • XSD_JSON_CONVERT

          This node receives a schema-only validation report in XML format and converts it to JSON before passing it to the appropriate target node.

      9. Target Nodes
        • ext_xml

          This node contains the resulting extended validation report in XML format and creates the output as defined by variable OUTPUT_RESULT_XML.

        • ext_json

          This node contains the resulting extended validation report in JSON format and creates the output as defined by the variable OUTPUT_RESULT_JSON.

        • xsd_xml

          This node contains the resulting schema-only validation report in XML format and creates the output as defined by the variable OUTPUT_RESULT_XML.

        • xsd_json

          This node contains the resulting schema-only validation report in JSON format and creates the output as defined by the variable OUTPUT_RESULT_JSON.

    3. It utilizes the following variables:
      Flow variables:
      • VALIDATION_TYPE

        The default value is extended.

        For schema-only validation, it can be changed to schema. This is used in Route node VAL_TYPE.

      • REPORT_FORMAT

        The default value is xml.

        It can be changed to json. This is used in Decision nodes EXT_RESULT_FORMAT and XSD_RESULT_FORMAT.

      • INPUT_FILE

        The default value is ../tools/mxservice/data/e1s1_pacs_009.xml.

        This is the data file to be used for validation and can be customized. This is used in Source node mx_input.

      • BIC_FILE

        The default value is ../data/bic.xml.

        This is the location of the bic cross-reference file that is used in all the maps executed by the map in node EXT_VAL. It can be customized.

      • CCY_FILE

        The default value is ../data/currencycodedecimals.xml.

        This is the location of the country code cross-reference file that is used in all the maps executed by the map in node EXT_VAL. It can be customized.

      • MXCONFIG_FILE

        The default value is ../data/mxconfig.xml.

        This is the location of the file containing the rule validation settings that is used in all the maps executed by the map in node EXT_VAL. It can be customized.

      • OUTPUT_RESULT_XML

        The default value is validation_result.xml.

        This is the location of the validation report file in xml format. It is used in Target nodes ext_xml and xsd_xml. It can be customized.

      • OUTPUT_RESULT_JSON

        The default value is validation_result.json.

        This is the location of the validation report file in json format. It is used in Target nodes ext_json and xsd_json. It can be customized.

      • FAILURE_LOG

        The default value is stopMXValidation.json.

        This is the location of the failure log. It is used in Log node FAILURE. It can be customized.

      • bizSvc

        This is for internal use in the Map node MX pre-check to determine the type of data being read in the input file.

      • stopValidation

        This is for internal use in the Map node MX pre-check and is checked in Decision node pre-valid chk to cause a Failure log in case a data file was not recognized as a valid EBA message.

  3. Open the main flow eba_e1s1_validation_flow in the Design Server. It utilizes above one source node, three map nodes, one route node, three decision nodes, one log node, one fail node, two passthrough nodes, two format converter nodes and four target nodes.
  4. In Design Server, create a package eba_e1s1_mx_validation that contains the input files and one flow eba_e1s1_validation_flow. The maps will automatically be included during deployment of the package onto the runtime server.
    Note: Not required for running flows on Design Server user interface directly.