When any member of a family has a relationship with any other member of another family, all members of both families are related. This is the law of transference where the relationships of one party transfer to become relationships of all parties. However the nature of the relationship is different in that the parties to the relationship are directly related while the other family members of the parties to the relationship are indirectly related. What this means is that for indirectly related parties to recognize each other, they must “go through” the related parties. The extended relationships that link all members of one family to all members of another family is called a path.
A series of indirect relationships, and the concept that indirectly related parties must “go through” the related parties is illustrated in the image below.
In the example above, the directly related parties between the two families (or Data Stacks) are the Store table and the City table. All of the other tables in both families are indirectly related. If one were to ask the question, “on what continent does a specific employee in a specific store work?”, one would need to follow the path as follows:
To understand this path, consider it as follows:
- Start by moving up the Store stack from the Employees table to the store table.
- Move across from the Store Stack (Family) to the City Stack (Family)
- Move up the geographic stack from City to State to Region to Country to Continent to, finally, the ‘Continent Name’ field in the related record
Following this path, one would get the answer to the question “on what continent does an employee in a specific store work?” Paths are used in formulae written in the Ninox coding language to access related (or referenced) data within and across multiple stacks and families. Keep in mind that the path can span multiple stacks and families. In the image below, the previous example is expanded to include information about the employees of the company who are regional managers. In the image below, the One-to-One link between the Region and Regional Managers table (a One-to-One relationship) has been added.
In the example above, one could answer the question “who is that employees regional manager” by following the path Employee.Store.City.State.Region.‘Regional Managers’.‘Manager Name’. This path demonstrates the Law of Transference in that because a member of the Continent Family is related to a Member of the Regional Managers Family and because another member of the Continent Family is related to a member of the Store Family, there is an indirect relationship between stores (and their employees) and regional managers. It should be noted that this is a One-to-One relationship in that each single store has a single Regional Manager.