LEI Data GLEIF Data Quality Management

Data Quality Checks Details



Currently following checks are building the Rule Setting applied for the generation of the Data Quality Reports.
The Rule Setting is also available as PDF or Excel.

Legal name is plausible

Precondition:

lei:RegistrationStatus NOT 'ANNULLED'

Condition:

- lei:LegalName $PRESENT - lei:LegalName NOT IN ['NOT AVAILABLE', 'N.A.', 'N/A']; case insensitive - 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 >= 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 usage of GLEIF Accepted Legal Jurisdictions Code List

Precondition:

lei:RegistrationStatus $MUTABLE

Condition:

For records with lei:NextRenewalDate >= 2020-07-01T00:00:00+00:00: - lei:LegalJurisdiction IN $GLEIF_ACCEPTED_LEGAL_JURISDICTIONS For records with lei:NextRenewalDate

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 'ISSUED'

Condition:

- lei:NextRenewalDate + 1 Day >= leiFileHeader:ContentDate - lei:NextRenewalDate

Verify plausibility of dates for the record

Precondition:

lei:RegistrationStatus NOT 'ANNULLED'

Condition:

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

Appropriate setting of next renewal date of the record

Precondition:

lei:RegistrationStatus NOT 'ANNULLED'

Condition:

lei:NextRenewalDate > lei:InitialRegistrationDate

Ensure MERGED LEIs include successor information

Precondition:

lei:RegistrationStatus 'MERGED'

Condition:

lei:SuccessorLEI $PRESENT OR lei:SuccessorEntityName $PRESENT

Ensure appropriate expiration information for merged entities

Precondition:

lei:RegistrationStatus 'MERGED'

Condition:

- lei:EntityExpirationDate $PRESENT - lei:EntityExpirationDate 1970-01-01T00:00:00+00:00 - lei:EntityExpirationReason 'CORPORATE_ACTION'

Ensure appropriate expiration information for retired entities

Precondition:

lei:RegistrationStatus 'RETIRED'

Condition:

- lei:EntityExpirationDate $PRESENT - lei:EntityExpirationDate 1970-01-01T00:00:00+00:00 - lei:EntityExpirationReason 'DISSOLVED'

Ensure lack of entity expiration information for operating entities

Precondition:

lei:RegistrationStatus 'ISSUED'

Condition:

- lei:EntityExpirationDate NOT $PRESENT - lei:EntityExpirationReason NOT $PRESENT - lei:EntityStatus 'ACTIVE'

Ensure DUPLICATE records include LEI of successor

Precondition:

lei:RegistrationStatus 'DUPLICATE'

Condition:

lei:SuccessorLEI $PRESENT

Ensure correct settings for expiration reason

Precondition:

- lei:RegistrationStatus NOT 'ANNULLED' - lei:EntityExpirationDate $PRESENT

Condition:

lei:EntityExpirationReason $PRESENT

Ensure correct expiration information for non-operational entities

Precondition:

- lei:RegistrationStatus NOT 'ANNULLED' - lei:EntityExpirationDate $PRESENT OR lei:EntityExpirationReason $PRESENT

Condition:

lei:EntityStatus 'INACTIVE'

Ensure correct settings for expiration date

Precondition:

- lei:EntityExpirationReason $PRESENT - lei:RegistrationStatus NOT 'ANNULLED'

Condition:

lei:EntityExpirationDate $PRESENT

Avoid uniqueness violations outside of transfers

Precondition:

$COUNT(lei:LEI) > 1

Condition:

- $COUNT(lei:LEI) == 2 - leiFileHeader:Originator different for all lei:LEI - if RUT has lei:RegistrationStatus IN ['PENDING_TRANSFER', 'PENDING_ARCHIVAL'], the other record has lei:RegistrationStatus NOT IN ['PENDING_TRANSFER', 'PENDING_ARCHIVAL'] - if RUT has lei:RegistrationStatus NOT IN ['PENDING_TRANSFER', 'PENDING_ARCHIVAL'], the other record has lei:RegistationStatus 'PENDING_ARCHIVAL'

