[3] [[XML Schema]] 定義文書による記述など、 [[PSVI]]
の情報によって[[識別子]]であると判定されるものを
[DFN[schema 決定 ID]] と言います。正式には >>1 のように定義されます。

Schema 決定 ID は、 [[DTD決定ID]] とは異なり、
[[属性情報項目]]だけではなく[[要素情報項目]]も候補となります。

[1] ある[[要素情報項目]]または[[属性情報項目]]は、
次の条件のいずれかを満たす時、その時に限って
[DFN[[RUBYB[schema 決定][schema‐determined]] ID]]
であると言います [SRC[XPointer]]。

- (対象の要素情報項目又は属性情報項目)
--→ [CODE(infoprop)[[[構成員型定義]]]]又は[CODE(infoprop)[[[型定義]]]]
---→ [CODE(infoprop)[[[名前]]]] = [CODE[[[ID]]]]
---→ [CODE(infoprop)[[[対象名前空間]]]] = [CODE(URI)[[[http://www.w3.org/2001/XMLSchema]]]]
- (対象の要素情報項目又は属性情報項目)
--→ [CODE(infoprop)[[[基底型定義]]]]
---→ [CODE(infoprop)[名前]] = [CODE[ID]]
---→ [CODE(infoprop)[対象名前空間]] = [CODE(URI)[http://www.w3.org/2001/XMLSchema]]
- (対象の要素情報項目又は属性情報項目)
--→ [CODE(infoprop)[基底型定義]]
---→ [CODE(infoprop)[基底型定義]]
----→ [CODE(infoprop)[名前]] = [CODE[ID]]
----→ [CODE(infoprop)[対象名前空間]] = [CODE(URI)[http://www.w3.org/2001/XMLSchema]]
-- のように、[CODE(infoprop)[基底型定義]]が間に任意個挟まってていい。
- (対象の要素情報項目又は属性情報項目)
--→ [CODE(infoprop)[[[型定義名]]]] = [CODE[ID]]
--→ [CODE(infoprop)[[[型定義名前空間]]]] = [CODE(URI)[http://www.w3.org/2001/XMLSchema]]
- (対象の要素情報項目又は属性情報項目)
--→ [CODE(infoprop)[[[構成員型定義名]]]] = [CODE[ID]]
--→ [CODE(infoprop)[[[構成員型定義名前空間]]]] = [CODE(URI)[http://www.w3.org/2001/XMLSchema]]

[2]
仕様書:
- [[XPointer]] 枠組み
--[CSECTION[3.2 Shorthand Pointer]]
<http://www.w3.org/TR/xptr-framework/#term-sdi>

* 他との関係

[6] Schema 決定 ID は >>1 の定義のように [[PSVI]]
の情報から決定されます。従って、 [[XML Schema]]
による[[妥当性検証]]と PSVI の構築を行うなどの手続きを踏まないと、
[WEAK[(単に XML 文書を読み込んだだけでは)]] 使えません。

[4] Schema 決定 ID は、 [[XPointer]] 
で[[速記]]指示子として使用することができます。
[WEAK[(従って、[[百分率符号化]]だけで[[素片識別子]]に使うことができます。)]]

[5] Schema 決定 ID は [[DOM水準3]] 中核の
[CODE(DOMa)[[[isId]]]] 属性などにおける識別子か否かの判断に使われます。

[[#comment]]

* メモ