Dieses Repository enthält die Skripte und Daten, die zum Aufbau einer konsistenten Topologie der Welt (Provinzen, Länder und Staaten) erforderlich sind und für die Lebenszyklusinventardatenbank von ecoinvent benötigt werden. Es umfasst auch die Möglichkeit, Rezepte zu definieren, um benutzerdefinierte Standorte zu generieren.
Das Repository ist eine Mischung aus SQL, Bash-Skripten und Python. Anweisungen und ein Protokoll darüber, was getan wurde und warum, finden Sie in der Datei „topology-journal.rst“.
Dieses Repository ist nicht die Python-Bibliothek constructive_geometries
! Der hier wohnt.
Der Python-Code ist mit Python >= 3.4 kompatibel. Es erfordert die folgenden Bibliotheken:
Stellen Sie sicher, dass Sie eine aktuelle Version von Postgresql installiert haben und postgis
verfügbar ist (es wird automatisch aktiviert). Erstellen Sie den ecoinvent
Benutzer:
createuser --superuser ecoinvent -U postgres
Anschließend importieren Sie die Basisdaten:
./create_db.sh
Führen Sie das Skript ./build_recipes.sh
aus. Beachten Sie, dass dies automatisch aufgerufen wird, wenn create_db.sh
ausgeführt wird.
#. Sie benötigen den Kurz- und Langnamen. Erstellen, falls nicht angegeben. #. Erstellen Sie eine neue UUID: python python/new_uuid.py
#. Bearbeiten Sie die Datei data/config/uuid-mapping.json
und fügen Sie Ihren neuen Speicherort einem entsprechenden Abschnitt hinzu. Folgen Sie dem bestehenden Stil und geben Sie den Namen, den Kurznamen und die UUID an, die Sie gerade generiert haben. Stellen Sie sicher, dass Sie am Ende des neuen Abschnitts ein Komma eingefügt haben. #. Führen Sie das Skript python python/reindent_uuids.py
aus, um sicherzustellen, dass die Syntax korrekt ist. Beheben Sie alle Fehler. #. Bearbeiten Sie die Datei data/config/recipes.json
und fügen Sie Ihr neues Rezept unter Verwendung des name
(nicht des shortname
) und der Liste der enthaltenen Regionen hinzu. Achten Sie darauf, Staaten einzubeziehen, wenn nur ein Teil des Landes einbezogen werden soll (z. B. Russland, China, Brasilien, Indien). Bei Bedarf können Sie das gesamte Land einbeziehen. #. Führen Sie das Skript python python/reindent_recipes.py
aus, um sicherzustellen, dass die Syntax korrekt ist. Beheben Sie alle Fehler. #. Führen Sie das Skript build_recipes.sh
aus. #. Aktualisieren Sie die Dokumentation in docs/index.rst
entsprechend. Achten Sie darauf, Änderungen im Changelog zu vermerken. Erstellen Sie die Dokumentation ( make html
) und synchronisieren Sie sie mit dem Webserver ( sync.sh
). #. Ausgewählte Geometrien exportieren. Ändern Sie diesen Befehl, um die gewünschten Namen zu erhalten:
psql -U ecoinvent -d eigeo -c "COPY (SELECT uuid, name, shortname, ST_AsKML(geom) as geom, isotwolettercode, longitude, isothreelettercode, latitude FROM final WHERE name = 'Europe without Switzerland and Austria') TO STDOUT WITH CSV;" > output/all.csv
#. Export in XML konvertieren:
python python/write_xml.py
#. Senden Sie die Datei Geographies.xml
per E-Mail an den Datenbankmanager von ecoinvent.