diff --git a/pages/advanced-algorithms/available-algorithms.md b/pages/advanced-algorithms/available-algorithms.md
index dc76509e0..7bda70418 100644
--- a/pages/advanced-algorithms/available-algorithms.md
+++ b/pages/advanced-algorithms/available-algorithms.md
@@ -24,7 +24,7 @@ library](/advanced-algorithms/install-mage).
| Algorithms | Lang | Description |
|------------------------------------------------------------------------------------------------------|--------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [algo](/advanced-algorithms/available-algorithms/algo) | C++ | The algo module provides users with a powerful set of graph algorithms, enabling users to perform complex graph-based operations and computations, such as graph traversal, edge detection, and more. |
+| [algo](/advanced-algorithms/available-algorithms/algo) | C++ | The algo module provides users with a powerful set of graph algorithms, enabling users to perform complex graph-based operations and computations, such as graph traversal, edge detection, and more. |
| [betweenness_centrality](/advanced-algorithms/available-algorithms/betweenness_centrality) | C++ | The betweenness centrality of a node is defined as the sum of the of all-pairs shortest paths that run through the node, divided by the number of all-pairs shortest paths in the graph. The algorithm has O(nm) time complexity. |
| [biconnected_components](/advanced-algorithms/available-algorithms/biconnected_components) | C++ | Algorithm for calculating maximal biconnected subgraph. A biconnected subgraph is a subgraph with a property that if any vertex were to be removed, the graph will remain connected. |
| [bipartite_matching](/advanced-algorithms/available-algorithms/bipartite_matching) | C++ | Algorithm for calculating maximum bipartite matching, where matching is a set of nodes chosen in such a way that no two edges share an endpoint. |
@@ -36,6 +36,7 @@ library](/advanced-algorithms/install-mage).
| [graph_coloring](/advanced-algorithms/available-algorithms/graph_coloring) | Python | Algorithm for assigning labels to the graph elements subject to certain constraints. In this form, it is a way of coloring the graph vertices such that no two adjacent vertices are of the same color. |
| [katz_centrality](/advanced-algorithms/available-algorithms/katz_centrality) | C++ | Katz centrality is a centrality measurement that outputs a node's influence based on the number of shortest paths and their weighted length. |
| [kmeans_clustering](/advanced-algorithms/available-algorithms/kmeans_clustering) | Python | An algorithm for clustering given data. |
+| [leiden_community_detection](/advanced-algorithms/available-algorithms/leiden_community_detection) | C++ | The Leiden method for community detection is an improvement over the Louvain method, designed to find communities with maximum modularity in a graph while addressing issues of disconnected communities. Runs in _O_(L\*E) time and _O_(V\*E) space, where *L* is the number of iterations of the algorithm, E is the number of edges, V is the number of nodes. |
| [max_flow](/advanced-algorithms/available-algorithms/max_flow) | Python | An algorithm for finding a flow through a graph such that it is the maximum possible flow. |
| [node_similarity](/advanced-algorithms/available-algorithms/node_similarity) | C++ | A module that contains similarity measures for calculating the similarity between two nodes. |
| [pagerank](/advanced-algorithms/available-algorithms/pagerank) | C++ | Algorithm that yields the influence measurement based on the recursive information about the connected nodes influence. |
diff --git a/pages/advanced-algorithms/available-algorithms/algo.mdx b/pages/advanced-algorithms/available-algorithms/algo.mdx
index 0039dd34b..7a58746dc 100644
--- a/pages/advanced-algorithms/available-algorithms/algo.mdx
+++ b/pages/advanced-algorithms/available-algorithms/algo.mdx
@@ -42,7 +42,8 @@ filters.
{
Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
- `start_node: Node` ➡ The first node of the returned path.
- `end_node: Node` ➡ The final node of the returned path.
- `relationship_types: List[String]` ➡ A list of relationship filters, explained below.
@@ -103,7 +104,9 @@ including any self-referencing relationships.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: List[Node]` ➡ A list of all the input nodes.
{ Output:
}
@@ -146,7 +149,8 @@ In case you don't want to use geospatial types, or you want a custom heuristic,
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
- `start: Node` ➡ The starting node.
- `target: Node` ➡ The target node.
- `config: Map` ➡ The configuration map.
diff --git a/pages/advanced-algorithms/available-algorithms/betweenness_centrality.mdx b/pages/advanced-algorithms/available-algorithms/betweenness_centrality.mdx
index 446ed9c89..d60f5a7a5 100644
--- a/pages/advanced-algorithms/available-algorithms/betweenness_centrality.mdx
+++ b/pages/advanced-algorithms/available-algorithms/betweenness_centrality.mdx
@@ -52,7 +52,9 @@ The procedure returns the betweenness centrality values.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `directed: boolean (default=True)` ➡ If `False` the direction of the relationships is ignored.
- `normalized: boolean (default=True)` ➡ If `True` the betweenness values are normalized by
`2/((n-1)(n-2))` for graphs, and `1/((n-1)(n-2))` for directed graphs where
diff --git a/pages/advanced-algorithms/available-algorithms/biconnected_components.mdx b/pages/advanced-algorithms/available-algorithms/biconnected_components.mdx
index 519f91c61..61d1e0806 100644
--- a/pages/advanced-algorithms/available-algorithms/biconnected_components.mdx
+++ b/pages/advanced-algorithms/available-algorithms/biconnected_components.mdx
@@ -46,7 +46,9 @@ The procedure finds biconnected components.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
diff --git a/pages/advanced-algorithms/available-algorithms/bipartite_matching.mdx b/pages/advanced-algorithms/available-algorithms/bipartite_matching.mdx
index 6f8e00a06..c9992a468 100644
--- a/pages/advanced-algorithms/available-algorithms/bipartite_matching.mdx
+++ b/pages/advanced-algorithms/available-algorithms/bipartite_matching.mdx
@@ -48,7 +48,9 @@ relationship connects nodes between these sets.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
diff --git a/pages/advanced-algorithms/available-algorithms/bridges.mdx b/pages/advanced-algorithms/available-algorithms/bridges.mdx
index eadda75b5..d9054e7fb 100644
--- a/pages/advanced-algorithms/available-algorithms/bridges.mdx
+++ b/pages/advanced-algorithms/available-algorithms/bridges.mdx
@@ -45,7 +45,9 @@ creates two disjoint graph components.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
diff --git a/pages/advanced-algorithms/available-algorithms/community_detection.mdx b/pages/advanced-algorithms/available-algorithms/community_detection.mdx
index ce70b59fd..27d0e6c83 100644
--- a/pages/advanced-algorithms/available-algorithms/community_detection.mdx
+++ b/pages/advanced-algorithms/available-algorithms/community_detection.mdx
@@ -56,10 +56,12 @@ Computes graph communities using the Louvain method.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
-- `weight: string (default=null)` ➡ Specifies the default relationship weight. If not set,
- the algorithm uses the `weight` relationship attribute when present and otherwise
- treats the graph as unweighted.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
+- `weight: string (default=null)` ➡ Specifies the name of the property containing the edge weight. Users can set their own weight property;
+if this property is not specified, the algorithm uses the `weight` edge attribute by default. If neither is set, each edge's weight defaults to `1`.
+To utilize a custom weight property, the user must set the `--storage-properties-on-edges=true` flag.
- `coloring: boolean (default=False)` ➡ If set, use the graph coloring heuristic for effective parallelization.
- `min_graph_shrink: integer (default=100000)` ➡ The graph coarsening optimization stops upon shrinking the graph to this many nodes.
- `community_alg_threshold: double (default=0.000001)` ➡ Controls how long the algorithm iterates. When the gain in modularity
@@ -72,7 +74,7 @@ Computes graph communities using the Louvain method.
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `community_id: integer` ➡ Community ID. Defaults to $-1$ if the node does not belong to any community.
{ Usage:
}
@@ -90,12 +92,14 @@ Computes graph communities over a subgraph using the Louvain method.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `subgraph_nodes: List[Node]` ➡ List of nodes in the subgraph.
- `subgraph_relationships: List[Relationship]` ➡ List of relationships in the subgraph.
-- `weight: str (default=null)` ➡ Specifies the default relationship weight. If not set,
- the algorithm uses the `weight` relationship attribute when present and otherwise
- treats the graph as unweighted.
+- `weight: string (default=null)` ➡ Specifies the name of the property containing the edge weight. Users can set their own weight property;
+if this property is not specified, the algorithm uses the `weight` edge attribute by default. If neither is set, each edge's weight defaults to `1`.
+To utilize a custom weight property, the user must set the `--storage-properties-on-edges=true` flag.
- `coloring: bool (default=False)` ➡ If set, use the graph coloring heuristic for effective parallelization.
- `min_graph_shrink: int (default=100000)` ➡ The graph coarsening optimization stops upon shrinking the graph to this many nodes.
- `community_alg_threshold: double (default=0.000001)` ➡ Controls how long the algorithm iterates. When the gain in modularity
@@ -108,7 +112,7 @@ Computes graph communities over a subgraph using the Louvain method.
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `community_id: int` ➡ Community ID. Defaults to $-1$ if the node does not belong to any community.
{ Usage:
}
diff --git a/pages/advanced-algorithms/available-algorithms/community_detection_online.mdx b/pages/advanced-algorithms/available-algorithms/community_detection_online.mdx
index 3b18fffed..6f7131224 100644
--- a/pages/advanced-algorithms/available-algorithms/community_detection_online.mdx
+++ b/pages/advanced-algorithms/available-algorithms/community_detection_online.mdx
@@ -65,7 +65,9 @@ the user should check if that is indeed the case.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `directed: boolean (default=False)` ➡ Specifies whether the graph is directed. If not set,
the graph is treated as undirected.
- `weighted: boolean (default=False)` ➡ Specifies whether the graph is weighted. If not set,
@@ -88,7 +90,7 @@ the user should check if that is indeed the case.
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `community_id: integer` ➡ Community ID. If the node is not associated with any
community, defaults to $-1$.
@@ -108,11 +110,13 @@ are none, defaults to calling `set()` with default parameters.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `community_id: integer` ➡ Community ID. Defaults to $-1$ if the node does not belong to any community.
{ Usage:
}
@@ -131,7 +135,9 @@ changes applied in the latest graph update and returns the results.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `createdVertices: mgp.List[mgp.Vertex]` ➡ Nodes created in the latest graph
update.
- `createdEdges: mgp.List[mgp.Edge]` ➡ Relationships created in the latest graph update.
@@ -144,7 +150,7 @@ changes applied in the latest graph update and returns the results.
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `community_id: integer` ➡ Community ID. If the node is not associated with any
community, defaults to $-1$.
@@ -182,7 +188,9 @@ Resets the algorithm to its initial state.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
diff --git a/pages/advanced-algorithms/available-algorithms/create.mdx b/pages/advanced-algorithms/available-algorithms/create.mdx
index c3050da1b..32e9aadd4 100644
--- a/pages/advanced-algorithms/available-algorithms/create.mdx
+++ b/pages/advanced-algorithms/available-algorithms/create.mdx
@@ -43,7 +43,9 @@ and sent as a list or map.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `label: List[string]` ➡ A list of all the labels to be added to the new node.
- `props: Map` ➡ A map with key/value pairs to be added as new node's properties.
@@ -86,7 +88,9 @@ Create nodes with given labels and properties. For each property map, a separate
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `label: List[string]` ➡ A list with labels of the new nodes.
- `props: List[Map]` ➡ A list of property maps for new nodes, for each map, a separate node is created.
@@ -145,7 +149,9 @@ thrown.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: any` ➡ Input node(s) - can be a node, node's ID, or a list of nodes and IDs.
- `key: string` ➡ The name of the property which is about to be set.
- `value: any` ➡ The new value of the property.
@@ -200,7 +206,9 @@ Adds the provided properties to the node(s).
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `input_nodes: Any` ➡ Input node(s) - can be a node, node's ID, or a list of nodes and IDs.
- `input_keys: List[string]` ➡ A list of all the property keys to be added to the node(s).
- `input_values: List[Any]` ➡ A list of all the corresponding property values to be added to the node(s).
@@ -261,7 +269,9 @@ thrown.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: any` ➡ Input node(s) - can be a node, node's ID, or a list of nodes and IDs.
- `keys: List[string]` ➡ A list of properties which are to be removed.
@@ -312,7 +322,9 @@ Adds the provided property to the relationship(s).
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `input_rel: Any` ➡ Input relationship(s) - can be a relationship, elationship's ID, or a list of relationships and IDs.
- `input_key: string` ➡ Property key that needs to be added to the relationship(s).
- `input_value: Any` ➡ The corresponding property value that needs to be added to the relationship(s).
@@ -357,7 +369,9 @@ Removes the provided labels from the node(s).
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: Any` ➡ Input node(s) - can be a node, node's ID or a list of nodes and nodes' IDs.
- `label: List[string]` ➡ A list of labels to be removed (if exist) from the nodes(s).
@@ -402,7 +416,9 @@ to.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `from: Node` ➡ The tail node.
- `relationshipType: string` ➡ The relationship type.
- `properties: Map` ➡ Properties of the new relationship(s).
@@ -451,7 +467,9 @@ relationships. If the property already exists it is modified.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `relationships: int|Relationship|List[int|Relationship]` ➡ Relationships that need to be modified are indicated using their object or ID.
- `keys: List[string]` ➡ A list of all the property keys that need to be added to the relationship(s).
- `values: List[Any]` ➡ A list of all the corresponding property values that need to be added to the relationship(s).
@@ -503,7 +521,9 @@ nothing happens.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `relationships: int|Relationship|List[int|Relationship]` ➡ Relationships that need to be modified.
- `keys: List[string]` ➡ A list of property names that need to be removed from the given relationships.
diff --git a/pages/advanced-algorithms/available-algorithms/cugraph.mdx b/pages/advanced-algorithms/available-algorithms/cugraph.mdx
index 7cafb2188..69d92b3de 100644
--- a/pages/advanced-algorithms/available-algorithms/cugraph.mdx
+++ b/pages/advanced-algorithms/available-algorithms/cugraph.mdx
@@ -64,7 +64,7 @@ Procedure for finding the balanced cut clustering of the graph’s nodes.
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `cluster: integer` ➡ Cluster of a node.
{ Usage:
}
@@ -91,7 +91,7 @@ Procedure for finding betweenness centrality scores for all nodes in the graph.
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `betweenness_centrality: float` ➡ Betweenness centrality score of a node.
{ Usage:
}
@@ -164,7 +164,7 @@ graphs.
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `hubs: float` ➡ Hub value of a node.
- `authorities: float` ➡ Authority value of a node.
@@ -197,7 +197,7 @@ Find Katz centrality scores for all nodes in the graph.
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `katz_centrality: float` ➡ Katz centrality score of a node.
{ Usage:
}
@@ -223,7 +223,7 @@ Partition the graph into communities using the Leiden method.
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `partition: integer` ➡ Partition of a node.
{ Usage:
}
@@ -250,7 +250,7 @@ Partition the graph into communities using the Louvain method.
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `partition: integer` ➡ Partition of a node.
{ Usage:
}
@@ -284,7 +284,7 @@ Find PageRank scores for all nodes in the graph.
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `pagerank: float` ➡ PageRank score of a node.
{ Usage:
}
@@ -322,7 +322,7 @@ Find personalized PageRank scores for all nodes in the graph.
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `pagerank: float` ➡ PageRank score of a node.
{ Usage:
}
@@ -356,7 +356,7 @@ Find the spectral clustering of the graph’s nodes.
{ Output:
}
-- `node: Vertex` ➡ Graph node.
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and returned as part of the results.
- `cluster: integer` ➡ Cluster of a node.
{ Usage:
}
diff --git a/pages/advanced-algorithms/available-algorithms/cycles.mdx b/pages/advanced-algorithms/available-algorithms/cycles.mdx
index a0a29a9f4..e7b8993e7 100644
--- a/pages/advanced-algorithms/available-algorithms/cycles.mdx
+++ b/pages/advanced-algorithms/available-algorithms/cycles.mdx
@@ -48,7 +48,9 @@ You can execute this algorithm on [graph projections, subgraphs or portions of t
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
diff --git a/pages/advanced-algorithms/available-algorithms/degree_centrality.mdx b/pages/advanced-algorithms/available-algorithms/degree_centrality.mdx
index 4afe662bf..9faa5725c 100644
--- a/pages/advanced-algorithms/available-algorithms/degree_centrality.mdx
+++ b/pages/advanced-algorithms/available-algorithms/degree_centrality.mdx
@@ -49,7 +49,9 @@ The procedure calculates the degree centrality for each node in the graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `type: string (default="undirected")` ➡ Defines whether the procedure is using "in", "out", or "undirected" relationships.
@@ -73,7 +75,9 @@ The procedure calculates degree centrality for each node of the given subgraph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: list[node]` ➡ Nodes that will be used in the algorithm.
- `relationships: list[relationship]` ➡ Relationships that will be considered for
degree calculation.
diff --git a/pages/advanced-algorithms/available-algorithms/distance_calculator.mdx b/pages/advanced-algorithms/available-algorithms/distance_calculator.mdx
index b648321d5..6bea3f8c3 100644
--- a/pages/advanced-algorithms/available-algorithms/distance_calculator.mdx
+++ b/pages/advanced-algorithms/available-algorithms/distance_calculator.mdx
@@ -48,7 +48,9 @@ Measures a distance from the start node to the end node.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `start: Vertex` ➡ Starting point to measure distance. Required to have `lng` and `lat` properties.
* `end: Vertex` ➡ Ending point to measure distance. Required to have `lng` and `lat` properties.
* `metrics: string` ➡ Can be either "m" or "km". These stand for meters and kilometers respectively.
@@ -78,7 +80,9 @@ the nodes from an end list.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `start_points: List[Vertex]` ➡ Starting points to measure distance collected in a list. Required to have `lng` and `lat` properties. Must be of the same size as `end_points`.
* `end_points: List[Vertex]` ➡ Ending points to measure distance collected in a list. Required to have `lng` and `lat` properties. Must be of the same size as `start_points`.
* `metrics: string` ➡ Can be either "m" or "km". These stand for metres and kilometres respectively.
diff --git a/pages/advanced-algorithms/available-algorithms/elasticsearch_synchronization.mdx b/pages/advanced-algorithms/available-algorithms/elasticsearch_synchronization.mdx
index 3b7f5a948..13989744f 100644
--- a/pages/advanced-algorithms/available-algorithms/elasticsearch_synchronization.mdx
+++ b/pages/advanced-algorithms/available-algorithms/elasticsearch_synchronization.mdx
@@ -74,7 +74,9 @@ certificate**.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `elastic_url: string` -> URL for connecting to the Elasticsearch instance.
- `ca_certs: string` -> Path to the certificate file.
- `elastic_user: string` -> The user trying to connect to Elasticsearch.
@@ -100,7 +102,9 @@ The procedure used for creating Elasticsearch indexes.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `index_name: string` -> Name of the index that needs to be created.
- `schema_path: string` -> Path to the schema from where the index will be loaded.
- `schema_parameters: Dict[string, Any]`
@@ -134,7 +138,9 @@ documents.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `node_index: string` -> The name of the **node index**. Can be used for both **streaming and parallel bulk**.
- `edge_index: string` -> The name of the **edge index**. Can be used for both **streaming and parallel bulk**.
- `thread_count: int` -> **Size of the threadpool** to use for the bulk requests.
@@ -171,7 +177,9 @@ it shouldn't be called by a user explicitly.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `createdObjects: List[Dict[string, Object]]` -> Objects that are captured by a create trigger.
- `node_index: string` -> The name of the **node index**. Can be used for both **streaming and parallel bulk**.
- `edge_index: string` -> The name of the **edge index**. Can be used for both **streaming and parallel bulk**.
@@ -210,7 +218,9 @@ specified differently, all documents will be reindexed.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `updatatedObjects: List[Dict[string, Any]]` -> List of all objects that **were updated and then sent as arguments to this procedure** with the help of the update trigger.
- `source_index: Union[string, List[string]])` -> Identifies **source index (or more of them)** from where documents need to be indexed.
- `target_index: string` -> Identifies **target index** to where documents need to be indexed.
@@ -240,7 +250,9 @@ query. Supports pagination.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `index_name: string` -> Name of the index.
- `query: string` -> Query written as JSON.
- `scroll: int` -> Specifies how long **a consistent view** of the index should be maintained for scrolled search.
@@ -279,7 +291,9 @@ aggregations.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `index_name: string` -> A name of the index.
- `query: string` -> Query written as JSON.
- `size: int` -> Size (per shard) of the batch sent at each iteration.
diff --git a/pages/advanced-algorithms/available-algorithms/export_util.mdx b/pages/advanced-algorithms/available-algorithms/export_util.mdx
index 3df56e5f2..674ae3025 100644
--- a/pages/advanced-algorithms/available-algorithms/export_util.mdx
+++ b/pages/advanced-algorithms/available-algorithms/export_util.mdx
@@ -46,7 +46,9 @@ The procedure exports the graph database to a local file.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `path: string` ➡ Path to the JSON file containing the exported graph database.
- `config: Map` ➡ Map of the configuration with the following keys:
- `stream: boolean (default=False)` ➡ Is the data exported to a stream rather than a file.
@@ -117,7 +119,9 @@ Exports the given nodes and relationships to the JSON format. All nodes from the
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: List[Node]` ➡ The list of nodes that need to be exported.
- `relationships: List[Relationship]` ➡ The list of relationships that need to be exported.
- `path: string` ➡ The path to the JSON file containing the exported data.
@@ -137,7 +141,9 @@ stream.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `path: string` ➡ The path to the Cypher file containing the exported graph database.
- `config: Map` ➡ The map of the configuration with the following keys:
- `stream: boolean (default= False)` ➡ Is the data exported to a stream rather than a file.
@@ -157,7 +163,9 @@ The procedure exports query results to a CSV file.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `query: string` ➡ The query from which the results will be saved to a CSV file.
- `file_path: string` ➡ The path to the CSV file where the query results will be exported.
- `stream: boolean (default=False)` ➡ Will the procedure return a stream of query results in CSV format rather than a file.
@@ -229,7 +237,9 @@ file.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes_list: List[Node]` ➡ The list of nodes that will be exported.
- `relationships_list: List[Relationship]` ➡ The list of relationships that will be exported.
- `path: string (default="./exported_file.csv")` ➡ The path where the exported file will be saved, ending with the filename, for example, `folder_outer/folder/file.csv`.
diff --git a/pages/advanced-algorithms/available-algorithms/gnn_link_prediction.mdx b/pages/advanced-algorithms/available-algorithms/gnn_link_prediction.mdx
index d3fc5ec71..7a1457247 100644
--- a/pages/advanced-algorithms/available-algorithms/gnn_link_prediction.mdx
+++ b/pages/advanced-algorithms/available-algorithms/gnn_link_prediction.mdx
@@ -206,7 +206,9 @@ The `train` procedure is used to train a model and it doesn't take any input par
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -232,7 +234,9 @@ from the last training. The results are in the same format as the results of the
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -259,7 +263,9 @@ edge between two vertices and the user wants to check the model’s evaluation.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `src_vertex: mgp.Vertex` -> Source vertex of the edge.
- `dest_vertex: mgp.Vertex` -> Destination vertex of the edge.
@@ -292,7 +298,9 @@ example.)
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `src_vertex: mgp.Vertex` → Source node.
- `dest_vertices: List[mgp.Vertex]` → Destination nodes. If they are not of the same type, an exception is thrown.
- `k: int` → Number of edges to recommend.
@@ -324,7 +332,9 @@ context will be loaded from the default parameter specified in the
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `path: str` → Path to the folder where the model and the predictor are saved.
{ Output:
}
@@ -349,7 +359,9 @@ implementation reasons.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
diff --git a/pages/advanced-algorithms/available-algorithms/gnn_node_classification.mdx b/pages/advanced-algorithms/available-algorithms/gnn_node_classification.mdx
index 8df46a587..9166b32c6 100644
--- a/pages/advanced-algorithms/available-algorithms/gnn_node_classification.mdx
+++ b/pages/advanced-algorithms/available-algorithms/gnn_node_classification.mdx
@@ -85,7 +85,9 @@ place.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `params: (mgp.Map, optional)`: User defined parameters from query module. Defaults to {}.
| Name | Type | Default | Description |
@@ -139,7 +141,9 @@ model, optimizer, and criterion. Afterward, it performs training.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `num_epochs (int, optional)` ➡ Number of epochs (default:100).
{ Output:
}
@@ -166,7 +170,9 @@ Use the `get_training_data()` procedure to get logged data from training.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -192,7 +198,9 @@ are already 5 models in the directory, the oldest model is deleted.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -215,7 +223,9 @@ This `load_model()` procedure loads the model from the specified folder.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `num (int, optional)` ➡ Ordinal number of model to load from the default path on the disc (default: 0, i.e., newest model).
{ Output:
}
@@ -240,7 +250,9 @@ validation process.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `vertex: mgp.Vertex`➡ Prediction node.
{ Output:
}
@@ -263,7 +275,9 @@ This function resets all variables to default values.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
diff --git a/pages/advanced-algorithms/available-algorithms/graph_analyzer.mdx b/pages/advanced-algorithms/available-algorithms/graph_analyzer.mdx
index 5ff29fe11..395ae7252 100644
--- a/pages/advanced-algorithms/available-algorithms/graph_analyzer.mdx
+++ b/pages/advanced-algorithms/available-algorithms/graph_analyzer.mdx
@@ -62,7 +62,9 @@ The procedure analyzes the graph and returns information.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `analyses: List[string] (default=NULL)` ➡ List of analytics names to be fetched. If provided with NULL, the whole set of analytics will be included.
{ Output:
}
@@ -86,7 +88,9 @@ The procedure analyzes a subgraph and returns information.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `vertices: List[Vertex]` ➡ Subset of vertices within a graph.
- `edges: List[Edge]` ➡ Subset of relationships in a graph for which analytics will take place.
- `analyses: List[string] (default=NULL)` ➡ List of analytics names to be fetched. If provided with NULL, the whole set of analytics will be included.
diff --git a/pages/advanced-algorithms/available-algorithms/graph_coloring.mdx b/pages/advanced-algorithms/available-algorithms/graph_coloring.mdx
index ea8c2eb5a..79b7b580c 100644
--- a/pages/advanced-algorithms/available-algorithms/graph_coloring.mdx
+++ b/pages/advanced-algorithms/available-algorithms/graph_coloring.mdx
@@ -65,7 +65,9 @@ connected with a relationship don’t have the same color.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `parameters: Dict[string, Any] (default={})` ➡ A dictionary that specifies the algorithm configuration by listing [parameters](#parameters).
- `edge_property: string (default=weight)` ➡ Relationship property that stores the relationship weight. Any relationship attribute not present defaults to 1.
@@ -90,7 +92,9 @@ connected with a relationship don’t have the same color.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `vertices: List[Vertex]` ➡ List of vertices in the subgraph.
- `edges: List[Edge]` ➡ List of relationships in the subgraph.
- `parameters: Dict[string, Any] (default={})` ➡ A dictionary that specifies the algorithm configuration by listing [parameters](#parameters).
diff --git a/pages/advanced-algorithms/available-algorithms/graph_util.mdx b/pages/advanced-algorithms/available-algorithms/graph_util.mdx
index 1dcab12f6..fde07c01b 100644
--- a/pages/advanced-algorithms/available-algorithms/graph_util.mdx
+++ b/pages/advanced-algorithms/available-algorithms/graph_util.mdx
@@ -43,7 +43,9 @@ which there is a path to the input node.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `node: Vertex` ➡ The node you want to find ancestors for.
{ Output:
}
@@ -69,7 +71,9 @@ gets the relationship type from the second input parameter `edge_type`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: List[Vertex]` ➡ List of nodes between which we want to create corresponding relationships.
- `edge_type: String` ➡ The name of the relationship that will be created between nodes.
@@ -97,7 +101,9 @@ Typically used to create a subgraph from returned nodes.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: List[Vertex]` ➡ List of nodes for which we want to find corresponding connections, i.e., relationships between them.
{ Output:
}
@@ -123,7 +129,9 @@ with an existing path from the input node.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `node: Vertex` ➡ The node for which we want to find descendants.
diff --git a/pages/advanced-algorithms/available-algorithms/igraphalg.mdx b/pages/advanced-algorithms/available-algorithms/igraphalg.mdx
index c2b2768ff..3c16f95c4 100644
--- a/pages/advanced-algorithms/available-algorithms/igraphalg.mdx
+++ b/pages/advanced-algorithms/available-algorithms/igraphalg.mdx
@@ -53,7 +53,9 @@ is a path with no repeated nodes.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `v: Vertex` ➡ Path's starting node.
- `to: Vertex` ➡ Path's ending node.
- `cutoff: int (default=-1)` ➡ Maximum length of the considered path. If negative, paths of all lengths are considered.
@@ -80,7 +82,9 @@ A *minimum spanning tree* is a subset of the relationships of a connected graph
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `weights: string (default=NULL)` ➡ Property used for relationship weights.
- `directed: bool (default=False)` ➡ If `True` the graph is directed, otherwise it's undirected.
@@ -106,7 +110,9 @@ PageRank computes a ranking of the nodes in graph G based on the structure of th
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `damping: double (default=0.85)` ➡ Damping parameter for PageRank.
- `weights: string (default="weight")` ➡ Property used as a weight. If `None`, weights are set to 1.
- `directed: bool (default=True)` ➡ If `True` the graph is directed, otherwise it's undirected.
@@ -135,7 +141,9 @@ Compute the shortest path in the graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `source: Vertex (default=NULL)` ➡ Path's starting node.
- `target: Vertex (default=NULL)` ➡ Path's ending node.
- `weights: string (default=NULL)` ➡ If `None`, every relationship has
@@ -166,7 +174,9 @@ Compute the shortest path length in the graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `source: Vertex (default=NULL)` ➡ Path's starting node.
- `target: Vertex (default=NULL)` ➡ Path's ending node.
- `weights: string (default=NULL)` ➡ If `None`, every relationship has
@@ -200,7 +210,9 @@ that `u` appears before `v` in the topological sort order.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `mode: string (default="out")` ➡ Specifies how to use the direction of the
relationships. For `out`, the sorting order ensures that each node comes
before all nodes to which it has relationships, so nodes with no incoming
@@ -228,7 +240,9 @@ The maximum flow problem consists of finding a flow through a graph such that it
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `source: Vertex` ➡ Source node from which the maximum flow is calculated.
- `target: Vertex` ➡ Sink node to which the max flow is calculated.
- `capacity: string (default="weight")` ➡ Relationship property which is used as the flow capacity of the relationship.
@@ -254,7 +268,9 @@ Minimum cut calculates the minimum st-cut between two vertices in a graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `source: Vertex` ➡ Source node from which the minimum cut is calculated.
- `target: Vertex` ➡ Sink node to which the minimum cut is calculated.
- `capacity: string (default="weight")` ➡ Relationship property which is used as the capacity of the relationship.
@@ -283,7 +299,9 @@ Finding community structure of a graph using the Leiden algorithm of Traag, van
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `objective_function: string (default="CPM")` ➡ Whether to use the Constant
Potts Model (CPM) or modularity. Must be either `CPM` or `modularity`.
- `weights: string (default=NULL)` ➡ If a string is present, use this property
@@ -322,7 +340,9 @@ Compute all shortest path lengths in the graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `weights: string (default=NULL)` ➡ If `None`, every relationship has
weight/distance/cost 1. If the value is a property name, use that property as
the relationship weight. If a relationship doesn't have a property, the value
diff --git a/pages/advanced-algorithms/available-algorithms/katz_centrality_online.mdx b/pages/advanced-algorithms/available-algorithms/katz_centrality_online.mdx
index f35609599..e992200da 100644
--- a/pages/advanced-algorithms/available-algorithms/katz_centrality_online.mdx
+++ b/pages/advanced-algorithms/available-algorithms/katz_centrality_online.mdx
@@ -75,7 +75,9 @@ Use the procedure to calculate Katz Centrality.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `alpha: double (default=0.2)` ➡ Exponential decay factor defining the walk length
importance.
- `epsilon: double (default=1e-2)` ➡ Convergence tolerance. Minimal difference in two
@@ -103,7 +105,9 @@ procedure has been called before adding changes to the graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -126,7 +130,9 @@ The procedure is used to update the Katz Centrality values.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `created_vertices` ➡ Vertices (nodes) that were created in the last transaction.
- `created_edges` ➡ Edges (relationships) created in a period from the last transaction.
- `deleted_vertices` ➡ Vertices (nodes) deleted from the last transaction.
diff --git a/pages/advanced-algorithms/available-algorithms/kmeans_clustering.mdx b/pages/advanced-algorithms/available-algorithms/kmeans_clustering.mdx
index 13714263f..d53ce5b8c 100644
--- a/pages/advanced-algorithms/available-algorithms/kmeans_clustering.mdx
+++ b/pages/advanced-algorithms/available-algorithms/kmeans_clustering.mdx
@@ -52,7 +52,9 @@ For each node, the `get_clusters()` procedure returns what cluster it belongs to
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `n_clusters : int` ➡ Number of clusters to be formed.
- `embedding_property : str (default: "embedding")` ➡ Node property where embeddings are stored.
- `init : str (default: "k-means")` ➡ Initialization method. If `k-means++` is selected, initial cluster centroids are sampled per an empirical probability distribution of the points’ contribution to the overall inertia. This technique speeds up convergence and is theoretically proven to be `O(logk)`-optimal.
@@ -84,7 +86,9 @@ The `set_clusters()` procedure sets to which cluster each node it belongs to by
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `n_clusters : int` ➡ Number of clusters to be formed.
- `embedding_property : str (default: "embedding")` ➡ Node property where embeddings are stored.
- `cluster_property: str (default: "cluster_id")` ➡ Node property where `cluster_id` will be stored.
diff --git a/pages/advanced-algorithms/available-algorithms/leiden_community_detection.mdx b/pages/advanced-algorithms/available-algorithms/leiden_community_detection.mdx
new file mode 100644
index 000000000..39e8ad0d1
--- /dev/null
+++ b/pages/advanced-algorithms/available-algorithms/leiden_community_detection.mdx
@@ -0,0 +1,273 @@
+---
+title: leiden_community_detection
+description: Explore Memgraph's Leiden community detection capabilities and learn how to analyze the structure of complex networks. Access tutorials and comprehensive documentation to enhance your understanding of Leiden community detection algorithm.
+---
+
+import { Steps } from 'nextra/components'
+import { Callout } from 'nextra/components'
+import { Card, Cards } from 'nextra/components'
+import GitHub from '/components/icons/GitHub'
+
+# leiden_community_detection
+
+Community in graphs mirrors real-world communities, like social circles. In a
+graph, communities are sets of nodes. M. Girvan and M. E. J. Newman note that
+nodes in a community connect more intensely with each other than with outside
+nodes.
+
+This module employs the [Leiden
+algorithm](https://en.wikipedia.org/wiki/Leiden_algorithm) for community
+detection based on paper [*From Louvain to Leiden: guaranteeing well-connected
+communities*](https://arxiv.org/abs/1810.08473). The Leiden algorithm is a
+hierarchical clustering algorithm, that recursively merges communities into
+single nodes by greedily optimizing the modularity and the process repeats in
+the condensed graph. It enhances the Louvain algorithm by addressing its
+limitations, particularly in situations where some identified communities are
+not well-connected. This improvement is made by periodically subdividing
+communities into smaller, well-connected groups. With an $\mathcal{O}(Lm)$
+runtime for $m$ edges and $L$ number of iterations, it suits large graphs. The
+space complexity if $\mathcal{O}(VE)$ for $V$ nodes and $E$ edges.
+
+
+ }
+ title="Source code"
+ href="https://github.com/memgraph/mage/blob/main/cpp/leiden_community_detection_module/leiden_community_detection_module.cpp"
+ />
+
+
+| Trait | Value |
+| ------------------------ | --------------------- |
+| **Module type** | algorithm |
+| **Implementation** | C++ |
+| **Graph direction** | undirected |
+| **Relationship weights** | weighted / unweighted |
+| **Parallelism** | parallel |
+
+## Procedures
+
+
+You can execute this algorithm on [graph projections, subgraphs or portions of
+the graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph).
+
+
+### `get()`
+
+Computes graph communities using the Leiden algorithm. For more information on
+specific algorithm parameters and their use, refer to the paper [*From Louvain
+to Leiden: guaranteeing well-connected
+communities*](https://arxiv.org/abs/1810.08473).
+
+{ Input:
}
+
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object
+ of type
+ Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph)
+ returned by the `project()` function, on which the algorithm is run. If
+ subgraph is not specified, the algorithm is computed on the entire graph by
+ default.
+- `weight: string (default=null)` ➡ Specifies the name of the property
+ containing the edge weight. Users can set their own weight property; if this
+ property is not specified, the algorithm uses the `weight` edge attribute by
+ default. If neither is set, each edge's weight defaults to `1`. To utilize a
+ custom weight property, the user must set the
+ `--storage-properties-on-edges=true` flag.
+- `gamma: double (default=1.0)` ➡ Resolution parameter used when computing the
+ modularity. Higher resolutions lead to more smaller communities, while lower
+ resolutions lead to fewer larger communities.
+- `theta: double (default=0.01)` ➡ Controls the randomness while breaking a
+ community into smaller ones.
+- `resolution_parameter: double (default=0.01)` ➡ Minimum change in modularity
+ that must be achieved when merging nodes within the same community.
+- `max_iterations: int (default=inf)` ➡ Maximum number of iterations the
+ algorithm will perform. If set to infinity, the algorithm will run until
+ convergence is reached.
+
+{ Output:
}
+
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and
+ returned as part of the results.
+- `community_id: integer` ➡ Community ID. Defaults to $-1$ if the node does not
+ belong to any community.
+- `communities: list` ➡ List representing the hierarchy of communities that a
+ node has belonged to across iterations.
+
+{ Usage:
}
+
+Use the following query to detect communities:
+
+```cypher
+CALL leiden_community_detection.get()
+YIELD node, community_id, communities;
+```
+
+
+The algorithm throws an exception if no communities are detected. This can happen if in the first iteration
+all nodes merge into a single community or if each node forms its own. If this occurs, try adjusting the algorithm's `gamma` parameter.
+
+
+### `get_subgraph()`
+
+Computes graph communities over a subgraph using the Leiden method.
+
+{ Input:
}
+
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object
+ of type
+ Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph)
+ returned by the `project()` function, on which the algorithm is run. If
+ subgraph is not specified, the algorithm is computed on the entire graph by
+ default.
+- `subgraph_nodes: List[Node]` ➡ List of nodes in the subgraph.
+- `subgraph_relationships: List[Relationship]` ➡ List of relationships in the
+ subgraph.
+- `weight: string (default=null)` ➡ Specifies the name of the property
+ containing the edge weight. Users can set their own weight property; if this
+ property is not specified, the algorithm uses the `weight` edge attribute by
+ default. If neither is set, each edge's weight defaults to `1`. To utilize a
+ custom weight property, the user must set the
+ `--storage-properties-on-edges=true` flag.
+- `gamma: double (default=1.0)` ➡ Resolution parameter used when computing the
+ modularity. Higher resolutions lead to more smaller communities, while lower
+ resolutions lead to fewer larger communities.
+- `theta: double (default=0.01)` ➡ Controls the randomness while breaking a
+ community into smaller ones.
+- `resolution_parameter: double (default=0.01)` ➡ Minimum change in modularity
+ that must be achieved when merging nodes within the same community.
+- `max_iterations: int (default=inf)` ➡ Maximum number of iterations the
+ algorithm will perform. If set to infinity, the algorithm will run until
+ convergence is reached.
+
+{ Output:
}
+
+- `node: Vertex` ➡ A graph node for which the algorithm was performed and
+ returned as part of the results.
+- `community_id: int` ➡ Community ID. Defaults to $-1$ if the node does not
+ belong to any community.
+- `communities: list` ➡ List representing the hierarchy of communities that a
+ node has belonged to across iterations.
+
+{ Usage:
}
+
+Use the following query to compute communities in a subgraph:
+
+```cypher
+MATCH (a)-[e]-(b)
+WITH COLLECT(a) AS nodes, COLLECT (e) AS relationships
+CALL leiden_community_detection.get_subgraph(nodes, relationships)
+YIELD node, community_id, communities;
+```
+
+## Single Iteration Example
+
+
+
+{ Database state
}
+
+The database contains the following data:
+
+
+
+Created with the following Cypher queries:
+
+```cypher
+MERGE (a: Node {id: 0}) MERGE (b: Node {id: 1}) CREATE (a)-[r: Relation]->(b);
+MERGE (a: Node {id: 0}) MERGE (b: Node {id: 2}) CREATE (a)-[r: Relation]->(b);
+MERGE (a: Node {id: 1}) MERGE (b: Node {id: 2}) CREATE (a)-[r: Relation]->(b);
+MERGE (a: Node {id: 2}) MERGE (b: Node {id: 3}) CREATE (a)-[r: Relation]->(b);
+MERGE (a: Node {id: 3}) MERGE (b: Node {id: 4}) CREATE (a)-[r: Relation]->(b);
+MERGE (a: Node {id: 3}) MERGE (b: Node {id: 5}) CREATE (a)-[r: Relation]->(b);
+MERGE (a: Node {id: 4}) MERGE (b: Node {id: 5}) CREATE (a)-[r: Relation]->(b);
+```
+
+{ Detect communities
}
+
+Get communities using the following query:
+
+```cypher
+CALL leiden_community_detection.get()
+YIELD node, community_id, communities
+RETURN node.id AS node_id, community_id, communities
+ORDER BY node_id;
+```
+
+Results show which nodes belong to community 0, and which to community 1.
+
+```plaintext
++--------------+--------------+--------------+
+| node_id | community_id | communities |
++--------------+--------------+--------------+
+| 0 | 0 | [0] |
+| 1 | 0 | [0] |
+| 2 | 0 | [0] |
+| 3 | 1 | [1] |
+| 4 | 1 | [1] |
+| 5 | 1 | [1] |
++--------------+--------------+--------------+
+```
+
+
+
+## Multiple Iterations Example
+
+
+
+{ Database state
}
+
+The database contains the following data:
+
+
+
+Created with the following Cypher queries:
+
+```cypher
+MERGE (a:Node {id: 1}) MERGE (b:Node {id: 0}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 1}) MERGE (b:Node {id: 10}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 2}) MERGE (b:Node {id: 1}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 2}) MERGE (b:Node {id: 8}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 2}) MERGE (b:Node {id: 10}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 3}) MERGE (b:Node {id: 10}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 4}) MERGE (b:Node {id: 10}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 4}) MERGE (b:Node {id: 2}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 5}) MERGE (b:Node {id: 10}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 5}) MERGE (b:Node {id: 2}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 6}) MERGE (b:Node {id: 2}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 7}) MERGE (b:Node {id: 2}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 8}) MERGE (b:Node {id: 2}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 8}) MERGE (b:Node {id: 10}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 9}) MERGE (b:Node {id: 10}) CREATE (a)-[:RELATION]->(b);
+MERGE (a:Node {id: 10}) MERGE (b:Node {id: 9}) CREATE (a)-[:RELATION]->(b);
+```
+
+{ Detect communities
}
+
+Get communities using the following query:
+
+```cypher
+CALL leiden_community_detection.get()
+YIELD node, community_id, communities
+RETURN node.id AS node_id, community_id, communities
+ORDER BY node_id;
+```
+
+The results show which nodes belong to community 0 and which to community 1, as well as how nodes changed communities across iterations.
+
+```plaintext
++--------------+--------------+--------------+
+| node_id | community_id | communities |
++--------------+--------------+--------------+
+| 0 | 1 | [0, 1] |
+| 1 | 1 | [0, 1] |
+| 2 | 0 | [1, 0] |
+| 3 | 1 | [2, 1] |
+| 4 | 1 | [3, 1] |
+| 5 | 0 | [4, 0] |
+| 6 | 0 | [1, 0] |
+| 7 | 0 | [1, 0] |
+| 8 | 0 | [1, 0] |
+| 9 | 1 | [2, 1] |
+| 10 | 1 | [2, 1] |
++--------------+--------------+--------------+
+```
+
+
diff --git a/pages/advanced-algorithms/available-algorithms/llm_util.mdx b/pages/advanced-algorithms/available-algorithms/llm_util.mdx
index 7c0bc015d..9d5ca0183 100644
--- a/pages/advanced-algorithms/available-algorithms/llm_util.mdx
+++ b/pages/advanced-algorithms/available-algorithms/llm_util.mdx
@@ -45,7 +45,9 @@ schema in a format that can be customized for later use with LLMs.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `output_type: str (default='prompt_ready')` ➡ By default, the graph schema
will include additional context and it will be prompt-ready. If set to 'raw',
it will produce a simpler version that can be adjusted for the prompt. The
diff --git a/pages/advanced-algorithms/available-algorithms/max_flow.mdx b/pages/advanced-algorithms/available-algorithms/max_flow.mdx
index 60573fe9a..5f01436a9 100644
--- a/pages/advanced-algorithms/available-algorithms/max_flow.mdx
+++ b/pages/advanced-algorithms/available-algorithms/max_flow.mdx
@@ -71,7 +71,9 @@ Use the `get_flow()` procedure to calculate the maximum flow.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `start_v: Vertex` ➡ Source node from which the maximum flow is calculated.
- `end_v: Vertex` ➡ Sink node to which the max flow is calculated.
- `edge_property: string (default="weight")` ➡ Relationship property which is used as the flow
@@ -98,7 +100,9 @@ The `get_paths()` procedure returns paths that are a part of the flow with the m
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `start_v: Vertex` ➡ Source node from which the maximum flow is calculated.
- `end_v: Vertex` ➡ Sink node to which the max flow is calculated.
- `edge_property: string (default="weight")` ➡ Relationship property which is used as the flow
diff --git a/pages/advanced-algorithms/available-algorithms/merge.mdx b/pages/advanced-algorithms/available-algorithms/merge.mdx
index 09b1a3ec8..c4b93e99b 100644
--- a/pages/advanced-algorithms/available-algorithms/merge.mdx
+++ b/pages/advanced-algorithms/available-algorithms/merge.mdx
@@ -42,7 +42,9 @@ and sent as a list or map.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `labels: List[string]` ➡ A list of all labels that need to be added to the new node.
- `identProps: Map` ➡ A map with key-value pairs used for identifying which nodes will be merged.
- `createProps: Map` ➡ A map with key-value pairs which represent properties of the node, when the procedure creates a new node.
diff --git a/pages/advanced-algorithms/available-algorithms/meta_util.mdx b/pages/advanced-algorithms/available-algorithms/meta_util.mdx
index ef54c55cc..e34516a37 100644
--- a/pages/advanced-algorithms/available-algorithms/meta_util.mdx
+++ b/pages/advanced-algorithms/available-algorithms/meta_util.mdx
@@ -49,7 +49,9 @@ distinct nodes, that is, a graph schema. If `include_properties` is set to
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `include_properties: bool (default=false)` ➡ If set to `true`, the graph schema will include properties count information.
{ Output:
}
diff --git a/pages/advanced-algorithms/available-algorithms/node.mdx b/pages/advanced-algorithms/available-algorithms/node.mdx
index 3ea41d086..6289e5f93 100644
--- a/pages/advanced-algorithms/available-algorithms/node.mdx
+++ b/pages/advanced-algorithms/available-algorithms/node.mdx
@@ -44,7 +44,9 @@ all distinct relationship types. Relationship types can also be directed:
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `node: Node` ➡ The given node.
- `types: List[string] (default = [])` ➡ A list of relationship types to filter by.
@@ -94,7 +96,9 @@ The procedure checks if the given node has a relationship of a specific type.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `node: Node` ➡ The target node for which the existance of a relationship type is verified.
- `pattern: List[string] (optional)` ➡ A list of relationship types that need to be checked. If the input parameter is empty, procedure will check all types of relationships.
@@ -152,7 +156,9 @@ provided below:
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `node: Node` ➡ The target node for which the existance of relationship types is verified.
- `relationships: List[string]` ➡ A list of relationship types that need to be
checked. If the input parameter is empty, procedure will check all types of
@@ -220,7 +226,9 @@ node degree.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `node: Node` ➡ The input node.
- `type: string, default = ""` ➡ Optionally, you can define the relationship type which will be counted for degree calculation.
@@ -280,7 +288,9 @@ node degree.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `node: Node` ➡ The input node.
- `type: string, default = ""` ➡ Optionally, you can define the relationship type which will be counted for degree calculation.
diff --git a/pages/advanced-algorithms/available-algorithms/node2vec.mdx b/pages/advanced-algorithms/available-algorithms/node2vec.mdx
index c82ea3de0..701a2df60 100644
--- a/pages/advanced-algorithms/available-algorithms/node2vec.mdx
+++ b/pages/advanced-algorithms/available-algorithms/node2vec.mdx
@@ -98,7 +98,9 @@ The procedure returns calculated embeddings and the corresponding list of embedd
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `is_directed : boolean` ➡ If `True`, graph is treated as directed, otherwise
it's treated as undirected
- `p : float` ➡ Return hyperparameter for calculating transition probabilities.
@@ -148,7 +150,9 @@ with the embedding values and returns the corresponding list of embeddings.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `is_directed : boolean` ➡ If `True`, graph is treated as directed, else not
directed
- `p : float` ➡ Return hyperparameter for calculating transition probabilities.
diff --git a/pages/advanced-algorithms/available-algorithms/node2vec_online.mdx b/pages/advanced-algorithms/available-algorithms/node2vec_online.mdx
index b24818400..309a6fd35 100644
--- a/pages/advanced-algorithms/available-algorithms/node2vec_online.mdx
+++ b/pages/advanced-algorithms/available-algorithms/node2vec_online.mdx
@@ -107,7 +107,9 @@ Use the procedure to sample the temporal random walks in the graph. Once the
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `half_life: integer` ➡ Half-life [seconds], used in the temporal walk probability
calculation.
- `max_length: integer` ➡ The maximum length of the sampled temporal random walks.
@@ -140,7 +142,9 @@ the parameters.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `embedding_dimension: integer` ➡ The number of dimensions in the representation of the
embedding vector.
- `learning_rate: float` ➡ The learning rate.
@@ -169,7 +173,9 @@ Use the `udpate()` procedure to (re)calculate embeddings.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `edges: mgp.List[mgp.Edge]` ➡ A list of relationships added to the graph.
Embeddings will be (re)calculated only for the starting and ending nodes of those
new relationships.
@@ -203,7 +209,9 @@ The `get()` procedure returns the node embeddings.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
diff --git a/pages/advanced-algorithms/available-algorithms/node_similarity.mdx b/pages/advanced-algorithms/available-algorithms/node_similarity.mdx
index 186bc5bc9..73a0a69a3 100644
--- a/pages/advanced-algorithms/available-algorithms/node_similarity.mdx
+++ b/pages/advanced-algorithms/available-algorithms/node_similarity.mdx
@@ -71,7 +71,9 @@ The following procedure will calculate the Jaccard similarity between all pairs
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -95,7 +97,9 @@ account pairwise similarities between two set of nodes.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `src_nodes: List[Vertex]` ➡ The first set of nodes.
- `dst_nodes: List[Vertex]` ➡ The second set of nodes.
@@ -127,7 +131,9 @@ The following procedure will calculate the overlap similarity between all pairs
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -151,7 +157,9 @@ account pairwise similarities between two set of nodes.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `src_nodes: List[Vertex]` ➡ The first set of nodes.
- `dst_nodes: List[Vertex]` ➡ The second set of nodes.
@@ -183,7 +191,9 @@ The following procedure will calculate the cosine similarity between all pairs o
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `node1: Vertex` ➡ The first node.
- `node2: Vertex` ➡ The second node.
- `property: str` ➡ The property based on which the cosine similarity will be calculated. If the property is not of the vector type, the error will be thrown.
@@ -210,7 +220,9 @@ similarities between two set of nodes.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `src_nodes: List[Vertex]` ➡ The first set of nodes.
- `dst_nodes: List[Vertex]` ➡ The second set of nodes.
- `property: str` ➡ The property based on which the cosine similarity will be calculated. If the property is not of the vector type, the error will be thrown.
diff --git a/pages/advanced-algorithms/available-algorithms/nodes.mdx b/pages/advanced-algorithms/available-algorithms/nodes.mdx
index 942c3f504..58168eacb 100644
--- a/pages/advanced-algorithms/available-algorithms/nodes.mdx
+++ b/pages/advanced-algorithms/available-algorithms/nodes.mdx
@@ -45,7 +45,9 @@ directed:
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `node: int|node|List[int|node]` ➡ The input nodes given as nodes themselves or their IDs.
- `types: List[string] (default = [])` ➡ A list of relationship types to filter by.
@@ -138,7 +140,9 @@ DELETE` query.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: int|node|List[int|node]` - Nodes to be deleted given as nodes themselves or their IDs.
{ Usage:
}
@@ -176,7 +180,9 @@ Any other syntax results in an exception.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: List[Any]` ➡ A list of input nodes. Elements of the list can be either nodes themselves or their IDs.
- `relationships: List[string]` ➡ A list of relationships to be checked.
@@ -220,7 +226,9 @@ input, essentially creating a linked list of nodes.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: List[Node]` ➡ A list of input nodes that need to be linked.
- `type: string` ➡ The type of relationship that will link two nodes.
diff --git a/pages/advanced-algorithms/available-algorithms/nxalg.mdx b/pages/advanced-algorithms/available-algorithms/nxalg.mdx
index e7812b418..3ebe0a986 100644
--- a/pages/advanced-algorithms/available-algorithms/nxalg.mdx
+++ b/pages/advanced-algorithms/available-algorithms/nxalg.mdx
@@ -67,7 +67,9 @@ Compute all simple shortest paths in the graph. A simple path is a path with no
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `source: Vertex` ➡ Starting node for the path.
- `target: Vertex` ➡ Ending node for the path.
- `weight: string (default=NULL)` ➡ If `NULL`, every relationship has
@@ -100,7 +102,9 @@ is a path with no repeated nodes.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `source: Vertex` ➡ Starting node for the path.
- `target: Vertex` ➡ Ending node for the path.
- `cutoff: List[integer] (default=NULL)` ➡ Depth to stop the search. Only paths
@@ -129,7 +133,9 @@ Returns all nodes having a path to `source` in `G`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `source: Vertex` ➡ Starting node. Calculates all nodes that have a path to
`source`.
@@ -157,7 +163,9 @@ Centrality identifies the most important nodes within a graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `k: string (default=NULL)` ➡ If `k` is not `None`, use `k` node samples to
estimate betweenness. The value of `k <= n` where `n` is the number of nodes
in the graph. Higher values give a better approximation.
@@ -191,7 +199,9 @@ Iterate over relationships in a breadth-first-search starting at source.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `source: Vertex` ➡ Specify starting node for breadth-first search. This
function iterates only over relationships in the component that are reachable
from this node.
@@ -220,7 +230,9 @@ Returns an iterator of predecessors in breadth-first-search from source.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `source: Vertex` ➡ Specify starting node for breadth-first search.
- `depth_limit: integer (default=NULL)` ➡ Specify the maximum search depth.
@@ -246,7 +258,9 @@ Returns an iterator of successors in breadth-first-search from source.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `source: Vertex` ➡ Specify starting node for breadth-first search.
- `depth_limit: integer (default=NULL)` ➡ Specify the maximum search depth.
@@ -273,7 +287,9 @@ Returns an oriented tree constructed from of a breadth-first-search starting at
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `source: Vertex` ➡ Specify starting node for breadth-first search.
- `reversed: boolean (default=False)` ➡ If `True`, traverse a directed graph in
the reverse direction.
@@ -310,7 +326,9 @@ Notice that by convention a dyad is considered a biconnected component.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -337,7 +355,9 @@ relationship that does not belong to any cycle.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `root: Vertex (default=NULL)` ➡ A node in the graph `G`. If specified, only
the bridges in the connected components containing this node will be returned.
@@ -365,7 +385,9 @@ The *center* is the set of nodes with eccentricity equal to the radius.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -396,7 +418,9 @@ cycle or path is called a *chain*.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `root: Vertex[default=NULL]` ➡ Optional. A node in the graph `G`. If
specified, only the chain decomposition for the connected component containing
this node will be returned. This node indicates the root of the depth-first
@@ -429,7 +453,9 @@ any relationship intersections.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -454,7 +480,9 @@ in a graph tend to cluster together.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `nodes: List[Vertex] (default=NULL)` ➡ Compute clustering for nodes in this container.
* `weight: string (default=NULL)` ➡ The relationship attribute that holds the
numerical value used as a weight. If `None`, then each relationship has weight
@@ -486,7 +514,9 @@ closed walks of different lengths starting at node `u` and ending at node `v`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -516,7 +546,9 @@ that node.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -543,7 +575,9 @@ in the graph with respect to the node degree.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `x: string (default="out")` ➡ The degree type for source node (directed graphs only). Can be "in" or "out".
* `y: string (default="in")` ➡ The degree type for target node (directed graphs only). Can be "in" or "out".
* `weight: string (default=NULL)` ➡ The relationship attribute that holds the
@@ -572,7 +606,9 @@ Returns all nodes reachable from `source` in `G`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `source: Vertex` ➡ A node in `G`.
{ Output:
}
@@ -596,7 +632,9 @@ Returns nodes in a depth-first-search post-ordering starting at source.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `source: Vertex` ➡ Specify the maximum search depth.
* `depth_limit: integer (default=NULL)` ➡ Specify the maximum search depth.
@@ -621,7 +659,9 @@ Returns a dictionary of predecessors in depth-first-search from source.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `source: Vertex` ➡ Specify the maximum search depth.
* `depth_limit: integer (default=NULL)` ➡ Specify the maximum search depth.
@@ -647,7 +687,9 @@ Returns nodes in a depth-first-search pre-ordering starting at source.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `source: Vertex` ➡ Specify starting node for depth-first search and return nodes in the component reachable from this node.
* `depth_limit: integer (default=NULL)` ➡ Specify the maximum search depth.
@@ -672,7 +714,9 @@ Returns a dictionary of successors in depth-first-search from source.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `source: Vertex` ➡ Specify starting node for depth-first search and return
nodes in the component reachable from this node.
* `depth_limit: integer (default=NULL)` ➡ Specify the maximum search depth.
@@ -699,7 +743,9 @@ Returns an oriented tree constructed from a depth-first-search from source.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `source: Vertex` ➡ Specify starting node for depth-first search.
* `depth_limit: integer (default=NULL)` ➡ Specify the maximum search depth.
@@ -726,7 +772,9 @@ The diameter is the maximum eccentricity.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -752,7 +800,9 @@ that node.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `start: Vertex` ➡ The start node of dominance computation.
{ Output:
}
@@ -780,7 +830,9 @@ that every node not in `D` is adjacent to at least one member of `D`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `start: Vertex` ➡ Node to use as a starting point for the algorithm.
{ Output:
}
@@ -807,7 +859,9 @@ all relationships are generated.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `source: Vertex` ➡ The node from which the traversal begins. If `None`, then a
source is chosen arbitrarily and repeatedly until all relationships from each
node in the graph are searched.
@@ -852,7 +906,9 @@ all relationships are generated.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `source: Vertex (default=NULL)` ➡ The node from which the traversal begins. If
`None`, then a source is chosen arbitrarily and repeatedly until all
relationships from each node in the graph are searched.
@@ -902,7 +958,9 @@ suffer from recursion depth issues.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -928,7 +986,9 @@ relationships is determined by `orientation`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `source: List[Vertex] (default=NULL)` ➡ The node from which the traversal
begins. If `None`, then a source is chosen arbitrarily and repeatedly until
all relationships from each node in the graph are searched.
@@ -974,7 +1034,9 @@ in cycles in a directed graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `weight: string (default=NULL)` ➡ Attribute to use for node weights. If
`None`, the weight defaults to 1.
@@ -1001,7 +1063,9 @@ efficiency of all pairs of nodes.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1026,7 +1090,9 @@ in which nodes are colored.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `strategy` ➡ The parameter `function(G,colors)` is a function (or a string
representing a function) that provides the coloring strategy, by returning nodes
in the order they should be colored. `G` is the graph, and `colors` is a
@@ -1082,7 +1148,9 @@ RETURN node, color;
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1104,7 +1172,9 @@ Returns `True` if `G` has a path from `source` to `target`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `source: Vertex` ➡ Starting node for the path.
* `target: Vertex` ➡ Ending node for the path.
@@ -1131,7 +1201,9 @@ does not strictly dominate any other node That dominates `n`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `start: Vertex` ➡ The start node of dominance computation.
{ Output:
}
@@ -1157,7 +1229,9 @@ with maximum in-degree equal to 1.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1182,7 +1256,9 @@ graph is not AT-free and `False` is returned.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1207,7 +1283,9 @@ in `u` one in `v`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1230,7 +1308,9 @@ maximum in-degree equal to 1.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1254,7 +1334,9 @@ the cycle).
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1280,7 +1362,9 @@ graph distance between `x` and `y`, independently of the choice of `x` and `y`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1305,7 +1389,9 @@ from the set incident on it.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `cover: List[Edge]` ➡ A list of relationships to be checked.
{ Output:
}
@@ -1332,7 +1418,9 @@ relationship of a graph exactly once.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1357,7 +1445,9 @@ as a single undirected relationship in a multigraph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1381,7 +1471,9 @@ in-neighbors and no out-neighbors.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `n: Vertex` ➡ A node in `G`.
{ Output:
}
@@ -1406,7 +1498,9 @@ The two graphs `G1` and `G2` must be the same type.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `nodes1: List[Vertex]` ➡ Nodes in `G1`.
* `edges1: List[Edge]` ➡ Edges in `G1`.
* `nodes2: List[Vertex]` ➡ Nodes in `G2`.
@@ -1441,7 +1535,9 @@ Returns `True` if `G` is semi-Eulerian.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1466,7 +1562,9 @@ sequence is adjacent in the graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `nodes: List[Vertex]` ➡ A list of one or more nodes in the graph `G`.
{ Output:
}
@@ -1497,7 +1595,9 @@ An undirected graph is *strongly regular* if:
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1521,7 +1621,9 @@ A *tournament* is a directed graph, with neither self-loops nor multi-relationsh
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1546,7 +1648,9 @@ as a single undirected relationship in a multigraph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1570,7 +1674,9 @@ in-neighbors and no out-neighbors.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1594,7 +1700,9 @@ Compute the Jaccard coefficient of all node pairs in `ebunch`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `ebunch: List[List[Vertex]] (default=NULL)` ➡ Jaccard coefficient will be
computed for each pair of nodes given in the iterable. The pairs must be given
as 2-tuples `(u, v)` where `u` and `v` are nodes in the graph. If `ebunch` is
@@ -1624,7 +1732,9 @@ adjacent (sharing `k-1` nodes) k-cliques.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `k: integer` ➡ Size of the smallest clique.
* `cliques: List[List[Vertex]] (default=NULL)` ➡ Precomputed cliques (use
networkx.find_cliques(G)).
@@ -1657,7 +1767,9 @@ bounds of the number of node independent paths between two nodes.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `density: double (default=0.95)` ➡ Density relaxation threshold.
{ Output:
}
@@ -1685,7 +1797,9 @@ largest `k` for which the graph is k-edge-connected.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `k: integer` ➡ Desired relationship connectivity.
{ Output:
}
@@ -1714,7 +1828,9 @@ node.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1736,7 +1852,9 @@ Compute the lowest common ancestor of the given pair of nodes.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `node1: Vertex` ➡ A node in the graph.
* `node2: Vertex` ➡ A node in the graph.
@@ -1764,7 +1882,9 @@ matching.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -1788,7 +1908,9 @@ that connects all of the vertices together without any cycles.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `weight: string (default="weight")` ➡ Data key to use for relationship
weights.
* `algorithm: string (default="kruskal")` ➡ The algorithm to use when finding a
@@ -1821,7 +1943,9 @@ nodes for a weighted graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `sources: List[Vertex]` ➡ Starting nodes for paths. If this is a set
containing a single node, then all paths computed by this function will start
from that node. If there are two or more nodes in the set, the computed paths
@@ -1864,7 +1988,9 @@ reachable nodes for a weighted graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `sources: List[Vertex]` ➡ Starting nodes for paths. If this is a set
containing a single node, then all paths computed by this function will start
from that node. If there are two or more nodes in the set, the computed paths
@@ -1909,7 +2035,9 @@ to `v`. If `T` is not specified, it is assumed to be the set of all nodes not in
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `nbunch1: List[Vertex]` ➡ List of nodes in the graph representing the `S` set of
nodes whose node boundary will be returned.
* `nbunch2: List[Vertex] (default=NULL)` ➡ List of nodes representing the `T`
@@ -1949,7 +2077,9 @@ directed and undirected graphs.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `source: Vertex (default=NULL)` ➡ Source node.
* `target: Vertex (default=NULL)` ➡ Target node.
@@ -1975,7 +2105,9 @@ of the size of the node boundary of `S` and the cardinality of `S`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `s: List[Vertex]` ➡ A sequence of nodes in `G`.
{ Output:
}
@@ -2007,7 +2139,9 @@ by an Erdos Renyi model.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `k: integer (default=NULL)` ➡ The number of communities in `G`. If `k` is not
set, the function will use a default community detection algorithm to set it.
@@ -2036,7 +2170,9 @@ pages.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `alpha: double (default=0.85)` ➡ Damping parameter for PageRank.
* `personalization: string (default=NULL)` ➡ The “personalization vector”
consisting of a dictionary with a subset of graph nodes as a key and maps
@@ -2085,7 +2221,9 @@ to node `u`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `nodes: List[Vertex]` ➡ Compute reciprocity for nodes in this container.
{ Output:
}
@@ -2111,7 +2249,9 @@ Compute shortest paths in the graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `source: Vertex (default=NULL)` ➡ Starting node for the path. If not
specified, compute shortest path lengths using all nodes as source nodes.
* `target: Vertex (default=NULL)` ➡ Ending node for the path. If not specified,
@@ -2155,7 +2295,9 @@ Compute shortest path lengths in the graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `source: Vertex (default=NULL)` ➡ Starting node for the path. If not
specified, compute shortest path lengths using all nodes as source nodes.
* `target: Vertex (default=NULL)` ➡ Ending node for the path. If not specified,
@@ -2202,7 +2344,9 @@ algorithm. There may be better algorithms for some cases.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -2225,7 +2369,9 @@ Returns nodes in strongly connected components of a graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -2249,7 +2395,9 @@ implies that `u` appears before `v` in the topological sort order.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -2273,7 +2421,9 @@ graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -2302,7 +2452,9 @@ center nodes to the target node.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `center_nodes: List[Vertex]` ➡ A nonempty set of nodes in the graph `G` that
represent the centers of the Voronoi cells.
* `weight: string (default=NULL)` ➡ The relationship attribute (or an arbitrary
@@ -2336,7 +2488,9 @@ counted.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `weight: string (default=NULL)` ➡ The relationship attribute to use as
distance when computing shortest-path distances. This is passed directly to the
`networkx.shortest_path_length` function.
diff --git a/pages/advanced-algorithms/available-algorithms/pagerank.mdx b/pages/advanced-algorithms/available-algorithms/pagerank.mdx
index 833269a01..79ba97e49 100644
--- a/pages/advanced-algorithms/available-algorithms/pagerank.mdx
+++ b/pages/advanced-algorithms/available-algorithms/pagerank.mdx
@@ -66,7 +66,9 @@ The procedure calculates the PageRank.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
* `max_iterations: integer (default=100)` ➡ Maximum number of iterations within PageRank
algorithm.
* `damping_factor: double (default=0.85)` ➡ PageRanks damping factor. This is the
diff --git a/pages/advanced-algorithms/available-algorithms/pagerank_online.mdx b/pages/advanced-algorithms/available-algorithms/pagerank_online.mdx
index f51a49c8c..e4d639a94 100644
--- a/pages/advanced-algorithms/available-algorithms/pagerank_online.mdx
+++ b/pages/advanced-algorithms/available-algorithms/pagerank_online.mdx
@@ -89,8 +89,9 @@ parallelism, but is not applicable as it doesn't set the streaming context for t
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
-- `walks_per_node: integer (default=10)` ➡ Number of sampled walks per node. Note that increasing the number of walks per node will make the execution run for more time.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+- `walks_per_node: integer (default=10)` ➡ Number of sampled walks per node.
- `walk_stop_epsilon: double (default=0.1)` ➡ The probability of stopping when deriving
the random walk. On average, it will create walks of length `1 /
walk_stop_epsilon`.
@@ -117,7 +118,9 @@ has been called, before adding changes to the graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -142,7 +145,8 @@ changes in the graph.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
- `created_vertices` ➡ Nodes that were created in the last transaction.
- `created_edges` ➡ Relationships created in a period from the last transaction.
- `deleted_vertices` ➡ Nodes deleted from the last transaction.
diff --git a/pages/advanced-algorithms/available-algorithms/path.mdx b/pages/advanced-algorithms/available-algorithms/path.mdx
index 173bfd747..faf8e4f34 100644
--- a/pages/advanced-algorithms/available-algorithms/path.mdx
+++ b/pages/advanced-algorithms/available-algorithms/path.mdx
@@ -44,7 +44,9 @@ node-relationship-node order.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `path: Path` ➡ The given path.
{ Output:
}
@@ -79,7 +81,9 @@ paths can't be combined.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `first: Path` ➡ The first path.
- `second: Path` ➡ The second path.
@@ -116,7 +120,9 @@ The function returns a subpath of the given path.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `path: Path` ➡ The given path.
- `offset: int = 0` ➡ The first node index from the given path to be included in the subpath.
- `length: int = -1` ➡ Length of the subpath. If set to -1 the subpath will end on the final node of the given path.
@@ -158,7 +164,9 @@ from the last node of the path to one of the nodes in the current relationship
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `start_node: Node` - The starting node of the path.
- `relationships: Map` - A map with the key `rel` that contains a list of the given relationships.
@@ -207,7 +215,9 @@ inside the allowed number of hops, which satisfy relationship and label filters.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `start: any` ➡ A node, node ID, or a list of nodes and/or node IDs from which the function will expand.
- `relationships: List[string]` ➡ A list of relationships which the expanding
will follow. Relationships can be filtered using the notation described below.
diff --git a/pages/advanced-algorithms/available-algorithms/refactor.mdx b/pages/advanced-algorithms/available-algorithms/refactor.mdx
index 662a5ba6d..43c9a5dbf 100644
--- a/pages/advanced-algorithms/available-algorithms/refactor.mdx
+++ b/pages/advanced-algorithms/available-algorithms/refactor.mdx
@@ -37,7 +37,9 @@ Redirect the relationship to use a new start (from) node.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `relationship: Relationship` ➡ Relationship that needs to be modified.
- `new_from: Node` ➡ THe new start (from) node.
@@ -65,7 +67,9 @@ Redirect the relationship to use a new end (to) node.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `relationship: Relationship` ➡ Relationship that needs to be modified.
- `new_to: Node` ➡ The new end (to) node.
@@ -99,7 +103,9 @@ the `old_label` the procedure doesn't modify it.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `old_label: str` ➡ The old label name.
- `new_label: str` ➡ The new label name.
- `nodes: List[Node]` ➡ The list of nodes to be modified.
@@ -146,7 +152,9 @@ doesn't contain the `old_property` the procedure doesn't modify it.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `old_property: str` ➡ The old property name.
- `new_label: str` ➡ The new property name.
- `nodes: List[Node]` ➡ The list of nodes to be modified.
@@ -191,7 +199,9 @@ and new category nodes to organize a graph based on these categories.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `original_prop_key: string` ➡ The property key on the existing nodes used to
determine the category.
- `rel_type: string` ➡ The type of relationship to be created between the
@@ -262,7 +272,9 @@ properties during the cloning process.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: List[Node]` ➡ A list of nodes intended for duplication.
- `withRelationships: bool (default = false)` ➡ If set to `true`, the function
will also clone the relationships of the original nodes, connecting them to
@@ -341,7 +353,9 @@ will be cloned.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: List[Node]` ➡ A list of nodes which form the subgraph intended for
duplication.
- `rels: List[Relationship] (default = [])` ➡ A list of relationships intended
@@ -439,7 +453,9 @@ nodes connected by relationships.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `paths: List[Path]` ➡ A list of paths which define the subgraph intended for duplication.
- `config: Map (default = {})` ➡ Configuration parameters explained below.
@@ -452,7 +468,9 @@ nodes connected by relationships.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `input: int` ➡ ID of the original node which was cloned.
- `output: Node` ➡ The new cloned node.
@@ -534,7 +552,9 @@ requirements results in an exception.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes: Any` ➡ A node, node ID, or list of nodes and node IDs.
- `type: string` ➡ The type of the new relationship.
@@ -580,7 +600,9 @@ Invert the direction of a given relationship.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `relationship: Any` ➡ A relationship, relationship ID, or a list of
relationships or relationship IDs.
@@ -629,7 +651,9 @@ an exception if both lists contain the same value.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `entity: Node|Relationship` ➡ The node or relationship on which the property value will be normalized.
- `property_key: string` ➡ The key of the property to be normalized.
- `true_values: List[Any]` ➡ A list of property values that will be normalized to `true`.
@@ -669,7 +693,9 @@ end node of the given relationship with the given types.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `relationships: Relationship|int|List[Relationship|int]` ➡ Relationships to be changed into a node defined by their ID, themselves, or a list of any of those two.
- `labels: List[string]` ➡ A list of labels that should assigned to the newly created node.
- `outType: String` ➡ The type of the outgoing relationship from the newly created node.
@@ -718,7 +744,9 @@ graph) and reconnects the remaining nodes.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `path: Path` ➡ The given path.
- `nodes: List[Node]` ➡ A list of nodes to be deleted.
- `config: Map` ➡ Config for reconnecting nodes.
@@ -831,7 +859,9 @@ The procedure changes the relationship type.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `oldType: string` ➡ The relationship type that will be renamed.
- `newType: string` ➡ The new relationship type.
- `rels: List[Relationship]` ➡ The list of relationships whose types will be renamed.
@@ -874,7 +904,9 @@ Renames the property of a relationship.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `old_property: string` ➡ The relationship property that will be renamed.
- `new_property: string` ➡ The new property name.
- `rels: List[Relationship]` ➡ The list of relationships whose properties will be renamed.
diff --git a/pages/advanced-algorithms/available-algorithms/set_cover.mdx b/pages/advanced-algorithms/available-algorithms/set_cover.mdx
index 6021bb007..6763f8078 100644
--- a/pages/advanced-algorithms/available-algorithms/set_cover.mdx
+++ b/pages/advanced-algorithms/available-algorithms/set_cover.mdx
@@ -56,7 +56,9 @@ You can execute this algorithm on [graph projections, subgraphs or portions of t
The input itself represents an *element-set* pair with each row of the lists.
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `element_vertexes: List[Vertex]` ➡ List of element nodes in pairs.
- `set_vertexes: List[Vertex]` ➡ List of set nodes in pairs.
@@ -84,7 +86,9 @@ The input itself represents an *element-set* pair with each row of the lists.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `element_vertexes: List[Vertex]` ➡ List of element nodes in pairs.
- `set_vertexes: List[Vertex]` ➡ List of set nodes in pairs.
diff --git a/pages/advanced-algorithms/available-algorithms/set_property.mdx b/pages/advanced-algorithms/available-algorithms/set_property.mdx
index 0eee79b4d..b14d8fe9e 100644
--- a/pages/advanced-algorithms/available-algorithms/set_property.mdx
+++ b/pages/advanced-algorithms/available-algorithms/set_property.mdx
@@ -40,7 +40,9 @@ Copies properties from one node to another.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `sourceNode: Vertex` ➡ The node you want to copy property from.
- `sourceProperties: List[string]` ➡ List of properties you want to copy from.
- `targetNode: Vertex` ➡ The node you want to copy property to.
@@ -64,7 +66,9 @@ Copies properties from one node to another relationship.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `sourceNode: Vertex` ➡ The node you want to copy property from.
- `sourceProperties: List[string]` ➡ List of properties you want to copy from.
- `targetRel: Relationship` ➡ The relationship you want to copy property to.
@@ -88,7 +92,9 @@ Copies properties from one relationship to another node.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `sourceRel: Relationship` ➡ The relationship you want to copy property from.
- `sourceProperties: List[string]` ➡ List of properties you want to copy from.
- `targetNode: Vertex` ➡ The node you want to copy property to.
@@ -112,7 +118,9 @@ Copies properties from one relationship to another.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `sourceRel: Vertex` ➡ The relationship you want to copy property from.
- `sourceProperties: List[string]` ➡ List of properties you want to copy from.
- `targetRel: Vertex` ➡ The relationship you want to copy property to.
diff --git a/pages/advanced-algorithms/available-algorithms/tgn.mdx b/pages/advanced-algorithms/available-algorithms/tgn.mdx
index 0d9708a26..8a7420108 100644
--- a/pages/advanced-algorithms/available-algorithms/tgn.mdx
+++ b/pages/advanced-algorithms/available-algorithms/tgn.mdx
@@ -187,7 +187,9 @@ values.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `params: mgp.Map` ➡ A dictionary containing the following parameters:
| Name | Type | Default | Description |
@@ -233,7 +235,9 @@ The `update()` procedure scrapes data from edges, including `edge_features` and
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `edges: mgp.List[mgp.Edges]` ➡ List of edges to preprocess (that arrive in a
stream to Memgraph). If a batch is full, `train` or `eval` starts, depending
on the mode.
@@ -265,7 +269,9 @@ The `get()` procedure retrieves calculated embeddings for each vertex.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -289,7 +295,9 @@ Use the `set_eval()` procedure to change the **TGN** mode to `eval`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -311,7 +319,9 @@ Epoch count starts from 1.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
@@ -339,7 +349,9 @@ rounds on `train` edges and `eval` on evaluation edges.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `num_epochs: integer` ➡ Perform additional epoch training and evaluation **after**
the stream is done.
@@ -371,7 +383,9 @@ the link prediction task.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `src: mgp.Vertex` ➡ Source vertex of the link prediction.
- `dest: mgp.Vertex` ➡ Destination vertex of the link prediction.
diff --git a/pages/advanced-algorithms/available-algorithms/tsp.mdx b/pages/advanced-algorithms/available-algorithms/tsp.mdx
index 5ffc657db..e2409156d 100644
--- a/pages/advanced-algorithms/available-algorithms/tsp.mdx
+++ b/pages/advanced-algorithms/available-algorithms/tsp.mdx
@@ -66,7 +66,9 @@ Use the procedure to solve the travelling salesman problem.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `points: List[Vertex]` ➡ List of points to calculate TSP on. Required to have *lng* and *lat* properties.
- `method: string (default=1.5_approx)` ➡ Method used for optimization. Can be either ***1.5_approx***, ***2_approx*** or ***greedy***.
diff --git a/pages/advanced-algorithms/available-algorithms/union_find.mdx b/pages/advanced-algorithms/available-algorithms/union_find.mdx
index a1fb880e6..b00032139 100644
--- a/pages/advanced-algorithms/available-algorithms/union_find.mdx
+++ b/pages/advanced-algorithms/available-algorithms/union_find.mdx
@@ -62,7 +62,9 @@ different connected component.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `nodes1: Union[Vertex, List[Vertex]]` ➡ First value (or list thereof) in connectedness calculation.
- `nodes2: Union[Vertex, List[Vertex]]` ➡ Second value (or list thereof) in connectedness calculation.
- `mode: string (default="pairwise")` ➡ Mode of combining `nodes1` and `nodes2`. Can be ***p*** or ***pairwise*** for a pairwise product, or ***c*** or ***cartesian*** for a Cartesian product of the arguments. Pairwise by default.
diff --git a/pages/advanced-algorithms/available-algorithms/uuid_generator.mdx b/pages/advanced-algorithms/available-algorithms/uuid_generator.mdx
index 9b05fd6ac..4ef79dfc2 100644
--- a/pages/advanced-algorithms/available-algorithms/uuid_generator.mdx
+++ b/pages/advanced-algorithms/available-algorithms/uuid_generator.mdx
@@ -43,7 +43,9 @@ Use the procedure to the the UUID string.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
diff --git a/pages/advanced-algorithms/available-algorithms/vrp.mdx b/pages/advanced-algorithms/available-algorithms/vrp.mdx
index 7b6a63bb0..f4106f6e6 100644
--- a/pages/advanced-algorithms/available-algorithms/vrp.mdx
+++ b/pages/advanced-algorithms/available-algorithms/vrp.mdx
@@ -65,7 +65,9 @@ The procedure returns a vehicle route.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `depot_node: Vertex` ➡ Depot node with its corresponding *lat* and *lng* coordinate properties.
- `number_of_vehicles: integer = 1` ➡ Designates how many vehicles are used. Set to 1 by default.
diff --git a/pages/advanced-algorithms/available-algorithms/weakly_connected_components.mdx b/pages/advanced-algorithms/available-algorithms/weakly_connected_components.mdx
index 24d54fd59..c10b413d4 100644
--- a/pages/advanced-algorithms/available-algorithms/weakly_connected_components.mdx
+++ b/pages/advanced-algorithms/available-algorithms/weakly_connected_components.mdx
@@ -46,7 +46,9 @@ Use the procedure to get disconnected componentes.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
{ Output:
}
diff --git a/pages/advanced-algorithms/available-algorithms/xml_module.mdx b/pages/advanced-algorithms/available-algorithms/xml_module.mdx
index 37e7e04f7..dacbdd2da 100644
--- a/pages/advanced-algorithms/available-algorithms/xml_module.mdx
+++ b/pages/advanced-algorithms/available-algorithms/xml_module.mdx
@@ -53,7 +53,9 @@ via an element name prefixed with an `_`.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `xml_input: string` ➡ input XML string.
- `simple: bool (default = false)` ➡ configuration bool used for specifying whether simple mode should be used. [**Simple configuration explanation**](#simple-configuration-explanation).
- `path: string (default = "")` ➡ path to the XML file that needs to be parsed. If the path is not empty, the `xml_input` string is ignored, and only the file is parsed.
@@ -321,7 +323,9 @@ must be used to avoid errors: `. .. *`. The current node is the root node.
{ Input:
}
-- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+- `subgraph: Graph` (**OPTIONAL**) ➡ A specific subgraph, which is an [object of type Graph](/advanced-algorithms/run-algorithms#run-procedures-on-subgraph) returned by the `project()` function, on which the algorithm is run.
+If subgraph is not specified, the algorithm is computed on the entire graph by default.
+
- `xml_url: string` ➡ The input URL where the XML file is located.
- `simple: bool (default = false)` ➡ A bool used for specifying whether simple mode should be used.
- `path: string (default = "")` ➡ A path to the XML file that needs to be parsed. If the path is not empty, `xml_input` string is ignored, and only the file is parsed.
diff --git a/pages/custom-query-modules/cpp/cpp-api.md b/pages/custom-query-modules/cpp/cpp-api.md
index 37bcb12c8..4700d923c 100644
--- a/pages/custom-query-modules/cpp/cpp-api.md
+++ b/pages/custom-query-modules/cpp/cpp-api.md
@@ -6,30 +6,36 @@ description: Get your hands on the API documentation for mgp.hpp, covering decla
# Query modules C++ API
This is the API documentation for `mgp.hpp`, which contains declarations of all
-functions in the C++ API for implementing query module procedures and functions.
-The source file can be found in the Memgraph installation directory, under
-`/usr/include/memgraph`.
+functions in the C++ API for implementing query module procedures and
+functions. The source file can be found in the Memgraph installation directory,
+under `/usr/include/memgraph`.
-To see how to implement query modules in C++, take a look at
-[the example we provided](/custom-query-modules/python/python-example).
+To see how to implement query modules in C++, take a look at [the example we
+provided](/custom-query-modules/python/python-example).
If you install any C++ modules after running Memgraph, you’ll need to [load
-them into Memgraph](/custom-query-modules/manage-query-modules#loading-query-modules) or restart
-Memgraph in order to use them.
+them into
+Memgraph](/custom-query-modules/manage-query-modules#loading-query-modules) or
+restart Memgraph in order to use them.
## Functions and procedures
-With this API it’s possible to extend your Cypher queries with **functions** and **procedures** with
-`AddProcedure` and `AddFunction`.
+With this API it’s possible to extend your Cypher queries with **functions**
+and **procedures** with `AddProcedure` and `AddFunction`.
-The API needs memory access to add procedures and functions, this can be done with either `mgp::MemoryDispatcherGuard guard(memory);` or `mgp::memory = memory;`, where the use of the former is advised since `mgp::memory = memory;` is not thread-safe and will be deprecated in the future.
+The API needs memory access to add procedures and functions, this can be done
+with `mgp::MemoryDispatcherGuard guard(memory);`. Old code used `mgp::memory =
+memory;`, but this is not thread-safe and has been deprecated. v2.18.1 onwards
+you should modify your C++ modules and recompile. v2.21 onwards setting
+`mgp::memory` will cause a compilation error, so the guard has to be used.
-Functions are simple operations that return a single value and can be used in any expression or predicate.
-
-Procedures are more complex computations that may modify the graph, and their output is available to
-later processing steps in your query. A procedure may only be run from `CALL` clauses.
-The output is a stream of **records** that is made accessible with a `YIELD` clause.
+Functions are simple operations that return a single value and can be used in
+any expression or predicate.
+Procedures are more complex computations that may modify the graph, and their
+output is available to later processing steps in your query. A procedure may
+only be run from `CALL` clauses. The output is a stream of **records** that is
+made accessible with a `YIELD` clause.
### AddProcedure
diff --git a/pages/custom-query-modules/cpp/cpp-example.mdx b/pages/custom-query-modules/cpp/cpp-example.mdx
index b55987665..aa29847f6 100644
--- a/pages/custom-query-modules/cpp/cpp-example.mdx
+++ b/pages/custom-query-modules/cpp/cpp-example.mdx
@@ -392,13 +392,16 @@ void RandomWalk(mgp_list *args, mgp_graph *memgraph_graph, mgp_result *result, m
-As `mgp::memory` is a global object, that means all of the procedures and
+`mgp::memory` was a global object, that meant all of the procedures and
functions in a single shared library will refer to the same `mgp::memory`
-object. As a result, calling such callables simultaneously from multiple threads
-will lead to incorrect memory usage. This also includes the case when the same
-callable is called from different user sessions. This is a constraint when using
-`mgp::memory` so the use of the thread-safe `MemoryDispatcherGuard guard(memory)`
-is advised instead.
+object. As a result, calling such callables simultaneously from multiple
+threads will lead to incorrect memory usage. This also includes the case when
+the same callable is called from different user sessions. For some versions of
+memgraph this was deprecated and the use of the thread-safe
+`MemoryDispatcherGuard guard(memory)` is advised instead. Its has now been
+removed and C++ modules should be recompiled for v2.18.1+. v2.21 onwards
+setting `mgp::memory` will cause a compilation error, so the guard has to be
+used.
diff --git a/pages/data-visualization/install-and-connect.mdx b/pages/data-visualization/install-and-connect.mdx
index ba463ea2b..7548a825c 100644
--- a/pages/data-visualization/install-and-connect.mdx
+++ b/pages/data-visualization/install-and-connect.mdx
@@ -261,6 +261,9 @@ Configure Memgraph Lab using the following environment variables when running it
| `QUICK_CONNECT_MG_IS_ENCRYPTED` | Turn SSL on/off for quick connect | `boolean` | `false` |
| `PORT` | Lab app default listening port | `integer` | `3000` |
| `REQUEST_BODY_LIMIT_MB` | Limit for request body size in MB | `integer` | `20` |
+| `SSL_IS_ENABLED` | Enable or disable SSL | `boolean` | `false` |
+| `SSL_CERT_PATH` | Path to SSL certificate to be used | `string` | `./ssl/cert.pem` |
+| `SSL_KEY_PATH` | Path to SSL key to be used | `string` | `./ssl/key.pem` |
| `STORAGE_MG_HOST` | `(Enterprise only)` Memgraph host for the Lab remote storage | `string` | |
| `STORAGE_MG_PORT` | `(Enterprise only)` Memgraph port for the Lab remote storage | `number` | |
| `STORAGE_MG_IS_ENCRYPTED` | `(Enterprise only)` Memgraph SSL on/off for the Lab remote storage | `boolean` | |
diff --git a/pages/data-visualization/user-manual/custom-ssl-certificates.mdx b/pages/data-visualization/user-manual/custom-ssl-certificates.mdx
new file mode 100644
index 000000000..4978f3344
--- /dev/null
+++ b/pages/data-visualization/user-manual/custom-ssl-certificates.mdx
@@ -0,0 +1,89 @@
+---
+title: Custom SSL certificates
+description: Use your own SSL certificate to use Memgraph Lab with HTTPS protocol.
+---
+
+## Instantiating Memgraph Lab with custom SSL certificate
+
+Memgraph Lab supports using custom SSL certificates, ensuring secure communication over HTTPS. To set up
+SSL on Memgraph Lab you will need to configure a Dockerfile using a valid SSL certificate.
+
+### Options for generating SSL certificates
+
+There are various options to generate SSL certificates. Check out the steps on
+how to do that with [OpenSSL](#openssl) and [Let's Encrypt](#lets-encrypt).
+
+
+#### OpenSSL
+[OpenSSL](https://github.com/openssl/openssl) is a widely used tool for
+generating SSL certificates. You can create a self-signed certificate using the
+following commands:
+
+1. Generate a private key:
+ ```bash
+ openssl genrsa -out key.pem 2048
+ ```
+
+2. Generate a self-signed certificate:
+ ```bash
+ openssl req -new -x509 -key key.pem -out cert.pem -days 365
+ ```
+
+However, this option has an expiration date and is not signed by a publicly trusted
+[certificate authority](https://en.wikipedia.org/wiki/Certificate_authority), which means
+you will most likely receive a security warning from your browser while using it.
+
+#### Let's Encrypt
+[Let's Encrypt](https://letsencrypt.org/) is a free, automated, and open certificate authority
+that provides SSL certificates. You can use tools like Certbot to obtain and install certificates.
+To use Let's Encrypt:
+
+1. Install Certbot.
+2. Run Certbot to obtain your certificates:
+ ```bash
+ sudo certbot certonly --standalone -d yourdomain.com
+ ```
+
+This will generate your SSL certificate and key, typically located in
+`/etc/letsencrypt/live/yourdomain.com/`.
+
+### Dockerfile setup
+
+To run Memgraph Lab with custom SSL certificates, you need to create a
+Dockerfile that specifies how to build the Docker image with your certificates.
+
+You will need to set the `SSL_CERT_PATH` and `SSL_KEY_PATH` environment variables
+to override the default `./ssl/` path used by Lab running in the container to
+determine the SSL certificate location. After that, you should copy your certificates
+(located in the `ssl` folder at the same location as your `Dockerfile`, for example)
+into the container at the specified path.
+
+#### Example Dockerfile
+```docker
+FROM memgraph/lab:latest
+
+# Environment variables
+ENV SSL_IS_ENABLED=true
+ENV SSL_CERT_PATH=./myssl/cert.pem
+ENV SSL_KEY_PATH=./myssl/key.pem
+
+# COPY source_on_your_machine destination_in_container
+COPY ssl/ ./myssl/
+
+EXPOSE 3000
+```
+
+#### Building and running the Docker container
+
+1. **Create the SSL Directory**: Make sure your SSL certificate and key are placed
+in a directory specified as `COPY` source in your Dockerfile.
+
+2. **Build the Docker Image**: Run the following command to build your Docker image:
+ `docker build -t memgraph-lab-ssl .`
+
+3. **Run the Docker Container**: Start the container using the following command:
+ `docker run -p 3000:3000 memgraph-lab-ssl`
+
+4. **Access Memgraph Lab**: You can now access Memgraph Lab in your web browser at
+`https://localhost:3000`. Ensure to configure your browser to trust the self-signed
+certificate if you are using one.
\ No newline at end of file
diff --git a/pages/fundamentals/data-types.mdx b/pages/fundamentals/data-types.mdx
index f538ec70b..58eb51ea5 100644
--- a/pages/fundamentals/data-types.mdx
+++ b/pages/fundamentals/data-types.mdx
@@ -51,6 +51,7 @@ the supported types. Below is a table of supported data types.
| [`LocalDateTime`](#localdatetime) | Date and time without the timezone. |
| [`ZonedDateTime`](#zoneddatetime) | Date and time in a specific timezone. |
| [`Enum`](#enum) | An enumeration value. |
+| [`Point`](#point) | 2D or 3D point either in Cartesian or WGS format. |
@@ -772,6 +773,176 @@ and display it nicely in the client-side results.
+## Point
+
+Point is a spatial data type consisting of 2D or 3D locations in the Cartesian
+or WGS84 system. The coordinates of the location are stored as a 64-bit `Float`
+numbers. Each point type has an associated coordinate reference system (CRS)
+and a spatial reference identifier (SRID). Points can be created with the
+[point function](#point-functions). For fast queries, points can
+leverage the [point index](/fundamentals/indexes#point-index).
+
+### Coordinate Reference Systems (CRS)
+
+Memgraph supports four Coordinate Reference Systems (CRS) for spatial data, divided into two categories:
+
+1. **WGS-84 CRS** models points on the Earth’s surface using longitude and latitude based on the [WGS84](https://epsg.io/4326) system.
+2. **Cartesian CRS** models points in Euclidean space using standard Cartesian coordinates.
+
+
+
+**CRS compatibility** - Points in different CRSs cannot be directly compared or converted into one another, even if they share the same type (e.g., both WGS-84 or Cartesian). For example, a 2D point cannot be used in a 3D range query.
+
+
+
+#### WGS-84
+
+A WGS-84 point consists of longitude, latitude, and height if the point is 3D.
+Longitude and latitude are specified in degrees while height is specified in meters.
+Longitude has to be in the [-180, 180] range, latitude in the [-90, 90] range and height can be any `Float` value.
+
+| Point type | SRID | CRS |
+| :---------------: | :----------: | :--------: |
+| WGS-84 2D | 4326 | wgs-84 |
+| WGS-84 3D | 4979 | wgs-84-3d |
+
+
+#### Cartesian
+
+Two types of Cartesian Coordinate Reference Systems (CRS) are supported, defining points in a flat, Euclidean space.
+Cartesian points can be either 2D or 3D. They consist of coordinates x, y, and z if the point is 3D. All coordinates can be any `Float` value.
+
+| Point type | SRID | CRS |
+| :---------------: | :----------: | :-----------: |
+| Cartesian 2D | 7203 | cartesian |
+| Cartesian 3D | 9157 | cartesian-3d |
+
+
+### Point functions
+
+#### point(parameters: map) -> [null, point]
+
+Point function is used to create the point data type. It takes in a map of parameters to create the type. The point type can be specified using its `crs` or `srid`.
+If any of the parameters evaluates to null the point function returns null. Here are the examples of how to create a point, depending on the`crs` and `srd`:
+
+- **WGS-84 2D** - A 2D geographic point in the **WGS-84 CRS** can be created in one of two ways:
+
+ - **longitude** and **latitude** (if these are specified, and the `crs` is not, then the `crs` is assumed to be `WGS-84`).
+ ```cypher
+ RETURN point({longitude:-73.93, latitude:40.73}) AS new_york;
+ ```
+ - **x** and **y** (in this case, the `crs` or `srid` must be specified or will be assumed to be Cartesian).
+ ```cypher
+ RETURN point({x:-73.93, y:40.73, crs:'wgs-84'}) AS new_york;
+ ```
+
+- **WGS 84 3D** - A 3D geographic point in the **WGS-84 CRS** can be created in one of two ways:
+
+ - **longitude**, **latitude**, and either **height** or **z** (if these are specified, and the `crs` is not, then the `crs` is assumed to be `WGS-84-3D`).
+ ```cypher
+ RETURN point({longitude:-73.93, latitude:40.73, height:10}) AS new_york;
+ RETURN point({longitude:-73.93, latitude:40.73, z:10}) AS new_york;
+ ```
+ - **x**, **y**, and **z** (in this case, the `crs` or `srid` must be specified, or will be assumed to be Cartesian-3D).
+ ```cypher
+ RETURN point({x:-73.93, y:40.73, z:10, srid:4979}) AS new_york;
+ ```
+
+- **Cartesian 2D** - A 2D Cartesian point can be created by providing:
+
+ - **x** and **y** (when provided, the point is assumed to reside in a two-dimensional Cartesian system).
+ ```cypher
+ RETURN point({x:0, y:1}) AS cartesian_point;
+ ```
+
+- **Cartesian 3D** - A 3D Cartesian point can be created by providing:
+
+ - **x**, **y**, and **z** (when provided, the point is assumed to reside in a three-dimensional Cartesian system).
+ ```cypher
+ RETURN point({x:0, y:1, z:2}) AS cartesian_point;
+ ```
+
+#### point.distance(x: [null, point], y: [null, point]) -> [null, float]
+
+The point.distance function returns the distance between two points. Distance can only be calculated between points of the same type.
+For WGS-84 points the distance is calculated in meters and is calculated using the [Haversine](https://en.wikipedia.org/wiki/Haversine_formula) formula.
+For WGS-84 3D points the Haversine formula is applied to longitude and latitude and then the Pythagorean theorem is applied between the calculated distance and the height.
+For Cartesian points, the Pythagorean theorem is applied.
+If any of the arguments of the point.distance function evaluates to null or the point types don't match then the function returns null.
+
+{ Usage:
}
+
+Example of the distance between two points in WGS-84 2D:
+```cypher
+ WITH point({longitude: 51.51, latitude: -0.12}) as london,
+ point({longitude: 45.82, latitude: 15.97}) as zagreb
+ RETURN point.distance(london, zagreb) AS result;
+```
+```plaintext
++----------------------------+
+| result |
++----------------------------+
+| 1.88621e+06 |
++----------------------------+
+```
+
+Example of the distance between two points in 2D Cartesian space:
+```cypher
+ RETURN point.distance(
+ point({x: 0, y: 0}),
+ point({x: 3, y: 3})
+ ) AS result;
+```
+```plaintext
++----------------------------+
+| result |
++----------------------------+
+| 4.24264 |
++----------------------------+
+```
+
+
+#### point.withinbbox(point: [null, point], lower_left_corner: [null, point], upper_right_corner: [null, point]) -> [null, boolean]
+
+The point.withinbbox function returns whether the given `point` is inside or on the edge of the bounding box created by `lower_left_corner` and `upper_right_corner`.
+For WGS-84 points this also works if crossing the the international date line.
+
+{ Usage:
}
+
+Example of a point inside the bounding box:
+```cypher
+ RETURN point.withinbbox(
+ point({x: 0, y: 0}),
+ point({x: -1, y: -1}),
+ point({x: 1, y: 1})
+ ) AS result;
+```
+```plaintext
++----------------------------+
+| result |
++----------------------------+
+| true |
++----------------------------+
+```
+
+Example of crossing the international date line:
+```cypher
+ RETURN point.withinbbox(
+ point({longitude: 180, latitude: 58.0}),
+ point({longitude: 179, latitude: 57.0}),
+ point({longitude: -179, latitude: 59.0})
+ ) AS result;
+```
+```plaintext
++----------------------------+
+| result |
++----------------------------+
+| true |
++----------------------------+
+```
+
+If any of the arguments of the point.withinbbox function evaluates to null or the point types don't match then the function returns null.
+
## Procedures API
Data types are also used within query modules. Check out the documentation for
diff --git a/pages/fundamentals/indexes.mdx b/pages/fundamentals/indexes.mdx
index c96511e58..3fd7220af 100644
--- a/pages/fundamentals/indexes.mdx
+++ b/pages/fundamentals/indexes.mdx
@@ -187,6 +187,41 @@ Named parameters are not supported for edge-type property indexes.
+### Point index
+
+To run queries such as:
+```cypher
+WITH point({x:1, y:1}) AS p
+MATCH (node:Label) WHERE point.distance(p, node.property) < 1
+RETURN node;
+```
+in a performant way, feel free to create a new point index as follows:
+```cypher
+CREATE POINT INDEX ON :Label(property);
+```
+
+
+
+From Memgraph 2.21, to utilize the point index in queries using the point.distance function, the comparison point
+needs to exist as a variable first. For example, instead of:
+```cypher
+MATCH (node:Label) WHERE point.distance(point({x:1, y:1}), node.property) < 1
+RETURN node;
+```
+do:
+```cypher
+WITH point({x:1, y:1}) AS p
+MATCH (node:Label) WHERE point.distance(p, node.property) < 1
+RETURN node;
+```
+
+
+
+To drop the point index use:
+```cypher
+DROP POINT INDEX ON :Label(property);
+```
+
### Analyze graph
When multiple label-property indexes exist, the database can sometimes select a
diff --git a/pages/fundamentals/storage-memory-usage.mdx b/pages/fundamentals/storage-memory-usage.mdx
index 38c9795c2..de77773e3 100644
--- a/pages/fundamentals/storage-memory-usage.mdx
+++ b/pages/fundamentals/storage-memory-usage.mdx
@@ -186,6 +186,9 @@ If the returned graph element has been deleted by a parallel transaction, the
built-in behavior is as follows:
* [procedures](/advanced-algorithms/run-algorithms#run-procedures-from-mage-library): skip all records that contain any deleted value
* [functions](/querying/functions): return a null value
+
+Please note that deleting same part of the graph from parallel transaction will lead to undefined behavior.
+
Users developing [custom query procedures and functions](/custom-query-modules) intended to work in the
analytical storage mode should use API methods to check if Memgraph is running
in a transactional (ACID-compliant) storage mode. If not, the query module APIs
diff --git a/pages/getting-started/build-memgraph-from-source.mdx b/pages/getting-started/build-memgraph-from-source.mdx
index 18f28f71b..f22407809 100644
--- a/pages/getting-started/build-memgraph-from-source.mdx
+++ b/pages/getting-started/build-memgraph-from-source.mdx
@@ -111,13 +111,12 @@ to install the appropriate toolchain for your distribution.
Download the toolchain for your operating system from one of the following links:
- [CentOS 7](https://s3-eu-west-1.amazonaws.com/deps.memgraph.io/toolchain-v5/toolchain-v5-binaries-centos-7-x86_64.tar.gz)
-- [CentOS 8](https://s3-eu-west-1.amazonaws.com/deps.memgraph.io/toolchain-v4/toolchain-v4-binaries-centos-8-x86_64.tar.gz)
- [CentOS 9](https://s3-eu-west-1.amazonaws.com/deps.memgraph.io/toolchain-v5/toolchain-v5-binaries-centos-9-x86_64.tar.gz)
- [Fedora 39](https://s3.eu-west-1.amazonaws.com/deps.memgraph.io/toolchain-v5/toolchain-v5-binaries-fedora-39-amd64.tar.gz)
-- [Debian 10](https://s3-eu-west-1.amazonaws.com/deps.memgraph.io/toolchain-v4/toolchain-v4-binaries-debian-10-amd64.tar.gz)
- [Debian 11 (x86_64)](https://s3-eu-west-1.amazonaws.com/deps.memgraph.io/toolchain-v5/toolchain-v5-binaries-debian-11-amd64.tar.gz)
- [Debian 11 (arm64)](https://s3-eu-west-1.amazonaws.com/deps.memgraph.io/toolchain-v5/toolchain-v5-binaries-debian-11-arm64.tar.gz)
-- [Ubuntu 18.04](https://s3-eu-west-1.amazonaws.com/deps.memgraph.io/toolchain-v4/toolchain-v4-binaries-ubuntu-18.04-amd64.tar.gz)
+- [Debian 12 (x86_64)](https://s3.eu-west-1.amazonaws.com/deps.memgraph.io/toolchain-v5/toolchain-v5-binaries-debian-12-amd64.tar.gz)
+- [Debian 12 (arm64)](https://s3.eu-west-1.amazonaws.com/deps.memgraph.io/toolchain-v5/toolchain-v5-binaries-debian-12-arm64.tar.gz)
- [Ubuntu 20.04](https://s3-eu-west-1.amazonaws.com/deps.memgraph.io/toolchain-v5/toolchain-v5-binaries-ubuntu-20.04-amd64.tar.gz)
- [Ubuntu 22.04 (x86_64)](https://s3-eu-west-1.amazonaws.com/deps.memgraph.io/toolchain-v5/toolchain-v5-binaries-ubuntu-22.04-amd64.tar.gz)
- [Ubuntu 22.04 (arm64)](https://s3-eu-west-1.amazonaws.com/deps.memgraph.io/toolchain-v5/toolchain-v5-binaries-ubuntu-22.04-arm64.tar.gz)
@@ -133,7 +132,7 @@ sudo tar xzvfm {{toolchain-archive}}.tar.gz -C /opt
After you have installed the toolchain, you should read the instructions for the
-toolchain in the toolchain install directory (`/opt/toolchain-vXYZ/README.md`)
+toolchain in the toolchain install directory (`/opt/toolchain-v5/README.md`)
and install dependencies that are necessary to run the toolchain.
@@ -148,11 +147,11 @@ sudo ./environment/os/install_deps.sh install TOOLCHAIN_RUN_DEPS
- Based on your OS, version and architecture, execute appropriate scripts (e.g., on **Debian 10**, NOTE: the following commands/scripts are located under [memgraph repository](https://github.com/memgraph/memgraph)):
-
+ Based on your OS, version and architecture, execute appropriate scripts (e.g., on Debian 11, NOTE: the following commands/scripts are located under [memgraph repository](https://github.com/memgraph/memgraph)):
+
```bash
- sudo ./environment/os/debian-10.sh check TOOLCHAIN_RUN_DEPS
- sudo ./environment/os/debian-10.sh install TOOLCHAIN_RUN_DEPS
+ sudo ./environment/os/debian-11.sh check TOOLCHAIN_RUN_DEPS
+ sudo ./environment/os/debian-11.sh install TOOLCHAIN_RUN_DEPS
```
For ARM look for `-arm` in script name (e.g. on Ubuntu 22.04 with Apple M processor):
@@ -170,7 +169,7 @@ prepared toolchain activation script that is also described in the toolchain
You must activate the toolchain every time you want to compile Memgraph:
```bash
-source /opt/toolchain-vXYZ/activate
+source /opt/toolchain-v5/activate
```
In case you need to deactivate the toolchain, you can run:
diff --git a/pages/querying/differences-in-cypher-implementations.mdx b/pages/querying/differences-in-cypher-implementations.mdx
index 77cef10f7..f72fd9dde 100644
--- a/pages/querying/differences-in-cypher-implementations.mdx
+++ b/pages/querying/differences-in-cypher-implementations.mdx
@@ -238,10 +238,6 @@ UNWIND [42, true, 'abc'] AS val
RETURN val, valueType(val) = "INTEGER"
```
-### Unsupported data types
-
-- `POINT` -> Track progress on [GitHub](https://github.com/memgraph/memgraph/issues/1583) and add a comment if you require such a feature.
-
### Unsupported functions
**Functions for converting data values**:
diff --git a/pages/querying/functions.mdx b/pages/querying/functions.mdx
index 3cc94dbb9..e43273e25 100644
--- a/pages/querying/functions.mdx
+++ b/pages/querying/functions.mdx
@@ -96,6 +96,13 @@ This section contains the list of supported functions.
| `ToEnum` | `ToEnum(value: string) -> (enum)` | Gets enum value matching string of form `name::value`. |
| `ToEnum` | `ToEnum(name: string, value: string) -> (enum)` | Gets enum value passing name and value as separate strings. |
+### Spatial
+
+ | Name | Signature | Description |
+ | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+ | [`point`](/fundamentals/data-types#pointparameters-map---null-point) | `point(parameters: map) -> (null\|point)` | Creates a point data type from the given map. |
+ | [`point.distance`](/fundamentals/data-types#pointdistancex-null-point-y-null-point---null-float) | `point.distance(x: null\|point, y: null\|point) -> (null\|float)` | Returns the distance between two points. |
+ | [`point.withinbbox`](/fundamentals/data-types#pointwithinbboxpoint-null-point-lower_left_corner-null-point-upper_right_corner-null-point---null-boolean)| `point.withinbbox(point: null\|point, lower_left_corner: null\|point, upper_right_corner: null\|point) -> (null\|boolean)` | Returns whether the given point is contained within the bounding box made from `lower_left_corner` and `upper_right_corner`. |
### Math functions
diff --git a/pages/querying/query-plan.mdx b/pages/querying/query-plan.mdx
index 0099e6c69..942e04796 100644
--- a/pages/querying/query-plan.mdx
+++ b/pages/querying/query-plan.mdx
@@ -256,6 +256,7 @@ The following table lists all the operators currently supported by Memgraph:
| `ScanAllByLabelProperty` | Produces nodes with a certain label and property. |
| `ScanAllByLabelPropertyRange` | Produces nodes with a certain label and property value within the given range (both inclusive and exclusive). |
| `ScanAllByLabelPropertyValue` | Produces nodes with a certain label and property value. |
+| `ScanAllByPointDistance` | Produces nodes with a certain distance from a given [Point](/fundamentals/data-types#point). |
| `SetLabels` | Sets node labels of variable length. |
| `SetProperty` | Sets a node or relationship property. |
| `SetProperties` | Sets a list of node or relationship properties. |
diff --git a/pages/querying/schema.mdx b/pages/querying/schema.mdx
index d3b07f15f..f1d2b646f 100644
--- a/pages/querying/schema.mdx
+++ b/pages/querying/schema.mdx
@@ -11,6 +11,13 @@ Schema queries are designed to retrieve information about the structure of the d
## Run-time schema tracking
+
+
+Please use a snapshot to migrate a pre v2.21 datasets with properties on edges.
+When schema is tracked, recovering using WAL files generated pre v2.21 will incur a performance penalty as crucial data is missing, which leads to long scan times.
+
+
+
To use run-time schema tracking, start Memgraph with the `--schema-info-enabled` [configuration flag](/configuration/configuration-settings#other) set to `True`. Once enabled, every change to the data layout will be tracked, and a derived schema will be automatically updated. Note that enabling this feature may result in a slight performance decrease; for more details, refer to [Performance Tips](#performance-tips).
### What Schema Information is Tracked?
@@ -248,7 +255,7 @@ Enabling `--schema-info-enabled` incurs a performance cost because additional wo
#### Performance Tips
* __Label Changes on Nodes with Edges__: Changing labels on a node with existing edges can invalidate large parts of the schema. To avoid blocking queries during schema updates, define node labels before adding edges. Queries such as `CREATE (:A)-[:EDGE]->(:B)` are also fine.
* __Edge Property Type Changes__: Modifying the type of an edge's property may require scanning large portions of the graph. To avoid this, define edges and their properties in the same transaction and keep property types stable.
-* __Recovery Using WALs__: Recovering edges with properties via Write-Ahead Log (WAL) files can cause a significant performance hit. To mitigate this, use snapshots instead. Starting from v2.21, this issue will be alleviated, though not completely resolved.
+* __Recovery Using WALs__: Recovering edges with properties via Write-Ahead Log (WAL) files can cause a significant performance hit. To mitigate this, use snapshots instead. Starting from v2.21, this issue has been alleviated, when using WAL files created by v2.21+.
## Schema metadata
diff --git a/pages/release-notes.mdx b/pages/release-notes.mdx
index dda9d90c5..c645f5c0f 100644
--- a/pages/release-notes.mdx
+++ b/pages/release-notes.mdx
@@ -17,12 +17,19 @@ informed and prepared.
New releases might affect your existing code, queries or configuration.
Ensure they're updated to align with the latest updates and changes.
-
-### Upgrading to Memgraph v2.20.0
+### Upgrading to Memgraph v2.21.0 breaking change
-{ Breaking change
}
+Coordinator log store directory in `--data-directory` needs to be started from
+scratch since new type of Raft log is added and some old ones were deleted.
+Memgraph could crash without deleting old logs from log store directory.
+
+
+
+### Upgrading to Memgraph v2.20.0 breaking change
+
+
In this version of Memgraph, we have removed the experimental classification for
system replication. Going forward, the `--experimental-enabled` configuration
@@ -166,6 +173,93 @@ Memgraph (v2.11.1 and lower).
+## Memgraph v2.21.0 - Nov 6, 2024
+
+{ New features and improvements
}
+
+- Added planner optimization to replace `point.distance` filter with an index
+ scan. Queries like `WITH point({x:0,y:0}) AS a MATCH (m:L1) WHERE
+ point.distance(m.prop, a) < 1 RETURN m;`, should run faster if there is the
+ [point index](/fundamentals/indexes#point-index) created. If you are dealing
+ with spatial data, there is a high chance you need such indexes to run your
+ queries faster. [#2362](https://github.com/memgraph/memgraph/pull/2362)
+- Significantly improved schema retrieval performance in both TRANSACTIONAL and
+ ANALYTICAL setups. Feel free to use `--schema-info-enabled=True` to get
+ schema instantly by running the `SHOW SCHEMA INFO;` query.
+ [#2383](https://github.com/memgraph/memgraph/pull/2383)
+- Added query metadata when logging incoming query. It's possible now, e.g., to
+ filter certain database log entries or search for specific items in the log.
+ [#2404](https://github.com/memgraph/memgraph/pull/2404)
+
+{ Bug fixes
}
+
+- Closing instance would crash due to streams and/or TTL running in the
+ background. [#2361](https://github.com/memgraph/memgraph/pull/2361)
+- Add backticks around property keys in any \{key: value\} patterns.
+ [#2371](https://github.com/memgraph/memgraph/pull/2371)
+- When replica gets promoted to main upon failover, it will use correctly
+ incremented durable timestamp.
+ [#2366](https://github.com/memgraph/memgraph/pull/2366)
+- `schema.assert` will throw an exception if ran inside the explicit transaction.
+ [#2352](https://github.com/memgraph/memgraph/pull/2352)
+- Modifying `mgp::memory` is prohibited; use `MemoryDispatcherGuard` instead.
+ Under C++ query modules, if module tries to set `mgp::memory` there will be a
+ compilation error. Usually at the beginning of the `mgp_init_module`
+ implementation there should be the `mgp::MemoryDispatcherGuard
+ guard(memory);`. Usage examples could be found under [MAGE C++
+ modules](https://github.com/memgraph/mage/tree/main/cpp).
+ [#2424](https://github.com/memgraph/memgraph/pull/2424)
+- Fixed incorrect usage of cv and stop token in scheduler and thread pool.
+ [#2452](https://github.com/memgraph/memgraph/pull/2452)
+- Fixed unreleased deltas counter. There was a missing case of tracking when
+ deltas were actually released. This gave the appearance in `SHOW STORAGE
+ INFO;` that we were not actually releasing them.
+ [#2446](https://github.com/memgraph/memgraph/pull/2446)
+- Fixed edge index not removing deleted edges. Edge index would not remove
+ deleted (obsolete) entries, while the GC would delete the edge object. Edge
+ type index was impacted, while the property type would detect that the object
+ was deleted due to it checking the property.
+ [#2439](https://github.com/memgraph/memgraph/pull/2439)
+- Removed usage of RTLD_DEEPBIND under query modules. Query modules, especially
+ the Python ones should work better in terms of correct module loading.
+ [#2347](https://github.com/memgraph/memgraph/pull/2347)
+
+{ High-availability automatic failover improvements
}
+
+There are a lot of efforts to make Memgraph HA rock-solid in the production
+environments. Under this release, the feature is still experimental, but
+getting very close to put the stable flag next to it. The full list if issues
+and improvements can be found
+[HERE](https://github.com/memgraph/memgraph/issues?q=label%3Ajepsen) (GH issues
+labeled with `jepsen`).
+
+- All data instances now use one type of callbacks to simplify state
+ reconciliation. [#2421](https://github.com/memgraph/memgraph/pull/2421)
+- Incomplete storage reset when MAIN force reset or applied snapshots to
+ REPLICA. [#2422](https://github.com/memgraph/memgraph/pull/2422)
+- Coordinators now use one type of Raft logs to remove the need for distributed
+ locks. Coordinator log store needs to be started from scratch, hence this
+ change is a breaking one.
+ [#2430](https://github.com/memgraph/memgraph/pull/2430)
+- Fixed deadlock when demoting data instance. When a coordinator sends a
+ request for promotion or demotion, the lock on replication state is taken so
+ that it cannot be interleaved with commit. If main became a replica and was
+ executing write transaction, the transaction will be aborted. Scheduler is
+ now stopped before thread pool in RPC client.
+ [#2447](https://github.com/memgraph/memgraph/pull/2447)
+
+## MAGE v1.21.0 - Nov 6, 2024
+
+{ New features and improvements
}
+
+- Added [Leiden
+ algorithm](/advanced-algorithms/available-algorithms/leiden_community_detection).
+ The implementation is "static" in a sense that it's operating on the whole
+ graph. Leiden is a modern community detection algorithm that in Memgraph's
+ implementation provides hierarchies of communities. A big use-cases for
+ Leiden community detection is [GraphRAG](/ai-ecosystem/graph-rag).
+ [#508](https://github.com/memgraph/mage/pull/508)
+
## Memgraph v2.20.1 - Oct 10, 2024
{ Bug fixes
}
@@ -177,7 +271,6 @@ Memgraph (v2.11.1 and lower).
- Replica now correctly reflects database registration success or failure. When replica receives a request for registering replica, it will now return status code NOT_MAIN. If attempting to undo an incomplete registration fails, then the Memgraph instance will be intentionally crashed because the system is in unrecoverable state. Main instance can now deal with stale RPC message GetReplicaUUID without crashing the instance. [#2373](https://github.com/memgraph/memgraph/pull/2373)
- Closing instance no longer crashes due to [streams](/data-streams) and/or [TTL](/querying/time-to-live) running in the background. [#2361](https://github.com/memgraph/memgraph/pull/2361)
-
## Lab v2.17.0 - Sep 25, 2024
{ New features and improvements
}
@@ -204,7 +297,6 @@ Memgraph (v2.11.1 and lower).
are now aligned. Instead of breaking the connection due to
permission issues, users will now see "N/A" where applicable.
-
## Memgraph v2.20.0 - Sep 25, 2024
{ New features and improvements
}