For me, it is easier to think about this approach as "you can model it as a graph" and "you can solve this with graph algorithms". The argument seems to be too often:
* Look at problem space
* Recognize it has a graph structure
* Graph structures can be modeled with links
The last step seems unnecessary, or at least it can be generalized/implied after recognizing the graph structure.
The really difficult part seems to be: Combining all of the ideas. Distinguishing between the types of links seems to increase the complexity again, but using links as a general model gets more interesting (to me) if it actually ends up in a unified space.
* Look at problem space
* Recognize it has a graph structure
* Graph structures can be modeled with links
The last step seems unnecessary, or at least it can be generalized/implied after recognizing the graph structure.
The really difficult part seems to be: Combining all of the ideas. Distinguishing between the types of links seems to increase the complexity again, but using links as a general model gets more interesting (to me) if it actually ends up in a unified space.