• 追加された行はこの色です。
  • 削除された行はこの色です。
RIGHT:[[:t/データアクセス]] [[:t/要素]] [[:t/セレクター]] [[:t/設定]] [[☆]]
RIGHT:[[:t/データアクセス]] [[:t/要素]] [[:t/セレクター]] [[:t/設定]] [[:t/連携]] [[☆]]

ページの中の要素を指定する記法。
「[[全てURIで]]」のURIでも使えるように。ページ名に続いて要素指定。
ページの中の要素を呼ぶ仕組み。
「[[全てURIで]]」のURIでも使えるようにする。
通常のリクエストではページ名を指定するけど、さらに要素指定と型指定もするのがデータアクセス。

Wikiの設定/構築に使ったり、クライアントアプリから使ったり、他アプリとの連携用にしたり。

#contents
APIとしても使える。MediaWikiでの''[[api.php>http://ja.wikipedia.org/w/api.php?format=json&action=query&titles=%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8&prop=revisions&rvprop=content]]''([[prettified>http://ja.wikipedia.org/w/api.php?format=jsonfm&action=query&titles=%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8&prop=revisions&rvprop=content]])のようなもの。でもMediaWikiのはページ/本文は投稿されたままのテキスト(WikiText)。Xではページ/本文内の表やリストをデータ構造にしたい。

***データコンテキストでの呼びだされ時と同じ [#z1ae0f1f]
使われるコードはデータコンテキストで呼ばれた時と同じもの。
データコンテキストではどのメソッドを呼び出すかが文脈で決まるが、
プログラムコード内では普通にメソッドを指定していい。
----

RIGHT:[[:t/記法]] [[:t/API]] [[:t/UI]] [[:t/連携]]
#contents

***セレクター記法 [#w4f9827c]
querySelectorAll風。
XPath風も"/"区切りのURIやページ名とひと続きになっていい。(ページ名区切りは変更可能だけど)
***%%[[旧検索]]で探す%% [#za085e6c]
%%要素を選択する処理。%%
要素を選択するには要素のインスタンス名やクラス名で。旧検索は値(内容)で探すもの。データアクセスからは使わない。
***%%下位展開/%%埋め込み解決後に [#ne3b9287]
%%下位展開の基準から下位ページにアクセス可能に。%%
埋め込まれた要素にもアクセス可能に。
*データアクセス [#x2a3f4de]

埋め込み%%/下位展開%%後でなければアクセス不可能な要素ができてしまうし、閲覧時に見た通りに使えなければ分かりにくい。
// まとめ

%%見た通りなので下位展開された下位ページの要素にもアクセス可能にしないと。上位に下位が付いてくるので「継承」とは呼ばない。方向が逆。%%

[[:Done/下位展開で下位のページ属性は参照できるか]]
…はページ/属性(へのデータアクセス)なので別領域の話。ページ/内容にある要素にはデータアクセス可能。%%つまり下位展開分にもデータアクセス可能。%%
下位展開ではページをまとめないので、単一ページの場合と同じ。
***普段通りの挙動 [#j974944a]
データアクセスでも他の呼び出し方でも処理は同じ。コードも同じ。
HTMLを要求してもHTMLヘッダーも無い断片が返ってくる。

HTMLヘッダーがいるなら連鎖の始まりにあたるデータコンテキストをそういう指定にして。
***URIもコンテキスト [#d70d9717]
URIのクエリー文字列にページ/要素を書くと、そこ専用のデータコンテキストで展開される。
%%URIのクエリー文字列で指定して呼ぶとき、HTMLとかRSSとかの形式を指定するには基礎となる要素を付け足す。付け足す要素はページ内に存在しなくてもよくなる。%%リクエスト時だけの即席要素。
URIに書くときはパラメーターの指定がしづらいので、指定できるのはパラメーターを1つしか受けない要素だけ。コンテキストを作るだけの要素なのでURIでしか使い道がない。
*[[:t/データアクセス]]より [#t3979dc2]

(RSSの場合はビュー別のテンプレートのほうで基礎部分を作ったほうがいい)
**未分類 [#q0e9c5d3]

指定しなければデフォルトのコンテキスト。ページと同じコンテキストを作る要素。
***連鎖はできなくていい [#n0baff7f]
URIでは要素のパラメーターを書きにくいので、(URI上では)複数の要素を組み合わせられなくてもいい。
組み合わせるならページに書いて。それを呼び出すようにして。
***記法の代わりになるもの [#v246efe4]
セレクター記法の代わりに要素セットやページセットも渡せるように''各要素が''考慮する。
型別にパラメーター名を変えてもいいし、ひとつのパラメーターを複数の型に対応させてもいい。
あとで[[:t/データアクセス]]も追加。
*データアクセス/ [#gfe39da7]

†[[:Done/セットの扱い]]
#ls



***インポートと近い [#dcefb428]
JSONインポートと実装が一部共通。