A canvas operation control method, device, equipment and medium

CN123011098APending Publication Date: 2026-10-30SHENZHEN RABBIT PREMISE TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611053420.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-07-15
Publication Date
2026-10-30

AI Technical Summary

Benefits of technology

[0009]综上所述,本发明提供了一种画布操作控制方法、装置、设备及介质,通过响应于交互指令触发事件,获取画布的全量状态数据,基于全量状态数据和预设快捷键规则库,确定与全量状态数据对应的目标操作指令,对目标操作指令进行多维度防误触校验,得到指令校验结果,其中,多维度防误触校验包括场景上下文校验、用户权限校验、拓扑状态校验、流程状态校验以及操作合法性校验,根据指令校验结果,控制画布执行目标操作指令对应的画布操作,并在执行结果失败时对画布执行自动回滚。可见,本申请通过引入全量状态数据与多维度校验机制,有效避免了因局部状态缺失或误判导致的操作偏差,显著提升了画布操作控制的准确性,增强了用户体验。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123011098A_ABST
    Figure CN123011098A_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of computer, and especially relates to a canvas operation control method and device, equipment and medium, which comprises the following steps: acquiring full state data of a canvas by responding to an interactive instruction trigger event, determining a target operation instruction corresponding to the full state data based on the full state data and a preset shortcut key rule library, performing multi-dimensional false touch prevention verification on the target operation instruction to obtain an instruction verification result, wherein the multi-dimensional false touch prevention verification comprises scene context verification, user permission verification, topology state verification, process state verification and operation legality verification, controlling the canvas to execute a canvas operation corresponding to the target operation instruction according to the instruction verification result, and performing automatic rollback on the canvas when the execution result fails. It can be seen that, by introducing full state data and a multi-dimensional verification mechanism, the present application effectively avoids operation deviation caused by partial state loss or misjudgment, significantly improves the accuracy of canvas operation control, and enhances user experience.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of computer technology, and in particular to a canvas operation control method, apparatus, device, and medium. Background Technology

[0002] With the rapid development of visual workflows and low-code development platforms, canvas-based interactive interfaces have been widely used in business process orchestration, AI workflow construction, data visualization and analysis, and other fields. The various operations performed by users on the canvas directly affect the workflow's execution efficiency and system stability.

[0003] However, existing canvas operation control schemes mostly employ simple button mechanisms, lacking the ability to perceive and adapt to the real-time state of the canvas. Especially when facing complex and dynamic scenes with intricate topologies, they struggle to effectively identify user intent and operational context, easily leading to problems such as misoperations, response delays, or functional deficiencies. This results in inconsistent canvas states, severely impacting the accuracy of canvas operations and the user experience. Therefore, improving the accuracy of canvas operation control is a pressing technical problem that needs to be solved. Summary of the Invention

[0004] Therefore, in order to address the above-mentioned technical problems, this invention provides a canvas operation control method, apparatus, device, and medium that can improve the accuracy of canvas operation control.

[0005] A first aspect of this application provides a canvas operation control method, the canvas operation control method comprising: Responding to interactive command-triggered events, obtain all state data of the canvas; Based on the full state data and the preset shortcut key rule base, the target operation instruction corresponding to the full state data is determined; The target operation command is subjected to multi-dimensional anti-accidental touch verification to obtain the command verification result. The multi-dimensional anti-accidental touch verification includes scene context verification, user permission verification, topology status verification, process status verification and operation legality verification. Based on the instruction verification result, the canvas is controlled to perform the canvas operation corresponding to the target operation instruction, and the canvas is automatically rolled back if the execution result fails.

[0006] A second aspect of this application provides a canvas operation control device, the canvas operation control device comprising: The acquisition module is used to obtain the full state data of the canvas in response to interactive command-triggered events; The determination module is used to determine the target operation instruction corresponding to the full status data based on the full status data and the preset shortcut key rule base; The verification module is used to perform multi-dimensional anti-accidental touch verification on the target operation command and obtain the command verification result. The multi-dimensional anti-accidental touch verification includes scene context verification, user permission verification, topology status verification, process status verification and operation legality verification. The control module is used to control the canvas to perform the canvas operation corresponding to the target operation instruction according to the instruction verification result, and to automatically roll back the canvas when the execution result fails.

[0007] Thirdly, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the computer program, implements the canvas operation control method as described in the first aspect.

[0008] Fourthly, a computer-readable storage medium is provided, the computer-readable storage medium storing a computer program, which, when executed by a processor, implements the canvas operation control method as described in the first aspect.

[0009] In summary, this invention provides a canvas operation control method, apparatus, device, and medium. By responding to interactive command trigger events, it acquires full canvas state data. Based on the full state data and a preset shortcut key rule base, it determines the target operation command corresponding to the full state data. The target operation command undergoes multi-dimensional anti-accidental touch verification to obtain the command verification result. This multi-dimensional anti-accidental touch verification includes scene context verification, user permission verification, topology state verification, process state verification, and operation legality verification. Based on the command verification result, it controls the canvas to execute the canvas operation corresponding to the target operation command, and automatically rolls back the canvas if the execution result fails. Therefore, by introducing full state data and a multi-dimensional verification mechanism, this application effectively avoids operational deviations caused by missing or misjudged partial states, significantly improving the accuracy of canvas operation control and enhancing the user experience. Attached Figure Description

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

[0011] Figure 1 This is a flowchart illustrating a canvas operation control method according to an embodiment of the present invention; Figure 2 This is a schematic diagram of the structure of a canvas operation control device provided in an embodiment of the present invention; Figure 3 This is a schematic diagram of the structure of a computer device provided in an embodiment of the present invention. Detailed Implementation

[0012] The technical solutions of the embodiments of the present invention 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 the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0013] It should be understood that, when used in this specification and the appended claims, terms include indicating the presence of the described feature, integral, step, operation, element and / or component, but do not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or collections thereof.

