校正支援API

日本語の文章の、言葉の誤用や不適切な表現などを確認できるAPIです。

リクエスト

リクエストURL:https://jlp.yahooapis.jp/KouseiService/V1/kousei

GETではクエリの最大長を超える恐れがあるため、対象のテキストが長くなるならばPOSTでリクエストします。Yahoo!デベロッパーネットワーク:WebAPIの使い方(POSTリクエスト) - Yahoo!デベロッパーネットワーク

パラメータ

レスポンス

全体
フィールド 説明
ResultSet すべての指摘結果
Result 個々の指摘結果
個々の項目
フィールド 説明
StartPos 対象文字列の開始位置 (先頭からの文字数)
Length 対象文字列の長さ (対象文字数)
Surface 対象文字列の表記
ShitekiWord 言い換え候補文字列

(複数の候補が返されるときには、間に読点がはさまれる)

ShitekiInfo 指摘内容を表す文字列

指摘内容 (ShitekiInfo)

グループ 番号 指摘内容 文字列に対する指摘の例
表記、表現の間違いや不適切な表現の指摘 1 誤変換 人事異同 → 人事異動
2 誤用 煙に巻く → けむに巻く
3 使用注意 外人墓地 → 外国人墓地
4 不快語 (使用不適切な語や隠語) がんをつける → にらむ
5 機種依存または拡張文字

(EUC表示不可の場合も指摘される)

○付き数字、一部の旧字体など
6 外国地名 モルジブ → モルディブ
7 固有名詞 ヤフーブログ → Yahoo!ブログ
8 人名 ベートーヴェン → ベートーベン
9 ら抜き 食べれる → 食べられる
わかりやすい表記にするための指摘 10 当て字 出鱈目、振り仮名
11 表外漢字あり 灯籠 → 灯●
12 用字

(日本新聞協会「新聞用語集」、共同通信社「記者ハンドブック」参考)

曖昧 → あいまい
文章をよりよくするための指摘 13 用語言い換え (商標など) セロテープ → セロハンテープ
14 二重否定 聞かなくはない
15 助詞不足の可能性あり 学校行く
16 冗長表現 ことができます
17 略語 ADSL → 非対称デジタル加入者線 (ADSL)

サンプルコード

$sentence = '遙か彼方に小形飛行機が見える。';

$url = 'https://jlp.yahooapis.jp/KouseiService/V1/kousei'
    .'?appid='.APPID
    .'&sentence='.urlencode( $sentence )
    .'&filter_group='
    .'&no_filter=';

$xml = simplexml_load_file( $url );
print_r( $xml );

結果

SimpleXMLElement Object
(
    [Result] => Array
        (
            [0] => SimpleXMLElement Object
                (
                    [StartPos] => 0
                    [Length] => 2
                    [Surface] => 遙か
                    [ShitekiWord] => ●か
                    [ShitekiInfo] => 表外漢字あり
                )

            [1] => SimpleXMLElement Object
                (
                    [StartPos] => 2
                    [Length] => 2
                    [Surface] => 彼方
                    [ShitekiWord] => 彼方(かなた)
                    [ShitekiInfo] => 用字
                )

            [2] => SimpleXMLElement Object
                (
                    [StartPos] => 5
                    [Length] => 5
                    [Surface] => 小形飛行機
                    [ShitekiWord] => 小型飛行機
                    [ShitekiInfo] => 誤変換
                )

        )

)

これはXMLでは、次のような内容です。

<?xml version="1.0" encoding="UTF-8"?>
<ResultSet xmlns="urn:yahoo:jp:jlp:KouseiService" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:yahoo:jp:jlp:KouseiService http://jlp.yahooapis.jp/KouseiService/V1/kousei.xsd">
  <Result>
    <StartPos>0</StartPos>
    <Length>2</Length>
    <Surface>遙か</Surface>
    <ShitekiWord>●か</ShitekiWord>
    <ShitekiInfo>表外漢字あり</ShitekiInfo>
  </Result>
  <Result>
    <StartPos>2</StartPos>
    <Length>2</Length>
    <Surface>彼方</Surface>
    <ShitekiWord>彼方(かなた)</ShitekiWord>
    <ShitekiInfo>用字</ShitekiInfo>
  </Result>
  <Result>
    <StartPos>5</StartPos>
    <Length>5</Length>
    <Surface>小形飛行機</Surface>
    <ShitekiWord>小型飛行機</ShitekiWord>
    <ShitekiInfo>誤変換</ShitekiInfo>
  </Result>
</ResultSet>

文章に問題がない、または問題を検出できない場合には、Result要素がない空のResultSetが返されます。

<?xml version="1.0" encoding="UTF-8"?>
<ResultSet xmlns="urn:yahoo:jp:jlp:KouseiService" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:yahoo:jp:jlp:KouseiService http://jlp.yahooapis.jp/KouseiService/V1/kousei.xsd"/>

利用制限

  • 1回のリクエストは、100kBまで
  • 24時間でのリクエストは、1つのアプリケーションIDにつき50,000回まで
利用制限 - テキスト解析:校正支援 - Yahoo!デベロッパーネットワーク

リクエスト時にはパラメータをエンコードして渡すため、UTF-8の「あ」の1文字でも「%E3%81%82」の9バイト必要です。

100kBを越えるリクエストをするとHTTPステータスで413 (Request Entity Too Large) が返され、さらに大きく越えると500 (Internal Server Error) が返されます。