すべてにURIを与えたい。
…と言っても、ページページ/要素くらいしかモデルが無いので、このふたつにURIを与えればいい。

ページページ/要素を指定する方法。スペース名やページ名、要素などを含むURIで指定。
ページを指定できるならスペースや要素も指定できることになる。
埋め込み記法ページ名指定するときなどに使う。ページだけでなく要素1つを埋め込んだり。プラグイン設定を他のスペースから読み込んだり。

UI/API両方で利用。
URIなので、フレームワーク/Webアプリケーションフレームワーク/WikiEngineの両方で利用する部分が混在。


書き方 Edit

https://wikienginex.org/pagename/pagename?selector=...

:i/*(ワイルドカード)
正規表現もワイルドカードもjQueryにはない。でも…
Regex Selector for jQuery – James Padolsey

…:regex(property,regex)
propertyの値がregexに適合するような要素を通すフィルター。

jQuery.filter(fn)のfnで正規表現を使う方法もあるけどこちらはJavaScriptコードで書く方法なので記法では真似しづらい。

埋め込みの解決方法 Edit

URIで参照されるのはオブジェクト。
埋め込み要素は参照されたときに「埋め込まれたほう」の要素に委譲。その戻り値を自分の物であるかのように返す。が合わなければ戻り値は使えず、無いも同然になる。

いつものページ閲覧も別ドメインにある要素の参照も同じ Edit

相手が違うけどそれを呼ぶまでと呼んだ後は同じコードで。
同一ページ内の要素を呼ぶときも、よそのXを呼ぶときも全てURIで!!
相対URIでもいい。

サイト内のページを指定するなら相対パスでもいい Edit

ルートページ(/のこと)以下のパスだけなら同じWikiの中のページ名としてみなす。

要素まで含む Edit

ページ名だけでなくその中にある要素まで。
セレクター

プラグインをURIで呼び出し Edit

プラグイン要素は管理者が導入してから利用可能になるけど、既存サーバーでホスティングされている要素ならURI指定で埋め込み可能。
→ iframeで埋め込むほうが汎用性が高くていいはず。

ページも表現可能 Edit

要素を指定しなければページを表す。
またルート要素を表すこともできるように。

特定を含む Edit

どのページかを示すために特定を表せるように。を特定しない場合は通常のリクエストと同じ代表が適用される。

内部名で特定を指定。あるいは外部名を完全に指定するか。

代表を拒否すれば複数のページを表すことになるけど??

クライアントでもだいたい同じ Edit

クライアント側アプリでは本物のjQueryを使うことに。

順不同パスと合わない Edit

URIは階層構造で順序が大事。順不同パスとは合わないので、順不同パスになるもの(ページ)とも合わない。ディレクトリ構造を無視したページIDだけのURIなら可能。