A Schematron-based ISO20022 message semantic verification method and system

By using the ISO20022 message semantic verification method based on Schematron and leveraging the XSLT transformation module, development can be achieved without hard coding. This solves the problems of low development efficiency, poor cross-language compatibility, and strong coupling in ISO20022 message semantic verification, and realizes efficient and flexible semantic verification.

CN119808761BActive Publication Date: 2025-10-28CHINA CITIC BANK CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411784410.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-06
Publication Date
2025-10-28
Estimated Expiration
2044-12-06

AI Technical Summary

Technical Problem

Existing technologies for semantic verification of ISO20022 messages suffer from low development efficiency, poor cross-language compatibility, and strong coupling, making it difficult to achieve flexible rule management and expansion, and hard to adapt to ever-changing business needs.

Method used

The ISO20022 message semantic verification method based on Schematron is adopted. By writing Schematron rule scripts and using the XSLT extensible stylesheet language conversion module for conversion, development can be achieved without hard coding, independent of language platform, and cross-language compatible semantic verification.

Benefits of technology

It improves development efficiency, reduces development costs, achieves cross-language compatible semantic validation, enhances the flexibility of rule management and maintenance, and can quickly respond to changes in business rules.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119808761B_ABST
    Figure CN119808761B_ABST
Patent Text Reader

Abstract

This invention relates to a Schematron-based ISO20022 message semantic verification method and system, comprising: receiving a business message and Schematron verification rules, wherein the business message is an XML message conforming to the ISO20022 specification; performing a first transformation using an XSLT extensible stylesheet language conversion module to convert the Schematron verification rules into a rule stylesheet based on a standard conversion stylesheet; performing a second transformation using the XSLT extensible stylesheet language conversion module; and outputting a result file, wherein the result file includes semantic verification results. This invention develops Schematron rule scripts for specific business messages, achieving cross-language, universal XML semantic verification based on Schematron technology, realizing the universality and reusability of the verification method, reducing coupling with specific applications, facilitating updates and maintenance, and improving development efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of semantic verification technology, and in particular to a method and system for semantic verification of ISO20022 messages based on Schematron. Background Technology

[0002] ISO 20022 is a standard developed by the international standards organization ISO for message transmission in the financial industry, aiming to provide a unified framework for the exchange and communication of financial information. Since its release, it has been widely adopted in the financial sectors such as payments, securities, and trade.

[0003] The CBPR+ (Cross-Border Payment Reporting) message standard is a financial information transmission standard developed by the SWIFT (Society for Worldwide Banks) organization based on ISO 20022 and combined with practical experience. It is specifically designed for cross-border payment reporting and gradually replaces the old MT message through the CBPR+ standard message.

[0004] XML (Extensible Markup Language) is a markup language widely used by computer programs for storing and transmitting data. Due to its structured and highly scalable characteristics, it is used as a standard specification language in the financial field.

[0005] XML Schema is a constraint language that defines the structure and data types of XML documents, providing a constraint mechanism to ensure that XML documents follow specific structural patterns, such as the definition of elements and attributes, constraints on data types, support for namespaces, and validation of document structure. However, XML Schema can only operate at the syntax level and cannot constrain the semantics of XML.

[0006] Schematron is a schema-based XML validation language. Compared to schema validation, Schematron validation operates at the semantic layer, allowing for the customization of rules within a specific business context. This language offers advantages such as declarativeness, ease of extensibility, the ability to perform complex query validations on XML documents, high readability, and ease of maintenance.

[0007] The SWIFT ISO 20022 standard upgrade is a global financial communication protocol migration initiative designed to meet the increasingly complex needs of international financial transactions. It aims to improve the efficiency and transparency of cross-border payments and reduce friction in cross-border transactions. The ISO 20022 standard uses XML structured message format as its technical standard, providing a universal message solution for the financial industry and achieving standardization in areas such as payments, securities, and foreign exchange.

