Datos del IPJ Gestión de la Calidad de los Datos de la GLEIF

Detalles de las comprobaciones de la calidad de los datos



Actualmente, las siguientes comprobaciones están constituyendo la configuración de las normas que se aplican para generar los informes de calidad de datos.
Esta configuración de las normas también está disponible como PDF o Excel.

Legal name is plausible

Precondition:

* lei:RegistrationStatus NOT IN ['ANNULLED']

Condition:

* lei:LegalName $PRESENT * lei:LegalName NOT IN $CASE_INSENSITIVE(['NOT AVAILABLE', 'N.A.', 'N/A']) * lei:LegalName NOT CONSISTING-ONLY-OF $PUNCTUATION_CHARACTER

Ensure LEI code is ISO 17442 compliant

Precondition:

* lei:RegistrationStatus IN ['ISSUED', 'PENDING_TRANSFER', 'PENDING_ARCHIVAL'] * lei:InitialRegistrationDate >= $DATETIME('2016-07-07T00:00:00+00:00')

Condition:

* lei:LEI $ISO_17442_COMPLIANT

Ensure appropriate code in legal address region

Precondition:

* lei:LegalAddress/lei:Region $PRESENT * lei:RegistrationStatus $MUTABLE

Condition:

* lei:LegalAddress/lei:Region IN $ISO_3166_2

Ensure appropriate code in legal address country

Precondition:

* lei:RegistrationStatus $MUTABLE

Condition:

* lei:LegalAddress/lei:Country IN ['XK', $ISO_3166_1_ALPHA_2]

Ensure compliance with GLEIF Accepted Legal Jurisdictions Code List

Precondition:

* lei:RegistrationStatus $MUTABLE

Condition:

* lei:LegalJurisdiction IN $GLEIF_ACCEPTED_LEGAL_JURISDICTIONS

Ensure internal registration statuses are not published

Precondition:

Condition:

* lei:RegistrationStatus NOT IN ['PENDING_VALIDATION', 'CANCELLED', 'TRANSFERRED']

Record has plausible renewal date

Precondition:

* lei:RegistrationStatus IN ['ISSUED']

Condition:

* lei:NextRenewalDate + $TIME_INTERVAL('1 D') >= leiFileHeader:ContentDate * lei:NextRenewalDate

Verify plausibility of dates for the record

Precondition:

* lei:RegistrationStatus NOT IN ['ANNULLED']

Condition:

* leiFileHeader:ContentDate >= lei:LastUpdateDate * lei:LastUpdateDate >= lei:InitialRegistrationDate

Appropriate setting of next renewal date of the record

Precondition:

* lei:RegistrationStatus NOT IN ['ANNULLED']

Condition:

* lei:NextRenewalDate > lei:InitialRegistrationDate

Ensure DUPLICATE records have at least one successor LEI

Precondition:

* lei:RegistrationStatus IN ['DUPLICATE']

Condition:

* lei:SuccessorLEI $PRESENT

Avoid uniqueness violations outside of transfers

Precondition:

* $COUNT(lei:LEI) > 1

Condition:

* $COUNT(lei:LEI) == 2 * FOR lei:LEI: * leiFileHeader:Originator $UNIQUE * IF RUT lei:RegistrationStatus IN ['PENDING_TRANSFER', 'PENDING_ARCHIVAL']: * $REFERRED_RECORD lei:RegistrationStatus NOT IN ['PENDING_TRANSFER', 'PENDING_ARCHIVAL'] * IF RUT lei:RegistrationStatus NOT IN ['PENDING_TRANSFER', 'PENDING_ARCHIVAL']: * $REFERRED_RECORD lei:RegistrationStatus IN ['PENDING_ARCHIVAL']

Validate SuccessorLEI

Precondition:

* lei:RegistrationStatus NOT IN ['ANNULLED'] * FOR lei:SuccessorLEI: * lei:SuccessorLEI $PRESENT

Condition:

* lei:SuccessorLEI $VALID

Ensure record is managed by an accredited LEI Issuer

Precondition:

* lei:RegistrationStatus NOT IN ['ANNULLED']

Condition:

* lei:ManagingLOU $LEI_ISSUER

Ensure correct registration statuses for active entities

Precondition:

* lei:EntityStatus IN ['ACTIVE']

Condition:

* lei:RegistrationStatus $MUTABLE

Check ManagingLOU equals Originator of the file

Precondition:

Condition:

* lei:ManagingLOU $EQUALS leiFileHeader:Originator

Inactive entities have correct registration status

Precondition:

* lei:RegistrationStatus NOT IN ['PENDING_TRANSFER','PENDING_ARCHIVAL'] * lei:EntityStatus IN ['INACTIVE']

Condition:

* lei:RegistrationStatus IN ['RETIRED']

Ultimate parent has correct relationship information

Precondition:

* lei:RegistrationStatus IN ['ISSUED'] * $COUNT($REPORTED_CHILD_RELATIONSHIPS) > 0 WITH: * rr:RelationshipType IN ['IS_ULTIMATELY_CONSOLIDATED_BY'] * rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED']

Condition:

* $COUNT($REPORTED_RELATIONSHIPS) == 0 WITH: * rr:RegistrationStatus $MUTABLE * $COUNT($REPORTED_EXCEPTIONS) == 1 WITH: * repex:ExceptionReason IN ['NATURAL_PERSONS', 'NON_CONSOLIDATING', 'NO_KNOWN_PERSON'] * repex:ExceptionCategory IN ['DIRECT_ACCOUNTING_CONSOLIDATION_PARENT'] * $COUNT($REPORTED_EXCEPTIONS) == 1 WITH: * repex:ExceptionReason IN ['NATURAL_PERSONS', 'NON_CONSOLIDATING', 'NO_KNOWN_PERSON'] * repex:ExceptionCategory IN ['ULTIMATE_ACCOUNTING_CONSOLIDATION_PARENT']

Reporting exceptions are distinct and without concurrent relationship records

Precondition:

* $COUNT($REPORTED_EXCEPTIONS) > 0

Condition:

* FOR $REPORTED_EXCEPTIONS: * repex:ExceptionCategory $UNIQUE * IF repex:ExceptionCategory IN ['DIRECT_ACCOUNTING_CONSOLIDATION_PARENT']: * $COUNT($REPORTED_RELATIONSHIPS) == 0 WITH: * rr:RegistrationStatus IN ['PUBLISHED','LAPSED']: * rr:RelationshipType IN ['IS_DIRECTLY_CONSOLIDATED_BY'] * IF repex:ExceptionCategory IN ['ULTIMATE_ACCOUNTING_CONSOLIDATION_PARENT'] * $COUNT($REPORTED_RELATIONSHIPS) == 0 WITH: * rr:RegistrationStatus IN ['PUBLISHED','LAPSED']: * rr:RelationshipType IN ['IS_ULTIMATELY_CONSOLIDATED_BY']

Provide complete, distinct parent information for non-branches

Precondition:

* lei:EntityCategory NOT IN ['BRANCH'] * lei:RegistrationStatus IN ['ISSUED']

Condition:

* FOR $REPORTED_DIRECT_PARENT_INFO: * $COUNT($REPORTED_EXCEPTIONS) == 1 * OR * $COUNT($REPORTED_RELATIONSHIPS) == 1 WITH: * rr:RegistrationStatus IN ['PUBLISHED'] * FOR $REPORTED_ULTIMATE_PARENT_INFO: * $COUNT($REPORTED_EXCEPTIONS) == 1 * OR * $COUNT($REPORTED_RELATIONSHIPS) == 1 WITH: * rr:RegistrationStatus IN ['PUBLISHED']

Published relationships point to an appropriate parent

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RegistrationStatus IN ['PUBLISHED']

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS WITH: * lei:LEI NOT $EQUALS rr:EndNode/rr:NodeID: * rr:EndNode/rr:NodeID $VALID * lei:RegistrationStatus $MUTABLE * FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS WITH: * lei:LEI $EQUALS rr:EndNode/rr:NodeID: * rr:RelationshipType IN ['IS_FUND-MANAGED_BY']

Validation reference is provided for public regulatory filiings

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:ValidationDocuments IN ['REGULATORY_FILING'] * rr:ValidationSources IN ['FULLY_CORROBORATED', 'PARTIALLY_CORROBORATED']

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * rr:ValidationReference $PRESENT

Ensure correct period dates of retired relationships

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RegistrationStatus IN ['RETIRED']

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * $COUNT(rr:RelationshipPeriod) > 0 WITH: * rr:PeriodType IN ['RELATIONSHIP_PERIOD'] * rr:StartDate $PRESENT * rr:EndDate $PRESENT * IF rr:RelationshipType IN ['IS_DIRECTLY_CONSOLIDATED_BY','IS_ULTIMATELY_CONSOLIDATED_BY']: * $COUNT(rr:RelationshipPeriod) > 0 WITH: * rr:PeriodType IN ['ACCOUNTING_PERIOD'] * IF $COUNT(rr:RelationshipPeriod) > 0 WITH: * rr:PeriodType IN ['ACCOUNTING_PERIOD']: * rr:StartDate $PRESENT * rr:EndDate $PRESENT

Relationship status is correct when parent record is inactive

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RegistrationStatus NOT IN ['DUPLICATE', 'ANNULLED', 'PENDING_ARCHIVAL', 'PENDING_TRANSFER'] * $END_NODE_RECORD lei:RegistrationStatus IN ['RETIRED']

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * rr:RelationshipStatus IN ['INACTIVE']

Ensure relationship status is correct when child record is inactive

Precondition:

* lei:RegistrationStatus IN ['RETIRED'] * $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RegistrationStatus NOT IN ['DUPLICATE', 'ANNULLED']

Condition:

* rr:RelationshipStatus IN ['INACTIVE']

Verify plausibility of relationship period dates

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RelationshipPeriod/rr:StartDate $PRESENT * rr:RelationshipPeriod/rr:EndDate $PRESENT

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * rr:RelationshipPeriod/rr:StartDate

Ensure valid connection between relationship and registration statuses

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RelationshipStatus IN ['INACTIVE']

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * rr:RegistrationStatus IN ['RETIRED', 'PENDING_TRANSFER', 'PENDING_ARCHIVAL']

Avoid redundancy in legal address and addresses in alternative languages

Precondition:

* lei:OtherAddress@type IN ['ALTERNATIVE_LANGUAGE_LEGAL_ADDRESS']

Condition:

* FOR ALL-APPLICABLE lei:OtherAddress: * lei:OtherAddress@lang $PRESENT * lei:OtherAddress@lang NOT $EQUALS lei:LegalAddress@lang * lei:OtherAddress NOT $EQUALS_NORMALIZED lei:LegalAddress * FOR FIELD IN [lei:FirstAddressLine, lei:AdditionalAddressLine{0,3}, lei:AddressNumber, lei:AddressNumberWithinBuilding, lei:MailRouting, lei:City, lei:PostalCode]: * lei:OtherAddress NOT $EQUALS_NORMALIZED FIELD

Avoid redundancy in headquarters address and addresses in alternative languages

Precondition:

* lei:OtherAddress@type IN ['ALTERNATIVE_LANGUAGE_HEADQUARTERS_ADDRESS']

Condition:

* FOR ALL-APPLICABLE lei:OtherAddress: * lei:OtherAddress@lang $PRESENT * lei:OtherAddress@lang NOT $EQUALS lei:HeadquartersAddress@lang * lei:OtherAddress NOT $EQUALS_NORMALIZED lei:HeadquartersAddress * FOR FIELD IN [lei:FirstAddressLine, lei:AdditionalAddressLine{0,3}, lei:AddressNumber, lei:AddressNumberWithinBuilding, lei:MailRouting, lei:City, lei:PostalCode]: * lei:OtherAddress $UNIQUE

No validation information is provided for self-supplied entities

Precondition:

* lei:ValidationAuthority $PRESENT * lei:ValidationSources $PRESENT * lei:ValidationSources IN ['ENTITY_SUPPLIED_ONLY'] * lei:ValidationAuthorityID NOT IN ['RA888888']

Condition:

* lei:ValidationAuthorityID IN ['RA999999'] * lei:ValidationAuthorityEntityID NOT $PRESENT

Ensure complete relationship periods with start date for active entities

Precondition:

* lei:EntityStatus IN ['ACTIVE'] * $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RegistrationStatus NOT IN ['ANNULLED', 'DUPLICATE','PENDING_TRANSFER', 'PENDING_ARCHIVAL']

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * $COUNT(rr:RelationshipPeriod) >= 1 WITH: * rr:PeriodType IN ['RELATIONSHIP_PERIOD'] * rr:StartDate $PRESENT * IF rr:ValidationDocuments IN ['REGULATORY_FILING']: * $COUNT(rr:RelationshipPeriod) > 0 WITH: * rr:PeriodType IN ['DOCUMENT_FILING_PERIOD'] * rr:StartDate $PRESENT * IF rr:RelationshipType IN ['IS_DIRECTLY_CONSOLIDATED_BY', 'IS_ULTIMATELY_CONSOLIDATED_BY']: * $COUNT(rr:RelationshipPeriod) > 0 WITH: * rr:PeriodType IN ['ACCOUNTING_PERIOD'] * rr:StartDate $PRESENT

Ensure relationship's registration status is correct when child record lapses

Precondition:

* lei:RegistrationStatus IN ['LAPSED'] * $COUNT($REPORTED_RELATIONSHIPS) > 0

Condition:

* FOR $REPORTED_RELATIONSHIPS: * rr:RegistrationStatus IN ['LAPSED'] * OR * rr:RegistrationStatus $IMMUTABLE

Assert record and relationships share renewal cycle

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RelationshipStatus IN ['ACTIVE'] * rr:RegistrationStatus $MUTABLE

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * rr:NextRenewalDate $PRESENT * rr:NextRenewalDate - lei:NextRenewalDate

Ensure child LEI and relationship records are managed by the same LEI issuer

Precondition:

* lei:RegistrationStatus NOT IN ['PENDING_TRANSFER', 'PENDING_ARCHIVAL'] * $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RegistrationStatus NOT IN ['PENDING_TRANSFER', 'PENDING_ARCHIVAL']

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * lei:ManagingLOU $EQUALS rr:ManagingLOU

Ensure relationship's registration status is correct when child record is invalid

Precondition:

* lei:RegistrationStatus IN ['DUPLICATE', 'ANNULLED']

Condition:

* rr:RegistrationStatus IN ['ANNULLED']

Ensure relationship's registration status is correct when parent record is invalid

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * $END_NODE_RECORD lei:RegistrationStatus IN ['DUPLICATE', 'ANNULLED']

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * rr:RegistrationStatus IN ['ANNULLED']

Provide appropriate periods for relationships

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RegistrationStatus NOT IN ['ANNULLED', 'DUPLICATE', 'PENDING_TRANSFER', 'PENDING_ARCHIVAL']

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * $COUNT(rr:RelationshipPeriod) >= 1 WITH: * rr:PeriodType IN ['RELATIONSHIP_PERIOD'] * IF rr:ValidationDocuments IN ['REGULATORY_FILING']: * $COUNT(rr:RelationshipPeriod) >= 1 WITH: * rr:PeriodType IN ['DOCUMENT_FILING_PERIOD'] * IF rr:RelationshipType IN ['IS_DIRECTLY_CONSOLIDATED_BY', 'IS_ULTIMATELY_CONSOLIDATED_BY']: * $COUNT(rr:RelationshipPeriod) >= 1 WITH: * rr:PeriodType IN ['ACCOUNTING_PERIOD']

Ensure correct transfer statuses for relationship records

Precondition:

