Supported Network Types

 

Supported Networks Types

  Supported Network Types

This page describes the supported graph structures and their internal representation.

The network plug-in supports the following network types:

Name Example Internal Representation Notes
Undirected graph
single edge
internal representation of a single edge internal
An undirected graph is converted in a two-partite graph with the first partition representing the nodes and the second partition representing the edges.
Multi graph
multi graph
internal representation of a multi graph
The plug-in supports any number of edges between nodes. However each edge has to have a different id.
Loops
loop edge
internal representation of a loop
Loops are represented by edges that connect only one node (e.g. with an edge degree of 1).
Weighted graph
weighted edge
internal representation of a weighted edge
The weight can be also attached to an end object in order to assign a different weight to each node of an edge. The default weight of an edge is 1. The supported features are described here.
Directed graph
directed edge
internal representation of a directed edge
For a description of an end object click here.
Hypergraph
hyper edge
internal representation of a hyper edge
A hypergraph contains hyperedges that connect more than two nodes, such as the hyperedge in the example, which connects four nodes.
Mixed graph
mixed hyper edge
internal representation of a mixed graph with hyper edges and edges
All the above types can also be mixed in one graph, as is demonstrated in the example with a hyperedge (blue) and a directed and weighted edge (green).

The internal representation shows how the different network types are mapped to the internally used k-partite graph sturcture.

Internal Representation

In order to support all the different network types we have chosen a k-partite graph representation. Nodes and edges are represented as vertices, which are connected with a single link and the vertices are asigned to partitions. The type of partition defines the interpretation of the vertex (e.g. node or edge). By default, a nework with nodes and edges is represented in KNIME as a two-partite graph with one partition containing the node vertices (nodes) and the other containing the edge vertices (edges).

The partitions can be also used to group objects of the same type such as terms and documents or genes and proteins. KNIME provides nodes to work with these partitions e.g. filtering or analysis of the relations between partitions.

End Object

An end object represents the endpoint of an edge that groups the edge and a node. It is defined by the ID of the corresponding edge and node. End objects are used to attach features to nodes that are valid in the context of a given edge, such as the is_target or the weight feature.