[0008] The ISO 20022 standard is a comprehensive set of specifications that not only constrains the structure and data types of messages, but also, more importantly, constrains business rules through informal textual descriptions. The standard's release includes an XML structure description, a schema file, and numerous textually described business constraints. While the schema file can check and constrain the syntax of XML messages, it cannot check semantic constraints described in textual form. Currently, semantic constraints can only be validated by writing conditional statements line by line through application parsing of XML messages. There is a lack of a universal, cross-platform method for validating ISO 20022 XML message semantics, which presents the following problems:

[0009] 1. Low development efficiency of business validation: There are many messages under the ISO20022 standard, and the business rules of each message are numerous and complex. It is necessary to write judgment logic code for each message and each business rule, resulting in low development efficiency.

[0010] 2. Cross-language compatibility issues: The method of implementing semantic validation through applications can only be applied to specific language environments. The platform is highly coupled and cannot achieve cross-language universality. For example, validation implemented in the Java language environment requires rewriting the validation logic in the Python language environment.

[0011] 3. Coupling and maintainability issues: As the specifications continue to expand, the validation rules need to be constantly updated and modified. Hard-coding requires synchronous modification of the application code logic to ensure the synchronization of business rules. This results in strong code coupling, making it impossible to achieve flexible rule management and expansion, and difficult to adapt to ever-changing business needs. Summary of the Invention

[0012] To address the shortcomings of existing technologies, this invention provides an ISO20022 message semantic verification method based on Schematron. For specific business messages, Schematron rule scripts are written, enabling development without hard-coding configuration. Leveraging Schematron's declarative, concise syntax and maintainability, development costs are reduced and efficiency is improved. The language-platform independent rule scripts ensure the universality and reusability of the verification method, reducing coupling with specific applications and achieving cross-language compatible semantic verification. Regarding rule management and maintenance, Schematron scripts offer good extensibility, facilitating updates and maintenance, and improving the application's ability to quickly respond to changes in business rules.

[0013] To achieve the above objectives, the technical solution adopted by the present invention includes:

[0014] A semantic verification method for ISO20022 messages based on Schematron, characterized by comprising:

[0015] S1. Receive service messages and Schematron verification rules, wherein the service messages are XML messages conforming to the ISO20022 standard;

[0016] S2. Perform the first conversion using the XSLT extensible stylesheet language conversion module, converting the Schematron validation rules into a rule stylesheet based on the standard conversion stylesheet;

[0017] S3. The rule style sheet is converted a second time using the XSLT Extensible Style Sheet Language Conversion Module;

[0018] S4. Output the result file, which includes the semantic verification results.

[0019] Furthermore, the generation of the Schematron validation rules includes:

[0020] Based on the business semantic constraints in the Schematron language specification, semantic rules for corresponding business messages are written to form Schematron rule scripts. The Schematron rule scripts are XML documents, and the tags and structure of the Schematron rule scripts follow the Schematron language specification. The Schematron rule scripts include Schematron validation rules.

[0021] Furthermore, the rule style sheet includes semantic constraints on business messages. The rule style sheet is an XSLT style sheet file, and the semantic constraint descriptions of the rule style sheet and the Schematron rule script are the same.

[0022] Furthermore, the second transformation of the rule style sheet using the XSLT Extensible Style Sheet Language conversion module includes:

[0023] The XSLT extensible style sheet language conversion module reads the rule style sheet and applies it to the business message to be verified.

[0024] Furthermore, after the rule style sheet is transformed a second time using the XSLT Extensible Style Sheet Language conversion module, the process further includes:

[0025] The rule style table includes tags to be matched and corresponding check conditions. It matches the XML tags of the business message and checks whether the matched tags meet the check conditions.

[0026] Furthermore, the semantic verification result includes:

[0027] Determine whether the semantic validation passed;

[0028] If the semantic validation fails, provide the location and reason for the semantic discrepancy.

