1. Create Ontologies and Roles
When starting with configuring a new process, it makes sense to first create ontologies and then roles.
- A Contract, which will be the result of our account opening process.
- A Person, namely the client who wants to open an account. This person will also be the account holder, which will be important when creating roles.
We therefore need two ontologies: Contract and Person.
It is important to differentiate between an ontology and an instance of an ontology. An ontology is a template. An instance of an ontology is what we get, when we have filled out and completed the template.
Let's take 'Person' as an example. The ontology 'Person' acts as the blueprint of a person. It tells us that a person has a first and last name as well as a date of birth. However, that's only the template. Once we have filled out and completed this template e.g. with 'Tim Jones, 14.06.1978' we have created an instance of 'Person', namely a person called Tim Jones who was born in 1978.
When creating a new ontology, we have to define two essential things: a key and a name.
The key is an internal reference. This key stays the same, no matter what language we use Atfinity in. That way it functions like a clear identification of that ontology which Atfinity can use in its code. Therefore, it needs to be unique. This key should only exist once in Atfinty. But at the same time, it should be meaningful. For our scenario, 'Contract' works perfectly and helps us to recognise the contract ontology by its key.
As a name, we write 'Contract'. This describes best, what we are dealing with. The name is what is shown to the user of Atfinity. Unlike the key, the name does not need to be unique. It also can be translated to different languages if necessary.
You will have noticed that in this case the name looks just like the key. But this is only the case if we use Atfinity in English. Keep in mind that the name 'Contract can be translated, so it would be 'Vertrag' in German or 'Contratto' in Italian. Although the names are different, they all have the same key, 'Contract'.
Now that we have created the contract ontology repeat this step to create a second ontology for the person. Use 'Person' as key and name.
An outcome ontology we create can have roles that need to be taken by instances of other ontologies. In our scenario, a contract needs to state the person who is the account holder of the newly opened account. The role Account holder therefore belongs to the outcome ontology 'Contract' and can be taken by instances of the ontology 'Person'.
Similarly to creating an ontology, creating a role starts with giving the role a key and a name. In our case we write 'AccountHolder' for the key and 'Account Holder' for the name.
In the previous step we have only created the role 'Account Holder'. Now we need to define the ontology that can have this role. As explained before, that's the ontology 'Contract' in our scenario.
We now also need to specify who is allowed to take the role. In our case, the account holder needs to be a person. 'Account Holder' therefore applies to instances of the ontology 'Person'.
And just like that we are already done with this step. Go to the next article where we will Create Information for our two ontologies.
Although we have already created the necessary roles, practise your understanding by creating another role, e.g. the role of a beneficial owner.