Softanza
DémarrerEnglish
Softanza
La bibliothèque se documente elle-même · Diagrammes et graphes

stzGraph

292 méthodes propres · 50 formes avec extensions, rangées sous leur méthode

la source: base/graph/stzGraph.ring(s'ouvre dans un nouvel onglet) · Toutes les classes · La référence du domaine : Diagrammes et graphes

Sous chaque méthode, ses extensions (Q CS XT Z ZZ IB W U) : en gras et cochée, elle existe ; barrée, elle n'existe pas. Les extensions et leur sens

Exemples : 3 viennent des tests de la bibliothèque ; 108 ont été composés à partir de la signature de chaque méthode et exécutés pour cette page, sur un objet neuf, par exemple o1 = new stzGraph("g") o1.AddNode("A") o1.AddNode("B") o1.AddNode("C") o1.AddNode("D") o1.AddEdge("A", "B") o1.AddEdge("A", "C") o1.AddEdge("B", "D"). 181 méthodes n'en ont pas encore. Exemples exécutés le 2026-10-03 20:34 dans la bibliothèque au commit 0e72e2e2c.

Méthode
Explication, telle que la source la porte
init
(sans commentaire dans la source : le nom se lit comme une phrase) initaucune extension
HasEngine
Public doorway to the engine-resident graph, so a collaborator (the graphics face, a future analytics face) can hand the HANDLE to an engine metric instead of marshalling a copy of the adjacency.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.HasEngine()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
EngineHandle
(sans commentaire dans la source : le nom se lit comme une phrase) engine handledans la section engine adapter layeraucune extension
Copy
(sans commentaire dans la source : le nom se lit comme une phrase) copydans la section engine adapter layeraucune extension
Id
(sans commentaire dans la source : le nom se lit comme une phrase) iddans la section engine adapter layer
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.Id()
#--> g
composé à partir de la signature, exécuté pour cette page
aucune extension
Name
(sans commentaire dans la source : le nom se lit comme une phrase) namedans la section engine adapter layer
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.Name()
#--> g
composé à partir de la signature, exécuté pour cette page
aucune extension
GraphType
(sans commentaire dans la source : le nom se lit comme une phrase) graph typedans la section engine adapter layer
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.GraphType()
#--> structural
composé à partir de la signature, exécuté pour cette page
aucune extension
SetGraphType
(sans commentaire dans la source : le nom se lit comme une phrase) set graph typedans la section engine adapter layeraucune extension
IsGraph
(sans commentaire dans la source : le nom se lit comme une phrase) is graphdans la section engine adapter layer
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.IsGraph()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
IsAGraph
(sans commentaire dans la source : le nom se lit comme une phrase) is a graphdans la section engine adapter layer
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.IsAGraph()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
IsStzGraph
(sans commentaire dans la source : le nom se lit comme une phrase) is stz graphdans la section engine adapter layer
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.IsStzGraph()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
IsAStzGraph
(sans commentaire dans la source : le nom se lit comme une phrase) is a stz graphdans la section engine adapter layer
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.IsAStzGraph()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
IsStzGraphObject
(sans commentaire dans la source : le nom se lit comme une phrase) is stz graph objectdans la section engine adapter layer
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.IsStzGraphObject()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
IsAStzGraphObject
(sans commentaire dans la source : le nom se lit comme une phrase) is a stz graph objectdans la section engine adapter layer
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.IsAStzGraphObject()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
IsGraphObject
(sans commentaire dans la source : le nom se lit comme une phrase) is graph objectdans la section engine adapter layer
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.IsGraphObject()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
IsAGraphObject
(sans commentaire dans la source : le nom se lit comme une phrase) is a graph objectdans la section engine adapter layer
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.IsAGraphObject()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
(sans commentaire dans la source : le nom se lit comme une phrase) add node 3 exemples exécutésdans la section node operationsQCSXTZZZIBWUXTT
Node
(sans commentaire dans la source : le nom se lit comme une phrase) nodeaussi écrite: NodeByIddans la section node operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.Node("A") )
#--> [ [ "id", "a" ], [ "label", "A" ], [ "properties", [ ] ] ]
composé à partir de la signature, exécuté pour cette page
QCSXTZZZIBWU
NodeExists
(sans commentaire dans la source : le nom se lit comme une phrase) node existsaussi écrite: HasNodedans la section node operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.NodeExists("A")
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
SetNodes
(sans commentaire dans la source : le nom se lit comme une phrase) set nodesdans la section node operationsaucune extension
SetEdges
(sans commentaire dans la source : le nom se lit comme une phrase) set edgesdans la section node operationsaucune extension
Nodes
(sans commentaire dans la source : le nom se lit comme une phrase) nodesdans la section node operationsQCSXTZZZIBWUWF
NodesIds
(sans commentaire dans la source : le nom se lit comme une phrase) nodes idsaussi écrite: NodesNamesdans la section node operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.NodesIds() )
#--> [ "a", "b", "c", "d" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
NodesCount
(sans commentaire dans la source : le nom se lit comme une phrase) nodes countdans la section node operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.NodesCount()
#--> 4
composé à partir de la signature, exécuté pour cette page
aucune extension
(sans commentaire dans la source : le nom se lit comme une phrase) node count 1 exemples exécutésdans la section node operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.NodeCount()
#--> 4
composé à partir de la signature, exécuté pour cette page
aucune extension
HowManyNodes
(sans commentaire dans la source : le nom se lit comme une phrase) how many nodesdans la section node operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.HowManyNodes()
#--> 4
composé à partir de la signature, exécuté pour cette page
aucune extension
HowManyNode
(sans commentaire dans la source : le nom se lit comme une phrase) how many nodedans la section node operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.HowManyNode()
#--> 4
composé à partir de la signature, exécuté pour cette page
aucune extension
NumberOfNodes
(sans commentaire dans la source : le nom se lit comme une phrase) number of nodesdans la section node operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.NumberOfNodes()
#--> 4
composé à partir de la signature, exécuté pour cette page
aucune extension
AddNodes
(sans commentaire dans la source : le nom se lit comme une phrase) add nodesdans la section node operationsaucune extension
InsertNodeBefore
insert node beforeQCSXTZZZIBWUXTT
InsertNodeAfter
insert node afterQCSXTZZZIBWUXTT
InsertNodesBefore
insert multiple nodesaucune extension
InsertNodesAfter
insert multiple nodesaucune extension
RemoveNodes
(sans commentaire dans la source : le nom se lit comme une phrase) remove nodesdans la section node removalaucune extension
RemoveAllNodes
(sans commentaire dans la source : le nom se lit comme une phrase) remove all nodesdans la section node removalaucune extension
Clear
(sans commentaire dans la source : le nom se lit comme une phrase) cleardans la section node removalaucune extension
RemoveTheseNodes
(sans commentaire dans la source : le nom se lit comme une phrase) remove these nodesdans la section node removalaucune extension
RemoveThisNode
(sans commentaire dans la source : le nom se lit comme une phrase) remove this nodedans la section node removalaucune extension
RemoveNode
(sans commentaire dans la source : le nom se lit comme une phrase) remove nodedans la section node removalaucune extension
RemoveNodeAt
(sans commentaire dans la source : le nom se lit comme une phrase) remove node atdans la section node removalaucune extension
RemoveNodeAtPath
(sans commentaire dans la source : le nom se lit comme une phrase) remove node at pathdans la section node removalaucune extension
RemoveNodesAt
(sans commentaire dans la source : le nom se lit comme une phrase) remove nodes atdans la section node removalaucune extension
RemoveNodesAtPaths
(sans commentaire dans la source : le nom se lit comme une phrase) remove nodes at pathsdans la section node removalaucune extension
RemoveEdges
edge removalaucune extension
RemoveAllEdges
edge removalaucune extension
ClearEdges
edge removalaucune extension
RemoveThisEdge
edge removalaucune extension
RemoveEdge
edge removalaucune extension
Disconnect
edge removalaucune extension
RemoveEdgesConnectedTo
edge removalaucune extension
EnableConstraints
Control flagsaucune extension
EnforceConstraints
enabling or disabling checksaucune extension
DisableConstraints
enabling or disabling checksaucune extension
ConstraintsEnabled
enabling or disabling checks
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.ConstraintsEnabled()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
EnableAutoDerive
enabling or disabling checksaucune extension
EnforceAutoDerive
enabling or disabling checksaucune extension
DisableAutoDerive
enabling or disabling checksaucune extension
AutoDeriveEnabled
enabling or disabling checks
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.AutoDeriveEnabled()
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
WithoutConstraints
Temporarily bypass rulesaucune extension
BypassingConstraints
Same as WithoutConstraints: Temporarily bypass rulesaucune extension
CanAddEdge
Pre-flight checks (non-mutating)
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.CanAddEdge("A", "D", "a")
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
WhyCannotAddEdge
pre-flight methodsaussi écrite: WhyCannotConnect
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.WhyCannotAddEdge("a", "a", "a")
#--> Edge can be added
composé à partir de la signature, exécuté pour cette page
aucune extension
(sans commentaire dans la source : le nom se lit comme une phrase) add edge 2 exemples exécutésdans la section edge operationsQCSXTZZZIBWUXTT
Connect
(sans commentaire dans la source : le nom se lit comme une phrase) connectdans la section edge operationsQCSXTZZZIBWUXTTMany
ConnectIfAbsent
But "connect these two if they aren't connected yet" is an ordinary thing to want, and it forced every caller to write the EdgeExists() guard by hand -- or to wrap the call in a try/catch that also swallows the two failures that DO matter here. So the duplicate case, and only the duplicate case, is answered instead of raised: a missing node still raises, and a constraint violation still raises.aussi écrite: AddEdgeIfAbsent · ConnectIfNotConnected
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.ConnectIfAbsent("a", "a")
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
ConnectSequence
(sans commentaire dans la source : le nom se lit comme une phrase) connect sequencedans la section edge operationsQCSXTZZZIBWU
ConnectInSequence
(sans commentaire dans la source : le nom se lit comme une phrase) connect in sequencedans la section edge operationsQCSXTZZZIBWU
AddEdges
(sans commentaire dans la source : le nom se lit comme une phrase) add edgesdans la section edge operationsQCSXTZZZIBWUXTT
ConnectToMany
(sans commentaire dans la source : le nom se lit comme une phrase) connect to manydans la section edge operationsaucune extension
ConnectEdgesXTT
(sans commentaire dans la source : le nom se lit comme une phrase) connect edges xttdans la section edge operationsaucune extension
Edge
(sans commentaire dans la source : le nom se lit comme une phrase) edgedans la section edge operationsaucune extension
EdgeExists
(sans commentaire dans la source : le nom se lit comme une phrase) edge existsaussi écrite: HasEdgedans la section edge operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.EdgeExists("a", "a")
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
Edges
(sans commentaire dans la source : le nom se lit comme une phrase) edgesdans la section edge operationsQCSXTZZZIBWUWF
EdgesCount
(sans commentaire dans la source : le nom se lit comme une phrase) edges countdans la section edge operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.EdgesCount()
#--> 3
composé à partir de la signature, exécuté pour cette page
aucune extension
EdgeCount
(sans commentaire dans la source : le nom se lit comme une phrase) edge countdans la section edge operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.EdgeCount()
#--> 3
composé à partir de la signature, exécuté pour cette page
aucune extension
HowManyEdges
(sans commentaire dans la source : le nom se lit comme une phrase) how many edgesdans la section edge operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.HowManyEdges()
#--> 3
composé à partir de la signature, exécuté pour cette page
aucune extension
HowManyEdge
(sans commentaire dans la source : le nom se lit comme une phrase) how many edgedans la section edge operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.HowManyEdge()
#--> 3
composé à partir de la signature, exécuté pour cette page
aucune extension
NumberOfEdges
(sans commentaire dans la source : le nom se lit comme une phrase) number of edgesdans la section edge operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.NumberOfEdges()
#--> 3
composé à partir de la signature, exécuté pour cette page
aucune extension
EdgeCountBetween
(sans commentaire dans la source : le nom se lit comme une phrase) edge count betweenaussi écrite: EdgesBetweenCountdans la section edge operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.EdgeCountBetween("a", "a")
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
EdgesBetween
(sans commentaire dans la source : le nom se lit comme une phrase) edges betweenaussi écrite: AllEdgesBetweendans la section edge operationsaucune extension
RemoveEdgeByLabel
(sans commentaire dans la source : le nom se lit comme une phrase) remove edge by labeldans la section edge operationsaucune extension
RemoveEdgeWithLabel
(sans commentaire dans la source : le nom se lit comme une phrase) remove edge with labeldans la section edge operationsaucune extension
DisconnectByLabel
(sans commentaire dans la source : le nom se lit comme une phrase) disconnect by labeldans la section edge operationsaucune extension
RemoveAllEdgesBetween
(sans commentaire dans la source : le nom se lit comme une phrase) remove all edges betweendans la section edge operationsaucune extension
RemoveEdgesBetween
(sans commentaire dans la source : le nom se lit comme une phrase) remove edges betweendans la section edge operationsaucune extension
DisconnectAll
(sans commentaire dans la source : le nom se lit comme une phrase) disconnect alldans la section edge operationsaucune extension
UpdateNodes
batch update operations using functionsQCSXTZZZIBWUF
UpdateEdges
batch update operations using functionsQCSXTZZZIBWUF
CopyNode
copy operations
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.CopyNode("A") )
#--> [ [ "id", "a" ], [ "label", "A" ], [ "properties", [ ] ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
DuplicateNode
copy operationsaucune extension
CloneNode
copy operationsaucune extension
DuplicateNodeWithEdges
copy operationsaucune extension
MergeNodes
merge operationsQCSXTZZZIBWU
CombineNodes
merge operationsaucune extension
SplitNode
merge operationsaucune extension
Properties
(sans commentaire dans la source : le nom se lit comme une phrase) propertiesaussi écrite: Propsdans la section managing node propertiesQCSXTZZZIBWU
PropsAndTheirValues
(sans commentaire dans la source : le nom se lit comme une phrase) props and their valuesdans la section managing node propertiesaucune extension
SetNodeLabel
A node could only ever be labelled at birth, via AddNodeXT(id, label); there was no way to say it afterwards, and no way to ask. So a format that reads a node first and learns its label a line later (.stzsim's `add node X` / `label: "..."`) had nowhere to put it.aucune extension
NodeLabel
(sans commentaire dans la source : le nom se lit comme une phrase) node labeldans la section managing node propertiesaucune extension
SetNodeProperty
(sans commentaire dans la source : le nom se lit comme une phrase) set node propertydans la section managing node propertiesaucune extension
SetNodeProp
(sans commentaire dans la source : le nom se lit comme une phrase) set node propdans la section managing node propertiesaucune extension
UpdateNodeProperty
(sans commentaire dans la source : le nom se lit comme une phrase) update node propertydans la section managing node propertiesaucune extension
UpdateNodeProp
(sans commentaire dans la source : le nom se lit comme une phrase) update node propdans la section managing node propertiesaucune extension
SetNodeProperties
(sans commentaire dans la source : le nom se lit comme une phrase) set node propertiesdans la section managing node propertiesaucune extension
SetNodeProps
(sans commentaire dans la source : le nom se lit comme une phrase) set node propsdans la section managing node propertiesaucune extension
NodeProperties
(sans commentaire dans la source : le nom se lit comme une phrase) node propertiesaussi écrite: NodePropsdans la section managing node propertiesQCSXTZZZIBWU
NodePropertiesAndTheirValues
(sans commentaire dans la source : le nom se lit comme une phrase) node properties and their valuesdans la section managing node propertiesaucune extension
NodePropsAndTheirValues
(sans commentaire dans la source : le nom se lit comme une phrase) node props and their valuesdans la section managing node propertiesaucune extension
(sans commentaire dans la source : le nom se lit comme une phrase) node property 1 exemples exécutésaussi écrite: NodePropdans la section managing node propertiesaucune extension
RemoveNodeProperties
(sans commentaire dans la source : le nom se lit comme une phrase) remove node propertiesdans la section managing node propertiesaucune extension
ClearNodeProperties
(sans commentaire dans la source : le nom se lit comme une phrase) clear node propertiesdans la section managing node propertiesaucune extension
RemoveNodeProps
(sans commentaire dans la source : le nom se lit comme une phrase) remove node propsdans la section managing node propertiesaucune extension
ClearNodeProps
(sans commentaire dans la source : le nom se lit comme une phrase) clear node propsdans la section managing node propertiesaucune extension
RemoveAllProperties
(sans commentaire dans la source : le nom se lit comme une phrase) remove all propertiesdans la section managing node propertiesaucune extension
ClearAllProperties
(sans commentaire dans la source : le nom se lit comme une phrase) clear all propertiesdans la section managing node propertiesaucune extension
SetEdgeProperty
(sans commentaire dans la source : le nom se lit comme une phrase) set edge propertyaussi écrite: SetEdgePropdans la section managing node propertiesaucune extension
UpdateEdgeProperty
(sans commentaire dans la source : le nom se lit comme une phrase) update edge propertydans la section managing node propertiesaucune extension
UpdateEdgeProp
(sans commentaire dans la source : le nom se lit comme une phrase) update edge propdans la section managing node propertiesaucune extension
EdgeProperty
(sans commentaire dans la source : le nom se lit comme une phrase) edge propertyaussi écrite: EdgePropdans la section managing node propertiesaucune extension
SetEdgeProperties
(sans commentaire dans la source : le nom se lit comme une phrase) set edge propertiesdans la section managing node propertiesaucune extension
SetEdgeProps
(sans commentaire dans la source : le nom se lit comme une phrase) set edge propsdans la section managing node propertiesaucune extension
EdgeProperties
(sans commentaire dans la source : le nom se lit comme une phrase) edge propertiesaussi écrite: EdgePropsdans la section managing node propertiesQCSXTZZZIBWU
ToCanvas
The doorway to the graphics plane: a graph hands back a CANVAS whose node sizes and colours are computed from the graph's own shape. oG.ToCanvasQ([ :Layout = :Hierarchical, :SizeBy = :Impact ]) It answers an stzCanvas, so ToSVG() and ToPNG() come with it.QCSXTZZZIBWU
GraphCanvas
The face itself, when a caller wants the metrics or the positions rather than only the drawing.aucune extension
PathExists
(sans commentaire dans la source : le nom se lit comme une phrase) path existsdans la section traversal & pathfindingaucune extension
FirstNode
(sans commentaire dans la source : le nom se lit comme une phrase) first nodedans la section traversal & pathfinding
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.FirstNode() )
#--> [ [ "id", "a" ], [ "label", "A" ], [ "properties", [ ] ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
FirstNodeId
(sans commentaire dans la source : le nom se lit comme une phrase) first node iddans la section traversal & pathfinding
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.FirstNodeId()
#--> a
composé à partir de la signature, exécuté pour cette page
aucune extension
LastNode
(sans commentaire dans la source : le nom se lit comme une phrase) last nodedans la section traversal & pathfinding
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.LastNode() )
#--> [ [ "id", "d" ], [ "label", "D" ], [ "properties", [ ] ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
LastNodeId
(sans commentaire dans la source : le nom se lit comme une phrase) last node iddans la section traversal & pathfinding
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.LastNodeId()
#--> d
composé à partir de la signature, exécuté pour cette page
aucune extension
NthNode
(sans commentaire dans la source : le nom se lit comme une phrase) nth nodeaussi écrite: NodeAt · NodeAtPositiondans la section traversal & pathfinding
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.NthNode(2) )
#--> [ [ "id", "b" ], [ "label", "B" ], [ "properties", [ ] ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
NodePosition
(sans commentaire dans la source : le nom se lit comme une phrase) node positiondans la section traversal & pathfinding
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.NodePosition("A")
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
FindNode
(sans commentaire dans la source : le nom se lit comme une phrase) find nodeaussi écrite: PathsToNodedans la section traversal & pathfindingaucune extension
PathsTo
(sans commentaire dans la source : le nom se lit comme une phrase) paths todans la section traversal & pathfindingaucune extension
Paths
(sans commentaire dans la source : le nom se lit comme une phrase) pathsdans la section traversal & pathfindingQCSXTZZZIBWUWF
PathsBetweenXT
(sans commentaire dans la source : le nom se lit comme une phrase) paths between xtdans la section traversal & pathfindingaucune extension
Path
(sans commentaire dans la source : le nom se lit comme une phrase) pathaussi écrite: FirstPath · PathBetween · FirstPathBetweendans la section traversal & pathfindingQCSXTZZZIBWU
Neighbors
(sans commentaire dans la source : le nom se lit comme une phrase) neighborsaussi écrite: NeighborsOf · NeighborsTodans la section traversal & pathfinding
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.Neighbors("A") )
#--> [ "b", "c" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
Incoming
(sans commentaire dans la source : le nom se lit comme une phrase) incomingaussi écrite: IncomingTodans la section traversal & pathfindingaucune extension
HasCyclicDependencies
cycle detection
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.HasCyclicDependencies()
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
ReachableFrom
Both implementations below now agree on that definition AND on the order of the result (node-insertion order). They did not: the engine excluded the start node while the pure-Haro fallback INCLUDED it and returned BFS-discovery order, so the same call answered ["b"] or ["a","b"] depending on whether the graph DLL happened to be loaded (measured 2026-08-07). The engine is the shipped path, so it defines the contract.aussi écrite: ReachableFromNode
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.ReachableFrom("A") )
#--> [ "b", "c", "d" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
BottleneckNodes
(sans commentaire dans la source : le nom se lit comme une phrase) bottleneck nodesdans la section analysis metrics
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.BottleneckNodes() )
#--> [ "a", "b" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
NodeDensity
(sans commentaire dans la source : le nom se lit comme une phrase) node densityaussi écrite: Density · Density01 · NodeDensity01 · DirectedDensity · DirectedDensity01 · DirectedNodeDensity · DirectedNodeDensity01dans la section analysis metrics
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.NodeDensity()
#--> 0.25
composé à partir de la signature, exécuté pour cette page
aucune extension
NodeDensity100
(sans commentaire dans la source : le nom se lit comme une phrase) node density100aussi écrite: Density100 · DirectedDensity100 · NodeDensityPercent · NodeDensityInPercent · DirectedNodeDensity100 · NodeDensityInPercentage · DirectedNodeDensityPercent · DirectedNodeDensityInPercent · DirectedNodeDensityInPercentagedans la section analysis metrics
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.NodeDensity100()
#--> 25
composé à partir de la signature, exécuté pour cette page
aucune extension
UndirectedNodeDensity
(sans commentaire dans la source : le nom se lit comme une phrase) undirected node densityaussi écrite: UndirectedDensity · UndirectedDensity01 · UndirectedNodeDensity01dans la section analysis metrics
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.UndirectedNodeDensity()
#--> 0.50
composé à partir de la signature, exécuté pour cette page
aucune extension
UndirectedNodeDensity100
(sans commentaire dans la source : le nom se lit comme une phrase) undirected node density100aussi écrite: UndirectedDensity100 · UndirectedNodeDensityPercent · UndirectedNodeDensityInPercent · UndirectedNodeDensityInPercentagedans la section analysis metrics
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.UndirectedNodeDensity100()
#--> 50
composé à partir de la signature, exécuté pour cette page
aucune extension
IsSparse
(sans commentaire dans la source : le nom se lit comme une phrase) is sparsedans la section analysis metrics
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.IsSparse()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
IsDense
(sans commentaire dans la source : le nom se lit comme une phrase) is densedans la section analysis metrics
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.IsDense()
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
DensityCategory
(sans commentaire dans la source : le nom se lit comme une phrase) density categoryaussi écrite: DensityLeveldans la section analysis metrics
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.DensityCategory()
#--> sparse
composé à partir de la signature, exécuté pour cette page
aucune extension
LongestPath
(sans commentaire dans la source : le nom se lit comme une phrase) longest pathdans la section analysis metricsaucune extension
CyclicNodes
(sans commentaire dans la source : le nom se lit comme une phrase) cyclic nodesdans la section analysis metricsaucune extension
ParallelizableBranches
1. independence and parallelizationaussi écrite: ParaBranches
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.ParallelizableBranches() )
#--> [ [ "b", "c" ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
DependencyFreeNodes
1. independence and parallelization
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.DependencyFreeNodes() )
#--> [ "a" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
ImpactOf
2. criticality and impact
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.ImpactOf("A")
#--> 3
composé à partir de la signature, exécuté pour cette page
aucune extension
FailureScope
2. criticality and impact
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.FailureScope("A") )
#--> [ "b", "c", "d" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
NodeCriticality
2. criticality and impact
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.NodeCriticality() )
#--> [ [ [ "id", "a" ], [ "criticality", 2 ] ], [ [ "id", "b" ], [ "criticality", 2 ] ], [ [ "id", "c" ], [ "criticality", 1 ] ], [ [ "id", "d" ], [ "criticality", 1 ] ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
MostCriticalNodes
2. criticality and impact
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.MostCriticalNodes(2) )
#--> [ "a", "b" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
FindQ
Opens a rich query on the graph. The finder is an OBJECT, so it carries the Q -- there is no data-shaped twin of a query builder.aucune extension
NodesByType
(sans commentaire dans la source : le nom se lit comme une phrase) nodes by typedans la section rich querying - based on stzgraphfinder classaucune extension
NodesWhere
(sans commentaire dans la source : le nom se lit comme une phrase) nodes wheredans la section rich querying - based on stzgraphfinder classQCSXTZZZIBWUF
NodesByProperty
(sans commentaire dans la source : le nom se lit comme une phrase) nodes by propertydans la section rich querying - based on stzgraphfinder classaucune extension
EdgesWhere
(sans commentaire dans la source : le nom se lit comme une phrase) edges wheredans la section rich querying - based on stzgraphfinder classQCSXTZZZIBWUF
EdgesByProperty
(sans commentaire dans la source : le nom se lit comme une phrase) edges by propertydans la section rich querying - based on stzgraphfinder classaucune extension
PathsWhereF
(sans commentaire dans la source : le nom se lit comme une phrase) paths where fdans la section rich querying - based on stzgraphfinder classaucune extension
QueryQ
advanced quryies - based on stzgraphquery classaucune extension
ShortestPath
graph algorithmsaucune extension
BFS
Breadth-first visit order from a node (engine-backed).aussi écrite: BreadthFirst
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.BFS("A") )
#--> [ "a", "b", "c", "d" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
DFS
Depth-first visit order from a node (engine-backed).aussi écrite: DepthFirst
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.DFS("A") )
#--> [ "a", "b", "d", "c" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
TRUE if the graph is 2-colourable (bipartite). Engine-backed. 1 exemples exécutés
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.IsBipartite()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
StronglyConnectedComponents
Strongly connected components (directed) as a list of node-id groups. Two nodes share a group iff each is reachable from the other. Engine (Kosaraju). Returns [] if the engine is unavailable.aussi écrite: SCC
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.StronglyConnectedComponents() )
#--> [ [ "a" ], [ "c" ], [ "b" ], [ "d" ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
NumberOfStronglyConnectedComponents
Number of strongly connected components. Engine-backed.aussi écrite: NumberOfSCC
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.NumberOfStronglyConnectedComponents()
#--> 4
composé à partir de la signature, exécuté pour cette page
aucune extension
Total weight of a minimum spanning tree over the undirected version of the graph (-1 if empty or not connected). Engine (Kruskal). 1 exemples exécutésaussi écrite: MinimumSpanningTreeWeight
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.MSTWeight()
#--> 3
composé à partir de la signature, exécuté pour cette page
aucune extension
MSTEdges
Minimum spanning tree as a list of [fromNode, toNode, weight] edges. Engine (Kruskal); built Zig-side. [] if not connected/empty.aussi écrite: MinimumSpanningTreeEdges
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.MSTEdges() )
#--> [ [ "a", "b", 1 ], [ "a", "c", 1 ], [ "b", "d", 1 ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
ArticulationPoints
Articulation points (cut vertices) -- nodes whose removal disconnects the (undirected) graph. Engine (Tarjan low-link). List of node ids.aussi écrite: CutVertices
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.ArticulationPoints() )
#--> [ "a", "b" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
Bridges
Bridges (cut edges) -- edges whose removal disconnects the (undirected) graph. Engine (Tarjan low-link). List of [u, v] node-id pairs.aussi écrite: CutEdges
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.Bridges() )
#--> [ [ "b", "d" ], [ "a", "b" ], [ "a", "c" ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
WeightedShortestPath
Weighted shortest path (Dijkstra over edge :weight properties, default 1.0). Returns the node-id path; [] if unreachable.aussi écrite: DijkstraPathaucune extension
WeightedShortestPathLength
Total weight of the minimum-weight path (-1 if unreachable).aussi écrite: DijkstraDistance
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.DijkstraDistance("a", "a")
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
ShortestPathLength
graph algorithmsaucune extension
ConnectedComponents
graph algorithms
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.ConnectedComponents() )
#--> [ [ "a", "b", "d", "c" ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
TopologicalSort
engine-backed graph methods
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.TopologicalSort() )
#--> [ "a", "b", "c", "d" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
InDegree
engine-backed graph methods
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.InDegree("A")
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
OutDegree
engine-backed graph methods
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.OutDegree("A")
#--> 2
composé à partir de la signature, exécuté pour cette page
aucune extension
NumberOfConnectedComponents
engine-backed graph methods
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.NumberOfConnectedComponents()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
IsConnected
engine-backed graph methods
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.IsConnected()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
BetweennessCentrality
(ArticulationPoints is now engine-backed -- see the def above.) Betweenness centrality (Brandes, unweighted) -- computed entirely in the Zig engine. Returns the value for pcNodeId (0 if absent).
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.BetweennessCentrality("A")
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
BetweennessCentralityAll
Betweenness for every node as a list of [ id, value ] pairs.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.BetweennessCentralityAll() )
#--> [ [ "a", 0 ], [ "b", 1 ], [ "c", 0 ], [ "d", 0 ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
ClosenessCentrality
Closeness centrality (engine-backed): reachable / sum(distances). Returns the value for pcNodeId (0 if absent or isolated).
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.ClosenessCentrality("A")
#--> 0.75
composé à partir de la signature, exécuté pour cette page
aucune extension
ClosenessCentralityAll
Closeness for every node as a list of [ id, value ] pairs.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.ClosenessCentralityAll() )
#--> [ [ "a", 0.75 ], [ "b", 1 ], [ "c", 0 ], [ "d", 0 ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
CoreNumber
k-core: core number of pcNodeId -- the largest k for which the node survives in the k-core of the undirected view. Engine (Batagelj-Zaversnik).aussi écrite: KCoreNumber
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.CoreNumber("A")
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
CoreNumbers
Core number for every node as a list of [ id, value ] pairs.aussi écrite: CoreNumbersAll
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.CoreNumbers() )
#--> [ [ "a", 1 ], [ "b", 1 ], [ "c", 1 ], [ "d", 1 ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
PageRank
PageRank (power iteration, damping 0.85) of pcNodeId. Engine-backed.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.PageRank("A")
#--> 0.16
composé à partir de la signature, exécuté pour cette page
aucune extension
PageRankAll
PageRank for every node as a list of [ id, value ] pairs.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.PageRankAll() )
#--> [ [ "a", 0.16 ], [ "b", 0.24 ], [ "c", 0.24 ], [ "d", 0.36 ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
AStarPath
A* shortest path (engine-backed). Uses edge weights plus a coordinate heuristic when nodes carry :x and :y properties (Euclidean by default); with no coordinates it degrades gracefully to a Dijkstra-equivalent. Returns the path as a list of node ids ([] if none).aussi écrite: AStar · AStarShortestPath
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.AStar("A", "a") )
#--> [ "a" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
AStarPathManhattan
A* with the Manhattan (taxicab) heuristic.aucune extension
AStarPathWeighted
A* with an auto-scaled ADMISSIBLE coordinate heuristic -- use when edge weights are not unit geometric distance (the heuristic is scaled by the minimum edge cost-per-distance ratio so the path stays optimal). nMode 1 = Euclidean coords, 2 = Manhattan.aucune extension
SetEdgeWeight
Override the (engine) weight of a directed edge. Used by stzGraphPlanner to push per-optimisation transition costs before an engine A* search. Returns 1 on success, 0 if the edge is unknown.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.SetEdgeWeight("A", "D", 2)
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
AStarPlan
Engine A* for planners: one search returns [ routeList, exploredList ] (the explored/closed order powers explainability metrics). nMode 0 is Dijkstra/UCS -- optimal for any non-negative edge cost.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.AStarPlan("A", "a", 2) )
#--> [ [ "a" ], [ "a" ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
Diameter
Diameter = longest shortest path over all reachable pairs (engine, all-pairs BFS). Replaces the old O(V^2 * BFS) pure-Haro double loop.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.Diameter()
#--> 2
composé à partir de la signature, exécuté pour cette page
aucune extension
Radius
Radius = smallest eccentricity among nodes that reach others.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.Radius()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
Eccentricity
Eccentricity of a node = its longest shortest path to any reachable node.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.Eccentricity("A")
#--> 2
composé à partir de la signature, exécuté pour cette page
aucune extension
Eccentricities
Eccentricity for every node as a list of [ id, value ] pairs.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.Eccentricities() )
#--> [ [ "a", 2 ], [ "b", 1 ], [ "c", 0 ], [ "d", 0 ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
AveragePathLength
Mean shortest-path length over all reachable pairs (engine, all-pairs BFS).aucune extension
MaxFlow
Maximum flow from pcSource to pcSink (Edmonds-Karp, engine). Edge :weight is the capacity (default 1). Returns the flow value.aussi écrite: MaximumFlow
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.MaxFlow("A", "a")
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
MinCut
Minimum cut between pcSource and pcSink: the saturated edges crossing the cut, as a list of [from, to] id pairs (max-flow / min-cut). Engine.aussi écrite: MinimumCutaucune extension
Communities
Community detection (label propagation, engine, undirected view). Returns a list of communities, each a list of node ids.aussi écrite: DetectCommunities
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.Communities() )
#--> [ [ "a", "c" ], [ "b", "d" ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
NumberOfCommunities
engine-backed graph methods
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.NumberOfCommunities()
#--> 2
composé à partir de la signature, exécuté pour cette page
aucune extension
MinCostMaxFlow
Min-cost max-flow from pcSource to pcSink. Edge :weight is capacity, edge :cost is per-unit cost. Returns [ flowValue, totalCost ]. Engine (successive shortest paths).aussi écrite: MinCostFlow
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.MinCostMaxFlow("A", "a") )
#--> [ 0, 0 ]
composé à partir de la signature, exécuté pour cette page
aucune extension
ClusteringCoefficient
Local clustering coefficient (engine, undirected view): edges among a node's neighbours / possible such edges. Replaces the old O(k^2) pure-Haro EdgeExists double loop.aussi écrite: ClusteringCoeff
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.ClusteringCoefficient("A")
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
ClusteringCoefficients
Local clustering coefficient for every node as [ id, value ] pairs.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.ClusteringCoefficients() )
#--> [ [ "a", 0 ], [ "b", 0 ], [ "c", 0 ], [ "d", 0 ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
PathWeight
engine-backed graph methodsaucune extension
ToHashlist
(sans commentaire dans la source : le nom se lit comme une phrase) to hashlistdans la section export and interoperabilityaucune extension
ExportToDOT
(sans commentaire dans la source : le nom se lit comme une phrase) export to dotaussi écrite: Dot · ToDotdans la section export and interoperabilityQCSXTZZZIBWU
ExportToJSON
(sans commentaire dans la source : le nom se lit comme une phrase) export to jsonaussi écrite: Json · ToJsondans la section export and interoperabilityaucune extension
ExportToYAML
(sans commentaire dans la source : le nom se lit comme une phrase) export to yamlaussi écrite: Yaml · ToYamldans la section export and interoperabilityaucune extension
ExportToGraphML
(sans commentaire dans la source : le nom se lit comme une phrase) export to graph mlaussi écrite: AsGraphML · ToGraphMLdans la section graphml formataucune extension
SaveToGraphML
(sans commentaire dans la source : le nom se lit comme une phrase) save to graph mldans la section graphml formataucune extension
SaveAsGraphML
(sans commentaire dans la source : le nom se lit comme une phrase) save as graph mldans la section graphml formataucune extension
LoadFromGraphML
(sans commentaire dans la source : le nom se lit comme une phrase) load from graph mldans la section graphml formataucune extension
LoadGraphML
(sans commentaire dans la source : le nom se lit comme une phrase) load graph mldans la section graphml formataucune extension
ImportFromGraphML
(sans commentaire dans la source : le nom se lit comme une phrase) import from graph mldans la section graphml formataucune extension
ImportGraphML
(sans commentaire dans la source : le nom se lit comme une phrase) import graph mldans la section graphml formataucune extension
Show
(sans commentaire dans la source : le nom se lit comme une phrase) showdans la section visualising in asciiaucune extension
Shwo
(sans commentaire dans la source : le nom se lit comme une phrase) shwodans la section visualising in asciiaucune extension
AsciiArt
The same picture as DATA, for a file, a report, or a test. Show() prints it; these hand it back.aucune extension
AsciiArtHorizontal
... and the horizontal one.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.AsciiArtHorizontal()
#--> ╭─────╮     ╭─────╮     ╭───╮
#--> │ !A! │---->│ !B! │---->│ D │
#--> ╰─────╯     ╰─────╯     ╰───╯
composé à partir de la signature, exécuté pour cette page
aucune extension
Rendition
DISPLAY, not View -- the same correction as stzDiagram's, and for the same reason: `View` is a NOUN in this module (stzGraphView, ToView(), IsView()) meaning a filtered projection of the graph. Using it as a verb for "open a window" made one word mean two things in one namespace. Both older spellings are kept as alternative forms, since stzOrgChart and stzWorkflow call View() internally. -- A VALUE THAT SAYS WHAT IT IS (DN9g) --------------------------------- A GRAPH HANDS OVER ITS NODES AND EDGES AND LETS THE CONSUMER LAY THEM OUT, which is exactly what the display contract's first consumer asked a graph to do. Note that Display(), just below, does something else entirely: it opens an external viewer and returns nothing.aucune extension
RenditionKinds
(sans commentaire dans la source : le nom se lit comme une phrase) rendition kindsdans la section visualising in ascii
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.RenditionKinds() )
#--> [ "graph", "text" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
RenditionAs
(sans commentaire dans la source : le nom se lit comme une phrase) rendition asdans la section visualising in asciiaucune extension
Display
(sans commentaire dans la source : le nom se lit comme une phrase) displaydans la section visualising in asciiaucune extension
View
(sans commentaire dans la source : le nom se lit comme une phrase) viewdans la section visualising in asciiaucune extension
Veiw
(sans commentaire dans la source : le nom se lit comme une phrase) veiwdans la section visualising in asciiaucune extension
ShowHorizontal
(sans commentaire dans la source : le nom se lit comme une phrase) show horizontaldans la section visualising in asciiaucune extension
ShowH
(sans commentaire dans la source : le nom se lit comme une phrase) show hdans la section visualising in asciiaucune extension
ShowVertical
(sans commentaire dans la source : le nom se lit comme une phrase) show verticaldans la section visualising in asciiaucune extension
ShowV
(sans commentaire dans la source : le nom se lit comme une phrase) show vdans la section visualising in asciiaucune extension
Explain
Telling the story of the graphaucune extension
ExplainPath
Telling the story of a particular pathaucune extension
UseRulesFrom
rule managementaucune extension
ApplyDerivationRules
rule managementQCSXTZZZIBWU
CheckConstraintRules
rule management
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.CheckConstraintRules([ 2, 3 ]) )
#--> [ 1, [ ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
RulesApplied
rule managementaucune extension
AddRule
Attach one rule. Plain does the act; the Q form chains (Q convention).QCSXTZZZIBWU
UseRuleSet
Attach every rule of a set (e.g. a domain rule set) to this graph.QCSXTZZZIBWU
CheckRules
The graph checks ITSELF against its attached rules. Returns unified findings [ :rule, :subject, :where, :severity, :message ].aucune extension
RulesAreSound
SOUND IS NO ERROR, not no finding -- StzFindingsAreSound is the house's one answer, and this line counted findings until 2026-09-11. A code graph carrying only warning-severity findings (thirteen of stzCodeRules' rules are warnings) read as not sound, which is the opposite of what setting a rule to warning means.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.RulesAreSound()
#--> 1
composé à partir de la signature, exécuté pour cette page
aucune extension
AttachedRules
(sans commentaire dans la source : le nom se lit comme une phrase) attached rulesdans la section the graph owns its rules (softanza orientation)aucune extension
NumberOfAttachedRules
(sans commentaire dans la source : le nom se lit comme une phrase) number of attached rulesdans la section the graph owns its rules (softanza orientation)
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.NumberOfAttachedRules()
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
AttachedRuleNamed
(sans commentaire dans la source : le nom se lit comme une phrase) attached rule nameddans la section the graph owns its rules (softanza orientation)aucune extension
RulesReport
Print the graph's own rule findings, grouped and gated -- via stzRuleReport (the graph collects itself into it, then shows it).aucune extension
ClearAttachedRules
(sans commentaire dans la source : le nom se lit comme une phrase) clear attached rulesdans la section the graph owns its rules (softanza orientation)aucune extension
Rules
(sans commentaire dans la source : le nom se lit comme une phrase) rulesdans la section the graph owns its rules (softanza orientation)aucune extension
(sans commentaire dans la source : le nom se lit comme une phrase) number of rules 1 exemples exécutésdans la section the graph owns its rules (softanza orientation)
oGraph = new stzGraph("org")
oGraph.LoadFromStzRulz("../_data/bceao_banking.stzrulz")
? "Rules loaded: " + oGraph.NumberOfRules()
? @@( oGraph.RulesSummary()[:Validation] )
? @@( oGraph.RulesSummary()[:Constraint] )
#--> Rules loaded: 2
#--> [ "board_required", "audit_independence" ]
#--> [ ]
test de la bibliothèqueaucune extension
(sans commentaire dans la source : le nom se lit comme une phrase) rules summary 1 exemples exécutésdans la section the graph owns its rules (softanza orientation)
oGraph = new stzGraph("org")
oGraph.LoadFromStzRulz("../_data/bceao_banking.stzrulz")
? "Rules loaded: " + oGraph.NumberOfRules()
? @@( oGraph.RulesSummary()[:Validation] )
? @@( oGraph.RulesSummary()[:Constraint] )
#--> Rules loaded: 2
#--> [ "board_required", "audit_independence" ]
#--> [ ]
test de la bibliothèqueaucune extension
ClearRules
(sans commentaire dans la source : le nom se lit comme une phrase) clear rulesdans la section the graph owns its rules (softanza orientation)aucune extension
ClearConstraintRules
Clear specific typeaucune extension
ClearDerivationRules
(sans commentaire dans la source : le nom se lit comme une phrase) clear derivation rulesdans la section the graph owns its rules (softanza orientation)aucune extension
ClearValidationRules
(sans commentaire dans la source : le nom se lit comme une phrase) clear validation rulesdans la section the graph owns its rules (softanza orientation)aucune extension
RemoveRule
Remove specific ruleaucune extension
HasRule
Check if rule loadedaussi écrite: ContainsRule
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.HasRule("a")
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
ActiveRules
List active rulesaucune extension
Validators
(sans commentaire dans la source : le nom se lit comme une phrase) validatorsdans la section validation
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.Validators() )
#--> [ "dag", "reachability", "completeness", "bottleneck" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
Validate
(sans commentaire dans la source : le nom se lit comme une phrase) validatedans la section validationQCSXTZZZIBWU
ValidateDAG
(sans commentaire dans la source : le nom se lit comme une phrase) validate dagdans la section validation
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.ValidateDAG() )
#--> [ [ "status", "pass" ], [ "rulegroup", "dag" ], [ "domain", "dag" ], [ "issuecount", 0 ], [ "issues", [ ] ], [ "affectednodes", [ ] ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
ValidateReachability
(sans commentaire dans la source : le nom se lit comme une phrase) validate reachabilitydans la section validation
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.ValidateReachability() )
#--> [ [ "status", "pass" ], [ "rulegroup", "reachability" ], [ "domain", "reachability" ], [ "issuecount", 0 ], [ "issues", [ ] ], [ "affectednodes", [ ] ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
ValidateCompleteness
(sans commentaire dans la source : le nom se lit comme une phrase) validate completenessdans la section validation
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.ValidateCompleteness() )
#--> [ [ "status", "pass" ], [ "rulegroup", "completeness" ], [ "domain", "completeness" ], [ "issuecount", 0 ], [ "issues", [ ] ], [ "affectednodes", [ ] ] ]
composé à partir de la signature, exécuté pour cette page
aucune extension
ValidationSummary
(sans commentaire dans la source : le nom se lit comme une phrase) validation summaryaussi écrite: Validation · LastValidation · ValidationResultdans la section validation
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.ValidationSummary() )
#--> [ [ "status", "not_run" ], [ "message", "No validation run yet" ] ]
composé à partir de la signature, exécuté pour cette page
QCSXTZZZIBWU
Anomalies
(sans commentaire dans la source : le nom se lit comme une phrase) anomaliesaussi écrite: Issues · Violationsdans la section validationaucune extension
CompareWith
graph comparisonaussi écrite: Diff · DiffWithQCSXTZZZIBWUMany
CompareWithManyQR
(sans commentaire dans la source : le nom se lit comme une phrase) compare with many qraussi écrite: DiffManyQR · CompareManyQR · diffManyWithQRdans la section multiple graph comparisonaucune extension
CompareMany
(sans commentaire dans la source : le nom se lit comme une phrase) compare manydans la section multiple graph comparisonQCSXTZZZIBWU
LoadFrom
serialization - file format supportaucune extension
SaveTo
serialization - file format supportaucune extension
ExportToStzGraf
.stzgraf formataussi écrite: AsStzGraf · ToStzGrafaucune extension
SaveToStzGraf
.stzgraf formataucune extension
SaveAsStzGraf
.stzgraf formataucune extension
LoadFromStzGraf
.stzgraf formataucune extension
LoadStzGraf
.stzgraf formataucune extension
ExportToStzRulz
.stzrulz formataussi écrite: AsStzRulz · ToStzRulz
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.AsStzRulz()
#--> ruleset "g Rules"
#-->     ruleGroup: structural
#-->     version: 1.0
#--> rules
composé à partir de la signature, exécuté pour cette page
aucune extension
SaveToStzRulz
.stzrulz formataucune extension
SaveAsStzRulz
.stzrulz formataucune extension
.stzrulz format 1 exemples exécutés
oGraph = new stzGraph("org")
oGraph.LoadFromStzRulz("../_data/bceao_banking.stzrulz")
? "Rules loaded: " + oGraph.NumberOfRules()
? @@( oGraph.RulesSummary()[:Validation] )
? @@( oGraph.RulesSummary()[:Constraint] )
#--> Rules loaded: 2
#--> [ "board_required", "audit_independence" ]
#--> [ ]
test de la bibliothèqueaucune extension
LoadStzRulz
.stzrulz formataucune extension
LoadRuleFunctionsFrom
.stzrulf formataucune extension
LoadStzRulf
.stzrulf formataucune extension
ExportToStzSim
.stzsim formataussi écrite: AsStzSim · ToStzSimaucune extension
SaveToStzSim
.stzsim formataucune extension
SaveAsStzSim
.stzsim formataucune extension
ApplySimulation
.stzsim formataucune extension
ApplyStzSim
.stzsim formataucune extension
CyclesAllowed
NOTE// I added those methods after including the GraphType attribute So we can use it in a practical way to enforce the beahvir of some features depending on the graph type (see examples at the end of stzGraphTest.ring file)
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.CyclesAllowed()
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
ShouldAutoDerive
misc.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? o1.ShouldAutoDerive()
#--> 0
composé à partir de la signature, exécuté pour cette page
aucune extension
ValidateByType
misc.
exemple composé
o1 = new stzGraph("g")
o1.AddNode("A") o1.AddNode("B") o1.AddNode("C")
o1.AddNode("D")
o1.AddEdge("A", "B") o1.AddEdge("A", "C")
o1.AddEdge("B", "D")
? @@( o1.ValidateByType() )
#--> [ 1, "" ]
composé à partir de la signature, exécuté pour cette page
aucune extension
UseDefaultDerivations
misc.aucune extension