[0029] This invention also relates to an ISO20022 message semantic verification system based on Schematron, characterized in that it includes:

[0030] The message receiving module is used to receive business messages and Schematron verification rules, wherein the business messages are XML messages conforming to the ISO20022 standard;

[0031] The first conversion module is used to perform the first conversion through the XSLT Extensible Style Sheet Language Conversion Module, converting the Schematron validation rules into a rule style sheet based on the standard conversion style sheet.

[0032] The second conversion module is used to perform a second conversion on the rule style sheet through the XSLT extensible style sheet language conversion module.

[0033] The result output module is used to output a result file, which includes semantic verification results.

[0034] The present invention also relates to a computer-readable storage medium, characterized in that the storage medium stores a computer program, which, when executed by a processor, implements the above-described method.

[0035] The present invention also relates to an electronic device, characterized in that it includes a processor and a memory;

[0036] The memory is used to store program instructions;

[0037] The processor is used to execute the above-described method by invoking program instructions.

[0038] The present invention also relates to a computer program product, including a computer program and / or instructions, characterized in that the computer program and / or instructions, when executed by a processor, implement the steps of the above-described method.

[0039] The beneficial effects of this invention are as follows:

[0040] This invention proposes a universal ISO 20022 message semantic verification method based on Schematron technology. For specific business messages, Schematron rule scripts are written. These scripts are in XML format, possessing language independence. Based on Schematron technology, cross-language, universal XML semantic verification is achieved, applicable to different programming languages ​​and platforms. Its language- and platform-independent rule scripts ensure the universality and reusability of the verification method, reducing coupling with specific applications and achieving cross-language compatible semantic verification. Leveraging Schematron's declarative, concise, and highly maintainable characteristics, development can be achieved without hard-programming configuration, reducing development costs and improving efficiency. When the specification is modified or updated, only the Schematron verification rules need to be modified, without altering the code logic, resulting in high maintainability. Attached Figure Description

[0041] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments of this application will be briefly introduced below.

[0042] Figure 1 This is a schematic diagram of the ISO20022 message semantic verification method based on Schematron according to the present invention;

[0043] Figure 2 This is a schematic diagram of the structure of an ISO20022 message semantic verification system based on Schematron according to the present invention;

[0044] Figure 3 This is a schematic diagram of the structure of an electronic device according to the present invention. Detailed Implementation

[0045] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. It should be understood that the described embodiments are only some embodiments of this application, not all embodiments, and these embodiments are only used to illustrate this application and not to limit the scope of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.

[0046] like Figure 1 As shown in the figure, this invention discloses an ISO20022 message semantic verification method based on Schematron, the steps of which include:

[0047] Step S1. Receive the service message and Schematron verification rules. The service message is an XML message conforming to the ISO20022 standard.

[0048] In this embodiment, the generation of Schematron validation rules includes:

[0049] Based on the business semantic constraints in the Schematron language specification, semantic rules for corresponding business messages are written to form Schematron rule scripts. The Schematron rule scripts are XML documents, and the tags and structure of the Schematron rule scripts follow the Schematron language specification. The Schematron rule scripts include Schematron validation rules.

[0050] In this embodiment, the Schematron rule script file has the suffix .sch and is essentially an XML file, but the tags and structure in the script file follow the Schematron language specification.

[0051] Step S2. Perform the first conversion using the XSLT Extensible Style Sheet Language Conversion Module, converting the Schematron validation rules into a rule style sheet based on the standard conversion style sheet.

[0052] In this embodiment, the rule style sheet includes semantic constraints on business messages. The rule style sheet is an XSLT style sheet file, and the semantic constraint descriptions of the rule style sheet and the Schematron rule script are the same.

[0053] The XSLT processing module reads Schematron_basic.xsl and converts the Schematron rule script into a rule stylesheet. XSLT stands for Extensible Stylesheet Language Transformation, used to convert XML documents into other formats, such as HTML and web pages. The XSLT processing module can be any engine that supports XSLT transformation; for example, the JDK's built-in java.xml.transform can perform XSLT transformations. Schematron_basic.xsl in this step is a standard transformation stylesheet provided by the organization that developed the Schematron language and can be obtained from the official Schematron website.

[0054] This step generates a transformed rule style sheet, which contains semantic constraints on XML business messages, such as constraints on a specific tag value. This style sheet has the same semantic constraint description as the Schematron rule script, but it is essentially an XSLT style sheet file with the .xsl extension, which can be further read and processed by the XSLT processing module.

[0055] Step S3. The rule style sheet is converted a second time using the XSLT Extensible Style Sheet Language Conversion Module.

[0056] In this embodiment, the XSLT extensible style sheet language conversion module reads the rule style sheet and applies it to the business message to be verified. The rule style sheet includes tags to be matched and corresponding check conditions. It matches the XML tags of the business message and checks whether the matched tags meet the check conditions.

[0057] The XSLT processing module reads the converted rule style sheet file again and applies it to the ISO20022 XML message to be verified. The rule style sheet contains the tags to be matched and the corresponding check conditions. It automatically matches the tags in the XML message and checks whether the matched tags meet the check conditions, and outputs the check results to the result file.

[0058] Step S4. Output the result file, which includes the semantic verification results.

[0059] To check the results file, determine whether the XML semantic validation passed. For XML messages that do not meet the semantic specifications, the results file also indicates the specific location and reason for the semantic discrepancy.

[0060] This invention uses the pacs.008 message, the most basic message in the ISO 20022 specification, as an example to explain the above-mentioned semantic verification method based on Schematron. A complete ISO standard includes the specification and the corresponding semantic constraints. Below is a sample fragment of a pacs.008 message:

[0061]

[0062] The above message fragment describes a remittance transaction scenario from the payer to the payee. The business meaning of each tag is shown in Table 1:

[0063] Table 1

[0064]

[0065]

[0066] ISO 20022 also specifies the business meaning of messages at the semantic layer, and provides the constraints that need to be met under the pacs.008 specification as shown in Table 2:

[0067] Table 2

[0068]

[0069] ISO 20022 includes text-based business semantic constraints at the semantic layer. Schema validation can only perform syntax-level validation, not semantic validation. Therefore, the aforementioned text-based business semantic constraints cannot be implemented in traditional schema validation. This embodiment uses the Schematron language and writes corresponding Schematron scripts according to the semantic rules described in the text.

[0070] In the Schematron script, two rules are defined, each corresponding to one of the two business semantic constraints in the specification.

[0071] The first rule, "[X00049]InstructedAmountAndExchangeRate1Rule", matches the "CdtTrfTxInf" tag according to the XML hierarchy, and obtains the "Ccy" (currency) attribute of the sub-tags "IntrBkSttlmAmt" (transaction amount) and "InstdAmt" (original remittance amount) under this tag respectively. Then it asserts that "not($interBankAmt=$instdAmt)and. / pacs:XchgRate" must be true, that is, if the two attribute values ​​are inconsistent, the "XchgRate" tag must exist.

[0072] The second rule, "[X00046]ChargeBearerAndChargesInformationRule", matches the "ChrgBr" tag according to the XML hierarchy, directly asserting that "string() = 'CRED' and .. / pacs:ChrgsInf". If the value of the "ChrgBr" tag is "CRED", then the current "ChrgBr" tag must have a sibling tag "ChrgsInf".