* lei:RegistrationStatus IN ['PENDING_TRANSFER', 'PENDING_ARCHIVAL'] * $COUNT($REPORTED_RELATIONSHIPS) > 0

Condition:

* FOR $REPORTED_RELATIONSHIPS: * rr:RegistrationStatus $EQUALS lei:RegistrationStatus

Ensure previous and trading names are unique

Precondition:

* lei:OtherEntityName $PRESENT * lei:OtherEntityNameType IN ['TRADING_OR_OPERATING_NAME']

Condition:

* FOR ALL-APPLICABLE lei:OtherEntityName: * lei:OtherEntityName NOT $EQUALS lei:LegalName * lei:OtherEntityName $UNIQUE

Avoid duplication of validation authority

Precondition:

* lei:OtherValidationAuthorities $PRESENT * lei:ValidationAuthority/lei:ValidationAuthorityID NOT IN ['RA000466']

Condition:

* lei:ValidationAuthority $PRESENT * FOR lei:OtherValidationAuthority: * lei:OtherValidationAuthority/lei:ValidationAuthorityID NOT $EQUALS lei:ValidationAuthority/lei:ValidationAuthorityID

Valid connection between relationship and registration statuses

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RelationshipStatus IN ['ACTIVE']

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * rr:RegistrationStatus $MUTABLE

Ensure RA code corresponds to legal jurisdiction

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:RegistrationAuthority $PRESENT * lei:RegistrationAuthorityID IN $RA_CODE_LIST * lei:EntityCategory NOT IN ['INTERNATIONAL_ORGANIZATION']

Condition:

* lei:RegistrationAuthorityID IN ['RA777777', 'RA888888', 'RA999999', 'RA000463'] * OR * IF lei:EntityCategory NOT IN ['BRANCH']: * $RA_CODE_LIST/CountryCode $EQUALS lei:LegalJurisdiction(country-part) * OR * IF lei:EntityCategory IN ['BRANCH']: * $RA_CODE_LIST/CountryCode $EQUALS lei:LegalAddress/Country

Ensure the entity's register number has the expected local format

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:RegistrationAuthority $PRESENT * lei:RegistrationAuthorityID IN $RA_FORMAT_LIST/registration_authority * lei:RegistrationAuthorityEntityID $PRESENT

Condition:

* lei:RegistrationAuthorityEntityID $PATTERN_MATCH $RA_FORMAT_LIST/regex

Ensure local registration identifiers are not repeated

Precondition:

* lei:OtherRegistrationAuthorityID $PRESENT

Condition:

* lei:OtherRegistrationAuthorityID NOT $EQUALS_NORMALIZED lei:RegistrationAuthorityEntityID

Verify expected level of validation for unregistered entities

Precondition:

* lei:RegistrationAuthorityID IN ['RA999999'] * lei:RegistrationStatus $MUTABLE

Condition:

* IF lei:ValidationAuthorityID IN ['RA777777']: * lei:ValidationSources IN ['PARTIALLY_CORROBORATED', 'FULLY_CORROBORATED'] * OR * lei:ValidationSources IN ['ENTITY_SUPPLIED_ONLY']

Verify expected level of validation for registered entities

Precondition:

* lei:RegistrationAuthorityID NOT IN ['RA888888', 'RA999999', 'RA000413]

Condition:

* lei:ValidationSources IN ['PARTIALLY_CORROBORATED', 'FULLY_CORROBORATED']

Ensure ELF code corresponds to legal jurisdiction

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:LegalJurisdiction $PRESENT * lei:LegalFormCode IN $ELF_CODE_LIST

Condition:

* lei:EntityLegalFormCode IN ['8888', '9999'] * OR * $ELF_CODE_LIST/CountryCode $EQUALS lei:LegalJurisdiction * OR * $ELF_CODE_LIST/SubDivisionCode $EQUALS lei:LegalJurisdiction

Ensure OtherLegalForm is not in ELF codelist

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:OtherLegalForm $PRESENT

Condition:

* lei:OtherLegalForm NOT IN $ELF_CODE_LIST

Ensure appropriate entity categorization for entities declaring branch relationship

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RegistrationStatus $MUTABLE * rr:RelationshipType IN ['IS_INTERNATIONAL_BRANCH_OF']

Condition:

* lei:EntityCategory IN ['BRANCH']

Only one active relationship of type IS_INTERNATIONAL_BRANCH_OF for Branches

Precondition:

* lei:RegistrationStatus $MUTABLE * $COUNT($REPORTED_RELATIONSHIPS) == 1 WITH: * rr:RegistrationStatus $MUTABLE * $COUNT($REPORTED_EXCEPTIONS) == 0

Condition:

* rr:RelationshipType IN ['IS_INTERNATIONAL_BRANCH_OF']

Ensure branches have expected relationship information

Precondition:

* lei:EntityCategory IN ['BRANCH'] * lei:RegistrationStatus IN ['ISSUED', 'LAPSED']

Condition:

* $COUNT($REPORTED_EXCEPTIONS) == 0 * $COUNT($REPORTED_RELATIONSHIPS) == 0 WITH: * rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED'] * rr:RelationshipType IN ['IS_DIRECTLY_CONSOLIDATED_BY', 'IS_ULTIMATELY_CONSOLIDATED_BY', 'IS_SUBFUND_OF', 'IS_FUND-MANAGED_BY', 'IS_FEEDER_TO'] * $COUNT($REPORTED_RELATIONSHIPS) == 1 WITH: * rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED'] * rr:RelationshipType IN ['IS_INTERNATIONAL_BRANCH_OF']

Ensure there is only one branch per country and it has correct country information

Precondition:

* lei:RegistrationStatus IN ['ISSUED', 'LAPSED'] * $COUNT($REPORTED_PARENT_RELATIONSHIPS) == 1 WITH: * rr:RelationshipType IN ['IS_INTERNATIONAL_BRANCH_OF'] * rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED']

Condition:

* FOR ALL-APPLICABLE $REPORTED_PARENT_RELATIONSHIPS: * rr:EndNode/rr:NodeID $VALID * lei:LegalAddress/lei:Country NOT $EQUALS $END_NODE_RECORD lei:LegalJurisdiction * FOR $START_NODE_RECORD WITH: * RUT rr:EndNode/rr:NodeID $EQUALS REFERRED_RECORD rr:EndNode/rr:NodeID * REFERRED_RECORD rr:RelationshipType IN ['IS_INTERNATIONAL_BRANCH_OF'] * REFERRED_RECORD rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED']: * RUT lei:LegalAddress/lei:Country NOT $EQUALS REFERRED_RECORD lei:LegalAddress/lei:Country

No repetition of legal address postal code in other legal address fields

Precondition:

* lei:LegalAddress/lei:PostalCode $PRESENT

Condition:

* lei:LegalAddress/lei:PostalCode NOT $SUBSTRING lei:LegalAddress/lei:FirstAddressLine * lei:LegalAddress/lei:PostalCode NOT $SUBSTRING lei:LegalAddress/lei:AdditionalAddressLine[1] * lei:LegalAddress/lei:PostalCode NOT $SUBSTRING lei:LegalAddress/lei:AdditionalAddressLine[2] * lei:LegalAddress/lei:PostalCode NOT $SUBSTRING lei:LegalAddress/lei:AdditionalAddressLine[3] * lei:LegalAddress/lei:PostalCode NOT $SUBSTRING lei:LegalAddress/lei:City * lei:LegalAddress/lei:PostalCode NOT $SUBSTRING lei:LegalAddress/lei:AddressNumber * lei:LegalAddress/lei:PostalCode NOT $SUBSTRING lei:LegalAddress/lei:AddressNumberWithinBuilding * lei:LegalAddress/lei:PostalCode NOT $SUBSTRING lei:LegalAddress/lei:MailRouting

No repetition of headquarters address postal code in other headquarters address fields

Precondition:

* lei:HeadquartersAddress/lei:PostalCode $PRESENT

