Low-code platform real-time error checking method, device, equipment and storage medium

By employing priority queue scheduling and a hierarchical checker architecture, the problems of delayed error detection and difficulty in error localization in low-code platforms are solved, enabling real-time error checking and accurate error localization, thereby improving response speed and accuracy.

CN122364047APending Publication Date: 2026-07-10XIAN GRAPE CITY SOFTWARE CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
XIAN GRAPE CITY SOFTWARE CO LTD
Filing Date
2026-06-10
Publication Date
2026-07-10

AI Technical Summary

Technical Problem

Existing error detection methods in low-code platforms suffer from problems such as delayed error discovery, difficulty in locating errors, and untimely feedback. They cannot achieve real-time detection and global analysis, and they cannot detect complex type errors and reference errors.

Method used

It adopts a priority queue scheduling and hierarchical checker architecture, determines document priority by acquiring document editing attributes in real time, generates document queues with different priorities, uses the AST visitor pattern for expression validation, and combines the publish-subscribe pattern to manage error status, thereby realizing fine-grained incremental checks and character-level error location.

Benefits of technology

It implements real-time error checking for low-code platforms, improving response speed several times over, pinpointing errors to the character level, supporting the validation of complex expressions, reducing redundant checks, and improving checking accuracy and response speed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122364047A_ABST
    Figure CN122364047A_ABST
Patent Text Reader

Abstract

This application discloses a method, apparatus, device, and storage medium for real-time error checking on a low-code platform. The method acquires document editing attributes on the low-code platform in real time and determines document priority based on these attributes. It then performs deduplication on event documents of different priorities using an enqueue deduplication mechanism to generate document queues of different levels. Following the dequeue order of the document queues, it prioritizes checking the area the user is currently editing and documents that directly reference that editing area, ensuring that the user's focus is addressed first. Only affected resources are checked, allowing for rapid feedback even in large projects. Error checking can be completed without manual user intervention, effectively improving error checking efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of software error detection technology, and in particular to a method, apparatus, device and storage medium for real-time error checking on a low-code platform. Background Technology

[0002] Low-code platforms are development platforms that enable rapid application building through visual drag-and-drop, parameterized configuration, and minimal code extension. Their core philosophy is to lower the development threshold and improve delivery efficiency, making them suitable for enterprise-level business process management, data visualization, and mobile applications. As enterprises increasingly demand agile development and real-time business responsiveness, error checking functionality in low-code platforms has become a crucial supporting technology. Current low-code platform error detection primarily employs three methods: runtime error detection, manually triggered validation, and simple form-level validation. Runtime error detection refers to error detection performed only when the application is released or running. This method can only detect errors when the code is actually executed, resulting in delayed error detection. In addition, runtime error stack information is difficult to link directly to specific configuration locations in the designer, making error localization difficult. Manually triggered validation requires users to manually click to trigger error checks, which is prone to omissions. Moreover, this check method usually requires a full scan, which is time-consuming and cannot provide real-time feedback. Form-level validation only performs basic validation on form fields (such as required fields and format validation), and cannot detect complex type errors, reference errors, and expression syntax errors. In addition, each form in form-level validation is validated independently, which cannot detect cross-form issues and cannot achieve global analysis such as "unused variables". Summary of the Invention

[0003] This application provides a real-time error checking method, apparatus, device, and storage medium for a low-code platform, solving the problems of delayed error detection, difficulty in error location, and untimely feedback in the prior art. It achieves hierarchical processing of documents with different events, prioritizes checking the area being edited by the user and documents that directly reference the editing area, ensuring that the parts that the user cares about receive feedback first, and then only re-checks the affected resources (indirect and direct references), without the need for a full check, thus improving the response speed several times. It provides dedicated checkers for different resource types (page elements, logical nodes, data entities) to achieve fine-grained checking and improve the accuracy of the check.