[0073] Next, the Schematron validation rules are input into the XSLT processing module for the first XSLT transformation, converting the Schematron script into an XSLT file. The main components of the XSLT file generated based on the Schematron rules are conditional statements.<xsl:if test="not(not($interBankAmt=$instdAmt)and. / pacs:XchgRate)"> This statement is generated by the mapping in the assertion of the Schematron rule. It is a standard XPath expression that outputs "If the condition is not true, then..." <svrl:failed-assert>The content of the tag. Similarly, the second rule "[X00046]ChargeBearerAndChargesInformationRule" generates the main XSLT fragment as the conditional statement "not(string()='CRED'and.. / pacs:ChrgsInf)", which outputs "" if the condition is not true. <svrl:failed-assert>"The content within the tag."

[0074] The generated XSLT file and the XML service message to be verified are input into the XSLT processing module for a second XSLT transformation to generate XML semantics and output a result file. The result file is also an XML file. Taking the pacs.008 message in this embodiment as an example.

[0075] The results show that the input pacs.008 message fragment does not follow the two defined semantic rules. For the first rule, the transaction amount and the original remittance amount in the pacs.008 message are not in the same currency, and no exchange rate is defined. That is... <intrbksttlmamt>The tag's Ccy attribute value is "USD". <instdamt>The Ccy of the tag is "CHF". <xchgrate>The tag is commented out in the pacs.008 message, therefore the semantic validation of the rule "[X00049]InstructedAmountAndExchangeRate1Rule" fails. For the second rule, the cost bearer in the pacs.008 message is the payee, but no cost details are defined. <chrgbr>The value of the tag is "CRED", and <chrgsinf>The tag is commented out in the pacs.008 message, so semantic validation fails when the rule "[X00046]ChargeBearerAndChargesInformationRule" is applied.

[0076] The output file clearly shows whether the input XML business message follows the defined semantic rules, and gives the specific location where the XML does not meet the validation rules, which is convenient for locating and repairing.

[0077] like Figure 2 As shown in the figure, this invention discloses an ISO20022 message semantic verification system based on Schematron, the structure of which includes:

[0078] The message receiving module is used to receive business messages and Schematron verification rules, wherein the business messages are XML messages conforming to the ISO20022 standard;

[0079] The first conversion module is used to perform the first conversion through the XSLT Extensible Style Sheet Language Conversion Module, converting the Schematron validation rules into a rule style sheet based on the standard conversion style sheet.

[0080] The second conversion module is used to perform a second conversion on the rule style sheet through the XSLT extensible style sheet language conversion module.

[0081] The result output module is used to output a result file, which includes semantic verification results.

[0082] This system enables the execution of the aforementioned computational processing methods and the achievement of the corresponding technical effects.

[0083] This invention enables the sending and receiving of Swift CBRR+ standard messages in a Swift ISO simulation system. Before the deployment of Schematron semantic verification, only simple schema verification was supported, limiting verification to the message structure and syntax level. It could not verify message conformity to ISO semantics, causing messages that passed simulation tests to fail and be rejected in real Swift network environments due to semantic verification failures. The simulation system optimized using this invention maintains complete synchronization with the Swift network's verification rules, performing pre-verification before sending messages to the Swift network and providing correction suggestions. By advancing the semantic verification process, it avoids message rejections caused by verification failures during peer processing, thus improving the efficiency of outgoing message processing.

[0084] Embodiments of the present invention also provide a computer-readable storage medium capable of implementing all the steps of the methods in the above embodiments, wherein the computer-readable storage medium stores a computer program that, when executed by a processor, implements all the steps of the methods in the above embodiments.

[0085] Embodiments of the present invention also provide an electronic device for performing the above-described method, which, as an implementation apparatus for the method, has the following structure. Figure 3 As shown, the electronic device 300 includes a processor 301 and a memory 303. The processor 301 and the memory 303 are connected, for example, via a bus 302. Optionally, the electronic device 300 may also include a transceiver 304. It should be noted that in practical applications, the transceiver 304 is not limited to one. It is understood that the structure illustrated in the embodiments of the present invention does not constitute a specific limitation on the specific structure of the electronic device 300. In other embodiments of this application, the electronic device 300 may include more or fewer components than illustrated, or combine some components, or split some components, or arrange different components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware. Optionally, the electronic device may also include a display screen 305 for displaying images or receiving user operation commands when needed.

