• 追加された行はこの色です。
  • 削除された行はこの色です。
RIGHT:[[:t/要素]] [[:t/Wiki]] [[☆]]

機能の実装。ほとんどのプラグインはページ/要素。拡張の要。

- ページ/要素を使うためにXというフレームワークがある。
- 利用者によってページに記述され、ページごと呼び出される。
- 要素は利用者が入力した情報と、いろいろな機能を併せ持つもの。
-- 要素はページに記録された情報をオブジェクト化したもの。
-- 要素はいろいろ考えた機能の実装。要素の作り方は自由にしていい。
- 要素をページ上に配置するために使われるのが[[記法]]。
ビルトイン要素は簡易マークアップで。プラグイン要素は汎用記法で。
→ [[:Done/ページ型/スレッド/データコンテキスト/記法定義をまとめて設計#je7681db]]
→ [[:Done/ページ型/スレッド/データコンテキスト/記法定義まとめ#je7681db]]
- 要素はページに記述できるプラグイン。記述方法は→[[記法]]。
汎用記法か、管理者が定義した記法で記述すると機能するようになる。
- %%記法処理中にどの記法も汎用記法に置き換えられる。%%
→ 意味ない。編集時に記法を再現するので置き換える前のテキストは必要。汎用記法に置き換えたとしてもさらにオブジェクトに置き換えなければならないため何のキャッシュにもならない。
- 記法処理中にどの記法も汎用記法に置き換えられる。
→ %%意味ない。編集時に記法を再現するので置き換える前のテキストは必要。汎用記法に置き換えたとしてもさらにオブジェクトに置き換えなければならないため何のキャッシュにもならない。%%
→ 解析処理を統一するため。簡易マークアップをプラグイン要素に対応付けられるようになる。

----

#contents


*[[:t/要素]]より [#ua6a9967]
* [[:t/要素]]より [#te5640f9]

**URLクエリー [#w0cc4629]
** URLクエリー [#v30abc62]

***[[:/検索式を使う検索]] [#m56b6643]
*** [[:/検索式を使う検索]] [#sb56a3e1]
''利用するユースケースクラスによっては''URLクエリーがページと同じ型になる。ページとの違いはデータコンテキストの違いだけ。呼ばれたページに含まれるページ/要素は、URLクエリーからデータを引き出すことになる。

あるユースケースでは、URLクエリー上で一時的なページを作れる。レスポンスにはそのページが載る。複数のページをひとつのレスポンスにまとめたりできる。

RIGHT:[[:t/ユースケース]]
** いろいろなページ/要素 [#n7a72a0a]

***[[:i/レイアウト要素]] [#qfb35f0e]
** いろいろなページ/要素 [#nf290fa7]

*** [[:i/レイアウト要素]] [#a5536ac3]
随時作ればいい。
スタイルを与えるだけのもの。あるいは入口と出口の要素を分けて、出口をテンプレート内に配置。入口はページ本文で後から追加。入口の内容が出口にだけ表示される。

**未分類 [#t094a8b1]
** 未分類 [#v3a8d683]

***[[:i/時刻だけ書いたら同じページに書かれている日付を加味]] [#g3ec4985]
***[[:i/投稿時展開する記法は要らない]] [#t494053a]
*** [[:i/時刻だけ書いたら同じページに書かれている日付を加味]] [#abb7f24b]
その要素自身の機能で。
*** [[:i/投稿時展開する記法は要らない]] [#ub49bdac]
*** [[:/階層化ページ名がタグなら一覧化しないと]] [#f728d358]
*** [[:/HTMLコンテナー]] [#x1aa5c6c]
*** [[:/HTML変換の内部処理]] [#lb52fea9]
*** [[:/WikiEngineから機能の呼び出し]] [#dfee6a5c]
*** [[:/データアクセスとは]] [#k910c5d2]
*** [[:/ブロック要素は段落単位で]] [#gafedf6a]
*** [[:/プラグインが使えるフック]] [#p7db3210]
*** [[:/ページ全体も要素]] [#k0098410]
*** [[:/ページ属性の型は文字列だけ]] [#ye8dbe86]
*** [[:/機能/API/オブジェクト取得API]] [#l78c8222]
*** [[:/機能/API/トリガー2種類]] [#j856e75c]
*** [[:/機能/API/バージョン]] [#bbfeed80]
*** [[:/機能/APIとは]] [#ia5372fb]
*** [[:/継承対応要素]] [#s162d75a]
*** [[:/要素からWikiEngineインスタンスを起動可能]] [#f728758c]
*** [[:/解釈をはさんだ検索]] [#pa2c8a3f]

***[[:i/階層化ページ名がタグなら一覧化しないと]] [#bf86cb4d]
*** [[:Done/2つ呼ぶ記法]] [#v096f692]
*** [[:Done/クライアント側にサービス側オブジェクトのProxyを作るには]] [#v3d189db]
*** [[:/グローバルオブジェクトを書き換える機能]] [#b3ba2ee4]
*** [[:/セレクターは属性値デコレーションに使えない]] [#w81f318f]
*** [[:Done/ページセット取得記法とエレメント取得記法]] [#b1fd5b05]
*** [[:Done/ページ型/スレッド/データコンテキスト/記法定義まとめ]] [#z825b185]
*** [[:Done/履歴はオブジェクト形式で?]] [#y76fef8c]
*** [[:Done/検索はクエリーとページの類似度判定]] [#ba3d9b9a]
*** [[:Done/検索フォーマットは機能を呼ぶか]] [#n38dd7e2]
*** [[:Done/目次に出したいだけの見出しはどう書くか]] [#gf75d445]
*** [[:Done/要素がアクティブなWiki/Page/Userを得るには]] [#hf82f772]
*** [[:Done/記法の衝突対策]] [#p21f24bc]
*** [[:Done/タグとはページか]] [#idfa16f6]
*** [[:i/APIリファレンスはページ]] [#c7663097]
*** [[:i/LTSV→テーブル]] [#h07c59c2]
*** [[:i/ToWikitextはそのまま返す]] [#p279c36f]
*** [[:i/Tokenize対象はNotationText]] [#w2bee494]
*** [[:i/UIからの呼び出し方法2種]] [#e75d4dad]
*** [[:i/UIを使うページ要素]] [#m10676e2]
*** [[:i/UI要素]] [#d948bed4]
*** [[:i/URIは内部型を含むラッパー]] [#nd059914]
*** [[:i/URIを解析して異なるページ要素に渡す仕組み]] [#f2c2a3af]
*** [[:i/URLクエリーは一時的ページ]] [#qb5d3f94]
*** [[:i/class属性を付けるならそれごと記法として実装]] [#yee02faa]
*** [[:i/to…は複数指定]] [#c80af7e5]
*** [[:i/「Wiki記法」の削減]] [#d5de96a6]
*** [[:i/おとなりページ]] [#l2be0e85]
*** [[:i/ここからの目次]] [#u739a553]
*** [[:i/なにかのカウンター]] [#n93d6613]
*** [[:i/インライン/ブロック/ページの3スコープ → ページ/ラインの2スコープ]] [#zb0c5ed6]
*** [[:i/オブジェクトにUIを持たせる]] [#c2314421]
*** [[:i/クエリーにどう反応するか]] [#qd2ea3ca]
*** [[:i/データの保存先指定]] [#b09b62e5]
*** [[:i/ハブとして機能する要素]] [#r1999565]
*** [[:i/ファセットを並べるだけでなく集計もしたい]] [#d36f44d3]
*** [[:i/ファセット分類]] [#k38d8cf2]
*** [[:i/ファセット化の対象は専用のメタデータ]] [#ac9417e6]
*** [[:i/フォーム要素]] [#x1d5d878]
*** [[:i/ブロック要素/インライン要素を区別しない]] [#n13f144a]
*** [[:i/プラグイン内でプラグインを呼び出すために]] [#naf031b4]
*** [[:i/プラグイン要素は記法]] [#u7563587]
*** [[:i/プレビューの集め方]] [#mcd153ec]
*** [[:i/プレースホルダー記法]] [#pac05906]
*** [[:i/プログラムコードを記述するには]] [#e078b290]
*** [[:i/プロセス起動ごとに呼ばれる要素]] [#s6964ae1]
*** [[:i/ページ──要素間はコンポジションに]] [#f651b2af]
*** [[:i/ページとは]] [#g36eb9b2]
*** [[:i/ページと他オブジェクトとの関わり合い]] [#w71d157b]
*** [[:i/ページと要素は似ている]] [#y3430d79]
*** [[:i/ページのイテレーター]] [#cda0f2b6]
*** [[:i/ページは…]] [#fa86f5e9]
*** [[:i/ページは要素でもある]] [#t36bd9f6]
*** [[:i/ページは要素のインターフェイス]] [#eb56cdc7]
*** [[:i/ページは要素のコンポジション]] [#cc330af3]
*** [[:i/ページ内容がオブジェクト構成を表す]] [#mcc2d4a3]
*** [[:i/ページ要素のUI]] [#ta7b5213]
*** [[:i/ページ要素間のつながり]] [#rb79599c]
*** [[:i/ページ要素間の連携方法]] [#i045519a]
*** [[:i/metaになる要素]] [#y9dc809d]
*** [[:i/ユースケースに即席ページを]] [#eddaf5d9]
*** [[:i/リンクは種別によって見せ方を変える]] [#e20bc996]
*** [[:i/ローカライズに関西弁や語尾に何かを付ける方言も]] [#le4853f5]
*** [[:i/一行テキスト]] [#e9384bc0]
*** [[:i/下位展開範囲のスレッドを統合するもの]] [#a96e37c0]
*** [[:i/何かのカウンター]] [#k698f565]
*** [[:i/全ページの属性を一覧化して書き換え]] [#df531a3a]
*** [[:i/名前の同一視]] [#ydc0fac4]
*** [[:i/型別一覧]] [#n02a9acd]
*** [[:i/大抵のHTMLはテンプレートで]] [#b7d4beb9]
*** [[:i/改行は要素]] [#g776cfb9]
*** [[:i/文字列からの型変換はExcelでもやっている]] [#ze0b3183]
*** [[:i/日付に経過日数]] [#se397543]
*** [[:i/検索で共起要素を探すには]] [#i88d033f]
*** [[:i/検索式は1つの要素で]] [#ra14491c]
*** [[:i/検索用テキストを作るならページ要素で]] [#c36c9ac3]
*** [[:i/検索語にスケール指定を]] [#u3c753 [#rf76e91d]

**ページ/要素とは [#ia525a2a]

***[[:i/ページとは]] [#y7f86567]
ページ/要素はデータベーステーブル内のフィールドにあたる。ただし1要素で値1つ(1フィールドの1レコード分)。



***[[ページ/要素/API]] [#v9a941b9]
要素(機能の実装)がAPIを提供してもいい。制限しないだけ。サポートもしない。自由。
RIGHT:[[:t/API]] [[:t/要素]]




**ページ/要素ができること/しなくてもいいこと [#sdf5bce0]

***[[:i/リクエスト内のパラメーターと汎用記法のパラメーターは同じ]] [#r2d562d2]
呼び出され方を区別しなくていい。
データコンテキストの区別はデータコンテキスト名別のTo…メソッドでできるし。



***[[:i/クエリーにどう反応するか]] [#v2ea51d4]
要素の協調でリダイレクトをどう行なうか?

→リダイレクトは要素ではなくユースケースの役目。問題なし。

%%要素がリダイレクトを指示するなら他の要素の出力を抑えなければならない。協調しないということなので、不可。リダイレクトをするユースケースを呼び出すボタンを用意して、利用者に押してもらう(協調しないユースケースを呼んでもらう)ような方法なら可。%%

要素で行う場合でも、[[:i/レイアウト要素]]と同じように、HTMLヘッダーやHTTPヘッダーに出力できれば可能。要素から要素を呼ぶことになる。

RIGHT:[[:t/要素]] [[:t/実装]]
***[[:i/要素の展開タイミング]] [#k4332ba0]



***[[ページ/要素/UI]] [#k5398aa0]
拡張可能な要素のUIとは。
†[[:i/UIを使うページ要素]]

要素を呼び出すためのUIは記法。エディターと組み合わせて使う一大機能。
†[[記法]]
†[[汎用記法]]

RIGHT:[[:t/UI]] [[:t/要素]] [[:t/開発]] [[:t/記法]]



***[[:i/簡単なAPI]] [#c65a0538]
簡単不自由なAPIと、面倒自由なAPIの両方を用意。
引数の違い。

例えばページ/要素のコンストラクターを2種類用意。どちらかを定義すれば要素として使えるように。

RIGHT:[[:t/API]] [[:t/開発]] [[:t/要素]]



***[[ページ/要素/API#vcafaa10]] [#q1e224ba]
テストコード。
インストール時に動くか確認。
管理者が改造したときにも使える。運用しやすくなる。

UIは…ページ/要素クラス別のページ(複数のバージョンがある場合は下位ページでも作って)にあるテスト実行ボタンで。
テストが複数定義されていればその数だけボタンを表示するように。リフレクション→UIに反映。
テスト環境をどう作るのか。テスト用コードだけでできなければならない。

RIGHT:[[:t/開発]] [[:t/API]] [[:t/管理]]



***[[:i/エラーメッセージにクラス名]] [#y3fb5f7e]
エラーメッセージの書き方。
競合も矛盾もない。

エラーメッセージはエラー対処のためのUIでもある。
検索がサイト間のハブサイト、エラーメッセージはその検索へユーザーを誘導する。


RIGHT:[[:t/管理]] [[:t/開発]] [[:t/実装]]



***[[:i/汎用記法で名前付きパラメーター]] [#u041faad]



***[[:i/要素にはUsageを含める]] [#pbc25ee4]




**性質 [#g8639f13]

***[[:i/設定違いを別記法にするとシンプルに]] [#ed2bbc36]



***[[:i/複数行パラメーターの書き方]] [#dd35ce2d]



***[[:i/要素3態]] [#efe11f51]



***[[:i/ページは要素のコンポジション]] [#p34dd91b]



***[[:i/要素は部品]] [#s08ea3a6]



***[[:i/要素がページに記述されたとき、Chain of Responsibilityで]] [#y336df0d]
→ [[:i/要素がページに記述されたとき、Chain of Responsibilityで?]]
要素間/ページ間の依存をなくす。それぞれが独立。連携するなら相手に依存することになる。プラグインが守らなければならないルールが無い代わりに、連携をサポートすることも無い。



***%%[[:/ページ全体も要素]]%% [#d01e8e41]



***[[:i/プラグイン要素は記法]] [#bfdf34e7]



***[[:i/要素展開は閲覧時]] [#zf4ad7b0]



***[[:i/要素はChain of Responsibility]] [#de0ad35e]



***[[:i/ページ──要素間はコンポジションに]] [#cbce981c]



***[[:i/要素クラスの継承]] [#vabdfaec]



***[[:i/要素の使い方は2種類]] [#tf737297]



***[[:i/要素に使い方が2種類あっても実体は1つ]] [#f69d5c72]



***[[:i/要素はリクエストから直接呼び出されてもネスト可能]] [#bd2fc668]



***[[:i/要素呼び出しとMVC]] [#xeb24cb5]



**使われ方 [#w93325f6]
***[[:i/URLクエリーは一時的ページ]] [#d7fd2837]
***[[:i/要素を必要なときにインストール]] [#j7bbaff7]
***[[:i/システムが書くページ裏]] [#v8b779de]
***[[:i/ファセット検索のUI]] [#ifb6442e]
***[[:i/メールのテンプレートもページ]] [#na41da66]
***[[:i/ロールを作れるロール]] [#k79dec1f]
***[[:i/属性継承と権限継承は別]] [#hebf2432]
***[[:i/曖昧検索]] [#b3a02de2]
***[[:i/検索/キーワードの活用]] [#k75c4edc]
***[[:i/継承される領域]] [#kb990f1f]
***[[:i/複数ページのマージ]] [#fcce6def]
***[[:i/設定は公開する]] [#rf10fca2]
**いろいろなページ/要素 [#i168744f]
***[[:i/CSVファイルをページ要素のCSVに変換]] [#oc172186]
***[[:i/new機能を標準に]] [#sc9a9c60]
***[[:i/SVGをテキスト検索]] [#e07da764]
***[[:i/アクセスログはページの属性]] [#q4c292d1]
***[[:i/フォームは型とその配置を集めたもの]] [#f653a303]
***[[:i/ページセット演算]] [#wa83aa5a]
***[[:i/ライセンス表明]] [#m5a11009]
***[[:i/検索履歴はタグ一覧と同等]] [#f92a8d7b]
***[[:i/機能/分析]] [#hb7d8ef5]
***[[:i/機能]] [#od6e7ad0]
***[[:i/特別な記法]] [#nd4f8588]
***[[:i/通知はタスクリスト]] [#y9b1f92a]



*ページ/要素/ [#w1784890]
- [[ページ/要素でやること]]

#ls