Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion justfile
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ download-ftm-schema VERSION:
mkdir -p schemas/{{VERSION}}/
wget https://github.com/opensanctions/followthemoney/archive/refs/tags/v{{VERSION}}.zip
unzip v{{VERSION}}.zip >/dev/null
mv followthemoney-{{VERSION}}/followthemoney/schema/*.yaml followthemoney-{{VERSION}}/followthemoney/schema/*.yml schemas/{{VERSION}}/ 2>/dev/null; true
mv followthemoney-{{VERSION}}/followthemoney/schema/*.yaml schemas/{{VERSION}}/
rm -rf followthemoney-{{VERSION}}/ v{{VERSION}}.zip

test:
Expand Down
11 changes: 4 additions & 7 deletions schemas/4.5.0/Address.yaml → schemas/4.6.0/Address.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ Address:
type: address
remarks:
label: "Remarks"
description: "Handling instructions, like 'care of'."
description: "Handling instructions, like 'care of'"
postOfficeBox:
label: "PO Box"
description: "A mailbox identifier at the post office"
Expand All @@ -53,23 +53,20 @@ Address:
description: "City, town, village or other locality"
postalCode:
label: "Postal code"
description: "Zip code or postcode."
description: "Zip code or postcode"
maxLength: 16
region:
label: "Region"
description: "Also province or area."
description: "Also province or area"
state:
label: "State"
description: "State or federal unit."
description: "State or federal unit"
latitude:
label: "Latitude"
type: "number"
longitude:
label: "Longitude"
type: "number"
country:
label: "Country"
type: "country"
osmId:
label: "OpenStreetmap Place ID"
type: "identifier"
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
6 changes: 3 additions & 3 deletions schemas/4.5.0/Associate.yaml → schemas/4.6.0/Associate.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Associate:
label: "Associate"
plural: "Associates"
description: "Non-family association between two people"
description: "Non-family association between two people."
extends:
- Interval
matchable: false
Expand All @@ -22,15 +22,15 @@ Associate:
properties:
person:
label: "Person"
description: "The subject of the association."
description: "The subject of the association"
type: entity
range: Person
reverse:
name: associates
label: "Associates"
associate:
label: "Associate"
description: "An associate of the subject person."
description: "An associate of the subject person"
type: entity
range: Person
reverse:
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ CallForTenders:
plural: "Calls for tenders"
description: >
A public appeal issued by an authority, possibly on behalf of another,
for buying a specific work, supply or service
for buying a specific work, supply or service.
extends:
- Thing
- Interval
Expand Down Expand Up @@ -96,7 +96,7 @@ CallForTenders:
type: url
fallsUnderGPPScope:
label: "Does this call fall under the scope of GPP?"
description: "European Green Public Procurement (GPP) or green purchasing."
description: "European Green Public Procurement (GPP) or green purchasing"
certificationCheck:
label: "Certification check"
awardingDate:
Expand Down
22 changes: 9 additions & 13 deletions schemas/4.5.0/Company.yaml → schemas/4.6.0/Company.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,9 @@ Company:
- previousName
- registrationNumber
properties:
jurisdiction:
label: Jurisdiction
type: country
registrationNumber:
label: Registration number
type: identifier
capital:
label: "Capital"
type: number
voenCode:
label: "VOEN"
description: "Azerbaijan taxpayer ID"
Expand All @@ -40,7 +35,7 @@ Company:
coatoCode:
label: "COATO / SOATO / OKATO"
type: identifier
description: "Soviet classifier for territories, regions, districts, villages. Aka. SOATO and same as OKATO"
description: "Soviet classifier for territories, regions, districts, villages. Aka. SOATO and same as OKATO."
matchable: false
irsCode:
label: "IRS Number"
Expand All @@ -52,7 +47,7 @@ Company:
matchable: false
cikCode:
label: "SEC Central Index Key"
description: "US SEC Central Index Key"
description: "US SEC Central Index Key for listed companies"
type: identifier
jibCode:
label: "JIB"
Expand All @@ -67,16 +62,16 @@ Company:
matchable: false
kppCode:
label: "KPP"
description: "Russian code issued by the tax authority, identifies the reason for registration at the Federal Tax Service (Russian: КПП). A company may have multiple KPP codes (e.g. for different branches), and the codes are not unique across companies."
description: "(RU, КПП) Russian code issued by the tax authority, identifies the reason for registration at the Federal Tax Service. A company may have multiple KPP codes (e.g. for different branches), and the codes are not unique across companies."
type: identifier
matchable: false
okvedCode:
label: "OKVED(2) Classifier"
description: "Russian classifier that that categorizes businesses by their (primary and secondary) economic activities (Russian: ОКВЭД)"
description: "(RU, ОКВЭД) Russian classifier that categorizes businesses by their (primary and secondary) economic activities"
matchable: false
okopfCode:
label: "OKOPF"
description: "Russian classifier that that categorizes different types of legal entities in Russia based on their organizational and legal structure (Russian: ОКОПФ)"
description: "(RU, ОКОПФ) Russian classifier that categorizes different types of legal entities in Russia based on their organizational and legal structure"
matchable: false
fnsCode:
label: "Federal tax service code"
Expand All @@ -92,16 +87,17 @@ Company:
type: identifier
pfrNumber:
label: "PFR Number"
description: "(RU, ПФР) Pension Fund Registration number. AAA-BBB-CCCCCC, where AAA is organisation region, BBB is district, CCCCCC number at a specific branch"
description: "(RU, ПФР) Pension Fund Registration number. AAA-BBB-CCCCCC, where AAA is organisation region, BBB is district, and CCCCCC is the number at a specific branch."
type: identifier
oksmCode:
label: OKSM
description: "Russian (ОКСМ) countries classifier"
description: "(RU, ОКСМ) Russian countries classifier"
matchable: false
isinCode:
label: ISIN
description: International Securities Identification Number
type: identifier
deprecated: true
ticker:
label: Stock ticker symbol
type: identifier
Expand Down
14 changes: 10 additions & 4 deletions schemas/4.5.0/Contract.yaml → schemas/4.6.0/Contract.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ Contract:
label: "Contract"
plural: "Contracts"
description: >
An contract or contract lot issued by an authority. Multiple lots
may be awarded to different suppliers (see ContractAward).
A contract or contract lot issued by an authority. Multiple lots
may be awarded to different suppliers (see `ContractAward`).
extends:
- Asset
matchable: false
Expand Down Expand Up @@ -42,8 +42,11 @@ Contract:
range: Project
type:
label: "Type"
description: >
Type of contract. Potentially W (Works), U (Supplies), S (Services).
description: "Type of contract"
examples:
- W (Works)
- U (Supplies)
- S (Services)
contractDate:
label: "Contract date"
type: date
Expand All @@ -57,6 +60,9 @@ Contract:
label: "Number of awards"
status:
label: "Status"
examples:
- In force
- Annulled
method:
label: "Procurement method"
criteria:
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ CryptoWallet:
- creationDate
properties:
publicKey:
# FIXME: this is a very unusual name for this. what do the bros call it???
label: Address
description: Public key used to identify the wallet
type: identifier
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ Directorship:
properties:
director:
label: "Director"
description: "The entity exercising control over another"
reverse:
name: directorshipDirector
label: "Directorships"
Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
EconomicActivity:
label: "Customs declaration"
plural: "Customs declarations"
description: "A foreign economic activity"
description: "A foreign economic activity."
matchable: false
extends:
- Interval
Expand Down
File renamed without changes.
File renamed without changes.
3 changes: 0 additions & 3 deletions schemas/4.5.0/Event.yaml → schemas/4.6.0/Event.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,6 @@ Event:
location:
label: "Location"
type: address
country:
label: "Country"
type: country
important:
label: "Important"
organizer:
Expand Down
11 changes: 7 additions & 4 deletions schemas/4.5.0/Family.yaml → schemas/4.6.0/Family.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Family:
label: "Family"
plural: "Family members"
description: "Family relationship between two people"
description: "Family relationship between two people."
extends:
- Interval
matchable: false
Expand All @@ -22,7 +22,7 @@ Family:
properties:
person:
label: "Person"
description: "The subject of the familial relation."
description: "The subject of the familial relation"
type: entity
range: Person
reverse:
Expand All @@ -35,7 +35,10 @@ Family:
reverse:
name: familyRelative
label: "Relatives"
description: "The relative of the subject person."
description: "The relative of the subject person"
relationship:
label: "Relationship"
description: "Nature of the relationship, from the person's perspective eg. 'mother', where 'relative' is mother of 'person'."
description: "Nature of the relationship from the `person`'s perspective, e.g. 'mother', where `relative` is the mother of `person`"
examples:
- mother
- sibling
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ Identification:
label: "Identification"
plural: "Identifications"
description: >
An form of identification associated with its holder and some issuing country. This
can be used for national ID cards, voter enrollments and similar instruments.
A form of identification associated with its holder and some issuing country. This
can be used for national ID cards, voter enrollments, and similar instruments.
extends:
- Interval
matchable: false
Expand All @@ -29,6 +29,9 @@ Identification:
name: identification
type:
label: "Type"
examples:
- Passport
- Driving license
country:
label: "Country"
type: country
Expand All @@ -38,3 +41,4 @@ Identification:
maxLength: 64
authority:
label: "Authority"
description: "Government body issuing the identification document"
2 changes: 1 addition & 1 deletion schemas/4.5.0/Image.yaml → schemas/4.6.0/Image.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,5 +28,5 @@ Image:
range: Person
credit:
label: "Credit"
description: "The credit or attribution for the image."
description: "The credit or attribution for the image"
type: string
File renamed without changes.
9 changes: 8 additions & 1 deletion schemas/4.5.0/Interval.yaml → schemas/4.6.0/Interval.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Interval:
# Intervals are not graph edges.
#
# Yes, many interval child schemata (e.g. Directorship, Ownership) can
# be interpreted as an edge between to Things. But that isn't intrinsic.
# be interpreted as an edge between two Things. But that isn't intrinsic.
# If you write any code that assumes that Intervals == edges, it will
# be buggy and wrong. You will find there are intervals that link to
# only one thing (e.g. Sanction) or to much more than two (e.g. FEA).
Expand All @@ -23,12 +23,15 @@ Interval:
properties:
startDate:
label: "Start date"
description: "The date of issue of a document, or on which a relationship, sanctioned status, occupation, etc. started"
type: date
endDate:
label: "End date"
description: "The date of expiry of a document, or on which a relationship, sanctioned status, occupation, etc. ended"
type: date
date:
label: "Date"
description: "Date associated with an Interval that isn't explicitly its `startDate` or `endDate` (prefer those when available)"
type: date
summary:
label: "Summary"
Expand All @@ -38,8 +41,10 @@ Interval:
type: text
recordId:
label: "Record ID"
description: Identifier of a record upon which this link is based
sourceUrl:
label: "Source link"
description: "A deep link to a source website for the profile"
type: url
matchable: false
proof:
Expand Down Expand Up @@ -74,8 +79,10 @@ Interval:
type: text
modifiedAt:
label: "Modified on"
description: "The date on which the entity (like the ID document) was modified, not to be confused with an internal 'last updated'-style metadata field"
type: date
retrievedAt:
label: "Retrieved on"
description: "Retrieval date generated by a data gathering system, not to be confused with an internal 'first found'-style metadata field"
type: date
matchable: false
Loading
Loading