The 4 steps translation process

The process of translation of a contract in natural language into a formal specification requires to perform the following steps. In the first step, semantic annotation is performed to identify the different contract concepts of a contract (e.g., roles, obligations, conditions, etc.) or concerning the identification of the structural elements of the contract (e.g., clause, title). Semantic annotation lead to the identification of the following concepts. The annotation process is defined in terms of the paper (ContracT PoEM reference).

CONCEPT

DESCRIPTION

Contract

The concept is used to label the document as such

Asset

An Asset is equivalent to Consideration in the common law

Party

Parties are legal agents (persons or institutions) who are in relationship with an Asset (e.g. “own”) in a Contract

Role

Actors play Roles in the concept of Prescribed behaviour.

Obligation

Obligation is an Action that a Party is conditionally or unconditionally required to perform.

Power

Power is a Right a Party can exert in specific Situation

Right

Right is an Action that a Party is conditionally or unconditionally permitted to perform.

Situation

Situation is a state of affair

Condition

Conditions establish circumstances under which deontic concepts (Right and Obligation) are applicable

Event

a happening that occurs at a time point, and cannot change. Events have pre-state and post-state situations

Subsequently the relationships between the different elements of the contact are identified. For each power and obligation 5 different elements have to be identified: trigger, antecedent, consequent, debtor and creditor. The elements identified are defined as such in the process:

CONCEPT

DESCRIPTION

Debtor

Debtors fulfill obligations or exercise powers by bringing them forward

Creditor

Obligations are fulfilled to creditors

Antecedent

Antecedent (pre-condition) is a legal situation that has to be brought forward by an obligation or a power

Consequent

Consequent (post-condition) is a legal situation that is brought forward by an obligation or a power

Trigger

Triggers implies the origination of a new obligation. Triggers are situations that are stated in terms of propositions. Situations are states of affairs and are comprised of possibly many endurants (including other situations and relata)

A few elements can be reused for the identification of contract elements in step number two: debtors and creditors represents roles that are identified in the step of semantic annotation. Triggers, antecedent and consequent are situations and are expressed in boolean terms. Not every element is specificied for every power and obligation and may be added manually to fully identify relationships. As a general note, not every element is used in the subsequent step but they will be necessary for subsequent steps. As such, to ease the identification of requirements for each steps, a mapping has been integrated in the process, in order to identify how every single element determined and identified in each step is reused in one or more subsequent steps of the process. The identification antecedent, consequent and triggers can be supported by the annotation step. For example, based on recurring patterns that could determine a a casualty relationship to identify triggers and that in the legal ontology have been called “events” and in which antecedent and consequent may refer to pre-state and post-state obligations. Concerning contract automation and more specifically with the development of smart contracts in general (e.g., including ChainCode in Hyperledger), the concept of event is mostly used to define what in our approach is defined as trigger.

The third phase, related to the identification of a domain model, is composed by two sub-steps. In a first step, variables and parameters are identified. In our definition, a variable is a container for a specific type of data, like integer, float, string, etc. A parameter is the value assigned to the the variable. In the second sub-step, the domain model is defined that categorizes the contract elements into the legal ontology adapted. With a contract automation objective, parameters and local variables has to be modified to make it fit for the contract being analyzed, similarly to contract templates frequently available for recurring contracts (e.g., rental of an house). In the meat contract, such elements are referring to the quantity of the meat, the quality, dates, prices, interest rates and days concerning the right to terminate. “Is a” represents a subclass of a more general class. A relevant part of the elements identified in the domain model are the elements identified with semantic annotation (e.g., seller, buyer, asset). Moreover, the identification of parameters and named variables can potentially be based on the grammar that has been defined in the first step for semantic annotation (e.g., amount, currency, weight, distance, unit). Similarly, the grammar identified for structure annotation can be used (e.g., name, dates, contract identifier). The domain model represents, in a way, the specialization of the ontology for the specific contract being analyzed. The elements of the domain model can be generally divided into three categories: 1) the parties involved in the contract (e.g., Seller and Buyer), 2) the exchange representing the substance of the contract (e.g. meat versus monetary payment) and the 3) events that are arising from the perfomance of the contract (e.g. delivered, paid, paid late, disclosed)

The fourth step refers to the generation of the formal specification which entails 1) the domain section, already identified in the previous step, contains domain-dependent concepts and axioms and the specializations of Symboleo’s primitive concepts, and corresponds to the definitions stated in contracts. 2) The contract body which represents the core of the contract specifying its objective and which is composed by the following elements: