This represents the programming language in which an entity is written. It is used for dispatching entity actions for specific languages. For example, formatting a source text will be performed according to the language.
For projects that have multiple languages and when you want to be able to query them, you will have multiple sourcelanguages and to be able to query the entities for each, you can attach entities to a sourceLanguage using addSourceEntity:
I added comment to isAttached (bad name anyway).
I will publish the code when I can.
Stef