[0014] It should also be understood that the terms used in this specification and the appended claims refer to any combination of one or more of the associated listed items and all possible combinations, and include such combinations.

[0015] As used in this specification and the appended claims, terms if can be interpreted in context as when... or once or in response to determination. Similarly, the phrase if determined or if matched to [described condition or event] can be interpreted in context as once determined or in response to determination or once matched to [described condition or event] or in response to matching to [described condition or event].

[0016] Furthermore, in the description of this invention and the appended claims, the terms first, second, third, etc., are used only for distinguishing descriptions and should not be construed as indicating or implying relative importance.

[0017] References to one or more embodiments described in this specification mean that a particular feature, structure, or characteristic described in connection with that embodiment is included in one or more embodiments of the invention. Therefore, phrases appearing in different parts of this specification as referring to one embodiment, some embodiments, some other embodiments, and others do not necessarily refer to the same embodiment, but rather mean one or more, but not all, embodiments, unless otherwise specifically emphasized. The terms include, comprise, have, and variations thereof mean including but not limited to, unless otherwise specifically emphasized.

[0018] It should be understood that the sequence number of each step in the following embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.

[0019] To illustrate the technical solution of the present invention, specific embodiments are described below.

[0020] See Figure 1 This is a flowchart illustrating a canvas operation control method according to an embodiment of the present invention, as shown below. Figure 1 As shown, this canvas operation control method can be implemented through the following steps.

[0021] S101: Responds to the interactive command trigger event and obtains the full state data of the canvas.

[0022] In one implementation, when a user triggers an interactive command event on the workflow canvas via keyboard shortcuts, mouse gestures, or touch operations, the system immediately responds and collects all current canvas state data. Interactive command trigger events can be triggered by the user pressing a preset shortcut key combination (such as Ctrl+A, Delete, spacebar, etc.), performing a specific mouse drag action, or an operation request triggered by a voice command. Full state data refers to a structured data set that completely reflects the current running state of the canvas, including but not limited to the current focused scene on the canvas, the selected element, the node topology, the workflow running status, user editing permissions, multi-user collaboration status, canvas zoom level, and visible area, etc., serving as the core basis for dynamic scheduling and accidental touch prevention verification.

[0023] Specifically, event listeners are bound to the root element of the workflow canvas to listen for events triggered by interactive commands. For example, the entire process of capturing keyboard events, including the capture phase, target phase, and bubbling phase, is captured. The system accurately identifies the key combinations pressed by the user, the state of the key pressed / held / released, the duration of the key press, and the trigger order of the key combinations, while filtering out invalid and repeated key events. For scenarios involving continuous triggering of long-press shortcut keys, a minimum trigger interval is set to avoid canvas rendering lag caused by high-frequency operations. When a valid shortcut key combination is captured, context parsing is immediately triggered to simultaneously obtain all current canvas state data. This full state data includes scene context data, canvas state data, topology flow data, and permission collaboration data. Scene context data is obtained by identifying whether the current focus is in a text input box, parameter configuration panel, prompt word editing box, or pop-up window to determine whether the current scene is an editing scene or a canvas operation scene. Canvas state data is obtained by obtaining the currently selected elements, number of nodes, type, and locking status, canvas zoom ratio, visible area, and grid and ruler status. Topology flow data is obtained by obtaining the current workflow topology structure, running status (not running / running / paused / execution failed), and upstream and downstream dependencies of nodes. Permission collaboration data is obtained by obtaining the current user's canvas editing permissions, collaborator information, node locking status, and collaborative optimistic locking status. By collecting data synchronously across multiple dimensions, we ensure that the acquired full state data can completely and consistently reflect the true state of the canvas at the moment of triggering, providing an accurate data foundation for subsequent instruction matching and verification.

[0024] It should be noted that the granularity and scope of the full state data collection can be configured according to the actual business scenario. For simple single-user canvas scenarios, the collection dimensions can be simplified, while for complex multi-user collaborative workflow scenarios, richer state information needs to be collected. This application does not impose any restrictions on this.

[0025] S102: Based on the full state data and the preset shortcut key rule base, determine the target operation instruction corresponding to the full state data.

[0026] In one implementation, after acquiring the full state data of the canvas, the system matches this full state data with multiple candidate rules in a preset shortcut key rule library, and determines the corresponding target operation command based on the matching results. The preset shortcut key rule library is a pre-configured set of rules. Each candidate rule contains a set of state trigger conditions and a corresponding operation command. Specifically, it pre-matches available rules for the current scene from the rule engine, filters rules in the scene blacklist and rules without permissions, and generates triggerable operation commands for the current scene, avoiding the performance loss caused by full rule matching. This can be set according to actual conditions; this application does not impose any limitations on it, so that operation commands can be triggered by state trigger conditions. For example, pressing the Delete key triggers a "delete node" operation when the selected object is a single node, and a "delete connection" operation when the selected object is a connection.

[0027] Furthermore, each candidate rule in the preset shortcut key rule base is configured with a priority weight. When the full state data simultaneously meets the triggering conditions of multiple candidate rules, the system sorts them according to their priority weights and selects the operation instruction corresponding to the candidate rule with the highest weight as the target operation instruction. The priority weight can be set according to the security, usage frequency, or business importance of the operation. For example, destructive operations (such as batch deletion) have a lower priority than regular editing operations (such as copy and paste) to avoid accidentally triggering high-risk operations. If the match fails, the operation is directly blocked without any action. If the match is successful, the process of preventing accidental touches is initiated. By combining rule matching with priority sorting, intelligent instruction recognition based on the canvas context is achieved, ensuring that the same shortcut key can trigger the operation that best matches the user's intent in different scenarios. It can dynamically adapt the operation behavior according to the actual state of the canvas, effectively solving the problems of shortcut key functionality being limited and prone to conflict with the current scenario, thereby significantly improving the accuracy and efficiency of subsequent canvas operation control.

