出現のマークアップ
[[ターム]] start:'[[' [[ターム@接尾辞]] start:'[[' delim: '@' ターム(マークアップなし) ターム@接尾辞(マークアップなし、厳しそう) [-非ターム] start: '[-' [外部ラベル](URL) [>参照先ラベル] start: "[>" [(引用キー)] start: "[(" [[ターム (引用キー)]] start: "[[" delim "("
出現行列作成で拾う。自動マークアップ、自動接尾辞付けが可能となるように。ビルドスクリプトで記述する。auto-term-markup ツール。
auto-term-markup --dict dict.json --context tag-context.json article.md
バリデーション項目:
- タームは定義済みか、または required terms に入っているか?
- 接尾辞は suffixes に入っているか?
- 外部ラベルは external labels に入っているか?
- 外部ラベルが意図せぬ別名になってないか? 別名は許す。
- 外部ラベルが曖昧ラベルになってないか? 曖昧ラベルは許す。
- 引用キーは citekeys に入っているか?
- 引用キーが別名になってないか? 別名禁止
- 引用キーが曖昧キーになってないか? 曖昧キーは禁止
対照データ:
- defined terms リスト
- required terms リスト
- suffixes リスト
- external labels リスト
- citekeys リスト
- external terms リスト
- external URIs リスト
生成データ:
- term occurrences 行列
- external-reference occurrences 行列
- citekey occurences 行列
- external-term occurences 行列
- external-term map-table マップテーブル
定義のマークアップ
[+ターム1/の/ターム2@接尾辞] start: '[-'
索引で拾う。
バリデーション項目:
- 接尾辞は suffixes に入っているか?
対照データ:
- suffixes リスト
生成データ:
- definition links 行列
先頭文字パターン
- '[[' ターム term
- '[-' 非ターム non-term
- '[>' ラベル参照 internal reference by label
- '[(' 引用キー参照 internal reference by citekey
- '[+' 定義 defining term
これくらいで、ビルダー、検索・分析エンジンの入力データとなる。
パーズ結果
[[ターム]]
{ "type": "text", "value": "[[ターム]]" }
[-非ターム]
{ "type": "text", "value": "[-非ターム]" }
[外部ラベル](URL)
{ "type": "link", "title": null, "url": "URL", "children": [ { "type": "text", "value": "外部ラベル", } ] }
[>参照先ラベル]
{ "type": "text", "value": "[>参照先ラベル]" }
[(引用キー)]
{ "type": "text", "value": "[(引用キー)]" }
[[ターム (引用キー)]]
{ "type": "text", "value": "[[ターム (引用キー)]]" }
[+ターム1/の/ターム2@接尾辞]
{ "type": "text", "value": "[+ターム1/の/ターム2@接尾辞]" }