Table of Contents

MS Predicate

The MSGraph have a specific predicate for the path patterns. It will try to implicitly match path pattern between the different scales of the other predicates.

Scale matching

For the MSGraph, the spacing predicate (implicit path pattern) have two implicit usages:

  1. The matched nodes between the predicate belong to the same scale: the spacing pattern works as in a rgg graph model (i.e. as defined in implicit path pattern).
  2. Otherwise, the predicate use refinement edges as default connection. (Even with the implicit “branch” edge '[').

To define if nodes type belong to the same scale, the type graph is used.

Examples

// graph with two nodes connected by a refinement edges
[Axiom ==> A /> B;]
derive(); // application of waiting rules
MSGraph msgraph = MSGraph.get (graph()) ; // get an instance of a MSGraph
// use the MSGraph as query model
msgraph.[A b:B ::> println(b);]; // the node B is found because Node "SPACE" Node look for refinement edges as A and B are not defined in the same scale