[0028] S103: Perform multi-dimensional anti-accidental touch verification on the target operation command to obtain the command verification result, wherein the multi-dimensional anti-accidental touch verification includes scene context verification, user permission verification, topology status verification, process status verification and operation legality verification.

[0029] In one implementation, after determining the target operation instruction, the system performs multi-dimensional anti-accidental touch verification on the instruction, comprehensively verifying the security and compliance of the operation from five different dimensions. Only when all dimensions pass the verification is the operation allowed to be executed. Scenario context verification verifies whether the current operation is applicable to the current canvas scenario and interaction mode. For example, node deletion is not allowed in the grabber mode, and key node configurations cannot be modified during workflow execution. User permission verification verifies whether the user has the permission to execute the operation. For example, ordinary collaborators cannot delete core nodes created by the administrator, and read-only users cannot perform any modification operations. Topology status verification verifies whether the operation will disrupt the integrity of the canvas's topology structure. For example, deleting a node will cause a workflow break, and adding a connection will create a circular dependency. Workflow status verification verifies whether the operation is compatible with the current workflow execution state. For example, running nodes cannot be deleted or have their parameters modified, and completed nodes cannot be rolled back to an unexecuted state. Operation legality verification verifies whether the operation itself conforms to the canvas's basic constraint rules. For example, nodes cannot be dragged out of the canvas boundary, and connections cannot be connected to incompatible data type interfaces.

[0030] Specifically, by sequentially executing the five checks mentioned above, each check outputs an independent pass / fail result and a corresponding error description. If all five checks pass, the instruction check result is "Check Passed"; if any check fails, the instruction check result is "Check Failed," and the dimension of failure and the specific reason are recorded for displaying an interception prompt to the user. Through this multi-dimensional cross-checking mechanism, it is ensured that every canvas operation is rigorously reviewed before execution, effectively avoiding abnormal operations that might be missed by a single check dimension, thus improving the security of canvas operations and system stability.

[0031] S104: Based on the instruction verification result, control the canvas to perform the canvas operation corresponding to the target operation instruction, and automatically roll back the canvas if the execution result fails.

[0032] In one implementation, if the instruction verification passes, the system controls the canvas to execute the canvas operation corresponding to the target operation instruction, such as node movement, connection establishment, batch deletion, and attribute modification. Before executing the operation, the system first generates a snapshot of the current canvas state, recording the complete state information of all affected objects before the operation. After the operation is completed, the system immediately performs multi-dimensional verification on the execution result, including topology verification, node data verification, connection relationship verification, and view state verification, to confirm whether the operation was successful and did not cause any exceptions. If the operation verification passes, the operation is completed normally; if the operation verification fails (e.g., topology breakage, data loss, or rendering anomalies occur after execution), the system automatically performs a rollback operation based on the pre-saved state snapshot, restoring the canvas to the state before the operation, ensuring that the canvas is always in a consistent and usable state.

[0033] Furthermore, the automatic rollback mechanism employs an atomic operation design, meaning each canvas operation either executes completely successfully or completely reverts to the initial state, with no intermediate partial success states. The rollback process not only restores the node positions and attribute data but also simultaneously restores connection relationships, selection states, view parameters, and workflow execution context, ensuring the rolled-back canvas is completely consistent with the one before the operation. Simultaneously, the system records the operation type, failure reason, and rollback time for each rollback, creating an operation log for subsequent troubleshooting and system optimization. Through the automatic rollback mechanism, even in extreme cases where operation execution fails, the integrity and consistency of the canvas state are guaranteed, avoiding the need for users to manually repair or rebuild the workflow due to operation failures, significantly improving the system's fault tolerance and user experience.

[0034] In summary, this invention provides a canvas operation control method, apparatus, device, and medium. By responding to interactive command trigger events, it acquires full canvas state data. Based on the full state data and a preset shortcut key rule base, it determines the target operation command corresponding to the full state data. The target operation command undergoes multi-dimensional anti-accidental touch verification to obtain the command verification result. This multi-dimensional anti-accidental touch verification includes scene context verification, user permission verification, topology state verification, process state verification, and operation legality verification. Based on the command verification result, it controls the canvas to execute the canvas operation corresponding to the target operation command, and automatically rolls back the canvas if the execution result fails. Therefore, by introducing full state data and a multi-dimensional verification mechanism, this application effectively avoids operational deviations caused by missing or misjudged partial states, significantly improving the accuracy of canvas operation control and enhancing the user experience.

[0035] In one embodiment, specifically in step S101, which involves obtaining the full state data of the canvas in response to an interactive command trigger event, the following steps are included: In response to an interactive instruction trigger event, determine the target identifier and canvas operation type corresponding to the interactive instruction trigger event; Based on the target identifier and the preset mapping relationship, determine the canvas element node associated with the target identifier, wherein the mapping relationship is the correspondence between the target identifier and the canvas element node; Based on the canvas element nodes and the canvas operation type, determine the full state data of the canvas.

[0036] In one implementation, when an interactive command triggers an event, the system first parses the target identifier and canvas operation type corresponding to the event. The target identifier is a unique identifier of the specific object to which the triggering event points, such as the ID of the currently selected node, the ID of the connection, or the identifier of the canvas area; the canvas operation type refers to the category of operation that the command intends to perform, such as delete, copy, move, zoom, connect, etc. The system captures keyboard key codes, mouse click coordinates, or touch point positions through an event listening module, and combines this with the current selection state of the canvas and the focused element to determine the target identifier and operation type.

[0037] Furthermore, based on the target identifier and the preset mapping relationship, the canvas element node associated with the target identifier is queried and determined. The preset mapping relationship is a pre-maintained correspondence table between identifiers and canvas element nodes, stored in the canvas element registry. Each canvas element node (including ordinary nodes, group nodes, connection nodes, comment nodes, etc.) has a unique identifier, and the corresponding element object and its complete attribute information can be quickly located through the mapping relationship. For example, when the target identifier is a node ID, detailed information such as the node's type, location, configuration parameters, and input / output interfaces can be found through the mapping relationship; when the target identifier is a connection ID, information such as the source node, target node, connection type, and data transmission protocol of the connection can be found.