[0086] In this embodiment, processor 301 is used to implement the method shown in the above method embodiment. Transceiver 304 may include a receiver and a transmitter. Transceiver 304 is used in this embodiment to enable the electronic device of this embodiment to communicate with other devices during execution.

[0087] Processor 301 may be a CPU (Central Processing Unit), a general-purpose processor, a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It can implement or execute the various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this application. Processor 301 may also be a combination that implements computational functions, such as including one or more microprocessor combinations, a combination of a DSP and a microprocessor, etc.

[0088] Processor 301 may also include one or more processing units, such as an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural network processing unit (NPU). Different processing units may be independent devices or integrated into one or more processors. The controller may serve as the central nervous system and command center of the electronic device 300. The controller can generate operation control signals based on instruction opcodes and timing signals to control instruction fetching and execution. Processor 301 may also include a memory for storing instructions and data. In some embodiments, the memory in processor 301 is a cache memory. This memory can store instructions or data that processor 301 has just used or is recurring. If processor 301 needs to reuse an instruction or data, it can directly retrieve it from the memory. This avoids repeated access, reduces the waiting time of processor 301, and thus improves system efficiency.

[0089] The processor 301 can run the methods provided in the embodiments of this application. The processor 301 may include different devices. For example, when integrating a CPU and a GPU, the CPU and GPU can cooperate to execute the methods provided in the embodiments of this application. For example, some algorithms in the method are executed by the CPU, and other algorithms are executed by the GPU to obtain faster processing efficiency.

[0090] Bus 302 may include a pathway for transmitting information between the aforementioned components. Bus 302 may be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus, etc. Bus 302 can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 3 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.

[0091] The memory 303 may be ROM (Read Only Memory) or other types of static storage devices capable of storing static information and instructions, RAM (Random Access Memory) or other types of dynamic storage devices capable of storing information and instructions, or EEPROM (Electrically Erasable Programmable Read Only Memory), CD-ROM (Compact Disc Read Only Memory), or high-speed random access memory. It may also include non-volatile memory, such as at least one disk storage device, flash memory device, universal flash storage (UFS), or other optical disc storage, optical disk storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but not limited thereto.

[0092] Optionally, the memory 303 is used to store application code that executes the scheme of this application, and the execution is controlled by the processor 301. The processor 301 is used to execute the application code stored in the memory 303 to implement the method provided in any embodiment of this application.

[0093] The memory 303 can be used to store computer executable program code, which includes instructions. The processor 301 executes various functional applications and data processing of the electronic device 300 by running the instructions stored in the memory 303. The memory 303 may include a program storage area and a data storage area. The program storage area can store the operating system, application code, etc. The data storage area can store data created during the use of the electronic device 300 (such as images and videos captured by a camera application).

[0094] The memory 303 may also store one or more computer programs corresponding to the methods provided in the embodiments of this application. The one or more computer programs are stored in the memory 303 and configured to be executed by the one or more processors 301. The one or more computer programs include instructions that can be used to perform the various steps in the corresponding embodiments described above.

[0095] Of course, the code for the method provided in this application embodiment can also be stored in external memory. In this case, the processor 301 can run the code for the method stored in external memory through the external memory interface, and the processor 301 can control the execution flow.

[0096] The display screen 305 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a minimized LED, a microLED, a quantum dot light-emitting diode (QLED), etc. In some embodiments, the electronic device 300 may include one or N displays 305, where N is a positive integer greater than 1. The display screen 305 can be used to display information input by the user or information provided to the user, as well as various graphical user interfaces (GUIs). For example, the display screen 305 can display photos, videos, web pages, or documents.

[0097] The electronic device provided in this application is applicable to any of the above-described methods. Therefore, the beneficial effects it can achieve can be referred to the beneficial effects in the corresponding methods provided above, and will not be repeated here.

