There may be cases where you need multiple classes related to each other for an application. One such scenario is a role-based application.
Microsoft SQL is a good example of a role-based application. In that case, we would create a LocalApplication base type class for SQL. This would be known as the "seed" class. As well as a discovery for it. But because there are multiple SQL roles that can be installed, each with their own separate services, we would create ApplicationComponent base type classes for each one. Each of those would also have their own discoveries that would use the seed class as the Discovery Target. But in order to do that we need to create a "Relationship" between the seed and the roles.