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

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

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

***データコンテキストでの呼びだされ時と同じ [#z1ae0f1f]
使われるコードはデータコンテキストで呼ばれた時と同じもの。
データコンテキストではどのメソッドを呼び出すかが文脈で決まるが、
プログラムコード内では普通にメソッドを指定していい。
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ではページ/本文内の表やリストをデータ構造にしたい。

RIGHT:[[:t/記法]] [[:t/API]] [[:t/UI]] [[:t/連携]]
***jQuery風セレクター [#oa4d5853]
またはCSS風セレクターで、要素を指定。
----

タグ名にあたるのが要素のクラス名。
継承したクラス名にあたるのが要素インスタンスが持つ"dotAnnotation''s''"属性。ノートアプリの「タグ」にあたるもの。でもこの言葉はもうマークアップタグとして使ってしまっているので。
:nth…とか:firstとか:evenみたいな疑似セレクターにあたるものは必要なものを似せて実装。
***XPath風ではない [#l736a169]
"XPath風"は要らない。構造を無視したアクセスがしたい。
#contents

*データアクセス [#x2a3f4de]

***下位展開/埋め込み解決後に [#ne3b9287]
下位展開の基準から下位ページにアクセス可能に。
埋め込まれた要素にもアクセス可能に。
// まとめ

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


***普段通りの挙動 [#j974944a]
データアクセスでも他の呼び出し方でも処理は同じ。コードも同じ。
HTMLを要求してもHTMLヘッダーも無い断片が返ってくる。
*[[:t/データアクセス]]より [#t3979dc2]

HTMLヘッダーがいるなら最初のデータコンテキストを指定して。
**未分類 [#q0e9c5d3]

***URIもコンテキスト [#d70d9717]
URIのクエリー文字列で指定して呼ぶとき、HTMLとかRSSとかの形式を指定するには基礎となる要素を付け足す。付け足す要素はページ内に存在しなくてもいい。URIだけの即席要素。
URIに書くときはパラメーターの指定がしづらいので、指定できるのはパラメーターを1つしか受けない要素だけ。コンテキストを作るだけの要素なのでURIでしか使い道がない。
あとで[[:t/データアクセス]]も追加。
*データアクセス/ [#gfe39da7]

指定しなければデフォルトのコンテキスト。ページと同じコンテキストを作る要素。
#ls


***連鎖はできなくていい [#n0baff7f]
URIでは要素のパラメーターを書きにくいので、複数の要素を組み合わせられなくてもいい。
組み合わせるならページに書いて。それを呼び出すようにして。