What are projections?
Data in graph data models usually comprises relationships between things, whether they be people, languages, transport hubs, or any of the other examples we’ve seen throughout the previous chapters. Plenty of data models have several types of nodes and relationships, making one node or edge not equal in meaning or value to another.
These types of graphs are known as heterogeneous graphs, and we have seen them throughout this book. One type of heterogeneous graph is a bipartite graph, where there are two types of nodes. In bipartite graphs, only different types of nodes can share edges. For example, a citation network might be represented as a bipartite graph, with authors connected to articles they have written.
Analysis of heterogeneous graphs with multiple node and edge types can be tricky. To illustrate this, first consider the authorship graph in Figure 8.1. We can answer some simple questions easily, using this graph’s native structure...