#?SuikaWiki/0.9 [1] [[XPath]] には、 [CODE(XPath)[[[=]]]], [CODE(XPath)[[[!=]]]], [CODE(XPath)[[[<]]]], [CODE(XPath)[[[>]]]], [CODE(XPath)[[[<=]]]], [CODE(XPath)[[[>=]]]] の6つの比較演算子があります。 比較対象の2つの[[オペランド]]の型によって、 それぞれ比較の仕方が定義されています。 ,オペランド1,演算子,オペランド2,意味 ,[[節集合]] ,すべて,節集合 ,"[SUP[∃]][VAR[オペランド1の節]], [SUP[∃]][VAR[オペランド2の節]] s.t. 比較 ([[文字列値]] ([VAR[オペランド1の節]]), 文字列値 ([VAR[オペランド2の節]])) が真",節集合 ,すべて,[[数値]] ,"[SUP[∃]][VAR[節集合の節]] s.t. 比較 ([CODE(XPathf)[[[number]]]] (文字列値 ([VAR[節集合の節]])), [VAR[数値]]) が真" ,節集合 ,すべて,[[文字列]] ,"[SUP[∃]][VAR[節集合の節]] s.t. 比較 (文字列値 ([VAR[節集合の節]]), [VAR[文字列]]) が真" ,節集合 ,すべて,[[真偽値]] ,"[SUP[∃]][VAR[節集合の節]] s.t. 比較 ([CODE(XPathf)[[[boolean]]]] ([VAR[節集合の節]]), [VAR[真偽型]]) が真" ,真偽値,"=, !=",節集合以外,"比較 ([VAR[真偽値]], [CODE(XPathf)[boolean]] ([VAR[もう一方]]))" ,数値,"=, !=",節集合・真偽値以外,"比較 ([VAR[数値]], [CODE(XPathf)[number]] ([VAR[もう一方]]))" ,節集合・真偽値・数値以外,"=, !=",節集合・真偽値・数値以外,"比較 ([CODE(XPathf)[[[string]]]] ([VAR[値1]]), [CODE(XPathf)[string]] ([VAR[値2]]))" ,数値,"=, !=",数値,"[[IEEE 754]] 的に等しい?" ,真偽値,"=, !=",真偽値,"同じ?" ,文字列,"=, !=",文字列,"同じ [[UCS]] [[文字]]列?" ,節集合以外,"<, >, <=, >=",節集合以外,"IEEE 754 的に比較 ([CODE(XPathf)[number]] (値1), [CODE(XPathf)[number]] (値2))" 節集合の比較は、その要素の節が1つでも等しければ等しいとか何とかそんな風になります。 ∀じゃなくて∃です。