IP Library Granted Patent US 9,697,300
Granted Patent B2
US 9,697,300 · App. 14/244,226 · Granted Jul 4, 2017

Graph syntax validation system and method

Inventors: Thomas Kummer (Saarbruecken, DE); Markus Brueck (Ettenheim, DE)
Assignee: Software AG
G06F17/30958
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,697,300
App. No.
14/244,226
Granted
Jul 4, 2017
Kind
B2
Abstract

A graph syntax validation system, method, or computer-readable medium that receives: (i) an input graph, (ii) transformation rules, and (iii) a minimal valid graph. The system/method/computer-readable medium transforms the input graph into the minimal valid graph using the transformation rules that are comprised of source patterns and target patterns. The system/method/computer-readable medium recurrently transforms the input graph until either the input graph has been reduced to the minimal valid graph indicating that the input graph uses a valid syntax, or until it is determined that one or more transformation rules do not match the input graph indicating that the input graph uses an invalid syntax.

Claims (45)

1. A method for graph syntax validation comprising:

receiving, by a processor, (i) an input graph that contains one or more input graph nodes, the input graph is checked for use of valid syntax or invalid syntax, (ii) transformation rules, and (iii) a minimal valid graph,

wherein the input graph nodes indicate, in a graph notation, types of nodes,

wherein the types of the nodes include functions, events, and gateways,

where a syntax is defined by the transformation rules;

transforming, by the processor in response to receiving the input graph, the input graph toward the minimal valid graph using the transformation rules, each of the transformation rules includes a source pattern and a target pattern,

further comprising, in the transforming step,

source pattern-matching by comparing the input graph with the source pattern of the transformation rules and determining whether the input graph matches the source pattern of one or more transformation rules; and

rule-executing, by replacing the input graph nodes that are determined to match the source pattern of one or more transformation rules with the target patterns for the one or more transformation rules,

wherein the transforming recurs until either the input graph has been determined to be reduced to the minimal valid graph indicating that the input graph uses the valid syntax, or until it is determined that none of the transformation rules match the input graph indicating that the input graph uses an invalid syntax; and

outputting, by the processor, after the transforming, a result indicating either that the input graph is determined to use the valid syntax or the input graph is determined to use the invalid syntax.

2. The method of claim 1 , further comprising result-visualizing, by the processor, the transformation result.

3. The method of claim 1 , further comprising design-facilitating, by the processor, the minimal valid graph and the transformation rules.

4. The method of claim 3 , wherein the design-facilitating includes the use of non-terminal symbol design tools to generate intermediate transformation results.

5. The method of claim 3 , wherein the design-facilitating includes placeholder design tools for use in the source pattern and the target patterns.

6. A graph syntax validation system, comprising:

a processor configured to

receive (i) an input graph that contains one or more input graph nodes, the input graph is checked for use of valid syntax or invalid syntax, (ii) transformation rules, and (iii) a minimal valid graph,

wherein the input graph nodes indicate, in a graph notation, types of nodes,

wherein the types of the nodes include functions, events, and gateways,

wherein a syntax is defined by the transformation rules;

transform, in response to receiving the input graph, the input graph toward the minimal valid graph using the transformation rules, each of the transformation rules includes a source pattern and a target pattern;

source pattern-match by comparing the input graph with the source patterns of the transformation rules and determining whether the input graph matches the source pattern of one or more transformation rules; and

rule-execute, by replacing the input graph nodes that are determined to match with the source pattern of one or more transformation rules with the target patterns for the one or more transformation rules,

wherein the processor recurrently transforms until either the input graph has been determined to be reduced to the minimal valid graph indicating that the input graph uses the valid syntax, or until it is determined that none of the transformation rules match the input graph indicating that the input graph uses an invalid syntax; and

output, after transforming, a result indicating either that the input graph is determined to use the valid syntax or the input graph is determined to use the invalid syntax.

7. The system of claim 6 , wherein the processor is further configured to result-visualize the transformation result.

8. The system of claim 6 , wherein the processor is further configured to design-facilitate the minimal valid graph and the transformation rules.

9. The system of claim 8 , wherein the processor is further configured to design-facilitate using non-terminal symbol design tools to generate intermediate transformation results.

10. The system of claim 8 , wherein the processor is further configured to design-facilitate using placeholder design tools in the source pattern and the target patterns.

11. A non-transitory computer readable medium configured to provide a method for graph syntax validation when executable instructions are executed, comprising instructions for:

receiving (i) an input graph that contains one or more input graph nodes, the input graph is checked for use of valid syntax or invalid syntax, (ii) transformation rules, and (iii) a minimal valid graph,

wherein the input graph nodes indicate, in a graph notation, types of nodes,

wherein the types of the nodes include functions, events, and gateways,

wherein a syntax is defined by the transformation rules;

transforming, in response to receiving the input graph, the input graph toward the minimal valid graph using the transformation rules, each of the transformation rules includes a source pattern and a target pattern,

further comprising, in the transforming,

source pattern-matching by comparing the input graph with the source pattern of the transformation rules and determining whether the input graph matches the source pattern of one or more transformation rules; and

rule-executing, by replacing the input graph nodes that are determined to match the source pattern of one or more transformation rules with the target patterns for the one or more transformation rules,

wherein the transforming recurs until either the input graph has been determined to be reduced to the minimal valid graph indicating that the input graph uses the valid syntax, or until it is determined that none of the transformation rules match the input graph indicating that the input graph uses an invalid syntax; and

outputting, after the transforming, a result indicating either that the input graph is determined to use the valid syntax or the input graph is determined to use the invalid syntax.

12. The non-transitory computer-readable medium of claim 11 , further comprising result-visualizing, by the processor, the transformation result.

13. The non-transitory computer-readable medium of claim 11 , further comprising design-facilitating, by the processor, the minimal valid graph and the transformation rules.

14. The non-transitory computer-readable medium of claim 13 , wherein the design-facilitating includes the use of non-terminal symbol design tools to generate intermediate transformation results.

15. The non-transitory computer-readable medium of claim 13 , wherein the design-facilitating includes placeholder design tools for use in the source pattern and the target patterns.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2025
From: SOFTWARE GMBH
To: SAG ARIS GMBH
Reel/Frame 072867/0138 →
MERGER Recorded Dec 17, 2024
From: SOFTWARE AG
To: MOSEL BIDCO AG
Reel/Frame 069888/0666 →
CHANGE OF NAME Recorded Dec 17, 2024
From: MOSEL BIDCO AG
To: SOFTWARE GMBH
Reel/Frame 069888/0673 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2014
From: KUMMER, THOMAS; BRUECK, MARKUS
To: SOFTWARE AG
Reel/Frame 032595/0129 →
Continuity (1)
Related Publication 20150286947A1 · Oct 8, 2015