[0038] Specifically, after identifying the associated canvas element nodes, the system selectively collects full state data based on the canvas operation type. Different operation types require different focuses in the state dimensions collected: for deletion operations, the focus is on collecting the upstream and downstream topological relationships and process dependencies of the deleted node; for move operations, the focus is on collecting canvas grid alignment rules and collision detection parameters; for connection operations, the focus is on collecting the interface types and data compatibility between the source and target nodes. By locating associated elements based on target identifiers and then selectively collecting state data based on operation types, the system ensures the completeness and relevance of state data while avoiding the performance overhead of indiscriminate full data collection. This effectively improves the efficiency and accuracy of state acquisition, providing high-quality data input for subsequent instruction matching and verification.

[0039] In one embodiment, specifically step S102, which involves determining the target operation instruction corresponding to the full state data based on the full state data and the preset shortcut key rule base, includes the following steps: The full state data is matched with multiple candidate rules in a preset shortcut key rule library, wherein each candidate rule in the preset shortcut key rule library is configured with a corresponding state trigger condition. Based on the matching results and the priority weights of the multiple candidate rules, the target operation instruction corresponding to the full state data is determined from the multiple candidate rules.

[0040] In one implementation, the system takes the collected full state data as input and performs matching operations against candidate rules in a preset shortcut key rule base. Each candidate rule is configured with a set of state trigger conditions, which are defined in the form of logical expressions, describing the combination of canvas states required for the rule to take effect. State trigger conditions can cover multiple dimensions, such as the type of the currently selected element, the editing mode of the canvas, the workflow's running state, the current user's role, and whether multiple selections exist. A rule is considered a successful match only when all the full state data meets all the trigger conditions of a candidate rule.

[0041] Furthermore, after matching all candidate rules, the system collects all successfully matched rules and sorts them according to their pre-configured priority weights. Priority weight is a numerical parameter; a higher value indicates higher priority, used to determine the final rule to take effect when multiple rules match simultaneously. Priority weights are set according to business logic and security principles. For example, secure view operations have higher priority than edit operations, exact match rules have higher priority than fuzzy match rules, and user-defined rules have higher priority than system default rules. The system selects the operation instruction corresponding to the matching rule with the highest priority weight as the final target operation instruction.

[0042] Specifically, the preset shortcut key rule base supports dynamic expansion and configuration. Administrators can add, modify, or delete candidate rules according to business needs and adjust the priority weight of each rule. The triggering conditions of the rules support complex logical combinations (AND, OR, NOT), enabling fine-grained scenario-based control. For example, the rule can be configured as follows: when "in pointer mode and a single node is selected and the workflow is not running," the Delete key triggers the "delete node" operation with a priority of 80; when "in selection mode and multiple elements are selected," the Delete key triggers the "batch delete selected elements" operation with a priority of 70; when "in text editing mode and the cursor is inside the text box," the Delete key triggers the "delete the character after the cursor" operation with a priority of 90. By combining condition matching and priority sorting, it is ensured that shortcut keys always trigger the operation most appropriate to the current context in complex canvas scenarios, significantly improving the intelligence and accuracy of canvas interaction.

[0043] In one embodiment, matching the full state data with multiple candidate rules in a preset shortcut key rule base includes the following steps: Obtain scene context data, canvas state data, topology process data, and permission collaboration data from the full state data; The scene context data is logically processed with the first state triggering conditions configured for each candidate rule in the preset shortcut key rule library to obtain the first matching result. The canvas state data is logically processed with the second state triggering conditions configured for each candidate rule in the preset shortcut key rule base to obtain the second matching result. The topology process data is logically processed with the third state triggering conditions configured for each candidate rule in the preset shortcut key rule base to obtain the third matching result; The permission collaboration data is logically processed with the fourth state triggering conditions configured for each candidate rule in the preset shortcut key rule base to obtain the fourth matching result; Based on the first matching result, the second matching result, the third matching result, and the fourth matching result, a set of candidate rules corresponding to the full state data is determined.

[0044] In one implementation, the system categorizes all state data into four types based on data dimensions: scene context data, canvas state data, topology workflow data, and permission collaboration data. Scene context data reflects the current interaction scenario and editing mode, such as whether it's currently in pointer mode, grab mode, selection mode, or connection mode, whether a text input box is active, and whether a drag-and-drop operation is in progress. Canvas state data reflects the view and element state of the canvas itself, such as the currently selected element list, canvas zoom level, viewport position, grid alignment switch, and snapping mode. Topology workflow data reflects the workflow's topology and execution status, such as the connection relationships between nodes, the running status of each node, the current node position, and whether there are any abnormal nodes. Permission collaboration data reflects the permissions and status information during multi-user collaboration, such as the current user's role and operation permissions, the list of online collaborators, the lock information held by each user, and whether the current editing state is conflicting.

[0045] Furthermore, each candidate rule in the preset shortcut key rule base is configured with four types of state trigger conditions: the first state trigger condition corresponds to the scene context dimension, the second state trigger condition corresponds to the canvas state dimension, the third state trigger condition corresponds to the topology flow dimension, and the fourth state trigger condition corresponds to the permission collaboration dimension. The system performs logical operations on the four types of state data with the corresponding trigger conditions, that is, it determines whether the actual state data meets the requirements of the condition expression. Each type of operation outputs an independent matching result (Boolean value). For example, the first matching result indicates whether the scene context meets the requirements, the second matching result indicates whether the canvas state meets the requirements, and so on.

[0046] Specifically, the system integrates the matching results across four dimensions. A candidate rule is only included in the set of successfully matched candidate rules if all four dimensions match successfully. If any dimension fails to match, the rule is excluded. This four-dimensional hierarchical matching mechanism breaks down the complex rule matching process into four independent dimensions for separate calculation, improving matching efficiency and making rule configuration clearer and more maintainable. The triggering conditions for each dimension can be adjusted independently, facilitating fine-grained configuration for specific scenarios. Furthermore, the hierarchical matching design allows for easy expansion to new state dimensions; simply adding the corresponding triggering condition category demonstrates good scalability.