Condition:

* lei:HeadquartersAddress/lei:PostalCode NOT $SUBSTRING lei:HeadquartersAddress/lei:FirstAddressLine * lei:HeadquartersAddress/lei:PostalCode NOT $SUBSTRING lei:HeadquartersAddress/lei:AdditionalAddressLine[1] * lei:HeadquartersAddress/lei:PostalCode NOT $SUBSTRING lei:HeadquartersAddress/lei:AdditionalAddressLine[2] * lei:HeadquartersAddress/lei:PostalCode NOT $SUBSTRING lei:HeadquartersAddress/lei:AdditionalAddressLine[3] * lei:HeadquartersAddress/lei:PostalCode NOT $SUBSTRING lei:HeadquartersAddress/lei:City * lei:HeadquartersAddress/lei:PostalCode NOT $SUBSTRING lei:HeadquartersAddress/lei:AddressNumber * lei:HeadquartersAddress/lei:PostalCode NOT $SUBSTRING lei:HeadquartersAddress/lei:AddressNumberWithinBuilding * lei:HeadquartersAddress/lei:PostalCode NOT $SUBSTRING lei:HeadquartersAddress/lei:MailRouting

Declared ultimate parent meets the requirements for ultimate parents

Precondition:

* lei:RegistrationStatus IN ['ISSUED'] * $COUNT($REPORTED_RELATIONSHIPS) == 1 WITH: * rr:RelationshipType IN ['IS_ULTIMATELY_CONSOLIDATED_BY'] * rr:RegistrationStatus IN ['PUBLISHED'] * FOR $END_NODE_RECORD: * lei:RegistrationStatus NOT IN ['PENDING_TRANSFER','PENDING_ARCHIVAL'] * $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RegistrationStatus $MUTABLE * OR * $COUNT($REPORTED_EXCEPTIONS) > 0

Condition:

* FOR $END_NODE_RECORD: * $COUNT($REPORTED_RELATIONSHIPS) == 0 WITH: * rr:RegistrationStatus $MUTABLE * $COUNT($REPORTED_EXCEPTIONS) == 1 WITH: * repex:ExceptionReason IN ['NATURAL_PERSONS', 'NON_CONSOLIDATING', 'NO_KNOWN_PERSON'] * repex:ExceptionCategory IN ['ULTIMATE_ACCOUNTING_CONSOLIDATION_PARENT'] * $COUNT($REPORTED_EXCEPTIONS) == 1 WITH: * repex:ExceptionReason IN ['NATURAL_PERSONS', 'NON_CONSOLIDATING', 'NO_KNOWN_PERSON'] * repex:ExceptionCategory IN ['DIRECT_ACCOUNTING_CONSOLIDATION_PARENT']

Entity identifier is not provided for unregistered entities

Precondition:

* lei:RegistrationAuthorityID IN ['RA999999']

Condition:

* lei:RegistrationAuthorityEntityID NOT $PRESENT

Information on other validation authority is not repeated as validation entity identifier

Precondition:

* lei:OtherValidationAuthorityID $PRESENT

Condition:

* lei:OtherValidationAuthorityID NOT $EQUALS_NORMALIZED lei:ValidationAuthorityEntityID

Information on other validation authority is not repeated as validation authority

Precondition:

* lei:OtherValidationAuthorityID $PRESENT

Condition:

* lei:OtherValidationAuthorityID NOT $EQUALS_NORMALIZED lei:ValidationAuthorityID

Successor information corresponds to the registration status or entity events

Precondition:

* lei:RegistrationStatus NOT IN ['ANNULLED', 'PENDING_TRANSFER', 'PENDING_ARCHIVAL'] * lei:SuccessorEntity $PRESENT

Condition:

* IF lei:SuccessorEntityName $PRESENT: * IF lei:SuccessorLEI NOT $PRESENT: * lei:RegistrationStatus IN ['RETIRED'] * OR * IF lei:SuccessorLEI $PRESENT: * lei:RegistrationStatus IN ['RETIRED', 'DUPLICATE'] * OR * $COUNT($LEGAL_ENTITY_EVENTS) >= 1 WITH: * lei:LegalEntityEventType IN ['DEMERGER', 'SPINOFF'] * lei:LegalEntityEvent@event_status IN ['COMPLETED']

Ensure valid RA code is included

Precondition:

Condition:

* lei:RegistrationAuthorityID $PRESENT * lei:RegistrationAuthorityID IN $RA_CODE_LIST * lei:RegistrationAuthorityID NOT IN ['RA777777']

Ensure valid ELF code is included

Precondition:

Condition:

* lei:EntityLegalFormCode $PRESENT * lei:EntityLegalFormCode IN $ELF_CODE_LIST * IF lei:RegistrationStatus $MUTABLE: * lei:EntityLegalFormCode IN $ELF_CODE_LIST WITH: * $ELF_CODE_LIST/ELF_STATUS == 'ACTV'

Ensure no duplicate relationship records are introduced

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RegistrationStatus NOT IN ['PENDING_TRANSFER', 'PENDING_ARCHIVAL'] * rr:RelationshipType IN ['IS_DIRECTLY_CONSOLIDATED_BY', 'IS_ULTIMATELY_CONSOLIDATED_BY','IS_SUBFUND_OF','IS_FUND-MANAGED_BY','IS_FEEDER_TO'] * rr:PeriodType IN ['RELATIONSHIP_PERIOD'] WITH: * rr:RelationshipPeriod/rr:StartDate $PRESENT * FOR $REPORTED_RELATIONSHIPS AND $EXISTING_RELATIONSHIPS: * rr:RelationshipPeriods/rr:StartDate $PRESENT

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * $COUNT($EXISTING_RELATIONSHIPS) == 0 WITH: * $REPORTED_RELATIONSHIPS rr:Header:Originator NOT $EQUALS $EXISTING_RELATIONSHIPS rr:Header:Originator * FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS WITH: * $EXISTING_RELATIONSHIPS rr:RegistrationStatus IN ['RETIRED', 'ANNULLED', 'DUPLICATE'] * $COUNT($EXISTING_RELATIONSHIPS) == 1 WITH: * $REPORTED_RELATIONSHIPS rr:RelationshipType $EQUALS $EXISTING_RELATIONSHIPS rr:RelationshipType * $REPORTED_RELATIONSHIPS rr:Header:Originator $EQUALS $EXISTING_RELATIONSHIPS rr:Header:Originator * $REPORTED_RELATIONSHIPS rr:EndNode/rr:NodeID $EQUALS $EXISTING_RELATIONSHIPS rr:EndNode/rr:NodeID * $REPORTED_RELATIONSHIPS rr:RelationshipPeriod/rr:StartDate $DATE_PART == $EXISTING_RELATIONSHIPS rr:RelationshipPeriod/rr:StartDate $DATE_PART WITH: * $REPORTED_RELATIONSHIPS rr:PeriodType IN ['RELATIONSHIP_PERIOD'] * $EXISTING_RELATIONSHIPS rr:PeriodType IN ['RELATIONSHIP_PERIOD'] * $EXISTING_RELATIONSHIPS rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED'] * $COUNT($EXISTING_RELATIONSHIPS) == 1 WITH: * $REPORTED_RELATIONSHIPS rr:RelationshipType $EQUALS $EXISTING_RELATIONSHIPS rr:RelationshipType * $REPORTED_RELATIONSHIPS rr:Header:Originator $EQUALS $EXISTING_RELATIONSHIPS rr:Header:Originator * $REPORTED_RELATIONSHIPS rr:EndNode/rr:NodeID $EQUALS $EXISTING_RELATIONSHIPS rr:EndNode/rr:NodeID

Ensure source for corroboration is provided

Precondition:

* lei:RegistrationStatus NOT IN ['ANNULLED'] * lei:ValidationSources $PRESENT * lei:ValidationSources IN ['PARTIALLY_CORROBORATED', 'FULLY_CORROBORATED']

