Schemaron-based ISO20022 message semantic verification method and system
Through the ISO20022 message semantic verification method based on Schematron, the problems of low development efficiency, poor cross-language compatibility and strong code coupling in the existing technology are solved, and efficient, flexible and cross-language compatibility semantic verification is achieved.
Patent Information
- Application Number
- CN202411784410.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-06
- Publication Date
- 2025-04-11
- Estimated Expiration
- 2044-12-06
AI Technical Summary
The prior art has problems such as low development efficiency, poor cross-language compatibility and strong code coupling in packet semantic verification under the ISO20022 specification, making it difficult to achieve flexible rule management and expansion.
The ISO20022 message semantic verification method based on Schematron is adopted. By writing Schematron rule scripts, development without hard coding is realized. Schematron's declarative and easy-to-scaling characteristics are used to reduce development costs and coupling, and cross-language compatible semantic verification is achieved.
Improve development efficiency and cross-language compatibility, reduce code coupling, and realize flexible rule management and expansion to adapt to changing business needs.
Smart Images

Figure CN119808761A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of semantic verification, and in particular to a Schematron-based ISO20022 message semantic verification method and system. Background Art
[0002] ISO 20022, developed by the International Organization for Standardization (ISO), is a standard for financial messaging. It aims to provide a unified framework for financial information exchange and communication. Since its release, it has been widely adopted in 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 (Swiss Banking Association) based on ISO 20022 and combined with practical experience. It is specific to cross-border payment reporting and will gradually replace the old MT messages through the CBPR+ standard messages.
[0004] XML (Extensible Markup Language) is a markup language widely used by computer programs to store and transmit data. Due to its structured and scalable features, it is used as a standard specification language in the financial field.
[0005] XML Schema is a constraint language that can define the structure and data types of XML documents and provide a constraint mechanism to ensure that XML documents follow specific structural patterns, such as element and attribute definitions, data type constraints, namespace support, and document structure validation. 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 operates at the semantic level, allowing for customized rules within specific business contexts. This language offers advantages such as declarativeness, ease of extensibility, support for complex query validation of XML documents, and high readability and ease of maintenance.
[0007] The Swift ISO 20022 standard upgrade is a global migration program for financial communication protocols designed to meet the increasingly complex demands of international financial transactions. It aims to improve the efficiency and transparency of cross-border payments and reduce friction in cross-border transactions. Based on the XML structured message format, the ISO 20022 standard provides a universal messaging solution for the financial industry, achieving unified standards across payment, securities, foreign exchange, and other financial sectors.
[0008] The ISO 20022 specification is a complete set of specifications that not only constrains the structure and data type of messages, but also constrains business rules through informal textual descriptions. The publication of the specification includes a set of XML structure descriptions, Schema files, and a number of business constraints described in text. Schema files can check and constrain the syntax of XML messages, but they cannot check the business semantic constraints described in textual form. Currently, semantic layer constraints can only be verified by parsing XML messages through applications and writing judgment statements one by one. There is a lack of a universal, cross-platform ISO20022 XML message semantic verification method. Currently, there are several problems:
[0009] 1. Low business verification development efficiency: The ISO20022 specification contains numerous messages, and each message has numerous and complex business rules. This requires writing 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 verification through applications can only be applied to specific language environments. It has strong platform coupling and cannot achieve cross-language universality. For example, verification implemented in the Java language environment requires rewriting the verification logic in the Python language environment.
[0011] 3. Coupling and maintainability issues: As specifications continue to expand, validation rules need to be constantly updated and modified. The hard-coded approach requires synchronous modification of application code logic to ensure synchronization of business rules. The code is highly coupled, making it impossible to achieve flexible rule management and expansion, and difficult to adapt to changing business needs. Summary of the Invention
[0012] To address the deficiencies of the prior art, the present invention provides a Schematron-based ISO20022 message semantic verification method. Schematron rule scripts are compiled for specific business messages to achieve development without hard-coded configurations. Schematron's declarative nature, concise syntax, and good maintainability are leveraged to reduce development costs and improve development efficiency. The language-platform-independent rule scripts achieve versatility and reusability in the verification method, reduce coupling with specific applications, and implement cross-language compatible semantic verification. In terms of rule management and maintenance, Schematron scripts offer excellent scalability, facilitate updating and maintenance, and improve the rapid response of application development to changes in business rules.
[0013] To achieve the above objectives, the technical solutions adopted by the present invention include:
[0014] A Schematron-based ISO20022 message semantic verification method, comprising:
[0015] S1 receives business messages and Schematron verification rules, the business message is in accordance with the ISO20022 specification XML message;
[0016] S2 is converted by the XSLT extensible stylesheet language transformation module for the first time, based on the standard conversion style sheet to convert the Schematron validation rules into a rule style sheet;
[0017] S3. The rule style sheet is converted a second time by the XSLT extensible stylesheet language transformation module;
[0018] S4. Output a result file, which includes a semantic verification result.
[0019] Furthermore, the generation of the Schematron verification rules includes:
[0020] The semantic rules of the corresponding business message are written based on the business semantic constraints in the Schematron language specification to form a Schematron rule script. The Schematron rule script is an XML document. The tags and structure of the Schematron rule script comply with the Schematron language specification. The Schematron rule script includes Schematron verification rules.
[0021] Furthermore, the rule style sheet includes semantic constraints on the service message. The rule style sheet is an XSLT style sheet file. The semantic constraint description of the rule style sheet and the Schematron rule script is the same.
[0022] Furthermore, the second conversion of the rule style sheet through the XSLT extensible style sheet language conversion module includes:
[0023] The XSLT extensible stylesheet language conversion module reads the rule stylesheet and applies the rule stylesheet to the service message to be verified.
[0024] Furthermore, after the rule style sheet is converted for the second time by the XSLT extensible style sheet language conversion module, the method further includes:
[0025] The rule style sheet includes tags to be matched and corresponding checking conditions, matches the XML tags of the service message and checks whether the matched tags meet the checking conditions.
[0026] Furthermore, the semantic verification result includes:
[0027] Determine whether the semantic verification passes;
[0028] If the semantic check fails, the location and reason why the semantics are not met are given.
[0029] The present invention also relates to a Schematron-based ISO20022 message semantic verification system, which is characterized by comprising:
[0030] A message receiving module is used to receive business messages and Schematron verification rules. The business messages are XML messages that comply with the ISO20022 specification.
[0031] A first conversion module, configured to perform a first conversion by using an XSLT extensible stylesheet language conversion module, converting the Schematron validation rules into a rule stylesheet based on a standard conversion stylesheet;
[0032] A second conversion module is used to convert the rule style sheet for the second time through an XSLT extensible style sheet language conversion module;
[0033] The result output module is used to output a result file, wherein the result file includes a semantic verification result.
[0034] The present invention also relates to a computer-readable storage medium, characterized in that a computer program is stored on the storage medium, and the computer program implements the above method when executed by a processor.
[0035] The present invention also relates to an electronic device, characterized in that it comprises a processor and a memory;
[0036] The memory is used to store program instructions;
[0037] The processor is used to execute the above method by calling program instructions.
[0038] The present invention also relates to a computer program product, comprising a computer program and / or instructions, characterized in that the computer program and / or instructions implement the steps of the above method when executed by a processor.
[0039] The beneficial effects of the present invention are:
[0040] The present invention proposes a universal ISO20022 message semantic verification method based on Schematron technology. Targeting specific business messages, a Schematron rule script is written. The script is a language-independent XML. Based on Schematron technology, cross-language, universal XML semantic verification is implemented. The method is applicable to different programming languages and platforms. The rule script, which is independent of the language platform, can achieve universality and reusability of the verification method, reduce coupling with specific applications, and implement cross-language compatible semantic verification. Utilizing Schematron's declarative, concise syntax, and strong maintainability, the method achieves configuration-based development without hard programming, thereby reducing development costs and improving development efficiency. When the specification is modified or updated, only the Schematron verification rules need to be modified, without modifying the code logic, resulting in strong maintainability. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for describing the embodiments of the present application.
[0042] Figure 1 This is a flow chart of a Schematron-based ISO20022 message semantic verification method of the present invention;
[0043] Figure 2 This is a schematic diagram of the structure of an ISO20022 message semantic verification system based on Schematron in the present invention;
[0044] Figure 3 The figure is a schematic structural diagram of an electronic device of the present invention. DETAILED DESCRIPTION
[0045] In order to make the purpose, technical solutions and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below in conjunction with the specific embodiments of this application and the corresponding drawings. It should be understood that the described embodiments are only part of the embodiments of this application, not all of the embodiments, and these embodiments are only used to illustrate this application and are not used to limit the scope of this application. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application.
[0046] like Figure 1 As shown, the embodiment of the present invention discloses a Schematron-based ISO20022 message semantic verification method, the steps of which include:
[0047] Step S1: Receive a business message and Schematron verification rules, wherein the business message is an XML message that complies with the ISO20022 specification.
[0048] In this embodiment, the generation of Schematron validation rules includes:
[0049] The semantic rules of the corresponding business message are written based on the business semantic constraints in the Schematron language specification to form a Schematron rule script. The Schematron rule script is an XML document. The tags and structure of the Schematron rule script comply with the Schematron language specification. The Schematron rule script includes Schematron verification rules.
[0050] In this embodiment, the suffix of the Schematron rule script file is sch, which is essentially an XML file, but the tags and structures in the script file comply with the Schematron language specification.
[0051] Step S2: Performing a first conversion through an XSLT extensible stylesheet language conversion module, converting the Schematron validation rules into a rule stylesheet based on a standard conversion stylesheet.
[0052] In this embodiment, the rule style sheet includes semantic constraints on the service message. The rule style sheet is an XSLT style sheet file. The semantic constraint description of the rule style sheet and the Schematron rule script is the same.
[0053] The XSLT processing module reads Schematron_basic.xsl and converts the Schematron rule script into a rule stylesheet. XSLT, short for Extensible Stylesheet Language Transformation, is 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 transformations, such as the java.xml.transform included with the JDK, which can implement XSLT transformations. The Schematron_basic.xsl in this step is a standard transformation stylesheet provided by the organization that proposed the Schematron language and can be obtained from the Schematron official website.
[0054] This step generates a converted rule stylesheet that contains semantic constraints on the XML service message, such as constraints on specific tag values. This stylesheet describes the same semantic constraints as the Schematron rule script, but is essentially an XSLT stylesheet file with the .xsl extension, which can be read and processed by the XSLT processing module.
[0055] Step S3: The rule style sheet is converted for the second time through an XSLT extensible style sheet language conversion module.
[0056] In this embodiment, the XSLT extensible stylesheet language conversion module reads the rule stylesheet and applies the rule stylesheet to the business message to be verified; the rule stylesheet includes the tags to be matched and the corresponding check conditions, 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 the style sheet file 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 of the XML message and checks whether the matched tags meet the check conditions. The check results are output to the result file.
[0058] Step S4: Output a result file, which includes a semantic verification result.
[0059] View the result file to determine whether the XML semantic verification passes. For XML messages that do not meet the semantic specifications, the result file also indicates the specific location and reason for the non-compliance.
[0060] This paper uses the most basic PACS.008 message in the ISO20022 specification as an example to explain the above Schematron-based semantic verification method. A complete ISO standard includes specifications and corresponding semantic constraints. The following is an example of a PACS.008 message:
[0061]
[0062] The above message fragment describes the remittance business scenario from the payer to the payee. The business meanings of each tag are shown in Table 1:
[0063] Table 1
[0064]
[0065]
[0066] ISO20022 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] ISO20022 includes business semantic constraints based on textual descriptions at the semantic layer. Schema validation can only implement syntax validation, not semantic validation. Therefore, these business semantic constraints based on textual descriptions cannot be implemented using traditional schema validation. This embodiment uses the Schematron language and writes the corresponding Schematron script according to the semantic rules of textual descriptions.
[0070] In the Schematron script, define two rules corresponding to the two business semantic constraints in the specification.
[0071] The first rule "[X00049]InstructedAmountAndExchangeRate1Rule" matches the "CdtTrfTxInf" tag according to the XML hierarchical structure, and obtains the "Ccy" (currency) attributes of the subtags "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 hierarchical structure and directly asserts "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] Then, 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 fragment of the XSLT file generated based on the Schematron rules is the conditional statement.<xsl:if test="not(not($interBankAmt=$instdAmt)and. / pacs:XchgRate)"> ", this statement is generated by mapping in the assertion of Schematron rules and is a standard XPath expression. If the condition is not met, the output is" <svrl:failed-assert>" tag content. Similarly, the second rule "[X00046] ChargeBearerAndChargesInformationRule" generates the XSLT main fragment of the conditional statement "not(string()='CRED'and.. / pacs:ChrgsInf)". If the condition is not met, the output is " <svrl:failed-assert>"The content of the tag.
[0074] The generated XSLT file and the XML business message to be verified are input into the XSLT processing module for a second XSLT conversion to generate XML semantics and output a result file, which is also an XML file. Take 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 in the pacs.008 message and the original remittance amount are not in the same currency, and there is no defined exchange rate. <intrbksttlmamt>The Ccy attribute value of the tag is "USD", <instdamt>The Ccy of the label is "CHF", <xchgrate>The tag is annotated in the PACS.008 message, so the semantic verification of the "[X00049]InstructedAmountAndExchangeRate1Rule" rule fails. For the second rule, the fee bearer of the PACS.008 message is the payee, but the fee details are not defined. <chrgbr>The value of the tag is "CRED", and <chrgsinf>The label is annotated in the PACS.008 message, so semantic verification fails when applying the "[X00046] ChargeBearerAndChargesInformationRule" rule.
[0076] The output result file clearly shows whether the input XML business message complies with the defined semantic rules, and gives the specific location where the XML does not meet the verification rules, which is convenient for positioning and repair.
[0077] like Figure 2 As shown, the embodiment of the present invention discloses a Schematron-based ISO20022 message semantic verification system, the structure of which includes:
[0078] A message receiving module is used to receive business messages and Schematron verification rules. The business messages are XML messages that comply with the ISO20022 specification.
[0079] A first conversion module, configured to perform a first conversion by using an XSLT extensible stylesheet language conversion module, converting the Schematron validation rules into a rule stylesheet based on a standard conversion stylesheet;
[0080] A second conversion module is used to convert the rule style sheet for the second time through an XSLT extensible style sheet language conversion module;
[0081] The result output module is used to output a result file, wherein the result file includes a semantic verification result.
[0082] Through this system, the above-mentioned calculation and processing method can be executed and the corresponding technical effects can be achieved.
[0083] The present invention can be used in the Swift ISO simulation system to send and receive Swift CBRR+ standard messages. Before the Schematron semantic verification function was deployed, only simple Schema verification was supported, which could only verify the structure and syntax of the message, and could not verify whether the message conformed to ISO semantics. As a result, messages that passed the simulation test would fail the semantic verification and be rejected in the actual Swift network environment. The simulation system optimized using the method of the present invention can fully synchronize with the Swift network on verification rules, verify the message in advance before sending it to the Swift network, and provide repair suggestions. This puts the semantic verification process in front, avoids the return of remittances due to verification failures in the counterparty processing link, and improves the efficiency of remittance processing.
[0084] An embodiment of the present invention also provides a computer-readable storage medium capable of implementing all steps of the method in the above embodiment. The computer-readable storage medium stores a computer program that implements all steps of the method in the above embodiment when executed by a processor.
[0085] The embodiment of the present invention further provides an electronic device for executing the above method, as an implementation device of the method, whose structure is as follows: 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, such as through a bus 302. Optionally, the electronic device 300 may further include a transceiver 304. It should be noted that in actual applications, the transceiver 304 is not limited to one. It is understandable that the structure illustrated in the embodiment of the present invention does not constitute a specific limitation on the specific structure of the electronic device 300. In other embodiments of the present application, the electronic device 300 may include more or fewer components than shown in the figure, or combine certain components, or split certain components, or arrange the components differently. The illustrated components may be implemented in hardware, software, or a combination of software and hardware. Optionally, the electronic device may further include a display screen 305 for displaying images, or receiving user operation instructions when necessary.
[0086] The processor 301 is used in the embodiment of the present application to implement the method shown in the above method embodiment. The transceiver 304 may include a receiver and a transmitter. The transceiver 304 is used in the embodiment of the present application to implement the function of the electronic device of the embodiment of the present application communicating with other devices when executed.
[0087] The 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 may implement or execute the various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this application. The processor 301 may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and the like.
[0088] The processor 301 may also include one or more processing units. For example, the processor 301 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural network processing unit (NPU). The different processing units may be independent devices or integrated into one or more processors. The controller may serve as the nerve center and command center of the electronic device 300. The controller may generate operation control signals based on instruction opcodes and timing signals to control instruction fetching and execution. The processor 301 may also include memory for storing instructions and data. In some embodiments, the memory in the processor 301 is a high-speed cache memory. This memory can store instructions or data that have just been used or are being recycled by the processor 301. If the processor 301 needs to use the instruction or data again, it can directly retrieve it from the memory. This avoids duplicate accesses, reduces the processor 301's waiting time, and thus improves system efficiency.
[0089] The processor 301 can execute the method provided in the embodiments of the present application. The processor 301 can include different devices. For example, when the processor 301 integrates a CPU and a GPU, the CPU and the GPU can cooperate to execute the method provided in the embodiments of the present application. For example, part of the algorithm in the method is executed by the CPU, and another part of the algorithm is executed by the GPU to achieve faster processing efficiency.
[0090] The bus 302 may include a path for transmitting information between the above components. The bus 302 may be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus. The bus 302 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 3 Only one thick line is used in the diagram, but this does not mean that there is only one bus or one type of bus.
[0091] The memory 303 may be a ROM (Read Only Memory) or other types of static storage devices that can store static information and instructions, a RAM (Random Access Memory) or other types of dynamic storage devices that can store information and instructions, an EEPROM (Electrically Erasable Programmable Read Only Memory), a CD-ROM (Compact Disc Read Only Memory), or may include a high-speed random access memory. It may also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, a universal flash storage (UFS), or other optical disk storage, optical disk storage (including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto.
[0092] Optionally, the memory 303 is used to store application code for executing the solution of the present 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 the present 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. Among them, the program storage area can store the code of the operating system and application programs, etc. The data storage area can store data created during the use of the electronic device 300 (such as images and videos collected by the camera application, etc.).
[0094] The memory 303 may also store one or more computer programs corresponding to the methods provided in the embodiments of the present 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 above-mentioned corresponding embodiments.
[0095] Of course, the code of the method provided in the embodiment of the present application can also be stored in an external memory. In this case, the processor 301 can run the code of the method stored in the external memory through the external memory interface, and the processor 301 can control the running process.
[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 or an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a MiniLED, a MicroLED, a Micro-oLed, a quantum dot light-emitting diode (QLED), or the like. In some embodiments, the electronic device 300 may include one or N display screens 305, where N is a positive integer greater than 1. The display screen 305 can be used to display information input by a user or information provided to a user, as well as various graphical user interfaces (GUIs). For example, the display screen 305 can display photos, videos, web pages, or files.
[0097] The electronic device provided in the embodiment of the present application is applicable to any embodiment of the above method. Therefore, the beneficial effects that can be achieved can refer to the beneficial effects of the corresponding method provided above, and will not be repeated here.
[0098] It will be understood by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Thus, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0099] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts 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, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A system that specifies the functions of a box or boxes.
[0100] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including an instruction system that is implemented in the process. Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0101] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 The present invention is described in detail below. ...
[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 changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present invention are intended to be covered by the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be based on the scope of protection of the claims.< / chrgsinf> < / chrgbr> < / xchgrate> < / instdamt> < / intrbksttlmamt>
Claims
1. A Schematron-based ISO20022 message semantic verification method, characterized in that: include: S1. Receive business messages and Schematron verification rules, where the business messages are XML messages that comply with ISO20022 specifications; S2. The first conversion is performed by the XSLT extensible stylesheet language conversion module, based on the standard conversion stylesheet, the Schematron validation rules are converted into a rule stylesheet; S3. The rule style sheet is converted a second time by the XSLT extensible style sheet language conversion module; S4. Output a result file, wherein the result file includes a semantic verification result.
2. The method according to 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 of corresponding business messages are written to form a Schematron rule script, which is an XML document. The tags and structure of the Schematron rule script comply with the Schematron language specification, and the Schematron rule script includes Schematron verification rules.
3. The method according to claim 1, characterized in that The rule style sheet includes semantic constraints on the service message. The rule style sheet is an XSLT style sheet file. The semantic constraint description of the rule style sheet and the Schematron rule script is the same.
4. The method according to claim 1, characterized in that The second conversion of the rule style sheet through an XSLT extensible style sheet language conversion module includes: The XSLT extensible stylesheet language conversion module reads the rule stylesheet and applies the rule stylesheet to the service message to be checked.
5. The method according to claim 4, characterized in that After the rule style sheet is converted for the second time by the XSLT extensible style sheet language conversion module, the method further includes: The rule style sheet includes tags to be matched and corresponding check conditions, matches the XML tags of the service message and checks whether the matched tags meet the check conditions.
6. The method according to claim 1, characterized in that The semantic verification results include: Determine whether the semantic verification passes; If the semantic check fails, the location and reason why the semantics are not met are given.
7. A Schematron-based ISO20022 message semantic verification system, characterized in that: include: A message receiving module, used to receive a business message and Schematron verification rules, wherein the business message is an XML message that complies with the ISO20022 specification; A first conversion module, configured to perform a first conversion through an XSLT extensible stylesheet language conversion module, and convert the Schematron validation rules into a rule stylesheet based on a standard conversion stylesheet; A second conversion module, used for performing a second conversion on the rule style sheet through an XSLT extensible style sheet language conversion module; The result output module is used to output a result file, wherein the result file includes a semantic verification result.
8. A computer-readable storage medium, characterized in that: The storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.
9. An electronic device, characterized in that: including a processor and a memory; The memory is used to store program instructions; The processor is configured to execute the method according to any one of claims 1 to 6 by calling program instructions.
10. A computer program product comprising a computer program and / or instructions, characterized in that: When the computer program and / or the instructions are executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.
Citation Information
Patent Citations
Method and system used for verifying XML document
CN101634982A
XML (extensive makeup language) file checking method and device
CN102402556A
Method and device for processing extensible markup language file
CN117251170A
Framework of validating dicom structured reporting documents using XSLT technology
US20050246629A1
Extensible constraint markup language
US20050262115A1