[0047] In one embodiment, specifically in step S103, which involves performing multi-dimensional anti-mistouch verification on the target operation command to obtain the command verification result, the following steps are included: The target operation instruction is subjected to scene context verification to obtain a first verification result; Perform user permission verification on the target operation instruction to obtain a second verification result; Perform topology state verification on the target operation command to obtain a third verification result; Perform a process status verification on the target operation instruction to obtain a fourth verification result; The target operation instruction is subjected to operation legality verification to obtain the fifth verification result; Determine whether the first verification result, the second verification result, the third verification result, the fourth verification result, and the fifth verification result all satisfy the preset verification conditions; If the first verification result, the second verification result, the third verification result, the fourth verification result, and the fifth verification result all meet the preset verification conditions, then the instruction verification result is determined to be verified successfully.

[0048] In one implementation, the system sequentially performs five dimensions of anti-accidental touch checks on the target operation command, with each dimension outputting an independent check result. Scene context check (first check result) primarily checks whether the current operation is compatible with the current interaction mode. Alternatively, if the current focus is on editing scenarios such as text input or parameter configuration, it automatically blocks shortcuts for node topology operations and process execution, allowing only text operations and view operation shortcuts within the input box, thus preventing accidental node operations in editing scenarios from the source. User permission check (second check result) verifies whether the user has the right to perform the operation based on the current user's role and permission configuration. For example, deleting a core node requires administrator privileges, and modifying a node created by another user requires editing privileges. All modification operations by read-only users are blocked. If the user does not have editing privileges, all node modification and process execution operations are blocked, allowing only view operation shortcuts; if the user does not have administrator privileges, collaborator management and permission switching operations are blocked.

[0049] Furthermore, topology status verification (the third verification result) is used to verify whether an operation will disrupt the integrity of the canvas's topology. For example, after deleting a node, it checks whether there are broken dependencies between its upstream and downstream nodes; after adding a connection, it checks whether a circular dependency is formed; after moving a node, it checks whether it exceeds the legal topology area. Alternatively, before performing node modification operations, it verifies whether the currently selected node is in an unlocked state or locked by other collaborators. Locked nodes only allow copy operations, blocking cut, delete, and modify operations. Before performing grouping / ungrouping operations, it verifies whether the selected node has cross-branch upstream and downstream dependencies to avoid disrupting the workflow topology. Process status verification (the fourth verification result) is performed in conjunction with the real-time running status of the workflow. For example, nodes that are running are not allowed to be deleted or have their parameters modified, completed nodes are not allowed to be undone, and nodes in a waiting state are not allowed to be forcibly skipped. That is, when the workflow is running, operations that modify the topology, such as node deletion, cut, grouping / ungrouping, etc., are automatically blocked, and only copying, view operations, and process pause / termination operations are allowed to avoid execution anomalies caused by topology changes during operation. Operation legality verification (fifth verification result) checks whether the operation itself conforms to the basic physical constraints and business rules of the canvas. For example, nodes cannot be dragged out of the canvas boundary, and lines cannot be connected to non-existent interfaces. Alternatively, it verifies whether the current operation conforms to the rules of the directed acyclic graph of the workflow. For example, when performing a select all operation, it automatically filters invalid areas upstream of the start node and downstream of the output node. When pasting nodes, it automatically verifies whether it will lead to a closed loop in the process. If there is a risk of a closed loop, it intercepts the operation and provides a prompt.

[0050] Specifically, after all five dimensions of verification are completed, the system determines whether all five verification results meet the preset verification conditions (i.e., all pass). Only when all five verifications pass is the instruction verification result determined to be "verification passed," allowing the target operation to be executed; if any verification fails, it is determined to be "verification failed," the operation is intercepted, and the user is informed of the specific reason for the failure, along with the correct operation instructions. For example, "The current node is running and cannot be deleted" or "You do not have permission to modify this node." Through this multi-dimensional progressive verification mechanism, checks are performed at different levels to ensure that every canvas operation undergoes comprehensive review, effectively preventing various misoperations and illegal operations, and significantly improving the security and stability of the canvas operating system.

[0051] In one embodiment, specifically in step S104, which involves controlling the canvas to perform the canvas operation corresponding to the target operation instruction based on the instruction verification result, and automatically rolling back the canvas when the execution result fails, the steps include the following: If the instruction verification result is successful, then obtain the set of target objects in the canvas affected by the target operation instruction; Determine the attribute information, association information, and node order of each target object in the target object set; Based on the attribute information, association information, and node order of each target object in the target object set, a canvas state snapshot is generated. Execute the canvas operation corresponding to the target operation instruction, and perform multi-dimensional verification on the execution result based on the canvas state snapshot to obtain the operation verification result. The multi-dimensional verification includes topology structure verification, node data verification, connection relationship verification, and view state verification. If the operation verification result is that the verification fails, then the canvas is automatically rolled back.

[0052] In one implementation, after the instruction verification passes, the system first identifies and collects all target objects in the canvas affected by the target operation instruction, forming a target object set. Target objects include not only directly manipulated objects but also indirectly affected related objects (such as upstream and downstream connections of the deleted node, other nodes that depend on the deleted node, etc.). For each target object, the system extracts its complete attribute information (such as position, size, type, configuration parameters), association information (such as connected upstream and downstream nodes, group to which it belongs, associated annotation tags), and node order (such as execution sequence number in the workflow topology, rendering order in the canvas layer).