Condition:

* lei:ValidationAuthority $PRESENT * lei:ValidationAuthorityID NOT IN ['RA999999', 'RA888888']

Ensure no validation source is given for uncorroborated records

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:ValidationSources $PRESENT * lei:ValidationSources IN ['ENTITY_SUPPLIED_ONLY']" * lei:ValidationAuthority $PRESENT * lei:ValidationAuthorityID NOT IN ['RA999999', 'RA000413']

Condition:

* lei:ValidationAuthorityID IN ['RA888888']

Ensure consistent validation information based on registration

Precondition:

* lei:RegistrationAuthority $PRESENT * lei:RegistrationAuthorityID NOT IN ['RA777777', 'RA888888', 'RA999999'] * lei:ValidationAuthority $PRESENT

Condition:

* lei:ValidationAuthorityID NOT IN ['RA777777', 'RA888888', 'RA999999']

Ensure consistent register information based on validation

Precondition:

* lei:ValidationAuthority $PRESENT * lei:ValidationAuthorityID NOT IN ['RA777777', 'RA888888', 'RA999999'] * lei:RegistrationAuthority $PRESENT

Condition:

* lei:RegistrationAuthorityID NOT IN ['RA777777', 'RA888888', 'RA999999']

Ensure valid register code is used for validation

Precondition:

Condition:

* lei:ValidationAuthority $PRESENT * lei:ValidationAuthorityID IN $RA_CODE_LIST

Ensure deprecated registration status is not used

Precondition:

* lei:RegistrationStatus NOT IN ['TRANSFERRED', 'PENDING_VALIDATION', 'CANCELLED']

Condition:

* lei:RegistrationStatus NOT IN ['MERGED']

Ensure reasonable combination for parent exceptions

Precondition:

* $COUNT(repex:Exception) >= 1 WITH: * repex:ExceptionReason IN ['NON_CONSOLIDATING', 'NATURAL_PERSONS', 'NO_KNOWN_PERSON'] * $COUNT(repex:Exception)

Condition:

* $COUNT($REPORTED_RELATIONSHIPS) == 0 WITH: * rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED'] * FOR $REPORTED_EXCEPTIONS WITH: * repex:ExceptionCategory IN ['ULTIMATE_ACCOUNTING_CONSOLIDATION_PARENT', 'DIRECT_ACCOUNTING_CONSOLIDATION_PARENT']: * repex:ExceptionReason IN ['NON_CONSOLIDATING', 'NATURAL_PERSONS', 'NO_KNOWN_PERSON']

Ensure local identifier are provided and plausible

Precondition:

* lei:RegistrationStatus IN ['ISSUED'] * lei:EntityCategory NOT IN ['FUND'] * lei:RegistrationAuthorityID $PRESENT * lei:RegistrationAuthorityID NOT IN ['RA888888', 'RA999999', 'RA000018', 'RA000397', 'RA000634', 'RA000704', 'RA000711', 'RA000712', 'RA000722', 'RA000723', 'RA000725', 'RA000727', 'RA000733', 'RA000734', 'RA000736', 'RA000737', 'RA000738', 'RA000739', 'RA000740', 'RA000741', 'RA000742', 'RA000743', 'RA000750', 'RA000768', 'RA000769', 'RA000770', 'RA000771', 'RA000772', 'RA000773', 'RA000774', 'RA000775']

Condition:

* lei:RegistrationAuthorityEntityID $PRESENT * lei:RegistrationAuthorityEntityID NOT IN $CASE_INSENSITIVE(['NOT AVAILABLE', 'N.A.', 'N.A', 'N/A', 'N A', 'N.V', 'N.V.', 'N V', 'EXENTO', 'EXENTA', 'NO SUJETO', '0']) * lei:RegistrationAuthorityEntityID NOT CONSISTING-ONLY-OF $PUNCTUATION_CHARACTER

Ensure appropriate combination of corroboration level and legal form is used

Precondition:

* lei:EntityCategory NOT IN ['BRANCH'] * lei:RegistrationStatus $ISSUED * lei:EntityLegalFormCode IN $ELF_CORROBORATION_LIST

Condition:

* FOR $ELF_CORROBORATION_LIST/Corroboration IN ['PARTIALLY_CORROBORATED']: * lei:ValidationSources IN ['PARTIALLY_CORROBORATED', 'FULLY_CORROBORATED'] * FOR $ELF_CORROBORATION_LIST/Corroboration IN ['FULLY_CORROBORATED']: * lei:ValidationSources IN ['FULLY_CORROBORATED']

Entity category sole proprietor is assigned for the appropriate legal forms

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:EntityLegalFormCode IN $SOLE_PROPRIETOR_ELF_CODE_LIST WITH: * $SOLE_PROPRIETOR_ELF_CODE_LIST/is_sole_proprietorship == 'yes'

Condition:

* lei:EntityCategory IN ['SOLE_PROPRIETOR']

Ensure that Entity Legal Form Code is applicable for sole proprietors

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:EntityCategory IN ['SOLE_PROPRIETOR'] * lei:EntityLegalFormCode $PRESENT

Condition:

* lei:EntityLegalFormCode NOT IN $SOLE_PROPRIETOR_ELF_CODE_LIST WITH: * $SOLE_PROPRIETOR_ELF_CODE_LIST/is_sole_proprietorship == 'no'

Ensure entity creation date is present

Precondition:

* lei:EntityStatus NOT IN ['NULL'] * lei:RegistrationStatus NOT IN ['ANNULLED'] * lei:InitialRegistrationDate >= $DATETIME('2022-04-01T00:00:00+00:00') * OR * lei:NextRenewalDate >= $DATETIME('2023-06-01T00:00:00+00:00')

Condition:

* lei:EntityCreationDate $PRESENT

For completed legal entity events, the effective date is present

Precondition:

* lei:LegalEntityEvents $PRESENT * $COUNT($LEGAL_ENTITY_EVENTS) > 0 WITH: * lei:LegalEntityEvent@event_status IN ['COMPLETED']

Condition:

FOR ALL-APPLICABLE $LEGAL_ENTITY_EVENTS: * lei:LegalEntityEventEffectiveDate $PRESENT

Corresponding Legal Entity Events lead to correct Registration Status

Precondition:

* lei:RegistrationStatus NOT IN ['ANNULLED', 'DUPLICATE', 'PENDING_TRANSFER', 'PENDING_ARCHIVAL'] * $COUNT($LEGAL_ENTITY_EVENTS) > 0 WITH: * lei:LegalEntityEventType IN ['DISSOLUTION', 'LIQUIDATION'] * lei:LegalEntityEvent@event_status IN ['COMPLETED']

Condition:

* lei:RegistrationStatus IN ['RETIRED']

Ensure deprecated fields for associated entity are not present

Precondition:

Condition:

* lei:AssociatedEntity NOT $PRESENT

Records with legal form of a fund must be categorized as funds

Precondition:

* lei:EntityLegalFormCode IN $ELF_FUND_LIST * lei:RegistrationStatus $MUTABLE

Condition:

* lei:EntityCategory IN ['FUND']

The validation authority of a fund must be applicable for funds

Precondition:

* lei:ValidationAuthorityID $PRESENT * lei:ValidationAuthorityID NOT IN ['RA888888', 'RA999999'] * lei:RegistrationStatus $MUTABLE * lei:EntityCategory IN ['FUND'] * lei:LegalJurisdiction(country-part) IN $RA_FUND_LIST_v1.3.3/Country_Code WITH: * $RA_FUND_LIST_v1.3.3/is_ValidationAuthority == 'yes'

Condition:

* lei:ValidationAuthorityID IN $RA_FUND_LIST_v1.3.3/Registration_Authority_Code WITH: * $RA_FUND_LIST_v1.3.3/is_ValidationAuthority == 'yes'

