An entity refers to any architectural object within a software system. Many entities are symbols (objects defined by the source code language, for example, functions, methods, classes, and templates). Other entities are user-defined constructs such as architecture blocks that do not exist physically in the code. Such entities can contain other entities and are sometimes referred to as packages. Entity types include ARCHITECTURE-BLOCK, DIRECTORY, FILE, FUNCTION, and so on.