Kinetica C# API  Version 7.0.19.0
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties Pages
kinetica.QueryGraphRequest Class Reference

A set of parameters for Kinetica.queryGraph(string,IList{string},IList{string},string,int,IDictionary{string, string}). More...

+ Inheritance diagram for kinetica.QueryGraphRequest:
+ Collaboration diagram for kinetica.QueryGraphRequest:

Classes

struct  Options
 Additional parameters

  • FORCE_UNDIRECTED: If set to true, all inbound edges and outbound edges relative to the node will be returned.
More...
 

Public Member Functions

 QueryGraphRequest ()
 Constructs a QueryGraphRequest object with default parameters. More...
 
 QueryGraphRequest (string graph_name, IList< string > queries, IList< string > restrictions=null, string adjacency_table=null, int?rings=null, IDictionary< string, string > options=null)
 Constructs a QueryGraphRequest object with the specified parameters. More...
 
- Public Member Functions inherited from kinetica.KineticaData
 KineticaData (KineticaType type)
 Constructor from Kinetica Type More...
 
 KineticaData (System.Type type=null)
 Default constructor, with optional System.Type More...
 
object Get (int fieldPos)
 Retrieve a specific property from this object More...
 
void Put (int fieldPos, object fieldValue)
 Write a specific property to this object More...
 

Properties

string graph_name [get, set]
 Name of the graph resource to query. More...
 
IList< string > queries [get, set]
 Nodes or edges to be queried specified using query identifiers. More...
 
IList< string > restrictions = new List<string>() [get, set]
 Additional restrictions to apply to the nodes/edges of an existing graph. More...
 
string adjacency_table = new List<string>() [get, set]
 Name of the table to store the resulting adjacencies. More...
 
int rings = "" [get, set]
 Sets the number of rings around the node to query for adjacency, with '1' being the edges directly attached to the queried node. More...
 
IDictionary< string, string > options = 1 [get, set]
 Additional parameters

  • FORCE_UNDIRECTED: If set to true, all inbound edges and outbound edges relative to the node will be returned.
More...
 
- Properties inherited from kinetica.KineticaData
Schema Schema [get]
 Avro Schema for this class More...
 

Additional Inherited Members

- Static Public Member Functions inherited from kinetica.KineticaData
static RecordSchema SchemaFromType (System.Type t, KineticaType ktype=null)
 Create an Avro Schema from a System.Type and a KineticaType. More...
 

Detailed Description

A set of parameters for Kinetica.queryGraph(string,IList{string},IList{string},string,int,IDictionary{string, string}).


Employs a topological query on a network graph generated a-priori by Kinetica.createGraph(string,bool,IList{string},IList{string},IList{string},IList{string},IDictionary{string, string}) and returns a list of adjacent edge(s) or node(s), also known as an adjacency list, depending on what's been provided to the endpoint; providing edges will return nodes and providing nodes will return edges.
To determine the node(s) or edge(s) adjacent to a value from a given column, provide a list of values to queries. This field can be populated with column values from any table as long as the type is supported by the given identifier. See Query Identifiers for more information.
To return the adjacency list in the response, leave adjacency_table empty. To return the adjacency list in a table and not in the response, provide a value to adjacency_table and set export_query_results to false. To return the adjacency list both in a table and the response, provide a value to adjacency_table and set export_query_results to true.
IMPORTANT: It's highly recommended that you review the Network Graphs & Solvers concepts documentation, the Graph REST Tutorial, and/or some /query/graph examples before using this endpoint.

Definition at line 49 of file QueryGraph.cs.

Constructor & Destructor Documentation

kinetica.QueryGraphRequest.QueryGraphRequest ( )
inline

Constructs a QueryGraphRequest object with default parameters.

Definition at line 478 of file QueryGraph.cs.

kinetica.QueryGraphRequest.QueryGraphRequest ( string  graph_name,
IList< string >  queries,
IList< string >  restrictions = null,
string  adjacency_table = null,
int?  rings = null,
IDictionary< string, string >  options = null 
)
inline

Constructs a QueryGraphRequest object with the specified parameters.