Ensure relationships with status NULL have an appropriate registration status

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RelationshipStatus IN ['NULL'] * rr:RegistrationStatus NOT IN ['PENDING_TRANSFER', 'PENDING_ARCHIVAL']

Condition:

* IF lei:EntityCategory IN ['FUND']: * rr:RegistrationStatus IN ['DUPLICATE', 'ANNULLED', 'PUBLISHED'] * IF lei:EntityCategory NOT IN ['FUND']: * rr:RegistrationStatus IN ['DUPLICATE', 'ANNULLED']

Entity's expiration date and expiration reason are not populated

Precondition:

Condition:

* lei:EntityExpirationDate NOT $PRESENT * lei:EntityExpirationReason NOT $PRESENT

Retired record has corresponding legal entity event

Precondition:

* lei:RegistrationStatus IN ['RETIRED']

Condition:

* lei:legalEntityEventType IN ['LIQUIDATION', 'INSOLVENCY', 'DISSOLUTION', 'MERGERS_AND_ACQUISITIONS', 'BANKRUPTCY', 'ABSORPTION', 'ACQUISITION_BRANCH', 'BREAKUP', 'TRANSFORMATION_BRANCH_TO_SUBSIDIARY', 'CHANGE_LEGAL_FORM'] WITH: * @event_status IN ['COMPLETED']

Duplicate and annulled relationships have status null

Precondition:

* rr:RegistrationStatus IN ['DUPLICATE', 'ANNULLED']

Condition:

* rr:RelationshipStatus IN ['NULL']

Fund relationship types are only used for fund entities

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RelationshipType IN ['IS_SUBFUND_OF', 'IS_FUND-MANAGED_BY', 'IS_FEEDER_TO'] * rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED']

Condition:

* lei:EntityCategory IN ['FUND']

The category of the legal entity is always provided

Precondition:

Condition:

* lei:EntityCategory $PRESENT

Language information is provided

Precondition:

* lei:RegistrationStatus $MUTABLE

Condition:

* FOR FIELD IN [lei:LegalName, lei:LegalAddress, lei:OtherEntityName, lei:TransliteratedOtherEntityName, lei:OtherAddress, lei:TransliteraterOtherAddress, lei:SuccessorEntityName]: * @lang $PRESENT * FOR $ADMINISTRATIVE_LANGUAGES IN lei:LegalAddress/lei:Country: * IF $COUNT($LANGUAGE_ISO_3166_1_ALPHA_2 NOT $PRESENT) == 0: * @lang $MATCHES('/^([a-z]{2})(-[A-Z]{1,8}|-[0-9]{1,3})?$/') * IF $COUNT($LANGUAGE_ISO_3166_1_ALPHA_2 NOT $PRESENT) > 0: * @lang $MATCHES('/^([a-z]){1,3}(-[A-Z]{1,8}|-[0-9]{1,3})?$/') * FOR FIELD IN [lei:HeadquartersAddress]: * @lang $PRESENT * FOR $ADMINISTRATIVE_LANGUAGES IN lei:HeadquartersAddress/lei:Country: * IF $COUNT($LANGUAGE_ISO_3166_1_ALPHA_2 NOT $PRESENT) == 0: * @lang $MATCHES('/^([a-z]{2})(-[A-Z]{1,8}|-[0-9]{1,3})?$/') * IF $COUNT($LANGUAGE_ISO_3166_1_ALPHA_2 NOT $PRESENT) > 0: * @lang $MATCHES('/^([a-z]){1,3}(-[A-Z]{1,8}|-[0-9]{1,3})?$/')

The legal name of the entity is provided in local alphabet

Precondition:

* lei:LegalName@lang $PRESENT * lei:LegalName@lang IN $LANGUAGE_CHARACTERS_LIST * lei:LegalName $ALPHABETICAL

Condition:

* lei:LegalName $PATTERN_MATCH $LANGUAGE_CHARACTERS_LIST/language

No successor LEI code references the LEI code in the current LEI Record

Precondition:

* lei:SuccessorLEI $PRESENT

Condition:

* FOR lei:SuccessorLEI: * lei:SuccessorLEI NOT $EQUALS lei:LEI

Additional information for not yet listed validation authority is provided

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:ValidationAuthorityID IN ['RA777777', 'RA888888']

Condition:

* lei:OtherValidationAuthorityID $PRESENT * lei:OtherValidationAuthorityID NOT IN $CASE_INSENSITIVE(['TRUST', 'OBCHODNý REGISTER', 'REGISTRAR OF COMPANIES', 'HANDELSREGISTER', 'COMPANIES REGISTER', 'TRADE AND COMPANY REGISTER', 'FUND REGISTER', 'TRADE REGISTER', 'TRUST REGISTER', 'BUSINESS REGISTER', 'DOCUMENT', 'DOCUMENTS', 'REGISTER', '0THER', 'OTHER', 'OTHERS', 'REGISTO COMERCIAL', 'COMMERCIAL_REGISTER', 'NOT AVAILABLE', 'N.A.', 'N.A', 'N/A', 'N A', 'N.V', 'N.V.', 'N V', 'EXENTO', 'EXENTA', 'NO SUJETO', '0']) * lei:OtherValidationAuthorityID NOT CONSISTING-ONLY-OF $PUNCTUATION_CHARACTER

Additional information for not yet listed registration authority is provided

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:RegistrationAuthorityID IN ['RA888888']

Condition:

* lei:OtherRegistrationAuthorityID $PRESENT * lei:OtherRegistrationAuthorityID NOT IN $CASE_INSENSITIVE(['TRUST', 'OBCHODNý REGISTER', 'REGISTRAR OF COMPANIES', 'HANDELSREGISTER', 'COMPANIES REGISTER', 'TRADE AND COMPANY REGISTER', 'FUND REGISTER', 'TRADE REGISTER', 'TRUST REGISTER', 'BUSINESS REGISTER', 'DOCUMENT', 'DOCUMENTS', 'REGISTER', '0THER', 'OTHER', 'OTHERS', 'REGISTO COMERCIAL', 'COMMERCIAL_REGISTER', 'NOT AVAILABLE', 'N.A.', 'N.A', 'N/A', 'N A', 'N.V', 'N.V.', 'N V', 'EXENTO', 'EXENTA', 'NO SUJETO', '0']) * lei:OtherRegistrationAuthorityID NOT CONSISTING-ONLY-OF $PUNCTUATION_CHARACTER

Additional information for validation authority is provided only when suited

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:ValidationAuthorityID $PRESENT * lei:OtherValidationAuthorityID $PRESENT

Condition:

* lei:ValidationAuthorityID IN ['RA777777', 'RA888888']

Additional information for registration authority is provided only when suited

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:RegistrationAuthorityID $PRESENT * lei:OtherRegistrationAuthorityID $PRESENT

Condition:

* lei:RegistrationAuthorityID IN ['RA888888']

Additional information for not yet listed entity legal form code is provided

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:EntityLegalFormCode IN ['8888', '9999']

Condition:

* lei:OtherLegalForm $PRESENT * lei:OtherLegalForm NOT IN $CASE_INSENSITIVE(['0THER', 'OTHERS', 'DIğER', 'OTHER', 'NOT AVAILABLE', 'N.A.', 'N.A', 'N/A', 'N A', 'EXENTO', 'EXENTA', 'NO SUJETO', '0'])

Reserved ELF code is used when Other Legal Form is provided

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:EntityLegalFormCode $PRESENT * lei:OtherLegalForm $PRESENT

Condition:

* lei:EntityLegalFormCode IN ['8888', '9999']

Verify expected level of validation for entities with not yet verified and accepted registration authority

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:RegistrationAuthorityID IN ['RA888888']

Condition:

* IF lei:ValidationAuthorityID IN ['RA777777']: * lei:ValidationSources IN ['PARTIALLY_CORROBORATED', 'FULLY_CORROBORATED'] * IF lei:ValidationAuthorityID NOT IN ['RA777777']: * lei:ValidationSources IN ['ENTITY_SUPPLIED_ONLY']