Validate SuccessorLEI

Precondition:

- lei:RegistrationStatus NOT 'ANNULLED' - lei:SucessorLEI $PRESENT

Condition:

lei:SuccessorLEI $VALID

Validate AssociatedLEI

Precondition:

- lei:RegistrationStatus NOT 'ANNULLED' - lei:AssociatedLEI $PRESENT

Condition:

lei:AssociatedLEI $VALID

Ensure record is managed by an accredited LEI-Issuer

Precondition:

lei:RegistrationStatus NOT 'ANNULLED'

Condition:

lei:ManagingLOU $LEI_ISSUER

Ensure correct registration statuses for active entities

Precondition:

- lei:RegistrationStatus NOT IN ['ANNULLED', 'DUPLICATE'] - lei:EntityStatus 'ACTIVE'

Condition:

lei:RegistrationStatus $MUTABLE

Check ManagingLOU equals Originator of the file

Precondition:

Condition:

lei:ManagingLOU == leiFileHeader:Originator

Ensure correct registration statuses for inactive entities

Precondition:

- lei:RegistrationStatus NOT IN ['ANNULLED','DUPLICATE','PENDING_TRANSFER','PENDING_ARCHIVAL'] - lei:EntityStatus 'INACTIVE'

Condition:

lei:RegistrationStatus IN ['MERGED', 'RETIRED']

Ensure an ultimate parent has correct relationship information

Precondition:

- lei:RegistrationStatus 'ISSUED' - Has $REPORTED_CHILD_RELATIONSHIPS where - rr:RelationshipType 'IS_ULTIMATELY_CONSOLIDATED_BY' - rr:RegistrationStatus $MUTABLE

Condition:

- Has no $REPORTED_RELATIONSHIPS where rr:RegistrationStatus $MUTABLE - Has exactly one $REPORTED_EXCEPTIONS where - repex:ExceptionReason IN ['NATURAL_PERSONS', 'NON_CONSOLIDATING', 'NO_KNOWN_PERSON'] - repex:ExceptionCategory 'DIRECT_ACCOUNTING_CONSOLIDATION_PARENT' - Has exactly one $REPORTED_EXCEPTIONS where - repex:ExceptionReason IN ['NATURAL_PERSONS', 'NON_CONSOLIDATING', 'NO_KNOWN_PERSON'] - repex:ExceptionCategory 'ULTIMATE_ACCOUNTING_CONSOLIDATION_PARENT'

Ensure distinct reporting exceptions without concurrent relationship records

Precondition:

Has $REPORTED_EXCEPTIONS

Condition:

For all $REPORTED_EXCEPTIONS: - Does not share repex:ExceptionCategory with any another $REPORTED_EXCEPTIONS - No $REPORTED_RELATIONSHIPS with rr:RegistrationStatus IN ['PUBLISHED','LAPSED'] with rr:RelationshipType corresponding to repex:ExceptionCategory (Direct vs Ultimate Parent)

Provide complete, distinct parent information for non-branches

Precondition:

- lei:EntityCategory NOT 'BRANCH' - lei:RegistrationStatus 'ISSUED'

Condition:

- Has exactly one $REPORTED_DIRECT_PARENT_INFO with rr:RegistrationStatus 'PUBLISHED' (for RR) - Has exactly one $REPORTED_ULTIMATE_PARENT_INFO with rr:RegistrationStatus 'PUBLISHED' (for RR)

Ensure published relationships point to an appropriate parent

Precondition:

Has $REPORTED_RELATIONSHIPS with rr:RegistrationStatus 'PUBLISHED'

Condition:

For all applicable $REPORTED_RELATIONSHIPS: - LEI record with lei:LEI == rr:EndNode/rr:NodeID $VALID and lei:RegistrationStatus $MUTABLE

