openLCA で ecoinvent を背景にして自分のプロセス(前景)を組んでいます。新しい版の ecoinvent データベースに、自分のプロセスを書き出して取り込み直しました。
取り込んだ自作プロセスでは、入出力に設定していたプロバイダが外れていて、新しい版のプロバイダにつながりません。書き出し時の default provider の有無や、取り込み時の選択肢を変えても同じです。ecoinvent 側のプロセスの UUID も、3.9 以降は版ごとに違って見えます。データベースが壊れているのでしょうか。全部つなぎ直すしかないのでしょうか。
1 件の回答
ecoinvent のプロセスの UUID が版ごとに違う、という観察は正しいものです。 取り込んだあとは、自作プロセスの中で新しい版のプロバイダを一度選び直す必要があります。
移し方は、自作のプロセスだけを JSON で書き出し、新しい版の ecoinvent データベースに取り込む、というものです。データベースを丸ごと扱う zolca とは別で、プロセスやフロー・場所などの要素単位のやり取りは JSON を使います(古い openLCA では JSON-LD export、新しいものでは JSON package export という名前になっているかもしれません)。
- 取り込みでは「never update an existing dataset」を選びます。自作プロセスは新しい版に元々無いので、プロセスはどれを選んでも上書きされないはずです。この選択が効くのは、自作プロセスに含まれる古い版のフロー・場所・単位が、新しい版にある同じ要素を上書きしないようにする点です。新しい版に無い要素だけが足されます。
- 取り込んだら「Check linking properties」を実行します。default provider が欠けている自作の交換が一覧に出るので、クリックしてそのプロセスへ移り、プロバイダを設定します。
- 一度設定すれば、同じ版の別のデータベースや別のモデルに自作プロセスをコピーしても、プロバイダは保たれます。
交換が多いと手間はかかります。スクリプトで同じプロバイダを自動で設定し直す方法もある、と回答者は書いています。ただ回答者自身は、新しい版ごとに前景から背景へのつなぎを全部見直すほうを好むそうです。消えたプロバイダや、新しい版にもっと合うプロバイダがあるかを確かめる機会になるためです。
プロバイダを自動で付け直す仕組みは開発中で、将来はこの選び直しが自動になる予定だと書かれています。現時点では手で(またはスクリプトで)選び直します。EN15804 アドオンでの同じ症状は EN15804 アドオンを 3.8.1 から 3.10 に移したらプロバイダが全部消えました にあります。