[0004] In a first aspect, embodiments of this application provide a real-time error checking method for a low-code platform, including: The document editing attributes on the low-code platform are obtained in real time, and the document priority is determined based on the document editing attributes. The event documents with different priorities are deduplicated according to the enqueue deduplication mechanism to generate document queues with different priorities. Determine the code type of each dequeued event document according to the dequeue order of each priority document queue; Based on the code type, the corresponding error checker is invoked to perform the first-level error check on the dequeued event document and obtain the first-level error check information. The expression validation engine is invoked, and the expressions in the dequeued event documents are subjected to a second layer of error checking through the AST visitor pattern. When an error code is found in the expression, the error code is located and its position information is determined. The position information is used as the second error checking information.

[0005] In conjunction with the first aspect, in one possible implementation, determining document priority based on the document editing attributes includes: When the document editing attribute is "editing", the corresponding event document is identified as the document being edited, and the document priority of the document being edited is set to high priority; Query the reference relationship graph of the document being edited, identify the event documents that directly reference the document being edited as direct reference documents, and set the document priority of the direct reference documents to high priority; The event document that indirectly references the document being edited is identified as the indirectly referenced document, and the document priority of the indirectly referenced document is determined to be medium priority; Event documents that are not directly or indirectly referenced in the project are identified as non-referenced documents, and the document priority of the non-referenced documents is set to low priority.

[0006] In conjunction with the first aspect, in one possible implementation, the step of deduplicating event documents of different priorities according to the enqueue deduplication mechanism to generate document queues of different priorities includes: The document priority of all event documents is traversed, and event documents with different priorities are deduplicated according to the enqueue deduplication mechanism to generate document queues of different priorities; the enqueue deduplication mechanism includes: When a document has a high priority, the corresponding high-priority event document will be directly enqueued into the high-priority queue. When the document priority is medium priority, check whether the corresponding medium priority event document exists in the high priority queue. If the medium priority event document exists in the high priority queue, ignore the enqueue operation of the medium priority event document; if the medium priority event document does not exist in the high priority queue, enqueue the medium priority event document into the medium priority queue. When the document priority is low, check whether the corresponding low-priority event document exists in the high-priority queue or the medium-priority queue. If the low-priority event document exists in the high-priority queue or the medium-priority queue, ignore the enqueue operation of the low-priority event document. If the low-priority event document does not exist in the high-priority queue or the medium-priority queue, enqueue the low-priority event document to the low-priority queue.

[0007] In conjunction with the first aspect, in one possible implementation, before adding event documents with different document priorities to the corresponding priority queues, the low-code platform real-time error checking method further includes: Check if there are corresponding document queues for different document priorities; If it exists, check if there is a duplicate event document in the original document queue. If it exists, ignore the enqueue operation of the event document. If it does not exist, add the event documents of each document priority to the corresponding level document queue according to the enqueue deduplication mechanism, delete the duplicate event documents in other document queues, and update the document queue. If it does not exist, then according to the queuing and deduplication mechanism, document queues of different levels are generated directly based on the event documents of each document priority.

[0008] In conjunction with the first aspect, in one possible implementation, the error checker includes a logical node error checker, a page element error checker, a data entity error checker, and a custom type error checker; The location information includes the starting row number, starting column number, ending row number, and ending column number of the expression.

[0009] In conjunction with the first aspect, in one possible implementation, after obtaining the error checking information, the low-code platform real-time error checking method further includes: The error checking information is stored, and when the error checking information changes, the resource ID corresponding to the error checking information is obtained. The user interface components that have subscribed to the resource ID based on the resource ID are updated according to the changed event document.

[0010] In conjunction with the first aspect, in one possible implementation, the low-code platform real-time error checking method further includes: After the error checking of the event document is completed, update the error list and count the error checking time; If the error checking time does not exceed the preset time slice, the process continues to execute the steps of obtaining the document editing attributes on the low-code platform in real time and determining the document priority based on the document editing attributes. If the error checking time exceeds the preset time slice, the error checking is paused and the main thread is yielded by the task scheduler, waiting for the user interface to be updated; Once the user interface is updated, the process continues to retrieve document editing attributes from the low-code platform in real time and determine document priority based on those attributes.

[0011] Secondly, embodiments of this application provide a real-time error checking device for a low-code platform, comprising: The document priority determination module is used to obtain document editing attributes on the low-code platform in real time and determine the document priority based on the document editing attributes; The document queue generation module is used to deduplicat event documents of different priorities according to the enqueue deduplication mechanism, and generate document queues of different priorities. The code type determination module is used to determine the code type of each dequeued event document according to the dequeue order of each priority document queue. The first error checking module is used to call the corresponding error checker according to the code type to perform the first error check on the dequeued event document and obtain the first error check information. The second error checking module is used to call the expression validation engine and perform a second layer of error checking on the expressions in the dequeued event documents through the AST visitor pattern. When it is determined that there is an error code in the expression, the error code is located and the location information is determined, and the location information is used as the second error checking information.

[0012] Thirdly, embodiments of this application provide an apparatus comprising: a processor; a memory for storing processor-executable instructions; wherein, when the processor executes the executable instructions, it implements the method as described in the first aspect or any possible implementation of the first aspect.

[0013] Fourthly, embodiments of this application provide a non-volatile computer-readable storage medium, the non-volatile computer-readable storage medium including storage for storing a computer program or instructions that, when executed, cause the method described in the first aspect or any possible implementation of the first aspect to be implemented.

[0014] One or more technical solutions provided in the embodiments of this application have at least the following technical effects or advantages: This application's embodiments utilize priority queue scheduling to ensure that the current editing area is detected first. Event documents that directly or indirectly reference the editing area are processed hierarchically to avoid duplicate checks. Only affected resources are re-checked, eliminating the need for a full check, thus improving response speed several times over. A layered checker architecture is then employed, with dedicated checkers for different resource types (page elements, logical nodes, data entities) to achieve fine-grained incremental checks. An AST-based expression validation engine performs type checking and syntax analysis, enabling complete type inference and type compatibility checks. It supports the validation of complex expressions such as function calls, member access, and operators, with error location accurate to the character level. Error state management is based on a publish-subscribe pattern, eliminating the need for a separate background process. The checking logic runs directly on the front-end main thread, and task scheduling ensures the responsiveness of the user interface. Attached Figure Description

[0015] To more clearly illustrate the technical solutions of the embodiments of this application, the drawings used in the description of the embodiments of this application or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0016] Figure 1 A flowchart illustrating a real-time error checking method for a low-code platform provided in this application embodiment; Figure 2 This is a schematic diagram of the structure of a real-time error checking device for a low-code platform provided in an embodiment of this application. Detailed Implementation

[0017] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.

[0018] The following description of some technologies involved in the embodiments of this application is provided to aid understanding and should be considered merely exemplary. Therefore, those skilled in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this application. Similarly, for clarity and brevity, some descriptions of well-known functions and structures are omitted in the following description.

[0019] Figure 1 This is a flowchart of a real-time error checking method for a low-code platform provided in this application embodiment, including steps S10 to S30. Figure 1 This is merely one execution order shown in the embodiments of this application and does not represent the only execution order of the real-time error checking method for low-code platforms. Where the final result can be achieved, Figure 1 The steps shown can be performed in parallel or in reverse order.

[0020] S10: Obtain document editing attributes on the low-code platform in real time and determine document priority based on the document editing attributes.

[0021] Specifically, when a user is detected performing a document editing operation, the corresponding document editing attribute is determined to be "editing in progress," the corresponding event document is determined to be "editing document," and the document priority of the "editing document" is set to high priority. The reference relationship graph of the "editing document" is queried, and event documents that directly reference the "editing document" are determined to be "direct reference documents," and their document priority is set to high priority. Event documents that indirectly reference the "editing document" are determined to be "indirect reference documents," and their document priority is set to medium priority. Event documents that do not directly or indirectly reference the "editing document" in the project are determined to be "non-reference documents," and their document priority is set to low priority.

[0022] Understandably, a document that directly references another document has a document editing property that is a direct reference, while a document that indirectly references another document has a document editing property that is an indirect reference.

