別のキーワード
ライブラリ
-
rexml
/ document (93) -
rexml
/ parsers / pullparser (3) -
rexml
/ parsers / sax2parser (5) -
rexml
/ sax2listener (5) -
rexml
/ streamlistener (2)
クラス
-
REXML
:: AttlistDecl (1) -
REXML
:: Attribute (8) -
REXML
:: Attributes (2) -
REXML
:: Child (2) -
REXML
:: DocType (5) -
REXML
:: Document (2) -
REXML
:: Element (44) -
REXML
:: ElementDecl (1) -
REXML
:: Elements (14) -
REXML
:: Entity (1) -
REXML
:: Parsers :: PullEvent (3) -
REXML
:: Parsers :: SAX2Parser (5) -
REXML
:: Text (1) -
REXML
:: XPath (3)
モジュール
-
REXML
:: Node (2) -
REXML
:: SAX2Listener (5) -
REXML
:: StreamListener (2)
キーワード
- << (1)
- Attribute (1)
- Attributes (1)
- Document (1)
- Element (1)
- ElementDecl (1)
- Elements (1)
- Namespace (1)
- UNDEFINED (1)
- [] (1)
- []= (1)
- add (1)
-
add
_ attribute (2) -
add
_ attributes (1) -
add
_ element (1) -
add
_ namespace (2) - attlistdecl (2)
- attribute (1)
-
attribute
_ of (1) - attributes (1)
-
attributes
_ of (1) - cdatas (1)
- clone (2)
- collect (1)
- comments (1)
- context (2)
- context= (1)
- delete (2)
-
delete
_ all (1) -
delete
_ attribute (1) -
delete
_ element (1) -
delete
_ namespace (1) - document (1)
- each (2)
-
each
_ element (1) -
each
_ element _ with _ attribute (1) -
each
_ element _ with _ text (1) -
each
_ recursive (1) - element= (1)
-
element
_ name (1) - elementdecl (2)
- elementdecl? (1)
- elements (1)
- empty? (1)
-
end
_ element (1) -
end
_ element? (1) -
external
_ id (1) -
find
_ first _ recursive (1) - first (1)
-
get
_ elements (1) -
get
_ text (1) -
has
_ attributes? (1) -
has
_ elements? (1) -
has
_ text? (1) - index (1)
- inject (1)
- instructions (1)
- listen (5)
- match (1)
- matches? (1)
- namespace (2)
- namespaces (1)
- new (7)
-
next
_ element (1) -
next
_ sibling= (1) -
node
_ type (1) - prefix (1)
- prefixes (1)
-
previous
_ element (1) -
previous
_ sibling= (1) - raw (1)
-
rexml
/ document (1) -
rexml
/ parsers / pullparser (1) -
rexml
/ parsers / sax2parser (1) -
rexml
/ parsers / streamparser (1) -
rexml
/ parsers / ultralightparser (1) - root (2)
-
root
_ node (1) - size (1)
-
start
_ element (1) -
start
_ element? (1) -
start
_ prefix _ mapping (1) - text (1)
- text= (1)
- texts (1)
-
to
_ a (1) -
to
_ string (1) - value= (1)
- whitespace (1)
- write (2)
- xpath (1)
検索結果
先頭5件
-
REXML
:: Attribute # element -> REXML :: Element (110413.0) -
その属性が属する要素を返します。
その属性が属する要素を返します。 -
REXML
:: Element # delete _ element(element) -> REXML :: Element (103276.0) -
子要素を削除します。
子要素を削除します。
element で削除する要素を指定できます。整数、文字列、REXML::Element
オブジェクトのいずれかが指定できます。
REXML::Element を指定すると、その要素が削除されます。
整数を指定すると、element 番目の要素を削除します(1-originで指定します)。
文字列を指定すると、XPath としてマッチする要素を削除します。
複数の要素がマッチする場合はそのうち1つが削除されます。
@param element 削除する要素
@see REXML::Elements#delete
//emlist[][ruby]{
require... -
REXML
:: Element # each _ element _ with _ text(text = nil , max = 0 , name = nil) {|element| . . . } -> () (91813.0) -
テキストを子ノードとして 持つすべての子要素を引数としてブロックを呼び出します。
テキストを子ノードとして
持つすべての子要素を引数としてブロックを呼び出します。
text を指定すると、テキストの内容が text であるもののみを対象とします。
maxを指定すると、対象となる子要素の先頭 max 個のみが対象となります。
name を指定すると、それは xpath 文字列と見なされ、
それにマッチするもののみが対象となります。
max に 0 を指定すると、max の指定は無視されます(0個ではありません)。
@param text テキストの中身(文字列)
@param max ブロック呼出の対象とする子要素の最大個数
@param name xpath文字列
... -
REXML
:: Element # next _ element -> Element | nil (91615.0) -
次の兄弟要素を返します。
次の兄弟要素を返します。
次の要素が存在しない場合は nil を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new '<a><b/>text<c/></a>'
doc.root.elements['b'].next_element # => <c/>
doc.root.elements['c'].next_element # => nil
//} -
REXML
:: Element # add _ element(element , attrs = nil) -> Element (84142.0) -
子要素を追加します。
子要素を追加します。
element として追加する要素を指定します。
REXML::Element オブジェクトもしくは文字列を指定します。
element として REXML::Element オブジェクトを指定した場合、それが追加されます。
文字列を指定した場合は、それを要素名とする要素を追加します。
attrs に { String => String } という Hash を渡すと、
追加する要素の属性を指定できます。
子要素の最後に追加されます。
返り値は追加された要素です。
@param element 追加する要素
@param attrs 追加する要素に設定する... -
REXML
:: Element # elements -> REXML :: Elements (83407.0) -
要素が保持している子要素の集合を返します。
要素が保持している子要素の集合を返します。 -
REXML
:: Element # get _ elements(xpath) -> [REXML :: Element] (83146.0) -
xpath にマッチする要素を配列で返します。
xpath にマッチする要素を配列で返します。
xpath には XPath 文字列を指定します。
@param xpath XPath 文字列
@see REXML::Elements#to_a -
REXML
:: Element # each _ element _ with _ attribute(key , value = nil , max = 0 , name = nil) {|element| . . . } -> () (82813.0) -
特定の属性を持つすべての子要素を引数としてブロックを呼び出します。
特定の属性を持つすべての子要素を引数としてブロックを呼び出します。
key で指定した属性名の属性を持つ要素のみを対象とします。
value を指定すると、keyで指定した属性名を持つ属性の値がvalueである
もののみを対象とします。
maxを指定すると、対象となる子要素の先頭 max 個のみが対象となります。
name を指定すると、それは xpath 文字列と見なされ、
それにマッチするもののみが対象となります。
max に 0 を指定すると、max の指定は無視されます(0個ではありません)。
@param key 属性名(文字列)
@param value 属性値(文字列)
... -
REXML
:: Element # each _ element(xpath = nil) {|element| . . . } -> () (82507.0) -
各子要素を引数としてブロックを呼び出します。
各子要素を引数としてブロックを呼び出します。
xpath に文字列を指定するとそれにマッチする子要素のみを対象とします。
@param xpath XPath 文字列 -
REXML
:: Element # previous _ element -> Element | nil (82507.0) -
前の兄弟要素を返します。
前の兄弟要素を返します。
前の要素が存在しない場合は nil を返します。 -
REXML
:: Parsers :: PullEvent # end _ element? -> bool (82204.0) -
XML要素の終了タグなら真を返します。
XML要素の終了タグなら真を返します。 -
REXML
:: SAX2Listener # end _ element(uri , localname , qname) -> () (82204.0) -
要素が終了した(閉じられた)ときに呼び出されるコールバックメソッドです。
要素が終了した(閉じられた)ときに呼び出されるコールバックメソッドです。
@param uri 名前空間のURI文字列が渡されます。対応する名前空間が存在しない場合は
nil が渡されます
@param localname 接頭辞を取り除いた要素名文字列が渡されます
@param qname 修飾名(qualified-name)文字列、つまり接頭辞を含む文字列が渡されます -
REXML
:: Element # has _ elements? -> bool (81973.0) -
self が一つでも子要素を持つならば true を返します。
self が一つでも子要素を持つならば true を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new("<a><b/><c>Text</c></a>")
doc.root.has_elements? # => true
doc.elements["/a/b"].has_elements? # => false
# /a/c はテキストノードしか持たないので false である
doc.elements["/a/c"].has_elements? # => f... -
REXML
:: Attribute # element=(element) (73879.0) -
self が属する要素を変更します。
self が属する要素を変更します。
@param element 変更先の要素(REXML::Element) -
REXML
:: StreamListener # elementdecl(content) -> () (72937.0) -
DTDの要素型宣言をパースしたときに呼び出されるコールバックメソッドです。
DTDの要素型宣言をパースしたときに呼び出されるコールバックメソッドです。
@param content 要素型宣言が文字列として渡されます。
=== 例
<!ELEMENT root (a+)>
という属性型宣言に対しては
content: "<!ELEMENT root (a+)"
という引数が渡されます。 -
REXML
:: AttlistDecl # element _ name -> String (72904.0) -
属性を定義しているエレメントの名前を返します。
属性を定義しているエレメントの名前を返します。 -
REXML
:: Parsers :: PullEvent # start _ element? -> bool (72904.0) -
XML要素の開始タグなら真を返します。
XML要素の開始タグなら真を返します。 -
REXML
:: SAX2Listener # start _ element(uri , localname , qname , attributes) -> () (72904.0) -
要素が開始されたときに呼び出されるコールバックメソッドです。
要素が開始されたときに呼び出されるコールバックメソッドです。
@param uri 名前空間のURI文字列が渡されます。対応する名前空間が存在しない場合は
nil が渡されます
@param localname 接頭辞を取り除いた要素名文字列が渡されます
@param qname 修飾名(qualified-name)文字列、つまり接頭辞を含む文字列が渡されます
@param attribute 属性が { 属性名 => 属性値文字列 } という Hash で
で渡されます。 -
REXML
:: Parsers :: PullEvent # elementdecl? -> bool (72901.0) -
DTDの要素宣言なら真を返します。
DTDの要素宣言なら真を返します。 -
REXML
:: SAX2Listener # elementdecl(content) -> () (72901.0) -
DTDの要素型宣言をパースしたときに呼び出されるコールバックメソッドです。
DTDの要素型宣言をパースしたときに呼び出されるコールバックメソッドです。
@param content 要素型宣言が文字列として渡されます。 -
rexml
/ parsers / sax2parser (72649.0) -
SAX2 と同等の API を持つストリーム式の XML パーサ。
SAX2 と同等の API を持つストリーム式の XML パーサ。
コールバックをパーサオブジェクトに REXML::Parsers::SAX2Parser#listen で
設定してから REXML::Parsers::SAX2Parser#parse を呼び出すことで、
パーサからコールバックが呼び出されます。
コールバックには2種類あって、ブロックを使う方式と REXML::SAX2Listener
を include したクラスのオブジェクトを使う方式があります。詳しくは
REXML::Parsers::SAX2Parser#listen を参照してください。
REXML::Pa... -
rexml
/ parsers / streamparser (72613.0) -
ストリーム式の XML パーサ。
ストリーム式の XML パーサ。
rexml の XML パーサの中では高速ですが、機能は限定的です。
もう少し高機能なストリーム式パーサが必要な場合は
REXML::Parsers::SAX2Parser を用いてください。
パーサからはコールバックによってパースした情報を受け取ります。
REXML::StreamListener を include し、
必要なメソッドをオーバーライドしたクラスのオブジェクトを
コールバックオブジェクトとして REXML::Parsers::StreamParser.new
に渡します。
REXML::Parsers::StreamParser#pa... -
rexml
/ parsers / pullparser (72559.0) -
プル方式の XML パーサ。
プル方式の XML パーサ。
REXML::Parsers::StreamParser はパースした結果をコールバックによって
受動的に受け取りますが、このパーサは REXML::Parsers::PullParser#pull
によってパーサから結果をイベントという形で順に能動的に取り出します。
外部的にはこのクラスのオブジェクトはイベントのキューと見なせます。
pull はそのキューの先頭を取り出し、キューから取り除きます。
pull は REXML::Parsers::PullEvent オブジェクトを返します。
このオブジェクトの
REXML::Parsers::PullEvent... -
rexml
/ parsers / ultralightparser (72289.0) -
パース結果を配列で作られた木構造により返すパーサ。
パース結果を配列で作られた木構造により返すパーサ。
REXML::Parsers::UltraLightParser.new でパーサオブジェクトを
生成し、REXML::Parsers::UltraLightParser#parse でパースし
その結果の木構造を返します。
===[a:nodes] ノードの表現
REXML::Parsers::UltraLightParser#parse が返す
XML の各ノードは配列で表現されます。
配列の最初の要素はシンボルでノードの種類を表わし、2番目以降の要素で
そのノードの情報を保持しています。
例えばテキストノードは [:text, テキ... -
rexml
/ document (72253.0) -
DOM スタイルの XML パーサ。
DOM スタイルの XML パーサ。
REXML::Document.new で XML 文書から DOM ツリーを
構築し、ツリーのノードの各メソッドで文書の内容にアクセスします。
以下のプログラムではブックマークの XML からデータを取り出します。
//emlist[][ruby]{
require 'rexml/document'
require 'pp'
Bookmark = Struct.new(:href, :title, :desc)
doc = REXML::Document.new(<<XML)
<?xml version="1.0" encoding="UTF-... -
REXML
:: Elements (72109.0) -
要素の集合を表すクラスです。
要素の集合を表すクラスです。
XPath による探索をサポートします。
REXML::Element#elements はこのオブジェクトを返します。
XPath で相対パスを指定した場合は、この REXML::Element#elements の
レシーバが基準要素となります。 -
REXML
:: Element (72049.0) -
XML の要素(エレメント、element)を表すクラス。
XML の要素(エレメント、element)を表すクラス。
要素は
* 子要素(children)
* 属性(attributes)
* 名前(name)
を持つものとして特徴付けられます。
また、要素はある別の要素の子となることもできます。 -
REXML
:: ElementDecl (72049.0) -
DTD の要素宣言(Element Declaration)を表すクラスです。
DTD の要素宣言(Element Declaration)を表すクラスです。 -
REXML
:: Elements # delete(element) -> Element (65707.0) -
element で指定した子要素を取り除きます。
element で指定した子要素を取り除きます。
element には、REXML::Element、整数、文字列が指定できます。
Element オブジェクトを指定した場合は、その子要素を取り除きます。
整数を指定した場合には element 番目の子要素を削除します(1-originです)。
文字列を指定した場合は、削除する要素を XPath で指定します。
XPathが複数の要素を指している場合は、そのうち一つを削除します。
取り除かれた要素を返します。
XPath で指定した場合、子要素ではない要素も取り除けることに注意してください。
@param element 削除する要素... -
REXML
:: Elements # delete _ all(xpath) -> [REXML :: Element] (65182.0) -
xpath で指定した XPath 文字列にマッチする要素をすべて取り除きます。
xpath で指定した XPath 文字列にマッチする要素をすべて取り除きます。
@param xpath 取り除く要素を指し示す XPath 文字列
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new('<a><c/><c/><c/><c/></a>')
doc.elements.delete_all("a/c") # => [<c/>, <c/>, <c/>, <c/>]
doc.to_s # => "<a/>"
//} -
REXML
:: Element # texts -> [REXML :: Texts] (64807.0) -
すべてのテキスト子ノードの配列を返します。
すべてのテキスト子ノードの配列を返します。
返される配列は freeze されます。 -
REXML
:: Element # delete _ attribute(key) -> REXML :: Attribute | nil (64531.0) -
要素から key という属性名の属性を削除します。
要素から key という属性名の属性を削除します。
削除された属性を返します。
key という属性名の属性が存在しない場合は削除されずに、nil を返します。
@param key 削除する要素(文字列(属性名) or REXML::Attributeオブジェクト)
//emlist[][ruby]{
require 'rexml/document'
e = REXML::Element.new("E")
e.add_attribute("x", "foo"); e # => <E x='foo'/>
e.add_attribute("y:x", "bar"); e # => <E x... -
REXML
:: Element # clone -> REXML :: Element (64510.0) -
self を複製して返します。
self を複製して返します。
複製されるのは名前、属性、名前空間のみです。
子ノードは複製されません。 -
REXML
:: Element # get _ text(path = nil) -> REXML :: Text | nil (64369.0) -
先頭のテキスト子ノードを返します。
先頭のテキスト子ノードを返します。
raw モードの設定は無視され、常に正規化されたテキストを返します。
REXML::Text#value も参照してください。
path を渡した場合は、その XPath 文字列で指定される
テキストノードの文字列を返します。
テキストノードがない場合には nil を返します。
@param path XPath文字列
@see REXML::Element#text
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new "<p>some text <b>this ... -
REXML
:: Element # context -> {Symbol => object} | nil (64261.0) -
要素の「コンテキスト」を Hash で返します。
要素の「コンテキスト」を Hash で返します。
コンテキストとは text node (REXML::Text) での特別な文字、特に空白について
の取り扱いについての設定です。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
空白を考慮して欲しい要素の名前の集合を文字列の配列で指定します。
また、すべての要素で空白を考慮して欲しい場合には
:all を指定します。
デフォルト値は :all です。
REXML::Element#whitespace も参照してください。
: :compress_whitespac... -
REXML
:: Elements # collect(xpath = nil) {|element| . . } -> [object] (64240.0) -
Enumerable#collect と同様、 各子要素に対しブロックを呼び出し、その返り値の配列を返します。
Enumerable#collect と同様、
各子要素に対しブロックを呼び出し、その返り値の配列を返します。
xpath を指定した場合は、その XPath 文字列に
マッチする要素に対し同様の操作をします。
@param xpath XPath文字列
@see REXML::Elements#each -
REXML
:: Elements # index(element) -> Integer (64096.0) -
element で指定した要素が何番目の子要素であるかを返します。
element で指定した要素が何番目の子要素であるかを返します。
element が子要素でない場合は -1 を返します。
返り値は 1-origin です。
@param element インデックスを知りたい要素(REXML::Element オブジェクト)
@see REXML::Element#[] -
REXML
:: Element # delete _ namespace(namespace = "xmlns") -> self (63973.0) -
名前空間を要素から削除します。
名前空間を要素から削除します。
削除可能な名前空間はそのノードで宣言されているもののみです。
上位の要素で宣言されているものは削除できません。
引数を省略した場合はデフォルトの名前空間を削除します。
@param namespace 削除する名前空間の prefix
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new "<a xmlns:foo='bar' xmlns='twiddle'/>"
doc.root.delete_namespace
doc.to_s # => "<a xmlns:foo=... -
REXML
:: Element # context=(value) (63961.0) -
要素の「コンテキスト」を Hash で設定します。
要素の「コンテキスト」を Hash で設定します。
コンテキストとは、 text node (REXML::Text) での特別な文字、特に空白について
の取り扱いについての設定です。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
空白を考慮して欲しい要素の名前の集合を文字列の配列で指定します。
また、すべての要素で空白を考慮して欲しい場合には
:all を指定します。
デフォルト値は :all です。
REXML::Element#whitespace も参照してください。
: :compress_whitesp... -
REXML
:: Element # text=(text) (63835.0) -
「先頭の」テキストノードを text で置き換えます。
「先頭の」テキストノードを text で置き換えます。
テキストノードを1つ以上保持している場合はそのうち
最初のノードを置き換えます。
要素がテキストノードを保持していない場合は新たなテキストノードが追加されます。
text には文字列、REXML::Text、nil のいずれかが指定できます。
REXML::Text オブジェクトを指定した場合には、それが設定され、
文字列を指定した場合には
REXML::Text.new(text, whitespace(), nil, raw())
で生成される Text オブジェクトが設定されます。
nil を指定すると最初のテキストノードが削... -
REXML
:: Child # next _ sibling=(other) (63817.0) -
other を self の次の隣接ノードとします。
other を self の次の隣接ノードとします。
つまり、親ノードが持つ子ノード列の self の後ろに
other を挿入します。
@param other 挿入するノード
//emlist[][ruby]{
require 'rexml/document'
a = REXML::Element.new("a")
b = a.add_element("b")
c = REXML::Element.new("c")
b.next_sibling = c
d = REXML::Element.new("d")
b.previous_sibling = d
p a.to_s # =>... -
REXML
:: Text # value=(val) (63799.0) -
テキストの内容を val に変更します。
テキストの内容を val に変更します。
val には非正規化された(エスケープされていない)文字列を渡さなければ
なりません。
//emlist[][ruby]{
require 'rexml/document'
e = REXML::Element.new("a")
e.add_text("foo")
e[0].value = "bar"
e.to_s # => "<a>bar</a>"
e[0].value = "<a>"
e.to_s # => "<a><a></a>"
//} -
REXML
:: DocType # external _ id -> String | nil (63781.0) -
DTD が外部サブセットを用いている場合は "SYSTEM", "PUBLIC" の いずれかの文字列を返します。
DTD が外部サブセットを用いている場合は "SYSTEM", "PUBLIC" の
いずれかの文字列を返します。
それ以外の場合は nil を返します。
//emlist[][ruby]{
require 'rexml/document'
doctype = REXML::Document.new(<<EOS).doctype
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
EOS
doctype.... -
REXML
:: Element # text(path = nil) -> String | nil (63763.0) -
先頭のテキスト子ノードの文字列を返します。
先頭のテキスト子ノードの文字列を返します。
テキストノードを複数保持している場合は最初のノードにしか
アクセスできないことに注意してください。
raw モードの設定は無視され、常に正規化されたテキストを返します。
REXML::Text#value も参照してください。
path を渡した場合は、その XPath 文字列で指定される
テキストノードの文字列を返します。
テキストノードがない場合には nil を返します。
@param path XPath文字列
@see REXML::Element#get_text
//emlist[][ruby]{
require 'rexml... -
REXML
:: Element # namespaces -> {String => String} (63673.0) -
self の文脈で定義されている名前空間の情報を返します。
self の文脈で定義されている名前空間の情報を返します。
対象の要素とその外側の要素で定義されている名前空間を、{ prefix => 識別子 }
というハッシュテーブルで返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new("<a xmlns:x='1' xmlns:y='2'><b/><c xmlns:z='3'/></a>")
doc.elements['//b'].namespaces # => {"x"=>"1", "y"=>"2"}
//} -
REXML
:: Element # has _ text? -> bool (63601.0) -
要素がテキストノードを子ノードとして持つ場合に true を返します。
要素がテキストノードを子ノードとして持つ場合に true を返します。 -
REXML
:: Element # root _ node -> REXML :: Document | REXML :: Node (56557.0) -
self が属する文書のルートノードを返します。
self が属する文書のルートノードを返します。
通常はその要素が属する文書(REXML::Document) オブジェクトが
返されます。
その要素が属する REXML::Document オブジェクトが存在しない
場合は木構造上のルートノードが返されます。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<root>
<children>
<grandchildren />
</children>
</root>
EOS
children = doc.get_elements... -
REXML
:: Attributes # delete(attribute) -> REXML :: Element (56308.0) -
指定した属性を取り除きます。
指定した属性を取り除きます。
attribute で取り除く属性を指定します。
文字列もしくは REXML::Attribute オブジェクトを指定します
self が属する要素(REXML::Element)を返します。
@param attribute 取り除く属性(文字列もしくは REXML::Attribute オブジェクト)
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<-EOS)
<root xmlns:foo="http://example.org/foo"
x... -
REXML
:: Elements # each(xpath = nil) {|element| . . . } -> [REXML :: Elements] (56098.0) -
全ての子要素に対しブロックを呼び出します。
全ての子要素に対しブロックを呼び出します。
xpath を指定した場合には、その XPath 文字列に
マッチする要素に対しブロックを呼び出します。
REXML::XPath.each などとは異なり、要素以外の
テキストノードなどはすべて無視されることに注意してください。
@param xpath XPath文字列
//emlist[][ruby]{
require 'rexml/document'
require 'rexml/xpath'
doc = REXML::Document.new '<a><b/><c/><d/>sean<b/><c/><d/></a>'
# <b/>,... -
REXML
:: Parsers :: SAX2Parser # listen(ary , listener) -> () (55975.0) -
コールバックをパーサに登録します。
コールバックをパーサに登録します。
引数の種類やブロックの有無でどのような場合に何がコールバックされかが
変わります。
ブロックを指定した場合はそのブロックがコールバックされます。
ブロックを指定しない場合は REXML::SAX2Listener を include した
クラスのオブジェクトを指定します。
sym は以下のシンボルが指定でき、どの場合にコールバックが呼び出されるかを
指定します。どのような場合にどのような引数でコールバックが呼び出されるか
については、
REXML::SAX2Listener の対応するメソッドで詳しく説明されていますので
そちらを参照してください。... -
REXML
:: Parsers :: SAX2Parser # listen(listener) -> () (55975.0) -
コールバックをパーサに登録します。
コールバックをパーサに登録します。
引数の種類やブロックの有無でどのような場合に何がコールバックされかが
変わります。
ブロックを指定した場合はそのブロックがコールバックされます。
ブロックを指定しない場合は REXML::SAX2Listener を include した
クラスのオブジェクトを指定します。
sym は以下のシンボルが指定でき、どの場合にコールバックが呼び出されるかを
指定します。どのような場合にどのような引数でコールバックが呼び出されるか
については、
REXML::SAX2Listener の対応するメソッドで詳しく説明されていますので
そちらを参照してください。... -
REXML
:: Element . new(arg = UNDEFINED , parent = nil , context = nil) -> REXML :: Element (55942.0) -
要素オブジェクトを生成します。
要素オブジェクトを生成します。
arg が文字列の場合、新たな要素の名前は arg に設定されます。
arg が REXML::Element オブジェクトの場合は、
新たな要素の名前、属性、context が arg のもので初期化されます。
parent で親ノードを指定します。
context には hash table で要素のコンテキストを指定します。
基本的には text node (REXML::Text) での特別な文字、特に空白について
の取り扱いを指定できます。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
... -
REXML
:: Element # document -> REXML :: Document | nil (55603.0) -
self が属する文書(REXML::Document)オブジェクトを返します。
self が属する文書(REXML::Document)オブジェクトを返します。
属する文書がない場合には nil を返します。 -
REXML
:: Elements . new(parent) -> REXML :: Elements (55561.0) -
空の要素の集合を表すオブジェクトを生成します。
空の要素の集合を表すオブジェクトを生成します。
通常は REXML::Element.new によって Elements オブジェクトが
生成されるため、このメソッドを使う必要はありません。
@param parant 親要素オブジェクト -
REXML
:: Attribute # clone -> REXML :: Element (55510.0) -
self を複製し返します。
self を複製し返します。 -
REXML
:: Element # attributes -> REXML :: Attributes (55507.0) -
要素が保持している属性の集合を返します。
要素が保持している属性の集合を返します。 -
REXML
:: Element # comments -> [REXML :: Comments] (55507.0) -
すべての comment 子ノードの配列を返します。
すべての comment 子ノードの配列を返します。
返される配列は freeze されます。 -
REXML
:: ElementDecl . new(src) -> REXML :: ElementDecl (55507.0) -
新たな要素宣言オブジェクトを作ります。
新たな要素宣言オブジェクトを作ります。
@param src 要素宣言文字列 -
REXML
:: Parsers :: SAX2Parser # listen(ary) { . . . } -> () (55375.0) -
コールバックをパーサに登録します。
コールバックをパーサに登録します。
引数の種類やブロックの有無でどのような場合に何がコールバックされかが
変わります。
ブロックを指定した場合はそのブロックがコールバックされます。
ブロックを指定しない場合は REXML::SAX2Listener を include した
クラスのオブジェクトを指定します。
sym は以下のシンボルが指定でき、どの場合にコールバックが呼び出されるかを
指定します。どのような場合にどのような引数でコールバックが呼び出されるか
については、
REXML::SAX2Listener の対応するメソッドで詳しく説明されていますので
そちらを参照してください。... -
REXML
:: Parsers :: SAX2Parser # listen(sym) { . . . } -> () (55375.0) -
コールバックをパーサに登録します。
コールバックをパーサに登録します。
引数の種類やブロックの有無でどのような場合に何がコールバックされかが
変わります。
ブロックを指定した場合はそのブロックがコールバックされます。
ブロックを指定しない場合は REXML::SAX2Listener を include した
クラスのオブジェクトを指定します。
sym は以下のシンボルが指定でき、どの場合にコールバックが呼び出されるかを
指定します。どのような場合にどのような引数でコールバックが呼び出されるか
については、
REXML::SAX2Listener の対応するメソッドで詳しく説明されていますので
そちらを参照してください。... -
REXML
:: Parsers :: SAX2Parser # listen(sym , ary) { . . . } -> () (55375.0) -
コールバックをパーサに登録します。
コールバックをパーサに登録します。
引数の種類やブロックの有無でどのような場合に何がコールバックされかが
変わります。
ブロックを指定した場合はそのブロックがコールバックされます。
ブロックを指定しない場合は REXML::SAX2Listener を include した
クラスのオブジェクトを指定します。
sym は以下のシンボルが指定でき、どの場合にコールバックが呼び出されるかを
指定します。どのような場合にどのような引数でコールバックが呼び出されるか
については、
REXML::SAX2Listener の対応するメソッドで詳しく説明されていますので
そちらを参照してください。... -
REXML
:: Element # attribute(name , namespace = nil) -> REXML :: Attribute | nil (55315.0) -
name で指定される属性を返します。
name で指定される属性を返します。
属性は REXML::Attribute オブジェクトの形で返します。
name は "foo:bar" のように prefix を指定することができます。
namespace で名前空間の URI を指定することで、その名前空間内で
name という属性名を持つ属性を指定できます。
指定した属性名の属性がない場合は nil を返します。
@param name 属性名(文字列)
@param namespace 名前空間のURI(文字列)
//emlist[][ruby]{
require 'rexml/document'
doc = R... -
REXML
:: Elements # inject(xpath = nil , initial = nil) {|element| . . . } -> object (55240.0) -
Enumerable#inject と同様、 各子要素に対し畳み込みをします。
Enumerable#inject と同様、
各子要素に対し畳み込みをします。
xpath を指定した場合は、その XPath 文字列に
マッチする要素に対し同様の操作をします。
@param xpath XPath文字列
@see REXML::Elements#each -
REXML
:: Element # write(output = $ stdout , indent = -1 , transitive = false , ie _ hack = false) (54997.0) -
このメソッドは deprecated です。 REXML::Formatter を代わりに 使ってください。
このメソッドは deprecated です。 REXML::Formatter を代わりに
使ってください。
output にその要素を文字列化したものを(子要素を含め)出力します。
@param output 出力先(IO のように << で書き込めるオブジェクト)
@param indent インデントのスペースの数(-1 だとインデントしない)
@param transitive XMLではインデントのスペースでDOMが変化してしまう場合がある。
これに真を渡すと、XMLのDOMに余計な要素が加わらないように
空白の出力を適当に抑制するようになる
@par... -
REXML
:: StreamListener # attlistdecl(element _ name , attributes , raw _ content) -> () (54940.0) -
DTDの属性リスト宣言をパースしたときに呼び出されるコールバックです。
DTDの属性リスト宣言をパースしたときに呼び出されるコールバックです。
@param element_name 要素名が文字列で渡されます
@param attributes 属性名とそのデフォルト値の対応が
{ 属性名文字列 => デフォルト値文字列(無ければnil) } という
ハッシュテーブルで渡されます
@param raw_content 文書内の属性リスト宣言の文字列がそのまま渡されます
=== 例
<!ATTLIST a att CDATA #REQUIRED xyz CDATA "foobar">
という属性リスト宣言に対しては
element_... -
REXML
:: SAX2Listener # attlistdecl(element , pairs , contents) -> () (54922.0) -
DTDの属性リスト宣言に対し呼び出されるコールバックメソッドです。
DTDの属性リスト宣言に対し呼び出されるコールバックメソッドです。
@param element 要素名が文字列で渡されます
@param pairs 属性名とそのデフォルト値の対応が
{ 属性名文字列 => デフォルト値文字列(無ければnil) } という
ハッシュテーブルで渡されます
@param contents 文書内の属性リスト宣言の文字列がそのまま渡されます -
REXML
:: Element # add _ attribute(key , value) -> () (54853.0) -
要素の属性を追加します。 同じ名前の属性がすでにある場合はその属性を新しい 属性で置き換えます。
要素の属性を追加します。
同じ名前の属性がすでにある場合はその属性を新しい
属性で置き換えます。
引数の与えかたは2通りあります。
要素名と値の2つの文字列で渡す方法と REXML::Attribute オブジェクトを
渡す方法です。
文字列2つで指定する場合、属性値は unnormalized な文字列を渡す必要があります。
@param key 属性名(文字列)
@param value 属性値(文字列)
@param attr 属性(REXML::Attribute オブジェクト)
//emlist[][ruby]{
require 'rexml/document'
doc = ... -
REXML
:: Child # previous _ sibling=(other) (54817.0) -
other を self の前の隣接ノードとします。
other を self の前の隣接ノードとします。
つまり、親ノードが持つ子ノード列の self の前に
other を挿入します。
@param other 挿入するノード
//emlist[][ruby]{
require 'rexml/document'
a = REXML::Element.new("a")
b = a.add_element("b")
c = REXML::Element.new("c")
b.next_sibling = c
d = REXML::Element.new("d")
b.previous_sibling = d
p a.to_s # =>... -
REXML
:: DocType # context -> { Symbol => object } (54745.0) -
DTD が属する文書の「コンテキスト」を返します。
DTD が属する文書の「コンテキスト」を返します。
具体的には親ノードである REXML::Document オブジェクトの
REXML::Element#context を返します。
コンテキストの具体的な内容については REXML::Element#context を
参照してください。 -
REXML
:: Element # add _ namespace(prefix , uri) -> self (54691.0) -
名前空間を要素に追加します。
名前空間を要素に追加します。
引数が2個の場合は prefix と uri を指定します。
引数が1個の場合はデフォルトの namespace の uri を指定します。
既に同じ prefix が存在する場合はそれが上書きされます。
@param prefix 名前空間の prefix
@param uri 名前空間の uri
//emlist[][ruby]{
require 'rexml/document'
a = REXML::Element.new("a")
a.add_namespace("xmlns:foo", "bar" )
a.add_namespace("foo",... -
REXML
:: Element # whitespace -> bool (54691.0) -
要素(self)内で空白が考慮されるならば真を返します。
要素(self)内で空白が考慮されるならば真を返します。
これは、
* REXML::Element#context に :respect_whitespace も :compress_whitespace も
含まれない
* context の :respect_whitespace に self の要素名が含まれていて、
:compress_whitespace に self の要素名が含まれていない。
「含まれている」というのには :all が指定されている場合と、
配列に含まれている場合の両方があります。
のいずれかの場合に真を返します。
要... -
REXML
:: Element # namespace(prefix=nil) -> String (54673.0) -
self の文脈で prefix が指している名前空間の URI を返します。
self の文脈で prefix が指している名前空間の URI を返します。
prefix を省略すると、デフォルトの名前空間の URI を返します。
prefix で指示される名前空間の宣言が存在しない場合は nil を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new("<a xmlns='1' xmlns:y='2'><b/><c xmlns:z='3'/><y:d /></a>")
b = doc.elements['//b']
b.namespace # => "1"
... -
REXML
:: Element # node _ type -> Symbol (54649.0) -
シンボル :element を返します。
シンボル :element を返します。 -
REXML
:: Element # add _ attributes(attrs) -> () (54625.0) -
要素の属性を複数追加します。 同じ名前の属性がすでにある場合はその属性を新しい 属性で置き換えます。
要素の属性を複数追加します。
同じ名前の属性がすでにある場合はその属性を新しい
属性で置き換えます。
attrs には Hash もしくは Array を指定できます。
Hash の場合は、
{ "name1" => "value1", "name2" => "value2", ... }
という形で、配列の場合は
[ ["name1", "value1"], ["name2", "value2"], ... }
という形で追加/更新する属性を指定します。
@param attrs 追加する属性の属性名と属性値の対の集合(Array or Hash)
//emlist[][rub... -
REXML
:: Element # has _ attributes? -> bool (54601.0) -
要素が属性を1つ以上持っていれば真を返します。
要素が属性を1つ以上持っていれば真を返します。 -
REXML
:: Elements # empty? -> bool (54601.0) -
子要素を持たない場合に true を返します。
子要素を持たない場合に true を返します。 -
REXML
:: Element # add _ attribute(attr) -> () (54553.0) -
要素の属性を追加します。 同じ名前の属性がすでにある場合はその属性を新しい 属性で置き換えます。
要素の属性を追加します。
同じ名前の属性がすでにある場合はその属性を新しい
属性で置き換えます。
引数の与えかたは2通りあります。
要素名と値の2つの文字列で渡す方法と REXML::Attribute オブジェクトを
渡す方法です。
文字列2つで指定する場合、属性値は unnormalized な文字列を渡す必要があります。
@param key 属性名(文字列)
@param value 属性値(文字列)
@param attr 属性(REXML::Attribute オブジェクト)
//emlist[][ruby]{
require 'rexml/document'
doc = ... -
REXML
:: Element # add _ namespace(uri) (54391.0) -
名前空間を要素に追加します。
名前空間を要素に追加します。
引数が2個の場合は prefix と uri を指定します。
引数が1個の場合はデフォルトの namespace の uri を指定します。
既に同じ prefix が存在する場合はそれが上書きされます。
@param prefix 名前空間の prefix
@param uri 名前空間の uri
//emlist[][ruby]{
require 'rexml/document'
a = REXML::Element.new("a")
a.add_namespace("xmlns:foo", "bar" )
a.add_namespace("foo",... -
REXML
:: Element # prefixes -> [String] (54373.0) -
self の文脈で定義されている prefix を文字列の配列を返します。
self の文脈で定義されている prefix を文字列の配列を返します。
対象の要素とその外側の要素で定義されている prefix を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new("<a xmlns:x='1' xmlns:y='2'><b/><c xmlns:z='3'/></a>")
doc.elements['//b'].prefixes # => ["x", "y"]
//} -
REXML
:: Elements # size -> Integer (54373.0) -
保持している要素の個数を返します。
保持している要素の個数を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new '<a>sean<b/>elliott<b/>russell<b/></a>'
# doc.root は3つの要素と3つのテキストノードを持つため、6を返す
doc.root.size # => 6
# そのうち要素は3つであるため、以下は3を返す
doc.root.elements.size # => 3
//} -
REXML
:: Element :: UNDEFINED -> String (54301.0) -
"UNDEFINED" という文字列。
"UNDEFINED" という文字列。 -
REXML
:: Elements # <<(element = nil) -> REXML :: Element (47797.0) -
要素 element を追加します。
要素 element を追加します。
element には文字列もしくは REXML::Element オブジェクトを
指定します。文字列を指定した場合には REXML::Element.new(element)
で生成される要素を追加します。
element を省略した場合は、空の要素が追加されます。
追加された要素が返されます。
@param element 追加する要素
//emlist[][ruby]{
require 'rexml/document'
a = REXML::Element.new('a')
a.elements.add(REXML::Element.new... -
REXML
:: Elements # add(element = nil) -> REXML :: Element (47797.0) -
要素 element を追加します。
要素 element を追加します。
element には文字列もしくは REXML::Element オブジェクトを
指定します。文字列を指定した場合には REXML::Element.new(element)
で生成される要素を追加します。
element を省略した場合は、空の要素が追加されます。
追加された要素が返されます。
@param element 追加する要素
//emlist[][ruby]{
require 'rexml/document'
a = REXML::Element.new('a')
a.elements.add(REXML::Element.new... -
REXML
:: Elements # [](index , name = nil) -> REXML :: Element | nil (46918.0) -
index が指し示している要素を返します。
index が指し示している要素を返します。
index には整数もしくは文字列を指定できます。
index に整数を指定した場合は index 番目の子要素を返します。
index は 1-origin です。つまり
最初の要素の index は 1 であり、 0 ではありません。
n 番目の要素の index は n であり、 n-1 ではありません。
これは XPath の仕様に合わせています。
index に文字列を指定した場合はその文字列を XPath と見なし、
それで指定された要素を返します。
XPath が複数の要素を指している場合は、そのうち一つを返します。
XPath... -
REXML
:: DocType # attributes _ of(element) -> [REXML :: Attribute] (46834.0) -
DTD 内の属性リスト宣言で、 element という名前の要素に対し宣言されている 属性の名前とデフォルト値を REXML::Attribute の配列で返します。
DTD 内の属性リスト宣言で、 element という名前の要素に対し宣言されている
属性の名前とデフォルト値を REXML::Attribute の配列で返します。
名前とデフォルト値のペアは、各 Attribute オブジェクトの
REXML::Attribute#name と
REXML::Attribute#value で表現されます。
//emlist[][ruby]{
require 'rexml/document'
doctype = REXML::Document.new(<<EOS).doctype
<!DOCTYPE books [
<!ELEMENT book (c... -
REXML
:: Elements # to _ a(xpath = nil) -> [REXML :: Element] (46726.0) -
すべての子要素の配列を返します。
すべての子要素の配列を返します。
xpath を指定した場合は、その XPath 文字列に
マッチする要素の配列を返します。
REXML::Elements#each と同様、REXML::XPath.match などと
異なり、要素以外の子ノードは無視されます。
@param xpath XPath文字列
//emlist[][ruby]{
require 'rexml/document'
require 'rexml/xpath'
doc = REXML::Document.new '<a>sean<b/>elliott<c/></a>'
doc.root.elements.to_... -
REXML
:: Attributes . new(element) -> REXML :: Attributes (46654.0) -
空の Attributes オブジェクトを生成します。
空の Attributes オブジェクトを生成します。
どの要素の属性であるかを element で指定します。
通常は REXML::Element.new によって Attributes オブジェクト
が生成されるため、このメソッドを使う必要はありません。
@param element 属性が属する要素(REXML::Element オブジェクト) -
REXML
:: Document . new(source = nil , context = {}) -> REXML :: Document (46603.0) -
Document オブジェクトを生成します。
Document オブジェクトを生成します。
source には String、IO、REXML::Document のいずかが
指定できます。 REXML::Document を指定すると
コンテキストと要素、属性が複製されます。
文字列の場合はそれを XML と見なしてパースします。
IOの場合は、XML文書を読み出してパースします。
context で「コンテキスト」を指定します。テキストノードの空白や
特殊文字の取り扱いを Hash で指定します。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
空白を考慮して欲しい要素の名... -
REXML
:: Element # root -> REXML :: Element (46582.0) -
self が属する文書のルート要素を返します。
self が属する文書のルート要素を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<root>
<children>
<grandchildren />
</children>
</root>
EOS
children = doc.get_elements("/root/children").first
children.name # => "children"
children.root.name # => "root"
grandchildren = doc.get... -
REXML
:: XPath . each(element , path = nil , namespaces = {} , variables = {}) {|e| . . . } -> () (46507.0) -
element の path で指定した XPath 文字列にマッチする各ノード に対してブロックを呼び出します。
element の path で指定した XPath 文字列にマッチする各ノード
に対してブロックを呼び出します。
path に相対パスを指定した場合は element からの相対位置で
マッチするノードを探します。
絶対パスを指定した場合は element が属する文書のルート要素からの
位置でマッチするノードを探します。
path を省略すると "*" を指定したことになります。
namespace で名前空間の対応付けを Hash で指定します。
variable で XPath 内の変数に対応する値を指定できます。
XPathインジェクション攻撃を避けるため、適切な
エスケープを... -
REXML
:: Attribute . new(attribute , value , parent = nil) -> REXML :: Attribute (46393.0) -
新たな属性オブジェクトを生成します。
新たな属性オブジェクトを生成します。
2種類の初期化が可能です。
REXML::Attribute オブジェクトを渡した場合は、
属性名とその値がそれから複製されます。
parent で新たに作られる属性オブジェクトが属する
要素が指定できます。
parent を省略した場合は複製元と同じ要素の属するように
設定されます。
また、属性名とその値を文字列で指定することもできます。
parent で新たに作られる属性オブジェクトが属する
要素が指定できます。
parent を省略した場合は nil が設定されます。
通常はこのメソッドは直接は使わず、REXML::Element#add_at... -
REXML
:: Attribute . new(attribute _ to _ clone , parent = nil) -> REXML :: Attribute (46393.0) -
新たな属性オブジェクトを生成します。
新たな属性オブジェクトを生成します。
2種類の初期化が可能です。
REXML::Attribute オブジェクトを渡した場合は、
属性名とその値がそれから複製されます。
parent で新たに作られる属性オブジェクトが属する
要素が指定できます。
parent を省略した場合は複製元と同じ要素の属するように
設定されます。
また、属性名とその値を文字列で指定することもできます。
parent で新たに作られる属性オブジェクトが属する
要素が指定できます。
parent を省略した場合は nil が設定されます。
通常はこのメソッドは直接は使わず、REXML::Element#add_at... -
REXML
:: Elements # []=(index , element) (46258.0) -
集合に要素 element を追加/更新します。
集合に要素 element を追加/更新します。
index で要素の更新する位置を指定します。
index には整数、文字列が指定できます。
整数を指定した場合は index 番目の要素を変更します(1-originです)。
文字列の場合は XPath としてマッチした要素を更新します。
整数/文字列どちらの場合でも対応する要素が存在しない場合は、
末尾に追加されます。
@param index 要素を更新する位置
@param element 要素(REXML::Elementオブジェクト)
//emlist[][ruby]{
require 'rexml/document'
do... -
REXML
:: Node # find _ first _ recursive {|node| . . . } -> REXML :: Node | nil (46255.0) -
self とその各 element node を引数とし、ブロックを呼び出し、 そのブロックの返り値が真であった最初の node を返します。
self とその各 element node を引数とし、ブロックを呼び出し、
そのブロックの返り値が真であった最初の node を返します。
見付からなかった場合は nil を返します。 -
REXML
:: Element # cdatas -> [REXML :: CData] (46207.0) -
すべての cdata 子ノードの配列を返します。
すべての cdata 子ノードの配列を返します。
返される配列は freeze されます。 -
REXML
:: Element # instructions -> [REXML :: Instraction] (46207.0) -
すべての instruction 子ノードの配列を返します。
すべての instruction 子ノードの配列を返します。
返される配列は freeze されます。 -
REXML
:: DocType # attribute _ of(element , attribute) -> String | nil (46114.0) -
DTD 内の属性リスト宣言で、 element という名前の要素の attribute という 名前の属性のデフォルト値を返します。
DTD 内の属性リスト宣言で、 element という名前の要素の attribute という
名前の属性のデフォルト値を返します。
elementという名前の要素の属性値は宣言されていない、
elementという名前の要素にはattributeという名前の属性が宣言されていない、
もしくはデフォルト値が宣言されていない、のいずれかの場合は nil を返します。
@param element 要素名(文字列)
@param attribute 属性名(文字列)
//emlist[][ruby]{
require 'rexml/document'
doctype = REXML::Doc... -
REXML
:: DocType # write(output , indent = 0 , transitive = false , ie _ hack = false) -> () (46063.0) -
output に DTD を出力します。
output に DTD を出力します。
このメソッドは deprecated です。REXML::Formatter で
出力してください。
@param output 出力先の IO オブジェクト
@param indent インデントの深さ。指定しないでください。
@param transitive 無視されます。指定しないでください。
@param ie_hack 無視されます。指定しないでください。
//emlist[][ruby]{
require 'rexml/document'
doctype = REXML::Document.new(<<EOS).doctype
<... -
REXML
:: Attribute # namespace(arg = nil) -> String | nil (45781.0) -
属性の名前空間の URI を返します。
属性の名前空間の URI を返します。
URI が定義されていない場合は nil を返します。
@param arg この値を指定すると、その属性の名前空間でなく、arg という名前空間
の URI が返されます。
通常は省略します。
//emlist[][ruby]{
require 'rexml/document'
e = REXML::Element.new("el")
e.add_attribute("xmlns:ns", "http://www.example.com/ns")
e.add_attribute("ns:r", "rval")
p e.... -
REXML
:: Entity . matches?(string) -> bool (45763.0) -
string が実体宣言の文法に従う文字列であれば真を返します。
string が実体宣言の文法に従う文字列であれば真を返します。
@param string 判定対象の文字列
//emlist[][ruby]{
require 'rexml/document'
p REXML::Entity.matches?('<!ENTITY s "seal">') # => true
p REXML::Entity.matches?('<!ENTITY % s "seal">') # => true
p REXML::Entity.matches?('<!ELEMENT br EMPTY >') # => false
//}