別のキーワード
ライブラリ
- rexml (1)
-
rexml
/ document (327)
クラス
-
REXML
:: AttlistDecl (7) -
REXML
:: Attribute (16) -
REXML
:: Attributes (16) -
REXML
:: CData (4) -
REXML
:: Child (11) -
REXML
:: Comment (9) -
REXML
:: Declaration (2) -
REXML
:: DocType (18) -
REXML
:: Document (21) -
REXML
:: Element (44) -
REXML
:: ElementDecl (1) -
REXML
:: Elements (14) -
REXML
:: Entity (13) -
REXML
:: ExternalEntity (3) -
REXML
:: Formatters :: Default (2) -
REXML
:: Formatters :: Pretty (5) -
REXML
:: Formatters :: Transitive (1) -
REXML
:: Instruction (8) -
REXML
:: NotationDecl (8) -
REXML
:: Parent (29) -
REXML
:: Text (13) -
REXML
:: XMLDecl (18) -
REXML
:: XPath (3)
モジュール
-
REXML
:: EntityConst (5) -
REXML
:: Namespace (8) -
REXML
:: Node (7) -
REXML
:: Security (4)
キーワード
- << (4)
- <=> (2)
- == (4)
- AMP (1)
- APOS (1)
- AttlistDecl (1)
- Attribute (1)
- Attributes (1)
- BaseParser (1)
- CData (1)
- Child (1)
- Comment (1)
- DECLARATION (1)
-
DEFAULT
_ ENTITIES (1) -
DEFAULT
_ VERSION (1) - Declaration (1)
- Default (1)
- DocType (1)
- Document (1)
- Element (1)
- ElementDecl (1)
- Elements (1)
- Encoding (1)
- Entity (1)
- EntityConst (1)
- ExternalEntity (1)
- Functions (1)
- GT (1)
- IOSource (1)
- Instruction (1)
- LT (1)
- Namespace (1)
- Node (1)
- NotationDecl (1)
- Output (1)
- Parent (1)
- ParseException (1)
- Pretty (1)
- QUOT (1)
- Security (1)
- Source (1)
- SourceFactory (1)
- Text (1)
- Transitive (1)
- TreeParser (1)
- UNDEFINED (1)
- XMLDecl (1)
- XMLTokens (1)
- XPath (1)
- XPathParser (1)
- [] (4)
- []= (5)
- add (5)
-
add
_ attribute (2) -
add
_ attributes (1) -
add
_ element (1) -
add
_ namespace (2) - attribute (1)
-
attribute
_ of (1) - attributes (1)
-
attributes
_ of (1) - bytes (1)
- cdatas (1)
- children (1)
- clone (9)
- collect (1)
- comments (1)
- compact (1)
- compact= (1)
- content (1)
- content= (1)
- context (2)
- context= (1)
-
deep
_ clone (1) - default (1)
- delete (3)
-
delete
_ all (2) -
delete
_ at (1) -
delete
_ attribute (1) -
delete
_ element (1) -
delete
_ if (2) -
delete
_ namespace (1) - doctype (2)
- document (2)
- dowrite (1)
- each (6)
-
each
_ attribute (1) -
each
_ child (2) -
each
_ element (1) -
each
_ element _ with _ attribute (1) -
each
_ element _ with _ text (1) -
each
_ index (2) -
each
_ recursive (1) - element (1)
- element= (1)
-
element
_ name (1) - elements (1)
- empty? (2)
- encoding (2)
- encoding= (1)
- entities (1)
- entity (1)
-
entity
_ expansion _ limit (2) -
entity
_ expansion _ limit= (2) -
entity
_ expansion _ text _ limit (2) -
entity
_ expansion _ text _ limit= (2) - external (1)
-
external
_ id (1) -
find
_ first _ recursive (1) - first (1)
-
get
_ attribute (1) -
get
_ attribute _ ns (1) -
get
_ elements (1) -
get
_ text (1) -
has
_ attributes? (1) -
has
_ elements? (1) -
has
_ name? (1) -
has
_ text? (1) - include? (1)
- index (2)
-
index
_ in _ parent (1) - inject (1)
-
insert
_ after (1) -
insert
_ before (1) - instructions (1)
- length (2)
-
local
_ name (1) - match (1)
- matches? (1)
- name (5)
- name= (1)
- namespace (2)
- namespaces (3)
- ndata (1)
- new (24)
-
next
_ element (1) -
next
_ sibling (1) -
next
_ sibling= (1) -
next
_ sibling _ node (1) -
node
_ type (9) - normalize (1)
- normalized (1)
- normalized= (1)
- notation (1)
- notations (1)
- nowrite (1)
- parent (1)
- parent= (1)
- parent? (2)
-
parse
_ stream (1) - prefix (2)
- prefix= (1)
- prefixes (2)
-
previous
_ element (1) -
previous
_ sibling (1) -
previous
_ sibling= (1) -
previous
_ sibling _ node (1) - pubid (1)
- public (2)
- public= (1)
- push (1)
- raw (2)
- raw= (1)
- ref (1)
- remove (2)
-
replace
_ child (1) -
replace
_ with (1) - root (2)
-
root
_ node (1) - size (3)
-
stand
_ alone? (2) - standalone (1)
- standalone= (1)
- string (1)
- string= (1)
- system (2)
- system= (1)
- target (1)
- target= (1)
- text (1)
- text= (1)
- texts (1)
-
to
_ a (3) -
to
_ s (9) -
to
_ string (1) - unnormalize (1)
- unnormalized (1)
- unshift (1)
- value (4)
- value= (1)
- version (2)
- version= (1)
- whitespace (1)
- width (1)
- width= (1)
- write (11)
- writeencoding (1)
- writethis (1)
-
xml
_ decl (1) - xmldecl (1)
- xpath (2)
検索結果
先頭5件
-
rexml
/ document (132091.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 (114253.0)
-
Pure Ruby の XML パーサです。 DOM スタイルと SAX スタイルの両方をカバーしています。
Pure Ruby の XML パーサです。
DOM スタイルと SAX スタイルの両方をカバーしています。
DOM スタイルの API を使うためには rexml/document を使います。
SAX スタイルの API には、
* rexml/parsers/sax2parser
* rexml/parsers/streamparser
のいずれかを用います。
また、それ以外のパーサとして
* rexml/parsers/pullparser
* rexml/parsers/ultralightparser
などもあります。
=== リンク
* REXML ... -
REXML
:: Element # root _ node -> REXML :: Document | REXML :: Node (33697.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
:: Text . new(arg , respect _ whitespace = false , parent = nil , raw = nil , entity _ filter = nil , illegal = REXML :: Text :: NEEDS _ A _ SECOND _ CHECK) (33610.0) -
テキストノードオブジェクトを生成します。
テキストノードオブジェクトを生成します。
arg でノードの内容を指定します。
文字列の場合はそれが内容として使われます。
REXML::Text オブジェクトの場合はその内容が複製されます。
respect_whitespace に真を指定すると、arg に含まれる空白文字は保存されます。
偽の場合は空白はまとめられます。
raw は true, false, nil のいずれかを指定し、生成されるテキストノードが
raw モードであるかどうかを決めます。
true の場合、そのノードは raw モードであると解釈され、
テキストにはエスケープされていないXMLマークアップは
含まれ... -
REXML
:: Document . new(source = nil , context = {}) -> REXML :: Document (33466.0) -
Document オブジェクトを生成します。
Document オブジェクトを生成します。
source には String、IO、REXML::Document のいずかが
指定できます。 REXML::Document を指定すると
コンテキストと要素、属性が複製されます。
文字列の場合はそれを XML と見なしてパースします。
IOの場合は、XML文書を読み出してパースします。
context で「コンテキスト」を指定します。テキストノードの空白や
特殊文字の取り扱いを Hash で指定します。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
空白を考慮して欲しい要素の名... -
REXML
:: Element . new(arg = UNDEFINED , parent = nil , context = nil) -> REXML :: Element (33466.0) -
要素オブジェクトを生成します。
要素オブジェクトを生成します。
arg が文字列の場合、新たな要素の名前は arg に設定されます。
arg が REXML::Element オブジェクトの場合は、
新たな要素の名前、属性、context が arg のもので初期化されます。
parent で親ノードを指定します。
context には hash table で要素のコンテキストを指定します。
基本的には text node (REXML::Text) での特別な文字、特に空白について
の取り扱いを指定できます。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
... -
REXML
:: DocType # attributes _ of(element) -> [REXML :: Attribute] (33442.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
:: CData . new(text , respect _ whitespace = true , parent = nil) -> REXML :: CData (33430.0) -
text をテキストとして持つ CData オブジェクトを生成します。
text をテキストとして持つ CData オブジェクトを生成します。
respect_whitespace に真を指定すると、text に含まれる空白文字は保存されます。
偽の場合は空白はまとめられます。
@param text テキスト文字列
@param respect_whitespace 空白を保存するかどうかを決める真偽値
@param parent 親ノード
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<root />
EOS
doc.root.add(REXML::... -
REXML
:: Elements # to _ a(xpath = nil) -> [REXML :: Element] (33430.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
:: Elements # <<(element = nil) -> REXML :: Element (33415.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 (33415.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
:: Attributes # delete(attribute) -> REXML :: Element (33412.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
:: Element # delete _ element(element) -> REXML :: Element (33412.0) -
子要素を削除します。
子要素を削除します。
element で削除する要素を指定できます。整数、文字列、REXML::Element
オブジェクトのいずれかが指定できます。
REXML::Element を指定すると、その要素が削除されます。
整数を指定すると、element 番目の要素を削除します(1-originで指定します)。
文字列を指定すると、XPath としてマッチする要素を削除します。
複数の要素がマッチする場合はそのうち1つが削除されます。
@param element 削除する要素
@see REXML::Elements#delete
//emlist[][ruby]{
require... -
REXML
:: Elements # each(xpath = nil) {|element| . . . } -> [REXML :: Elements] (33412.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
:: Element # get _ text(path = nil) -> REXML :: Text | nil (33394.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
:: Attribute . new(attribute , value , parent = nil) -> REXML :: Attribute (33379.0) -
新たな属性オブジェクトを生成します。
新たな属性オブジェクトを生成します。
2種類の初期化が可能です。
REXML::Attribute オブジェクトを渡した場合は、
属性名とその値がそれから複製されます。
parent で新たに作られる属性オブジェクトが属する
要素が指定できます。
parent を省略した場合は複製元と同じ要素の属するように
設定されます。
また、属性名とその値を文字列で指定することもできます。
parent で新たに作られる属性オブジェクトが属する
要素が指定できます。
parent を省略した場合は nil が設定されます。
通常はこのメソッドは直接は使わず、REXML::Element#add_at... -
REXML
:: Attribute . new(attribute _ to _ clone , parent = nil) -> REXML :: Attribute (33379.0) -
新たな属性オブジェクトを生成します。
新たな属性オブジェクトを生成します。
2種類の初期化が可能です。
REXML::Attribute オブジェクトを渡した場合は、
属性名とその値がそれから複製されます。
parent で新たに作られる属性オブジェクトが属する
要素が指定できます。
parent を省略した場合は複製元と同じ要素の属するように
設定されます。
また、属性名とその値を文字列で指定することもできます。
parent で新たに作られる属性オブジェクトが属する
要素が指定できます。
parent を省略した場合は nil が設定されます。
通常はこのメソッドは直接は使わず、REXML::Element#add_at... -
REXML
:: DocType # entities -> { String => REXML :: Entity } (33376.0) -
DTD で宣言されている実体の集合を Hash で返します。
DTD で宣言されている実体の集合を Hash で返します。
返される Hash は実体参照名をキーとし、対応する REXML::Entity オブジェクト
を値とするハッシュテーブルです。
これには、XML のデフォルトの実体(gt, lt, quot, apos)も含まれています。
//emlist[][ruby]{
doctype = REXML::Document.new(<<EOS).doctype
<!DOCTYPE foo [
<!ENTITY bar "barbarbarbar">
]>
EOS
p doctype.entities # => { "gt" => #... -
REXML
:: DocType . new(source , parent = nil) -> REXML :: DocType (33376.0) -
DocType オブジェクトを生成します。
DocType オブジェクトを生成します。
REXML::Source オブジェクトの場合は、Source オブジェクトが
保持しているDTDのテキストがパースされ、その内容によって DocType
オブジェクトが初期化されます。
REXML::DocType.new(Source.new(<<EOS))
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
EOS
このインターフェースは dep... -
REXML
:: Element # attribute(name , namespace = nil) -> REXML :: Attribute | nil (33376.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
:: Element # delete _ attribute(key) -> REXML :: Attribute | nil (33376.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
:: Elements # [](index , name = nil) -> REXML :: Element | nil (33376.0) -
index が指し示している要素を返します。
index が指し示している要素を返します。
index には整数もしくは文字列を指定できます。
index に整数を指定した場合は index 番目の子要素を返します。
index は 1-origin です。つまり
最初の要素の index は 1 であり、 0 ではありません。
n 番目の要素の index は n であり、 n-1 ではありません。
これは XPath の仕様に合わせています。
index に文字列を指定した場合はその文字列を XPath と見なし、
それで指定された要素を返します。
XPath が複数の要素を指している場合は、そのうち一つを返します。
XPath... -
REXML
:: Entity . new(array) -> REXML :: Entity (33361.0) -
新たな Entity オブジェクトを生成して返します。
新たな Entity オブジェクトを生成して返します。
name, value で実体の名前とその値を定義します。
parent はその entity オブジェクトが属するノードを渡します。
reference でその実体宣言がパラメータ実体(parameter entity)かどうかを指定します。
このコンストラクタでは単純な内部実体(internal entity)宣言のみを実現できます。
それ以外の内容を保持する Entity オブジェクトが欲しい場合は、
文書に適切な DTD を含めておいてそれを REXML::Document.new で
パースするようにしてください。
配列... -
REXML
:: Entity . new(name , value , parent=nil , reference=false) -> REXML :: Entity (33361.0) -
新たな Entity オブジェクトを生成して返します。
新たな Entity オブジェクトを生成して返します。
name, value で実体の名前とその値を定義します。
parent はその entity オブジェクトが属するノードを渡します。
reference でその実体宣言がパラメータ実体(parameter entity)かどうかを指定します。
このコンストラクタでは単純な内部実体(internal entity)宣言のみを実現できます。
それ以外の内容を保持する Entity オブジェクトが欲しい場合は、
文書に適切な DTD を含めておいてそれを REXML::Document.new で
パースするようにしてください。
配列... -
REXML
:: Attributes # delete _ all(name) -> [REXML :: Attribute] (33358.0) -
name という名前を持つ属性をすべて削除します。
name という名前を持つ属性をすべて削除します。
削除された属性を配列で返します。
@param name 削除する属性の名前
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<-EOS)
<root xmlns:foo="http://example.org/foo"
xmlns:bar="http://example.org/bar">
<a foo:att='1' bar:att='2' att='<'/>
</root>
EOS
a = doc.get_elem... -
REXML
:: Attributes # get _ attribute _ ns(namespace , name) -> REXML :: Attribute | nil (33358.0) -
namespace と name で特定される属性を返します。
namespace と name で特定される属性を返します。
namespace で名前空間を、 name で prefix を含まない属性名を
指定します。
指定された属性が存在しない場合は nil を返します。
XML プロセッサが prefix を置き換えてしまった場合でも、このメソッドを
使うことで属性を正しく指定することができます。
@param namespace 名前空間(URI, 文字列)
@param name 属性名(文字列)
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.ne... -
REXML
:: Element # root -> REXML :: Element (33358.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
:: Elements # delete _ all(xpath) -> [REXML :: Element] (33358.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
:: Text # doctype -> REXML :: DocType | nil (33358.0) -
テキストノードが属する文書の DTD を返します。
テキストノードが属する文書の DTD を返します。
そのような文書(REXML::Document)が存在しない、すなわち
テキストノードの親ノードを辿っても REXML::Document に到達しない、
場合には nil を返します。
@see REXML::DocType -
REXML
:: Child # document -> REXML :: Document | nil (33352.0) -
そのノードが属する document (REXML::Document) を返します。
そのノードが属する document (REXML::Document) を返します。
属する document が存在しない場合は nil を返します。 -
REXML
:: Child . new(parent = nil) -> REXML :: Child (33352.0) -
REXML::Child オブジェクトを生成します。
REXML::Child オブジェクトを生成します。
parent で親ノードを指定します。
親ノードへの追加は行わないため、オブジェクト生成後に親に
適切に設定する必要があります。
通常、このメソッドは直接は使いません。継承先のクラスが適切に
このメソッド(initialize)を呼び出します。
@param parent 親ノード -
REXML
:: DocType # notation(name) -> REXML :: NotationDecl | nil (33352.0) -
DTD に含まれている記法宣言 (REXML::NotationDecl) で name という名前を持つものを返します。
DTD に含まれている記法宣言 (REXML::NotationDecl) で
name という名前を持つものを返します。
name という名前を持つ記法宣言が存在しない場合は nil を返します。
@param name 検索する記法名 -
REXML
:: DocType # notations -> [REXML :: NotationDecl] (33352.0) -
DTD に含まれている記法宣言 (REXML::NotationDecl) を 配列で返します。
DTD に含まれている記法宣言 (REXML::NotationDecl) を
配列で返します。 -
REXML
:: Document :: DECLARATION -> REXML :: XMLDecl (33352.0) -
この定数は deprecated です。REXML::XMLDecl.default を 代わりに使ってください。
この定数は deprecated です。REXML::XMLDecl.default を
代わりに使ってください。
デフォルトとして使えるXML宣言オブジェクト。 -
REXML
:: Element # document -> REXML :: Document | nil (33352.0) -
self が属する文書(REXML::Document)オブジェクトを返します。
self が属する文書(REXML::Document)オブジェクトを返します。
属する文書がない場合には nil を返します。 -
REXML
:: Parent . new(parent = nil) -> REXML :: Parent (33352.0) -
REXML::Parent オブジェクトを生成します。
REXML::Parent オブジェクトを生成します。
子ノード列は空列に初期化されます。
parent で親ノードを指定します。
親ノードへの追加は行わないため、オブジェクト生成後に親に
適切に設定する必要があります。
通常、このメソッドは直接は使いません。継承先のクラスが適切に
このメソッド(initialize)を呼び出します。
@param parent 親ノード -
REXML
:: Comment . new(comment , parent = nil) -> REXML :: Comment (33343.0) -
Comment オブジェクトを生成します。
Comment オブジェクトを生成します。
引数に REXML::Comment オブジェクトを渡すとその内容が複製されます
(親ノードの情報は複製されません)。
@param string コメント文字列
@param comment REXML::Comment オブジェクト
@param parent 親ノード -
REXML
:: Comment . new(string , parent = nil) -> REXML :: Comment (33343.0) -
Comment オブジェクトを生成します。
Comment オブジェクトを生成します。
引数に REXML::Comment オブジェクトを渡すとその内容が複製されます
(親ノードの情報は複製されません)。
@param string コメント文字列
@param comment REXML::Comment オブジェクト
@param parent 親ノード -
REXML
:: Attributes . new(element) -> REXML :: Attributes (33340.0) -
空の Attributes オブジェクトを生成します。
空の Attributes オブジェクトを生成します。
どの要素の属性であるかを element で指定します。
通常は REXML::Element.new によって Attributes オブジェクト
が生成されるため、このメソッドを使う必要はありません。
@param element 属性が属する要素(REXML::Element オブジェクト) -
REXML
:: Child # next _ sibling -> REXML :: Node (33340.0) -
次の隣接ノードを返します。
次の隣接ノードを返します。
REXML::Node#next_sibling_node の別名です。
@see REXML::Child#next_sibling= -
REXML
:: Child # previous _ sibling -> REXML :: Node (33340.0) -
前の隣接ノードを返します。
前の隣接ノードを返します。
REXML::Node#previous_sibling_node の別名です。
@see REXML::Child#previous_sibling= -
REXML
:: DocType # clone -> REXML :: DocType (33340.0) -
self の複製を返します。
self の複製を返します。
external_id (REXML::DocType#external_id) と
名前(REXML::DocType#name) のみ複製されるため、
結果として得られるオブジェクトはあまり有用ではないでしょう。 -
REXML
:: Child # parent -> REXML :: Parent|nil (33322.0) -
親ノードを返します。
親ノードを返します。
ルートノードの場合は nil を返します。
@see REXML::Child#parent= -
REXML
:: DocType :: DEFAULT _ ENTITIES -> { String => REXML :: Entity } (33322.0) -
XML の仕様上デフォルトで定義されている実体の Hash table。
XML の仕様上デフォルトで定義されている実体の Hash table。
"amp" => REXML::EntityConst::AMP は含まれません。 -
REXML
:: Document # clone -> REXML :: Document (33322.0) -
self を複製します。
self を複製します。
REXML::Document.new(self) と同じです。 -
REXML
:: Element # get _ elements(xpath) -> [REXML :: Element] (33322.0) -
xpath にマッチする要素を配列で返します。
xpath にマッチする要素を配列で返します。
xpath には XPath 文字列を指定します。
@param xpath XPath 文字列
@see REXML::Elements#to_a -
REXML
:: Elements . new(parent) -> REXML :: Elements (33322.0) -
空の要素の集合を表すオブジェクトを生成します。
空の要素の集合を表すオブジェクトを生成します。
通常は REXML::Element.new によって Elements オブジェクトが
生成されるため、このメソッドを使う必要はありません。
@param parant 親要素オブジェクト -
REXML
:: Parent # children -> [REXML :: Child] (33307.0) -
子ノード列の配列を返します。
子ノード列の配列を返します。 -
REXML
:: Parent # to _ a -> [REXML :: Child] (33307.0) -
子ノード列の配列を返します。
子ノード列の配列を返します。 -
REXML
:: AttlistDecl . new(source) -> REXML :: AttlistDecl (33304.0) -
このメソッドは内部用なので使わないでください。
このメソッドは内部用なので使わないでください。 -
REXML
:: Attribute # clone -> REXML :: Element (33304.0) -
self を複製し返します。
self を複製し返します。 -
REXML
:: Attribute # element -> REXML :: Element (33304.0) -
その属性が属する要素を返します。
その属性が属する要素を返します。 -
REXML
:: CData # clone -> REXML :: CData (33304.0) -
self を複製して返します。
self を複製して返します。
親ノードの情報は複製されません。 -
REXML
:: Comment # clone -> REXML :: Comment (33304.0) -
内容が複製された Comment オブジェクトを返します。 (親ノードの情報は複製されません)。
内容が複製された Comment オブジェクトを返します。
(親ノードの情報は複製されません)。 -
REXML
:: Document # doctype -> REXML :: DocType | nil (33304.0) -
文書の DTD を返します。
文書の DTD を返します。
文書が DTD を持たない場合は nil を返します。 -
REXML
:: Document # root -> REXML :: Element | nil (33304.0) -
文書のルート要素を返します。
文書のルート要素を返します。
文書がルート要素を持たない場合は nil を返します。 -
REXML
:: Document # xml _ decl -> REXML :: XMLDecl | nil (33304.0) -
文書の XML 宣言を返します。
文書の XML 宣言を返します。
文書が XML 宣言を持たない場合は nil を返します。 -
REXML
:: Element # attributes -> REXML :: Attributes (33304.0) -
要素が保持している属性の集合を返します。
要素が保持している属性の集合を返します。 -
REXML
:: Element # cdatas -> [REXML :: CData] (33304.0) -
すべての cdata 子ノードの配列を返します。
すべての cdata 子ノードの配列を返します。
返される配列は freeze されます。 -
REXML
:: Element # clone -> REXML :: Element (33304.0) -
self を複製して返します。
self を複製して返します。
複製されるのは名前、属性、名前空間のみです。
子ノードは複製されません。 -
REXML
:: Element # comments -> [REXML :: Comments] (33304.0) -
すべての comment 子ノードの配列を返します。
すべての comment 子ノードの配列を返します。
返される配列は freeze されます。 -
REXML
:: Element # elements -> REXML :: Elements (33304.0) -
要素が保持している子要素の集合を返します。
要素が保持している子要素の集合を返します。 -
REXML
:: Element # instructions -> [REXML :: Instraction] (33304.0) -
すべての instruction 子ノードの配列を返します。
すべての instruction 子ノードの配列を返します。
返される配列は freeze されます。 -
REXML
:: Element # texts -> [REXML :: Texts] (33304.0) -
すべてのテキスト子ノードの配列を返します。
すべてのテキスト子ノードの配列を返します。
返される配列は freeze されます。 -
REXML
:: ElementDecl . new(src) -> REXML :: ElementDecl (33304.0) -
新たな要素宣言オブジェクトを作ります。
新たな要素宣言オブジェクトを作ります。
@param src 要素宣言文字列 -
REXML
:: EntityConst :: AMP -> REXML :: Entity (33304.0) -
「&」「&」というエンティティを表わすオブジェクト。
「&」「&」というエンティティを表わすオブジェクト。 -
REXML
:: EntityConst :: GT -> REXML :: Entity (33304.0) -
「>」「>」というエンティティを表わすオブジェクト。
「>」「>」というエンティティを表わすオブジェクト。 -
REXML
:: EntityConst :: LT -> REXML :: Entity (33304.0) -
「<」「<」というエンティティを表わすオブジェクト。
「<」「<」というエンティティを表わすオブジェクト。 -
REXML
:: EntityConst :: QUOT -> REXML :: Entity (33304.0) -
「"」「"」というエンティティを表わすオブジェクト。
「"」「"」というエンティティを表わすオブジェクト。 -
REXML
:: ExternalEntity . new(src) -> REXML :: ExternalEntity (33304.0) -
新たな ExternalEntity オブジェクトを生成します。
新たな ExternalEntity オブジェクトを生成します。
@param src 宣言文字列 -
REXML
:: Formatters :: Default . new(ie _ hack=false) -> REXML :: Formatter :: Default (33304.0) -
フォーマッタオブジェクトを生成して返します。
フォーマッタオブジェクトを生成して返します。
このフォーマッタによる出力は基本的にテキストの空白や改行を変化させません。
ie_hack に真を渡すと、空のタグを閉じる前で空白を挿入します。
これは特定のバージョンのIEのXMLパーサのバグを避けるための機能です。
@param ie_hack 空のタグを閉じる所にスペースを入れるかどうかを指定します -
REXML
:: Formatters :: Pretty . new(indentation=2 , ie _ hack=false) -> REXML :: Formatter :: Pretty (33304.0) -
フォーマッタオブジェクトを生成して返します。
フォーマッタオブジェクトを生成して返します。
このフォーマッタによる出力はテキストの空白や改行を調整し、
適切なインデントを挿入して読みやすいXMLを出力します。
indentation でインデント幅を(空白の数で)指定します。
ie_hack に真を渡すと、空のタグを閉じる前で空白を挿入します。
これは特定のバージョンのIEのXMLパーサのバグを避けるための機能です。
@param indentation 出力のインデント幅
@param ie_hack 空のタグを閉じる所にスペースを入れるかどうか -
REXML
:: Formatters :: Transitive . new(indentation=2 , ie _ hack=false) -> REXML :: Formatter :: Transitive (33304.0) -
フォーマッタオブジェクトを生成して返します。
フォーマッタオブジェクトを生成して返します。
このフォーマッタによる出力は基本的にテキストの空白や改行を変化させないと
いう制約のもと、出力を整形します。
indentation でインデント幅を指定できます。
ie_hack に真を渡すと、空のタグを閉じる前で空白を挿入します。
これは特定のバージョンのIEのXMLパーサのバグを避けるための機能です。
@param indentation インデント幅
@param ie_hack 空のタグを閉じる所にスペースを入れるかどうかを指定します -
REXML
:: Instruction # clone -> REXML :: Instruction (33304.0) -
self を複製します。
self を複製します。 -
REXML
:: Instruction . new(target , content = nil) -> REXML :: Instruction (33304.0) -
新たな Instruction オブジェクトを生成します。
新たな Instruction オブジェクトを生成します。
@param target ターゲット
@param content 内容 -
REXML
:: Node # find _ first _ recursive {|node| . . . } -> REXML :: Node | nil (33304.0) -
self とその各 element node を引数とし、ブロックを呼び出し、 そのブロックの返り値が真であった最初の node を返します。
self とその各 element node を引数とし、ブロックを呼び出し、
そのブロックの返り値が真であった最初の node を返します。
見付からなかった場合は nil を返します。 -
REXML
:: Node # next _ sibling _ node -> REXML :: Node | nil (33304.0) -
次の兄弟ノードを返します。
次の兄弟ノードを返します。
次の兄弟ノードが存在しない場合(ノードがルートである場合や、
最後のノードである場合)は nil を返します。 -
REXML
:: Node # previous _ sibling _ node -> REXML :: Node | nil (33304.0) -
前の兄弟ノードを返します。
前の兄弟ノードを返します。
前の兄弟ノードが存在しない場合(ノードがルートである場合や、
最初のノードである場合)は nil を返します。 -
REXML
:: NotationDecl . new(name , middle , pub , sys) -> REXML :: NotationDecl (33304.0) -
NotationDecl オブジェクトを生成します。
NotationDecl オブジェクトを生成します。
@param name 記法名(文字列)
@param middle 種別("PUBLIC" もしくは "SYSTEM")
@param pub 公開識別子(文字列)
@param sys URI(文字列) -
REXML
:: Parent # [](index) -> REXML :: Child | nil (33304.0) -
子ノード列上の index で指定された場所のノードを返します。
子ノード列上の index で指定された場所のノードを返します。
範囲外を指定した場合は nil を返します。 -
REXML
:: Parent # deep _ clone -> REXML :: Parent (33304.0) -
ノードを複製し、複製されたノードを返します。
ノードを複製し、複製されたノードを返します。
子ノードも複製されます。 -
REXML
:: Parent # delete(object) -> REXML :: Child | nil (33304.0) -
object を子ノード列から削除します。
object を子ノード列から削除します。
削除されたノードの親は nil に設定されます。
削除したノードを返します。削除されなかった場合は nil を返します。
@param object 削除するノード -
REXML
:: Parent # delete _ at(index) -> REXML :: Child | nil (33304.0) -
子ノード列上の index で指定された場所の要素を取り除きます。
子ノード列上の index で指定された場所の要素を取り除きます。
取り除いだノードを返します。indexが範囲外である場合は何もせず
nil を返します。 -
REXML
:: Text # clone -> REXML :: Text (33304.0) -
self を複製します。
self を複製します。 -
REXML
:: XMLDecl # clone -> REXML :: XMLDecl (33304.0) -
self を複製します。
self を複製します。 -
REXML
:: XMLDecl . default -> REXML :: XMLDecl (33304.0) -
XML宣言を含まない文章でデフォルトで使うための XMLDecl オブジェクトを生成して返します。
XML宣言を含まない文章でデフォルトで使うための
XMLDecl オブジェクトを生成して返します。 -
REXML
:: XMLDecl . new(version = REXML :: XMLDecl :: DEFAULT _ VERSION , encoding = nil , standalone = nil) (33304.0) -
新たな XMLDecl オブジェクトを生成して返します。
新たな XMLDecl オブジェクトを生成して返します。
version 以外は省略可能です。
@param version バージョン(文字列)
@param encoding エンコーディング(文字列 or nil)
@param standalone スタンドアロン文章かどうか("yes", "no", nil) -
REXML
:: XMLDecl (33181.0) -
XML 宣言を表すクラス。
XML 宣言を表すクラス。
文書から XML 宣言を取り出すには REXML::Document#xml_decl を使います。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<e />
EOS
xml_decl = doc.xml_decl
xml_decl.version # => "1.0"
xml_decl.encoding # => "UTF-8"
xml_de... -
REXML
:: XPath . first(element , path = nil , namespaces = {} , variables = {}) -> Node | nil (33181.0) -
element の path で指定した XPath 文字列にマッチする最初のノードを 返します。
element の path で指定した XPath 文字列にマッチする最初のノードを
返します。
path に相対パスを指定した場合は element からの相対位置で
マッチするノードを探します。
絶対パスを指定した場合は element が属する文書のルート要素からの
位置でマッチするノードを探します。
path を省略すると "*" を指定したことになります。
namespace で名前空間の対応付けを指定します。
variable で XPath 内の変数に対応する値を指定できます。
XPathインジェクション攻撃を避けるため、適切な
エスケープを付加するため、に用います。
... -
REXML
:: Element # add _ element(element , attrs = nil) -> Element (33145.0) -
子要素を追加します。
子要素を追加します。
element として追加する要素を指定します。
REXML::Element オブジェクトもしくは文字列を指定します。
element として REXML::Element オブジェクトを指定した場合、それが追加されます。
文字列を指定した場合は、それを要素名とする要素を追加します。
attrs に { String => String } という Hash を渡すと、
追加する要素の属性を指定できます。
子要素の最後に追加されます。
返り値は追加された要素です。
@param element 追加する要素
@param attrs 追加する要素に設定する... -
REXML
:: Formatters :: Default (33145.0) -
XMLドキュメントを(文字列として)出力するクラスです。
XMLドキュメントを(文字列として)出力するクラスです。
REXML::Formatters::Pretty と
異なりテキストの改行や空白を修正せずにそのまま出力します。
//emlist[][ruby]{
require 'rexml/document'
require 'rexml/formatters/default'
doc = REXML::Document.new <<EOS
<root>
<children>
<grandchildren/>
</children>
</root>
EOS
default_formatter = REXML::Formatters::... -
REXML
:: DocType (33127.0) -
XML の DTD(文書型定義、Document Type Definition)を表すクラスです。
XML の DTD(文書型定義、Document Type Definition)を表すクラスです。
rexml では DTD は積極的にはサポートされていません。
デフォルトの実体定義(gt, lt, amp, quot apos)の解決のため DTD は
ある程度はサポートされますが、スキーマの定義や検証をしたい場合は
XML schema や RELAX NG などを使ってください。
子ノード(REXML::Parent#children)として、
* REXML::ElementDecl
* REXML::ExternalEntity
* REXML::Entity
... -
REXML
:: Element # context -> {Symbol => object} | nil (33127.0) -
要素の「コンテキスト」を Hash で返します。
要素の「コンテキスト」を Hash で返します。
コンテキストとは text node (REXML::Text) での特別な文字、特に空白について
の取り扱いについての設定です。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
空白を考慮して欲しい要素の名前の集合を文字列の配列で指定します。
また、すべての要素で空白を考慮して欲しい場合には
:all を指定します。
デフォルト値は :all です。
REXML::Element#whitespace も参照してください。
: :compress_whitespac... -
REXML
:: Element # context=(value) (33127.0) -
要素の「コンテキスト」を Hash で設定します。
要素の「コンテキスト」を Hash で設定します。
コンテキストとは、 text node (REXML::Text) での特別な文字、特に空白について
の取り扱いについての設定です。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
空白を考慮して欲しい要素の名前の集合を文字列の配列で指定します。
また、すべての要素で空白を考慮して欲しい場合には
:all を指定します。
デフォルト値は :all です。
REXML::Element#whitespace も参照してください。
: :compress_whitesp... -
REXML
:: Element # text=(text) (33127.0) -
「先頭の」テキストノードを text で置き換えます。
「先頭の」テキストノードを text で置き換えます。
テキストノードを1つ以上保持している場合はそのうち
最初のノードを置き換えます。
要素がテキストノードを保持していない場合は新たなテキストノードが追加されます。
text には文字列、REXML::Text、nil のいずれかが指定できます。
REXML::Text オブジェクトを指定した場合には、それが設定され、
文字列を指定した場合には
REXML::Text.new(text, whitespace(), nil, raw())
で生成される Text オブジェクトが設定されます。
nil を指定すると最初のテキストノードが削... -
REXML
:: Elements # []=(index , element) (33127.0) -
集合に要素 element を追加/更新します。
集合に要素 element を追加/更新します。
index で要素の更新する位置を指定します。
index には整数、文字列が指定できます。
整数を指定した場合は index 番目の要素を変更します(1-originです)。
文字列の場合は XPath としてマッチした要素を更新します。
整数/文字列どちらの場合でも対応する要素が存在しない場合は、
末尾に追加されます。
@param index 要素を更新する位置
@param element 要素(REXML::Elementオブジェクト)
//emlist[][ruby]{
require 'rexml/document'
do... -
REXML
:: CData # to _ s -> String (33109.0) -
テキスト文字列を返します。
テキスト文字列を返します。
@see REXML::Text#value, REXML::Text#to_s
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<root><![CDATA[foobar baz]]></root>
EOS
doc.root[0].class # => REXML::CData
doc.root[0].value # => "foobar baz"
//} -
REXML
:: CData # value -> String (33109.0) -
テキスト文字列を返します。
テキスト文字列を返します。
@see REXML::Text#value, REXML::Text#to_s
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<root><![CDATA[foobar baz]]></root>
EOS
doc.root[0].class # => REXML::CData
doc.root[0].value # => "foobar baz"
//} -
REXML
:: Element # add _ attribute(attr) -> () (33109.0) -
要素の属性を追加します。 同じ名前の属性がすでにある場合はその属性を新しい 属性で置き換えます。
要素の属性を追加します。
同じ名前の属性がすでにある場合はその属性を新しい
属性で置き換えます。
引数の与えかたは2通りあります。
要素名と値の2つの文字列で渡す方法と REXML::Attribute オブジェクトを
渡す方法です。
文字列2つで指定する場合、属性値は unnormalized な文字列を渡す必要があります。
@param key 属性名(文字列)
@param value 属性値(文字列)
@param attr 属性(REXML::Attribute オブジェクト)
//emlist[][ruby]{
require 'rexml/document'
doc = ... -
REXML
:: Element # add _ attribute(key , value) -> () (33109.0) -
要素の属性を追加します。 同じ名前の属性がすでにある場合はその属性を新しい 属性で置き換えます。
要素の属性を追加します。
同じ名前の属性がすでにある場合はその属性を新しい
属性で置き換えます。
引数の与えかたは2通りあります。
要素名と値の2つの文字列で渡す方法と REXML::Attribute オブジェクトを
渡す方法です。
文字列2つで指定する場合、属性値は unnormalized な文字列を渡す必要があります。
@param key 属性名(文字列)
@param value 属性値(文字列)
@param attr 属性(REXML::Attribute オブジェクト)
//emlist[][ruby]{
require 'rexml/document'
doc = ...