【事件の表示】
平成　２年特許願第　６６８４９号「構文チェッカ」拒絶査定に対する審判事件［　平成　３年１１月２８日出願公開、特開平　３−２６８０２９                        ］について、次のとおり審決する。
【結　論】
　本件審判の請求は、成り立たない。
【理　由】
Ａ　本願発明
１　本件審判請求に係る特許願は平成２年３月１９日になされており、明細書及び図面の記載からみて、
　その特許請求の範囲の欄の請求項１の記載に係る発明（以下、「本願発明」という）の目的、効果は、「ソースプログラムの構文チェックを短時間で効率良く行」うことであり、
　本願発明の構成は、
　構文チェックが不要である構文が追加されたソースプログラムの構文チェックを行う構文チェッカにおいて、
　前記ソースプログラムの上記追加部分以外のステートメントに対してのみ字句解析を行い、その字句解析によって得られたトークン列を出力する字句解析手段と、
　該字句解析手段から出力されるトークン列と予め前記プログラミング言語に対して定められた構文規則とに基づいて、前記ソースプログラムの構文誤りを検出する構文解析手段と、
　を有することを特徴とする構文チェッカ、
である。
２　特許請求の範囲の欄には、「予め定められたプログラミング言語の仕様に本来ない構文で機能追加がなされたソースプログラム‥‥‥（中略）‥‥‥上記機能追加部分以外のステートメント‥‥‥（中略）‥‥‥を特徴とする構文チェッカ」と記載されている。
　しかし、実施例の説明では、前記ソースプログラム中のステートメントが、上記機能追加部分であるか否かは、機能追加開始宣言から機能追加終了宣言までの間にあるか否かでしか判断しておらず、「機能追加部分」であるか否か、まして「予め定められたプログラミング言語の仕様に本来ない構文で機能追加がなされた」か否かは判断していない。
　即ち、本願発明の「構文チェッカ」は、機能追加開始宣言から機能追加終了宣言までの間にあるか否かにより、構文チェックの要不要のみを判断しているに過ぎないので、上記のように認定した。
Ｂ　刊行物記載の発明
　原査定の理由において提示された、特開昭５７−１０６９５９号公報（昭和５７年７月３日特許庁発行、以下「刊行物１」という）には、
　「ソース言語ファイル５」及び構文チェックが不要である構文が含まれる「第ｉの変換言語ファイル６−ｉ」（ｉ＝１・・・ｎ）の構文チェックを行う構文チェッカにおいて、
　前記「第ｉの変換言語ファイル６−ｉ」の構文チェック不要部分（「スキップ開始指示コード」から「スキップ終了指示コード」まで）以外のステートメントに対してのみ字句解析を行い、その字句解析によって得られたトークン列を出力する字句解析手段と、
　該字句解析手段から出力されるトークン列と予め前記プログラミング言語に対して定められた構文規則とに基づいて、前記「ソース言語ファイル５」及び「第ｉの変換言語ファイル６−ｉ」の構文誤りを検出する構文解析手段と、
　を有する構文チェッカ、
であって、
　ソースプログラムの構文チェックを短時間で効率良く行うことができる、
という発明が記載されている。
　なお、刊行物１には、前記字句解析手段及び前記構文解析手段について明記されていないが、ステートメントを解釈しコンパイルのエラーをチェックする事が明記されているので、前記両手段が設けられていることは自明である。
　ここで、上記発明を本願発明の用語で表現する。
　上記発明の「言語ファイル」は本願発明の「プログラム」と等価であり、
（上記発明の「オブジェクト言語ファイル７」は本願発明の「オブジェクトプログラム」と等価であり）
　上記発明の「第ｉの変換言語ファイル６−ｉ」は、その構文がチェックされる対象であり、よりオブジェクトプログラムに近い下位の『第ｉ＋１の変換言語ファイル６−「ｉ＋１」』よりも、よりソースプログラムに近い上位の変換言語ファイルである点で、本願発明の「ソースプログラム」と等価であることを考慮すると、
　刊行物１には、
　ソースプログラム及び構文チェックが不要である構文が追加された変換プログラムの構文チェックを行う構文チェッカにおいて、
　前記変換プログラムの上記追加部分以外のステートメントに対してのみ字句解析を行い、その字句解析によって得られたトークン列を出力する字句解析手段と、
　該字句解析手段から出力されるトークン列と予め前記プログラミング言語に対して定められた構文規則とに基づいて、前記ソースプログラムの構文誤りを検出する構文解析手段と、
　を有する構文チェッカ、
であって、
　ソースプログラムの構文チェックを短時間で効率良く行うことができる、
という発明（以下、「第１の発明」という）が記載されている。
Ｃ　本願発明の創作可能性
　本願発明（以下、「前者」という）と刊行物１に記載された第１の発明（以下、「後者」という）とを比較すると、
　両者が、
　ソースプログラムの構文チェックを短時間で効率良く行うことを目的、効果とし、
　構文チェックが不要である構文が追加されたプログラムの構文チェックを行う構文チェッカにおいて、
　前記プログラムの上記追加部分以外のステートメントに対してのみ字句解析を行い、その字句解析によって得られたトークン列を出力する字句解析手段と、
　該字句解析手段から出力されるトークン列と予め前記プログラミング言語に対して定められた構文規則とに基づいて、前記ソースプログラムの構文誤りを検出する構文解析手段と、
　を有する構文チェッカ、
を構成要件としている点で一致しており、
(1)　構文チェックを行う対象である前記構文チェックが不要である構文が追加されたプログラムとして、前者が、ソースプログラムを選択しているのに対して、後者が前記変換プログラムを選択している点、
で相違している。
　従って、本願発明は、刊行物１に記載された第１の発明において、(1)′構文チェックを行う対象である前記構文チェックが不要である構文が追加されたプログラムとして、ソースプログラムを選択することにより、発明をすることができたものである。
Ｄ　本願発明の創作容易性
　上記（１）′について検討する。
　ソースプログラム中に構文チェックの不要な構文・ステートメントが含まれたソースプログラムは、例えば特開昭５８−１６９６３７号公報（第１図の従来例参照）、特開昭６３−２６２７２６号公報、特開平２−７１３０号公報に記載されているように周知であるので、
　刊行物１に記載された第１の発明において、
　構文チェックを行う対象である前記構文チェックが不要である構文が追加されたプログラムとして、ソースプログラムを選択して本願発明のようにすることは、当業者が容易になし得たことである。
　要するに、処理する必要のない部分を含む処理において、該不要処理部分を処理しないようにすることは、常識的事項である。
Ｅ　出願人の主張、その他の検討
　出願人の平成９年１月２９日付け審判請求理由補充書の６．請求の理由（２）、（３）における主張について検討する。
１　出願人は「本願発明は、プレコンパイルの処理対象となる部分（機能追加開始宣言から機能追加終了宣言部分まで）を、逐一プレコンパイルを使用せずに、構文チェックを行うものです。」と主張している（第１頁第１３行〜第１５行）。
　しかし、本願発明の「構文チェッカ」は、プレコンパイルの処理対象となる部分の構文チェックを行わないので、出願人の前記の主張は事実に反する。
２　出願人は「更に、そもそも、構文チェックというものは、チェック対象全体をチェックするものであって、部分的にチェックしないようにするという発想は、従来無かったものです。」と主張している（第３頁第１１行〜第１３行）。
　しかし、既に述べたように刊行物１にも、またＤに於いて例示した特開昭５８−１６９６３７号公報（第１図の従来例参照）、特開昭６３−２６２７２６号公報、特開平２−７１３０号公報にも、構文チェックにおいて、チェック対象全体をチェックせずに、部分的にチェックするという発想が記載されており、出願人の前記の主張は事実に反する。
３　従つて、出願人の前記の主張は何れも失当である。
Ｆ　結び
　以上Ａ〜Ｅ項を総合して判断すると、本願明細書の特許請求の範囲の欄の請求項１の載に係る発明は、刊行物１に記載された第１の発明に基づいて当業者が容易に発明をすることができたものであるので、特許法第２９条第２項の規定により、本件審判請求人である本願出願人は本願明細書の特許請求の範囲の欄の請求項１の記載に係る発明について特許を受けることができない。
  よって、結論の通り審決する。