Parameters
graph_nameName of the graph resource to query.
queriesNodes or edges to be queried specified using query identifiers. Identifiers can be used with existing column names, e.g., 'table.column AS QUERY_NODE_ID', raw values, e.g., '{0, 2} AS QUERY_NODE_ID', or expressions, e.g., 'ST_MAKEPOINT(table.x, table.y) AS QUERY_NODE_WKTPOINT'. Multiple values can be provided as long as the same identifier is used for all values. If using raw values in an identifier combination, the number of values specified must match across the combination.
restrictionsAdditional restrictions to apply to the nodes/edges of an existing graph. Restrictions must be specified using identifiers; identifiers are grouped as combinations. Identifiers can be used with existing column names, e.g., 'table.column AS RESTRICTIONS_EDGE_ID', expressions, e.g., 'column/2 AS RESTRICTIONS_VALUECOMPARED', or raw values, e.g., '{0, 0, 0, 1} AS RESTRICTIONS_ONOFFCOMPARED'. If using raw values in an identifier combination, the number of values specified must match across the combination. The default value is an empty List.
adjacency_tableName of the table to store the resulting adjacencies. If left blank, the query results are instead returned in the response even if export_query_results is set to false. If the 'QUERY_TARGET_NODE_LABEL' query identifier is used in , then two additional columns will be available: 'PATH_ID' and 'RING_ID'. See Using Labels for more information. The default value is ''.
ringsSets the number of rings around the node to query for adjacency, with '1' being the edges directly attached to the queried node. Also known as number of hops. For example, if it is set to '2', the edge(s) directly attached to the queried node(s) will be returned; in addition, the edge(s) attached to the node(s) attached to the initial ring of edge(s) surrounding the queried node(s) will be returned. If the value is set to '0', any nodes that meet the criteria in and will be returned. This parameter is only applicable when querying nodes. The default value is 1.
optionsAdditional parameters
  • FORCE_UNDIRECTED: If set to true, all inbound edges and outbound edges relative to the node will be returned. If set to false, only outbound edges relative to the node will be returned. This parameter is only applicable if the queried graph is directed and when querying nodes. Consult Directed Graphs for more details. Supported values: The default value is FALSE.
  • LIMIT: When specified, limits the number of query results. Note that if the target_nodes_table is provided, the size of the corresponding table will be limited by the limit value. The default value is an empty Dictionary.
  • TARGET_NODES_TABLE: Name of the table to store the list of the final nodes reached during the traversal. If this value is left as the default, the table name will default to the value plus a '_nodes' suffix, e.g., '<adjacency_table_name>_nodes'. The default value is ''.
  • RESTRICTION_THRESHOLD_VALUE: Value-based restriction comparison. Any node or edge with a RESTRICTIONS_VALUECOMPARED value greater than the restriction_threshold_value will not be included in the solution.
  • EXPORT_QUERY_RESULTS: Returns query results in the response. If set to true, the <member name="adjacency_list_int_array"> (if the query was based on IDs), <member name="adjacency_list_string_array"> (if the query was based on names), or <member name="adjacency_list_wkt_array"> (if the query was based on WKTs) will be populated with the results. If set to false, none of the arrays will be populated. Supported values: The default value is FALSE.
  • ENABLE_GRAPH_DRAW: If set to true, adds a WKT-type column named 'QUERY_EDGE_WKTLINE' to the given and inputs WKT values from the source graph (if available) or auto-generated WKT values (if there are no WKT values in the source graph). A subsequent call to the /wms endpoint can then be made to display the query results on a map. Supported values: The default value is FALSE.
  • AND_LABELS: If set to true, the result of the query has entities that satisfy all of the target labels, instead of any. Supported values: The default value is FALSE.
The default value is an empty Dictionary.

Definition at line 658 of file QueryGraph.cs.

Property Documentation

string kinetica.QueryGraphRequest.adjacency_table = new List<string>()
getset

Name of the table to store the resulting adjacencies.

If left blank, the query results are instead returned in the response even if export_query_results is set to false. If the 'QUERY_TARGET_NODE_LABEL' query identifier is used in , then two additional columns will be available: 'PATH_ID' and 'RING_ID'. See Using Labels for more information. The default value is ''.

