What's this type of semantic analysis called in NLP? I'm speculating that this is very much known in NLP, but as I've not studied NLP, I don't know what concepts are related to this:



Basically I have entities that are connected by some strings. I want to do semantic analysis using this kind of constructs. I.e. by checking whether a given sentence has entities (the yellow ellipses) connected with the right strings.



Notice that this is also basically describable as a a deterministic context-free language. But I'd like to understand the semantical aspect of this, rather than mere parsing (string matching).
Given your example, Lexical Semantics may be what you are looking for. Things like WordNet provide hypernym (breakfast -> meal), hyponym (meal -> lunch), meronym (course -> meal), holonym (water -> oxygen) relationships. See chapter 19 of Speech and Language Processing by Jurafsky and Martin for more thorough set of details.