# Cognition enhanced Natural language Information Analysis Method

Cognition enhanced Natural language Information Analysis Method (CogNIAM) is a conceptual fact-based modelling method, that aims to integrate the different dimensions of knowledge: data, rules, processes and semantics. To represent these dimensions world standards SBVR, BPMN and DMN from the Object Management Group (OMG) are used. CogNIAM, a successor of NIAM, is based on the work of knowledge scientist Sjir Nijssen.
CogNIAM structures knowledge, gathered from people, documentation and software, by classifying it. For this purpose CogNIAM uses the so-called ‘Knowledge Triangle’. The outcome of CogNIAM is independent of the person applying it. The resulting model allows the knowledge to be expressed in diagrammatic form as well as in controlled natural language.

## The different dimensions of knowledge

CogNIAM recognises 4 different dimensions of knowledge:
* Data: What are the facts?
* Process: How are facts generated/deleted/altered?
* Semantics: What do the facts mean?
* Rules: What conditions apply on the facts?
These dimensions influence each other heavily. Rules restrict data, Semantics describe the concepts and terms used in processes etc., therefore The aim of CogNIAM is to integrate these different dimensions.

## Structuring knowledge

As mentioned earlier, CogNIAM classifies knowledge using the knowledge triangle . The knowledge that can be mapped to the knowledge triangle is structurally relevant and can be verbalised. Knowledge that cannot be verbalised, for example the ‘Mona Lisa’, is not included. Also the knowledge must be structurally relevant. Not structurally relevant is for example motivation (the why?). It is important information, but it is not an added value to the model. The remaining knowledge can be mapped to the knowledge triangle. The knowledge triangle consists of three levels

### Level 1 – The level of facts

The majority of knowledge consists of concrete facts. Facts describe possible current, past or future states. In CogNIAM a fact is defined as “a proposition taken to be true by a relevant community”.
An example of a level 1 fact is:
       “The capital of Italy is Rome.”

### Level 2 – The domain-specific level

In this level the rules that govern the facts of level 1 are specified. For the example above a rule governing the level 1 facts could be “a country has exactly one capital”. This is a rule that ensures no untrue states or disallowed transitions between different states can occur at level 1. Besides rules level 2 contains six more knowledge categories, which are discussed in the next chapter.

### Level 3 – The generic level

This level is not associated to any specific domain, it says nothing about capitals or countries. As level 2 governs the facts on level 1, the generic level governs the knowledge categories of level 2. It consists of the same knowledge categories, but here they are applied to the content of level 2. In other words, level 3 contains the rules that determine the rules. The generic level can also be seen as a domain-specific level with the domain being ‘domain-specific knowledge’. As a result, level 3 also governs itself.

## Knowledge categories

Level 2 and 3 of the knowledge triangle consist of seven knowledge categories:
* Concept definitions describe the meaning of every term or group of terms at the fact level. A large part of the semantics dimension can be found here.
* Fact types provide the functionality to define which kinds of facts are considered to be within the scope of the domain of interest.
* Communication patterns:
** Fact communication patterns act as a communication mechanism to be used as a template to communicate facts using terms the subject matter expert is familiar with
** Rule communication patterns act as communication mechanism for the rules (see below) of the conceptual schema.
* Rules, distinguishing between:
** Integrity or validation rules, also known as constraints, restrict the set of facts and the transitions between the permitted sets of facts to those that are considered useful. In terms of data quality, integrity rules are used to guarantee the quality of the facts.
** Derivation rules are used to derive or calculate new information (facts) based on existing information.
** Exchange rules transfer facts into the administration of that domain or remove facts from the administration. In other words, they specify how facts are added and/or removed from the fact base so that the system stays in sync with the communication about the outside world.
** Event rules specify when to update the set of ground facts by a derivation rule or exchange rule in the context of a process description.
* Process descriptions specify the fact consuming and/or fact generating activities (the exchange and/or derivation rules) to be performed by the different actors for that process, as well as the event rules invoking the execution of those exchange and derivation rules in an ordered manner.
* Actors, identifying the involved participants and their responsibilities in the processes (in terms of the exchange and derivation rules they need to execute).
* Services, identifying the realisations of the process descriptions in terms of information products to be delivered or consulted