(57)【要約】【課題】化学反応により生成される化学物質が含まれている場合においても、化学物質が適切に管理可能な、サプライチェーンモデルを適用した化学物質管理装置を提供すること。【解決手段】原材料から製品に至る製造過程で使用する化学物質を管理するための化学物質管理装置において、化学反応式で表された化学反応における少なくとも１つの原料物質と少なくとも１つの生成物質とをそれぞれノードで表し、前記原料物質から生成物質へ向かう有向エッジを設定する手段（１０）と、前記原料物質及び前記生成物質の少なくとも一方が複数の物質を含む場合には、前記原料物質同士及び前記生成物質同士をマージする手段（１０）と、を備えた。【選択図】    図１
2007226540.tif 000002
【特許請求の範囲】
【請求項１】
原材料から製品に至る製造過程で使用する化学物質を管理するための化学物質管理装置において、
化学反応式で表された化学反応における少なくとも１つの原料物質と少なくとも１つの生成物質とをそれぞれノードで表し、前記原料物質から生成物質へ向かう有向エッジを設定する手段と、
前記原料物質及び前記生成物質の少なくとも一方が複数の物質を含む場合には、前記原料物質同士及び前記生成物質同士をマージする手段と、を具備することを特徴とする化学物質管理装置。
【請求項２】
請求項１に記載の化学物質管理装置において、前記マージした原料物質と生成物質とを１つのノードで表現する手段を更に具備することを特徴とする化学物質管理装置。
【請求項３】
請求項１又は請求項２に記載の化学物質管理装置において、ノードで表現された前記原料物質と前記生成物質或いはマージ後の前記原料物質と前記生成物質のデータを所定の形式で記憶する記憶手段を更に具備することを特徴とする化学物質管理装置。
【請求項４】
請求項１から請求項３のいずれか１項に記載の化学物質管理装置において、前記記憶手段に記憶された前記ノードで表現されたデータは、該化学物質の原料物質及び該化学物質の生成物質の少なくとも一方のデータを含むことを特徴とする化学物質管理装置。
【請求項５】
請求項１から請求項４のいずれか１項に記載の化学物質管理装置において、前記記憶手段に記憶された前記ノードで表現されたデータは、該化学物質を取り扱いかつ管理する取扱者のデータを含むことを特徴とする化学物質管理装置。
【請求項６】
請求項１から請求項５のいずれか１項に記載の化学物質管理装置において、前記記憶手段は、法令で規制された化学物質の種類及び規制数量を含むデータを更に記憶することを特徴とする化学物質管理装置。
【請求項７】
請求項６に記載の化学物質管理装置において、前記記憶手段に記憶されたノードで表現されたデータは、該化学物質が法令で規制された化学物質であるとき、法令で定められた数量データを含むことを特徴とする化学物質管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、化学反応を介した原料物及び生成物である化学物質の管理技術に関係する。
【背景技術】
【０００２】
国内外の化学物質管理を行う場合において、各製造過程は、多数の部品を組合せてより高機能の製品を実現する物理的な製造方法、化学反応を利用して原料である化学物質から新たな化学物質を製造する化学的な製造方法、両者を組み合わせた物理化学的な製造方法の３つの製造方法により実現される。
【０００３】
物理的な製造方法のみを採用する場合には、製品を構成する構成要素となる部品は製造前と形状は同じである。従って、物理的な手段により部品を単独に取得することができる。例えば、製品を分解すれば、部品をもとの形状で再取得することができる。このため化学物質管理は構成要素である部品に含まれる化学物質を対象にすればよい
化学的な製造方法をともなう場合には、物理的な手段により化学反応前の原料を取得することができない。化学反応後には、原料の構成要素の一部の化学結合が変化しているからである。このため化学反応をともなう製造方法により作られた製品から原料を再生成することは化学反応を用いるかあるいは不可能な場合もある。化学反応を介する場合の原料物と生成物は物質の物性（状態、沸点、融点）、毒性等が異なる。このため化学物質管理は原料の化学物質だけではなく、新しく生成した化学物質も対象にしなければならない。
【０００４】
ここで、原料から製品への製造過程で使用する化学物質の登録申請、保管管理を行おうとした場合において、サプライチェーンモデルを適用した場合について考慮する。  
現状のサプライチェーンモデルでは、グラフを用いて製造工程において原料となる部品と生産品である製品を表現する場合が多い。すなわち、部品と製品をノード（節）で表現し、部品から製品が生成する関係が部品ノードから製品ノードに向かう有向エッジで表現される（例えば、有向グラフについては、非特許文献１参照）。
【０００５】
図２２に、その一例を示す。図２２は、物理的な製造方法におけるサプライチェーンの表現例である。図２２（ａ）は部品Ａと部品Ｂから製品Ｃが構成される場合のグラフによる表現である。この場合には、部品を表すノードＡとノードＢから製品を表すノードＣへ有向エッジが設定されている。すなわち、製品Ｃは部品Ａと部品Ｂにより構成されていることを示している。  
図２２（ｂ）は部品Ａと部品Ｂから製品Ｄが構成される場合のグラフによる表現である。この場合には、部品を表すノードＡとノードＢから製品を表すノードＤへ有向エッジが設定されている。  
図２２（ｃ）は部品Ａと部品Ｂから製品Ｃと製品Ｄの両者が構成される場合のグラフによる表現である。部品を表すノードＡとノードＢから製品を表すノードＣへの有向エッジが設定され、更に、部品を表すノードＡとノードＢから製品を表すノードＤへの有向エッジが設定されている。すなわち、製品Ｃは部品Ａと部品Ｂにより構成されており、製品Ｄは部品Ａと部品Ｂにより構成されていることを示している。
【０００６】
【非特許文献１】「演習グラフ理論−基礎と応用−」、頁１〜４、伊理正夫他著  コ口ナ社１９８３年
【発明の開示】
【発明が解決しようとする課題】
【０００７】
例えば、図２２（ｃ）のような場合でも、部品Ａの構成要素と、部品Ｂの構成要素を適宜組み合わせて製品Ｃと製品Ｄとを製造しているので、物理化学的性質が変わらない。このように、物理化学的性質が変わらないような場合には、上記のサプライチェーンを適用可能であるが、物理化学的性質が変わるような場合には、単なる構成要素の組み合わせではなくなるので、適用できない。  
すなわち、現状のサプライチェーンモデルでは化学反応による原料物と反応物の区別をつけることができないため、あるノード（例えば、企業、工場、営業所）で化学物質規制法律の対象となる化学物質を見つけた場合には、当該ノードに接続される下流（例えば、製品側）の全てのサプライチェーンノードで規制対象物質が含まれる場合には自動的に認識する必要がある。すなわち、化学反応により生成される化学物質が含まれている場合には、欧州で実施予定の化学物質規制法律に対応するためにも、化学物質管理の責任の所在を明確にする技術が要求されている。
【０００８】
本発明は、化学反応により生成される化学物質が含まれている場合においても、化学物質が適切に管理可能な、サプライチェーンモデルを適用した化学物質管理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明では、原料から製品に至る製造過程で使用する化学物質を管理可能な新たなサプライチェーンモデル、すなわち、化学反応における原料物質および生成物質を表す全てのノードを、マージした表現で表すことによって、化学反応の有無を表現し、当該ノードに係る化学物質が化学物質規制法令の対象となる化学物質かどうかを判定している。
【００１０】
本発明の局面に係る発明は、原材料から製品に至る製造過程で使用する化学物質を管理するための化学物質管理装置において、化学反応式で表された化学反応における少なくとも１つの原料物質と少なくとも１つの生成物質とをそれぞれノードで表し、前記原料物質から生成物質へ向かう有向エッジを設定する手段と、前記原料物質及び前記生成物質の少なくとも一方が複数の物質を含む場合には、前記原料物質同士及び前記生成物質同士をマージする手段と、を具備することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、既存のサプライチェーンモデルにおいて物理的製造手段に採用されているモデルを変えることなく、化学反応をともなう原料物質と生成物質の構成関係を表現することができる。
【発明を実施するための最良の形態】
【００１２】
図面を参照して本発明の実施の形態を説明する。図１は、本発明の一実施形態に係る化学物質管理装置の概略構成を示すブロック図である。なお、図１に示す化学物質管理装置は、汎用コンピュータ（例えば、パーソナルコンピュータなど）でよい。  
図１において、化学物質管理装置は、ＣＰＵ１０と、出力部２０と、入力部３０と、表示部４０と、記憶部５０とを備えている。これらは、データバス６０により接続されている。
【００１３】
ＣＰＵ１０は、データ処理用のプロセッサであり、各部の制御や各種の演算（論理演算を含む。具体的には、後述するフローチャートに示す処理など）を実行する。なお、このＣＰＵ１０にメモリなどを内蔵していてもよい。  
出力部２０は、各種のデータなどを印刷などで外部に出力するためのプリンタである。
入力部３０は、キーボードやマウスなどの入力装置である。  
表示部４０は、データなどを表示するための、例えば、ＬＣＤ（液晶表示装置）等である。  
記憶部５０は、各種データを記憶するためのものであって、化学物質管理装置に内蔵されたハードディスク装置や不揮発性メモリ等の記憶装置であってもよいし、外部接続されたハードディスク装置や光ディスク装置などの記憶装置であってもよい。なお、本実施形態において、記憶部５０に記憶されるデータは、原料物質、生成物質、会社名等のデータであって、具体的なデータ形式については、後述する。
【００１４】
上記のように構成された化学物質管理装置の動作について、具体的な動作を説明する前に、サプライチェーンを化学物質の管理へ適用する方法について説明する。まず、図２を参照して化学反応式に対応するサプライチェーンの例を説明する。図２は、図２２に示したサプライチェーンの表現方法を、化学反応を伴う原料物と生成物の関係に適用した例を示す図である。この流れは、  
（１）化学反応を化学反応式で表す。  
（２）原料物質、生成物質をそれぞれノードで表す。  
（３）原料物質から生成物質へ向かう有向エッジを設定する。  
のステップで表すことができる。
【００１５】
図２（ａ）は原料物質Ａと原料物質Ｂから生成物質Ｃが生成される場合を示す図である。この場合において、  
化学反応式：Ａ＋Ｂ→Ｃ  
に対して、原料物質がノードＡとノードＢで、生成物質がノードＣで表されている。そして、原料物質を表すノードＡとノードＢから生成物質を表すノードＣへ有向エッジが設定されている。このグラフは、物質Ｃが物質Ａと物質Ｂにより構成されていることを意味する。しかし、物理的な製造方法のみが採用されているのか、または化学的製造方法が採用されているのかは判別できない。しかし、現実の化学反応では、上記の化学反応式は、原料物質Ａと原料物質Ｂが化学反応を起こし、原料物質Ａの構成原子の一部と原料物質Ｂの構成原子の一部が化学結合を形成して生成物質Ｃを生成していることを示している。このため図２２に示したサプライチェーンの表現方法をそのまま、化学反応をともなう原料物と生成物の構成関係に適用することはできない。
【００１６】
図２（ｂ）は原料物質Ａと原料物質Ｂから生成物Ｄが生成される場合を示す図である。この場合において、  
化学反応式：Ａ＋Ｂ→Ｄ  
に関しても、図２（ａ）と同様に図２２に示したサプライチェーンの表現方法をそのまま、化学反応をともなう原料物と生成物の構成関係に適用することは不可能であることがわかる。
【００１７】
図２（ｃ）は原料物質Ａから生成物質Ｃと生成物質Ｄが生成される場合を示す図である。この場合において、  
化学反応式：Ａ→Ｃ＋Ｄ  
に対して、原料物質を表すノードＡから生成物質を表すノードＣとノードＤへ有向エッジが設定されている。このグラフは、生成物質Ｃと生成物質Ｄは原料物質Ａにより構成されていることを意味する。物理的な製造方法のみが採用されているか、化学的製造方法が採用されているかは判別できない。しかし、現実の化学反応では、上記の化学反応式は、原料物質Ａが化学反応（分解）して生成物質Ｃ、生成物Ｄ物質を生成していることを意味している。このため図２２に示したサプライチェーンの表現方法をそのまま、化学反応をともなう原料物と生成物の構成関係に適用することは不可能であることがわかる。
【００１８】
図２（ｄ）は、原料物質Ｂから生成物質Ｃと生成物質Ｄが生成される場合を示す図である。この場合において、  
化学反応式：Ｂ→Ｃ＋Ｄ  
に関しても図２（ｃ）と同様に図２２に示したサプライチェーンの表現方法をそのまま、化学反応をともなう原料物と生成物の構成関係に適用することは不可能であることがわかる。
【００１９】
図２（ｅ）は原料物質Ａと原料物質Ｂから、生成物質Ｃと生成物質Ｄが生成される場合を示す図である。この場合において、  
化学反応式：Ａ＋Ｂ→Ｃ＋Ｄ  
に対して、原料物質を表すノードＡとノードＢから生成物質を表すノードＣとノードＤへ有向エッジが設定されている。このグラフは、生成物質Ｃは原料物質Ａと物質Ｂにより構成され、生成物質Ｄは原料物質Ａと物質Ｂにより構成されていることを意味する。従って、物理的な製造方法のみが採用されているか、化学的製造方法が採用されているかは判別できない。しかし、現実の化学反応では、上記の化学反応式は、原料物質Ａと原料物質Ｂが化学反応を起こし、原料物質Ａ構成原子の一部と原料物質Ｂの構成原子の一部が化学結合を形成して生成物質Ｃを生成し、原料物質Ａ構成原子の一部と原料物質Ｂの構成原子の一部が化学結合を形成して生成物質Ｄを生成することを意味している。このため図２２に示したサプライチェーンの表現方法をそのまま、化学反応をともなう原料物と生成物の構成関係に適用することはできない。なお、図２（ｅ）に示す化学反応は、図２（ａ）〜図２（ｄ）の化学反応の単なる組合せではない。
【００２０】
上記のように、サプライチェーンの表現方法を、何の改良もくわえぬまま、化学反応を伴う原料物と生成物の関係に適用することはできない。そこで、本発明の実施形態では、このような化学反応を有するものについて、原料物質同士をマージし、生成物質同士をマージして、新たな化学物質が規制対象となるかどうかを判定するようにしている。
【００２１】
なお、化学物質を規制する法律は製品中に含有される化学物質のみならず、製造過程で使用されたすべての化学物質を対象とするものもある。例えば、欧州で実施される予定のＲＥＡＣＨ（Registration、Evaluation、Authorization、Chemical）は製品製造過程で使用されるすべての化学物質を対象とする。一方で、製品中に含有される化学物質のみを対象とし、製造過程で使用された化学物質は製品中に含有されていなければ、対象としない化学物質規制法律も存在する。欧州で実施予定のＲｏＨＳ（Restriction of Hazardous Substances）が一例である。化学物質規制法律により、サプライチェーンにおける化学反応の存在の有無、化学反応による原料物、反応物の区別をつけることは必要条件となっている。
【００２２】
図２においても、図２２で説明したように、化学反応を伴わない場合には、あるノードに含まれる物質はそれよりも下流（製品側）のノードには必ず単体または構成物として含まれる。しかし、化学反応を伴うサプライチェーンモデルの場合にはこれは不適当である。化学反応により物理的特性が変化するからである。図３を参照して、本発明の実施形態におけるサプライチェーンの作成方法について説明する。なお、図２の説明と一部重複するが、その手順を具体的に説明する。
【００２３】
まず、化学反応を化学反応式で表す。この場合において、原料物質を生成物質Ａと生成物質Ｂとし、生成物質を生成物質Ｃと生成物質Ｄとする。この場合に、化学反応式は、  
化学反応式Ａ＋Ｂ→Ｃ＋Ｄ  
となり、原料物質Ａと原料物質Ｂ及び生成物質Ｃと生成物質Ｄをそれぞれノードで表し、原料物質から精製物質へ向かう有向エッジを設定する。これにより、図２（ｅ）に示すようなサプライチェーンが作成される。
【００２４】
次に、反応系の原料物質同士をマージし、生成系の生成物質同士をマージする。ここで、ノードのマージ（以下、単に「マージ」と称する）とは、複数のノードを１つのノードにまとめることと定義する。複数のノードをマージするにより、マージ前のノードから出発するエッジは、マージ後のノードから出発するエッジとなる。マージ前のノードへ到着するエッジは、マージ後のノードへ到着するエッジとなる。  
具体的には、図３（ａ）に示すようなサプライチェーンにおいて、原料物質Ａと原料物質Ｂとが１つのノードにマージされ、生成物質Ｃと生成物質Ｄとが１つのノードにされる（図３（ｂ）参照）。
【００２５】
既存のサプライチェーンモデルに採用されているグラフ作成方法と異なっているのは、複数のノードをマージすることだけである。その他のステップは既存のサプライチェーンモデルに採用されているグラフ作成方法と同一である。このため、既存のデータ構造を変えることなく、本実施形態を実現することができる。本実施形態で必要なデータは、原料物質、生成物質のマージデータだけなので、これらを追加すればよい。
【００２６】
生成物質Ｃは原料物質Ａと原料物質Ｂの単体により構成されるのではなく、生成物質Ａと生成物質Ｂがマージされて１つのノードとして表現されているため、原料物質Ａと原料物質Ｂの化学反応による生成物質であることが表現される。同様に、生成物質Ｄは原料物質Ａと原料物質Ｂの単体により構成されるのではなく、原料物質Ａと原料物質Ｂの化学反応による生成物質であることが表現される。また、生成物質Ｃと生成物質Ｄがマージされて１つのノードとして表現されているため、生成物質Ｃと生成物質Ｄは、化学反応後の生成物質であることが表現される。上記のように、図３（ｂ）の表現が、化学反応Ａ＋Ｂ→Ｃ＋Ｄを表現していることを導出できる。
【００２７】
既存のサプライチェーンモデルで採用されているような化学反応を伴わないようなものに対して、部品、製品をノードで表現し、部品から製品が生成する関係を部品ノードから製品ノードに向かう有向エッジで表現する方法では、上記のような化学反応を表現することはできない。
【００２８】
そして、最終的に、原料物質ノードから生成物質ノードへ向かう遡及探索、生成物質ノードから原料物質ノードへ向かう逆遡及探索、原料物質をマージしたノードから生成物質をマージしたノードへ向かう遡及探索、生成物質をマージしたノードから原料物質をマージしたノードへ向かう逆遡及探索を可能にするデータ構造を作成する。図４を参照して、サプライチェーンモデルにおける遡及探索の例を説明する。  
図４は、サプライチェーンモデルにおける遡及探索の例を示す図である。図４において、部品製造会社は材料会社から原料物質Ａ、Ｂ、Ｑ、Ｒを調達する。部品会社は原料物質Ａと原料物質Ｂから化学反応Ａ＋Ｂ→Ｃ＋Ｄを利用して、生成物質Ｃと生成物質Ｄを作成する。一方、部品会社は、原料物質Ｑ、Ｒから化学的な製造方法を伴わない物理的な製造方法で生成物質Ｓを製造する。そして、製品製造会社は部品製造会社からＣ、Ｓを調達し、化学的な製造方法をともなわない物理的な製造方法でＰを作成する。ここで、部品製造会社において、化学反応Ａ＋Ｂ→Ｃ＋Ｄを利用して、原料物質Ａと原料物質Ｂから生成物質Ｃと生成物質Ｄを生成しているので、原料物質Ａと原料物質Ｂをマージして、マージノードＭＮ１を作成し、生成物質Ｃと生成物質Ｂをマージして、マージノードＭＮ２を作成する。
【００２９】
上記のようなサプライチェーンモデルにおいて、材料会社から製品製造会社へ遡及探索をした場合を考慮する。原料物質Ａ、Ｂから出発して、各原料物質や生成物質の探索は、マージノードＭＮ１、マージノードＭＮ２、ノードＰの順に行われることになる。ここで、マージノードＭＮ１とマージノードＭＮ２は、それぞれ、化学反応による原料物質と生成物質であるので、原料物質と生成物質との物質が異なるものであり、物性、毒性が異なることがわかる。これにより、マージノードＭＮ１に含有されるノードＡとノードＢとマージノードＭＮ２に含有されるノードＣとノードＤで表される物質に関しては、規制法律が異なる場合があることが認識される。
【００３０】
一方、材料会社の原料物質Ｑ、Ｒのノードから出発した探索は、部品製造会社のノードＱ、Ｒに各々たどりつく。さらに探索することにより、ノードＳ、ノードＰに順次たどりつく。ノードＳ、ノードＰともにマージノードではないので化学的製造手段を含まない、物理的製造手段で製造される部品製品であると認識される。従って、ノードＣ→ノードＰ、ノードＱ→ノードＳ→ノードＰ、ノードＲ→ノードＳ→ノードＰに関しては化学的製造手段が含まれないので、規制法律は異ならないことが認識される。すなわち、ノードＰの規制法律は、ノードＣ、ノードＱ、ノードＲ、ノードＳに係わる規制法律となる。
【００３１】
原料物質Ａが化学物質規制の対象であったとした場合の化学物質管理の責任分担について言及する。原料物質Ａは化学反応Ａ＋Ｂ→Ｃ＋Ｄに伴う反応物である。よって材料会社内で出現する物質であることがわかる。原料物質Ａは化学反応によりその物理化学的な特性が変わってしまうので、マージノードＭＮ１よりも製品側（下流側）に位置する部品製造会社のマージノードＭＮ２、ノードＣとノードＤには一切含まれない。よって、原料物質Ａに関する化学物質管理の責任の所在は、材料会社と都品製造会社に限定される。  
なお、図４において逆遡及探索をした場合にも、遡及探索と同様の結果を得ることができる。
【００３２】
以降、詳細なデータ構造とフローチャートを参照して、本発明の一実施形態の手順を説明する。なお、フローチャートの説明については、主要な部分のみを説明し、単なる変数への代入などについての説明は省略する。なお、以下の示すフローチャートの制御はすべてＣＰＵ１０で行うので、特に明記しない。具体的には、以下に示す個別の処理及び処理の制御等はすべてＣＰＵ１０で行われる。
【００３３】
図５及び図６を参照して、化学反応を表現するデータと化学物質規制法律のデータの記載例を説明する。  
まず、図５に示す化学反応を表現するデータとして、ＺＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）、ＢＯＮＥＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）、ＢＴＷＯＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）、ＳＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）は、それぞれ、材料、第１段部品、第２段部品、製品に使用される化学物質を表す配列データである。ここで、第１段部品は材料を構成要素とする部品、第２段部品は第１段部品を構成要素とする部品、製品は第２段部品を構成要素とする部品と定義する。ＮｏｄｅＩｎｄｅｘはノードの識別子である。なお、ＺＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）、ＢＯＮＥＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）、ＢＴＷＯＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）、ＳＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）は、同一構造をもつ。
【００３４】
次に、上記のデータの要素を説明する。ＣｈｅｍｉｃａｌＮａｍｅは化学物質名称を表す。Ｗｅｉｇｈｔは化学物質規制法律の対象となるしきい値重量を表す。Ｃｏｍｐａｎｙは該当ノードで表される化学物質を取り扱っている企業名（なお、企業に限らず、個人や公益法人などの団体であってもよい。以下同様）を表す。ｃｈｉｌｄは該当ノードで表される化学物質を原料として生成する生成物質ノードのノードインデックスの集合を表すリストである。すなわち、ｃｈｉｌｄはサプライチェーンモデルにおいて次段のノードへのポインタである。ｐａｒｅｎｔは該当ノードで表される化学物質を生成する際の原料となる原料ノードのノードインデックスの集合を表すリストである。すなわち、ｐａｒｅｎｔはサプライチェーンモデルにおいて前段のノードへのポインタである。
【００３５】
ＺＮＯＤＥＭＥＲＧＥ（ＮｏｄｅＩｎｄｅｘ）、ＢＯＮＥＮＯＤＥＭＥＲＧＥ（ＮｏｄｅＩｎｄｅｘ）、ＢＴＷＯＮＯＤＥＭＥＲＧＥ（ＮｏｄｅＩｎｄｅｘ）、ＳＮＯＤＥＭＥＲＧＥ（ＮｏｄｅＩｎｄｅｘ）は上記のノードのマージを表し、すべて同一構造をもつ。これらのデータの要素を説明する。Ｒｍｅｒｇｅは互いに反応する原料物質ノードの集合リストである。Ｐｍｅｒｇｅは互いに生成する生成物質ノードの集合のリストである。
【００３６】
図６を参照して、化学物質規制法律のデータについて説明する。Ｃｏｎｓｔｒａｉｎｔ（ＣｈｅｍｉｃａｌＩｎｄｅｘ）は、ＣｈｅｍｉｃａｌＩｎｄｅｘを指標とする化学物質の規制法律のデータを格納した配列データである。ＬｏｗＴｏｔａｌＮｕｍはＣｈｅｍｉｃａｌＩｎｄｅｘで表される化学物質に係わる規制の総数である。Ｌｏｗ［ｋ］はｋ番目に格納された化学物質の法律データである。ＬｏｗＮａｍｅは化学物質規制法律の名称である。ＷＴＨは規制対象となる化学物質のしきい値重量である。このしきい値重量より大きな重量の化学物質は規制対象となるという意味である。Ｔｏｄｏｋｅｄｅは届出義務の有無を表す。ＳａｎｓｈｏｕはＬｏｗＮａｍｅで表される参照ＤＢのある場所を示す。ない場合は空欄でもよいし、これらの場所は、ＵＲＬやディレクトリなどにより適宜表現するものとする。
【００３７】
図７は、化学反応を伴う原料物と生成物の構成関係の作成の手順を表す概略フローチャートである。作成が開始すると（ＳＳ１０）、原料物質ノードから生成物質ノードへ向かうエッジの設定をおこなう（ＳＳ２０）。原料物同士、生成物同士ノードのマージを行い（ＳＳ３０）、処理を終了する（ＳＳ４０）。
【００３８】
図８から図１３を参照して、原料物質ノードから生成物質ノードへエッジを設定する手順を説明する。図８から図１３は、原料物質ノードから生成物質ノードへエッジを設定する手順を示すフローチャートである。  
原料物質ノードから生成物質ノードへのエッジの設定を開始すると（Ｓ１０００）、全ての規制対象化学物質名称を化学物質名称未登録リストに設定する（Ｓ１０１０）。そして、全ての対象とする材料会社名称を材料会社名称未登録リストに設定し（Ｓ１０２０）、全ての対象とする第１段部品会社名称を第１段部品会社名称未登録リストに設定し（Ｓ１０３０）、全ての対象とする第２段部品会社名称を第２段部品会社名称未登録リストに設定し（Ｓ１０４０）、全ての対象とする製品会社名称を製品会社名称未登録リストに設定する（Ｓ１０５０）。次に、変数ＴｏｔａｌＣに規制対象となる化学物質の総数を格納し（Ｓ１０６０）、変数ＴｏｔａｌＺに材料会社の総数を格納し（Ｓ１０７０）、変数ＴｏｔａｌＢＯＮＥに第１段部品会社の総数を格納し（Ｓ１０８０）、変数Ｔｏｔａｌｓに対象とする製品会社の数を格納する（Ｓ１０９０）。
【００３９】
Ｓ１１００〜Ｓ１１５０の処理により、ＣＮｉに化学物質名称を格納し（Ｓ１１２０）、ＷＴＨｉに化学物質規制法律の対象となるしきい値重量を格納する（Ｓ１１３０）。次に、Ｓ１１７０〜Ｓ１２００の処理により、ＺＮｊに材料会社名称を格納する（Ｓ１１８０）。そして、図９のＳ１２１０〜Ｓ１２５０の処理により、ＢＯＮＥＮｊに第１段部品会社名称を格納し（Ｓ１２３０）、Ｓ１２６０〜Ｓ１３００の処理により、ＢＴＷＯＮｊに第２段部品会社名称を格納する（Ｓ１２８０）。Ｓ１３１０〜Ｓ１３５０の処理により、ＳＮｊに製品会社名称を格納する（Ｓ１３３０）。
【００４０】
図１０及び図１１のＳ１３６０〜Ｓ１７４０の処理により、ＺＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）、ＢＯＮＥＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）、ＢＴＷＯＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）、ＳＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）のノードの作成と初期化処理が行われる。ここで化学物質規制法律の対象となるすべての化学物質についてのノードの作成が行われる。
【００４１】
Ｓ１３８０〜Ｓ１４６０の処理により、材料会社を表すＺＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）が作成される。ここで、化学物質ＣＮｉを材料会社ＺＮｊで作成しているか否かを判断し（Ｓ１４１０）、作成している場合には、ＮｏｄｅＩｎｄｅｘをインクリメントして（Ｓ１４２０）、ノードを設定する（Ｓ１４３０）。Ｓ１４３０において、ＣｈｅｍｉｃａｌＮａｍｅに化学物質名、Ｗｅｉｇｈｔに化学物質規制法令の対象となるしきい値重量、Ｃｏｍｐａｎｙに企業名を設定する。すべての材料会社における化学物質規制法律の対象となる化学物質に対する判定が終了したら（Ｓ１４００）、変数ＴｏｔａｌＺｎｏｄｅにＺＮＯＤＥの総数を格納する（Ｓ１４６０）。
【００４２】
Ｓ１４７０〜Ｓ１５５０の処理により、第１段部品会社を表すＢＯＮＥＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）の作成と初期化処理が行われる。ここで、化学物質ＣＮｉを材料会社Ｂ○ＮＥＮｊで作成しているか否かを判断し（Ｓ１４９０）、作成している場合には、ＮｏｄｅＩｎｄｅｘをインクリメントして（Ｓ１５１０）、ノードを設定する（Ｓ１５２０）。ＣｈｅｍｉｃａｌＮａｍｅに化学物質名、Ｗｅｉｇｈｔに化学物質規制法令の対象となるしきい値重量、Ｃｏｍｐａｎｙに企業名を設定する。すべての第１部品会社における化学物質規制法律の対象となる化学物質に対する判定が終了したら（Ｓ１４９０）、変数ＴｏｔａｌＢＯＮＥＮｏｄｅにＢＯＮＥＮＯＤＥの総数を格納する（Ｓ１５５０）。
【００４３】
Ｓ１５６０〜Ｓ１６４０の処理により、第２段部品会社を表すＢＴＷＯＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）の作成と初期化処理が行われる。ここで、化学物質ＣＮｉを材料会社ＢＴＷＯＮｊで作成しているか否かを判断し（Ｓ１５９０）、作成している場合にはＮｏｄｅＩｎｄｅｘをインクリメントして（Ｓ１６００）、ノードを設定する（Ｓ１６１０）。ＣｈｅｍｉｃａｌＮａｍｅに化学物質名、Ｗｅｉｇｈｔに化学物質規制法令の対象となるしきい値重量、Ｃｏｍｐａｎｙに企業名を設定する。すべての第２部品会社における化学物質規制法律の対象となる化学物質に対する判定が終了したら（Ｓ１５８０）、変数ＴｏｔａＢＴＷＯＮｏｄｅにＢＴＷＯＮＯＤＥの総数を格納する（Ｓ１６４０）。
【００４４】
Ｓ１６５０〜Ｓ１７３０の処理により、製品会社を表すＳＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）の作成と初期化処理が行われる。ここで、化学物質ＣＮｉを製品会社ＳＮｊで作成しているか否かを判断し（Ｓ１６８０）、作成している場合にはＮｏｄｅＩｎｄｅｘをインクリメントして（Ｓ１６９０）、ノードを設定する（Ｓ１７００）。ＣｈｅｍｉｃａｌＮａｍｅに化学物質名、Ｗｅｉｇｈｔに化学物質規制法令の対象となるしきい値重量、Ｃｏｍｐａｎｙに企業名を設定する。すべての製品会社における化学物質規制法律の対象となる化学物質に対する判定が終了したら（Ｓ１６７０）、Ｓ１７３０において変数ＴｏｔａｌＳＮｏｄｅにＳＮＯＤＥの総数を格納する。
【００４５】
図１２及び図１３のＳ１７５０〜Ｓ２０１０の処理により、ＺＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）からＢＯＮＥＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）、ＢＯＮＥＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）からＢＴＷＯＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）、ＢＴＷＯＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）からＳＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）へ向かうエッジが生成される。エッジは原料物から生成物への生成関係を表す。
【００４６】
まず、Ｓ１７５０〜Ｓ１８３０の処理により、ＺＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）からＢＯＮＥＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）へのエッジが生成される。ここで、原料会社ＺＮＯＤＥ（ｉ）．Ｃｏｍｐａｎｙ、化学物質ＺＮＯＤＥ（ｉ）．ＣｈｅｍｉｃａｌＮａｍｅを原料として、第１段部品会社ＢＯＮＥＮＯＤＥ（ｊ）．Ｃｏｍｐａｎｙ、化学物質ＢＯＮＥＮＯＤＥ（ｊ）．ＣｈｅｍｉｃａｌＮａｍｅが生成されたか否かを判断し（Ｓ１７９０）、生成された場合にはＺＮＯＤＥ（ｉ）．ｃｈｉｌｄに生成物質ノードインデックスｊを格納し（Ｓ１８００）、ＢＯＮＥＮＯＤＥ（ｊ）．ｐａｒｅｎｔに原料物質ノードインデックスｉを格納する（Ｓ１８１０）。
【００４７】
Ｓ１８４０〜Ｓ１９２０の処理により、ＢＯＮＥＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）からＢＴＷＯＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）へのエッジが生成される。ここで、第１段部品会社ＢＯＮＥＮＯＤＥ（ｉ）．Ｃｏｍｐａｎｙ、化学物質ＢＯＮＥＮＯＤＥ（ｉ）．ｃｈｅｍｉｃａｌＮａｍｅを原料として、第２段部品会社ＢＴＷＯＮＯＤＥ（ｊ）．Ｃｏｍｐａｎｙ、化学物質ＢＴＷＯＮＯＤＥ（ｊ）．ＣｈｅｍｉｃａｌＮａｍｅが生成されたか否かを判断し（Ｓ１８８０）生成された場合には、ＢＯＮＥＮＯＤＥ（ｉ）．ｃｈｉｌｄに生成物質ノードインデックスｊを格納し（Ｓ１８９０）、ＢＴＷＯＮＯＤＥ（ｊ）．ｐａｒｅｎｔに原料物質ノードインデックスｉを格納する（Ｓ１９００）。
【００４８】
図１３のＳ１９３０〜Ｓ２０１０の処理により、ＢＯＮＥＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）からＢＴＷＯＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）へのエッジが生成される。ここで、原料会社ＢＴＷＯＮＯＤＥ（ｉ）．Ｃｏｍｐａｎｙ、化学物質ＢＴＷＯＮＯＤＥ（ｉ）．ＣｈｅｍｉｃａｌＮａｍｅを原料として製品会社ＳＮＯＤＥ（ｊ）．Ｃｏｍｐａｎｙ、化学物質ＳＮＯＤＥ（ｊ）．ＣｈｅｍｉｃａｌＮａｍｅが生成されたか否かを判断し（Ｓ１９７０）、生成された場合にはＢＴＷＯＮＯＤＥ（ｉ）．ｃｈｉｌｄに生成物質ノードインデックスｊを格納し（Ｓ１９８０）、ＳＮＯＤＥ（ｊ）．ｐａｒｅｎｔに原料物質ノードインデックスｉを格納する（Ｓ１９９０）。  
すべてのＢＯＮＥＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）からＢＴＷＯＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）へのエッジが生成されたら（Ｓ１９４０）、処理を終了する（Ｓ２０２０）。
【００４９】
図１４〜図１７は、原料物質ノード同士及び生成物質ノード同士をマージする手順を示す詳細フローチャートである。  
処理を開始すると（Ｓ２０２５）、Ｓ２０３０からＳ２４４０の処理により、ＺＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）同士、ＢＯＮＥＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）同士、ＢＴＷＯＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）同士、ＳＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）同士がマージされる。具体的には、以下の通りである。
【００５０】
図１４のＳ２０３０〜Ｓ２１１０の処理により、ＺＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）同士がマージされる。ここで、ＺＮＯＤＥ（ｉ）．Ｃｏｍｐａｎｙ、ＺＮＯＤＥ（ｉ）．ＣｈｅｍｉｃａｌＮａｍｅとＺＮＯＤＥ（ｊ）．Ｃｏｍｐａｎｙ、ＺＮＯＤＥ（ｊ）．ＣｈｅｍｃａｌＮａｍｅは化学反応で互いに反応する原料物か否かを判断し（Ｓ２０７０）、原料物であった場合にはＺＮＯＤＥＭＥＲＧＥ（ｉ）．Ｒｍｅｒｇｅ相手のノードインデックスｊを格納し（Ｓ２０８０）、ＺＮＯＤＥＭＥＲＧＥ（ｊ）．Ｒｍｅｒｇｅに相手のノードインデックスｉを格納する（Ｓ２０９０）。
【００５１】
図１５のＳ２１２０〜Ｓ２２３０の処理により、ＢＯＮＥＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）同士がマージされる。ここで、ＢＯＮＥＮＯＤＥ（ｉ）．Ｃｏｍｐａｎｙ、ＢＯＮＥＮＯＤＥ（ｉ）．ＣｈｅｍｉｃａｌＮａｍｅとＢＯＮＥＮＯＤＥ（ｊ）．Ｃｏｍｐａｎｙ、ＢＯＮＥＮＯＤＥ（ｊ）．ＣｈｅｍｉｃａｌＮａｍｅは化学反応で互いに反応する生成物か否かを判断し（Ｓ２１６０）、生成物であった場合にはＢＯＮＥＮＯＤＥＭＥＲＧＥ（ｉ）．Ｐｍｅｒｇｅに相手のノードインデックスｊを格納し（Ｓ２１７０）、ＢＯＮＥＮＯＤＥＭＥＲＧＥ（ｊ）．Ｐｍｅｒｇｅに相手のノードインデックスｉを格納する（Ｓ２１８０）。Ｓ２１６０において、生成物でない場合には、ＢＯＮＥＮＯＤＥ（ｉ）．Ｃｏｍｐａｎｙ、ＢＯＮＥＮＯＤＥ（ｉ）．ＣｈｅｍｉｃａｌＮａｍｅとＢＯＮＥＮＯＤＥ（ｊ）．Ｃｏｍｐａｎｙ、ＢＯＮＥＮＯＤＥ（ｊ）．ＣｈｅｍｉｃａｌＮａｍｅは化学反応で互いに反応する原料物か否かを判断し（Ｓ２２１０）、原料物であった場合にはＢＯＮＥＮＯＤＥＭＥＲＧＥ（ｉ）．Ｒｍｅｒｇｅに相手のノードインデックスｊを格納し（Ｓ２２２０）、Ｂ○ＮＥＮＯＤＥＭＥＲＧＥ（ｊ）．Ｒｍｅｒｇｅに相手のノードインデックスｉを格納する（Ｓ２２３０）。
【００５２】
図１６のＳ２２４０〜Ｓ２３５０の処理により、ＢＴＷＯＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）同士がマージされる。ここで、ＢＴＷＯＮＯＤＥ（ｉ）．Ｃｏｍｐａｎｙ、ＢＴＷＯＮＯＤＥ（ｉ）．ＣｈｅｍｉｃａｌＮａｍｅとＢＴＷＯＮＯＤＥ（ｊ）．Ｃｏｍｐａｎｙ、ＢＴＷＯＮＯＤＥ（ｊ）．ＣｈｅｍｉｃａｌＮａｍｅは化学反応で互いに反応する生成物か否かを判断し（Ｓ２２８０）、生成物であった場合にはＢＴＷＯＮＯＤＥＭＥＲＧＥ（ｉ）．Ｐｍｅｒｇｅに相手のノードインデックスｊを格納し（Ｓ２２９０）、ＢＴＷ○ＮＯＤＥＭＥＲＧＥ（ｊ）．Ｐｍｅｒｇｅに相手のノードインデックスｉを格納する（Ｓ２３００）。Ｓ２２８０において、生成物でない場合には、ＺＮＯＤＥ（ｉ）．Ｃｏｍｐａｎｙ、ＺＮＯＤＥ（ｉ）．ＣｈｅｍｉｃａｌＮａｍｅとＺＮＯＤＥ（ｊ）．Ｃｏｍｐａｎｙ、ＺＮＯＤＥ（ｊ）．ＣｈｅｍｉｃａｌＮａｍｅは化学反応で互いに反応する原料物か否かを判断し（Ｓ２３３０）、原料物であった場合にはＢＴＷＯＮＯＤＥＭＥＲＧＥ（ｉ）．Ｒｍｅｒｇｅに相手のノードインデックスｊを格納し（Ｓ２３４０）、ＢＴＷＯＮＯＤＥＭＥＲＧＥ（ｊ）．Ｒｍｅｒｇｅに相手のノードインデックスｉを格納する（Ｓ２３５０）。
【００５３】
図１７のＳ２３６０〜Ｓ２４４０の処理により、ＳＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）同士がマージされる。ここで、ＳＮＯＤＥ（ｉ）．ｃｏｍｐａｎｙ、ＳＮＯＤＥ（ｉ）．ＣｈｅｍｉｃａｌＮａｍｅとＳＮＯＤＥ（ｊ）．Ｃｏｍｐａｎｙ、ＳＮＯＤＥ（ｊ）．ＣｈｅｍｉｃａｌＮａｍｅは化学反応で互いに反応する生成物か否かを判断し（Ｓ２４００）、生成物であった場合にはＳＮＯＤＥＭＥＲＧＥ（ｉ）．Ｐｍｅｒｇｅに相手のノードインデックスｊを格納し（Ｓ２４１０）、ＳＮＯＤＥＭＥＲＧＥ（ｊ）．Ｐｍｅｒｇｅに相手のノードインデックスｉを格納する（Ｓ２４２０）。すべてのＳＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）同士のマージが終了したら（Ｓ２３７０）、処理を終了する（Ｓ２４５０）。
【００５４】
上記の処理により、既存のサプライチェーンモデルのデータ構造を変更することなしに、ＺＮＯＤＥＭＥＲＧＥ、ＢＯＮＥＮＯＤＥＭＤＥＧＥ、ＢＴＷＯＮＯＤＥＭＥＲＧＥ、ＳＮＯＤＥＭＥＲＧＥを用いて、化学物質を表現することができる。
【００５５】
図１８〜図２１は、化学物質の逆追跡の手順を示す詳細フローチャートである。  
処理を開始すると（Ｓ３０００）、図１８のＳ３０１０〜Ｓ３１４０において、製品を表すノードＳＮＯＤＥから第２段部品を表すノードＢＴＷＯＮＯＤＥへの逆追跡を行う。図１８は、製品を表すノードＳＮＯＤＥから第２段部品を表すノードＢＴＷＯＮＯＤＥへの逆追跡を行う手順を示すフローチャートである。ここで、ＳＮＯＤＥ（ｉ）の原料であるＢＴＷＯＮＯＤＥＭＥＲＧＥ（ＮｏｄｅＩｎｄｅｘ）．Ｒｍｅｒｇｅが空集合であるか否かを判断し（Ｓ３０６０）、空集合でなければ、マージノードがあるので、互いに反応する化学反応の原料物が存在すると判断され、ＢＴＷＯＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ）．ＣｈｅｍｉｃａｌＮａｍｅはＳＮＯＤＥ（ｉ）の化学反応の原料物と識別される（Ｓ３０９０）。ＢＴＷＯＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ．ＣｈｅｍｉｃａｌＩｎｄｅｘが規制対象物質か否かが識別される（Ｓ３０９２）。この処理はサプルーチンとして定義されており、図２１のＳ５０００〜Ｓ５１００の処理である。次に、ＳＮＯＤＥ（ｉ）と互いに生成するＳＮＯＤＥＭＥＲＧＥ（ｉ）．Ｐｍｅｒｇｅが空集合であるか否かを判断し（Ｓ３１１０）、空集合でなければ、マージノードがあるので、互いに生成する化学反応の生成物が存在すると判断し、ＳＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ．ＣｈｅｍｉｃａｌＮａｍｅ）が化学反応の生成物であると識別される（Ｓ３１４０）。そして、ＳＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ）．ＣｈｅｍｉｃａｌＩｎｄｅｘが規制対象物質か否かが識別される（Ｓ３１４２）。この処理はサブルーチンとして定義されており、図２１のＳ５０００〜Ｓ５１００の処理である。
【００５６】
図１９のＳ３１５０〜Ｓ３２８０において、第２段部品を表すノードＢＴＷＯＮＯＤＥから第１段部品を表すノードＢＯＮＥＮＯＤＥへの逆追跡が行われる。図１９は、第２段部品を表すノードＢＴＷＯＮＯＤＥから第１段部品を表すノードＢＯＮＥＮＯＤＥへの逆追跡を表すフローチャートである。まず、ＢＴＷＯＮＯＤＥ（ｉ）の原料であるＢＯＮＥＮＯＤＥＭＥＲＧＥ（ＮｏｄｅＩｎｄｅｘ）．Ｒｍｅｒｇｅが空集合であるか否かを判断し（Ｓ３２００）、空集合でなければ、マージノードがあるので、互いに反応する化学反応の原料物が存在すると判断し、ＢＯＮＥＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ）．ＣｈｅｍｉｃａｌＮａｍｅはＢＴＷＯＮＯＤＥ（ｉ）の原料である化学反応の原料物と識別する（Ｓ３２３０）。そして、ＢＯＮＥＮＯＤＥ（Ｍｅｒｇｅｌｎｄｅｘ．ＣｈｅｍｉｃａｌＩｎｄｅｘが規制対象物質か否かを識別する（Ｓ３２３２）。このルーチンはサブルーチンとして定義されており、図２１のＳ５０００〜Ｓ５１００の処理である。Ｓ３１７０において、ＢＯＮＥＮＯＤＥＭＥＲＧＥ（ＮｏｄｅＩｎｄｅｘ）．Ｒｍｅｒｇｅが空集合でなければ、ＢＴＷＯＮＯＤＥ（ｉ）と互いに生成するＢＴＷＯＮＯＤＥＭＥＲＧＥ（ｉ）．Ｐｍｅｒｇｅが空集合であるか否かを判断し（Ｓ３２５０）、空集合でなければ、マージノードがあるので、互いに生成する化学反応の生成物が存在すると判断し、ＢＴＷＯＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ．ＣｈｅｍｉｃａｌＮａｍｅは化学反応の生成物であると識別する（Ｓ３２８０）。そして、ＢＴＷＯＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ）．ＣｈｅｍｉｃａｌＩｎｄｅｘが規制対象物質か否かを識別する（Ｓ３２８２）。このルーチンはサブルーチンとして定義されており、図２１のＳ５０００〜Ｓ５１００の処理である。
【００５７】
図２０のＳ３２９０〜Ｓ３４２０において、第１段部品を表すノードＢＯＮＥＮＯＤＥから材料を表すノードＺＮＯＤＥへの逆追跡が行われる。図２０は、第１段部品を表すノードＢＯＮＥＮＯＤＥから材料を表すノードＺＮＯＤＥへの逆追跡の手順を表すフローチャートである。ここで、ＢＯＮＥＮＯＤＥ（ｉ）．ｐａｒｅｎｔが空集合であれば（Ｓ３３１０）、ＢＯＮＥＮＯＤＥ（ｉ）の原料であるＺＮＯＤＥＭＥＲＧＥ（ＮｏｄｅＩｎｄｅｘ）．Ｒｍｅｒｇｅが空集合であるか否かを判断し（Ｓ３３４０）、空集合でなければ、マージノードがあるので、互いに反応する化学反応の原料物が存在すると判断し、ＺＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ）．ＣｈｅｍｉｃａｌＮａｍｅはＢＯＮＥＮＯＤＥ（ｉ）の原料である化学反応の原料物と識別する（Ｓ３３７０）。そして、ＺＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ）．ｃｈｅｍｉｃａｌＩｎｄｅｘが規制対象物質か否かを識別する（Ｓ３３７２）。このルーチンはサブルーチンとして定義されており、図２１のＳ５０００〜Ｓ５１００の処理である。Ｓ３３１０において、ＢＯＮＥＮＯＤＥ（ｉ）．ｐａｒｅｎｔが空集合でなければ、ＢＯＮＥＮＯＤＥ（ｉ）と互いに生成するＢＯＮＥＮＯＤＥＭＥＲＧＥ（ｉ）．Ｐｍｅｒｇｅが空集合であるか否かを判断し（Ｓ３３９０）、空集合でなければ、マージノードがあるので、互いに生成する化学反応の生成物が存在すると判断し、ＢＯＮＥＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ．ｃｈｅｍｉｃａＩＮａｍｅは化学反応の生成物であると識別する（Ｓ３４２０）。そして、ＢＴＷＯＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ）．ｃｈｅｍｉｃａｌＩｎｄｅｘが規制対象物質か否かを識別する（Ｓ３４２２）。このルーチンはサブルーチンとして定義されており、図２１のＳ５０００〜Ｓ５１００の処理である。すべてのＢＯＮＥＮＯＤＥ同士のマージが終了したら（Ｓ３３００）、処理を終了する（Ｓ３４３０）。
【００５８】
図２１のＳ５０００〜Ｓ５１００はＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ）．ＣｈｅｍｉｃａｌＩｎｄｅｘが規制対象物質か否かを識別するサブルーチンである。なお、ＮＯＤＥはＳＮＯＤＥ、ＢＴＷＯＮＯＤＥ、ＢＯＮＥＮＯＤＥ、ＺＮＯＤＥと同型の構造をもつ配列データである。まず、変数ＣｈｅｍｉｃａｌＩｎｄｅｘにＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ）．ｃｈｅｍｉｃａｌＩｎｄｅｘを代入する（Ｓ５０１０）。そして、Ｓ５０２０〜Ｓ５０６０の処理を１≦ｋ≦Ｃｏｎｓｔｒａｉｎｔ（ＣｈｅｍｉｃａｌＩｎｄｅｘ）．ＬｏｗＴｏｔａＩＮｕｍの範囲で繰り返す。具体的には、ＢＴＷＯＮＯＤＥ（ＮｏｄｅＩｎｄｅｘ）．ｗｅｉｇｈｔ＞Ｃｏｎｓｔｒａｉｎｔ（ＣｈｅｍｉｃａｌＩｎｄｅｘ）．Ｌｏｗ（ｋ）．ＷＴＨの条件を判断し（Ｓ５０４０）、この条件が満たされる（ｔｒｕｅ）場合には、Ｓ５０５０へ処理を進め、規制法律の対象となることをユーザーに明示する出力を表示する（Ｓ５０５０）。この場合の出力項目は、"規制法律あり"、"規制法律名称"、Ｃｏｎｓｔｒａｉｎｔ（ｃｈｅｍｉｃａｌＩｎｄｅｘ）．Ｌｏｗ［ｋ］．ＬｏｗＮａｍｅ、"届出義務の有無"Ｔｏｄｏｋｅｄｅ、"規制法律参照データベース"Ｓａｎｓｈｏｕである。Ｓ５０４０において、条件が満たされない場合はＳ５０６０へ処理を進める。
【００５９】
上記のフローチャートによる逆追跡の方法を用いれば、化学物質規制法律により、サプライチェーンにおける化学反応の存在の有無、化学反応による原料物、反応物の区別をつけることが可能となる。さらに既存のサプライチェーンモデルに用いられているデータ構造を更新させることなく逆追跡が実現できる。
【００６０】
上記のように、本実施態様によれば、原料物質ノードから生成物質ノードへ向かう遡及探索、生成物質ノードから原料物質ノードへ向かう逆遡及探索、原料物質をマージしたノードから生成物質をマージしたノードへ向かう遡及探索、生成物質をマージしたノードから原料物質をマージしたノードへ向かう逆遡及探索を可能にするデータ構造を提供できる。
【００６１】
本発明の実施形態により、サプライチェーン途中に規制対象となる化学物質を見つけた場合に、当該ノードに接続する下流（製品側）の全てのサプライチェーンノードにおいて、すべてのノードにおいて規制対象物質が含まれると、自動的に認識されることはなくなり、化学物質管理の責任の所在は部品製造会社および物理的にこれらが混合される製品会社のノードＰを扱う工場に限定される。
【００６２】
上記のように、本発明によれば、既存のサプライチェーンモデルにおいて物理的製造手段に採用されているモデルを変えることなく、化学反応をともなう原料物質と生成物質の構成関係を表現することができる。また、既存データ構造を変化させることなく、アプリケーションプ口グラムの変更のみで、コンピュータによる管理を実行することができる。さらに、本発明により作成した化学反応をともなう原料物と生成物の構成関係を表現するグラフにおいて、マージされたノードに含まれる原料物質と生成物質は、その反応前後における化学的性質などが異なることが明らかである。このため、原料物質と生成物質とは、物性（沸点、融点、発火性）や毒性が異なりことや、規制法令（消防法、毒物劇物法、ＰＲＴＲ法など）が異なることを発見し、認識することができる。このことにより、化学物質規制法律の対象となる化学物質の下流（製品側）に位置するノード（部品製品）には自動的に当該化学物質が含まれると認識することがなくなり、化学物質規制法律の対象となる化学物質を選択的に認識することができる。
【００６３】
本発明は、上記各実施の形態に限ることなく、その他、実施段階ではその要旨を逸脱しない範囲で種々の変形を実施し得ることが可能である。さらに、上記各実施形態には、種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組合せにより種々の発明が抽出され得る。
【００６４】
また、例えば各実施形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【図面の簡単な説明】
【００６５】
【図１】本発明の一実施形態に係る化学物質管理装置の概略構成を示すブロック図である。
【図２】図２２に示したサプライチェーンの表現方法を、化学反応を伴う原料物と生成物の関係に適用した例を示す図である。
【図３】サプライチェーンにおいて、原料物質Ａと原料物質Ｂとが１つのノードにマージされ、生成物質Ｃと生成物質Ｄとが１つのノードにされる様子を示す図である。
【図４】サプライチェーンモデルにおける遡及探索の例を示す図である。
【図５】化学反応を表現するデータの記載例を示す図である。
【図６】化学物質規制法律のデータの記載例を示す図である。
【図７】化学反応を伴う原料物と生成物の構成関係の作成の手順を表す概略フローチャートである。
【図８】原料物質ノードから生成物質ノードへエッジを設定する手順を示すフローチャートである。
【図９】原料物質ノードから生成物質ノードへエッジを設定する手順を示すフローチャートである。
【図１０】原料物質ノードから生成物質ノードへエッジを設定する手順を示すフローチャートである。
【図１１】原料物質ノードから生成物質ノードへエッジを設定する手順を示すフローチャートである。
【図１２】原料物質ノードから生成物質ノードへエッジを設定する手順を示すフローチャートである。
【図１３】原料物質ノードから生成物質ノードへエッジを設定する手順を示すフローチャートである。
【図１４】原料物質ノード同士及び生成物質ノード同士をマージする手順を示す詳細フローチャートである。
【図１５】原料物質ノード同士及び生成物質ノード同士をマージする手順を示す詳細フローチャートである。
【図１６】原料物質ノード同士及び生成物質ノード同士をマージする手順を示す詳細フローチャートである。
【図１７】原料物質ノード同士及び生成物質ノード同士をマージする手順を示す詳細フローチャートである。
【図１８】化学物質の逆追跡の手順を示す詳細フローチャートである。
【図１９】化学物質の逆追跡の手順を示す詳細フローチャートである。
【図２０】化学物質の逆追跡の手順を示す詳細フローチャートである。
【図２１】ＮＯＤＥ（ＭｅｒｇｅＩｎｄｅｘ）．ＣｈｅｍｉｃａｌＩｎｄｅｘが規制対象物質か否かを識別するサブルーチンである。
【図２２】物理的な製造方法におけるサプライチェーンの表現例である。
【符号の説明】
【００６６】
１０…ＣＰＵ
２０…出力部
３０…入力部
４０…表示部
５０…記憶部
６０…データバス
【図１】
2007226540.tif 000003
【図２】
2007226540.tif 000004
【図３】
2007226540.tif 000005
【図４】
2007226540.tif 000006
【図５】
2007226540.tif 000007
【図６】
2007226540.tif 000008
【図７】
2007226540.tif 000009
【図８】
2007226540.tif 000010
【図９】
2007226540.tif 000011
【図１０】
2007226540.tif 000012
【図１１】
2007226540.tif 000013
【図１２】
2007226540.tif 000014
【図１３】
2007226540.tif 000015
【図１４】
2007226540.tif 000016
【図１５】
2007226540.tif 000017
【図１６】
2007226540.tif 000018
【図１７】
2007226540.tif 000019
【図１８】
2007226540.tif 000020
【図１９】
2007226540.tif 000021
【図２０】
2007226540.tif 000022
【図２１】
2007226540.tif 000023
【図２２】
2007226540.tif 000024