[0023] Table 1 shows the triggering scenarios and situations corresponding to different document priorities in this embodiment.

[0024] Table 1

[0025] The document editing operations in this embodiment include, but are not limited to, editing the current document, modifying variable / type definitions, deleting resources, opening a new document, and project loading completion. The specific inspection scope and priority allocation for the different document editing operations are shown in Table 2.

[0026] Table 2

[0027] S20: Perform deduplication on event documents of different priorities according to the enqueue deduplication mechanism to generate document queues of different priorities.

[0028] Specifically, the document priority of all event documents is traversed, and event documents with different priorities are deduplicated according to the enqueue deduplication mechanism to generate document queues of different priorities; the enqueue deduplication mechanism includes: When a document has a high priority, the corresponding high-priority event document is directly enqueued into the high-priority queue. When a document has a medium priority, it is checked whether the corresponding medium-priority event document exists in the high-priority queue. If the medium-priority event document exists in the high-priority queue, the enqueue operation for the medium-priority event document is ignored. If the medium-priority event document does not exist in the high-priority queue, it is enqueued into the medium-priority queue. When a document has a low priority, it is checked whether the corresponding low-priority event document exists in the high-priority queue or the medium-priority queue. If the low-priority event document exists in the high-priority queue or the medium-priority queue, the enqueue operation for the low-priority event document is ignored. If the low-priority event document does not exist in either the high-priority queue or the medium-priority queue, it is enqueued into the low-priority queue.

[0029] Furthermore, before adding event documents with different document priorities to the corresponding priority queues, a low-code platform real-time error checking method also includes: Check if there are corresponding document queues for different document priorities; if so, check if there are identical event documents in the original document queue. If so, ignore the enqueue operation for the event documents; if not, add the event documents of each document priority to the corresponding level of the document queue according to the enqueue deduplication mechanism and update the document queue; if not, directly generate document queues of different levels based on the event documents of each document priority according to the enqueue deduplication mechanism.

[0030] For ease of understanding, step S20 of this embodiment is summarized as follows based on the above content: For high-priority event documents: check if the event document already exists in the high-priority queue. If it exists, ignore the enqueue operation; if it does not exist, enqueue the high-priority event document into the high-priority queue, and traverse the medium-priority queue and low-priority queue to delete all tasks that are identical to the event document. For medium-priority event documents: check whether the event document already exists in the high-priority queue and the medium-priority queue in turn. If it exists in either queue, ignore the enqueue operation for the event document; if it does not exist in either queue, enqueue the event document into the medium-priority queue, and traverse the low-priority queue to delete all tasks that are the same as the event document. For low-priority event documents: check in turn whether the event document already exists in the high-priority queue, medium-priority queue, and low-priority queue. If it exists in any of the queues, ignore the enqueue operation; if it does not exist in any of them, enqueue the low-priority event document into the low-priority queue.

[0031] If there are four event documents A, B, C, and D, where event document A is the document being edited, event document B directly references event document A, event document C directly references event document B (i.e., event document C indirectly references event document A), and event document D has no referencing relationship with event document A. Event document A and event document B have high priority. First, check if the event document already exists in the high priority queue. If it exists, ignore the enqueue operation. If it does not exist, enqueue it directly into the high priority queue. Then, iterate through the medium priority queue and the low priority queue, deleting all tasks identical to the event document. Event document C has medium priority. Before enqueuing event document C into the medium priority queue, check if event document C exists in the high priority queue and the medium priority queue. If event document C exists in either the high priority queue or the medium priority queue, ignore the enqueue operation and do not enqueue event document C into the medium priority queue. Event document D has low priority. Before enqueuing event document D into the low priority queue, check if event document D exists in the high priority queue, the medium priority queue, and the low priority queue. If it does not exist in any of them, enqueue event document D into the low priority document queue.

[0032] Furthermore, if the high-priority queue is not checked before event document C is enqueued into the medium-priority queue, event document C will be repeatedly enqueued into both the high-priority and medium-priority queues, resulting in multiple checks and wasting check resources.

[0033] By deduplicating event documents, we can avoid the same document being checked multiple times, thus preventing wasted checking resources and improving checking efficiency.

[0034] S30: Determine the code type of each dequeued event document according to the dequeue order of each priority document queue.

[0035] The code types in this embodiment include, but are not limited to, logical nodes, page elements, and data entities.

[0036] S40: Based on the code type, call the corresponding error checker to perform the first-level error check on the dequeued event document and obtain the first-level error check information.

[0037] Specifically, the error checker in this embodiment includes a logical node error checker, a page element error checker, a data entity error checker, and a custom type error checker. Among them, the logical node error checker includes a logical error checker and a logical node checker.

[0038] As shown in Table 3, the error checker's types, scope, and main checks include: Table 3

[0039] As shown in Table 4, the error item data structure in this embodiment mainly includes: Table 4

[0040] S50: Call the expression validation engine and perform a second layer of error checking on the expressions in the event document dequeued through the AST (Abstract Syntax Tree) visitor pattern. If an error code is found in the expression, the error code is located and its position information is determined. The position information is used as the second error checking information, which includes the start line number, start column number, end line number, and end column number of the expression.

[0041] Specifically, the validation rules supported by the expression validation engine in this embodiment include: Numeric literals distinguish between integers and decimals, with a precision loss of 123 → Integer, 3.14 → Decimal; The string literal is inferred to be of string type "hello" → String; Boolean literals are inferred to be of Boolean type: true → Boolean; Variable reference checks the existence of a variable, obtains the variable type userName → finds the variable definition; The function call verifies the number and type of parameters and obtains the return value type SUM(a,b) → checks that the parameters are numerical. Member access verifies member existence and retrieves the member type user.age → searches for age in the User type; Mathematical operators verify that the operands are numeric types, and the result type a+b→ requires both sides to be numeric; Logical operators verify type compatibility, and the result is a boolean a&&b→, both sides must be boolean; The string concatenation validation supports the following types, and the result is string name&"Mr"→String.

[0042] The expression validation engine in this embodiment also supports type compatibility check rules, specifically: "Integer+Decimal type promotion Decimal;" String & Any string concatenation; Boolean&&Boolean logic and Boolean; "Any == Any is compared to Boolean".

[0043] Furthermore, in this embodiment, locating the error code includes: 1. Row-level precision: Expression errors are accurate to the specific character position; 2. Path navigation: Error locations are displayed as paths (e.g., "Logic / Node A / Attribute B"). 3. One-click navigation: Double-clicking an error will take you to its specific location in the designer.

[0044] Furthermore, the error checking in this embodiment also includes reference integrity checking, that is, checking for errors in the references of deleted variables, types, components, etc.

[0045] Furthermore, after obtaining error checking information, the real-time error checking method for low-code platforms also includes: Error checking information is stored. When the error checking information changes, the corresponding resource ID is retrieved. User interface components that have subscribed to the resource ID are notified based on the resource ID, and the components are updated according to the changed event document.

[0046] Specifically, this embodiment uses React Hooks components to store error checking information. These components can subscribe to the error states of specific resources. When an error changes, only the user interface components that have subscribed to that resource will be re-rendered, achieving efficient partial updates.

[0047] Furthermore, the real-time error checking method for the low-code platform also includes: after the error checking of the event document is completed, updating the error list and counting the error checking duration; if the error checking duration does not exceed a preset time slice (e.g., 3 milliseconds), then continuing to execute steps S10-S30; if the error checking duration exceeds the preset time slice, then pausing the error checking and yielding the main thread through the task scheduler, waiting for the user interface to be updated; after the user interface is updated, then continuing to execute the steps of obtaining the document editing attributes on the low-code platform in real time and determining the document priority based on the document editing attributes.

[0048] If error checking is performed on event documents Doc1, Doc2, and Doc3, and the error checking time exceeds 3 milliseconds, the error checking is paused and the main thread is yielded by the task scheduler to wait for the user interface (UI) to be updated. After the user interface is updated, error checking is performed on event documents Doc4 and Doc5. If the error checking time exceeds 3 milliseconds, the error checking is paused again and the main thread is yielded by the task scheduler to wait for the user interface (UI) to be updated.

