User Tools

Site Tools


01_user_documentation:07_rgg_xl:03_query_graph:01_derivation

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
01_user_documentation:07_rgg_xl:03_query_graph:01_derivation [2025/09/05 15:46] – created gaetan01_user_documentation:07_rgg_xl:03_query_graph:01_derivation [2025/11/21 12:00] (current) gaetan
Line 1: Line 1:
 ====== Derivation ====== ====== Derivation ======
  
 +Rules of the XL programming language are executed when the control flow reaches them. The execution of a rule finds all matches of the left-hand side and, for each match, performs the statements of the right-hand side. Thus, for a producer implementation which constructs a parallel production, the control flow in the sense of relational growth grammars the family of all executed rules and applies each rule via every possible match in the current graph. This is a true parallel mode of derivation. The different derivation modes enable to use a different control flow.
 +
 +======  ======
 +
 +To choose the derivation mode, the class Graph (Model graph) of the base implementation provides the method setDerivationMode and a set of constants to use as argument, namely 
 +  - ''PARALLEL MODE''
 +  - ''PARALLEL NON DETERMINISTIC MODE''
 +  - ''SEQUENTIAL MODE''
 +  - ''SEQUENTIAL NON DETERMINISTIC MODE''
 +These constants can be combined with two flags as modifiers:
 +  - ''EXCLUDE DELETED FLAG''
 +  - ''INTERPRETIVE FLAG''
 +
 +The default derivation mode is : ''graph.setDerivationMode(PARALLEL_MODE | EXCLUDE_DELETED_FLAG);'' 
 +
 +======  ======
 +
 +{{namespace>01_user_documentation:07_rgg_xl:03_query_graph:01_derivation}}
01_user_documentation/07_rgg_xl/03_query_graph/01_derivation.1757079970.txt.gz · Last modified: 2025/09/05 15:46 by gaetan