平成30(ワ)17968民事訴訟 著作権
判決文PDF
▶ 最新の判決一覧に戻る
裁判所 |
請求棄却 東京地方裁判所東京地方裁判所
|
裁判年月日 |
令和4年8月30日 |
事件種別 |
民事 |
当事者 |
原告株式会社ヒューマンライフ・マネジメント 被告NTTエレクトロニクステクノ株式会社
|
法令 |
著作権
著作権法2条1項10号1回 著作権法114条1項1回 著作権法112条1項1回
|
キーワード |
侵害4回 差止3回 実施2回 損害賠償1回
|
主文 |
1 原告の各請求をいずれも棄却する。
2 訴訟費用は原告の負担とする。 |
事件の概要 |
本件は、原告が、別紙原告プログラム目録記載の各プログラム(以下、符号
に応じて「原告プログラム1⑴」、「原告プログラム2⑴ア」等といい、原告
プログラム1⑴から4を併せて「各原告プログラム」という。)について原告5
が著作権を有し、被告が各原告プログラムを複製又は翻案した被告プログラム
をサーバにインストールして定期的に修正したこと等により、原告の各著作権
(複製権又は翻案権)が侵害され損害を被った等と主張して、被告に対し、各
著作権による差止請求権及び廃棄等請求権(著作権法112条1項、2項)に
基づき、被告プログラムの複製、翻案の差止め及び廃棄を求めるとともに、不10
法行為による損害賠償請求権に基づき、損害の一部として610万円及びこれ
に対する不法行為より後の日である平成24年8月31日から支払済みまで平
成29年法律第44号による改正前の民法所定の年5分の割合による遅延損害
金の支払を求める事案である。 |
▶ 前の判決 ▶ 次の判決 ▶ 著作権に関する裁判例
本サービスは判決文を自動処理して掲載しており、完全な正確性を保証するものではありません。正式な情報は裁判所公表の判決文(本ページ右上の[判決文PDF])を必ずご確認ください。
判決文
令和4年8月30日判決言渡 同日原本交付 裁判所書記官
平成30年(ワ)第17968号 著作権に基づく差止等請求事件
口頭弁論終結日 令和4年4月21日
判 決
原 告 株式会社ヒューマンライフ・マネジメント
同 訴 訟代 理 人 弁 護 士 竹 花 元
日 高 義 允
被 告 NTTエレクトロニクステクノ株式会社
同 訴 訟 代 理 人 弁 護 士 佐 藤 安 紘
末 吉 亙
15 主 文
1 原告の各請求をいずれも棄却する。
2 訴訟費用は原告の負担とする。
事 実 及 び 理 由
第1 請求等
20 1 被告は、「モバカルネット」という名称の「コンピュータ上で動作する在宅
医療用のカルテ等の文書作成、資料管理、情報共有及び予定管理のために利用
されるソフトウェア」のプログラム(以下「被告プログラム」という。)を複
製、翻案してはならない。
2 被告は、被告プログラムを廃棄せよ。
25 3 被告は、原告に対し、610万円及びこれに対する平成24年8月31日か
ら支払済みまで年5分の割合による金員を支払え。
4 仮執行宣言
第2 事案の概要
本件は、原告が、別紙原告プログラム目録記載の各プログラム(以下、符号
に応じて「原告プログラム1⑴」、「原告プログラム2⑴ア」等といい、原告
5 プログラム1⑴から4を併せて「各原告プログラム」という。)について原告
が著作権を有し、被告が各原告プログラムを複製又は翻案した被告プログラム
をサーバにインストールして定期的に修正したこと等により、原告の各著作権
(複製権又は翻案権)が侵害され損害を被った等と主張して、被告に対し、各
著作権による差止請求権及び廃棄等請求権(著作権法112条1項、2項)に
10 基づき、被告プログラムの複製、翻案の差止め及び廃棄を求めるとともに、不
法行為による損害賠償請求権に基づき、損害の一部として610万円及びこれ
に対する不法行為より後の日である平成24年8月31日から支払済みまで平
成29年法律第44号による改正前の民法所定の年5分の割合による遅延損害
金の支払を求める事案である。
15 1 前提事実(当事者間に争いがない事実及び証拠上容易に認められる事実。証
拠は文末に括弧で付記した。なお、書証は特記しない限り枝番を全て含む。以
下同じ。)
⑴ 当事者
原告は、医療機関等の運営支援等を目的とする株式会社である。(甲1)
20 被告は、光、電子部品、通信機器等電子機械器具、装置の研究開発、設計、
製造及び販売等を目的とする株式会社である。(甲3)
⑵ 在宅医療情報システム株式会社管理のシステムウェア
ア 在宅医療情報システム株式会社は、クラウド型の在宅医療対応電子カル
テ及びレセプトシステムである「HOMIS」を管理している。
25 HOMISは、同一法人が在宅医療を提供する複数の診療所を開設する
場合に使用することを想定したシステムであり、①診療支援システム、
②電子カルテ及びレセプトシステム並びに③患者情報共有システムの3
つから構成されている。
イ HOMISのうち②電子カルテ及びレセプトシステム(以下「HOMI
S②部分」という。)は、医療従事者が、モバイル端末を用いて、在宅患
5 者の診療情報を記録、参照したり、診断書等の文書を作成したりするため
の電子カルテシステムと、医療事務員が、電子カルテに記録された患者診
療情報に基づいて診療報酬を算定し、診療報酬の請求を行うためのレセプ
トシステムから成り、これらのシステムは、㋐Webフレームワーク、㋑
HOMIS管理ツール(利用者登録及びシステム作動に不可欠なマスタデ
10 ータの管理等の機能を実現するプログラム群)、㋒電子カルテアプリケー
ション(在宅患者の診療情報の記録、入力補助、医事文書作成等の機能を
実現するプログラム群)、㋓レセプトソフトウェア接続アプリケーション
(電子カルテアプリケーションとORCAレセプトソフトウェアの連結を
実現するプログラム)及び㋔ORCAレセプトソフトウェアの5つのモジ
15 ュール群(以下、各モジュール群を上記の各符号に応じて「㋐部分」等と
いうことがある。)から構成されている。
㋐から㋔部分は全てクラウド上の同一のサーバに存在しており、各部分
の間の通信はセキュア(情報、システム、通信路などが保護されている状
態)である必要がないため非セキュア通信が採用されている。
20 このうち、㋐部分は、原告プログラム1⑷、3⑴を含む。
また、㋒部分は、原告プログラム1⑴から⑶、2⑴から⑼ウ、3⑵を
含む。
㋐及び㋒部分のファイル構成は、概ね、別紙㋐及び㋒部分のファイル
構成記載のとおりであり、205ファイル、9万7763行から成る。
25 ㋓部分は、原告プログラム4を含む。
㋓部分は、㋐から㋒部分と㋔部分を連結するプログラムであり、この
うち原告プログラム4は、㋔部分から受信したXMLデータを解析する
機能を有する。原告プログラム4には、オープンソースである「XML_
Unserializer.php」(クラス)が用いられている。
㋔部分には、社団法人日本医師会(以下「日本医師会」という。)
5 がORCA(Online Receipt Computer Advantage)プロジェクトに
よって開発して著作権を保有し、日本医師会ORCA管理機構株式会社
がオープンソースとして提供するレセプトシステムである「日医標準レ
セプトソフト」(以下、便宜上「ORCA」という。)が用いられてい
る。
10 (⑵につき、争いがない事実のほか、甲2、31、乙2、弁論の全趣旨)
⑶ 被告プログラム
ア 被告プログラムは、クラウド型の在宅医療電子カルテ及びレセプトシス
テムであり、主に、単一の診療所での利用を想定している。被告プログ
ラムは、カルテ入力支援機能、医事文書作成・管理機能、ORCAとの
15 連結機能などを備えている。(争いがない事実のほか、甲5)
イ 被告プログラムにおいては、サービス提供者が、アプリケーション、O
S、ストレージ、ネットワーク基盤等を管理し、利用者は、ウェブブラ
ウザやプログラムインターフェースを通じて、サービス提供者がサーバ
にインストールしたプログラムによって提供されるサービスを利用する
20 方式(software as a service;SaaS)を採用している。したがって、
被告は、被告プログラムをサーバに蔵置し、定期的にバグの修正やバー
ジョンアップを行っている。また、被告プログラムは、仮想マシンによ
って随時複製されている。(争いがない事実)
ウ 被告プログラムのうち、ORCAとの連結機能を担う部分は、ORCA
25 から受信したXMLデータを解析する機能を有する。同部分には、オー
プンソースである「XML_Unserializer.php」(クラス)が用いられてお
り、また、原告プログラム4のXMLデータを解析する部分のソースコ
ードのうち別紙原告プログラム4抜粋の赤字部分(以下「本件共通箇所」
という。)と同じ記述を含む。(甲31、乙47、弁論の全趣旨)
⑷ 事実経過
5 ア 被告の従業員であるA(以下「a」という。)は、平成21年6月頃、
スケジュール、タスク及びプロジェクトの管理、文書の作成及び管理、
入力支援などの基本的な機能を提供する「PM Portal」(以下
「PMポータル」という。)というプログラムを作成した。PMポータ
ルは、「Webフレームワーク」及び「Webアプリケーション部」と
10 いう各プログラム群によって構成されている。被告は、PMポータルの
著作権を有する。(乙1、8、68、弁論の全趣旨)
イ 在宅医療情報システム株式会社及び被告は、平成23年10月20日頃、
情報処理業務に係る業務委託基本契約(以下「本件契約」という。)を
締結した。本件契約においては、被告が納入物に関して著作した著作物
15 に係る著作権は納入物の所有権移転と同時に在宅医療情報システム株式
会社に移転すること、ただし、被告が従前から著作権を保有する著作物
を納入物に組み込んだ場合には被告がその著作権を留保すること(16
条2項)等が定められていた。(争いがない事実のほか、甲8)
被告は、平成23年11月8日頃、本件契約に基づき、契約期間を同年
20 12月1日から平成24年3月31日として、B(以下「b」という。)
が代表者を務める医療法人社団悠翔会(以下「悠翔会」という。)向け
電子カルテシステム及びレセプトシステム開発業務を請け負った。(争
いがない事実のほか、甲9、弁論の全趣旨)
被告は、本件契約に基づき、平成24年3月31日までに、電子カル
25 テ及びレセプトシステムであるHOMIS②部分を完成し、悠翔会に対
して納入した。被告は、このうちの少なくとも㋓部分(ただし、Web
フレームワーク、「XML_Unserializer.php」を用いた部分を除く。)を
新たに作成し、その著作権が、納入と同時に、被告から在宅医療情報シ
ステム株式会社に譲渡された。なお、被告におけるHOMIS②部分の
開発担当者はaであった。(争いがない事実のほか、甲23、弁論の全
5 趣旨)
ウ 被告は、平成24年9月、在宅医療対応電子カルテシステムである被告
プログラムの利用サービスの提供を開始し、平成25年3月頃、被告プロ
グラムに情報共有機能のサービスを追加した。なお、開発担当者はaであ
った。(弁論の全趣旨)
10 ⑸ 一般的知見
ア インターネットを利用するシステムであるウェブシステムにおいては、
利用者がウェブブラウザから入力したデータは、インターネットを介し
てウェブサーバに送信される。ウェブサーバには、Java、JavaScript、
PHP(Hypertext Preprocessor)、Python等のプログラミング言語を
15 用いて作成されたウェブアプリケーションプログラムが実装されており、
これによって利用者から送信されたデータが処理される。その後、デー
タ処理結果を表示するために作成されたHTML文書がウェブブラウザ
に送信され、表示される。(争いがない事実のほか、乙7、9~11)
ウェブページ(ブラウザの画面に表示されるページ)は、ウェブブラウ
20 ザがウェブサーバに対してデータを送信して表示したいウェブページを
要求し(HTTPリクエスト)、これに対してウェブサーバからウェブ
ページを表示するために必要なデータ(画像、動画、音声、文章等)が
送り返される(HTTPレスポンス)ことによって表示される。ウェブ
ページを表示するために必要なデータのうちHTML文書がウェブペー
25 ジの文章構造を定義する中心的な役割を果たしている。HTML文書は、
画面表示用の言語、具体的には、HTML言語(ウェブページのコンテ
ンツや構造を決定する言語)、CSS(ウェブページの見た目を決定す
る言語)、JavaScript(ウェブページに所定の動きを与える言語)によ
って構成される。HTML言語のみでは、デザイン(配置や装飾)やイ
ンタラクティブな動作を定義することはできず、CSSを組み合わせる
5 ことによりウェブページを装飾することが可能になり、JavaScriptを組
み合わせることによりウェブページに動きをつけることが可能になる。
HTML文書は、ウェブサーバからクライアントサイドに送られウェブ
ブラウザ上で起動することから、利用者側でその内容を確認することが
できる。他方、PHPは、HTTPレスポンスの内容を制御するプログ
10 ラミング言語であり、PHPにより記述されたプログラムは、ウェブサ
ーバにインストールされウェブサーバ上で起動する。これらのプログラ
ムは、HTTPレスポンスに含まれるHTML言語、CSS、
JavaScriptなどの静的なデータをあらかじめウェブサーバ側で動的に作
成したり、変更したりするため、PHPのプログラム構成の中には、H
15 TML、CSS、JavaScriptにより記述されたプログラムが含まれるこ
とになる。HTTPレスポンスとして送り返す部分以外は、利用者側で
内容を確認することはできない。(乙33)
イ 関数とは、入力されたデータを受け取り、定められたとおりの処理を実
行して結果を返す一連のプログラム群をいう。
20 クラスとは、ウェブアプリケーションの機能を実現するための変数及び
機能処理を定義したプログラムをいう。クラスは、いずれも具体的なコ
ードとして記述されたものであり、クラスごとに一つのファイルが作成
されている。
インスタンスとは、クラスを基に実行形式のプログラムを生成し、クラ
25 スの変数に値を設定して、機能処理を実行するプログラムをいう。
フレームワークとは、ウェブシステムの開発を行う際に頻繁に必要とさ
れる基本的な機能、一般的な処理の流れをまとめたプログラム群をいう。
フレームワークを用いる場合には、フレームワークが定めるルールに従
ってソースコードを記述する必要がある。
(本項につき、争いがない事実のほか、乙9~17、弁論の全趣旨)
5 ウ ウェブアプリケーションにおいては、あるプログラムのソースコードに、
URLを記述してインターネット上に存在するプログラムやデータの場所
を指定してこれらを呼び出す 方法 、「include」、「 include_once」 、
「require」、「require_once」等の構文を記述して他のプログラムファ
イルを呼び出す方法、繰り返し記述することが予想される命令文の組合せ
10 をまとめて関数として定義し、関数名を記述してあらかじめ定義された関
数を呼び出す方法、JavaScriptプログラムにおいて「$.ajax」という関数
を記述してウェブサーバに存在するPHPプログラムを指定して呼び出す
方法(Ajax通信。ウェブページを表示した状態のまま、別のページの表
示や再読み込みなどを伴わずにウェブサーバと通信を行って表示内容を変
15 更する。)などにより、複数のプログラムの動作を実現させることが一般
的に行われている。(乙40~42、70~74)
2 争点及び争点に関する当事者の主張
本件の争点は、
①原告プログラム1⑴から3⑵(以下、併せて「本件31個の各プログラム」
20 という。)の各著作権が被告から在宅医療情報システム株式会社に譲渡さ
れたか。
②各原告プログラムの著作権が、在宅医療情報システム株式会社から原告、
原告から悠翔会、悠翔会から原告に順次譲渡されたか。
③被告が各原告プログラムを複製、翻案しているか。
25 ④損害の発生及び額
である。
⑴ 争点①(本件31個の各プログラムの各著作権が被告から医療情報システ
ム株式会社に譲渡されたか。)について
(原告の主張)
ア 本件31個の各プログラムは、いずれも、被告が本件契約に基づき新た
5 に作成した部分であり、各原告プログラムの各著作権は、本件契約に基づ
き、被告から医療情報システム株式会社に譲渡された。
なお、本件において、原告が著作権を有するプログラムは、本件プログ
ラム4のほか本件31個の各プログラムのそれぞれのプログラムであり、
その各プログラムに創作性があり著作物であるといえる根拠は以下のと
10 おりである。
イ 本件31個の各プログラムには、それぞれについて創作性が認められる。
すなわち、PMポータルは、複数の定型的なプログラムの構文をあらか
じめまとめておき、コードを作成する際に構文を呼び出して個々の素材
を当て込んでいくプログラム作成や業務管理のツールにすぎないから、
15 PMポータルを用いて作成されたプログラムは、個々の素材を組み合わ
せて新たに作成された著作物である。本件31個の各プログラムにWe
bフレームワークが使用されていたとしても、ソースコードのうちWe
bフレームワーク自体の記述及びこれを利用した記述は一部にすぎず、
自由に選択できる関数、変数は多々存在する。また、本件31個の各プ
20 ログラムは、bが、医師としての経験に基づき在宅医療の特性を踏まえ
て独自に工夫した機能を実現するためのものであるから、これらの機能
を実行するソースコードには個性が発揮されている。HOMIS②部分
は、量的、機能的な側面から、PMポータルとは全体的な構成が異なり、
この点が、具体的には、次のとおり、本件31個の各プログラムの創作
25 性に反映されている。
HOMIS②部分のファイル、フォルダは、大半が新たに作成され
たものであり、本件31個の各プログラムの記述は、その内容はPMポ
ータルから流用されていたとしても電子カルテに必要な機能を抽出、分
類している。
本件31個の各プログラムは、次のとおり、HOMIS②部分の関
5 数、変数、データ定義に係るファイルと連動等しており、PMポータル
と異なるHOMIS②部分の関数、変数、データ定義の共通化の仕方の
特徴、すなわち、各ファイルの処理機能をどのような関数を使用してど
の範囲でどのファイルにおいてサブルーチン化したかという点、PMポ
ータルと異なるデータベース構造やデータの格納方法、どの情報に共通
10 変数を使用してどの範囲で共通変数を参照したかという点が、本件31
個の各プログラムの各ソースコードの記述に表われている。
a 原告プログラム1⑷は、共通関数を定義するファイルであるところ、
36個の関数のうち29個が電子カルテに関するHOMIS独自のも
のである。そして、記述されている個々の関数は、必ずしも原告プロ
15 グラム1⑷に記述する必要はなく、共通関数とすることなく各プログ
ラムに直接実行処理文を記述する、代わりに「config.php」に記述す
る等の選択肢の無数の組合せの中から選択され作成されたものであり、
他の選択肢を選択した場合にはソースコードが違うものになる。
b 「variant.php」(原告プログラム1⑵、2⑴、2⑺ウ、2⑼ウに
20 よって参照されている。)は、アプリケーション全体の共通変数を定
義するファイルであるところ、定義されている共通変数はHOMIS
独自のものである。そして、どの情報を共通変数とするか、変数につ
いてデータをどのような名称で定義するか(例えば、「variant.php」
においては、性別について、ORCAのデータ定義に合わせて、男性
25 を「MALE」と、女性を「FEMALE」と定義したが、他の選択肢も
ある。)、どこで共通変数を定義するか、変数を参照するか各プログ
ラムに直接実行処理文を記述するか等の選択肢の無数の組合せの中か
ら選択され作成されたものであり、他の選択肢を選択した場合にはソ
ースコードは違うものになる。
c 原告プログラム3⑴(原告プログラム1⑶と連動している。)は、
5 アプリケーション全体で共用するJavaScript関数を定義するファイ
ルであり、うち3個の関数はHOMIS独自のものであり、HOMI
Sの中のプログラムを呼び出す内容のものであるから、HOMISの
プログラムの構造が前提となったものであり、HOMISのプログラ
ム構造がソースコードに表われている。
10 d 「docs/config.php」(原告プログラム2⑵ア、2⑶アからウ、2
⑷イ、2⑸アからウ、2⑹アからウ、2⑺アからウ、2⑻ア、イ、2
⑼アからウによって参照されている。)は、各文書作成プログラムに
おける共通関数2個、共通変数50個を定義するファイルである。ま
た、「pdetail/config.php」(原告プログラム1⑵によって参照され
15 ている。)も、共通変数を定義するファイルである。これらについて
は、どのような処理機能をどの範囲で共通関数とするか、共通関数を
参照するか各プログラムに直接実行処理文を記述するか、どの情報を
どの範囲で共通変数とするか、変数をどのように定義するか、どこで
共通変数を定義するか、変数を参照するか各プログラムに直接実行処
20 理文を記述するか等の選択肢の無数の組合せの中から選択され作成さ
れたものであり、他の選択肢を選択した場合にはソースコードは違う
ものになる。
作成する医事文書の拡張性を高めた点が、プログラムの相互関係、呼
出方法(どういう手段でどの画面を呼び出すかという点)、データの受
25 渡方法、格納方法に表われ、ひいては、本件31個の各プログラムのソ
ースコードの記述に表われている。
具体的には、HOMIS②部分には「model/docs」フォルダが設け
られており、作成する文書の種類が増えた場合であっても、プログラム
名に新しく数字を割り当てて、文書ごとに、原告プログラム2⑵アから
⑼ウと同様の入力、編集、印刷プログラムを追加することができ、その
5 結果、各プログラムを参照して呼び出す際には新たに数字を割り当てら
れた各プログラム名がソースコードに記述される。
また、入力、編集、印刷プログラムにおける表示、実行等は、URL
を記述することによりプログラムを呼び出して実現している。ここで、
どの画面を呼び出すかは業務用アプリケーションの内容次第であり無数
10 に選択肢が存在する。
原告プログラム2⑶から⑼の各イの各表示プログラムに対応する実行
プログラムは「edit-do2.php」のみである。
さらに、原告プログラム2⑴により表示される画面において、
「PDF」をクリックすればPDFファイルが表示され文書を印刷する
15 ことができるようになっており、PDFファイルを端末に表示すること
ができる点がソースコードに記述されている。他方、PDFファイルの
作成については、PDFの作成に失敗した場合について、原告プログラ
ム2⑶から⑼の各ウでは使用されたオープンソースのバグがそのまま引
き継がれているのに対し、原告プログラム2⑵ウではバグが修正されて
20 おり、エラーメッセージを表示することができる点がソースコードに記
述されており、この点について選択肢があったことを示している。
モバイル環境において電波状況によってカルテの保存ができない状況
を回避するため通信状況を確認するようにした点が、ソースコードに表
われている。
25 具体的には、原告プログラム1⑴においてカルテの編集完了後に
Ajax通信により原告プログラム3⑵を参照して呼び出し、通信に成功
すると原告プログラム1⑴に定義した関数を呼び出し、他方、原告プロ
グラム3⑵の呼出しに失敗した場合には、原告プログラム3⑴で通信エ
ラーを表示する。これらの記述は、上記の業務用アプリケーションの内
容に依存している。
5 その他、原告プログラム1⑴から⑶、2⑴、2⑵から⑼の各アからウ
は、URL、プログラムファイル呼出し、関数記述、Ajax通信により、
他のプログラムや共通関数を呼び出しており、相互に関連している。そ
して、共通関数や他のプログラムを呼び出す方法のほか、どのような処
理機能をどの範囲で共通関数とするか、共通関数を参照するか各プログ
10 ラムに直接実行処理文を記述するか、どの範囲でプログラムをまとめる
か、プログラムをどのフォルダ下に格納するか、プログラムを参照する
か各プログラムに直接実行処理文を記述するかという点にも選択肢があ
り、他の選択肢を選択した場合にはソースコードは違うものになる。
(被告の主張)
15 ア 本件31個の各プログラムの各著作権は、被告から医療情報システム株
式会社に譲渡されていない。本件31個の各プログラムを含む㋐及び㋒部
分は、被告が著作権を有するPMポータルを用いて作成されたものであり、
同部分に係る著作権は、従前から被告が保有していたものであり、本件契
約に基づき、被告に留保されている。すなわち、㋐部分は、PMポータル
20 のWebフレームワークを用いている。㋒部分も、PMポータルのWeb
フレームワーク(クラス、関数)を呼び出し、クラスのインスタンスを生
成し、クラスの変数に値を設定したプログラムであって、PMポータルの
Webフレームワークを組み込んだものである上に、既に作成されていた
PMポータルのWebアプリケーション部を電子カルテ用に形式的に修正
25 して作成したにすぎない。
イ 原告プログラム1⑴から⑶、原告プログラム2⑴から2⑼ウは、We
bフレームワークを基盤としてWebアプリケーション部を参照しなが
ら、別のファイルを呼び出し、変数への値の設定、HTML文書の定義
等の単純な作業を行う指令を複数記述したものにすぎず、定型的にあり
ふれたものであって作成者が個性を発揮する余地はない。このようなあ
5 りふれた個々のソースコードの記載の順序や組合せも、表示する画面に
対応した表現にすぎず、画面の内容はカルテや医事文書等の様式により
あらかじめ定められているから、この点についても創作性はない。
PMポータルは、データ処理及び結果の画面表示等の一連の流れを記
述統合したWebフレームワーク(クラス群等)とWebアプリケーシ
10 ョン部(インスタンス群等)から構成されるプログラムである。一般的
に、フレームワーク(クラス、関数)は、プログラムのひな型を構成す
るソースコードであり、その書き方には限定がなく、表現も作成者によ
って様々であり、創作性が認められる。他方、プログラム作成において、
フレームワークを用いる場合、作成者はフレームワークに従ってプログ
15 ラムを作成する必要があるため、個性を発揮する余地がほとんどなく、
同じ目的を実現するためのコードであれば誰が作成しても同じようなも
のになる。したがって、PMポータルのWebフレームワークを用いて
作成された㋐及び㋒部分のうちWebアプリケーション部を修正した部
分についても創作性は全くないか、あったとしても極めて微小である。
20 また、各ファイルの機能処理をどの範囲でどのファイルにおいてサ
ブルーチン化したかという点、データベース構造やデータの格納方法、
どの情報に共通変数を使用してどの範囲で共通変数を参照したかという
点は、本件31個の各プログラムの創作性とは何らの関係もない。
a 原告プログラム1⑷は、繰り返し使用される処理を関数としてまと
25 めたものであり、具体的には、PMポータルに記述されている関数を
そのまま利用したもの、PMポータルに記述されている関数を参照し
て作成したもの、PMポータルに記述されているソースコードを参照
して作成したもの、汎用的に使用されている関数を利用されているも
ののいずれかである。繰り返し記述されることが予想される命令文の
組合せをまとめて関数とすることは一般的な手法であり、表現ではな
5 くプログラミングに関するアイデアにすぎず、仮に表現があるとして
もありふれている上、その内容は、PMポータルに記述されている関
数等であり、まとめ方はいずれもPMポータルの「custom_util.php」
と同じである。
b 「variant.php」(原告プログラム1⑵、2⑴、2⑺ウ、2⑼ウに
10 よって参照されている。)は、いずれも画面に表示されるセレクトボ
ックス(プルダウン形式やリスト形式のメニュー)の選択項目を定義
したものにすぎず、選択項目を一つの配列の中で定義することはPM
ポータルにおいて採用されていたし、画面の選択項目に対応した配列
の定義にすぎないから個性を発揮する余地もない。
15 また、データやデータの名称は保護の対象ではなく、どこで共通変
数を定義するかは原告プログラム1⑵、2⑴、2⑺ウ、2⑼ウの創作
性とは何ら関係がない。変数を参照するか各プログラムに直接実行処
理文を記述するか等の選択肢は、現実的には存在しない。
c 原告プログラム3⑴は、そもそもソースコードのどの部分に具体的
20 に創作性があるという主張であるのか不明であるが、原告プログラム
3⑴に含まれる23個の関数のうち20個はPMポータルの記述と同
一である上、残り3個も繰り返し実行することが想定される画面表示
処理(画面サイズの変更等)を汎用的な記述を用いて作成したもので
ある。繰り返し記述されることが予想される命令文の組合せをまとめ
25 て関数とすることは一般的な手法であり、表現ではなくプログラミン
グに関するアイデアにすぎず、仮に表現があるとしてもありふれてい
る上、まとめ方はいずれもPMポータルにおけるものと同じである。
d 「docs/config.php」(原告プログラム2⑵ア、2⑶アからウ、2
⑷イ、2⑸アからウ、2⑹アからウ、2⑺アからウ、2⑻ア、イ、2
⑼アからウによって参照されている。)について、このうち関数は、
5 繰り返し記述されることが予想される命令文の組合せをまとめて関数
にしたものにすぎない。共通関数として定義するか否かという点は、
表現の選択の幅の議論とは無関係であるし、直接実行処理文が記載さ
れている部分もPMポータルの記述を使用しているから創作性が発揮
される余地はない。また、変数は、画面に表示されるラジオボタン又
10 はチェックボックスの選択項目を一つの変数として定義したものであ
る。共通変数として定義するか否かという点は、表現の選択の幅の議
論とは無関係であるし、どこで変数を定義するかは原告プログラム2
⑵ア、2⑶ア~ウ、2⑷イ、2⑸アからウ、2⑹アからウ、2⑺アか
らウ、2⑻ア、イ、2⑼アからウの創作性とは何ら関係がない。選択
15 項目を一つの変数として定義することはPMポータルにおいて採用さ
れており、画面の選択項目に対応した配列の定義にすぎないから個性
を発揮する余地もない。
「pdetail/config.php」(原告プログラム1⑵によって参照されて
いる。)についても、共通変数として定義するか否かという点は、表
20 現の選択の幅の議論とは無関係であるし、どこで変数を定義するかは
原告プログラム1⑵の創作性とは何ら関係がない。
ファイル名に数字を割り当てたり、医事文書に関するファイルを同
一のフォルダの下に配置したりすることは、電子計算機に対する指令の
組合せではなく、電子計算機に対する指令についての創意工夫ではない。
25 プログラムの名称は著作権法の保護の対象ではない。
遷移元のプログラムから遷移先のプログラムに対し遷移元のプログラ
ムにおいて入力された情報を引き渡し、遷移先のプログラムにおいてそ
の受信した情報を処理して処理完了画面を表示させることは、PHPに
よりプログラムを記述するに当たり頻用される一般的な手法であり、複
数のプログラムが同一のファイルをURLにより呼び出すことは、表現
5 ではなくプログラミングに関するアイデアにすぎない。どの画面を呼び
出すかという点は、表現の選択の幅の議論とは無関係である。仮に編集
登録の実行を「edit-do2.php」という一つのファイルで行うことができ
る点に創意工夫があるというのであれば、そのような創意工夫はWeb
フレームワークの「dbCtl.php」により実現されている。
10 原告プログラム2⑴によりPDFファイルを表示して文書を印刷する
ことができる点はプログラミングに関するアイデアにすぎない。また、
PDFファイルの作成についても単に仕様を指摘しているにすぎず、プ
ログラムの具体的記述における表現上の創作性は何ら主張されていない。
原告プログラム3⑵は、わずか1行から成るプログラムであり、創
15 作性がないことは明らかである。Ajax通信により通信が成功した場合
には所定の関数を起動させる一方、通信が失敗した場合にはエラーメッ
セージを表示させることはごく一般的に行われている。
共通関数として定義するか否かという点は、表現の選択の幅の議論
とは無関係であるし、直接実行処理文が記述されている部分もPMポー
20 タルの記述を使用しているから創作性が発揮される余地はない。また、
同様に、繰り返し使用されることが予想される処理をまとめて共通プロ
グラムとして定義するか否かという点は、表現の選択の幅の議論とは無
関係であるし、結果として一つのプログラムを呼び出すか複数のプログ
ラムを呼び出すかはいずれにしろごく単純な処理を記述するものである。
25 プログラムをどのフォルダ下に格納するかはプログラミングに関するア
イデアにすぎない。
⑵ 争点②(各原告プログラムの著作権が、在宅医療情報システム株式会社か
ら原告、原告から悠翔会、悠翔会から原告に順次譲渡されたか。)について
(原告の主張)
在宅医療情報システム株式会社は、被告から原告プログラムの納入を受け
5 た時点で原告に各原告プログラムに係る著作権を譲渡し、さらに、原告は、
悠翔会にこれを譲渡した。悠翔会は、平成25年10月1日、原告に対し、
原告プログラムに係る著作権を譲渡した。
(被告の主張)
各原告プログラムの著作権が、在宅医療情報システム株式会社から原告、
10 原告から悠翔会、悠翔会から原告に順次譲渡されたことは何ら立証されてい
ない。すなわち、原告が示す在宅医療情報システム株式会社と原告、原告と
悠翔会の間の契約では、在宅医療情報システム株式会社が著作した著作物の
著作権、原告が著作した著作物の著作権が、それぞれ納入に当たり譲渡され
ることになっているが、各契約が正式に成立したこと、各契約がHOMIS
15 を対象としていること、HOMISのうち在宅医療情報システム株式会社及
び原告が著作した部分は明らかではないし、在宅医療情報システム株式会社
及び原告は各原告プログラムを著作していない。
⑶ 争点③(被告が各原告プログラムを複製、翻案しているか。)について
(原告の主張)
20 被告プログラムは、次のとおり、各原告プログラムに依拠し、各原告プロ
グラムのソースコードを複製又は翻案することにより作成された。被告は、
サービス提供開始に当たりサーバに被告プログラムを蔵置して各原告プログ
ラムを複製、翻案し、定期的にバグの修正やバージョンアップを行って各原
告プログラムを翻案し、仮想マシンによって随時複製している。
25 ア 本件31個の各プログラムについて
被告プログラムは、本件各31個の各プログラムによって実現される機
能と同一又は類似の機能を備えており、データ名、データ名の並び順、デ
ータ名のミス(最高血圧を「bp_l」で、最低血圧を「bp_h」で表示して
いるなど。)、プログラム名、文書タイプなどにおいて、Webフレーム
ワークを使用しているというだけでは説明できない多くの一致点が見られ
5 るところ、本件31個の各プログラムに依拠して作成されたものであるこ
とは明らかである。
イ 原告プログラム4について
原告プログラム4は、ORCAからXMLデータを受信してこれを解析
する機能を有し、同部分は高度な技術を必要とすることから、原告プロ
10 グラム4のXMLデータを解析する部分が被告プログラムに流用された
可能性が高い。すなわち、被告プログラムのソースコードのうち一部は、
原告プログラム4のうちの本件共通箇所と一致しており、本件共通箇所
には創作性が認められる。
本件共通箇所にはオープンソースである「XML_Unserializer.php」が
15 用いられているが、プログラムの作成者は、オープンソースに存在する
バグや不十分な機能を前提に使用する部分や組合せを選択してコーディ
ングを行うのであり、オープンソースのうちどの部分をどのように組み
合わせるかについて創作性が認められる。
また、原告プログラム4は、ORCAから受信するXMLデータを解析
20 し情報を取り出して作成したのであり、規約に定義されていないタグも
ある。
(被告の主張)
ア 本件31個の各プログラムについて
本件31個の各プログラムの著作権は被告が保有している(前記⑴(被
25 告の主張))。
本件31個の各プログラムの大部分は医事文書やカルテの入力画面や編
集画面を生成して表示するものであり、これらのプログラムの記述はウ
ェブブラウザ上で表示される各画面を構成するHTML文書の記述に対
応するところ、HOMISのHTML文書と被告プログラムのHTML
文書は分量が全く異なり内容も多くの点で相違しているから、本件31
5 個の各プログラムとそれに対応する被告プログラムは類似していないこ
とが明らかである。なお、データ名やデータ名の並び順が一致している
のは、所定の書式に従っているからにすぎず、そもそもソースコードの
記述においてどのようなデータ名を付するかは重要な意味を持たない。
イ 原告プログラム4について
10 被告プログラムのうちのXMLデータを解析する部分は、原告プログラ
ム4とは全く別の構成により独自に創作した異なるプログラムであり、
表現形式も全く異なっており、原告プログラム4の本質的な特徴を感得
させるものではない。具体的には、原告プログラム4のXMLデータを
解析する部分は、所定の処理の内容をその処理の順序に従って記述して
15 いるにすぎないのに対し、被告プログラムのうちのXMLデータを解析
する部分は、解析処理の内容をクラスとして記述し、そのクラスのイン
スタンスを生成して機能処理を実行しているのであって、両者の表現形
式は全く異なっている。そして、本件共通箇所は、オープンソースであ
る「XML_Unserializer.php」(クラス)を用いたありふれた表現である
20 か(そのライブラリにバグが存在したとしても、利用者は、ソースコー
ドをライブラリの仕様どおりに記述する必要があり、変数名を除き自動
的にソースコードが決定されるから、作成者の個性が表れる余地はな
い。)、プログラム名又は変数名(タグの定義)という作成者の個性が
表れない部分であり、いずれも創作性がなく、したがって、被告から医
25 療情報システム株式会社に著作権が移転した部分に含まれない。
⑷ 争点④(損害の発生及び額)について
(原告の主張)
被告は、280の診療所に対して被告プログラムを販売しており、原告は、
被告による侵害行為がなければHOMISの使用権を販売することができた
ところ、原告は、少なくとも上記の譲渡等数量280に原告プログラムの単
5 位数量当たりの利益の額である2万円を乗じた560万円の損害をうけた
(著作権法114条1項)。
また、原告が本件訴訟追行に要した弁護士費用のうち50万円は、被告の
不法行為と相当因果関係のある損害として、被告が負担すべきである。
したがって、損害の合計は610万円となる。
10 (被告の主張)
否認ないし争う。
第3 当裁判所の判断
1 認定事実
前提事実、掲記の証拠及び弁論の全趣旨によれば、次の各事実が認められる。
15 ⑴ PMポータルについて
PMポータルは、組織内外のプロジェクトを効率的に管理することを目的
としたウェブアプリケーションのプログラムである。
具体的には、PMポータルは、利用者が、メッセージ、予定、プロジェク
トの進捗状況などを入力してデータベース登録し、これを他の利用者と共有
20 したり、所定の事項を入力、登録して、プロジェクトに関連する報告書や見
積書等の文書を作成し、これらの文書をPDFファイルとして表示したりす
ることができるプログラムであり、プログラミング言語としてPHPと
JavaScript、データベースとしてMySQLが用いられている。
PMポータルは、WebフレームワークとWebアプリケーション部とい
25 う各プログラム群によって構成されている。
Webフレームワークは、ウェブシステムを開発するために頻繁に使用さ
れる基本的な機能、一般的な処理の流れをまとめたプログラム群であり、ウ
ェブ画面表示処理、データベース処理、文書作成処理の各機能をまとめたP
HP言語によって記述されたクラス群と、クラスを利用し様々な機能をまと
めたPHP言語又はJavaScript言語によって記述された関数群から構成され
5 ている。具体的には、例えば、「dbCtl」(平成31年3月25日被告第2
準備書面別紙1)がデータベース処理を実行するクラスとして定義され、
「dispCtl」(同別紙2)がデータ処理結果の画面表示及びエラー画面表示
の処理を実行するクラスとして定義され、「mbfpdf」がPDFファイルを
生成するクラスとして定義されている。
10 Webアプリケーション部は、Webフレームワークに記述されたクラス
を呼び出し、クラスからインスタンスを生成し、生成したインスタンスに値
を設定し、生成したインスタンスを実行して、プロジェクト管理用のウェブ
画面表示処理、データベース処理、文書作成処理を行う実行インスタンス群
から構成されている。各アプリケーションプログラムは、機能ごとにフォル
15 ダにまとめられており、各フォルダには、「config.php」という設定ファイ
ル の ほ か 、 基 本 的 に 、 入 力 ( 「 _input1.php 」 ) 、 入 力 実 行
( 「 _input2.php 」 ) 、 編 集 ( 「 _edit1.php 」 ) 、 編 集 実 行
(「_edit2.php」)、画面・PDF表示(「_pdf1.php」等)の各プログラ
ムファイルが存在する。Webアプリケーション部には、各「config.php」
20 以外に共通処理のためのソースコード(関数、クラス等)は記述されていな
い。
ア PMポータルのうちプロジェクト管理画面を作成、表示するプログラム
においては、入力プログラム(project_input.php)により表示される管
理画面において情報が入力され「登録する」ボタンがクリックされると、
25 入力実行プログラム(project_input2.php、乙65別紙1)によりデータ
ベースへの登録処理が実行され「閉じる」画面を表示する処理が実行され
る。また、編集プログラム(project_edit.php、乙65別紙2)により表
示される編集画面において一度データベースに登録された情報が編集され
「登録する」ボタンがクリックされると、編集実行プログラム
(project_edit2.php)によりデータベースへの登録処理が実行される。
5 このとき、JavaScript関数である「util.js」(乙65別紙4)により必須
項目が空欄になっていないかが確認され空欄がある場合には警告文が表示
される。データベースに登録されたこれらの情報は表示プログラム
(project_detail.php、乙65別紙3)により、所定の方式で画面に表示
される。
10 このうち、入力実行プログラム(project_input2.php)、編集プログラ
ム(project_edit.php)、表示プログラム(project_detail.php)は、いず
れも、初期設定をするプログラム、入力画面に入力された情報又は画面
表示のための情報を登録するプログラム、画面を表示するプログラムの
各部分から構成されている。初期設定をするプログラムの部分において
15 は、Webフレームワークのインスタンス生成、利用者認証処理、リク
エ ス ト デ ー タ の 整 形 、 変 数 の 定 義 な ど の 処 理 を 、 require 文 に よ り
「config.php」を呼び出すなどして行う。入力画面に入力された情報又は
画面表示のための情報を登録するプログラムの部分においては、Web
フレームワークの「dbCtl」のインスタンスによってデータベースにアク
20 セスするほか、変数に値を設定する処理が記述されている。画面を表示
するプログラムの部分は、主に画面を表示するためのHTML文書であ
り、Webフレームワークの「dispCtl」のインスタンスによって同HT
ML文書の内容が画面に表示される。
(本項につき、乙65)
25 イ PMポータルにおいては、「custom_util.php」において、頻繁に使用
される関数がまとめて定義されている。このうち、例えば、
「getMaxRevision」は特定ドキュメントの改版最大値を取得する関数で
あり、「getTypeMember」は任意の区分のプロジェクトメンバーを取得
する関数であり、「getReportConfMember」は報告書確認対象メンバー
を取得する関数であり、「getSmallStatus」はステータスを取得する関
5 数である。(乙66)
ウ PMポータルの「project_index.php」は、プロジェクトのリストを作
成し、画面上に表示するプログラムであり、初期設定をするプログラム、
画面表示のための情報を登録するプログラム、画面を表示するプログラ
ムの各部分から構成されている。初期設定をするプログラムの部分にお
10 いては、Webフレームワークのインスタンス生成、利用者認証処理、
リクエストデータの整形、変数の定義などの処理を、require文により
「config.php」を呼び出すなどして行う。画面表示のための情報を登録す
るプログラムの部分においては、Webフレームワークの「allViews」の
インスタンスを生成し、変数に値を設定する処理が記述されている。画
15 面を表示するプログラムの部分は、主に画面を表示するためのHTML
文書であり、Webフレームワークの「dispCtl」のインスタンスによっ
て同HTML文書の内容が画面に表示される。(乙64)
エ PMポータルのうち営業報告書をコンピュータ上で作成、表示するプロ
グラムにおいては、入力プログラム(contract_report_input1.php、乙6
20 3別紙1)において必要な情報が入力、選択され「送信」ボタンがクリ
ックされるとデータベースへの登録処理が実行される。また、編集プロ
グラム(contract_report_edit1.php、乙63別紙2)において一度デー
タベースに登録された情報が編集され「送信」ボタンがクリックされる
とデータベースへの登録処理が実行される。登録処理が実行される際、
25 JavaScript関数である「util.js」(乙65別紙4)により必須項目が空欄
になっていないかが確認され空欄がある場合には警告文が表示される。
さらに、データベースに登録されたこれらの情報は出力プログラム
(contract_report_pdf.php、乙63別紙3)により、「営業報告書」と
いう所定の書式によりPDF文書として画面に表示される。
これらのプログラムは、初期設定をするプログラム、画面表示のための
5 情報を登録するプログラム、画面を表示するプログラムの各部分から構
成されている。初期設定をするプログラムの部分においては、Webフ
レームワークのインスタンス生成、利用者認証処理、リクエストデータ
の整形、変数の定義などの処理を、require文により「config.php」を呼
び出すなどして行う。画面表示のための情報を登録するプログラムの部
10 分においては、Webフレームワークの「dbCtl」、「getDateList」等
のインスタンスを生成し、データベースにアクセスしたり変数に値を設
定したりする処理が記述されている。入力プログラム及び編集プログラ
ムにおいては、画面を表示するプログラムの部分は、主に画面を表示す
るためのHTML文書であり、Webフレームワークの「dispCtl」のイ
15 ンスタンスによって同HTML文書の内容が画面に表示される。他方、
出力プログラムにおいては、画面を表示するプログラムの部分は、We
bフレームワークの「mbfpdf」(オープンソース)のインスタンスにパ
ラメータが順に設定され、PDF文書が画面に表示される。
(⑴につき、各項に掲記のほか、乙1、8、18、23)
20 ⑵ 各原告プログラムについて
ア HOMISは、クラウド型の在宅医療電子カルテ及びレセプトシステム
を提供するウェブアプリケーションであり、同一法人が在宅医療を提供
する複数の診療所を開設する場合に使用することを想定している。
イ 本件31個の各プログラムを含む㋐部分(Webフレームワーク)及び
25 ㋒部分(電子カルテアプリケーション)は、PMポータルを基盤として開
発された、医療従事者が、モバイル端末を用いて、在宅患者の診療情報を
記録、参照したり、診断書等の文書を作成し、これらの文書をPDFファ
イルとして表示したりすることができるプログラムであり、電子カルテ及
びレセプトシステムを実現するに当たり、Webフレームワークを利用し
ており、プログラミング言語としてPHPとJavaScript、データベースと
5 してMySQLが用いられている。
㋐部分(Webフレームワーク)は、PMポータルのWebフレームワ
ークを用いて作成された。㋐部分は、一部を除きPMポータルのWeb
フレームワークを構成するプログラムファイルから構成され、利用者が
入力した情報は、「dbCtl」クラスによってデータベース処理が実行され、
10 「dispCtl」クラスによってデータ処理結果等の画面表示が実行される。
また、「mbfpdf」クラスによってPDFファイルが生成される。
㋒部分(電子カルテアプリケーション)は、㋐部分すなわちWebフレ
ームワークに記述されたクラスを呼び出し、クラスからインスタンスを
生成し、生成したインスタンスに値を設定し、生成したインスタンスを
15 実行して、電子カルテのウェブ画面表示処理、データベース処理、文書
作成処理を行う実行インスタンス群から構成されている。各アプリケー
ションプログラムは、機能ごとにフォルダにまとめられており、各フォ
ルダには、「config.php」という設定ファイルのほか、基本的に、入力
( 「 _input1.php 」 等 ) 、 入 力 実 行 ( 「 _input-do1.php 」 等 ) 、 編 集
20 (「_edit1.php」等)、編集実行(「_edit-do1.php」等)、画面・PD
F表示(「_pdf1.php」等)の各プログラムファイルが存在する。㋒部分
には、各「config.php」以外に共通処理のためのソースコード(関数、ク
ラス等)は記述されていない。
原告プログラム1⑴から⑶は、入力プログラム(karteinput.php)、
25 編集実行プログラム(karteedit-do.php)と一体として、カルテ画面を
コンピュータ上で作成、表示するプログラムであり、㋒部分に含まれる。
具体的には、入力プログラムにより表示される画面において情報が入力
され「診察完了」ボタンがクリックされると、入力実行プログラム(原
告プログラム1⑶)によりデータベースへの登録処理が実行され「カル
テを登録しました」、「登録した画面を見る」という画面を表示する処
5 理が実行される。また、編集プログラム(原告プログラム1⑴)により
表示される編集画面において一度データベースに登録された情報が編集
され「編集完了」ボタンがクリックされると、編集実行プログラムによ
りデータベースへの登録処理が実行される。データベースに登録された
これらの情報は表示プログラム(原告プログラム1⑵)により、所定の
10 方式で画面に表示される。
原告プログラム1⑴から⑶は、PMポータルのプロジェクト管理画面
を作成、表示するプログラム(前記⑴ア)を参照して記述された。具体
的には、原告プログラム1⑴についてPMポータルの編集プログラム
(project_edit.php)を、原告プログラム1⑵についてPMポータルの
15 表示プログラム(project_detail.php)を、原告プログラム1⑶につい
てPMポータルの入力実行プログラム(project_input2.php)をそれぞ
れ参照して記述された。これらは、いずれも、初期設定をするプログラ
ム、入力画面に入力された情報又は画面表示のための情報を登録するプ
ログラム、画面を表示するプログラムの各部分から構成されている。初
20 期設定をするプログラムの部分においては、Webフレームワークのイ
ンスタンス生成、利用者認証処理、リクエストデータの整形、変数の定
義などの処理を、require文により「pdetail/config.php」を呼び出すな
どして行う。入力画面に入力された情報又は画面表示のための情報を登
録するプログラムの部分においては、Webフレームワークの「dbCtl」
25 のインスタンスによってデータベースにアクセスするほか、変数に値を
設定する処理が記述されている。画面を表示するプログラムの部分は、
主に画面を表示するためのHTML文書であり、Webフレームワーク
の「dispCtl」のインスタンスによって同HTML文書の内容が画面に
表示される。また、原告プログラム1⑴においては、PMポータルの
「util.js」及びオープンソースライブラリである「jQuery」を参照して
5 作成されたJavaScriptの記述により、必須項目が空欄になっていない
かが確認され空欄がある場合には警告文が表示される。原告プログラム
1 ⑵ に お い て は 、 「 jQuery 」 を 参 照 し て 作 成 さ れ た 汎 用 的 な
JavaScriptの記述により動きのある画面が表示される。
その結果、原告プログラム1⑴から⑶の記述のうち初期設定をする
10 プログラム、画面表示のための情報を登録するプログラムの部分には、
PMポータルのソースコードの記述に類似した記述が多数存在する。
(本項につき、乙65)
原告プログラム1⑷は、原告プログラム1⑴から⑶、2⑴、2⑵ア
から⑼ウ等において繰り返し使用される処理を36個の関数として記述
15 しこれらをまとめたファイルであり、㋐部分に含まれる。
原告プログラム1⑷に記述された関数は、PMポータルにおいて頻
繁に使用される処理を関数として記述しこれらをまとめたファイル
(custom_util.php)(前記⑴イ)や、PMポータルのその他の記述や
汎用的な記述を参照して記述された。
20 具体的には、6個の関数は、PMポータルの「custom_util.php」に
記述されている関数をそのまま使用したものであり、22個の関数は、
「custom_util.php」に記述されている関数を参照して作成されたもの
であり(具体的には、PMポータルの「custom_util.php」に記述され
ている「getMaxRevision」や「getTypeMember」が所定のデータベー
25 スから所定の情報を取得する関数の、「getReportConfMember」を配
列から指定の情報を参照し一致不一致を出力する関数の、
「getSmallStatus」がcount関数で繰り返し回数を算出しfor文とif文で
配列データの値により場合分けを繰り返しそれぞれの場合で異なる値を
設定する関数の作成に参照された。)、7個の関数は、PMポータルに
記述されているソースコードを参照して作成されたものであり、2個の
5 関数は、汎用的に記述されている関数を使用したものである。
その内容は、所定のデータベースから所定の情報を取得する関数やP
HPの一般的な記述による画面表示用の関数など、いずれも単純な作業
が記述されたものである。
その結果、原告プログラム1⑷の記述のうち相当部分が、PMポータ
10 ルのソースコードに類似したものとなっている。
(本項につき、甲41、乙66)
原告プログラム2⑴は、原告プログラム2⑵アから2⑼ウによって
作成される医事文書のリストを作成し、画面上に表示するプログラムで
あり、㋒部分に含まれる。
15 原告プログラム2⑴は、PMポータルのプロジェクトのリストを作
成、表示するプログラム、具体的には「project_index.php」(前記⑴
ウ)を参照して記述された。原告プログラム2⑴は、初期設定をするプ
ログラム、画面表示のための情報を登録するプログラム、画面を表示す
るプログラムの各部分から構成されている。初期設定をするプログラム
20 の部分においては、Webフレームワークのインスタンス生成、利用者
認証処理、リクエストデータの整形、変数の定義などの処理を、
require文により「pdetail/config.php」を呼び出すなどして行う。画面
表示のための情報を登録するプログラムの部分においては、Webフレ
ームワークの「allViews」のインスタンスを生成し、変数に値を設定す
25 る処理が記述されている。画面を表示するプログラムの部分は、主に画
面を表示するためのHTML文書であり、Webフレームワークの
「dispCtl」のインスタンスによって同HTML文書の内容が画面に表
示される。
その結果、原告プログラム2⑴の記述のうち初期設定をするプログラ
ム、画面表示のための情報を登録するプログラムの部分には、PMポー
5 タルのソースコードの記述に類似した記述が多数存在する。
(本項につき、乙64)
原告プログラム2⑵アから⑼ウは、医事文書(診断書、主治医意見書、
診療情報提供書(医療機関)及び(居宅)、訪問看護指示書、特別訪問
看護指示書、死亡診断書、マッサージ同意書)をコンピュータ上で作成、
10 表示するプログラムであり、㋒部分に含まれる。
原告プログラム2⑵アから⑼ウは、PMポータルの「営業報告書」を
作成、表示するプログラム(前記⑴エ)を参照して記述された。具体的
には、入力プログラムである原告プログラム2⑵から⑼の各アについて
はPMポータルの「contract_report_input1.php」を参照して記述され、
15 編集プログラムである原告プログラム2⑵から⑼の各イについてはPM
ポータルの「contract_report_edeit1.php」を参照して記述され、印刷
プログラムである原告プログラム2⑵から⑼の各ウについてはPMポー
タルの「contract_report_pdf.php」を参照して記述された。
これらのプログラムは、いずれも、初期設定をするプログラム、画面
20 表示のための情報を登録するプログラム、画面を表示するプログラムの
各部分から構成されている。
初期設定をするプログラムの部分においては、Webフレームワーク
のインスタンス生成、利用者認証処理、リクエストデータの整形、変数
の定義などの処理を、require文により「docs/config.php」を呼び出す
25 などして行う。
画面表示のための情報を登録するプログラムの部分においては、We
bフレームワーク等の関数にデータを代入したり、Webフレームワー
クのインスタンスによりデータベースにアクセスしたり変数に値を設定
したりする処理が記述されている。入力プログラム及び編集プログラム
においては、画面を表示するプログラムの部分は、主に画面を表示する
5 ためのHTML文書であり、Webフレームワークの「dispCtl」のイ
ンスタンスによって同HTML文書の内容が画面に表示される。また、
P M ポ ー タ ル の 「 util.js 」 及 び オ ー プ ン ソ ー ス ラ イ ブ ラ リ で あ る
「jQuery」を参照して作成されたJavaScriptの記述により、必須項目
が空欄になっていないかが確認され空欄がある場合には警告文が表示さ
10 れる。入力プログラム(原告プログラム2⑵から⑼の各ア)においては、
入力終了後、それぞれURLを記述して対応する登録プログラムが呼び
出される。また、編集プログラムについては、編集終了後、原告プログ
ラム2⑵イにおいてはURLを記述して「edit-do1.php」が登録プログ
ラムとして呼び出されるのに対し、原告プログラム2⑶から⑼の各イに
15 おいては、URLを記述していずれも「edit-do2.php」が登録プログラ
ムとして呼び出される。印刷プログラムにおいては、画面を表示するプ
ログラムの部分は、Webフレームワークの「mbfpdf」のインスタン
スにパラメータが順に設定され、PDF文書が画面に表示される。
なお、原告プログラム2⑵アから⑼ウにおいて作成、表示される医事
20 文書について、基本的な様式は通知により定められるなどしていて、そ
の各記載事項は性質上概ね定まっている(厚生労働省保険局医療課長等
通知「診療報酬の算定方法の一部改正に伴う実施上の留意事項につい
て」、本件医療機関及び保険医療療養担当規則22条、23条、様式1、
2)。
25 (本項につき、乙24、26~32、46、63)
原告プログラム3⑴は、繰り返し使用される処理を23個の
JavaScript関数として記述しこれらをまとめたファイルであり、㋐部
分に含まれる。
原告プログラム3⑴に記述された関数のうち、20個はPMポータ
ルに記述されている関数をそのまま使用したものであり、3個は、画面
5 サイズの変更など画面表示処理を汎用的に記述されている関数を参照し
て作成したものである。
その内容は、いずれも、画面表示、入力確認やメニューの設定などの
機能を実現する短い記述である。
(本項につき、争いがない事実のほか、甲45)
10 原告プログラム3⑵は、PHPの開始タグ及び終了タグと空白行のほ
かは、「echo 1;」という、echo文により定数である「1」を送信する
処理を行う1行から成るプログラムであり、㋒部分に含まれる。
原告プログラム3⑵は、通信が確立されているかを確認する機能を実
現するものであり、具体的には、原告プログラム1⑴(編集プログラム)
15 により表示される編集画面において情報が編集され「編集完了」ボタン
がクリックされると(前記 )、原告プログラム3⑴に定義された関数
が参照されAjax通信により原告プログラム3⑵が呼び出され、この通
信に成功した場合には編集データ登録プログラムによりデータベースへ
の登録処理が実行される一方、この通信に失敗した場合には警告が表示
20 される。
(本項につき、甲45)
「variant.php」は、原告プログラム1⑵、2⑴、2⑺ウ、2⑼ウ等
において共通して使用される42個の変数を定義してこれらをまとめた
ファイルであり、㋐部分に含まれる。
25 これらの変数は、画面に表示されるセレクトボックス(プルダウン形
式やリスト形式のメニュー)の選択項目を一つの配列の中で定義したも
のである。
(本項につき、甲45)
「pdetail/config.php」は、原告プログラム1⑵等において共通して
使用される4個の変数を定義してこれらをまとめたファイルであり、ま
5 た、「docs/config.php」は、原告プログラム2⑵ア、2⑶アからウ、
2⑷イ、2⑸アからウ、2⑹アからウ、2⑺アからウ、2⑻ア、イ、2
⑼アからウ等において、繰り返し使用される処理を2個の関数として記
述し、共通して使用される50個の変数を定義してこれらをまとめたフ
ァイルであって、いずれも㋒部分に含まれる。
10 「docs/config.php」において定義された関数の内容は、所定のデー
タベースから所定の情報を取得する関数やPHPの一般的な記述による
画面表示用の関数など、いずれも単純な作業が記述されたものである。
また、「docs/config.php」において定義された変数は、概ね、ラジオ
ボタン又はチェックボックスの選択項目を一つの配列の中で定義したも
15 のである。
(本項につき、甲45)
ウ 原告プログラム4を含む㋓部分(レセプトソフトウェア接続アプリケ
ーション)は、㋒部分と㋔部分の連結を実現するプログラムである。
㋓部分は、クラウド上の㋐から㋒部分及び㋔部分と同一のサーバに存
20 在しており、各部分の間の通信はセキュアである必要がないため非セキ
ュア通信が採用されている。
HOMISにおいてレセプトシステムを使用する方法は、新規に患者
情報を登録する場合には、㋔部分において、患者情報をORCAのデー
タベースに登録した後、この情報を同データベースからXMLデータと
25 して出力し、㋓部分において、これを受信、解析して、HOMISのデ
ータベースに登録するというものであり、また、既に登録されている患
者についての診療情報を登録する場合には、㋒部分において、HOMI
Sのデータベースから診療情報を取得した上、これを直接ORCAのデ
ータベースに登録するというものである。(乙20)
㋓部分に含まれる原告プログラム4は、概ね、XMLデータを解析
5 する部分(1~126行)と患者情報をHOMISのデータベースに登
録する部分(127行~)から成る。
このうちXMLデータを解析する部分は、XML解析処理の内容がそ
の順序に従って記述されている。具体的には、オープンソースであるク
ラス「XML_Unserializer.php」を用いるため、その仕様に基づくイン
10 スタンスを記述し(9~11行)、XML文字列を解析しタグ(用語)
ごとに配列する。なお、ORCAは、異なる施設間で診療情報を電子的
に交換するために、MedXMLコンソーシアム制作担当委員会等によ
り制作された医療情報交換規約(Medical Markup Language;MML)
及びその下位に位置付けられる電子カルテシステムとレセプトシステム
15 の間 で診 療情 報 を電 子的 に交 換す る 際の 仕様 ( Clinical Accounting
InforMation;CLAIM)を用いており、原告プログラム4のXML
データを解析する部分において用いられているタグ(用語)も、MML
及びCLAIMにおいて定義されたものである。
また、患者情報をHOMISのデータベースに登録する部分は、We
20 bフレームワークの「dbCtl.php」を呼び出し、クラスからインスタン
スを生成し、生成したインスタンスにデータを設定し、生成したインス
タンスを実行する。
(本項につき、甲31、乙56~62、弁論の全趣旨)
被告は、PMポータルのWebフレームワークに含まれるクラス
25 「dbCtl」及び「XML_Unserializer」を用いた部分を除き、㋓部分を
新たに作成した。したがって、原告プログラム4を含む㋓部分
(「dbCtl」及び「XML_Unserializer」を用いた部分を除く。)の著
作権は、本件契約に基づき、納入と同時に、被告から在宅医療情報シス
テム株式会社に譲渡された。
⑶ 被告プログラムについて
5 ア 被告プログラムは、クラウド型の在宅医療電子カルテ及びレセプトシス
テムを提供するウェブアプリケーションであり、主に、単一の診療所で
の利用を想定している。
被告は、被告プログラムをサーバに蔵置して管理し、利用者は、ウェブ
ブラウザやプログラムインターフェースを通じて、被告プログラムによ
10 って提供されるサービスを利用する。
イ 被告プログラムのうちカルテ入力支援機能、医事文書作成・管理機能を
担う部分は、Webフレームワークと、電子カルテアプリケーションに
よって成り、被告は、これらを、利用者別データベースと共にサーバに
蔵置している。(乙21、弁論の全趣旨)
15 ウ 被告プログラムのうちレセプトソフトウェア接続アプリケーション(モ
バカルORCA-IF)は、被告プログラムにおいて、電子カルテアプ
リケーションとORCAレセプトソフトウェアの連結を実現するプログ
ラムである。
被告プログラムにおいては、Webフレームワーク、電子カルテアプリ
20 ケーションがクラウド上に、レセプトソフトウェア接続アプリケーショ
ン及びORCAレセプトソフトウェアが顧客の院内サーバに存在する。
その結果、レセプトソフトウェア接続アプリケーションは、暗号化通信
と電子証明書による送信元認証を実施しているほか、クラウド上のデー
タベースは、厚生労働省、総務省及び経済産業省が定めるセキュリティ
25 ガイドラインに準拠するため、医療機関ごとに独立して複数構築してい
る。
被告プログラムにおいてレセプトシステムを使用する方法は、新規に患
者情報を登録する場合には、ORCAレセプトソフトウェアにおいて、
患者情報をORCAのデータベースに登録した後、この情報を同データ
ベースからXMLデータとして出力し、レセプトソフトウェア接続アプ
5 リケーションにおいて、これを受信、暗号化して、クラウド上の電子カ
ルテアプリケーションに送信し、電子カルテアプリケーションにおいて、
当該医療機関に係るデータベースを選択した上、データを解析し、同デ
ータベースに登録するというものであり、また、既に登録されている患
者についての診療情報を登録する場合には、レセプトソフトウェア接続
10 アプリケーションにおいて、電子カルテアプリケーションに診療情報の
リクエストを送信し、電子カルテアプリケーションにおいて、データベ
ースを選択して診療情報を取得した上、XMLデータとして出力し、レ
セプトソフトウェア接続アプリケーションにおいて、これを受信し、O
RCAレセプトソフトウェアに転送して、ORCAのデータベースにこ
15 れを登録するというものである。(乙21)
このうち、XMLデータを解析する部分は、XML解析処理の内容をク
ラス「MMLParser.php」として定義し(乙47(平成30年1月頃のも
の)においては19~638行)、インスタンスを生成した上(同95
1行)、インスタンスを実行する(同952行)という形式で記述され
20 ている。具体的には、「XML_Unserializer.php」を用いるため、その仕
様に基づくインスタンスを記述し(乙47においては42~46行)、
XML文字列を解析しタグ(用語)ごとに配列する。ここにおいて用い
られているタグ(用語)は、MML及びCLAIMにおいて定義された
ものである。(乙47、55、60、62)
25 2 争点①(本件31個の各プログラムの各著作権が被告から在宅医療情報シス
テム株式会社に譲渡されたか。)について
⑴ 本件31個の各プログラムの創作性について
ア プログラムは、「電子計算機を機能させて一の結果を得ることができる
ようにこれに対する指令を組み合わせたものとして表現したもの」(著作
権法2条1項10号の2)であり、所定のプログラム言語、規約および解
5 法に制約されつつ、コンピュータに対する指令をどのように表現するか、
その指令の表現をどのように組み合わせ、どのような表現順序とするかな
どについて、著作権法により保護されるべき作成者の個性が表れることに
なる。
したがって、プログラムに著作物性があるというためには、指令の表現
10 自体、その指令の表現の組合せ、その表現順序からなるプログラムの全
体に選択の幅があり、かつ、それがありふれた表現ではなく、作成者の
個性、すなわち表現上の創作性が表れていることを要する。
イ 原告プログラム1⑷、3⑴を含む㋐部分(Webフレームワーク)及び
原告プログラム1⑴から⑶、2⑴から⑼ウ、3⑵を含む㋒部分(電子カル
15 テアプリケーション)は、Webフレームワークを用いたPMポータルを
基盤として開発され、電子カルテ及びレセプトシステムを実現するに当た
り、Webフレームワークを利用している(前記1⑵)。このことに起因
して、㋐及び㋒部分のソースコードは、Webフレームワークの定めるル
ールに従って記述される必要があった(前記第2の1⑸イ)。
20 具体的には、㋐部分の多くは、PMポータルのWebフレームワークを
構成するプログラムファイルから構成されている(前記1⑴、⑵)。
また、㋒部分は、PMポータルのWebアプリケーション部を参照して
作成され、㋐部分すなわちWebフレームワークに記述されたクラスを
呼び出し、クラスからインスタンスを生成し、生成したインスタンスに
25 値を設定し、生成したインスタンスを実行して、電子カルテのウェブ画
面表示処理、データベース処理、文書作成処理を行う実行インスタンス
群から構成されており、共通処理のためのソースコード(関数、クラス
等)は基本的には記述されていない。電子カルテにおいては所定の様式
に合わせた表示項目が多いことから、これに応じて同じ内容の処理が繰
り返されているものの、データの処理や画面の表示などの中核的な機能
5 は㋐部分を参照して実行するため、㋒部分の内容は自由度が制約され、
基本的な命令文を列挙して、変数に値を設定する処理や画面を表示する
ためのHTML文書が記述された部分が多くを占めている。(以上につ
き、前記1⑴、⑵、乙9~18、63~67)
ウ 以上を前提に、原告が本件31個の各プログラムの創作的表現であると
10 主張する各点(前記2⑴(原告の主張)イ)について検討する。
電子カルテに必要な機能を抽出、分類しているという点(前記2⑴
(原告の主張)イ )について
本件31個の各プログラムを含む㋐及び㋒部分は、PMポータルを
基盤として開発された、医療従事者が、モバイル端末を用いて、在宅患
15 者の診療情報を記録、参照したり、診断書等の文書を作成し、これらの
文書をPDFファイルとして表示したりすることができるプログラムで
ある(前記1⑵イ)のに対し、PMポータルは、組織内外のプロジェク
トを効率的に管理することを目的としたウェブアプリケーションである
(同⑴ア)。したがって、㋐及び㋒部分の作成に当たっては、PMポー
20 タルに様々な修正が施されている。もっとも、㋐及び㋒部分は、電子カ
ルテ及びレセプトシステムを実現するに当たり、Webフレームワーク
を利用しているから、㋐部分の多くはPMポータルのWebフレームワ
ークを構成するプログラムファイルから構成されている。また、㋒部分
は、PMポータルのWebアプリケーション部を参照して作成され、デ
25 ータの処理や画面の表示などの中核的な機能は㋐部分を参照して実行す
るものであるため、その内容は、自由度が制約されるものであり、基本
的な命令文を列挙して、変数に値を代入する処理や画面を表示するため
のHTML文書が記述された部分が多くを占めている(前記イ)。
また、原告プログラム2⑵アから⑼ウにおいて作成、表示される医
事文書の基本的な様式は通知により定められるなどしていて、各記載事
5 項は性質上概ね定まっている(前記1⑵イ )から、上記各プログラム
において変数に値を設定する処理や画面を表示するためのHTML文書
を記述するに当たっても個性を発揮する余地が乏しい。
電子カルテに必要な機能を抽出、分類しているという原告主張の点は
機能をいうものでプログラムの創作性を直接述べるものとはいえず、上
10 記のような㋐及び㋒部分の特性に照らすと、電子カルテシステムに適用
するために、PMポータルを修正し新たに作成した部分があるからとい
って、そのことが直ちに本件31個の各プログラムの表現上の創作性に
つながるとはいえない。
関数、変数、データ定義の共通化の仕方の特徴がソースコードの記
15 述に表われているという点(前記2⑴(原告の主張)イ )について
a 原告プログラム1⑷は、原告プログラム1⑴から⑶、2⑴、2⑵ア
から⑼ウ等において繰り返し使用される処理を36個の関数として記
述しこれらをまとめたファイルである(前記1⑵イ )。繰り返し記
述することが予想される命令文の組合せをまとめて関数として定義し、
20 関数名を記述してあらかじめ定義された関数を呼び出す方法により複
数のプログラムの動作を実現させることは一般的に行われていること
である(前記第2の1⑸ウ)。そして、原告プログラム1⑷に記述さ
れた各関数は、PMポータルにおいて頻繁に使用される処理を関数と
して記述しこれらをまとめたファイルや、PMポータルのその他の記
25 述、汎用的な記述を参照して記述され、その内容は、所定のデータベ
ースから所定の情報を取得する関数やPHPの一般的な記述による画
面表示用の関数など、いずれも単純な作業が記述されたものであって
(前記1⑵イ )、表現の幅は狭い。これらによれば、原告プログラ
ム1⑷の記述は、繰り返し記述される命令文の組合せを一般的な共通
化の手法によってそのまま表現したものであって、その記述をするこ
5 とやその内容はありふれたといえるものである。
b 「variant.php」は、原告プログラム1⑵、2⑴、2⑺ウ、2⑼ウ
等において共通して使用される42個の変数を定義してこれらをまと
めたファイルである(前記1⑵イ )。もっとも、「variant.php」
は、本件31個の各プログラムに含まれておらず、それらの創作性の
10 有無が本件31個の各プログラムの創作性に直接つながるものではな
い。
そして、アプリケーション全体において共通して使用される変数を
まとめて定義して共通の定義ファイルとすることはプログラムの作成、
変更の効率化を図るために一般的に行われていることであるといえ、
15 原告プログラム1⑵、2⑴、2⑺ウ、2⑼ウにおいて、他のプログラ
ムファイルを呼び出したり、共通の定義ファイルにおいて定義された
変数を使用して定義された変数の名称がソースコードに書き表された
りしたということのみをもって、直ちにこれらについてプログラムの
表現上の創作性が認められるものではない。なお、「variant.php」
20 において定義された各変数は、画面に表示されるセレクトボックス
(プルダウン形式やリスト形式のメニュー)の選択項目を一つの配列
の中で定義したものであり(同前)、そのような変数の定義方法は、
PMポータルにおいても採用されていた(乙75)。変数
「$GENDER_ARY」において「性別」の選択項目である「男」及び
25 「女」のデータを「MALE」及び「FEMALE」としたという原告が
指摘する例について、データの名称は電子計算機に対する指令を組み
合わせたものとして表現したものとはいえない。
c 原告プログラム3⑴は、繰り返し使用される処理を23個の
JavaScript関数として記述しこれらをまとめたファイルである(前
記1⑵イ )。繰り返し記述することが予想される命令文の組合せを
5 まとめて関数として定義し、関数名を記述してあらかじめ定義された
関数を呼び出す方法により複数のプログラムの動作を実現させること
は一般的に行われている(前記第2の1⑸ウ)。また、原告プログラ
ム3⑴に記述された関数のうち、20個はPMポータルに記述されて
いる関数をそのまま使用したものであり、3個は、画面サイズ変更な
10 ど画面表示処理を汎用的に記述されている関数を参照して作成したも
ので、いずれも、画面表示、入力確認やメニューの設定などの機能を
実現する短い記述であって(前記1⑵イ )、表現の幅は狭い。した
がって、原告プログラム3⑴の記述は、繰り返し記述される命令文の
組合せを一般的な共通化の手法によってそのまま表現したものであっ
15 て、その記述をすることやその内容はありふれたといえるものである。
d 「pdetail/config.php」は、原告プログラム1⑵等において共通し
て使用される4個の変数を定義してこれらをまとめたファイルであり、
また、「docs/config.php」は、原告プログラム2⑵ア、2⑶アから
ウ、2⑷イ、2⑸アからウ、2⑹アからウ、2⑺アからウ、2⑻ア、
20 イ、2⑼アからウ等において、繰り返し使用される処理を2個の関数
として記述し、共通して使用される50個の変数を定義してこれらを
まとめたファイルである(前記1⑵イ )。もっとも、
「pdetail/config.php」及び「docs/config.php」は本件31個の各プ
ログラムに含まれておらず、それらの創作性の有無が本件31個の各
25 プログラムの創作性に直接つながるものではない。
そして、繰り返し記述することが予想される命令文の組合せをまと
めて関数として定義し、関数名を記述してあらかじめ定義された関数
を呼び出す方法により複数のプログラムの動作を実現させることは一
般的に行われていることであり(前記第2の1⑸ウ)、アプリケーシ
ョン全体において共通して使用される変数をまとめて定義して共通の
5 定義ファイルとすることはプログラムの作成、変更の効率化を図るた
めに一般的に行われていることであるといえ、原告プログラム1⑵、
2⑵、2⑵ア、2⑶アからウ、2⑷イ、2⑸アからウ、2⑹アからウ、
2⑺アからウ、2⑻ア、イ、2⑼からウにおいて、他のプログラムフ
ァイルや関数を呼び出したり、共通の定義ファイルにおいて定義され
10 た変数を使用して定義された変数の名称がソースコードに書き表され
たりしたということのみをもって、直ちにこれらについてプログラム
の表現上の創作性が認められるものではない。
なお、「docs/config.php」において定義された関数は、所定のデ
ータベースから所定の情報を取得する関数やPHPの一般的な記述に
15 よる画面表示用の関数など、いずれも単純な作業を記述したものであ
って(前記1⑵イ )、表現の幅は狭く、「docs/config.php」のう
ち関数を定義した部分の記述は、繰り返し記述される命令文の組合せ
を一般的な共通化の手法によってそのまま表現したありふれたものと
いえる。また、「docs/config.php」において定義された変数は、概
20 ね、ラジオボタン又はチェックボックスの選択項目を一つの配列の中
で定義したものである(同前)ところ、そのような変数の定義方法は、
PMポータルにおいても採用されていた(乙65)。
作成する医事文書の拡張性を高めた点がソースコードの記述に表わ
れているという点(前記2⑴(原告の主張)イ )について
25 HOMIS②部分において、新たに作成する医事文書の種類が増えた
場合に、プログラム名に新しく数字を割り当てて、文書ごとに、原告プ
ログラム2⑵アから⑼ウと同様の入力、編集、印刷プログラムを
「model/docs」というファイルに追加することができるとしても、こ
のようなシステムの拡張性をいう点はプログラムによって実現される機
能をいうものであり、プログラムの名称やファイルの格納場所も、これ
5 を電子計算機に対する指令を組み合わせたものとして表現したものとは
いえず、原告の主張によって具体的なプログラムの創作性を認めるには
足りない。
そして、原告プログラム2⑵から⑼の各ア及びイにおいては、入力又
は編集の終了後、URLを記述することにより登録プログラムを呼び出
10 して実現している(前記1⑵イ )。URLを記述してインターネット
上に存在するプログラムやデータの場所を指定してこれらを呼び出す方
法により複数のプログラムの動作を実現させることは一般的に行われて
いるものである(前記第2の1⑸ウ)し、複数のプログラムが同一のプ
ログラム(例えば「edit-do2.php」)を呼び出すことについても同様と
15 いえる。したがって、上記記述の指令自体はありふれたといえるもので
あり、また、その記述をすることもありふれたものといえる。
また、原告プログラム2⑴により表示される画面においてPDFファ
イルを端末に表示することができるという点や、原告プログラム2⑵ウ
ではPDFファイルの作成に失敗した場合にはエラーメッセージが表示
20 できるのに対し、原告プログラム2⑶から⑼の各ウではオープンソース
をそのまま使用したことによりこのような表示がされないという点は、
プログラムによって実現される機能ないしプログラムの仕様をいうもの
であり、原告の主張によって具体的なプログラムの創作性を認めるには
足りない。
25 モバイル環境において電波状況によってカルテの保存ができない状
況を回避するため通信状況を確認するようにした点がソースコードに
表われているという点(前記2⑴(原告の主張)イ )について
原告プログラム3⑵は、原告プログラム1⑴において、原告プログ
ラム3⑴に定義された関数が参照されAjax通信により呼び出されるこ
とにより、通信が確立されているかを確認する機能を実現する(前記
5 1⑵イ )。関数名を記述してあらかじめ定義された関数を呼び出し
たり、「$.ajax」等記述して他のプログラムファイルを呼び出したりし
て、複数のプログラムの動作を実現させることは一般的に行われてい
る(前記第2の1⑸ウ)。そして、原告プログラム3⑵は、「echo 1;」
という、echo文により定数である「1」を送信する処理を行う1行か
10 ら成るプログラムであり(前記1⑵イ )、極めて簡単な内容を一つ
の命令のみのごく短い構文で記述したありふれた表現であって、原告
プログラム3⑵に創作性があるとは認められない。
関数やプログラムの参照の仕方等の特徴がソースコードに表われて
いるという点(前記2⑴(原告の主張)イ )について
15 原告プログラム1⑴から⑶、2⑴、2⑵から⑼の各アからウは、U
RL、「require」や「$.ajax」等を記述して他のプログラムファイル
を呼び出したり、関数名を記述してあらかじめ定義された関数を呼び
出したりしている(甲29の1から3、30の1から9の3、45)
が、これらの方法により複数のプログラムの動作を実現させることが
20 一般的に行われている(前記第2の1⑸ウ)。原告プログラム1⑴か
ら⑶、2⑴、2⑵から⑼の各アからウにおいて、上記の記述をするこ
とはありふれたといえるものであり、そのことから直ちにプログラム
の表現上の創作性が認められるものではない。
エ 以上のように、PMポータルを基盤としPMポータルのWebフレーム
25 ワークを用いて作成されたことに起因して、㋐部分の多くはPMポータル
のWebフレームワークを構成するプログラムファイルから構成されてお
り、㋒部分は、PMポータルのWebアプリケーション部を参照して作成
され、データの処理や画面の表示などの中核的な機能は㋐部分を参照して
実行するため、その内容は、自由度が制約され、基本的な命令文を列挙し
て、変数にデータを代入する処理や画面を表示するためのHTML文書が
5 記述された部分が多くを占めていること(前記第2の1⑸イ、前記イ)、
作成、表示される医事文書の基本的な様式も通知により定められるなどし
ていることから、各プログラムにおいて変数に値を設定する処理や画面を
表示するためのHTML文書を記述するに当たっても個性を発揮する余地
が乏しい。これらの㋐及び㋒部分の特性から、電子カルテシステムに適用
10 するために、PMポータルを修正し新たに作成した部分があるからといっ
て、そのことが直ちに本件31個の各プログラムの表現上の創作性につな
がるとはいえない(前記ウ )。そして、原告は、本件各31個の各プロ
グラムがそれぞれ著作物であり、それらに創作性があると主張するところ、
原告が本件31個の各プログラムの創作的表現であると主張する具体的な
15 各点について、本件31個の各プログラムを含む㋐及び㋒部分が上記のと
おりの特性を有する部分でありそこにおけるプログラムもその特性の下に
あるものであることにも関係し、原告が創作性があるとして主張する具体
的な記述等はいずれもありふれたといえるものなどであって、それらに独
自に著作物といえる程度の表現上の創作性を認めるに足りない(前記ウ
20 ~ )。
以上のとおり、本件31個の各プログラムにPMポータルを離れた独自
の創作性があるとは認めるに足りない。
⑵ 小括
本件契約においては、被告が納入物に関して著作した著作物に係る著作権
25 は、被告が従前から著作権を保有する著作物を納入物に組み込んだ場合の当
該組み込まれた著作物に係る著作権を除き、納入物の所有権移転と同時に在
宅医療情報システム株式会社に移転することとされている(前記第2の1⑷
イ)ところ、本件31個の各プログラムにPMポータルを離れた独自の創作
性があると認めるに足りない(前記⑴)から、本件31個の各プログラムに
ついての各著作権が被告から在宅医療情報システム株式会社に譲渡されたと
5 も認められない。
3 争点③(被告が原告プログラムを複製、翻案しているか。)について
原告プログラム4と被告プログラムにおいて共通する本件共通箇所は、原告
プログラム4においては、㋔部分に用いられているORCAから受信したXM
Lデータを解析する部分の一部である。
10 本件共通箇所のうち、オープンソースである「XML_Unserializer.php」を
用いた部分は、その仕様に基づくインスタンスを記述したものであり(前記1
⑵ウ )、その記述例もインターネットウェブサイトにおいて公開されている
ものであって(乙56)、ありふれた表現であって、創作性が認められない。
また、本件共通箇所のその余の部分は、異なる施設間で診療情報を電子的に
15 交換するために制作された規約であるMML及びCLAIMにおいて定義され
たタグ(用語)(前記1⑵ウ )を、「XML_Unserializer.php」の仕様に従
って記述した(乙62)ありふれた表現であって、創作性が認められない。
以上によれば、本件共通箇所に創作性があると認めるに足りない。
したがって、被告プログラムが原告プログラム4と共通するのは、表現上の
20 創作性がない部分においてであり、その余を判断するまでもなく、被告が、原
告プログラム4に係る原告の複製権、翻案権を侵害したと認めることはできな
い。
第4 結論
以上によれば、各原告プログラムのうち、本件31個の各プログラムについ
25 ての各著作権が被告から在宅医療情報システム株式会社に譲渡されたとは認め
られず(前記第3の2)、原告プログラム4に係る原告の複製権、翻案権を被
告が侵害したと認めることはできない(前記第3の3)から、原告の各請求は
いずれも理由がなく、棄却すべきである。
よって、主文のとおり判決する。
東京地方裁判所民事第46部
裁判長裁判官 柴 田 義 明
裁判官 佐 伯 良 子
裁判官 仲 田 憲 史
別紙
目録
省略
最新の判決一覧に戻る