class REXML::XMLDecl
クラスの継承リスト: REXML::XMLDecl < REXML::Encoding < REXML::Child < REXML::Node < Object < Kernel < BasicObject
要約
XML 宣言を表すクラス。
文書から XML 宣言を取り出すには REXML::Document#xml_decl を使います。
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_decl.standalone # => "yes" xml_decl.writethis # => true
XML 宣言を省略した場合の例。
require 'rexml/document' doc = REXML::Document.new(<<EOS) <e /> EOS xml_decl = doc.xml_decl xml_decl.version # => "1.0" xml_decl.encoding # => "UTF-8" xml_decl.standalone # => nil xml_decl.writethis # => false
XML 宣言が encoding 属性を持たない場合の例
require 'rexml/document' doc = REXML::Document.new(<<EOS) <?xml version="1.0" ?> <e /> EOS xml_decl = doc.xml_decl xml_decl.version # => "1.0" xml_decl.encoding # => "UTF-8" xml_decl.standalone # => nil xml_decl.writethis # => true
目次
- 特異メソッド
- default new
- インスタンスメソッド
- == clone dowrite encoding encoding= node_type nowrite stand_alone? standalone standalone= version version= writeencoding writethis xmldecl
- 定数
- DEFAULT_VERSION
特異メソッド
default -> REXML::XMLDecl-
XML宣言を含まない文章でデフォルトで使うための XMLDecl オブジェクトを生成して返します。
new(version = REXML::XMLDecl::DEFAULT_VERSION, encoding = nil, standalone = nil)-
新たな XMLDecl オブジェクトを生成して返します。
version 以外は省略可能です。
- [PARAM] version:
- バージョン(文字列)
- [PARAM] encoding:
- エンコーディング(文字列 or nil)
- [PARAM] standalone:
- スタンドアロン文章かどうか("yes", "no", nil)
インスタンスメソッド
self == other -> bool-
self と other が同じであるならば真を返します。
「同じ」とは REXML::XMLDecl#version, REXML::XMLDecl#encoding, REXML::XMLDecl#standalone が一致していることを意味します。
- [PARAM] other:
- 比較対象のオブジェクト
clone -> REXML::XMLDecl-
self を複製します。
dowrite -> ()-
出力時(REXML::Document#write) に XML 宣言を省略しない よう指示します。
[SEE_ALSO] REXML::XMLDecl#nowrite, REXML::XMLDecl#writethis
encoding -> String | nil-
設定されているエンコーディングの名前を文字列で返します。
エンコーディングが指定されていない(デフォルトの UTF-8 とみなされます) 場合は nil を返します。
encoding=(enc)-
エンコーディングを enc に設定します。
enc に nil を渡すと XML 宣言では encoding が 指定されていない(デフォルトで UTF-8 が使われる) ことになります。
- [PARAM] enc:
- エンコーディング(文字列 or nil)
[SEE_ALSO] REXML::XMLDecl#encoding=
node_type -> Symbol-
シンボル :xmldecl を返します。
nowrite -> ()-
出力時(REXML::Document#write) に XML 宣言を省略する よう指示します。
[SEE_ALSO] REXML::XMLDecl#dowrite, REXML::XMLDecl#writethis
standalone -> String | nilstand_alone? -> String | nil-
スタンドアロン文書であるかどうかを "yes" "no" で 返します。
nil(省略)を返す場合もあります。
standalone=(value)-
スタンドアロン文書であるかどうかを "yes" "no" で設定します。
この属性を省略したい場合は nil を指定します。
- [PARAM] value:
- 設定値(文字列)
version -> String-
XML文書のバージョンを文字列で返します。
version=(value)-
XML文書のバージョンを設定します。
- [PARAM] value:
- 設定値(文字列)
writeencoding -> bool-
XML宣言内の encoding の宣言を出力時に省略するならば真を返します。
これが真であっても UTF-8 以外のエンコーディングを指定している ならば encoding は出力されます。
writethis -> bool-
出力時(REXML::Document#write) に XML 宣言を出力する(省略しない) ならば真を返します。
[SEE_ALSO] REXML::XMLDecl#dowrite, REXML::XMLDecl#nowrite
xmldecl(version, encoding, standalone) -> ()-
内容を更新します。
- [PARAM] version:
- バージョン(文字列)
- [PARAM] encoding:
- エンコーディング(文字列 or nil)
- [PARAM] standalone:
- スタンドアロン文章かどうか("yes", "no", nil)
定数
DEFAULT_VERSION -> String-
REXML::XMLDecl.new や REXML::XMLDecl.default で の使われるデフォルトのXMLバージョン。