[0098] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0099] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A system that specifies functions in one or more boxes.

[0100] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including an instruction set implemented in a process. Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0101] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the functions specified in one or more boxes. Although preferred embodiments of the invention have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments as well as all changes and modifications falling within the scope of the invention.

[0102] The above description is merely a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.< / chrgsinf> < / chrgbr> < / xchgrate> < / instdamt> < / intrbksttlmamt>

Claims

1. A semantic verification method for ISO20022 messages based on Schematron, characterized in that, include: S1. Receive service messages and Schematron verification rules, wherein the service messages are XML messages conforming to the ISO20022 standard; S2. The first conversion is performed using the XSLT extensible stylesheet language conversion module, which converts the Schematron validation rules into rule stylesheets based on the standard conversion stylesheet. The rule stylesheets include semantic constraints on business messages. The rule stylesheets are XSLT stylesheet files, and the semantic constraint descriptions of the rule stylesheets and Schematron rule scripts are the same. S3. The rule style sheet is converted a second time using the XSLT Extensible Style Sheet Language Conversion module; S4. Output result file, the result file including semantic verification results; The second conversion of the rule style sheet using the XSLT extensible style sheet language conversion module includes: The XSLT extensible style sheet language conversion module reads the rule style sheet and applies it to the business message to be verified. After the rule style sheet is converted a second time using the XSLT extensible style sheet language conversion module, the process further includes: The rule style table includes tags to be matched and corresponding check conditions. It matches the XML tags of the business message and checks whether the matched tags meet the check conditions. The semantic verification results include: Determine whether the semantic validation passed; If the semantic validation fails, provide the location and reason for the semantic discrepancy.

2. The method as described in claim 1, characterized in that, The generation of the Schematron validation rules includes: Based on the business semantic constraints in the Schematron language specification, semantic rules for corresponding business messages are written to form Schematron rule scripts. The Schematron rule scripts are XML documents, and the tags and structure of the Schematron rule scripts follow the Schematron language specification. The Schematron rule scripts include Schematron validation rules.

3. A semantic verification system for ISO 20022 messages based on Schematron, characterized in that, include: The message receiving module is used to receive business messages and Schematron verification rules, wherein the business messages are XML messages conforming to the ISO20022 standard; The first conversion module is used to perform the first conversion through the XSLT extensible style sheet language conversion module, converting the Schematron validation rules into a rule style sheet based on the standard conversion style sheet; the rule style sheet includes semantic constraints on the business messages, the rule style sheet is an XSLT style sheet file, and the semantic constraint descriptions of the rule style sheet and the Schematron rule script are the same; The second conversion module is used to perform a second conversion on the rule style sheet through the XSLT extensible style sheet language conversion module. The result output module is used to output a result file, which includes semantic verification results. The second conversion module is also used by the XSLT extensible style sheet language conversion module to read the rule style sheet and apply the rule style sheet to the business message to be verified. The system also includes: The rule style table includes tags to be matched and corresponding check conditions. It matches the XML tags of the business message and checks whether the matched tags meet the check conditions. The semantic verification results include: Determine whether the semantic validation passed; If the semantic validation fails, provide the location and reason for the semantic discrepancy.

4. A computer-readable storage medium, characterized in that, The storage medium stores a computer program, which, when executed by a processor, implements the method of any one of claims 1 to 2.

5. An electronic device, characterized in that, Including processor and memory; The memory is used to store program instructions; The processor is configured to execute the method of any one of claims 1 to 2 by invoking program instructions.

6. A computer program product, comprising a computer program and / or instructions, characterized in that, When the computer program and / or instructions are executed by a processor, they implement the steps of the method according to any one of claims 1 to 2.

Citation Information

Patent Citations

  • Method and system used for verifying XML document

    CN101634982A

  • XML (extensive makeup language) file checking method and device

    CN102402556A