[0049] Furthermore, this embodiment also includes a multi-channel error display mechanism, which specifically includes: Channel 1: Issue Panel (Centralized Display) The issue panel displays all errors in a table format and provides the following functions: 1. Error sorting: Sort by level (errors take precedence over warnings) and location; 2. Icon differentiation: A red circle icon indicates an error, and a yellow triangle icon indicates a warning; 3. Double-click to locate: Double-clicking an error line will jump to its specific location in the designer; 4. Right-click menu: Supports copying error messages and jumping to the target location; 5. Quick Fix: Provides repair suggestions for some errors, which users can apply with one click.

[0050] Channel 2: Inline Marks in the Editor (Equation Editor) In the equation editor (based on Monaco Editor), errors are marked directly at the location of the problematic code with a red wavy line: 1. Real-time verification: Instant verification as user input occurs (debouncing, 200ms delay). 2. Precise marking: The wavy line precisely covers the range of characters that are incorrect; 3. Hover tooltip: Hovering the mouse over the wavy line will display error details; 4. Status bar prompt: The bottom of the editor displays the validation status and type information of the current expression.

[0051] Channel 3: Component-level error messages Error badges will be displayed for each designer component (such as logical nodes and page elements): 1. Visual identification: Nodes with errors are displayed with a red border or an error icon; 2. Quantity Statistics: The error badge displays the number of errors for this component; 3. Quick Identification: Users can quickly identify which components have problems on the canvas.

[0052] This application's embodiments first use priority queue scheduling to ensure that the current editing area is detected first. Event documents that directly or indirectly reference the editing area are processed hierarchically to avoid duplicate checks. Only the affected resources are re-checked, eliminating the need for a full check, thus improving response speed several times. Then, a layered checker architecture is adopted, with dedicated checkers for different resource types (page elements, logical nodes, data entities) to achieve fine-grained incremental checks. Type checking and syntax analysis are performed through an AST-based expression validation engine to achieve complete type inference and type compatibility checks. It supports the validation of complex expressions such as function calls, member access, and operators. Error location is accurate to the character level. Error state management is based on a publish-subscribe pattern, eliminating the need for a separate background process. The checking logic runs directly on the front-end main thread, and task scheduling ensures the responsiveness of the user interface.

[0053] While this application provides method operation steps as shown in the embodiments or flowcharts, more or fewer operation steps may be included based on conventional or non-inventive labor. The order of steps listed in this embodiment is merely one possible execution order among many and does not represent the only execution order. In actual device or client product execution, the method can be executed sequentially according to this embodiment or the accompanying drawings, or in parallel (e.g., in a parallel processor or multi-threaded processing environment).

[0054] like Figure 2 As shown in the illustration, this application also provides a real-time error checking device for a low-code platform. The device includes: The document priority determination module 10 is used to obtain the document editing attributes on the low-code platform in real time and determine the document priority based on the document editing attributes.

[0055] The document queue generation module 20 is used to deduplicatize event documents of different priorities according to the enqueue deduplication mechanism, and generate document queues of different priorities.

[0056] The code type determination module 30 is used to determine the code type of each dequeued event document according to the dequeue order of each priority document queue.

[0057] The first error checking module 40 is used to call the corresponding error checker according to the code type to perform the first error check on the dequeued event document and obtain the first error check information.

[0058] The second error checking module 50 is used to call the expression validation engine and perform a second error check on the expressions in the dequeued event document through the AST visitor pattern. When it is determined that there is an error code in the expression, the error code is located and the location information is determined, and the location information is used as the second error checking information.

[0059] Some modules in the apparatus described in this application can be described in the general context of computer-executable instructions that are executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, classes, etc., that perform a specific task or implement a specific abstract data type. This application can also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.

