followthemoney 1.3.7__py3-none-any.whl → 3.8.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- followthemoney/__init__.py +5 -3
- followthemoney/cli/__init__.py +17 -0
- followthemoney/cli/aggregate.py +56 -0
- followthemoney/cli/cli.py +88 -0
- followthemoney/cli/exports.py +121 -0
- followthemoney/cli/mapping.py +85 -0
- followthemoney/cli/sieve.py +67 -0
- followthemoney/cli/util.py +142 -0
- followthemoney/compare.py +130 -60
- followthemoney/exc.py +19 -6
- followthemoney/export/common.py +29 -0
- followthemoney/export/csv.py +82 -0
- followthemoney/export/excel.py +75 -0
- followthemoney/export/graph.py +79 -0
- followthemoney/export/neo4j.py +182 -0
- followthemoney/export/rdf.py +26 -0
- followthemoney/graph.py +308 -0
- followthemoney/helpers.py +212 -0
- followthemoney/mapping/__init__.py +1 -1
- followthemoney/mapping/csv.py +67 -35
- followthemoney/mapping/entity.py +116 -44
- followthemoney/mapping/property.py +90 -44
- followthemoney/mapping/query.py +27 -19
- followthemoney/mapping/source.py +15 -5
- followthemoney/mapping/sql.py +75 -61
- followthemoney/messages.py +13 -7
- followthemoney/model.py +108 -56
- followthemoney/namespace.py +119 -0
- followthemoney/offshore.py +48 -0
- followthemoney/ontology.py +77 -0
- followthemoney/property.py +204 -71
- followthemoney/proxy.py +455 -118
- followthemoney/rdf.py +9 -0
- followthemoney/schema/Address.yaml +78 -0
- followthemoney/schema/Airplane.yaml +17 -10
- followthemoney/schema/Analyzable.yaml +54 -0
- followthemoney/schema/Article.yaml +16 -0
- followthemoney/schema/Assessment.yaml +32 -0
- followthemoney/schema/Asset.yaml +10 -4
- followthemoney/schema/Associate.yaml +41 -0
- followthemoney/schema/Audio.yaml +24 -0
- followthemoney/schema/BankAccount.yaml +53 -9
- followthemoney/schema/Call.yaml +48 -0
- followthemoney/schema/CallForTenders.yaml +117 -0
- followthemoney/schema/Company.yaml +37 -12
- followthemoney/schema/Contract.yaml +41 -7
- followthemoney/schema/ContractAward.yaml +30 -11
- followthemoney/schema/CourtCase.yaml +16 -10
- followthemoney/schema/CourtCaseParty.yaml +17 -6
- followthemoney/schema/CryptoWallet.yaml +48 -0
- followthemoney/schema/Debt.yaml +37 -0
- followthemoney/schema/Directorship.yaml +17 -4
- followthemoney/schema/Document.yaml +72 -139
- followthemoney/schema/Documentation.yml +38 -0
- followthemoney/schema/EconomicActivity.yaml +32 -17
- followthemoney/schema/Email.yaml +76 -0
- followthemoney/schema/Employment.yaml +39 -0
- followthemoney/schema/Event.yaml +35 -3
- followthemoney/schema/Family.yaml +41 -0
- followthemoney/schema/Folder.yaml +13 -0
- followthemoney/schema/HyperText.yaml +21 -0
- followthemoney/schema/Identification.yaml +40 -0
- followthemoney/schema/Image.yaml +25 -0
- followthemoney/schema/Interest.yaml +3 -6
- followthemoney/schema/Interval.yaml +56 -5
- followthemoney/schema/LegalEntity.yaml +81 -20
- followthemoney/schema/License.yaml +7 -3
- followthemoney/schema/Membership.yaml +19 -4
- followthemoney/schema/Mention.yaml +54 -0
- followthemoney/schema/Message.yaml +73 -0
- followthemoney/schema/Note.yaml +23 -0
- followthemoney/schema/Occupancy.yaml +40 -0
- followthemoney/schema/Organization.yaml +38 -3
- followthemoney/schema/Ownership.yaml +16 -4
- followthemoney/schema/Package.yaml +17 -0
- followthemoney/schema/Page.yaml +43 -0
- followthemoney/schema/Pages.yaml +23 -0
- followthemoney/schema/Passport.yaml +15 -17
- followthemoney/schema/Payment.yaml +38 -7
- followthemoney/schema/Person.yaml +61 -5
- followthemoney/schema/PlainText.yaml +17 -0
- followthemoney/schema/Position.yaml +50 -0
- followthemoney/schema/Post.yaml +42 -0
- followthemoney/schema/Project.yaml +27 -0
- followthemoney/schema/ProjectParticipant.yaml +36 -0
- followthemoney/schema/PublicBody.yaml +14 -3
- followthemoney/schema/RealEstate.yaml +19 -3
- followthemoney/schema/Representation.yaml +17 -6
- followthemoney/schema/Sanction.yaml +44 -20
- followthemoney/schema/Security.yaml +59 -0
- followthemoney/schema/Similar.yaml +37 -0
- followthemoney/schema/Succession.yaml +36 -0
- followthemoney/schema/Table.yaml +32 -0
- followthemoney/schema/TaxRoll.yaml +27 -9
- followthemoney/schema/Thing.yaml +69 -13
- followthemoney/schema/Trip.yaml +42 -0
- followthemoney/schema/UnknownLink.yaml +17 -6
- followthemoney/schema/UserAccount.yaml +44 -0
- followthemoney/schema/Value.yaml +5 -1
- followthemoney/schema/Vehicle.yaml +25 -8
- followthemoney/schema/Vessel.yaml +18 -10
- followthemoney/schema/Video.yaml +20 -0
- followthemoney/schema/Workbook.yaml +18 -0
- followthemoney/schema.py +406 -135
- followthemoney/translations/ar/LC_MESSAGES/followthemoney.mo +0 -0
- followthemoney/translations/ar/LC_MESSAGES/followthemoney.po +2900 -787
- followthemoney/translations/bs/LC_MESSAGES/followthemoney.mo +0 -0
- followthemoney/translations/bs/LC_MESSAGES/followthemoney.po +2108 -520
- followthemoney/translations/de/LC_MESSAGES/followthemoney.mo +0 -0
- followthemoney/translations/de/LC_MESSAGES/followthemoney.po +2902 -782
- followthemoney/translations/es/LC_MESSAGES/followthemoney.mo +0 -0
- followthemoney/translations/es/LC_MESSAGES/followthemoney.po +2893 -779
- followthemoney/translations/fr/LC_MESSAGES/followthemoney.mo +0 -0
- followthemoney/translations/fr/LC_MESSAGES/followthemoney.po +4362 -0
- followthemoney/translations/fr/followthemoney.po +3861 -0
- followthemoney/translations/messages.pot +3021 -725
- followthemoney/translations/nb/LC_MESSAGES/followthemoney.mo +0 -0
- followthemoney/translations/nb/LC_MESSAGES/followthemoney.po +3778 -0
- followthemoney/translations/nl/LC_MESSAGES/followthemoney.mo +0 -0
- followthemoney/translations/nl/LC_MESSAGES/followthemoney.po +3837 -0
- followthemoney/translations/pt_BR/LC_MESSAGES/followthemoney.mo +0 -0
- followthemoney/translations/pt_BR/LC_MESSAGES/followthemoney.po +3784 -0
- followthemoney/translations/ru/LC_MESSAGES/followthemoney.mo +0 -0
- followthemoney/translations/ru/LC_MESSAGES/followthemoney.po +2837 -539
- followthemoney/translations/ru/followthemoney.po +4221 -0
- followthemoney/translations/tr/LC_MESSAGES/followthemoney.mo +0 -0
- followthemoney/translations/tr/LC_MESSAGES/followthemoney.po +2073 -491
- followthemoney/types/__init__.py +35 -17
- followthemoney/types/address.py +41 -21
- followthemoney/types/checksum.py +25 -0
- followthemoney/types/common.py +233 -88
- followthemoney/types/country.py +89 -56
- followthemoney/types/date.py +59 -76
- followthemoney/types/email.py +66 -35
- followthemoney/types/entity.py +66 -13
- followthemoney/types/gender.py +66 -0
- followthemoney/types/iban.py +47 -28
- followthemoney/types/identifier.py +49 -22
- followthemoney/types/ip.py +35 -21
- followthemoney/types/json.py +58 -0
- followthemoney/types/language.py +124 -37
- followthemoney/types/mimetype.py +44 -0
- followthemoney/types/name.py +56 -12
- followthemoney/types/number.py +30 -0
- followthemoney/types/phone.py +92 -34
- followthemoney/types/registry.py +52 -0
- followthemoney/types/string.py +43 -0
- followthemoney/types/topic.py +94 -0
- followthemoney/types/url.py +39 -17
- followthemoney/util.py +139 -45
- followthemoney-3.8.0.dist-info/METADATA +153 -0
- followthemoney-3.8.0.dist-info/RECORD +157 -0
- {followthemoney-1.3.7.dist-info → followthemoney-3.8.0.dist-info}/WHEEL +1 -2
- followthemoney-3.8.0.dist-info/entry_points.txt +17 -0
- followthemoney-1.3.7.dist-info/LICENSE.txt → followthemoney-3.8.0.dist-info/licenses/LICENSE +1 -1
- followthemoney/link.py +0 -75
- followthemoney/schema/Associate.yml +0 -19
- followthemoney/schema/Family.yml +0 -19
- followthemoney/schema/Land.yml +0 -9
- followthemoney/schema/Relationship.yaml +0 -26
- followthemoney/types/domain.py +0 -50
- followthemoney-1.3.7.dist-info/DESCRIPTION.rst +0 -3
- followthemoney-1.3.7.dist-info/METADATA +0 -39
- followthemoney-1.3.7.dist-info/RECORD +0 -108
- followthemoney-1.3.7.dist-info/entry_points.txt +0 -3
- followthemoney-1.3.7.dist-info/metadata.json +0 -1
- followthemoney-1.3.7.dist-info/namespace_packages.txt +0 -1
- followthemoney-1.3.7.dist-info/top_level.txt +0 -3
- ns/ontology.py +0 -128
- tests/types/test_addresses.py +0 -24
- tests/types/test_common.py +0 -32
- tests/types/test_countries.py +0 -27
- tests/types/test_dates.py +0 -73
- tests/types/test_domains.py +0 -23
- tests/types/test_emails.py +0 -32
- tests/types/test_entity.py +0 -19
- tests/types/test_iban.py +0 -109
- tests/types/test_identifiers.py +0 -27
- tests/types/test_ip.py +0 -29
- tests/types/test_languages.py +0 -23
- tests/types/test_names.py +0 -33
- tests/types/test_phones.py +0 -24
- tests/types/test_registry.py +0 -14
- tests/types/test_urls.py +0 -23
- {ns → followthemoney/export}/__init__.py +0 -0
- /tests/types/__init__.py → /followthemoney/py.typed +0 -0
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
Position:
|
|
2
|
+
label: "Position"
|
|
3
|
+
plural: "Positions"
|
|
4
|
+
extends:
|
|
5
|
+
- Thing
|
|
6
|
+
matchable: true
|
|
7
|
+
# cf. https://www.popoloproject.com/specs/post.html
|
|
8
|
+
description: >
|
|
9
|
+
A post, role or position within an organization or body.
|
|
10
|
+
This describes a position one or more people may occupy
|
|
11
|
+
and not the occupation of the post by a specific individual at a
|
|
12
|
+
specific point in time.
|
|
13
|
+
|
|
14
|
+
'subnationalArea' should be used to further restrict the scope of the
|
|
15
|
+
position. It should not simply represent some regional aspect of the
|
|
16
|
+
role - e.g. the constituency of a national member of parliament - when
|
|
17
|
+
their legislative jurisdiction is nationwide.
|
|
18
|
+
featured:
|
|
19
|
+
- name
|
|
20
|
+
- country
|
|
21
|
+
- subnationalArea
|
|
22
|
+
caption:
|
|
23
|
+
- name
|
|
24
|
+
required:
|
|
25
|
+
- name
|
|
26
|
+
temporalExtent:
|
|
27
|
+
start:
|
|
28
|
+
- inceptionDate
|
|
29
|
+
end:
|
|
30
|
+
- dissolutionDate
|
|
31
|
+
properties:
|
|
32
|
+
organization:
|
|
33
|
+
label: "Organization"
|
|
34
|
+
type: entity
|
|
35
|
+
reverse:
|
|
36
|
+
name: positions
|
|
37
|
+
label: Positions
|
|
38
|
+
range: Organization
|
|
39
|
+
inceptionDate:
|
|
40
|
+
label: Inception date
|
|
41
|
+
type: date
|
|
42
|
+
dissolutionDate:
|
|
43
|
+
label: Dissolution date
|
|
44
|
+
type: date
|
|
45
|
+
subnationalArea:
|
|
46
|
+
label: Subnational jurisdiction name or code
|
|
47
|
+
type: string
|
|
48
|
+
numberOfSeats:
|
|
49
|
+
label: Total number of seats
|
|
50
|
+
type: number
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
Post:
|
|
2
|
+
label: "Post"
|
|
3
|
+
plural: "Posts"
|
|
4
|
+
extends:
|
|
5
|
+
- Interest
|
|
6
|
+
matchable: false
|
|
7
|
+
deprecated: true
|
|
8
|
+
# cf. https://www.popoloproject.com/specs/post.html
|
|
9
|
+
# But they're using it to define the post as an abstract thing, this
|
|
10
|
+
# describes the interval in which it is held by an individual.
|
|
11
|
+
description: >
|
|
12
|
+
A post, role or position held by an individual within an organization
|
|
13
|
+
or body. This describes the period for which the position is held,
|
|
14
|
+
not the abstract concept of the post.
|
|
15
|
+
featured:
|
|
16
|
+
- holder
|
|
17
|
+
- organization
|
|
18
|
+
- role
|
|
19
|
+
- startDate
|
|
20
|
+
- endDate
|
|
21
|
+
required:
|
|
22
|
+
- holder
|
|
23
|
+
caption:
|
|
24
|
+
- summary
|
|
25
|
+
- organization
|
|
26
|
+
- role
|
|
27
|
+
properties:
|
|
28
|
+
holder:
|
|
29
|
+
label: "Holder"
|
|
30
|
+
reverse:
|
|
31
|
+
name: posts
|
|
32
|
+
label: "Posts held"
|
|
33
|
+
type: entity
|
|
34
|
+
range: Person
|
|
35
|
+
organization:
|
|
36
|
+
# This is a stub text version of the org, describing it by name.
|
|
37
|
+
label: "Organization"
|
|
38
|
+
type: string
|
|
39
|
+
wikidataId:
|
|
40
|
+
label: "Wikidata ID"
|
|
41
|
+
hidden: true
|
|
42
|
+
type: identifier
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
Project:
|
|
2
|
+
label: Project
|
|
3
|
+
plural: Projects
|
|
4
|
+
extends:
|
|
5
|
+
- Interval
|
|
6
|
+
- Thing
|
|
7
|
+
- Value
|
|
8
|
+
description: >
|
|
9
|
+
An activity carried out by a group of participants.
|
|
10
|
+
matchable: false
|
|
11
|
+
featured:
|
|
12
|
+
- name
|
|
13
|
+
- projectId
|
|
14
|
+
- startDate
|
|
15
|
+
caption:
|
|
16
|
+
- name
|
|
17
|
+
- projectId
|
|
18
|
+
properties:
|
|
19
|
+
projectId:
|
|
20
|
+
label: "Project ID"
|
|
21
|
+
type: identifier
|
|
22
|
+
status:
|
|
23
|
+
label: "Status"
|
|
24
|
+
phase:
|
|
25
|
+
label: "Phase"
|
|
26
|
+
goal:
|
|
27
|
+
label: "Project goal"
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
ProjectParticipant:
|
|
2
|
+
label: Project participant
|
|
3
|
+
plural: Project participants
|
|
4
|
+
extends:
|
|
5
|
+
- Interest
|
|
6
|
+
description: >
|
|
7
|
+
An activity carried out by a group of participants.
|
|
8
|
+
matchable: false
|
|
9
|
+
featured:
|
|
10
|
+
- project
|
|
11
|
+
- participant
|
|
12
|
+
- role
|
|
13
|
+
caption:
|
|
14
|
+
- role
|
|
15
|
+
edge:
|
|
16
|
+
source: participant
|
|
17
|
+
label: "participates in"
|
|
18
|
+
target: project
|
|
19
|
+
directed: true
|
|
20
|
+
caption:
|
|
21
|
+
- role
|
|
22
|
+
properties:
|
|
23
|
+
project:
|
|
24
|
+
label: "Project"
|
|
25
|
+
type: entity
|
|
26
|
+
range: Project
|
|
27
|
+
reverse:
|
|
28
|
+
name: participants
|
|
29
|
+
label: "Participants"
|
|
30
|
+
participant:
|
|
31
|
+
label: "Participant"
|
|
32
|
+
type: entity
|
|
33
|
+
range: LegalEntity
|
|
34
|
+
reverse:
|
|
35
|
+
name: projectParticipation
|
|
36
|
+
label: "Projects"
|
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
PublicBody:
|
|
2
2
|
label: Public body
|
|
3
3
|
plural: Public bodies
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
description: >
|
|
5
|
+
A public body, such as a ministry, department or state company.
|
|
6
|
+
extends:
|
|
7
|
+
- Organization
|
|
8
|
+
matchable: true
|
|
9
|
+
featured:
|
|
10
|
+
- name
|
|
11
|
+
- country
|
|
12
|
+
- legalForm
|
|
13
|
+
- status
|
|
14
|
+
caption:
|
|
15
|
+
- name
|
|
16
|
+
required:
|
|
17
|
+
- name
|
|
@@ -1,18 +1,25 @@
|
|
|
1
1
|
RealEstate:
|
|
2
|
+
extends:
|
|
3
|
+
- Asset
|
|
2
4
|
label: Real estate
|
|
3
5
|
plural: Real estates
|
|
4
|
-
|
|
5
|
-
icon: fa-map
|
|
6
|
+
description: "A piece of land or property."
|
|
6
7
|
matchable: false
|
|
7
8
|
featured:
|
|
8
9
|
- registrationNumber
|
|
9
10
|
- address
|
|
10
11
|
- country
|
|
12
|
+
caption:
|
|
13
|
+
- name
|
|
14
|
+
- address
|
|
15
|
+
- registrationNumber
|
|
11
16
|
properties:
|
|
12
17
|
latitude:
|
|
13
18
|
label: Latitude
|
|
19
|
+
type: number
|
|
14
20
|
longitude:
|
|
15
21
|
label: Longitude
|
|
22
|
+
type: number
|
|
16
23
|
censusBlock:
|
|
17
24
|
label: Census block
|
|
18
25
|
cadastralCode:
|
|
@@ -20,6 +27,7 @@ RealEstate:
|
|
|
20
27
|
type: identifier
|
|
21
28
|
area:
|
|
22
29
|
label: Area
|
|
30
|
+
type: number
|
|
23
31
|
registrationNumber:
|
|
24
32
|
label: Registration number
|
|
25
33
|
type: identifier
|
|
@@ -40,4 +48,12 @@ RealEstate:
|
|
|
40
48
|
label: Land type
|
|
41
49
|
createDate:
|
|
42
50
|
label: Record date
|
|
43
|
-
type: date
|
|
51
|
+
type: date
|
|
52
|
+
parent:
|
|
53
|
+
label: "Parent unit"
|
|
54
|
+
description: "If this entity is a subunit, another entity (real estate) is its parent"
|
|
55
|
+
reverse:
|
|
56
|
+
label: "Subunits"
|
|
57
|
+
name: subunits
|
|
58
|
+
type: entity
|
|
59
|
+
range: RealEstate
|
|
@@ -1,25 +1,36 @@
|
|
|
1
1
|
Representation:
|
|
2
2
|
label: "Representation"
|
|
3
|
+
plural: "Representations"
|
|
3
4
|
description: "A mediatory, intermediary, middleman, or broker acting on behalf of a legal entity."
|
|
4
|
-
extends:
|
|
5
|
-
|
|
5
|
+
extends:
|
|
6
|
+
- Interest
|
|
6
7
|
matchable: false
|
|
7
8
|
featured:
|
|
8
9
|
- agent
|
|
9
10
|
- client
|
|
10
11
|
- role
|
|
12
|
+
required:
|
|
13
|
+
- agent
|
|
14
|
+
- client
|
|
15
|
+
edge: # AGENT represents CLIENT
|
|
16
|
+
source: agent
|
|
17
|
+
label: "represents"
|
|
18
|
+
target: client
|
|
19
|
+
directed: true
|
|
20
|
+
caption:
|
|
21
|
+
- role
|
|
11
22
|
properties:
|
|
12
23
|
agent: # aka representative / incorporation agent
|
|
13
24
|
label: "Agent"
|
|
14
25
|
type: entity
|
|
15
|
-
|
|
26
|
+
range: LegalEntity
|
|
16
27
|
reverse:
|
|
17
28
|
name: agencyClient
|
|
18
|
-
label: "
|
|
29
|
+
label: "Clients"
|
|
19
30
|
client:
|
|
20
31
|
label: "Client"
|
|
21
32
|
type: entity
|
|
22
|
-
|
|
33
|
+
range: LegalEntity
|
|
23
34
|
reverse:
|
|
24
35
|
name: agentRepresentation
|
|
25
|
-
label: "Agents"
|
|
36
|
+
label: "Agents"
|
|
@@ -1,36 +1,60 @@
|
|
|
1
1
|
Sanction:
|
|
2
2
|
label: Sanction
|
|
3
3
|
plural: Sanctions
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
description: "A sanction designation"
|
|
5
|
+
extends:
|
|
6
|
+
- Interval
|
|
6
7
|
matchable: false
|
|
7
8
|
featured:
|
|
8
9
|
- entity
|
|
9
10
|
- authority
|
|
11
|
+
- program
|
|
10
12
|
- startDate
|
|
11
13
|
- endDate
|
|
14
|
+
required:
|
|
15
|
+
- entity
|
|
16
|
+
caption:
|
|
17
|
+
- program
|
|
12
18
|
properties:
|
|
13
19
|
entity:
|
|
14
|
-
label: "
|
|
20
|
+
label: "Entity"
|
|
15
21
|
reverse:
|
|
16
|
-
name:
|
|
22
|
+
name: sanctions
|
|
17
23
|
label: "Sanctions"
|
|
18
24
|
type: entity
|
|
19
|
-
|
|
25
|
+
range: Thing
|
|
20
26
|
authority:
|
|
21
|
-
label: "
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
+
label: "Authority"
|
|
28
|
+
authorityId:
|
|
29
|
+
label: "Authority-issued identifier"
|
|
30
|
+
type: identifier
|
|
31
|
+
unscId:
|
|
32
|
+
label: "UN SC identifier"
|
|
33
|
+
type: identifier
|
|
34
|
+
maxLength: 16
|
|
27
35
|
program:
|
|
28
|
-
label: "
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
label: "
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
label: "
|
|
36
|
+
label: "Program"
|
|
37
|
+
programId:
|
|
38
|
+
# This is a unique identifier for the program issued by OpenSanctions, but
|
|
39
|
+
# could also be used for authority-issued IDs in other usage scenarios.
|
|
40
|
+
label: "Program ID"
|
|
41
|
+
type: identifier
|
|
42
|
+
maxLength: 64
|
|
43
|
+
programUrl:
|
|
44
|
+
label: "Program URL"
|
|
45
|
+
type: url
|
|
46
|
+
provisions:
|
|
47
|
+
label: "Scope of sanctions"
|
|
48
|
+
status:
|
|
49
|
+
label: "Status"
|
|
50
|
+
duration:
|
|
51
|
+
label: "Duration"
|
|
52
|
+
reason:
|
|
53
|
+
label: "Reason"
|
|
54
|
+
type: text
|
|
55
|
+
country:
|
|
56
|
+
label: "Country"
|
|
57
|
+
type: country
|
|
58
|
+
listingDate:
|
|
59
|
+
label: "Listing date"
|
|
60
|
+
type: date
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
Security:
|
|
2
|
+
extends:
|
|
3
|
+
- Asset
|
|
4
|
+
label: Security
|
|
5
|
+
plural: Securities
|
|
6
|
+
description: "A tradeable financial asset."
|
|
7
|
+
matchable: true
|
|
8
|
+
featured:
|
|
9
|
+
- isin
|
|
10
|
+
- name
|
|
11
|
+
- issuer
|
|
12
|
+
- country
|
|
13
|
+
caption:
|
|
14
|
+
- name
|
|
15
|
+
- isin
|
|
16
|
+
- registrationNumber
|
|
17
|
+
temporalExtent:
|
|
18
|
+
start:
|
|
19
|
+
- issueDate
|
|
20
|
+
end:
|
|
21
|
+
- maturityDate
|
|
22
|
+
properties:
|
|
23
|
+
isin:
|
|
24
|
+
label: ISIN
|
|
25
|
+
description: International Securities Identification Number
|
|
26
|
+
type: identifier
|
|
27
|
+
format: isin
|
|
28
|
+
maxLength: 16
|
|
29
|
+
registrationNumber:
|
|
30
|
+
label: Registration number
|
|
31
|
+
type: identifier
|
|
32
|
+
ticker:
|
|
33
|
+
label: Stock ticker symbol
|
|
34
|
+
type: identifier
|
|
35
|
+
figiCode:
|
|
36
|
+
label: Financial Instrument Global Identifier
|
|
37
|
+
type: identifier
|
|
38
|
+
format: figi
|
|
39
|
+
maxLength: 16
|
|
40
|
+
issuer:
|
|
41
|
+
label: "Issuer"
|
|
42
|
+
type: entity
|
|
43
|
+
range: LegalEntity
|
|
44
|
+
# FIXME: Should this be `Organization`?
|
|
45
|
+
reverse:
|
|
46
|
+
label: "Issued securities"
|
|
47
|
+
name: securities
|
|
48
|
+
issueDate:
|
|
49
|
+
label: Date issued
|
|
50
|
+
type: date
|
|
51
|
+
maturityDate:
|
|
52
|
+
label: Maturity date
|
|
53
|
+
type: date
|
|
54
|
+
type:
|
|
55
|
+
label: Type
|
|
56
|
+
classification:
|
|
57
|
+
label: Classification
|
|
58
|
+
collateral:
|
|
59
|
+
label: Collateral
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
Similar:
|
|
2
|
+
label: Similar
|
|
3
|
+
plural: Similar entities
|
|
4
|
+
description: >
|
|
5
|
+
A link between two entities that are presumed to be the same, e.g. as the
|
|
6
|
+
outcome of a probabilistic record linkage process.
|
|
7
|
+
matchable: false
|
|
8
|
+
generated: true
|
|
9
|
+
featured:
|
|
10
|
+
- candidate
|
|
11
|
+
- match
|
|
12
|
+
- confidenceScore
|
|
13
|
+
caption:
|
|
14
|
+
- confidenceScore
|
|
15
|
+
- criteria
|
|
16
|
+
properties:
|
|
17
|
+
candidate:
|
|
18
|
+
label: "Candidate"
|
|
19
|
+
type: entity
|
|
20
|
+
range: Thing
|
|
21
|
+
reverse:
|
|
22
|
+
name: candidateSimilars
|
|
23
|
+
label: "Similar to this"
|
|
24
|
+
match:
|
|
25
|
+
label: "Match"
|
|
26
|
+
type: entity
|
|
27
|
+
range: Thing
|
|
28
|
+
reverse:
|
|
29
|
+
name: matchSimilars
|
|
30
|
+
label: "Similar as this"
|
|
31
|
+
confidenceScore:
|
|
32
|
+
label: Confidence score
|
|
33
|
+
type: number
|
|
34
|
+
criteria:
|
|
35
|
+
label: Matching criteria
|
|
36
|
+
matcher:
|
|
37
|
+
label: Matcher
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
Succession:
|
|
2
|
+
label: "Succession"
|
|
3
|
+
plural: "Successions"
|
|
4
|
+
description: "Two entities that legally succeed each other."
|
|
5
|
+
extends:
|
|
6
|
+
- Interest
|
|
7
|
+
matchable: false
|
|
8
|
+
featured:
|
|
9
|
+
- predecessor
|
|
10
|
+
- successor
|
|
11
|
+
- date
|
|
12
|
+
required:
|
|
13
|
+
- predecessor
|
|
14
|
+
- successor
|
|
15
|
+
edge: # PREDECESSOR preceeds SUCCESSOR
|
|
16
|
+
source: predecessor
|
|
17
|
+
label: "preceeds"
|
|
18
|
+
target: successor
|
|
19
|
+
directed: true
|
|
20
|
+
caption:
|
|
21
|
+
- date
|
|
22
|
+
properties:
|
|
23
|
+
predecessor:
|
|
24
|
+
label: "Predecessor"
|
|
25
|
+
type: entity
|
|
26
|
+
range: LegalEntity
|
|
27
|
+
reverse:
|
|
28
|
+
name: successors
|
|
29
|
+
label: "Successors"
|
|
30
|
+
successor:
|
|
31
|
+
label: "Successor"
|
|
32
|
+
type: entity
|
|
33
|
+
range: LegalEntity
|
|
34
|
+
reverse:
|
|
35
|
+
name: predecessors
|
|
36
|
+
label: "Predecessors"
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
Table:
|
|
2
|
+
extends:
|
|
3
|
+
- Document
|
|
4
|
+
label: Table
|
|
5
|
+
plural: Tables
|
|
6
|
+
description: >
|
|
7
|
+
A document structured into rows and cells. This includes simple CSV files, spreadsheet
|
|
8
|
+
sheets or database relations.
|
|
9
|
+
matchable: false
|
|
10
|
+
generated: true
|
|
11
|
+
featured:
|
|
12
|
+
- title
|
|
13
|
+
- fileName
|
|
14
|
+
- mimeType
|
|
15
|
+
- parent
|
|
16
|
+
caption:
|
|
17
|
+
- title
|
|
18
|
+
- name
|
|
19
|
+
- fileName
|
|
20
|
+
properties:
|
|
21
|
+
columns:
|
|
22
|
+
label: "Column headings"
|
|
23
|
+
hidden: true
|
|
24
|
+
type: json
|
|
25
|
+
rowCount:
|
|
26
|
+
label: "Number of rows"
|
|
27
|
+
type: number
|
|
28
|
+
csvHash:
|
|
29
|
+
label: "CSV alternative version checksum"
|
|
30
|
+
hidden: true
|
|
31
|
+
type: checksum
|
|
32
|
+
matchable: false
|
|
@@ -1,22 +1,40 @@
|
|
|
1
1
|
TaxRoll:
|
|
2
|
-
label: Tax
|
|
3
|
-
plural: Tax
|
|
4
|
-
|
|
2
|
+
label: "Tax roll"
|
|
3
|
+
plural: "Tax rolls"
|
|
4
|
+
description: "A tax declaration of an individual"
|
|
5
|
+
extends:
|
|
6
|
+
- Interval
|
|
5
7
|
icon: fa-bank
|
|
6
8
|
matchable: false
|
|
7
9
|
featured:
|
|
10
|
+
- taxee
|
|
8
11
|
- date
|
|
9
12
|
- income
|
|
10
13
|
- wealth
|
|
11
14
|
- taxPaid
|
|
15
|
+
required:
|
|
16
|
+
- taxee
|
|
12
17
|
properties:
|
|
13
|
-
|
|
14
|
-
label:
|
|
18
|
+
taxee:
|
|
19
|
+
label: "Taxee"
|
|
15
20
|
type: entity
|
|
16
|
-
|
|
21
|
+
range: LegalEntity
|
|
22
|
+
reverse:
|
|
23
|
+
name: taxRolls
|
|
24
|
+
label: "Tax rolls"
|
|
25
|
+
country:
|
|
26
|
+
label: "Country"
|
|
27
|
+
type: country
|
|
28
|
+
surname:
|
|
29
|
+
label: "Surname"
|
|
30
|
+
givenName:
|
|
31
|
+
label: "Given name"
|
|
32
|
+
birthDate:
|
|
33
|
+
label: "Birth date"
|
|
34
|
+
type: date
|
|
17
35
|
income:
|
|
18
|
-
label: Registered income
|
|
36
|
+
label: "Registered income"
|
|
19
37
|
taxPaid:
|
|
20
|
-
label: Amount of tax paid
|
|
38
|
+
label: "Amount of tax paid"
|
|
21
39
|
wealth:
|
|
22
|
-
label: Registered wealth
|
|
40
|
+
label: "Registered wealth"
|
followthemoney/schema/Thing.yaml
CHANGED
|
@@ -1,28 +1,26 @@
|
|
|
1
1
|
Thing:
|
|
2
|
+
# Kein Ding, digga, das Ding hat swing.
|
|
3
|
+
# Root type of all entities that should be rendered in Aleph.
|
|
2
4
|
abstract: true
|
|
3
|
-
icon: fa-circle
|
|
4
5
|
matchable: false
|
|
5
6
|
featured:
|
|
6
7
|
- name
|
|
7
8
|
- country
|
|
9
|
+
required:
|
|
10
|
+
- name
|
|
11
|
+
caption:
|
|
12
|
+
- name
|
|
8
13
|
properties:
|
|
9
14
|
name:
|
|
10
15
|
label: Name
|
|
11
16
|
type: name
|
|
12
|
-
caption: true
|
|
13
|
-
required: true
|
|
14
17
|
rdf: http://www.w3.org/2004/02/skos/core#prefLabel
|
|
15
|
-
sameAs:
|
|
16
|
-
label: "Same as"
|
|
17
|
-
type: entity
|
|
18
|
-
range: Thing
|
|
19
|
-
rdf: http://www.w3.org/2002/07/owl#sameAs
|
|
20
|
-
reverse:
|
|
21
|
-
name: sameAs
|
|
22
18
|
summary: # a short one-liner kind of description
|
|
23
19
|
label: Summary
|
|
20
|
+
type: text
|
|
24
21
|
description: # a longer description
|
|
25
22
|
label: Description
|
|
23
|
+
type: text
|
|
26
24
|
country:
|
|
27
25
|
label: Country
|
|
28
26
|
type: country
|
|
@@ -34,19 +32,77 @@ Thing:
|
|
|
34
32
|
label: Previous name
|
|
35
33
|
type: name
|
|
36
34
|
weakAlias:
|
|
37
|
-
label: Weak
|
|
35
|
+
label: Weak alias
|
|
36
|
+
type: name
|
|
37
|
+
matchable: false
|
|
38
38
|
sourceUrl:
|
|
39
39
|
label: Source link
|
|
40
40
|
type: url
|
|
41
|
+
matchable: false
|
|
42
|
+
publisher:
|
|
43
|
+
label: "Publishing source"
|
|
44
|
+
matchable: false
|
|
45
|
+
publisherUrl:
|
|
46
|
+
label: "Publishing source URL"
|
|
47
|
+
type: url
|
|
48
|
+
matchable: false
|
|
41
49
|
alephUrl:
|
|
42
|
-
label:
|
|
50
|
+
label: Aleph URL
|
|
43
51
|
type: url
|
|
52
|
+
hidden: true
|
|
53
|
+
matchable: false
|
|
54
|
+
wikipediaUrl:
|
|
55
|
+
label: Wikipedia Article
|
|
56
|
+
type: url
|
|
57
|
+
wikidataId:
|
|
58
|
+
label: Wikidata ID
|
|
59
|
+
type: identifier
|
|
60
|
+
format: qid
|
|
61
|
+
maxLength: 32
|
|
44
62
|
keywords:
|
|
45
63
|
label: Keywords
|
|
64
|
+
topics:
|
|
65
|
+
label: Topics
|
|
66
|
+
type: topic
|
|
46
67
|
address:
|
|
47
68
|
label: Address
|
|
48
69
|
type: address
|
|
70
|
+
addressEntity:
|
|
71
|
+
label: Address
|
|
72
|
+
reverse:
|
|
73
|
+
name: things
|
|
74
|
+
label: "Located there"
|
|
75
|
+
type: entity
|
|
76
|
+
range: Address
|
|
49
77
|
program: # Used by sanctions
|
|
50
78
|
label: Program
|
|
51
79
|
notes:
|
|
52
|
-
label: Notes
|
|
80
|
+
label: Notes
|
|
81
|
+
type: text
|
|
82
|
+
proof:
|
|
83
|
+
label: Source document
|
|
84
|
+
reverse:
|
|
85
|
+
name: proven
|
|
86
|
+
label: "Derived entities"
|
|
87
|
+
type: entity
|
|
88
|
+
range: Document
|
|
89
|
+
indexText:
|
|
90
|
+
# This is a leaked abstraction from aleph. The idea is to have some
|
|
91
|
+
# additional text field that can be used to associate searchable text
|
|
92
|
+
# with an entity. This will be removed as a property upon indexing so
|
|
93
|
+
# that it can never be retrieved.
|
|
94
|
+
label: Index text
|
|
95
|
+
hidden: true
|
|
96
|
+
type: text
|
|
97
|
+
createdAt:
|
|
98
|
+
label: "Created at"
|
|
99
|
+
type: date
|
|
100
|
+
matchable: false
|
|
101
|
+
modifiedAt:
|
|
102
|
+
label: "Modified on"
|
|
103
|
+
type: date
|
|
104
|
+
matchable: false
|
|
105
|
+
retrievedAt:
|
|
106
|
+
label: "Retrieved on"
|
|
107
|
+
type: date
|
|
108
|
+
matchable: false
|