When entity's regulatory filing is public, a validation reference is expected

Precondition:

Has $REPORTED_RELATIONSHIPS with - rr:ValidationDocuments '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:

Has $REPORTED_RELATIONSHIPS with - rr:RegistrationStatus 'RETIRED'

Condition:

For all applicable $REPORTED_RELATIONSHIPS: - rr:RelationshipPeriod with rr:PeriodType 'RELATIONSHIP_PERIOD' $PRESENT - rr:StartDate $PRESENT - rr:EndDate $PRESENT - if rr:RelationshipType IN ['IS_DIRECTLY_CONSOLIDATED_BY','IS_ULTIMATELY_CONSOLIDATED_BY']: - rr:RelationshipPeriod with rr:PeriodType 'ACCOUNTING_PERIOD' $PRESENT - if rr:RelationshipPeriod with rr:PeriodType 'ACCOUNTING_PERIOD' $PRESENT - rr:StartDate $PRESENT - rr:EndDate $PRESENT

Ensure relationship status is correct when parent record is inactive

Precondition:

Has $REPORTED_RELATIONSHIPS - rr:RegistrationStatus NOT IN ['DUPLICATE', 'ANNULLED'] - LEI record with lei:LEI == rr:EndNode/rr:NodeID has lei:RegistrationStatus IN ['MERGED', 'RETIRED']

Condition:

For all applicable $REPORTED_RELATIONSHIPS: - rr:RelationshipStatus 'INACTIVE'

Ensure relationship status is correct when child record is inactive

Precondition:

- lei:RegistrationStatus ['MERGED', 'RETIRED'] - rr:RegistrationStatus NOT ['DUPLICATE', 'ANNULLED']

Condition:

rr:RelationshipStatus 'INACTIVE'

Verify plausibility of relationship period dates

Precondition:

Has $REPORTED_RELATIONSHIPS 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:

rr:RelationshipStatus 'INACTIVE'

Condition:

rr:RegistrationStatus IN ['RETIRED', 'DUPLICATE', 'ANNULLED', 'PENDING_TRANSFER', 'PENDING_ARCHIVAL']

Avoid redundancy in legal address and addresses in alternative languages

Precondition:

lei:OtherAddress@type 'ALTERNATIVE_LANGUAGE_LEGAL_ADDRESS' $PRESENT

Condition:

For all applicable lei:OtherAddress: - lei:OtherAddress@lang $PRESENT - lei:OtherAddress@lang != lei:LegalAddress@lang - lei:OtherAddress NOT $EQUALS_NORMALIZED lei:LegalAddress - no pair of lei:OtherAddress $EQUALS_NORMALIZED Compared fields: - lei:FirstAddressLine - lei:AdditionalAddressLine{0,3} - lei:AddressNumber - lei:AddressNumberWithinBuilding - lei:MailRouting - lei:City - lei:PostalCode

Avoid redundancy in headquarters address and addresses in alternative languages

Precondition:

lei:OtherAddress@type 'ALTERNATIVE_LANGUAGE_HEADQUARTERS_ADDRESS' $PRESENT

Condition:

For all applicable lei:OtherAddress: - lei:OtherAddress@lang $PRESENT - lei:OtherAddress@lang != lei:HeadquartersAddress@lang - lei:OtherAddress NOT $EQUALS_NORMALIZED lei:HeadquartersAddress - no pair of lei:OtherAddress $EQUALS_NORMALIZED Compared fields: - lei:FirstAddressLine - lei:AdditionalAddressLine{0,3} - lei:AddressNumber - lei:AddressNumberWithinBuilding - lei:MailRouting - lei:City - lei:PostalCode

No validation information is provided for self-supplied entities

Precondition:

- lei:ValidationAuthority $PRESENT - lei:ValidationSources $PRESENT - lei:ValidationSources 'ENTITY_SUPPLIED_ONLY' - lei:ValidationAuthorityID NOT 'RA888888'

Condition:

- lei:ValidationAuthorityID 'RA999999' - lei:ValidationAuthorityEntityID NOT $PRESENT

Ensure complete relationship periods with start date for active entities

Precondition:

- lei:EntityStatus 'ACTIVE' - Has $REPORTED_RELATIONSHIPS with - rr:RegistrationStatus NOT ['ANNULLED', 'DUPLICATE']

Condition:

For all applicable $REPORTED_RELATIONSHIPS: - At least one rr:RelationshipPeriod with rr:PeriodType 'RELATIONSHIP_PERIOD' $PRESENT - rr:StartDate $PRESENT - If rr:ValidationDocuments 'REGULATORY_FILING': - rr:RelationshipPeriod with rr:PeriodType 'DOCUMENT_FILING_PERIOD' $PRESENT - rr:StartDate $PRESENT - if rr:RelationshipType IN ['IS_DIRECTLY_CONSOLIDATED_BY', 'IS_ULTIMATELY_CONSOLIDATED_BY']: - rr:RelationshipPeriod with rr:PeriodType 'ACCOUNTING_PERIOD' $PRESENT - if rr:RelationshipPeriod with rr:PeriodType 'ACCOUNTING_PERIOD' $PRESENT - rr:StartDate $PRESENT

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

Precondition:

- lei:RegistrationStatus 'LAPSED' - has $REPORTED_RELATIONSHIPS

Condition:

For all $REPORTED_RELATIONSHIPS: - rr:RegistrationStatus 'LAPSED' or $IMMUTABLE

Assert record and relationships share renewal cycle

Precondition:

Has $REPORTED_RELATIONSHIPS with - rr:RelationshipStatus 'ACTIVE' - rr:RegistrationStatus $MUTABLE

Condition:

For all applicable $REPORTED_RELATIONSHIPS: - rr:NextRenewalDate $PRESENT - absolute difference between rr:NextRenewalDate and lei:NextRenewalDate

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

Precondition:

- lei:RegistrationStatus NOT ['PENDING_TRANSFER', 'PENDING_ARCHIVAL'] - Has $REPORTED_RELATIONSHIPS where - rr:RegistrationStatus NOT ['PENDING_TRANSFER', 'PENDING_ARCHIVAL']

Condition:

For all applicable $REPORTED_RELATIONSHIPS: - lei:ManagingLOU == rr:ManagingLOU

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

Precondition:

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

Condition:

rr:RegistrationStatus 'ANNULLED'

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

Precondition:

HAS $REPORTED_RELATIONSHIPS where the LEI record with lei:LEI == rr:EndNode/rr:NodeID has lei:RegistrationStatus IN ['DUPLICATE', 'ANNULLED']

Condition:

For all applicable $REPORTED_RELATIONSHIPS: - rr:RegistrationStatus 'ANNULLED'

Provide periods of valid types for relationships

Precondition:

Has $REPORTED_RELATIONSHIPS with - rr:RegistrationStatus NOT IN ['ANNULLED', 'DUPLICATE']

Condition:

For all applicable $REPORTED_RELATIONSHIPS: - At least one rr:RelationshipPeriod with rr:PeriodType 'RELATIONSHIP_PERIOD' - if rr:ValidationDocuments 'REGULATORY_FILING': - At least one rr:RelationshipPeriod with rr:PeriodType 'DOCUMENT_FILING_PERIOD' - if rr:RelationshipType IN ['IS_DIRECTLY_CONSOLIDATED_BY','IS_ULTIMATELY_CONSOLIDATED_BY']: - At least one rr:RelationshipPeriod with rr:PeriodType 'ACCOUNTING_PERIOD'

Ensure correct transfer statuses for relationship records

Precondition:

- lei:RegistationStatus IN ['PENDING_TRANSFER', 'PENDING_ARCHIVAL'] - Has $MUTABLE $REPORTED_RELATIONSHIPS

Condition:

For all applicable $REPORTED_RELATIONSHIPS: - rr:RegistrationStatus == lei:RegistrationStatus

Ensure previous and trading names are unique

Precondition:

- lei:OtherEntityName $PRESENT - lei:OtherEntityNameType IN ['PREVIOUS_LEGAL_NAME', 'TRADING_OR_OPERATING_NAME']

Condition:

For all applicable lei:OtherEntityName - lei:OtherEntityName != lei:LegalName - lei:OtherEntityName $UNIQUE

Avoid duplication of validation authority

Precondition:

- lei:OtherValidationAuthorities $PRESENT - lei:ValidationAuthority/lei:ValidationAuthorityID != 'RA000466'

Condition:

- lei:ValidationAuthority $PRESENT - For all lei:OtherValidationAuthority: - lei:OtherValidationAuthority/lei:ValidationAuthorityID != lei:ValidationAuthority/lei:ValidationAuthorityID

Valid connection between relationship and registration statuses

Precondition:

Has $REPORTED_RELATIONSHIPS with - rr:RelationshipStatus 'ACTIVE'

Condition:

For all applicable $REPORTED_RELATIONSHIPS: - rr:RegistrationStatus IN [$MUTABLE, 'ANNULLED', 'DUPLICATE']

Ensure RA code corresponds to legal jurisdiction

Precondition:

- lei:RegistrationStatus $MUTABLE - lei:RegistrationAuthority $PRESENT - lei:RegistrationAuthorityID IN $RA_CODE_LIST

Condition:

- lei:RegistrationAuthorityID IN ['RA888888', 'RA999999'] OR - IF EntityCategory != 'BRANCH' - $RA_CODE_LIST/CountryCode == lei:LegalJurisdiction (country part) OR - IF EntityCategory == 'BRANCH' - $RA_CODE_LIST/CountryCode == 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 'RA999999' - lei:RegistrationStatus $MUTABLE

Condition:

lei:ValidationSources 'ENTITY_SUPPLIED_ONLY'

Verify expected level of validation for registered entities

Precondition:

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

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 == lei:LegalJurisdiction OR - $ELF_CODE_LIST/SubDivisionCode == 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:

Has $MUTABLE $REPORTED_RELATIONSHIPS with - rr:RelationshipType 'IS_INTERNATIONAL_BRANCH_OF'

Condition:

lei:EntityCategory 'BRANCH'

Only one active relationship of type IS_INTERNATIONAL_BRANCH_OF for Branches

Precondition:

- lei:RegistrationStatus $MUTABLE - Has exactly one $MUTABLE $REPORTED_RELATIONSHIPS - Has no $REPORTED_EXCEPTIONS

Condition:

rr:RelationshipType 'IS_INTERNATIONAL_BRANCH_OF'

Ensure branches have expected relationship information

Precondition:

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

Condition:

- has no $REPORTED_EXCEPTIONS - has no $REPORTED_RELATIONSHIPS with - rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED'] - rr:RelationshipType IN ['IS_DIRECTLY_CONSOLIDATED_BY', 'IS_ULTIMATELY_CONSOLIDATED_BY'] - has exactly one $REPORTED_RELATIONSHIPS with - rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED'] - rr:RelationshipType 'IS_INTERNATIONAL_BRANCH_OF'

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

Precondition:

- lei:RegistrationStatus IN ['ISSUED', 'LAPSED'] - has exactly one $REPORTED_RELATIONSHIPS where - rr:RelationshipType 'IS_INTERNATIONAL_BRANCH_OF' - rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED']

Condition:

- For all applicable $REPORTED_RELATIONSHIPS: - rr:EndNode/rr:NodeID $VALID - lei:LegalAddress/lei:Country != lei:LegalJurisdiction of the LEI record with lei:LEI == rr:EndNode/rr:NodeID - For all LEI records with lei:LEI == rr:StartNode/rr:NodeID where rr:EndNode/rr:NodeID == RUT rr:EndNode/rr:NodeID and rr:RelationshipType 'IS_INTERNATIONAL_BRANCH_OF': - RUT lei:LegalAddress/lei:Country $UNIQUE

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 'ISSUED' - has exactly one $REPORTED_RELATIONSHIPS with - rr:RelationshipType 'IS_ULTIMATELY_CONSOLIDATED_BY' - rr:RegistrationStatus 'PUBLISHED' - LEI record with lei:LEI == rr:EndNode/rr:NodeID - has lei:RegistrationStatus NOT ['PENDING_TRANSFER','PENDING_ARCHIVAL'] - has $MUTABLE $REPORTED_RELATIONSHIPS OR - has $REPORTED_EXCEPTIONS

Condition:

LEI record with lei:LEI == rr:EndNode/rr:NodeID - has no $MUTABLE $REPORTED_RELATIONSHIPS - has exactly one $REPORTED_EXCEPTIONS with - repex:ExceptionReason IN ['NATURAL_PERSONS', 'NON_CONSOLIDATING', 'NO_KNOWN_PERSON'] - repex:ExceptionCategory 'ULTIMATE_ACCOUNTING_CONSOLIDATION_PARENT' - has exactly one $REPORTED_EXCEPTIONS with - repex:ExceptionReason IN ['NATURAL_PERSONS', 'NON_CONSOLIDATING', 'NO_KNOWN_PERSON'] - repex:ExceptionCategory 'DIRECT_ACCOUNTING_CONSOLIDATION_PARENT'

Ensure entity identifier is not provided for unregistered entities

Precondition:

lei:RegistrationAuthorityID 'RA999999'

Condition:

lei:RegistrationAuthorityEntityID NOT $PRESENT

Ensure information on other validation authority is not repeated as validation entity identifier

Precondition:

lei:OtherValidationAuthorityID $PRESENT

Condition:

lei:OtherValidationAuthorityID NOT $EQUALS_NORMALIZED lei:ValidationAuthorityEntityID

Ensure information on other validation authority is not repeated as validation authority

Precondition:

lei:OtherValidationAuthorityID $PRESENT

Condition:

lei:OtherValidationAuthorityID NOT $EQUALS_NORMALIZED lei:ValidationAuthorityID

Ensure successor information corresponds to the registration status

Precondition:

- lei:RegistrationStatus NOT 'ANNULLED' - lei:SuccessorLEI $PRESENT OR lei:SuccessorEntityName $PRESENT

Condition:

- IF lei:SuccessorLEI $PRESENT: - lei:RegistrationStatus IN ['MERGED', 'DUPLICATE'] OR - IF lei:SuccessorEntityName $PRESENT: - lei:RegistrationStatus 'MERGED'

Ensure valid RA code is included

Precondition:

Condition:

- lei:RegistrationAuthorityID $PRESENT - lei:RegistrationAuthorityID IN $RA_CODE_LIST

Ensure valid ELF code is included

Precondition:

Condition:

- lei:EntityLegalFormCode $PRESENT - lei:EntityLegalFormCode IN $ELF_CODE_LIST - IF lei:RegistrationStatus $MUTABLE - lei:EntityLegalFormCode HAS ELF_STATUS 'ACTV'

Ensure no duplicate relationship records are introduced

Precondition:

- Has $REPORTED_RELATIONSHIPS with - rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED'] - rr:RelationshipType IN ['IS_DIRECTLY_CONSOLIDATED_BY', 'IS_ULTIMATELY_CONSOLIDATED_BY'] - Has $EXISTING_RELATIONSHIPS with - rr:RegistrationStatus IN ['PUBLISHED', 'LAPSED'] - rr:RelationshipType IN ['IS_DIRECTLY_CONSOLIDATED_BY', 'IS_ULTIMATELY_CONSOLIDATED_BY'] - $REPORTED_RELATIONSHIPS rr:RelationshipType == $EXISTING_RELATIONSHIPS rr:RelationshipType - $REPORTED_RELATIONSHIPS rr:EndNode/rr:NodeID == $EXISTING_RELATIONSHIPS rr:EndNode/rr:NodeID