[0060] The apparatus or module described in the above embodiments can be implemented by a computer chip or physical entity, or by a product with a certain function. For ease of description, the above apparatus is described by dividing it into various modules according to their functions. When implementing the embodiments of this application, the functions of each module can be implemented in one or more software and / or hardware. Of course, a module that implements a certain function can also be implemented by combining multiple sub-modules or sub-units.

[0061] The methods, apparatus, or modules described in this application can be implemented in a computer-readable program code manner. The controller can be implemented in any suitable manner, such as a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicon Labs C8051F320. A memory controller can also be implemented as part of the control logic of a memory. Those skilled in the art will also recognize that, in addition to implementing the controller in purely computer-readable program code manner, the same functionality can be achieved by logically programming the method steps to make the controller take the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers. Therefore, such a controller can be considered a hardware component, and the means included within it for implementing various functions can also be considered as structures within the hardware component. Alternatively, the device used to implement various functions can be viewed as either a software module that implements the method or a structure within a hardware component.

[0062] This application also provides an apparatus, the apparatus comprising: a processor; a memory for storing processor-executable instructions; wherein, when the processor executes the executable instructions, it implements the method described in this application.

[0063] This application also provides a non-volatile computer-readable storage medium storing a computer program or instructions thereon, which, when executed, enables the method described in this application embodiment to be implemented.

[0064] Furthermore, in the various embodiments of the present invention, each functional module can be integrated into a processing module, or each module can exist independently, or two or more modules can be integrated into a single module.

[0065] The aforementioned storage media include, but are not limited to, Random Access Memory (RAM), Read-Only Memory (ROM), Cache, Hard Disk Drive (HDD), or Memory Card. The memory can be used to store computer program instructions.

[0066] As can be seen from the above description of the embodiments, those skilled in the art can clearly understand that this application can be implemented by means of software plus necessary hardware. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product, or it can be embodied in the process of data migration. The computer software product can be stored in a storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, mobile terminal, server, or network device, etc.) to execute the methods described in various embodiments or some parts of the embodiments of this application.

[0067] The various embodiments described in this specification are presented in a progressive manner. Similar or identical parts between embodiments can be referred to interchangeably. Each embodiment focuses on its differences from other embodiments. All or part of this application can be used in numerous general-purpose or special-purpose computer system environments or configurations. Examples include: personal computers, server computers, handheld or portable devices, tablet devices, mobile communication terminals, multiprocessor systems, microprocessor-based systems, programmable electronic devices, network PCs, minicomputers, mainframe computers, and distributed computing environments including any of the above systems or devices, etc.

[0068] The above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit this application. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features therein. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of this application.

Claims

1. A real-time error checking method for a low-code platform, characterized in that, include: The document editing attributes on the low-code platform are obtained in real time, and the document priority is determined based on the document editing attributes. The event documents with different priorities are deduplicated according to the enqueue deduplication mechanism to generate document queues with different priorities. Determine the code type of each dequeued event document according to the dequeue order of each priority document queue; Based on the code type, the corresponding error checker is invoked to perform the first-level error check on the dequeued event document and obtain the first-level error check information. The expression validation engine is invoked, and the expressions in the dequeued event documents are subjected to a second layer of error checking through the AST visitor pattern. When an error code is found in the expression, the error code is located and its position information is determined. The position information is used as the second error checking information.

2. The method for real-time error checking on a low-code platform according to claim 1, characterized in that, Determining document priority based on the document editing attributes includes: When the document editing attribute is "editing", the corresponding event document is identified as the document being edited, and the document priority of the document being edited is set to high priority; Query the reference relationship graph of the document being edited, identify the event documents that directly reference the document being edited as direct reference documents, and set the document priority of the direct reference documents to high priority; The event document that indirectly references the document being edited is identified as the indirectly referenced document, and the document priority of the indirectly referenced document is determined to be medium priority; Event documents that are not directly or indirectly referenced in the project are identified as non-referenced documents, and the document priority of the non-referenced documents is set to low priority.

