Storyboard TTC2011InsertTransitiveEdges
Insert transitive edges.
Start graph:
Transformation:
private int insertTransitiveEdges(Graph graph) { graphPO = new GraphPO(graph).withPatternObjectName("graphPO2"); EdgePO firstEdgePO = graphPO.hasEdges(); EdgePO secondEdgePO = graphPO.hasEdges(); NodePO joinNodePO = firstEdgePO.hasTgt(); secondEdgePO.hasSrc(joinNodePO); NodePO startNodePO = firstEdgePO.hasSrc(); NodePO endNodePO = secondEdgePO.hasTgt(); startNodePO.startNAC().hasOutEdges().hasTgt(endNodePO).endNAC(); startNodePO.startCreate().hasOutEdges().hasTgt(endNodePO); return graphPO.getPattern().allMatches(); }
Transformation with matches:
We have inserted 8 new transitive edges. Result graph: