How to run the example (using t2_sec_head002_validation_flow)

This TARGET2 Security (T2S) schema validation will allow validation of files using a different header allowing for multiple payloads. Use a sample file to demonstrate the generation of validation reports as output from a T2S XML message using head_002.001.01.

  1. Import the t2_sec.zip project into the Design Server.
  2. Open the t2_sec project in Design Server and view the flow t2_sec_head002_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. This list has to be added to the description and ensure all lines start in column 1. Following is the list of maps with the description format:
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_schema_validation_frmwrk_map_xsd/t2se9500_val
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9501_admi_005_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9502_admi_006_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9503_admi_007_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9504_camt_003_001_07
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9505_camt_004_001_08
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9506_camt_005_001_08
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9507_camt_006_001_08
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9508_camt_009_001_07
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9509_camt_010_001_08
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9510_camt_019_001_07
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9511_camt_025_001_05
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9512_camt_050_001_05
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9513_camt_051_001_05
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9514_camt_052_001_08
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9515_camt_053_001_08
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9516_camt_054_001_08
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9517_camt_064_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9518_camt_065_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9519_camt_066_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9520_camt_067_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9521_camt_068_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9522_camt_069_001_03
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9523_camt_070_001_04
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9524_camt_072_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9525_camt_073_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9526_camt_074_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9527_camt_075_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9528_camt_078_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9529_camt_079_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9530_camt_080_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9531_camt_081_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9532_camt_082_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9533_camt_083_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9534_camt_084_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9535_camt_085_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9536_colr_001_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9537_colr_002_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9538_semt_002_001_10
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9539_semt_013_001_04
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9540_semt_014_001_06
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9541_semt_015_001_07
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9542_semt_016_001_07
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9543_semt_017_001_09
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9544_semt_018_001_10
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9545_semt_019_001_08
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9546_semt_020_001_05
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9547_semt_022_001_04
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9548_semt_025_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9549_semt_026_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9550_semt_027_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9551_semt_028_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9552_semt_029_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9553_semt_030_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9554_semt_031_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9555_semt_032_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9556_semt_033_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9557_semt_034_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9558_semt_040_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9559_semt_044_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9560_sese_020_001_06
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9561_sese_021_001_05
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9562_sese_022_001_05
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9563_sese_023_001_09
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9564_sese_024_001_10
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9565_sese_025_001_09
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9566_sese_027_001_05
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9567_sese_028_001_08
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9568_sese_029_001_04
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9569_sese_030_001_08
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9570_sese_031_001_08
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9571_sese_032_001_09
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9572_supl_021_001_01
      • @packagemap=t2_sec/validation/schema_only/maps/t2_sec_mx_schema_validation_xsd/t2se9951_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 variable INPUT_FILE to set the location of the data.

      2. Map Nodes:
        • XSD_VAL

          Runs map t2se9600_val which calls the appropriate map to perform schema validation using head_002_001_01.

          Note: The maps t2se9600_val call all the other maps identified in the above Flow Description step.
      3. Decision Nodes:
        • 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. Passthrough Nodes:
        • 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.

      5. Format Converter Nodes:
        • 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.

      6. Target Nodes:
        • 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:
      1. Flow variables:
        • VALIDATION_TYPE

          Default value is schema. The value extended is not supported at this time. This variable is currently not being used in any node.

        • REPORT_FORMAT

          Default value is xml. It can be changed to json. This is used in Decision node XSD_RESULT_FORMAT.

        • INPUT_FILE

          Default value is ../tools/mxservice/data/t2se_head_002.xml. This is the data file to be used for validation and can be customized. It is used in the Source node mx_input.

        • BIC_FILE

          Default value is ../data/bic.xml. This is the location of the bic cross-reference file that is used in validation maps. Since this flow is only doing schema validation, this variable is not used.

        • CCY_FILE

          Default value is ../data/currencycodedecimals.xml. This is the location of the country code cross-reference file that is used in validation maps. Since this flow is only doing schema validation, this variable is not used.

        • MXCONFIG_FILE

          Default value is ../data/mxconfig.xml. This is the location of the file containing the rule validation settings that is used in validation maps. Since this flow is only doing schema validation, this variable is not used.

        • OUTPUT_RESULT_XML

          Default value is validation_result.xml. This is the location of the validation report file in xml format. It is used in Target node xsd_xml. It can be customized.

        • OUTPUT_RESULT_JSON

          Default value is validation_result.json. This is the location of the validation report file in json format. It is used in Target node xsd_json. It can be customized.

        • FAILURE_LOG

          Default value is stopMXValidation.json. This is the location of the failure log. It is used in Log node FAILURE. This variable is not used in this flow.

        • bizSvc

          For internal use in the Map node MX pre-check to determine the type of data being read in the input file. This variable is not used in this flow.

        • stopValidation

          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 T2S message. This variable is not used in this flow.

  3. Open the main flow t2_sec_head002_validation_flow in the Design Server. It utilizes above one Source node, one Map node, one Decision node, one Log node, one Fail node, one Passthrough node, one Format Converter node, and two Target nodes.
  4. In Design Server, create a package t2_sec_head002_validation that contains the input files and the flow t2_sec_head002_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.