Condition:

For all applicable $REPORTED_RELATIONSHIPS: - Has exactly one $EXISTING_RELATIONSHIPS where - $REPORTED_RELATIONSHIPS rr:RelationshipType == $EXISTING_RELATIONSHIPS rr:RelationshipType - $REPORTED_RELATIONSHIPS rrFileHeader:Originator == $EXISTING_RELATIONSHIPS rrFileHeader:Originator - Has no $EXISTING_RELATIONSHIPS where - $REPORTED_RELATIONSHIPS rrFileHeader:Originator != $EXISTING_RELATIONSHIPS rrFileHeader:Originator

Ensure source for corroboration is provided

Precondition:

- lei:RegistrationStatus != 'ANNULLED' - lei:ValidationSources $PRESENT - lei:ValidationSources IN ['PARTIALLY_CORROBORATED', 'FULLY_CORROBORATED']

Condition:

- ValidationAuthority $PRESENT - ValidationAuthorityID NOT IN ['RA999999', 'RA888888']

Ensure no validation source is given for uncorroborated records

Precondition:

- lei:RegistrationStatus $MUTABLE - lei:ValidationSources $PRESENT - lei:ValidationSources 'ENTITY_SUPPLIED_ONLY'" - lei:ValidationAuthority $PRESENT - lei:ValidationAuthorityID != 'RA999999'

Condition:

lei:ValidationAuthorityID 'RA888888'

Ensure consistent validation information based on registration

Precondition:

- lei:RegistrationAuthority $PRESENT - lei:RegistrationAuthorityID NOT ['RA888888', 'RA999999'] - lei:ValidationAuthority $PRESENT

Condition:

- lei:ValidationAuthorityID NOT ['RA888888', 'RA999999']

Ensure consistent register information based on validation

Precondition:

- lei:ValidationAuthority $PRESENT - lei:ValidationAuthorityID NOT ['RA888888', 'RA999999'] - lei:RegistrationAuthority $PRESENT

Condition:

lei:RegistrationAuthorityID NOT ['RA888888', 'RA999999']

Ensure valid register code is used for validation

Precondition:

Condition:

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

Ensure reasonable combination for parent exceptions

Precondition:

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

Condition:

- Has no $REPORTED_RELATIONSHIPS with rr:RegistrationStatus IN ['PUBLISHED','LAPSED'] - For all $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 'ISSUED' - lei:EntityCategory NOT 'FUND' - lei:RegistrationAuthorityID $PRESENT - lei:RegistrationAuthorityID NOT IN ['RA888888', 'RA999999', 'RA000018', 'RA000397', 'RA000634', 'RA000704', 'RA000711', '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 $PRESENT - lei:RegistrationAuthorityEntityID NOT IN ['NOT AVAILABLE', 'N.A.', 'N.A', 'N/A', 'N A', 'N.V', 'N.V.', 'N V', 'EXENTO', 'EXENTA', 'NO SUJETO', '0']; case insensitive - lei:RegistrationAuthorityEntityID NOT consisting only of $PUNCTUATION_CHARACTER

Ensure appropriate combination of corroboration level and legal form is used

Precondition:

- lei:EntityCategory != 'BRANCH' - lei:RegistrationStatus $ISSUED - lei:EntityLegalFormCode IN $ELF_CORROBORATION_LIST

Condition:

- For $ELF_CORROBORATION_LIST/Corroboration = 'PARTIALLY_CORROBORATED': - lei:ValidationSources IN ['PARTIALLY_CORROBORATED','FULLY_CORROBORATED'] - For $ELF_CORROBORATION_LIST/Corroboration = 'FULLY_CORROBORATED': - lei:ValidationSources = '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/is_sole_proprietorship 'yes'

Condition:

lei:EntityCategory 'SOLE_PROPRIETOR'

Ensure that Entity Legal Form Code is applicable for sole proprietors

Precondition:

- lei:RegistrationStatus $MUTABLE - lei:EntityCategory = 'SOLE_PROPRIETOR' - lei:EntityLegalFormCode $PRESENT

Condition:

lei:EntityLegalFormCode NOT IN $SOLE_PROPRIETOR_ELF_CODE_LIST/is_sole_proprietorship 'no'

Ensure that language information is provided

Precondition:

lei:RegistrationStatus $MUTABLE

Condition:

For each field $PRESENT IN [lei:LegalName, lei:LegalAddress, lei:HeadquartersAddress, lei:OtherEntityName, lei:TransliteratedOtherEntityName, lei:OtherAddress, lei:TransliteraterOtherAddress, lei:SuccessorEntityName]: - @lang $PRESENT - @lang $MATCHES '/^([a-z]{2})(-[A-Z]{1,8}|-[0-9]{1,3})?$/' IF all administrative languages in lei:LegalAddress/lei:Country have $LANGUAGE_ISO_3166_1_ALPHA_2 $PRESENT OR - @lang $MATCHES '/^([a-z]){1,3}(-[A-Z]{1,8}|-[0-9]{1,3})?$/' IF at least one administrative language in lei:LegalAddress/lei:Country have $LANGUAGE_ISO_3166_1_ALPHA_2 NOT $PRESENT - For lei:HeadquartersAddress, lei:HeadquartersAddress/lei:Country is used instead of lei:LegalAddress/lei:Country

Ensure that LegalName 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:

lei:SuccessorLEI != lei:LEI

Additional information for not yet listed validation authority is provided

Precondition:

- lei:RegistrationStatus $MUTABLE - lei:ValidationAuthorityId = 'RA888888'

Condition:

- lei:OtherValidationAuthorityId $PRESENT - lei:OtherValidationAuthorityId NOT IN ['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']; case-insensitive - lei:OtherValidationAuthorityId NOT consisting only of $PUNCTUATION_CHARACTER

Additional information for not yet listed registration authority is provided

Precondition:

- lei:RegistrationStatus $MUTABLE - lei:RegistrationAuthorityID = 'RA888888'

Condition:

- lei:OtherRegistrationAuthorityID $PRESENT - lei:OtherRegistrationAuthorityID NOT IN ['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']; case insensitive - 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 = 'RA888888'

Additional information for registration authority is provided only when suited

Precondition:

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

Condition:

lei:RegistrationAuthorityID = '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 ['0THER', 'OTHERS', 'DIğER', 'OTHER', 'NOT AVAILABLE', 'N.A.', 'N.A', 'N/A', 'N A', 'EXENTO', 'EXENTA', 'NO SUJETO', '0']; case-insensitive

Ensure 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 'RA888888'

Condition:

lei:ValidationSources 'ENTITY_SUPPLIED_ONLY'

Ensure the 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

Ensure the 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 all lei:OtherValidationAuthority: - lei:OtherValidationAuthority/lei:ValidationAuthorityEntityID $PATTERN_MATCH $RA_FORMAT_LIST/regex

Ensure local identifier are provided and plausible for validation

Precondition:

- lei:RegistrationStatus 'ISSUED' - lei:EntityCategory NOT 'FUND' - lei:ValidationAuthorityID $PRESENT - lei:ValidationAuthorityID NOT IN ['RA888888', 'RA999999', 'RA000018', 'RA000397', 'RA000634', 'RA000704', 'RA000711', '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 $PRESENT - lei:ValidationAuthorityEntityID NOT IN ['NOT AVAILABLE', 'N.A.', 'N.A', 'N/A', 'N A', 'N.V', 'N.V.', 'N V', 'EXENTO', 'EXENTA', 'NO SUJETO', '0']; case insensitive - lei:ValidationAuthorityEntityID NOT consisting only of $PUNCTUATION_CHARACTER