3. The method for real-time error checking on a low-code platform according to claim 2, characterized in that, The step of deduplicating event documents of different priorities according to the enqueue deduplication mechanism to generate document queues of different priorities includes: The document priority of all event documents is traversed, and event documents with different priorities are deduplicated according to the enqueue deduplication mechanism to generate document queues of different priorities; the enqueue deduplication mechanism includes: When a document has a high priority, the corresponding high-priority event document will be directly enqueued into the high-priority queue. When the document priority is medium priority, check whether the corresponding medium priority event document exists in the high priority queue. If the medium priority event document exists in the high priority queue, ignore the enqueue operation of the medium priority event document; if the medium priority event document does not exist in the high priority queue, enqueue the medium priority event document into the medium priority queue. When the document priority is low, check whether the corresponding low-priority event document exists in the high-priority queue or the medium-priority queue. If the low-priority event document exists in the high-priority queue or the medium-priority queue, ignore the enqueue operation of the low-priority event document. If the low-priority event document does not exist in the high-priority queue or the medium-priority queue, enqueue the low-priority event document to the low-priority queue.

4. The method for real-time error checking on a low-code platform according to claim 3, characterized in that, Before adding event documents with different document priorities to the corresponding priority queues, the low-code platform real-time error checking method further includes: Check if there are corresponding document queues for different document priorities; If it exists, check if there is a duplicate event document in the original document queue. If it exists, ignore the enqueue operation of the event document. If it does not exist, add the event documents of each document priority to the corresponding level document queue according to the enqueue deduplication mechanism, delete the duplicate event documents in other document queues, and update the document queue. If it does not exist, then according to the queuing and deduplication mechanism, document queues of different levels are generated directly based on the event documents of each document priority.

5. The method for real-time error checking on a low-code platform according to claim 1, characterized in that, The error checker includes a logical node error checker, a page element error checker, a data entity error checker, and a custom type error checker; The location information includes the starting row number, starting column number, ending row number, and ending column number of the expression.

6. The method for real-time error checking on a low-code platform according to claim 1, characterized in that, After obtaining the error checking information, the low-code platform real-time error checking method further includes: The error checking information is stored, and when the error checking information changes, the resource ID corresponding to the error checking information is obtained. The user interface components that have subscribed to the resource ID based on the resource ID are updated according to the changed event document.

7. The method for real-time error checking on a low-code platform according to claim 1, characterized in that, The low-code platform real-time error checking method also includes: After the error checking of the event document is completed, update the error list and count the error checking time; If the error checking time does not exceed the preset time slice, the process continues to execute the steps of obtaining the document editing attributes on the low-code platform in real time and determining the document priority based on the document editing attributes. If the error checking time exceeds the preset time slice, the error checking is paused and the main thread is yielded by the task scheduler, waiting for the user interface to be updated; Once the user interface is updated, the process continues to retrieve document editing attributes from the low-code platform in real time and determine document priority based on those attributes.

8. A real-time error checking device for a low-code platform, characterized in that, include: The document priority determination module is used to obtain document editing attributes on the low-code platform in real time and determine the document priority based on the document editing attributes; The document queue generation module is used to deduplicat event documents of different priorities according to the enqueue deduplication mechanism, and generate document queues of different priorities. The code type determination module is used to determine the code type of each dequeued event document according to the dequeue order of each priority document queue. The first error checking module is used to call the corresponding error checker according to the code type to perform the first error check on the dequeued event document and obtain the first error check information. The second error checking module is used to call the expression validation engine and perform a second layer of error checking on the expressions in the dequeued event documents through the AST visitor pattern. When it is determined that there is an error code in the expression, the error code is located and the location information is determined, and the location information is used as the second error checking information.

9. An apparatus for performing a real-time error checking method for a low-code platform, characterized in that, include: processor; Memory used to store processor-executable instructions; When the processor executes the executable instructions, it implements the method as described in any one of claims 1 to 7.

10. A non-volatile computer-readable storage medium, characterized in that, Includes storage of computer programs or instructions that, when executed, cause the method as described in any one of claims 1 to 7 to be implemented.