openownership / bodsanalysis Goto Github PK
View Code? Open in Web Editor NEWNotebooks and code for analysing data published to the Beneficial Ownership Data Standard
License: MIT License
Notebooks and code for analysing data published to the Beneficial Ownership Data Standard
License: MIT License
Circular ownership structures involve two or more legal vehicles directly or indirectly owning each other. In the UK, this is banned due to the risks.
In 2019, Global Witness found that 0.01% of companies registered in UK in 2019 were involved in circular ownership schemes, thus violating UK law (see Getting the UK's house in order report).
How can we best identify circular ownership in BODS data and provide an up-to-date query showing the number of companies which might exhibit circular ownership? See https://github.com/Global-Witness/uk-beneficial-ownership-analysis-2019-public
I'd like us to add a new set of queries to https://github.com/openownership/bodsanalysis/blob/main/qbods.py which show trends in the data we have on companies which have reported both an incorporation date and a dissolution date.
This idea is prompted by recent stories in the UK. As highlighted by Graham Barrow on Twitter and during a parliamentary select committee hearing session on 8th November 2022 (see Guardian coverage), 'burner companies' are those created for a short period of time which can be linked to short-term fraudulent activity.
Proposed queries:
dissolutionDate
foundingDate
to dissolutionDate
These should be added alongside other queries aligned with the 'Up to date and auditable' principle.
The numbered query names in qbods.py
isn't suited to a generalised module, and we should come up with a better system for naming functions.
At present, the latvia_demo uses a dataset that is small enough to be downloaded onto a local machine or deepnote server, and for tables to be read into memory. However for very large BODS datasets we will start to encounter memory issues. We will need to consider options for how to best deal with this - most likely this will involve pointing the queries at a database.
Consider amendment to q224 inspired by Transcrime research to check for number of companies registered in any jurisdiction where at least one BO is under 20 or over 80:
Bosisio et al. (2021) found that 3% of companies registered in Lombardy (Italy) had at least one BO or director displaying this anomaly (being under 20 years old or over 80 years old).
https://www.transcrime.it/en/publications/datacros/
https://www.transcrime.it/en/publications/the-changes-in-ownership-of-italian-companies-during-the-covid-19-emergency/
The structure of qbods.py
is largely one query == one function. This results in a lot of redundant, inefficient and ugly code. We should reorganise the module and develop a set of generalised functions that are common to multiple queries.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.