#
# This file defines a Japanese stoptag set for JapanesePartOfSpeechStopFilter.
#
# Any token with a part-of-speech tag that exactly matches those defined in this
# file are removed from the token stream.
#
# Set your own stoptags by uncommenting the lines below.  Note that comments are
# not allowed on the same line as a stoptag.  See LUCENE-3745 for frequency lists,
# etc. that can be useful for building you own stoptag set.
#
# The entire possible tagset is provided below for convenience.
#
#####
#  noun: unclassified nouns
#名詞
#
#  noun-common: Common nouns or nouns where the sub-classification is undefined
#名詞-一般
#
#  noun-proper: Proper nouns where the sub-classification is undefined 
#名詞-固有名詞
#
#  noun-proper-misc: miscellaneous proper nouns
#名詞-固有名詞-一般
#
#  noun-proper-person: Personal names where the sub-classification is undefined
#名詞-固有名詞-人名
#
#  noun-proper-person-misc: names that cannot be divided into surname and 
#  given name; foreign names; names where the surname or given name is unknown.
#  e.g. お市の方
#名詞-固有名詞-人名-一般
#
#  noun-proper-person-surname: Mainly Japanese surnames.
#  e.g. 山田
#名詞-固有名詞-人名-姓
#
#  noun-proper-person-given_name: Mainly Japanese given names.
#  e.g. 太郎
#名詞-固有名詞-人名-名
#
#  noun-proper-organization: Names representing organizations.
#  e.g. 通産省, NHK
#名詞-固有名詞-組織
#
#  noun-proper-place: Place names where the sub-classification is undefined
#名詞-固有名詞-地域
#
#  noun-proper-place-misc: Place names excluding countries.
#  e.g. アジア, バルセロナ, 京都
#名詞-固有名詞-地域-一般
#
#  noun-proper-place-country: Country names. 
#  e.g. 日本, オーストラリア
#名詞-固有名詞-地域-国
#
#  noun-pronoun: Pronouns where the sub-classification is undefined
#名詞-代名詞
#
#  noun-pronoun-misc: miscellaneous pronouns: 
#  e.g. それ, ここ, あいつ, あなた, あちこち, いくつ, どこか, なに, みなさん, みんな, わたくし, われわれ
#名詞-代名詞-一般
#
#  noun-pronoun-contraction: Spoken language contraction made by combining a 
#  pronoun and the particle 'wa'.
#  e.g. ありゃ, こりゃ, こりゃあ, そりゃ, そりゃあ 
#名詞-代名詞-縮約
#
#  noun-adverbial: Temporal nouns such as names of days or months that behave 
#  like adverbs. Nouns that represent amount or ratios and can be used adverbially,
#  e.g. 金曜, 一月, 午後, 少量
#名詞-副詞可能
#
#  noun-verbal: Nouns that take arguments with case and can appear followed by 
#  'suru' and related verbs (する, できる, なさる, くださる)
#  e.g. インプット, 愛着, 悪化, 悪戦苦闘, 一安心, 下取り
#名詞-サ変接続
#
#  noun-adjective-base: The base form of adjectives, words that appear before な ("na")
#  e.g. 健康, 安易, 駄目, だめ
#名詞-形容動詞語幹
#
#  noun-numeric: Arabic numbers, Chinese numerals, and counters like 何 (回), 数.
#  e.g. 0, 1, 2, 何, 数, 幾
#名詞-数
#
#  noun-affix: noun affixes where the sub-classification is undefined
#名詞-非自立
#
#  noun-affix-misc: Of adnominalizers, the case-marker の ("no"), and words that 
#  attach to the base form of inflectional words, words that cannot be classified 
#  into any of the other categories below. This category includes indefinite nouns.
#  e.g. あかつき, 暁, かい, 甲斐, 気, きらい, 嫌い, くせ, 癖, こと, 事, ごと, 毎, しだい, 次第, 
#       順, せい, 所為, ついで, 序で, つもり, 積もり, 点, どころ, の, はず, 筈, はずみ, 弾み, 
#       拍子, ふう, ふり, 振り, ほう, 方, 旨, もの, 物, 者, ゆえ, 故, ゆえん, 所以, わけ, 訳,
#       わり, 割り, 割, ん-口語/, もん-口語/
#名詞-非自立-一般
#
#  noun-affix-adverbial: noun affixes that that can behave as adverbs.
#  e.g. あいだ, 間, あげく, 挙げ句, あと, 後, 余り, 以外, 以降, 以後, 以上, 以前, 一方, うえ, 
#       上, うち, 内, おり, 折り, かぎり, 限り, きり, っきり, 結果, ころ, 頃, さい, 際, 最中, さなか, 
#       最中, じたい, 自体, たび, 度, ため, 為, つど, 都度, とおり, 通り, とき, 時, ところ, 所, 
#       とたん, 途端, なか, 中, のち, 後, ばあい, 場合, 日, ぶん, 分, ほか, 他, まえ, 前, まま, 
#       儘, 侭, みぎり, 矢先
#名詞-非自立-副詞可能
#
#  noun-affix-aux: noun affixes treated as 助動詞 ("auxiliary verb") in school grammars 
#  with the stem よう(だ) ("you(da)").
#  e.g.  よう, やう, 様 (よう)
#名詞-非自立-助動詞語幹
#  
#  noun-affix-adjective-base: noun affixes that can connect to the indeclinable
#  connection form な (aux "da").
#  e.g. みたい, ふう
#名詞-非自立-形容動詞語幹
#
#  noun-special: special nouns where the sub-classification is undefined.
#名詞-特殊
#
#  noun-special-aux: The そうだ ("souda") stem form that is used for reporting news, is 
#  treated as 助動詞 ("auxiliary verb") in school grammars, and attach to the base 
#  form of inflectional words.
#  e.g. そう
#名詞-特殊-助動詞語幹
#
#  noun-suffix: noun suffixes where the sub-classification is undefined.
#名詞-接尾
#
#  noun-suffix-misc: Of the nouns or stem forms of other parts of speech that connect 
#  to ガル or タイ and can combine into compound nouns, words that cannot be classified into
#  any of the other categories below. In general, this category is more inclusive than 
#  接尾語 ("suffix") and is usually the last element in a compound noun.
#  e.g. おき, かた, 方, 甲斐 (がい), がかり, ぎみ, 気味, ぐるみ, (～した) さ, 次第, 済 (ず) み,
#       よう, (でき)っこ, 感, 観, 性, 学, 類, 面, 用
#名詞-接尾-一般
#
#  noun-suffix-person: Suffixes that form nouns and attach to person names more often
#  than other nouns.
#  e.g. 君, 様, 著
#名詞-接尾-人名
#
#  noun-suffix-place: Suffixes that form nouns and attach to place names more often 
#  than other nouns.
#  e.g. 町, 市, 県
#名詞-接尾-地域
#
#  noun-suffix-verbal: Of the suffixes that attach to nouns and form nouns, those that 
#  can appear before スル ("suru").
#  e.g. 化, 視, 分け, 入り, 落ち, 買い
#名詞-接尾-サ変接続
#
#  noun-suffix-aux: The stem form of そうだ (様態) that is used to indicate conditions, 
#  is treated as 助動詞 ("auxiliary verb") in school grammars, and attach to the 
#  conjunctive form of inflectional words.
#  e.g. そう
#名詞-接尾-助動詞語幹
#
#  noun-suffix-adjective-base: Suffixes that attach to other nouns or the conjunctive 
#  form of inflectional words and appear before the copula だ ("da").
#  e.g. 的, げ, がち
#名詞-接尾-形容動詞語幹
#
#  noun-suffix-adverbial: Suffixes that attach to other nouns and can behave as adverbs.
#  e.g. 後 (ご), 以後, 以降, 以前, 前後, 中, 末, 上, 時 (じ)
#名詞-接尾-副詞可能
#
#  noun-suffix-classifier: Suffixes that attach to numbers and form nouns. This category 
#  is more inclusive than 助数詞 ("classifier") and includes common nouns that attach 
#  to numbers.
#  e.g. 個, つ, 本, 冊, パーセント, cm, kg, カ月, か国, 区画, 時間, 時半
#名詞-接尾-助数詞
#
#  noun-suffix-special: Special suffixes that mainly attach to inflecting words.
#  e.g. (楽し) さ, (考え) 方
#名詞-接尾-特殊
#
#  noun-suffix-conjunctive: Nouns that behave like conjunctions and join two words 
#  together.
#  e.g. (日本) 対 (アメリカ), 対 (アメリカ), (3) 対 (5), (女優) 兼 (主婦)
#名詞-接続詞的
#
#  noun-verbal_aux: Nouns that attach to the conjunctive particle て ("te") and are 
#  semantically verb-like.
#  e.g. ごらん, ご覧, 御覧, 頂戴
#名詞-動詞非自立的
#
#  noun-quotation: text that cannot be segmented into words, proverbs, Chinese poetry, 
#  dialects, English, etc. Currently, the only entry for 名詞 引用文字列 ("noun quotation") 
#  is いわく ("iwaku").
#名詞-引用文字列
#
#  noun-nai_adjective: Words that appear before the auxiliary verb ない ("nai") and
#  behave like an adjective.
#  e.g. 申し訳, 仕方, とんでも, 違い
#名詞-ナイ形容詞語幹
#
#####
#  prefix: unclassified prefixes
#接頭詞
#
#  prefix-nominal: Prefixes that attach to nouns (including adjective stem forms) 
#  excluding numerical expressions.
#  e.g. お (水), 某 (氏), 同 (社), 故 (～氏), 高 (品質), お (見事), ご (立派)
#接頭詞-名詞接続
#
#  prefix-verbal: Prefixes that attach to the imperative form of a verb or a verb
#  in conjunctive form followed by なる/なさる/くださる.
#  e.g. お (読みなさい), お (座り)
#接頭詞-動詞接続
#
#  prefix-adjectival: Prefixes that attach to adjectives.
#  e.g. お (寒いですねえ), バカ (でかい)
#接頭詞-形容詞接続
#
#  prefix-numerical: Prefixes that attach to numerical expressions.
#  e.g. 約, およそ, 毎時
#接頭詞-数接続
#
#####
#  verb: unclassified verbs
#動詞
#
#  verb-main:
#動詞-自立
#
#  verb-auxiliary:
#動詞-非自立
#
#  verb-suffix:
#動詞-接尾
#
#####
#  adjective: unclassified adjectives
#形容詞
#
#  adjective-main:
#形容詞-自立
#
#  adjective-auxiliary:
#形容詞-非自立
#
#  adjective-suffix:
#形容詞-接尾
#
#####
#  adverb: unclassified adverbs
#副詞
#
#  adverb-misc: Words that can be segmented into one unit and where adnominal 
#  modification is not possible.
#  e.g. あいかわらず, 多分
#副詞-一般
#
#  adverb-particle_conjunction: Adverbs that can be followed by の, は, に, 
#  な, する, だ, etc.
#  e.g. こんなに, そんなに, あんなに, なにか, なんでも
#副詞-助詞類接続
#
#####
#  adnominal: Words that only have noun-modifying forms.
#  e.g. この, その, あの, どの, いわゆる, なんらかの, 何らかの, いろんな, こういう, そういう, ああいう, 
#       どういう, こんな, そんな, あんな, どんな, 大きな, 小さな, おかしな, ほんの, たいした, 
#       「(, も) さる (ことながら)」, 微々たる, 堂々たる, 単なる, いかなる, 我が」「同じ, 亡き
#連体詞
#
#####
#  conjunction: Conjunctions that can occur independently.
#  e.g. が, けれども, そして, じゃあ, それどころか
接続詞
#
#####
#  particle: unclassified particles.
助詞
#
#  particle-case: case particles where the subclassification is undefined.
助詞-格助詞
#
#  particle-case-misc: Case particles.
#  e.g. から, が, で, と, に, へ, より, を, の, にて
助詞-格助詞-一般
#
#  particle-case-quote: the "to" that appears after nouns, a person’s speech, 
#  quotation marks, expressions of decisions from a meeting, reasons, judgements,
#  conjectures, etc.
#  e.g. ( だ) と (述べた.), ( である) と (して執行猶予...)
助詞-格助詞-引用
#
#  particle-case-compound: Compounds of particles and verbs that mainly behave 
#  like case particles.
#  e.g. という, といった, とかいう, として, とともに, と共に, でもって, にあたって, に当たって, に当って,
#       にあたり, に当たり, に当り, に当たる, にあたる, において, に於いて,に於て, における, に於ける, 
#       にかけ, にかけて, にかんし, に関し, にかんして, に関して, にかんする, に関する, に際し, 
#       に際して, にしたがい, に従い, に従う, にしたがって, に従って, にたいし, に対し, にたいして, 
#       に対して, にたいする, に対する, について, につき, につけ, につけて, につれ, につれて, にとって,
#       にとり, にまつわる, によって, に依って, に因って, により, に依り, に因り, による, に依る, に因る, 
#       にわたって, にわたる, をもって, を以って, を通じ, を通じて, を通して, をめぐって, をめぐり, をめぐる,
#       って-口語/, ちゅう-関西弁「という」/, (何) ていう (人)-口語/, っていう-口語/, といふ, とかいふ
助詞-格助詞-連語
#
#  particle-conjunctive:
#  e.g. から, からには, が, けれど, けれども, けど, し, つつ, て, で, と, ところが, どころか, とも, ども, 
#       ながら, なり, ので, のに, ば, ものの, や ( した), やいなや, (ころん) じゃ(いけない)-口語/, 
#       (行っ) ちゃ(いけない)-口語/, (言っ) たって (しかたがない)-口語/, (それがなく)ったって (平気)-口語/
助詞-接続助詞
#
#  particle-dependency:
#  e.g. こそ, さえ, しか, すら, は, も, ぞ
助詞-係助詞
#
#  particle-adverbial:
#  e.g. がてら, かも, くらい, 位, ぐらい, しも, (学校) じゃ(これが流行っている)-口語/, 
#       (それ)じゃあ (よくない)-口語/, ずつ, (私) なぞ, など, (私) なり (に), (先生) なんか (大嫌い)-口語/,
#       (私) なんぞ, (先生) なんて (大嫌い)-口語/, のみ, だけ, (私) だって-口語/, だに, 
#       (彼)ったら-口語/, (お茶) でも (いかが), 等 (とう), (今後) とも, ばかり, ばっか-口語/, ばっかり-口語/,
#       ほど, 程, まで, 迄, (誰) も (が)([助詞-格助詞] および [助詞-係助詞] の前に位置する「も」)
助詞-副助詞
#
#  particle-interjective: particles with interjective grammatical roles.
#  e.g. (松島) や
助詞-間投助詞
#
#  particle-coordinate:
#  e.g. と, たり, だの, だり, とか, なり, や, やら
助詞-並立助詞
#
#  particle-final:
#  e.g. かい, かしら, さ, ぜ, (だ)っけ-口語/, (とまってる) で-方言/, な, ナ, なあ-口語/, ぞ, ね, ネ, 
#       ねぇ-口語/, ねえ-口語/, ねん-方言/, の, のう-口語/, や, よ, ヨ, よぉ-口語/, わ, わい-口語/
助詞-終助詞
#
#  particle-adverbial/conjunctive/final: The particle "ka" when unknown whether it is 
#  adverbial, conjunctive, or sentence final. For example:
#       (a) 「A か B か」. Ex:「(国内で運用する) か,(海外で運用する) か (.)」
#       (b) Inside an adverb phrase. Ex:「(幸いという) か (, 死者はいなかった.)」
#           「(祈りが届いたせい) か (, 試験に合格した.)」
#       (c) 「かのように」. Ex:「(何もなかった) か (のように振る舞った.)」
#  e.g. か
助詞-副助詞／並立助詞／終助詞
#
#  particle-adnominalizer: The "no" that attaches to nouns and modifies 
#  non-inflectional words.
助詞-連体化
#
#  particle-adnominalizer: The "ni" and "to" that appear following nouns and adverbs 
#  that are giongo, giseigo, or gitaigo.
#  e.g. に, と
助詞-副詞化
#
#  particle-special: A particle that does not fit into one of the above classifications. 
#  This includes particles that are used in Tanka, Haiku, and other poetry.
#  e.g. かな, けむ, ( しただろう) に, (あんた) にゃ(わからん), (俺) ん (家)
助詞-特殊
#
#####
#  auxiliary-verb:
助動詞
#
#####
#  interjection: Greetings and other exclamations.
#  e.g. おはよう, おはようございます, こんにちは, こんばんは, ありがとう, どうもありがとう, ありがとうございます, 
#       いただきます, ごちそうさま, さよなら, さようなら, はい, いいえ, ごめん, ごめんなさい
#感動詞
#
#####
#  symbol: unclassified Symbols.
記号
#
#  symbol-misc: A general symbol not in one of the categories below.
#  e.g. [○◎@$〒→+]
記号-一般
#
#  symbol-comma: Commas
#  e.g. [,、]
記号-読点
#
#  symbol-period: Periods and full stops.
#  e.g. [.．。]
記号-句点
#
#  symbol-space: Full-width whitespace.
記号-空白
#
#  symbol-open_bracket:
#  e.g. [({‘“『【]
記号-括弧開
#
#  symbol-close_bracket:
#  e.g. [)}’”』」】]
記号-括弧閉
#
#  symbol-alphabetic:
#記号-アルファベット
#
#####
#  other: unclassified other
#その他
#
#  other-interjection: Words that are hard to classify as noun-suffixes or 
#  sentence-final particles.
#  e.g. (だ)ァ
その他-間投
#
#####
#  filler: Aizuchi that occurs during a conversation or sounds inserted as filler.
#  e.g. あの, うんと, えと
フィラー
#
#####
#  non-verbal: non-verbal sound.
非言語音
#
#####
#  fragment:
#語断片
#
#####
#  unknown: unknown part of speech.
#未知語
#
##### End of file