[0053] Furthermore, based on the above information, a canvas state snapshot is generated. This snapshot uses incremental storage to completely record the state of all affected objects before the operation in structured data form, serving as the baseline data for subsequent rollback. After the state snapshot is generated, the system executes the canvas operation corresponding to the target operation instruction, such as deleting nodes, moving positions, and modifying attributes. After the operation is completed, the execution results are immediately verified in multiple dimensions: Topology verification checks whether the canvas topology is complete after the operation and whether there are any broken chains or loops; Node data verification checks whether the data of all nodes is complete and whether the attributes meet expectations; Connection relationship verification checks whether the source and target of all connections are correct and whether the data flow is consistent; View state verification checks whether the canvas rendering is normal and whether there are any display anomalies.

[0054] Specifically, if all four-dimensional operations pass the verification, the operation is considered successful and the operation ends normally. If any verification fails, the operation is considered to have failed, and the system immediately triggers an automatic rollback mechanism. The rollback process is based on a pre-saved snapshot of the canvas state, restoring the attributes, relationships, and node order of the target objects one by one, while simultaneously restoring the view state and selected state of the canvas to ensure that the canvas is completely back to its state before the operation. After the rollback is completed, the system performs another verification to confirm the rollback is successful and records the operation failure log. That is, if the verification passes, the transaction is committed, the operation record is stored in the operation history, and the canvas state is updated simultaneously. If the execution fails or the verification fails, the transaction rollback is immediately triggered, the rollback interface is called, and the canvas is completely restored to its state before the operation based on the snapshot of the state before the operation, while providing an operation failure prompt to ensure that there are no intermediate abnormal states. Through a closed-loop mechanism of pre-operation snapshot saving, post-operation multi-dimensional verification, and automatic rollback in case of failure, the atomicity and consistency of canvas operations are effectively guaranteed, avoiding data corruption or user misjudgment caused by partial execution or state residue. Even if anomalies occur during execution, state consistency can be guaranteed, greatly enhancing the fault tolerance and reliability of canvas operations.

[0055] In one embodiment, the following steps are also included: Obtain network connection status and environment status data for the canvas workflow; Based on the network connection status data and the environment status data, the target execution state of the canvas workflow is determined; Based on the target execution state, state transition control is performed on the action sequence of the nodes to be executed in the canvas workflow.

[0056] In one implementation, the system monitors the canvas workflow's operating environment in real time, continuously collecting network connection status and environmental status data. Network connection status data includes current network connectivity, bandwidth, latency, packet loss rate, and connection status with the cloud scheduling service; environmental status data includes server or client CPU utilization, memory usage, disk space, GPU load, and the health status of system processes. This data reflects the external environmental conditions of the workflow's operation and directly affects whether the workflow can execute stably and continuously.

[0057] Furthermore, the system comprehensively evaluates and determines the target execution state of the canvas workflow based on network connectivity and environmental status data. The target execution state includes normal operation, warning, and interruption states, determined specifically based on the quality of environmental conditions. When the network and environment are in good condition, the workflow maintains normal operation; when the network fluctuates or resources are scarce but have not yet reached a critical threshold, it enters the warning state, appropriately reducing the execution rate or suspending non-critical tasks; when the network is disconnected or system resources are severely insufficient, it switches to the interruption state, suspending the scheduling of all pending nodes.

[0058] Specifically, after determining the target execution state, the system performs state transition control on the action sequence of the nodes to be executed in the canvas workflow. The action sequence refers to the execution plan where the nodes to be executed are arranged in a predetermined order. State transition control dynamically adjusts the execution state of these nodes based on the target execution state, such as changing "pending execution" to "running," "paused," or "suspended." For example, when a network interruption is detected, the system changes the state of all nodes to "paused" and saves the current execution context; when the network is restored and the environment returns to normal, the node state is changed back to "pending execution," resuming execution from the point of interruption. Through environmental awareness and dynamic state transition mechanisms, the canvas workflow can adapt to changes in the external environment, proactively protecting the execution progress when the environment deteriorates, avoiding data loss or process crashes caused by environmental anomalies, thereby significantly improving the environmental adaptability and operational stability of the canvas workflow.

[0059] In one embodiment, determining the target execution state of the canvas workflow based on the network connection status data and the environment status data includes the following steps: The network connection status data and the environmental status data are input into a preset status assessment model to calculate the status assessment value; Determine whether the state evaluation value is lower than a preset evaluation threshold; If the state evaluation value is lower than the preset evaluation threshold, the target execution state is determined to be a canvas interruption state. If the state evaluation value is higher than or equal to the preset evaluation threshold, then the target execution state is determined as the canvas running state.

[0060] In one implementation, the system employs a pre-set state evaluation model to quantitatively evaluate network connectivity and environmental status data, outputting a comprehensive state evaluation value. The pre-set state evaluation model is a pre-trained or configured evaluation algorithm, which can be implemented using weighted scoring, fuzzy comprehensive evaluation, or machine learning models. The model takes network connectivity, bandwidth, latency, packet loss rate, and multiple metrics such as CPU, memory, and disk usage as input, and outputs a state evaluation value between 0 and 100 through weighted calculations or feature inference. A higher value indicates a better operating environment, while a lower value indicates a worse environment.

[0061] Furthermore, the system compares the calculated status evaluation value with a preset evaluation threshold. The preset evaluation threshold is a pre-defined critical value used to distinguish whether the environment meets the minimum requirements for the normal operation of the workflow. It can be adjusted according to the sensitivity of the business scenario; for example, a higher threshold can be set for workflows with high real-time requirements, while a lower threshold can be set for offline batch processing workflows. If the status evaluation value is lower than the preset evaluation threshold, it indicates that the current environmental conditions no longer support the normal operation of the workflow, and the system determines the target execution state as "canvas interrupted state," triggering the process pause mechanism. If the status evaluation value is higher than or equal to the preset evaluation threshold, it indicates that the environmental conditions meet the operating requirements, and the system determines the target execution state as "canvas running state," maintaining or resuming the normal execution of the workflow. The preset status evaluation model supports dynamic parameter tuning; administrators can adjust the weights and thresholds of each indicator based on actual operating data to make the evaluation results more closely match business needs. Simultaneously, the system uses a sliding window mechanism to smooth the status evaluation value, avoiding frequent state switching due to instantaneous network fluctuations or resource jitter. A state transition is only triggered when the status evaluation value is lower than or higher than the threshold for multiple consecutive sampling periods, ensuring the stability of status control. By using quantitative evaluation models and threshold determination mechanisms, the efficiency of canvas operations is effectively improved and the cost of manual intervention is reduced, thereby achieving intelligent and refined control over the execution status of the workflow, enabling the canvas workflow to maintain stable and reliable execution in complex and ever-changing operating environments.

[0062] Please see Figure 2 , Figure 2 This is a schematic diagram of the canvas operation control device provided in an embodiment of the present invention. This canvas operation control device corresponds one-to-one with the canvas operation control method in the above embodiments. Please refer to the following for details. Figure 1 as well as Figure 1 The relevant descriptions in the corresponding embodiments are shown below. For ease of explanation, only the parts relevant to this embodiment are shown. See also... Figure 2 The canvas operation control device 20 includes: an acquisition module 21, a determination module 22, a verification module 23, and a control module 24.

[0063] The acquisition module 21 is used to acquire the full state data of the canvas in response to the interactive command trigger event; The determination module 22 is used to determine the target operation instruction corresponding to the full status data based on the full status data and the preset shortcut key rule base; The verification module 23 is used to perform multi-dimensional anti-accidental touch verification on the target operation command and obtain the command verification result. The multi-dimensional anti-accidental touch verification includes scene context verification, user permission verification, topology status verification, process status verification and operation legality verification. Control module 24 is used to control the canvas to perform the canvas operation corresponding to the target operation instruction according to the instruction verification result, and to automatically roll back the canvas when the execution result fails.

[0064] Optionally, the acquisition module 21 described above is specifically used for: In response to an interactive instruction trigger event, determine the target identifier and canvas operation type corresponding to the interactive instruction trigger event; Based on the target identifier and the preset mapping relationship, determine the canvas element node associated with the target identifier, wherein the mapping relationship is the correspondence between the target identifier and the canvas element node; Based on the canvas element nodes and the canvas operation type, determine the full state data of the canvas.

[0065] Optionally, the aforementioned determining module 22 is specifically used for: The full state data is matched with multiple candidate rules in a preset shortcut key rule library, wherein each candidate rule in the preset shortcut key rule library is configured with a corresponding state trigger condition. Based on the matching results and the priority weights of the multiple candidate rules, the target operation instruction corresponding to the full state data is determined from the multiple candidate rules.

[0066] Optionally, the determining module 22 is further configured to: Obtain scene context data, canvas state data, topology process data, and permission collaboration data from the full state data; The scene context data is logically processed with the first state triggering conditions configured for each candidate rule in the preset shortcut key rule library to obtain the first matching result. The canvas state data is logically processed with the second state triggering conditions configured for each candidate rule in the preset shortcut key rule base to obtain the second matching result. The topology process data is logically processed with the third state triggering conditions configured for each candidate rule in the preset shortcut key rule base to obtain the third matching result; The permission collaboration data is logically processed with the fourth state triggering conditions configured for each candidate rule in the preset shortcut key rule base to obtain the fourth matching result; Based on the first matching result, the second matching result, the third matching result, and the fourth matching result, a set of candidate rules corresponding to the full state data is determined.

[0067] Optionally, the control module 24 is specifically used for: If the instruction verification result is successful, then obtain the set of target objects in the canvas affected by the target operation instruction; Determine the attribute information, association information, and node order of each target object in the target object set; Based on the attribute information, association information, and node order of each target object in the target object set, a canvas state snapshot is generated. Execute the canvas operation corresponding to the target operation instruction, and perform multi-dimensional verification on the execution result based on the canvas state snapshot to obtain the operation verification result. The multi-dimensional verification includes topology structure verification, node data verification, connection relationship verification, and view state verification. If the operation verification result is that the verification fails, then the canvas is automatically rolled back.

[0068] Optionally, the control module 24 is further configured to: Obtain network connection status and environment status data for the canvas workflow; Based on the network connection status data and the environment status data, the target execution state of the canvas workflow is determined; Based on the target execution state, state transition control is performed on the action sequence of the nodes to be executed in the canvas workflow.

[0069] Optionally, the control module 24 is further configured to: The network connection status data and the environmental status data are input into a preset status assessment model to calculate the status assessment value; Determine whether the state evaluation value is lower than a preset evaluation threshold; If the state evaluation value is lower than the preset evaluation threshold, the target execution state is determined to be a canvas interruption state. If the state evaluation value is higher than or equal to the preset evaluation threshold, then the target execution state is determined as the canvas running state.

[0070] It should be noted that the information interaction and execution process between the above-mentioned units are based on the same concept as the method embodiments of the present invention. For details on their specific functions and technical effects, please refer to the method embodiments section, which will not be repeated here.

[0071] Figure 3 This is a schematic diagram of the structure of a computer device provided in an embodiment of the present invention. Figure 3 As shown, the computer device of this embodiment includes: at least one processor ( Figure 3 Only one is shown in the diagram), a memory, and a computer program stored in the memory and capable of running on at least one processor, wherein the processor executes the computer program to implement the steps in the above embodiments of any canvas operation control method.

[0072] This computer device may include, but is not limited to, a processor and memory. Those skilled in the art will understand that... Figure 3 The examples of computer devices are merely examples and do not constitute a limitation on computer devices. Computer devices may include more or fewer components than shown in the illustration, or combinations of certain components, or different components, such as network interfaces, displays, and input systems.

[0073] In one embodiment, a computer-readable storage medium is provided that, when the instructions in the computer-readable storage medium are executed by a processor in a computer device, enables the computer device to perform the steps of any embodiment of the canvas operation control method disclosed in this invention, which will not be repeated here. The computer-readable storage medium may be non-volatile or volatile.

