The NETWORK Procedure
PATTERNMATCH Statement
PATTERNMATCH < options >;
The PATTERNMATCH statement invokes an algorithm that searches for subgraph patterns in an input graph. The pattern matching problem is described in the section Pattern Matching.
You can specify the following options:
- CODE=string
- INDUCED=TRUE | FALSE
-
specifies whether to filter matches by using the induced subgraph of the match. You can specify the following values:
- TRUE
keeps only matches whose induced subgraph is topologically equivalent to the query graph.
- FALSE
does not filter by using the induced subgraph of the match.
By default, INDUCED=FALSE.
- LINKFILTER=function-name
- LINKPAIRFILTER=function-name
- MATCHFILTER=function-name
specifies the FCMP function for a filter that is based on a potential match (that is, any subset of nodes or links or both).
- MAXMATCHES=number | ALL
specifies the maximum number of matches for the pattern matching algorithm to return. You can specify either a number (which can be any 64-bit integer greater than or equal to 1) or ALL (which represents the maximum value that can be represented by a 64-bit integer). By default, MAXMATCHES=ALL.
- MAXTIME=number
specifies the maximum amount of time to spend in the pattern matching algorithm. The type of time (either CPU time or real time) is determined by the value of the TIMETYPE= option in the PROC NETWORK statement. The default is the largest number that can be represented by a double.
- NODEFILTER=function-name
- NODEPAIRFILTER=function-name
- OUTMATCHGRAPHLINKS=CAS-libref.data-table
specifies the links output data table for the induced subgraph of matches. CAS-libref.data-table is a two-level name, where CAS-libref refers to the
casliband session identifier, and data-table specifies the name of the output data table. For more information about this two-level name, see the section Using CAS Sessions and CAS Engine Librefs in Chapter 1, Introduction.- OUTMATCHGRAPHNODES=CAS-libref.data-table
specifies the nodes output data table for the induced subgraph of matches. CAS-libref.data-table is a two-level name, where CAS-libref refers to the
casliband session identifier, and data-table specifies the name of the output data table. For more information about this two-level name, see the section Using CAS Sessions and CAS Engine Librefs in Chapter 1, Introduction.- OUTMATCHLINKS=CAS-libref.data-table
specifies the links output data table for matching subgraphs. CAS-libref.data-table is a two-level name, where CAS-libref refers to the
casliband session identifier, and data-table specifies the name of the output data table. For more information about this two-level name, see the section Using CAS Sessions and CAS Engine Librefs in Chapter 1, Introduction.- OUTMATCHNODES=CAS-libref.data-table
specifies the nodes output data table for matching subgraph mappings. CAS-libref.data-table is a two-level name, where CAS-libref refers to the
casliband session identifier, and data-table specifies the name of the output data table. For more information about this two-level name, see the section Using CAS Sessions and CAS Engine Librefs in Chapter 1, Introduction.- OUTQUERYLINKS=CAS-libref.data-table
specifies the links query output data table to contain the generated queries. CAS-libref.data-table is a two-level name, where CAS-libref refers to the
casliband session identifier, and data-table specifies the name of the output data table. For more information about this two-level name, see the section Using CAS Sessions and CAS Engine Librefs in Chapter 1, Introduction.- OUTQUERYNODES=CAS-libref.data-table
specifies the nodes query output data table to contain the generated queries. CAS-libref.data-table is a two-level name, where CAS-libref refers to the
casliband session identifier, and data-table specifies the name of the output data table. For more information about this two-level name, see the section Using CAS Sessions and CAS Engine Librefs in Chapter 1, Introduction.- OUTSUMMARY=CAS-libref.data-table
specifies the summary output data table for pattern match queries. CAS-libref.data-table is a two-level name, where CAS-libref refers to the
casliband session identifier, and data-table specifies the name of the output data table. For more information about this two-level name, see the section Using CAS Sessions and CAS Engine Librefs in Chapter 1, Introduction.- QUERYKEY=column
specifies the name of the data variable for the query key. The value of the variable can be numeric or character.
- QUERYKEYAGGREGATE=TRUE | FALSE
-
specifies whether to aggregate nodes across query keys for creating the induced subgraph(s). You can specify the following values:
- TRUE
aggregates nodes across query keys for creating the induced subgraph(s).
- FALSE
does not aggregate nodes across query keys for creating the induced subgraphs(s).
By default, QUERYKEYAGGREGATE=TRUE.