Definition at line 333 of file QueryGraph.cs.

string kinetica.QueryGraphRequest.graph_name
getset

Name of the graph resource to query.

Definition at line 293 of file QueryGraph.cs.

IDictionary<string, string> kinetica.QueryGraphRequest.options = 1
getset

Additional parameters

  • FORCE_UNDIRECTED: If set to true, all inbound edges and outbound edges relative to the node will be returned.

If set to false, only outbound edges relative to the node will be returned. This parameter is only applicable if the queried graph is directed and when querying nodes. Consult Directed Graphs for more details. Supported values:

The default value is FALSE. LIMIT: When specified, limits the number of query results. Note that if the target_nodes_table is provided, the size of the corresponding table will be limited by the limit value. The default value is an empty Dictionary. TARGET_NODES_TABLE: Name of the table to store the list of the final nodes reached during the traversal. If this value is left as the default, the table name will default to the value plus a '_nodes' suffix, e.g., '<adjacency_table_name>_nodes'. The default value is ''. RESTRICTION_THRESHOLD_VALUE: Value-based restriction comparison. Any node or edge with a RESTRICTIONS_VALUECOMPARED value greater than the restriction_threshold_value will not be included in the solution. EXPORT_QUERY_RESULTS: Returns query results in the response. If set to true, the <member name="adjacency_list_int_array"> (if the query was based on IDs), <member name="adjacency_list_string_array"> (if the query was based on names), or <member name="adjacency_list_wkt_array"> (if the query was based on WKTs) will be populated with the results. If set to false, none of the arrays will be populated. Supported values:

The default value is FALSE. ENABLE_GRAPH_DRAW: If set to true, adds a WKT-type column named 'QUERY_EDGE_WKTLINE' to the given and inputs WKT values from the source graph (if available) or auto-generated WKT values (if there are no WKT values in the source graph). A subsequent call to the /wms endpoint can then be made to display the query results on a map. Supported values:

The default value is FALSE. AND_LABELS: If set to true, the result of the query has entities that satisfy all of the target labels, instead of any. Supported values:

The default value is FALSE.

The default value is an empty Dictionary.

Definition at line 473 of file QueryGraph.cs.

IList<string> kinetica.QueryGraphRequest.queries
getset

Nodes or edges to be queried specified using query identifiers.

Identifiers can be used with existing column names, e.g., 'table.column AS QUERY_NODE_ID', raw values, e.g., '{0, 2} AS QUERY_NODE_ID', or expressions, e.g., 'ST_MAKEPOINT(table.x, table.y) AS QUERY_NODE_WKTPOINT'. Multiple values can be provided as long as the same identifier is used for all values. If using raw values in an identifier combination, the number of values specified must match across the combination.

Definition at line 305 of file QueryGraph.cs.

IList<string> kinetica.QueryGraphRequest.restrictions = new List<string>()
getset

Additional restrictions to apply to the nodes/edges of an existing graph.

Restrictions must be specified using identifiers; identifiers are grouped as combinations. Identifiers can be used with existing column names, e.g., 'table.column AS RESTRICTIONS_EDGE_ID', expressions, e.g., 'column/2 AS RESTRICTIONS_VALUECOMPARED', or raw values, e.g., '{0, 0, 0, 1} AS RESTRICTIONS_ONOFFCOMPARED'. If using raw values in an identifier combination, the number of values specified must match across the combination. The default value is an empty List.

Definition at line 319 of file QueryGraph.cs.

int kinetica.QueryGraphRequest.rings = ""
getset

Sets the number of rings around the node to query for adjacency, with '1' being the edges directly attached to the queried node.

Also known as number of hops. For example, if it is set to '2', the edge(s) directly attached to the queried node(s) will be returned; in addition, the edge(s) attached to the node(s) attached to the initial ring of edge(s) surrounding the queried node(s) will be returned. If the value is set to '0', any nodes that meet the criteria in and will be returned. This parameter is only applicable when querying nodes. The default value is 1.

Definition at line 347 of file QueryGraph.cs.


The documentation for this class was generated from the following file: