It's great to have the ability to store your data in a consistent way, like in a database. The Catalog app provides the attribute for manual linking an object to other objects and a read-only attribute for displaying the 'external' links of the current entry. Those are Directory and Linked Catalog Entries attributes respectively.
Why not displaying the external links automatically?
There are several reasons why we decided to make external links displaying manually controlled:
- There is no need to overweight an entry with unnecessary info i.e. a country can be used as a reference in a way too many objects. Yet, not all these links carry a value for a user. Like, do you really need to see the 100500 links to cities under a country entry (especially you can get this information by simply filtering the cities in their directory)? Probably, not. Use the Linked Catalog Entries wisely to display only the valuable information.
- An object can be linked to another one via more than one attribute i. e. Country of origin and Country of manufacturing for a product. Automatical links will not give you the same setting options the good old manual-set attribute does. With the Catalog approach, you can display those countries in one or separate lists, display only one kind or not display at all.
- Naming is something that shouldn't be ignored. Auto-links will require auto-naming that will be clumsy in contrast to a manually set name. For the same example above: products are not just products in relation to the Country of manufacturing. They are Manufactured products and also they are Originated products in relation to the Country of origin.
Why I cannot link entries both ways?
Consider that two objects cannot be on equal ground one with another. There are always an 'object' and its 'property' even if it is not always obvious.
A short quiz "Wher is an object and where is a property"
asset / owner
contact / company
employee / skill
So, how to link objects in Catalog?
Step 1. Define the object (i.e. Employee) and add a Directory attribute to its template. Name it (i.e. Location) and select a directory as a target one for fetching options from (Countries). Your employee template now allows user to select locations from the list of countries.
Step 2. Define if you need to get the statistics for a particular parameter. Maybe it's not necessary if the only statistics you want to get is the employee distribution by countries (you can just filter the list of employees). But if you want to get the information of the following kind – "Which countries we have our employees located but don't have an office opened yet?" – navigate to the relevant template (country) and add the Linked Catalog Entries attribute there with selecting employees as the target directory. You can add this attribute any time later, it will retrieve the information instantly.
Use the Linked Via setting if you link one directory to another via several attributes and want to display those links separately.