PREFIX gleif-base: <https://www.gleif.org/ontology/Base/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

gleif-base:LegalPerson a rdfs:Class ;
  rdfs:label "legal person" ;
  rdfs:comment "Any entity which can incur legal obligation and can be sued at law." ;
  rdfs:subClassOf gleif-base:Entity .

gleif-base:hasEntityStatus a rdf:Property ;
  rdfs:label "has entity status" ;
  rdfs:comment "Indicates the status of the entity (i.e., active, inactive)." ;
  rdfs:domain gleif-base:Entity ;
  rdfs:range gleif-base:EntityStatus .

gleif-base:hasSuccessor a rdf:Property ;
  rdfs:label "has successor" ;
  rdfs:comment "The surviving/new entity which continues/replaces this registration." ;
  rdfs:domain gleif-base:Entity ;
  rdfs:range gleif-base:Entity .

gleif-base:hasEntityExpirationReason a rdf:Property ;
  rdfs:label "has entity expiration reason" ;
  rdfs:comment "The reason that an entity ceased to exist and/or operate." ;
  rdfs:domain gleif-base:Entity ;
  rdfs:range gleif-base:EntityExpirationReason .

gleif-base:hasSuccessorName a rdf:Property ;
  rdfs:label "has successor name" ;
  rdfs:comment "The name of the successor entity." ;
  rdfs:domain gleif-base:Entity ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:hasNameLegalLocal a rdf:Property ;
  rdfs:label "has name legal local" ;
  rdfs:comment "The name used to refer to an person or organization in legal communications in local alphabet, which may be English." ;
  rdfs:range <https://w3id.org/linkml/Any> ;
  rdfs:subPropertyOf gleif-base:hasNameLocal , gleif-base:hasNameLegal .

gleif-base:hasLegalJurisdiction a rdf:Property ;
  rdfs:label "has legal jurisdiction" ;
  rdfs:comment "The jurisdiction of legal formation and registration of the entity (and upon which the LegalForm data element is also dependent). " ;
  rdfs:domain gleif-base:Entity ;
  rdfs:range <https://www.omg.org/spec/LCC/Countries/CountryRepresentation/GeographicRegion> .

gleif-base:hasAddress a rdf:Property ;
  rdfs:label "has address" ;
  rdfs:comment "Has a means by which the entity may be located or contacted or may receive correspondence." ;
  rdfs:domain gleif-base:Entity ;
  rdfs:range gleif-base:PhysicalAddress .

gleif-base:hasEntityExpirationDate a rdf:Property ;
  rdfs:label "has entity expiration date" ;
  rdfs:comment "The date that the entity ceased to operate, whether due to dissolution, merger or acquisition." ;
  rdfs:domain gleif-base:Entity ;
  rdfs:range xsd:dateTime .

gleif-base:LegalEntityRelationship a rdfs:Class ;
  rdfs:label "legal entity relationship" ;
  rdfs:comment "abstract superclass to represent a reified directed relationship" .

gleif-base:isQualifiedBy a rdf:Property ;
  rdfs:label "is qualified by" ;
  rdfs:comment "Any additional qualitative properties that help to categorize the relationship." ;
  rdfs:domain gleif-base:LegalEntityRelationship ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:isQuantifiedBy a rdf:Property ;
  rdfs:label "is quantified by" ;
  rdfs:comment "Any additional quantitative properties that help to categorize the relationship." ;
  rdfs:domain gleif-base:LegalEntityRelationship ;
  rdfs:range xsd:decimal .

gleif-base:hasSource a rdf:Property ;
  rdfs:label "has source" ;
  rdfs:comment "The entity that is the source of the directed relationship." ;
  rdfs:domain gleif-base:LegalEntityRelationship ;
  rdfs:range gleif-base:Entity .

gleif-base:hasTarget a rdf:Property ;
  rdfs:label "has target" ;
  rdfs:comment "The entity that plays the target of the directed relationship." ;
  rdfs:domain gleif-base:LegalEntityRelationship ;
  rdfs:range gleif-base:Entity .

gleif-base:PhysicalAddress a rdfs:Class ;
  rdfs:label "physical address"@en ;
  rdfs:comment "a physical address where communications can be addressed, papers served or representatives located for any kind of organization or person" .

gleif-base:hasCity a rdf:Property ;
  rdfs:label "has city" ;
  rdfs:comment "The mandatory name of the city." ;
  rdfs:domain gleif-base:PhysicalAddress ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:hasCountry a rdf:Property ;
  rdfs:label "has country" ;
  rdfs:comment "The country, based on the 2-character ISO 3166-1 country code." ;
  rdfs:domain gleif-base:PhysicalAddress ;
  rdfs:range <https://www.omg.org/spec/LCC/Countries/CountryRepresentation/Country> ;
  rdfs:subPropertyOf gleif-base:hasGeographicRegion .

gleif-base:hasAddressNumberWithinBuilding a rdf:Property ;
  rdfs:label "has address number within building" ;
  rdfs:comment "Optional, additional structured version of an internal location number, or range of numbers, contained in one of the address line elements." ;
  rdfs:domain gleif-base:PhysicalAddress ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:hasMailRouting a rdf:Property ;
  rdfs:label "mail routing" ;
  rdfs:comment "Optional free text address line to hold content from other address lines containing explicit routing information (this element's presence indicates that this address is a routing / 'care of' address)." ;
  rdfs:domain gleif-base:PhysicalAddress ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:hasAddressLine4 a rdf:Property ;
  rdfs:label "has address line 4" ;
  rdfs:comment "The fourth line of the one to three optional additional address line elements." ;
  rdfs:domain gleif-base:PhysicalAddress ;
  rdfs:range <https://w3id.org/linkml/Any> ;
  rdfs:subPropertyOf gleif-base:hasAdditionalAddressLine .

gleif-base:hasFirstAddressLine a rdf:Property ;
  rdfs:label "has first address line" ;
  rdfs:comment "The mandatory first address line element." ;
  rdfs:domain gleif-base:PhysicalAddress ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:hasAddressLine2 a rdf:Property ;
  rdfs:label "has address line 2" ;
  rdfs:comment "The second line of the one to three optional additional address line elements." ;
  rdfs:domain gleif-base:PhysicalAddress ;
  rdfs:range <https://w3id.org/linkml/Any> ;
  rdfs:subPropertyOf gleif-base:hasAdditionalAddressLine .

gleif-base:hasAddressLine3 a rdf:Property ;
  rdfs:label "has address line 3" ;
  rdfs:comment "The third line of the one to three optional additional address line elements." ;
  rdfs:domain gleif-base:PhysicalAddress ;
  rdfs:range <https://w3id.org/linkml/Any> ;
  rdfs:subPropertyOf gleif-base:hasAdditionalAddressLine .

gleif-base:hasAdditionalAddressLine a rdf:Property ;
  rdfs:label "has additional address line" ;
  rdfs:comment "Means to collect the one to three specifically-named optional additional address line elements." ;
  rdfs:domain gleif-base:PhysicalAddress ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:hasAddressLine1 a rdf:Property ;
  rdfs:label "has address line 1" ;
  rdfs:comment "The mandatory first address line element." ;
  rdfs:domain gleif-base:PhysicalAddress ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:hasAddressNumber a rdf:Property ;
  rdfs:label "has address number" ;
  rdfs:comment "Optional, additional structured version of an external house number, or range of numbers, contained in one of the address line elements." ;
  rdfs:domain gleif-base:PhysicalAddress ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:hasPostalCode a rdf:Property ;
  rdfs:label "has postal code" ;
  rdfs:comment "The (optional) postal code of this address as specified by the local postal service." ;
  rdfs:domain gleif-base:PhysicalAddress ;
  rdfs:range <https://w3id.org/linkml/Any> .

<https://www.omg.org/spec/LCC/Countries/CountryRepresentation/Country> a rdfs:Class .

gleif-base:RegistrationStatus a rdfs:Class ;
  rdfs:label "registration status" ;
  rdfs:comment "A lifecycle stage indicating the status of a given registration of something, such as a business or legal entity." .

gleif-base:Entity a rdfs:Class ;
  rdfs:label "entity" ;
  rdfs:comment "A partnership, corporation, or other organization having the capacity to negotiate contracts, assume financial obligations, and pay off debts, organized under the laws of some jurisdiction." .

<https://www.omg.org/spec/LCC/Countries/CountryRepresentation/GeographicRegion> a rdfs:Class .

gleif-base:RegistryIdentifier a rdfs:Class ;
  rdfs:label "registry identifier" ;
  rdfs:comment "An identifier associated with an entry in a registry, i.e., one that provides an index to the registry for the recorded item." ;
  rdfs:subClassOf gleif-base:Identifier .

gleif-base:isRegisteredIn a rdf:Property ;
  rdfs:label "is registered in" ;
  rdfs:comment "indicates the registry that something is registered in" ;
  rdfs:range gleif-base:Registry .

gleif-base:identifies a rdf:Property ;
  rdfs:label "identifies" ;
  rdfs:comment "The relationship between an identifier and the thing it uniquely identifies." ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:hasTag a rdf:Property ;
  rdfs:label "has tag" ;
  rdfs:comment "Has a unique combination of alphanumeric characters or binary representation corresponding to the identifier, code, or other element to which it applies." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf <http://www.w3.org/2004/02/skos/core#notation> .

gleif-base:Period a rdfs:Class ;
  rdfs:label "period"@en ;
  rdfs:comment "A period of time, with at least a start time, and possibly an end." .

gleif-base:hasStart a rdf:Property ;
  rdfs:label "has start"@en ;
  rdfs:comment "The start time of a period." ;
  rdfs:domain gleif-base:Period ;
  rdfs:range xsd:dateTime .

gleif-base:hasEnd a rdf:Property ;
  rdfs:label "has end"@en ;
  rdfs:comment "The end time of a period." ;
  rdfs:domain gleif-base:Period ;
  rdfs:range xsd:dateTime .

gleif-base:PhysicalAddressASCII a rdfs:Class ;
  rdfs:label "physical address ASCII" ;
  rdfs:comment "An address transliterated to ASCII characters." ;
  rdfs:subClassOf gleif-base:PhysicalAddress .

<https://www.omg.org/spec/LCC/Countries/CountryRepresentation/CountrySubdivision> a rdfs:Class .

<https://w3id.org/linkml/Any> a rdfs:Class ;
  rdfs:comment "An unconstrained type or object" .

gleif-base:RegistryEntry a rdfs:Class ;
  rdfs:label "registry entry" ;
  rdfs:comment "An entry in a registry that specifies something about the thing that is recorded." .

gleif-base:records a rdf:Property ;
  rdfs:label "records" ;
  rdfs:comment "The thing which the registry entry is a record of." ;
  rdfs:domain gleif-base:RegistryEntry ;
  rdfs:range <https://w3id.org/linkml/Any> .

<https://www.omg.org/spec/LCC/Countries/CountryRepresentation/Region> a rdfs:Class .

gleif-base:Identifier a rdfs:Class ;
  rdfs:label "identifier" ;
  rdfs:comment "Sequence of characters, capable of uniquely identifying that with which it is associated, within a specified context." .

gleif-base:Registry a rdfs:Class ;
  rdfs:label "registry" ;
  rdfs:comment "A system, typically an information system, that records the registration of items." .

<http://purl.org/dc/terms/created> a rdf:Property ;
  rdfs:range <https://w3id.org/linkml/Any> .

<http://purl.org/dc/terms/modified> a rdf:Property ;
  rdfs:range <https://w3id.org/linkml/Any> .

<http://www.w3.org/2004/02/skos/core#notation> a rdf:Property ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:hasAbbreviation a rdf:Property ;
  rdfs:label "has abbreviation" ;
  rdfs:comment "An abbreviation for the entity identified." ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:hasAbbreviationLocal a rdf:Property ;
  rdfs:label "has abbreviation local" ;
  rdfs:comment "An abbreviation using a language local to the entity identified; may be English." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasAbbreviation .

gleif-base:hasAbbreviationTransliterated a rdf:Property ;
  rdfs:label "has abbreviation transliterated" ;
  rdfs:comment "An abbreviation transliterated into a Western alphabet." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasAbbreviation .

gleif-base:hasAddressHeadquarters a rdf:Property ;
  rdfs:label "has address headquarters" ;
  rdfs:comment "An address of the headquarters of the Entity." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasAddress .

gleif-base:hasAddressLegal a rdf:Property ;
  rdfs:label "has address legal" ;
  rdfs:comment "An address of the entity as recorded in the registration of the entity in its legal jurisdiction." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasAddress .

gleif-base:hasAddressTransliterated a rdf:Property ;
  rdfs:label "has address transliterated" ;
  rdfs:comment "An address which has been converted from original to western text." ;
  rdfs:range gleif-base:PhysicalAddressASCII ;
  rdfs:subPropertyOf gleif-base:hasAddress .

gleif-base:hasCoverageArea a rdf:Property ;
  rdfs:label "has coverage area" ;
  rdfs:comment "Indicates a geographic region in which some service is provided, or to which some policy applies, or in which something is available." ;
  rdfs:range <https://www.omg.org/spec/LCC/Countries/CountryRepresentation/GeographicRegion> .

gleif-base:hasGeographicRegion a rdf:Property ;
  rdfs:label "has geographic region" ;
  rdfs:comment "The country or region where something is located." ;
  rdfs:range <https://www.omg.org/spec/LCC/Countries/CountryRepresentation/GeographicRegion> .

gleif-base:hasInitialRegistrationDate a rdf:Property ;
  rdfs:label "has initial registration date" ;
  rdfs:comment "The date on which an identifier or other registered item was first registered." ;
  rdfs:range xsd:dateTime ;
  rdfs:subPropertyOf <http://purl.org/dc/terms/created> .

gleif-base:hasLastUpdateDate a rdf:Property ;
  rdfs:label "has last modification date" ;
  rdfs:comment "The date that the detail of a specific registration in the registry was last revised." ;
  rdfs:range xsd:dateTime ;
  rdfs:subPropertyOf <http://purl.org/dc/terms/modified> .

gleif-base:hasName a rdf:Property ;
  rdfs:label "has name" ;
  rdfs:comment "Associates a name, reference name, or appellation with an individual resource." ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:hasNameASCII a rdf:Property ;
  rdfs:label "has name ASCII" ;
  rdfs:comment "The name used to refer to a person or organization in 7 bit ASCII text (ISO 646); also valid UNICODE (ISO 10646)." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasNameTransliterated .

gleif-base:hasNameASCIIAutomatic a rdf:Property ;
  rdfs:label "has name ASCII automatic" ;
  rdfs:comment "Legal name of the entity transliterated to ASCII characters, auto-transliterated by the managing LOU." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasNameLegal , gleif-base:hasNameASCII .

gleif-base:hasNameASCIIPreferred a rdf:Property ;
  rdfs:label "has name ASCII preferred" ;
  rdfs:comment "Legal name of the entity transliterated to ASCII characters, provided by the entity for this purpose." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasNameLegal , gleif-base:hasNameASCII .

gleif-base:hasNameAdditional a rdf:Property ;
  rdfs:label "has name additional" ;
  rdfs:comment "The name used to refer to an person or organization informally." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasName .

gleif-base:hasNameAdditionalLocal a rdf:Property ;
  rdfs:label "has name additional local" ;
  rdfs:comment "Registered name of the entity in an alternative language in the legal jurisdiction in which the entity is registered." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasNameLocal , gleif-base:hasNameAdditional .

gleif-base:hasNameLegal a rdf:Property ;
  rdfs:label "has name legal" ;
  rdfs:comment "The name used to refer to an person or organization in legal communications." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasName .

gleif-base:hasNameLocal a rdf:Property ;
  rdfs:label "has name local" ;
  rdfs:comment "A name in a language local to the entity identified; may be English." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasName .

gleif-base:hasNamePreviousLegal a rdf:Property ;
  rdfs:label "has name previous legal" ;
  rdfs:comment "A primary legal name previously used by this entity." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasNameAdditional .

gleif-base:hasNameTradingOrOperating a rdf:Property ;
  rdfs:label "has name trading or operating" ;
  rdfs:comment "A 'trading as', 'brand name' or 'operating under' name currently used by this entity in addition to, but not replacing, the (primary) legal, official registered name" ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasNameAdditional .

gleif-base:hasNameTranslatedEnglish a rdf:Property ;
  rdfs:label "has name translated English" ;
  rdfs:comment "The name used to refer to a person or organization, translated into English. Transliterated to ASCII by definition." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasNameASCII .

gleif-base:hasNameTransliterated a rdf:Property ;
  rdfs:label "has name transliterated" ;
  rdfs:comment "The name used to refer to a person or organization, converted from original to western text. Not generally the legal name." ;
  rdfs:range xsd:string ;
  rdfs:subPropertyOf gleif-base:hasName .

gleif-base:hasNextRenewalDate a rdf:Property ;
  rdfs:label "has next renewal date" ;
  rdfs:comment "The date by which a specific registration in the registry must be renewed or updated." ;
  rdfs:range xsd:dateTime .

gleif-base:hasRegion a rdf:Property ;
  rdfs:label "has region" ;
  rdfs:comment "The (optional) region or subdivision (state, province, region, etc.) based on the 4- to 6-character ISO 3166-2 region code" ;
  rdfs:range <https://www.omg.org/spec/LCC/Countries/CountryRepresentation/CountrySubdivision> ;
  rdfs:subPropertyOf gleif-base:hasGeographicRegion .

gleif-base:hasRegistrationStatus a rdf:Property ;
  rdfs:label "has registration status" ;
  rdfs:comment "indicates the status of a specific registration, such as for an identifier or license" ;
  rdfs:range gleif-base:RegistrationStatus .

gleif-base:hasWebsite a rdf:Property ;
  rdfs:label "has website" ;
  rdfs:comment "A website associated with something, including but not limited to an organization." ;
  rdfs:range xsd:anyURI .

gleif-base:isManagedBy a rdf:Property ;
  rdfs:label "is managed by" ;
  rdfs:comment "Relates something to another thing that has some role in directing its affairs." ;
  rdfs:range <https://w3id.org/linkml/Any> .

gleif-base:EntityStatus a rdfs:Class ;
  rdfs:label "entity status" ;
  rdfs:comment "The operational and/or legal registration status of the entity (may be ACTIVE or INACTIVE)" .

gleif-base:EntityStatusActive a gleif-base:EntityStatus ;
  rdfs:label "active" ;
  rdfs:comment "As of the last report or update, the entity reported that it was legally registered and operating." .

gleif-base:EntityStatusInactive a gleif-base:EntityStatus ;
  rdfs:label "inactive" ;
  rdfs:comment "It has been determined that the entity that was assigned the LEI is no longer legally registered and/or operating, whether as a result of business closure, acquisition by or merger with another (or new) entity, or determination of illegitimacy." .

gleif-base:EntityExpirationReason a rdfs:Class ;
  rdfs:label "entity expiration reason" ;
  rdfs:comment "The reason that an entity ceased to exist and/or operate." .

gleif-base:EntityExpirationReasonCorporateAction a gleif-base:EntityExpirationReason ;
  rdfs:label "corporate action" ;
  rdfs:comment "The entity was acquired or merged with another entity." .

gleif-base:EntityExpirationReasonDissolved a gleif-base:EntityExpirationReason ;
  rdfs:label "dissolved" ;
  rdfs:comment "The entity ceased to operate." .

gleif-base:EntityExpirationReasonOther a gleif-base:EntityExpirationReason ;
  rdfs:label "other" ;
  rdfs:comment "The reason for expiry is neither of dissolved nor corporate action." .

gleif-base:RegistrationAuthority a rdfs:Class ;
  rdfs:label "registration authority" ;
  rdfs:comment "An organization that is responsible for maintaining a registry and provides registration services." ;
  rdfs:subClassOf gleif-base:Entity .

gleif-base:GLEIF a gleif-base:RegistrationAuthority .
