]> pere.pagekite.me Git - homepage.git/blob - blog/data/2015-06-15-ownership-graphs-norway.txt
Generated.
[homepage.git] / blog / data / 2015-06-15-ownership-graphs-norway.txt
1 Title: Graphing the Norwegian company ownership structure
2 Tags: english, offentlig innsyn
3 Date: 2015-06-15 14:00
4
5 <p>It is a bit work to figure out the ownership structure of companies
6 in Norway. The information is publicly available, but one need to
7 recursively look up ownership for all owners to figure out the complete
8 ownership graph of a given set of companies. To save me the work in
9 the future, I wrote a script to do this automatically, outputting the
10 ownership structure using the Graphviz/dotty format. The data source
11 is web scraping from <a href="http://www.proff.no/">Proff</a>, because
12 I failed to find a useful source directly from the official keepers of
13 the ownership data, <a href="http://www.brreg.no/">Brønnøysundsregistrene</a>.</p>
14
15 <p>To get an ownership graph for a set of companies, fetch
16 <a href="https://github.com/petterreinholdtsen/brreg-norway-ownership-graph">the code from git</a> and run it using the organisation number. I'm
17 using the Norwegian newspaper Dagbladet as an example here, as its
18 ownership structure is very simple:</p>
19
20 <pre>
21 % time ./bin/eierskap-dotty 958033540 > dagbladet.dot
22
23 real 0m2.841s
24 user 0m0.184s
25 sys 0m0.036s
26 %
27 </pre>
28
29 <p>The script accept several organisation numbers on the command line,
30 allowing a cluster of companies to be graphed in the same image. The
31 resulting dot file for the example above look like this. The edges
32 are labeled with the ownership percentage, and the nodes uses the
33 organisation number as their name and the name as the label:</p>
34
35 <pre>
36 digraph ownership {
37 rankdir = LR;
38 "Aller Holding A/s" -> "910119877" [label="100%"]
39 "910119877" -> "998689015" [label="100%"]
40 "998689015" -> "958033540" [label="99%"]
41 "974530600" -> "958033540" [label="1%"]
42 "958033540" [label="AS DAGBLADET"]
43 "998689015" [label="Berner Media Holding AS"]
44 "974530600" [label="Dagbladets Stiftelse"]
45 "910119877" [label="Aller Media AS"]
46 }
47 </pre>
48
49 <p>To view the ownership graph, run "<tt>dotty dagbladet.dot</tt>" or
50 convert it to a PNG using "<tt>dot -T png dagbladet.dot >
51 dagbladet.png</tt>". The result can be seen below:</p>
52
53 <img src="http://people.skolelinux.org/pere/blog/images/2015-06-15-ownership-graphs-norway-dagbladet.png" width="80%">
54
55 <p>Note that I suspect the "Aller Holding A/S" entry to be incorrect
56 data in the official ownership register, as that name is not
57 registered in the official company register for Norway. The ownership
58 register is sensitive to typos and there seem to be no strict checking
59 of the ownership links.</p>
60
61 <p>Let me know if you improve the script or find better data sources.
62 The code is licensed according to GPL 2 or newer.</p>
63
64 <p>Update 2015-06-15: Since the initial post I've been told that
65 "<a href="http://www.proff.dk/firma/carl-allers-etablissement-aktieselskab/københavn-v/hovedkontorer/13624518-3/">Aller
66 Holding A/S</a>" is a Danish company, which explain why it did not
67 have a Norwegian organisation number. I've also been told that there
68 is a <a href="http://www.brreg.no/automatiske/webservices/">web
69 services API available</a> from Brønnøysundsregistrene, for those
70 willing to accept the terms or pay the price.</p>