Function Block Extension Using External Capability References
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing workflows face challenges in extending the capability of function blocks due to the need to copy and update codes, which occupies storage space and increases workload.
Innovation Solution
A method and apparatus for extending function block capability by determining a description file with information on the calling relationship and generating a code to call the extended capability, without copying the code, and storing the description file and code in the function block.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If code is copied into a function block to extend capability, then the function block gains new functionality, but storage space is occupied and update workload increases
Solution Approach 1:
The patent extracts the extended capability code from the function block itself and places it in a separate external file. The function block only stores a reference (file path and class name) to the external code, rather than copying the actual code content. This separation allows the function block to gain new functionality while occupying minimal storage space within the block itself.
Solution Approach 2:
The patent moves the code storage from the traditional single-dimension approach (all code inside the function block) to a multi-dimensional structure where code is stored externally and referenced through metadata. This dimensional shift separates the function block's core structure from its extendable capabilities, reducing internal storage requirements while maintaining full functionality.
2Adaptability or versatility
If code is copied into a function block to extend capability, then the function block gains new functionality, but update workload increases when code needs to be modified
Solution Approach 1:
By extracting the extendable capability code to an external file, the patent enables independent updates of the external code without affecting the function block's core structure. When code updates are needed, only the external file needs to be modified, and the function block automatically picks up the changes through its reference mechanism, eliminating the need to update multiple copied instances.
Solution Approach 2:
The external code file serves multiple function blocks simultaneously through references. A single external code file can be referenced by multiple function blocks, so updating the external file automatically updates all function blocks that reference it, providing a universal update mechanism that reduces overall workload.
3Adaptability or versatility
If code is copied into a function block to extend capability, then the function block gains new functionality, but the function block storage space is consumed
Solution Approach 1:
The patent extracts the extended capability implementation from the function block's internal structure and places it in an external file. The function block's internal structure remains simple, containing only metadata (file path and class name) rather than the actual code content, thus maintaining structural simplicity while enabling capability extension.
Solution Approach 2:
The patent introduces an intermediary mechanism (the reference system consisting of file path and class name metadata) that connects the function block to external code. This intermediary allows the function block to access external functionality without directly containing it, reducing structural complexity while maintaining capability extensibility.
Data Source
AI summary
A method for extending a capability of a function block may comprise: determining a first description file of a first function block, the first description file comprising first information, the first information describing a calling relationship between the first function block and an extended capability in a second function block, the extended capability comprising a basic capability of the second function block and an added capability of the second function block; generating a first code for calling the extended capability in the second function block based on the first information; and storing the first description file and the first code in the first function block, and calling the extended capability in the second function block when the first code is run.


