(a distortion of a misquote)
The concept description for a Pressurised Water Reactor uses the term "steam generator" 39 times (in either singular or plural form). It would seem reasonable the term was put in the local dictionary instead of being assembled from its components long before 39 times passed. So what do we do?
When we find a noun followed by a noun, we look to see if we have encountered the same coupling before (we look for previous invocations, check what follows). If we do find the term has been used before, we create a new entry in the local dictionary, and make the current and previous use invocations of it.
The local dictionary entry is marked as Nonunique, and we will accept any capitalisation. Future use will find the entry in the dictionary (other mechanisms handle singular and plural). We cant use one of the existing uses as the definition, as it may be bound in relations that are not general we will need to abstract its definition to just what the term means (and allow its full meaning to be derived from its uses). The mechanism has to handle situations where we start by joining A and B to make AB, and then AB CD becoming ABCD.
Where the following noun can also be a verb, we put the entry in the dictionary, but mark it as a Non-Absolute Collocation, meaning that we have a concept of the two nouns together, but we need to prove the second word is not a verb before we can use it.
We can couple reactor and coolant together without concern.
The suction of the reactor coolant pumps.
We have seen how the reactor coolant pumps it begins to foam because of cavitation.
Same problem we have to prove it is not a verb. If it is in the scope of the main verb phrase, that is easy, but if there is a clause initiator like "how", we have more work to do.
In the eyes of the manager John was mistaken.
We can check whether the previous use resulted in inclusion in one noun phrase or two. That is, we have to have shown the words belong in the same noun phrase before constructing an entry.
The primary break.
The main generator.
We leave them for the moment. There is a good argument for having a separate concept where we have:
A primary cooling system
A secondary cooling system
So we should probably do something where the adjective indicates there are several objects in a hierarchy. We could use the test that, if we already have a collocation (like "cooling system"), we will extend the collocation, but not for "primary system" (there should be an association between "primary system" and "secondary system" one should be findable from the other).
Are we going to end up with a lot of junk entries? A dictionary entry is pretty cheap. We will already need to be checking whether they are the same object having them invocations of the same object makes that easier.