Entity's validation number has the expected local format

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:ValidationAuthorityID $PRESENT * lei:ValidationAuthorityID IN $RA_FORMAT_LIST/registration_authority * lei:ValidationAuthorityEntityID $PRESENT

Condition:

* lei:ValidationAuthorityEntityID $PATTERN_MATCH $RA_FORMAT_LIST/regex

Entity's validation number in additional validation authorities has the expected local format

Precondition:

* lei:RegistrationStatus $MUTABLE * lei:OtherValidationAuthorities $PRESENT * lei:OtherValidationAuthority/lei:ValidationAuthorityID IN $RA_FORMAT_LIST/registration_authority * lei:OtherValidationAuthority/lei:ValidationAuthorityEntityID $PRESENT

Condition:

* FOR lei:OtherValidationAuthority: * lei:OtherValidationAuthority/lei:ValidationAuthorityEntityID $PATTERN_MATCH $RA_FORMAT_LIST/regex

Local identifier are provided and plausible for validation

Precondition:

* lei:RegistrationStatus IN ['ISSUED'] * lei:EntityCategory NOT IN ['FUND'] * lei:ValidationAuthorityID $PRESENT * lei:ValidationAuthorityID NOT IN ['RA777777', 'RA888888', 'RA999999', 'RA000018', 'RA000397', 'RA000634', 'RA000704', 'RA000711', 'RA000712', 'RA000722', 'RA000723', 'RA000725', 'RA000727', 'RA000733', 'RA000734', 'RA000736', 'RA000737', 'RA000738', 'RA000739', 'RA000740', 'RA000741', 'RA000742', 'RA000743', 'RA000750', 'RA000768', 'RA000769', 'RA000770', 'RA000771', 'RA000772', 'RA000773', 'RA000774', 'RA000775', 'RA000831']

Condition:

* lei:ValidationAuthorityEntityID $PRESENT * lei:ValidationAuthorityEntityID NOT IN $CASE_INSENSITIVE(['NOT AVAILABLE', 'N.A.', 'N.A', 'N/A', 'N A', 'N.V', 'N.V.', 'N V', 'EXENTO', 'EXENTA', 'NO SUJETO', '0']) * lei:ValidationAuthorityEntityID NOT CONSISTING-ONLY-OF $PUNCTUATION_CHARACTER

Authoritative Source Check for OtherValidationAuthorities

Precondition:

* lei:RegistrationStatus IN ['ISSUED'] * lei:EntityCategory NOT IN ['FUND'] * lei:OtherValidationAuthority/lei:ValidationAuthorityID $PRESENT * lei:OtherValidationAuthority/lei:ValidationAuthorityID NOT IN ['RA777777', 'RA888888', 'RA999999', 'RA000018', 'RA000397', 'RA000634', 'RA000704', 'RA000711', 'RA000712', 'RA000722', 'RA000723', 'RA000725', 'RA000727', 'RA000733', 'RA000734', 'RA000736', 'RA000737', 'RA000738', 'RA000739', 'RA000740', 'RA000741', 'RA000742', 'RA000743', 'RA000750', 'RA000768', 'RA000769', 'RA000770', 'RA000771', 'RA000772', 'RA000773', 'RA000774', 'RA000775']

Condition:

FOR ALL-APPLICABLE lei:OtherValidationAuthority: * lei:OtherValidationAuthority/lei:ValidationAuthorityEntityID $PRESENT * lei:OtherValidationAuthority/lei:ValidationAuthorityEntityID NOT IN $CASE_INSENSITIVE(['NOT AVAILABLE', 'N.A.', 'N.A', 'N/A', 'N A', 'N.V', 'N.V.', 'N V', 'EXENTO', 'EXENTA', 'NO SUJETO', '0']) * lei:OtherValidationAuthority/lei:ValidationAuthorityEntityID NOT CONSISTING-ONLY-OF $PUNCTUATION_CHARACTER

No local identifier is provided when authoritative source does not provide any identifier

Precondition:

* lei:RegistrationStatus IN ['ISSUED'] * lei:RegistrationAuthorityID $PRESENT * lei:RegistrationAuthorityID IN ['RA999999', 'RA000397', 'RA000704', 'RA000712', 'RA000722', 'RA000723', 'RA000725', 'RA000727', 'RA000733', 'RA000736', 'RA000737', 'RA000738', 'RA000739', 'RA000740', 'RA000741', 'RA000742', 'RA000743', 'RA000768', 'RA000769', 'RA000770', 'RA000771', 'RA000772', 'RA000773', 'RA000774', 'RA000775']

Condition:

* lei:RegistrationAuthorityEntityID NOT $PRESENT

Appropriate code in headuqarters address region

Precondition:

* lei:HeadquartersAddress/lei:Region $PRESENT * lei:RegistrationStatus $MUTABLE

Condition:

* lei:HeadquartersAddress/lei:Region IN $ISO_3166_2

Appropriate code in headuqarters address country

Precondition:

* lei:RegistrationStatus $MUTABLE

Condition:

* lei:HeadquartersAddress/lei:Country IN ['XK', $ISO_3166_1_ALPHA_2]

There is only one single instance of type relationship period per relationship

Precondition:

* $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:PeriodType IN ['RELATIONSHIP_PERIOD']

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * $COUNT(rr:RelationshipPeriod) == 1 WITH: * rr:PeriodType IN ['RELATIONSHIP_PERIOD']

Entity creation date is plausible

Precondition:

* lei:EntityCategory NOT IN ['FUND'] * lei:EntityCreationDate $PRESENT

Condition:

* leiFileHeader:ContentDate + $TIME_INTERVAL('30 D') >= lei:EntityCreationDate

Plausible entity creation date for funds in formation

Precondition:

* lei:EntityCreationDate NOT $PRESENT * lei:NextRenewalDate >= $DATETIME('2023-06-01T00:00:00+00:00') * OR * lei:InitialRegistrationDate >= $DATETIME('2022-04-01T00:00:00+00:00')

Condition:

* lei:EntityStatus IN ['NULL'] * lei:EntityCategory IN ['FUND']

Ensure plausible usage of entity subcategories values for government entities

Precondition:

* lei:EntitySubCategory $PRESENT * lei:EntitySubCategory IN ['CENTRAL_GOVERNMENT', 'STATE_GOVERNMENT', 'LOCAL_GOVERNMENT', 'SOCIAL_SECURITY']

Condition:

* lei:EntityCategory IN ['RESIDENT_GOVERNMENT_ENTITY']

Appropriate usage of government accounting standard

Precondition:

* $COUNT($REPORTED_PARENT_RELATIONSHIPS) > 0 WITH: * rr:QualifierCategory IN ['GOVERNMENT_ACCOUNTING_STANDARD'] * rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED', 'RETIRED']

Condition:

* lei:EntityCategory IN ['RESIDENT_GOVERNMENT_ENTITY', 'INTERNATIONAL_ORGANIZATION']

The parent entity of a government entity is also a government entity

Precondition:

* lei:EntityCategory IN ['RESIDENT_GOVERNMENT_ENTITY'] * $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED'] * lei:LEI $EQUALS rr:EndNode/rr:NodeID * $END_NODE_RECORD $VALID

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * $END_NODE_RECORD lei:EntityCategory IN ['RESIDENT_GOVERNMENT_ENTITY']

Start and end node in a relationship fit the entity category for international organizations

Precondition:

* lei:EntityCategory IN ['INTERNATIONAL_ORGANIZATION'] * $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED'] * $END_NODE_RECORD $VALID

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * $END_NODE_RECORD lei:EntityCategory IN ['INTERNATIONAL_ORGANIZATION']

Government entities use appropriate relationship exception resons

Precondition:

* lei:EntityCategory IN ['RESIDENT_GOVERNMENT_ENTITY'] * $COUNT($REPORTED_EXCEPTIONS) > 0

Condition:

* FOR ALL-APPLICABLE $REPORTED_EXCEPTIONS: * repex:ExceptionReason IN ['NO_KNOWN_PERSON', 'NO_LEI']

No accounting periods are present for funds

Precondition:

* lei:EntityCategory IN ['FUND'] * $COUNT($REPORTED_FUND_RELATIONSHIPS) > 0

Condition:

* FOR ALL-APPLICABLE $REPORTED_FUND_RELATIONSHIPS: * $COUNT(rr:RelationshipPeriod) == 0 WITH: * rr:PeriodType IN ['ACCOUNTING_PERIOD']

Ensure plausible start date for relationship periods

Precondition:

* lei:EntityCreationDate $PRESENT * $COUNT($REPORTED_RELATIONSHIPS) > 0 WITH: * rr:RegistrationStatus NOT IN ['ANNULLED'] * rr:PeriodType IN ['RELATIONSHIP_PERIOD'] * rr:StartDate $PRESENT

Condition:

* FOR ALL-APPLICABLE $REPORTED_RELATIONSHIPS: * rr:StartDate >= lei:EntityCreationDate

Appropriate usage of reserved codes for public legal documents

Precondition:

* lei:RegistrationAuthorityID $PRESENT * lei:ValidationAuthorityID IN ['RA777777'] * OR * lei:RegistrationAuthorityID $PRESENT * lei:OtherValidationAuthority $PRESENT * lei:OtherValidationAuthority/lei:ValidationAuthorityID IN ['RA777777']

Condition:

* lei:EntityCategory IN ['RESIDENT_GOVERNMENT_ENTITY', 'INTERNATIONAL_ORGANIZATION'] * lei:RegistrationAuthorityID IN ['RA888888', 'RA999999']

Appropriate usage of special codes for legal jurisdiction

Precondition:

* lei:LegalJurisdiction IN ['EU','UN','XX']

Condition:

* lei:EntityCategory IN ['INTERNATIONAL_ORGANIZATION']

All successors of all completed legal entity events are listed

Precondition:

* $COUNT($LEGAL_ENTITY_EVENTS) > 0 WITH: * lei:LegalEntityEvent@event_status IN ['COMPLETED'] * lei:AffectedField WITH: * lei:AffectedField@field_xpath IN ['/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:SuccessorEntity/lei:SuccessorEntityName', '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:SuccessorEntity/lei:SuccessorLEI']

Condition:

* FOR ALL-APPLICABLE lei:AffectedField: * lei:AffectedField WITH: * lei:AffectedField@field_xpath IN ['/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:SuccessorEntity/lei:SuccessorLEI'] == lei:SuccessorEntity/lei:SuccessorLEI * lei:AffectedField WITH: * lei:AffectedField@field_xpath IN ['/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:SuccessorEntity/lei:SuccessorEntityName'] == lei:SuccessorEntity/lei:SuccessorEntityName * OR * FOR ALL-APPLICABLE $LEGAL_ENTITY_EVENTS: * $COUNT($REFERRED_EVENT) > 0 WITH: * $REFERRED_EVENT lei:LegalEntityEvent@event_status IN ['WITHDRAWN_CANCELLED'] * lei:LegalEntityEventEffectiveDate == $REFERRED_EVENT lei:LegalEntityEventEffectiveDate * lei:LegalEntityEventType == $REFERRED_EVENT lei:LegalEntityEventType * lei:ValidationDocuments == $REFERRED_EVENT lei:ValidationDocuments * lei:AffectedField@field_xpath == $REFERRED_EVENT $FIELD_XPATH * lei:field_xpath == $REFERRED_EVENT $lei:field_xpath

All successor LEIs of non-duplicate records are mentioned in a legal entity event

Precondition:

* lei:RegistrationStatus NOT IN ['DUPLICATE', 'ANNULLED', 'PENDING_TRANSFER', 'PENDING_ARCHIVAL'] * lei:SuccessorEntity $PRESENT

Condition:

* $COUNT($LEGAL_ENTITY_EVENTS) > 0 WITH: * lei:LegalEntityEvent@event_status IN ['COMPLETED'] * lei:AffectedField WITH: * lei:SuccessorEntityName IN lei:field_xpath('/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:SuccessorEntityName') * OR * lei:LegalEntityEvent@event_status IN ['COMPLETED'] * lei:AffectedField WITH: * lei:SuccessorLEI IN lei:field_xpath('/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:SuccessorEntity/lei:SuccessorLEI')

Deprecated exception reasons are not used

Precondition:

* $COUNT($REPORTED_EXCEPTIONS) > 0

Condition:

* repex:ExceptionReason NOT IN ['LEGAL_OBSTACLES', 'CONSENT_NOT_OBTAINED', 'BINDING_LEGAL_COMMITMENTS', 'DETRIMENT_NOT_EXCLUDED', 'DISCLOSURE_DETRIMENTAL']

Xpath in affected fields is valid

Precondition:

* lei:LegalEntityEvent/lei:AffectedField $PRESENT

Condition:

* FOR lei:LegalEntityEvent/lei:AffectedField: * lei:field_xpath IN [ * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalName', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:OtherEntityNames/lei:OtherEntityName', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:OtherEntityNames/lei:OtherEntityName@type', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:TransliteratedOtherEntityNames/lei:TransliteratedOtherEntityName', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:TransliteratedOtherEntityNames/lei:TransliteratedOtherEntityName@type', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalAddress/lei:FirstAddressLine', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalAddress/lei:AdditionalAddressLine[1]', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalAddress/lei:AdditionalAddressLine[2]', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalAddress/lei:AdditionalAddressLine[3]', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalAddress/lei:AddressNumber', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalAddress/lei:AddressNumberWithinBuilding', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalAddress/lei:MailRouting', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalAddress/lei:City', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalAddress/lei:PostalCode', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalAddress/lei:Country', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalAddress/lei:Region', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalAddress@lang', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:HeadquartersAddress/*', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:OtherAddresses/*', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:OtherAddresses@lang', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:OtherAddresses@type', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:TransliteratedOtherAddresses/*', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:TransliteratedOtherAddresses@lang', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:TransliteratedOtherAddresses@type', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalJurisdiction', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:EntityCategory', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalForm/lei:EntityLegalFormCode', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:LegalForm/lei:OtherLegalForm', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:SuccessorEntity/lei:SuccessorLEI', * '/lei:LEIData/lei:LEIRecords/lei:LEIRecord/lei:Entity/lei:SuccessorEntity/lei:SuccessorEntityName', * '/rr:RelationshipData/rr:RelationshipRecords/rr:RelationshipRecord/rr:Relationship/rr:EndNode/rr:NodeID', * '/rr:RelationshipData/rr:RelationshipRecords/rr:RelationshipRecord/rr:Relationship/rr:EndNode/rr:NodeType', * '/rr:RelationshipData/rr:RelationshipRecords/rr:RelationshipRecord/rr:Relationship/rr:RelationshipType', * '/repex:ReportingExceptionData/repex:ReportingExceptions/repex:Exception/repex:ExceptionCategory', * '/repex:ReportingExceptionData/repex:ReportingExceptions/repex:Exception/repex:ExceptionReason' ]

No local identifier is provided for validation when authoritative source does not provide any identifier

Precondition:

* lei:RegistrationStatus IN ['ISSUED'] * lei:ValidationAuthorityID $PRESENT * lei:ValidationAuthorityID IN ['RA999999', 'RA000397', 'RA000704', 'RA000712', 'RA000722', 'RA000723', 'RA000725', 'RA000727', 'RA000733', 'RA000736', 'RA000737', 'RA000738', 'RA000739', 'RA000740', 'RA000741', 'RA000742', 'RA000743', 'RA000768', 'RA000769', 'RA000770', 'RA000771', 'RA000772', 'RA000773', 'RA000774', 'RA000775']

Condition:

* lei:ValidationAuthorityEntityID NOT $PRESENT