[0074] The processor referred to can be a CPU, but it can also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor can be a microprocessor or any conventional processor.

[0075] Memory includes readable storage media, internal memory, etc., wherein internal memory can be the RAM of a computer device, providing an environment for the operation of the operating system and computer-readable instructions stored in the readable storage media. The readable storage media can be the hard drive of the computer device, or in other embodiments, it can be an external storage device of the computer device, such as a plug-in hard drive, Smart Media Card (SMC), Secure Digital (SD) card, or Flash Card. Furthermore, memory can include both internal storage units and external storage devices of the computer device. Memory is used to store the operating system, cooperative applications, boot loader, data, and other programs, such as program code of computer programs. Memory can also be used to temporarily store data that has been output or will be output.

[0076] Those skilled in the art will understand that implementing all or part of the processes in the methods of the above embodiments can be accomplished by a computer program instructing related hardware. This computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the methods described above. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0077] Those skilled in the art will understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is used as an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the system can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this invention. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here. If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium.

[0078] The above-described embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention 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 of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be included within the protection scope of the present invention.

Claims

1. A canvas operation control method, characterized in that, include: Responding to interactive command-triggered events, obtain all state data of the canvas; Based on the full state data and the preset shortcut key rule base, the target operation instruction corresponding to the full state data is determined; The target operation command is subjected to multi-dimensional anti-accidental touch verification to obtain the command verification result. The multi-dimensional anti-accidental touch verification includes scene context verification, user permission verification, topology status verification, process status verification and operation legality verification. Based on the instruction verification result, the canvas is controlled to perform the canvas operation corresponding to the target operation instruction, and the canvas is automatically rolled back if the execution result fails.

2. The canvas operation control method as described in claim 1, characterized in that, The process of responding to an interactive command-triggered event and obtaining full state data of the canvas includes: In response to an interactive instruction trigger event, determine the target identifier and canvas operation type corresponding to the interactive instruction trigger event; Based on the target identifier and the preset mapping relationship, determine the canvas element node associated with the target identifier, wherein the mapping relationship is the correspondence between the target identifier and the canvas element node; Based on the canvas element nodes and the canvas operation type, determine the full state data of the canvas.

3. The canvas operation control method as described in claim 1, characterized in that, The step of determining the target operation instruction corresponding to the full state data based on the full state data and the preset shortcut key rule base includes: The full state data is matched with multiple candidate rules in a preset shortcut key rule library, wherein each candidate rule in the preset shortcut key rule library is configured with a corresponding state trigger condition. Based on the matching results and the priority weights of the multiple candidate rules, the target operation instruction corresponding to the full state data is determined from the multiple candidate rules.

4. The canvas operation control method as described in claim 2, characterized in that, The step of matching the full state data with multiple candidate rules in a preset shortcut key rule base includes: Obtain scene context data, canvas state data, topology process data, and permission collaboration data from the full state data; The scene context data is logically processed with the first state triggering conditions configured for each candidate rule in the preset shortcut key rule library to obtain the first matching result. The canvas state data is logically processed with the second state triggering conditions configured for each candidate rule in the preset shortcut key rule base to obtain the second matching result. The topology process data is logically processed with the third state triggering conditions configured for each candidate rule in the preset shortcut key rule base to obtain the third matching result; The permission collaboration data is logically processed with the fourth state triggering conditions configured for each candidate rule in the preset shortcut key rule base to obtain the fourth matching result; Based on the first matching result, the second matching result, the third matching result, and the fourth matching result, a set of candidate rules corresponding to the full state data is determined.

5. The canvas operation control method as described in claim 1, characterized in that, The step of controlling the canvas to execute the canvas operation corresponding to the target operation instruction based on the instruction verification result, and automatically rolling back the canvas when the execution result fails, includes: If the instruction verification result is successful, then obtain the set of target objects in the canvas affected by the target operation instruction; Determine the attribute information, association information, and node order of each target object in the target object set; Based on the attribute information, association information, and node order of each target object in the target object set, a canvas state snapshot is generated. Execute the canvas operation corresponding to the target operation instruction, and perform multi-dimensional verification on the execution result based on the canvas state snapshot to obtain the operation verification result. The multi-dimensional verification includes topology structure verification, node data verification, connection relationship verification, and view state verification. If the operation verification result is that the verification fails, then the canvas is automatically rolled back.

6. The canvas operation control method as described in claim 1, characterized in that, Also includes: Obtain network connection status and environment status data for the canvas workflow; Based on the network connection status data and the environment status data, the target execution state of the canvas workflow is determined; Based on the target execution state, state transition control is performed on the action sequence of the nodes to be executed in the canvas workflow.

7. The canvas operation control method as described in claim 6, characterized in that, Determining the target execution state of the canvas workflow based on the network connection status data and the environment status data includes: The network connection status data and the environmental status data are input into a preset status assessment model to calculate the status assessment value; Determine whether the state evaluation value is lower than a preset evaluation threshold; If the state evaluation value is lower than the preset evaluation threshold, the target execution state is determined to be a canvas interruption state. If the state evaluation value is higher than or equal to the preset evaluation threshold, then the target execution state is determined as the canvas running state.

8. A canvas operation control device, characterized in that, include: The acquisition module is used to obtain the full state data of the canvas in response to interactive command-triggered events; The determination module is used to determine the target operation instruction corresponding to the full status data based on the full status data and the preset shortcut key rule base; The verification module is used to perform multi-dimensional anti-accidental touch verification on the target operation command and obtain the command verification result. The multi-dimensional anti-accidental touch verification includes scene context verification, user permission verification, topology status verification, process status verification and operation legality verification. The control module is used to control the canvas to perform the canvas operation corresponding to the target operation instruction according to the instruction verification result, and to automatically roll back the canvas when the execution result fails.

9. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the canvas operation control method as described in any one of claims 1 to 7.

10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the canvas operation control method as described in any one of claims 1 to 7.