Skip to content

Contract Analytics Knowledge Model

Overview

The Contract Analytics Knowledge Model (display name: Contract Analytics EN v#) can analyze commercial contracts written in English to:

  • Categorize them to determine their type and/or subtype.
  • Extract key metadata—such as dates and parties—and legal clauses.

Workflow

Any workflow with this model should be fed with PDF documents. It is recommended to place an Extract Converter processor block before the model, as pictured below, because the processor gets text out of PDF documents in an optimal way.

Since contracts are often large documents, resulting in relatively long and intensive processing, consider changing the default values for the deployment properties of the blocks.
For example, in case of contracts with about 50 pages each, you could use these values:

Block Timeout Memory CPU
Extract Converter processor >= 5 m 3000 Mi 1000 m
Model >= 15 m 3000 Mi 1000 m

If the case of scanned documents, also set these parameters for the block of the Extract Converter processor:

  • Enable or disable OCR recognition: enabled
  • Specify OCR language: eng

Categorization

The categorization module aims at classifying contracts according to their type and sub-type. The category tree is:

1000 Contract Type
    1001 Affiliate Agreement 
    1002 Agency Agreement 
    1003 CoBranding Agreement 
    1004 Collaboration Agreement 
    1005 Confidential Information Disclosure/NDA  
    1006 Consulting Agreement 
    1007 Development Agreement 
    1008 Distributor Agreement 
    1009 Endorsement Agreement 
    1010 Franchise Agreement 
    1011 Hosting Agreement 
    1012 Intellectual Property Agreement 
    1013 Joint Venture Agreement 
    1014 License Agreement 
    1015 Maintenance Agreement 
    1016 Manufacturing Agreement 
    1017 Marketing Agreement 
    1018 Non-Compete Non-Solicit Agreement 
    1019 Outsourcing Agreement 
    1020 Promotion Agreement 
    1021 Property Lease or Purchase  
    1022 Reseller Agreement 
    1023 Service Agreement 
    1024 Software as a Service 
    1025 Sponsorship Agreement 
    1026 Strategic Alliance Agreement 
    1027 Supply Agreement 
    1028 Transportation Agreement 
    1029 Warranty  
2000  Contract Sub-Type  
    2001 Master  
    2002 Addendum  
    2003 Amendment  
    2004 Renewal 
    2005 Statement of Work 
    2006 Order Form  
    2007 Change Order

For example, considering this fragment:

Marketing affiliate agreement
This Agreement is made this 1st day of October 2008, (the "Effective Date"), by and between Equimart, Inc., a corporation organized under the Laws of Virginia with its principal place of business at 324 Thimble Shoals Boulevard Newport News, Virginia 23606 ("Equimart"), and Porranch Credit Report.com, LLC a Corporation organized under the Laws of Florida, with its principal place of business at 8800 N. Congress Ave, Suite 2001, Boca Raton FL33487 ("Marketing Affiliate").

the corresponding categorization could be:

"categories": [
    ...
    {
        "frequency": 0,
        "hierarchy": [
            "Affiliate Agreement"
        ],
        "id": "1001",
        "label": "Affiliate Agreement",
        "namespace": "contract_analytics",
        "positions": [
            {
                "end": 33,
                "start": 24
            },
            {
                "end": 43,
                "start": 34
            }
        ],
        "score": 10,
        "winner": true
    },
    {
        "frequency": 0,
        "hierarchy": [
            "Marketing Agreement"
        ],
        "id": "1017",
        "label": "Marketing Agreement",
        "namespace": "contract_analytics",
        "positions": [
            {
                "end": 23,
                "start": 14
            },
            {
                "end": 43,
                "start": 34
            }
        ],
        "score": 10,
        "winner": true
    }
    ...
]

Extraction groups and classes

The model predicts several data points spanning across a variety of topics that fall into two main macro-areas: metadata and clauses.

Note

In this model's output, the template key corresponds to the concept of group and template fields correspond to classes.

Metadata

Metadata refers to key information that uniquely identifies a contract, such as the document's name, legal parties, and relevant dates.

DOCUMENT_NAME

The DOCUMENT_NAME group extracts the name—also called title—of the contract in its only class Name.
The title of a contract tends to appear on the cover page or in the introductory paragraph. However, it may also occur in other less common positions within the contract.

For example, considering this fragment:

EXHIBIT 10.66
SUPREMESEC TECHNOLOGIES, INC. DISTRIBUTOR AGREEMENT
This Agreement is made and entered into effective as of November 5, Supremesec Technologies, Inc., a Texas corporation ("SEC"), and Distributor agree as follows:
1997 (the "effective Date), by and between Euroasian Macro ("Distributor").

the corresponding extraction could be like this:

"extractions": [
    ...
    {
        "fields": [
            {
                "name": "Name",
                "positions": [
                    {
                        "end": 65,
                        "score": 1,
                        "start": 14
                    }
                ],
                "score": 1,
                "value": "SUPREMESEC TECHNOLOGIES, INC. DISTRIBUTOR AGREEMENT"
            }
        ],
        "namespace": "contract_analytics",
        "template": "DOCUMENT_NAME"
    }
    ...
]

DATES

The most relevant dates within a contract are:

  • Agreement date: the date as of which the contract agreement is drawn up.
  • Effective date: the specific date when an agreement becomes legally binding, and when the terms outlined in the contract begin to apply; also known as Commencement Date or Start Date.
  • Expiration date: the date when a contract’s initial term expires; it generally refers to the ending or completion of a contract according to its own terms.

They are extracted, with variations and related classes, in the DATES group. Variations and related classes represent the possible position of dates in the contract and the form in which they are expressed.

Class Description
Agreement_Date Agreement date
Agreement_Date_Lone_Year Agreement date is in a non-specific section of the document where there is a clear statement of the agreement’s date and represents also an incomplete date, for example composed of just of the year with no indication about month and day.
Effective_Date Effective date
Effective_Date_Sentence In case of non explicit date, the whole sentence that contains the provisions describing the contract effective terms is extracted.
Effective_Date_Cloned Cloned from Agreement_Date if an effective date is not present and it is normalized to Effective_Date at the end of process.
Expiration_Date Expiration date is in Term, Termination or Definition sections in explicit form or is calculated from other sections. Normalized.
Expiration_Date_Value The time value of expiration. The amount of years, months, days, and so on.
Expiration_Date_Time_Unit Expiration date time unit (could be years, months, days and so on).
Expiration_Date_Normalized_Days Expiration dates normalized and expressed in days.
Expiration_Date_Perpetual In case of no expiration date.
Expiration_Date_Sentence In case of non explicit date, the whole sentence that contains the provisions describing when the contract becomes effective is extracted.

For example, given the following fragment:

EXHIBIT 99.3
4/18/2018
AGENCY AGREEMENT
This Agency Agreement ("Agreement") is made as of April 18, 2018 by and between The Mid-Cat Stores, on the one hand, and (a) a contractual joint venture comprised of PX Retail, Inc. ("PX") and Lions Savings Fund Society, FSB, as the indenture agent and collateral trustee for the 8.00% second-lien hand (in such capacities, the "Notes Trustee" and collectively with Agent, "Purchaser"). Purchaser
% 345
Inc. and its associated chapter 11 debtors in possession (collectively, "Merchant"),1 Capital Group, LLC ("Lions" and collectively with PX, the "Agent") and (b) Wilmington senior secured notes due 2021 (the "Second-Lien Notes") issued by BTDS, on the other and Merchant are collectively the "Parties".

the model could extract something like this:

"extractions": [
    ...
    {
        "fields": [
            {
                "name": "Agreement_Date",
                "positions": [
                    {
                        "end": 104,
                        "score": 1,
                        "start": 90
                    }
                ],
                "score": 1,
                "value": "04/18/2018"
            }
        ],
        "namespace": "contract_analytics",
        "template": "DATES"
    },
    {
        "fields": [
            {
                "name": "Effective_Date",
                "positions": [
                    {
                        "end": 22,
                        "score": 1,
                        "start": 13
                    }
                ],
                "score": 1,
                "value": "04/18/2018"
            }
        ],
        "namespace": "contract_analytics",
        "template": "DATES"
    }
    ...
]

PARTIES

The parties are the two or more individuals or entities that are entering into the legally binding agreement and which are responsible for all the obligations set forth in the contract.

Finding the parties in a contract implies detecting the names of these parties together with other elements characterizing them and providing crucial information for contract interpretation.

These elements include for example:

  • Defined terms that are mainly abbreviations of a party’s name and are usually in quotation marks. Defined terms sometimes include indications about subsidiaries, affiliates or successors being involved in the contract for a given party.
  • Defined term of a group of parties that refers to a group of parties rather than being specific to only one party.
  • DBA and AKA names that are fictitious business names and sometimes include former names of parties (FKA)1.

Parties are usually declared in the introduction, but they can also—or only—be mentioned in the signature page, so the PARTIES group can be related to the SIGNATORIES group group.

The model extracts parties in the PARTIES group, which has these classes:

Class Description
Party The name of the company or individual found on the introductory page. Some other keywords are included, for example Franchisee, Sales Agent, Distributor, You or phrases such as the entity identified in Exhibit A or the party set forth in the signature page when these were mentioned as such in the introductory paragraph.
Alias The defined term (or terms) specific to Party.
Alias_Shared The string of text containing the defined term (or terms) referring to a group of parties, including the party in the record (for example several parties sharing the same defined term).
Party_Attribute The text characterizing the name (aka, fka, dba) which immediately precedes the dba, fka and aka name itself.
AffSubSucc A single word indicating if Party includes any Affiliates, Subsidiaries or Successors.
Party_dba_aka The string of text containing the dba and aka names plus the text characterizing the name (aka, fka, dba), which immediately precedes the dba, fka and aka name itself.
Other_Party The string of text containing the name of the entity (a company) which Party represents, acts on behalf or in the interest of.
Other_Party_Person The string of text containing the name of the entity (a person) which Party represents, acts on behalf or in the interest of.

For example, considering the following fragment:

EXHIBIT 99.3
4/18/2018
AGENCY AGREEMENT
This Agency Agreement ("Agreement") is made as of April 18, 2018 by and between The Mid-Cat Stores, on the one hand, and (a) a contractual joint venture comprised of PX Retail, Inc. ("PX") and Lions Savings Fund Society, FSB, as the indenture agent and collateral trustee for the 8.00% second-lien hand (in such capacities, the "Notes Trustee" and collectively with Agent, "Purchaser"). Purchaser
% 345
Inc. and its associated chapter 11 debtors in possession (collectively, "Merchant"),1 Capital Group, LLC ("Lions" and collectively with PX, the "Agent") and (b) Wilmington senior secured notes due 2021 (the "Second-Lien Notes") issued by BTDS, on the other and Merchant are collectively the "Parties".

the extraction output for the PARTIES group could be like this:

"extractions": [
    ...
    {
        "fields": [
            {
                "name": "Party",
                "positions": [
                    {
                        "end": 221,
                        "score": 1,
                        "start": 206
                    }
                ],
                "score": 1,
                "value": "PX Retail, Inc."
            },
            {
                "name": "Alias_Shared",
                "positions": [
                    {
                        "end": 412,
                        "score": 1,
                        "start": 384
                    },
                    {
                        "end": 423,
                        "score": 1,
                        "start": 414
                    }
                ],
                "score": 1,
                "value": "and collectively with Agent, Purchaser"
            },
            {
                "name": "Alias",
                "positions": [
                    {
                        "end": 226,
                        "score": 1,
                        "start": 224
                    }
                ],
                "score": 1,
                "value": "PX"
            }
        ],
        "namespace": "contract_analytics",
        "template": "PARTIES"
    },
    {
        "fields": [
            {
                "name": "Alias_Shared",
                "positions": [
                    {
                        "end": 412,
                        "score": 1,
                        "start": 384
                    },
                    {
                        "end": 423,
                        "score": 1,
                        "start": 414
                    }
                ],
                "score": 1,
                "value": "and collectively with Agent, Purchaser"
            },
            {
                "name": "Party",
                "positions": [
                    {
                        "end": 264,
                        "score": 1,
                        "start": 233
                    }
                ],
                "score": 1,
                "value": "Lions Savings Fund Society, FSB"
            },
            {
                "name": "Alias",
                "positions": [
                    {
                        "end": 382,
                        "score": 1,
                        "start": 369
                    }
                ],
                "score": 1,
                "value": "Notes Trustee"
            }
        ],
        "namespace": "contract_analytics",
        "template": "PARTIES"
    }
    ...
]

SIGNATORIES

The signatories are the parties that have signed the contract. They are extracted by the model in the SIGNATORIES group, which has these classes:

Class Description
Party The name of the company or individual found on the signature page.
Party_dba_aka The string of text containing the dba and aka names plus the text characterizing the name (aka, fka, dba), which immediately precedes the dba, fka and aka name itself.
Alias The defined term (or terms) specific to Party.

For example, considering the following fragment of a contract:

the corresponding portion of the extraction output could be like this:

"extraction": [
    ...
    {
        "fields": [
            {
                "name": "Party",
                "positions": [
                    {
                        "end": 27075,
                        "geometry": [
                            {
                                "box": [
                                    76,
                                    160,
                                    102,
                                    174
                                ],
                                "page": 9,
                                "pageHeight": 1170,
                                "pageWidth": 827
                            }
                        ],
                        "score": 1,
                        "start": 27060
                    }
                ],
                "score": 1,
                "value": "OSG CORPORATION"
            }
        ],
        "namespace": "contract_analytics",
        "template": "SIGNATORIES"
    },
    {
        "fields": [
            {
                "name": "Party",
                "positions": [
                    {
                        "end": 27093,
                        "geometry": [
                            {
                                "box": [
                                    420,
                                    159,
                                    454,
                                    172
                                ],
                                "page": 9,
                                "pageHeight": 1170,
                                "pageWidth": 827
                            }
                        ],
                        "score": 1,
                        "start": 27076
                    }
                ],
                "score": 1,
                "value": "MANA PARTNERS LLC"
            }
        ],
        "namespace": "contract_analytics",
        "template": "SIGNATORIES"
    }
    ...
]

GOVERNING_LAW

The Governing Law, also called Choice of Law or Applicable Law, refers to the law of a State or Country that governs the interpretation of a contract and that applies in the event of a legal dispute between the parties.
Governing Law is extracted in the Governing_Law class of the GOVERNING_LAW group.
For example, considering the following fragment of a contract:

the corresponding output for this group could be like this:

"extraction": [
    ...
    {
        "fields": [
            {
                "name": "Governing_Law",
                "positions": [
                    {
                        "end": 23419,
                        "geometry": [
                            {
                                "box": [
                                    556,
                                    443,
                                    597,
                                    457
                                ],
                                "page": 7,
                                "pageHeight": 1170,
                                "pageWidth": 827
                            }
                        ],
                        "score": 1,
                        "start": 23402
                    }
                ],
                "score": 1,
                "value": "THIS AGREEMENT SHALL BE GOVERNED IN ALL RESPECTS, INCLUDING VALIDITY, INTERPRETATION AND EFFECT, BY THE LAWS OF THE STATE OF DELAWARE WITHOUT GIVING EFFECT TO THE CHOICE OF LAW PRINCIPLES OF SUCH STATE."
            }
        ],
        "namespace": "contract_analytics",
        "template": "GOVERNING_LAW"
    }
    ...
]

Clauses

The clauses include a set of legal clauses constituting the backbone of all commercial transactions and can be defined as specific provisions that set forth the rights and obligations each party has under the agreement.

CONFIDENTIALITY_CLAUSE

Confidentiality legally binds one or more parties to non-disclosure of confidential or proprietary information. It is also known as Non-Disclosure clause.

The confidentiality clause is extracted in the Confidentiality class of the CONFIDENTIALITY_CLAUSE group.
For example, considering the following fragment:

5.1. Confidential Information. Except to the extent expressly authorized by this Agreement or otherwise agreed to in writing by the parties, each party agrees that, for the term of this Agreement and for 20 years thereafter, it shalt keep confidential and shall not publish or otherwise disclose and shall not use for any purpose other than as provided for in this Agreement any confidential information furnished to it by the other party pursuant to this Agreement, except that the foregoing shall not apply to any information for which the receiving party can demonstrate that such information: (i) was already known to the receiving party, other than under an obligation of confidentiality, at the time of disclosure by the other party; (ii) was generally available to the public or otherwise part of the public domain at the time of its disclosure to the receiving party; (iii) later became part of the public domain through no act or omission of the receiving party; (iv) was disclosed to the receiving party
by a Third Party who had no obligation to the disclosing party not to disclose such information to others; (iv) was independently developed by a person having no knowledge of or access to the disclosing party's Confidential Information; or (v) is an Authorized Disclosure under Section 5.3 below.

the corresponding output for the group could be like this:

"extractions": [
    ...
    {
        "fields": [
            {
                "name": "Confidentiality",
                "positions": [
                    {
                        "end": 251,
                        "score": 1,
                        "start": 239
                    },
                    {
                        "end": 403,
                        "score": 1,
                        "start": 379
                    },
                    {
                        "end": 295,
                        "score": 1,
                        "start": 287
                    }
                ],
                "score": 1,
                "value": "Confidential Information. Except to the extent expressly authorized by this Agreement or otherwise agreed to in writing by the parties, each party agrees that, for the term of this Agreement and for 20 years thereafter, it shalt keep confidential and shall not publish or otherwise disclose and shall not use for any purpose other than as provided for in this Agreement any confidential information furnished to it by the other party pursuant to this Agreement, except that the foregoing shall not apply to any information for which the receiving party can demonstrate that such information: (i) was already known to the receiving party, other than under an obligation of confidentiality, at the time of disclosure by the other party; (ii) was generally available to the public or otherwise part of the public domain at the time of its disclosure to the receiving party; (iii) later became part of the public domain through no act or omission of the receiving party; (iv) was disclosed to the receiving party"
            }
        ],
        "namespace": "contract_analytics",
        "template": "CONFIDENTIALITY_CLAUSE"
    }
    ...
]

LIMITED_LIABILITY_CLAUSE

Limited Liability, also known as Limitation of liability, Cap on monetary damages or Exclusion of indirect damages, is a clause that rules the liability for damages or losses to be excluded for one or both parties in the agreement. This clause is used to minimize the amount of money and/or damages recoverable by the other party, in that it caps the monetary amount a party is held liable to pay under certain circumstances.
The Limited Liability clause is extracted in the Limited_Liability class of the LIMITED_LIABILITY_CLAUSE group.

For example, considering the following portion of text:

21.5.2 Any statement or representation made by either Party shall not be binding on the other unless agreed otherwise agreed in writing and neither Party shall be liable to any third party for any loss or damages arising out of such statements or representations.

the extraction for this group could be like this:

"extractions": [
    ...
    {
        "fields": [
            {
                "name": "Limited_Liability",
                "positions": [
                    {
                        "end": 168,
                        "score": 1,
                        "start": 162
                    }
                ],
                "score": 1,
                "value": "Any statement or representation made by either Party shall not be binding on the other unless agreed otherwise agreed in writing and neither Party shall be liable to any third party for any loss or damages arising out of such statements or representations."
            }
        ],
        "namespace": "contract_analytics",
        "template": "LIMITED_LIABILITY_CLAUSE"
    }
    ...
]

DATA_SECURITY_CLAUSE

Data Security details the corrective actions that need to be taken in the event of a data or security breach that involves access to or theft of personal or highly sensitive information.
The Data Security clause is extracted in the Data_Security class of the DATA_SECURITY_CLAUSE group.

For example, from this fragment of a contract:

In forwarding Safety Reports to BIGA, Promoter shall comply with all applicable privacy and data protection laws, rules and regulations on the protection of individuals with regard to the processing of Personal Data and the free
movement of such data. "Personal Data" means information that can be used by itself or in combination with other available information to identify a specific individual. The Promoter shall collect, use and disclose any Personal Data obtained in the course of performing the safety related activities under this Agreement solely for the purposes of complying with the regulatory obligations as described in this Agreement, or as otherwise required by
law or by a court order. Promoter shall use electronic, physical, and other safeguards appropriate to the nature of the information to prevent any use or disclosure of Personal Data other than as provided for by this Agreement.
Promoter will also take reasonable precautions to protect the Personal Data from alteration or destruction.
Promoter shall notify BIGA promptly of any accidental, unauthorized, or unlawful destruction, loss, alteration, or disclosure of, or access to, the Personal Data ("Security Breach"), and take immediate steps to rectify any Security Breach.

the model would produce an extraction like this:

"extractions": [
    ...
    {
        "fields": [
            {
                "name": "Data_Security",
                "positions": [
                    {
                        "end": 1176,
                        "score": 1,
                        "start": 1163
                    }
                ],
                "score": 1,
                "value": "Promoter shall notify BIGA promptly of any accidental, unauthorized, or unlawful destruction, loss, alteration, or disclosure of, or access to, the Personal Data (\"Security Breach\"), and take immediate steps to rectify any Security Breach."
            },
            {
                "name": "Data_Security",
                "positions": [
                    {
                        "end": 860,
                        "score": 1,
                        "start": 847
                    }
                ],
                "score": 1,
                "value": "law or by a court order. Promoter shall use electronic, physical, and other safeguards appropriate to the nature of the information to prevent any use or disclosure of Personal Data other than as provided for by this Agreement."
            }
        ],
        "namespace": "contract_analytics",
        "template": "DATA_SECURITY_CLAUSE"
    }
    ...
]

INDEMNITY_CLAUSE

The indemnity sets out to protect one party from liability if a third party or third entity is harmed in any way. It contractually obligates one party to compensate another party for losses or damages that have occurred or could occur in the future.
The indemnity clause is extracted in the Indemnity class of the INDEMNITY_CLAUSE group.

For example, from this fragment of a contract:

10. INDEMNIFICATION 10.1 Indemnification. Each Party (the "Indemnifying respective employees,Party") agrees to indemnify, defend and hold harmless the other Party and its Affiliates and their directors, officers, agents and successors (collectively, the "Indemnified Parties") from and against any and all losses (including all costs, liabilities (including present and future damages), claims and expenses) incurred or suffered by any of the Indemnified Parties, to the extent arising out of, relating to or resulting from (a) a breach by the Indemnifying Party of this Agreement: or (b) any gross negligence or willful misconduct of the Indemnifying Party in connection with this Agreement.

the model would produce an extraction like this:

"extractions": [
    ...
    {
        "fields": [
            {
                "name": "Indemnity",
                "positions": [
                    {
                        "end": 129,
                        "score": 1,
                        "start": 200
                    }
                ],
                "score": 1,
                "value": "agrees to indemnify, defend and hold harmless the other Party and its Affiliates"
            }
        ],
        "namespace": "contract_analytics",
        "template": "INDEMNITY_CLAUSE"
    }
    ...
]

ENTIRE_AGREEMENT_CLAUSE

The Entire Agreement clause states that the agreement supersedes and makes void any prior arrangements, regardless of their form: the contract takes precedence over anything else or, in particular instances, it incorporates all previous agreements.
The Entire Agreement clause is extracted in the Entire_Agreement class of the ENTIRE_AGREEMENT_CLAUSE group.

For example, considering the following fragment:

the corresponding extraction could be like this:

"extractions": [
    ...
    {
        "fields": [
            {
                "name": "Entire_Agreement",
                "positions": [
                    {
                        "end": 25663,
                        "geometry": [
                            {
                                "box": [
                                    429,
                                    143,
                                    502,
                                    157
                                ],
                                "page": 8,
                                "pageHeight": 1170,
                                "pageWidth": 827
                            }
                        ],
                        "score": 1,
                        "start": 25650
                    }
                ],
                "score": 1,
                "value": "This Agreement contains the entire understanding of the parties with respect to the subject matter hereof and may be amended only by an agreement in writing executed by the parties hereto."
            }
        ],
        "namespace": "contract_analytics",
        "template": "ENTIRE_AGREEMENT_CLAUSE"
    }
    ...
]

Output structure

The model output has the same structure as any other model and is affected by the functional properties of the workflow block.
The peculiar parts of the output are the result of categorization, i.e. the categories array, and the result of information extraction, i.e. the extractions array.


    • DBA = doing business as
    • AKA = also known as
    • FKA = formerly known as