Semantic types in i2 Analyst's Notebook and iBase
What is a semantic type?
A semantic type is the bridge between the real world and the computer world; the translation, as it were. It indicates which category an entity, link or field belongs to in the real world and is thus converted into a meaning that the program also understands. For example, the entity 'person' has the semantic meaning 'person', the 'first name' field 'person first name' and the link 'financial transactions' has the semantic meaning 'transactions'.
A semantic type gives an extra layer of meaning to information. With this, Analyst's Notebook and iBase understand that certain entities, such as 'plane', 'train' and 'boat', share real-world characteristics, namely properties associated with means of transport. This distinguishes them from other entities, such as persons. To keep good track of these semantic meanings, the program divides them into categories and subcategories. Thus, the entity 'suspect' falls under the category of person, as do the entities of woman, police officer or alias. The ‘person’ category is a subcategory of the ‘legal entity’ category, which also includes organisations. Plane, train and boat fall under the category of 'transport' and thus under the category of 'property' and then under the category of 'possession'. There are certain properties that apply to an entire category, and the more specific the subcategory is, the more specific those properties can be. For instance, a person can have an age and a 'property', ownership, an (estimated) value.
The fact that 'persons' is a subcategory under the umbrella term 'legal entity' is also known as vertical alignment. The fact that categories have subcategories makes for a hierarchical classification of semantic meanings. This means that if a record of type police officer is created, it will also automatically be given the semantic meaning 'person' and therefore automatically the semantic meaning 'legal entity'. This is also called the semantic path. There are properties that apply to all 'legal entities', organisations and persons, and on top of that, there are properties for organisations that differ from the properties for persons.
Figure 1 shows some semantic types and how they are classified in iBase/Analyst's Notebook. For example, you will see that under the 'property' category, there are several subcategories, including 'account', 'animal', 'bank account' and 'bank card'. Under the 'bank card' subcategory, there are two more subcategories, namely a 'credit card' and a 'debit card'. These subcategories that fall together under the same category are horizontally aligned. They are not subordinate to each other.
So vertical alignment means that under a category, there are subcategories that satisfy the properties of the category above, and horizontal alignment means that multiple semantic types fall under the same category and have their own individual properties on top of the shared properties of the category above.
Figure 1 Semantic type classification
Using semantic types in Analyst's Notebook:
In Analyst's Notebook, the semantic path and type can be found in the item properties of an entity or link under Analysis Attributes.
- List Items: it is possible to sort by both semantic path and semantic type. Clustering by semantic path puts all kinds of similar entities together and uses vertical alignment.
- Visual Search: here you can search for both single entities and linked entities with certain properties, this can also be done based on their semantic type. This makes it possible, for example, to search by all means of transport (semantic type 'transport') without knowing whether it is a bus, bike or plane.
- Search: as a search term, you can use the semantic type, such as 'person'. The search results will show all entities that fall under it. You can also opt for 'legal entity'. You will then see all persons and companies.
- Activity View: if you want to use this function using iBase data, it is again important that certain fields have a semantic type. This involves the fields date, time and duration. A start date/time must be of the type 'Event Start Date/Time' and an end date/time must be of the type 'Event End Date/Time'. If you use a duration, it must be of the type 'Duration' and also be a numeric or text field.
- Find Matching Entities: you use this functionality to search for duplicate records in your chart and makes full use of semantic types. It does not literally look to see if the text exactly matches, but searches in the context, whereby the different fields associated with an entity can also make a difference. For example, a person has a CSN and this field has the semantic type 'social security number'. This number is not compared to a phone number because it belongs to a different semantic category and therefore cannot be a match. If your data in a chart comes from different sources, it is important to check whether the same semantic type is also used for corresponding data. If this is not the case, then no match will be found.
Using semantic types in iBase:
The main function within iBase where you can use a semantic type is to create a query. In an SQL server database, you have the option to search within a semantic type rather than a specific entity. The advantage of this is that you can search across entities. For example, if your database contains entities within the same semantic type such as 'persons' and 'suspects', then you can create a query where you can search both entities. Figure 2 shows a query where you search for a person (individual or suspect) linked to a motor vehicle (bus, car, motorbike, truck). The pie chart button allows you to select a semantic type.
Figure 2 Query search
The topic of semantic type is covered in detail in the i2 iBase Designer training. If you would like to know more about i2 iBase and/or Analyst's Notebook, please contact info@dataexpert.nl. For information on available dates and costs, please contact training@dataexpert.nl