![]() ![]() ![]()
|
BREW C++ ライブラリ & GUI フレームワーク & XML ミドルウェア : SophiaFramework 4.1 |
#include <SFXXMLDocumentType.hpp>
class SFXXMLDocumentType : public SFXXMLNode;
SFMTYPEDEFCLASS(SFXXMLDocumentType)


DocumentType ノード (SFXXMLDocumentType) は、 XML 文書の文書型を保持します。
![]() |
注意 |
|---|---|
| DocumentType ノードは SFXXMLDocument::SetDocumentType などの関数を使って Document ノード (SFXXMLDocument) に関連付けます。 | |
SFXXMLNode | SFXXMLAttribute | SFXXMLCDATASection | SFXXMLComment | SFXXMLDocument | SFXXMLDocumentFragment | SFXXMLElement | SFXXMLEntity | SFXXMLEntityReference | SFXXMLNotation | SFXXMLProcessingInstruction | SFXXMLText
| コンストラクタ/デストラクタ |
|---|
|
SFXXMLDocumentType(
SFXXMLDocumentPtr owner
, SFXAnsiStringConstRef name
, SFXAnsiStringConstRef publicId
, SFXAnsiStringConstRef systemId
) SFXXMLDocumentType( SFXXMLDocumentTypeConstRef other , Bool deep = false ) SFXXMLDocumentType クラスのコンストラクタです。
|
|
~SFXXMLDocumentType( Void ) SFXXMLDocumentType クラスのデストラクタです。
|
| パブリック関数 | |
|---|---|
| SFCError |
AppendChild(
SFXXMLNodeConstPtr newchild
) 子ノードの最後にノードを追加します。
|
| SFCError |
CloneNode(
SFXXMLNodeHandle clonenode
, Bool deep
) ノードのコピーを作成します。
|
| Bool |
EqualNode(
SFXXMLNodeConstPtr arg
) 指定したノードと同等かどうかを判定します。
|
| DOMNodeListPtr |
GetChildNodes( Void ) すべての子ノードを取得します。
|
| DOMNamedNodeMapPtr |
GetEntities( Void ) DOM ツリー内のすべての Entity ノードを取得します。
|
| SFXXMLNodePtr |
GetFirstChild( Void ) 最初の子ノードを取得します。
|
| ACharConstPtr |
GetInternalSubset( Void ) 内部サブセットを取得します。
|
| SFXXMLNodePtr |
GetLastChild( Void ) 最後の子ノードを取得します。
|
| ACharConstPtr |
GetName( Void ) ノードの名前を取得します。
|
| SFXXMLNodePtr |
GetNextSibling( Void ) 次の兄弟ノードを取得します。
|
| ACharConstPtr |
GetNodeName( Void ) ノードの名前を取得します。
|
| NodeType |
GetNodeType( Void ) ノード タイプを取得します。
|
| DOMNamedNodeMapPtr |
GetNotations( Void ) DOM ツリー内の Notation ノードをすべて取得します。
|
| SFXXMLNodePtr |
GetParentNode( Void ) 親ノードを取得します。
|
| SFXXMLNodePtr |
GetPreviousSibling( Void ) 前の兄弟ノードを取得します。
|
| ACharConstPtr |
GetPublicID( Void ) 外部サブセットの公開識別子を取得します。
|
| ACharConstPtr |
GetSystemID( Void ) 外部サブセットのシステム識別子を取得します。
|
| Bool |
HasChildNodes( Void ) 子ノードを持つかどうかを判定します。
|
| SFCError |
InsertBefore(
SFXXMLNodeConstPtr newchild
, SFXXMLNodeConstPtr refchild
) ノードを挿入します。
|
| SFCError |
RemoveChild(
SFXXMLNodeConstPtr oldchild
) 子孫ノードも含めて子ノードを削除します。
|
| SFCError |
ReplaceChild(
SFXXMLNodeConstPtr newchild
, SFXXMLNodeConstPtr oldchild
) 子ノードを置換します。
|
| Void |
SetInternalSubset(
SFXAnsiStringConstRef intsubset
) 内部サブセットを設定します。
|
| ACharConstPtr |
GetNodeValue( Void )
(SFXXMLNode から継承)
ノードの値を取得します。
|
| SFXAnsiString |
GetText( Void )
(SFXXMLNode から継承)
ノード テキストを取得します。
|
| Bool |
IsSameNode(
SFXXMLNodeConstPtr other
)
(SFXXMLNode から継承)
指定したノードと同一であるかを判定します。
|
| Void |
SetNodeValue(
ACharConstPtr value
)
(SFXXMLNode から継承)
ノードに値を設定します。
|
| SFCError |
SetText(
SFXAnsiStringConstRef text
)
(SFXXMLNode から継承)
ノード テキストを設定します。
|
| 型 |
|---|
|
DOMNamedNodeMap
(SFXXMLNode から継承)
複数の DOM ノードを名前で管理するためのクラスです。
|
|
DOMNodeList
(SFXXMLNode から継承)
複数の DOM ノードをリスト形式で管理するためのクラスです。
|
|
NodeType
(SFXXMLNode から継承)
ノード タイプの数値です。
|
[ public, explicit ]
SFXXMLDocumentType(
SFXXMLDocumentPtr owner // ルート
SFXAnsiStringConstRef name // DocumentType の名前
SFXAnsiStringConstRef publicId // 外部サブセットの公開識別子
SFXAnsiStringConstRef systemId // 外部サブセットのシステム識別子
);
[ public, explicit ]
SFXXMLDocumentType(
SFXXMLDocumentTypeConstRef other // SFXXMLDocumentType のインスタンス
Bool deep = false // 子を再帰的にコピーするかどうか
);
[ public, virtual ] virtual ~SFXXMLDocumentType(Void);
[ public, virtual ] SFCError AppendChild( SFXXMLNodeConstPtr newchild // 追加するノード );
newchild ノードをコピーせずにそのまま追加します。
newchild ノードが別の DOM ツリー内に存在する場合、その DOM ツリー内からは削除されます。
[ public, virtual ] SFCError CloneNode( SFXXMLNodeHandle clonenode // コピー先のノード(Handle 型) Bool deep // 子ノードが再帰的にコピーされるかどうか );
コピー先ノードを指定します。
true の場合、子ノードを再帰的にコピーします。
false の場合、ノード自身だけをコピーします。
[ public, virtual, const ] Bool EqualNode( SFXXMLNodeConstPtr arg // 同等性を比較する対象のノード );
[ public, virtual, const ] DOMNodeListPtr GetChildNodes(Void);
指定したノードのすべての子ノードを SFXXMLNode::DOMNodeList へのポインターとして返します。子ノードがないときは null を返します。
![]() |
注意 |
|---|---|
| SFXXMLNode::DOMNodeList の各要素は、SFXXMLNode 型へのポインターです。 | |
[ public, const ] DOMNamedNodeMapPtr GetEntities(Void);
DOM ツリー内のすべての Entity ノードを SFXXMLNode::DOMNamedNodeMap へのポインターとして返します。Entity ノードがないときは null を返します。
![]() |
注意 |
|---|---|
| DTD で宣言されている、すべてのエンティティを取得します。 | |
<?xml version="1.0" encoding="shift_JIS" standalone="yes" ?> <!DOCTYPE 名簿[ <!ELEMENT 名簿 (名前,メールアドレス)> <!ENTITY Account "sophia"> <!ENTITY Email "&Account;@s-cradle.com"> <!ELEMENT 名前 "(#PCDATA)"> <!ELEMENT メールアドレス "(#PCDATA)"> <!ATTLIST 名前 番号 (001|002|003) #REQUIRED> ]> <名簿> <名前 番号="001">Sophia Cradle</名前> <メールアドレス>&Email;</メールアドレス> </名簿> // ルート ノードから DocumentType ノードを取得する SFXXMLDocumentTypePtr docType = root->GetDocumentType(); if (docType) { // DOM ツリー内のすべての Entity ノードを取得する SFXXMLNode::DOMNamedNodeMapPtr nodemap = docType->GetEntities(); if (nodemap) { // "Name" Entiry ノードを取得する SFXXMLEntityPtr name = SFXXMLEntityPtr(nodemap->Item(0)); // "Email" Entiry ノードを取得する SFXXMLEntityPtr mail = SFXXMLEntityPtr(nodemap->Item(1)); .... // 新しい Entiry ノードを追加する "<!ENTITY 会社 SYSTEM "company.dtd">" SFXXMLEntityPtr entity = document.CreateEntity("会社"); entity->SetSystemID("company.dtd"); nodemap->SetNamedItem(entity); } }
[ public, virtual, const ] SFXXMLNodePtr GetFirstChild(Void);
最初の子ノードを返します。子ノードがないときは null を返します。
[ public, const ] ACharConstPtr GetInternalSubset(Void);
内部サブセットが存在するときはそれを文字列として返し、そうでないときは null を返します。なお、戻り値に区切り用の角括弧は含まれません。
[ public, virtual, const ] SFXXMLNodePtr GetLastChild(Void);
最後の子ノードを返します。子ノードがないときは null を返します。
[ public, const ] ACharConstPtr GetName(Void);
[ public, virtual, const ] SFXXMLNodePtr GetNextSibling(Void);
次の兄弟ノードを返します。次の兄弟ノードがないときは null を返します。
SFXXMLDocumentType::GetPreviousSibling | SFXXMLNode::GetNextSibling | SFXXMLNode::GetPreviousSibling | SFXXMLNode
[ public, virtual, const ] ACharConstPtr GetNodeName(Void);
[ public, virtual, const ] NodeType GetNodeType(Void);
DOCUMENT_TYPE_NODE を返します。
[ public, const ] DOMNamedNodeMapPtr GetNotations(Void);
DOM ツリー内の、すべての Notation ノードを取得します。
![]() |
注意 |
|---|---|
| DTD で宣言されている、すべての記法を取得します。 | |
<?xml version="1.0" encoding="shift_JIS" standalone="yes" ?> <!DOCTYPE スタジオ [ <!ELEMENT スタジオ ANY> <!ELEMENT マルチメディア (#PCDATA)> <!ATTLIST マルチメディア player NOTATION (rm|gif|midi) #REQUIRED> <!NOTATION gif SYSTEM "Image/gif"> <!NOTATION rm SYSTEM "RealPlayer.exe"> <!NOTATION midi SYSTEM "wmplayer.exe"> ]> <スタジオ> <マルチメディア player="rm"></マルチメディア> </スタジオ> // ルート ノードから DocumentType ノードを取得する SFXXMLDocumentTypePtr docType = root->GetDocumentType(); if (docType) { // Notation ノードをすべて取得する SFXXMLNode::DOMNamedNodeMapPtr nodemap = docType->GetNotations(); if (nodemap) { // gif 表記法(Notation ノード)を取得する SFXXMLNotationPtr gif = SFXXMLNotationPtr(nodemap->Item(0)); // rm 表記法(Notation ノード)を取得する SFXXMLNotationPtr rm = SFXXMLNotationPtr(nodemap->Item(1)); // midi 表記法(Notation ノード)を取得する SFXXMLNotationPtr midi = SFXXMLNotationPtr(nodemap->Item(2)); .... // 新しい表記法(Notation ノード)追加する "<!NOTATION mp3 SYSTEM "winamp.exe">" SFXXMLNotationPtr mp3 = document.CreateNotation("mp3"); mp3->SetSystemID("winamp.exe"); nodemap->SetNamedItem(mp3); } }
[ public, virtual, const ] SFXXMLNodePtr GetParentNode(Void);
親ノードを返します。親ノードがない場合は、null を返します。
[ public, virtual, const ] SFXXMLNodePtr GetPreviousSibling(Void);
指定したノードの前の兄弟ノードを返します。前の兄弟ノードがないときは null を返します。
SFXXMLDocumentType::GetNextSibling | SFXXMLNode::GetPreviousSibling | SFXXMLNode::GetNextSibling | SFXXMLNode
[ public, const ] ACharConstPtr GetPublicID(Void);
[ public, const ] ACharConstPtr GetSystemID(Void);
[ public, virtual, const ] Bool HasChildNodes(Void);
[ public, virtual ] SFCError InsertBefore( SFXXMLNodeConstPtr newchild // 挿入するノード SFXXMLNodeConstPtr refchild // 参照ノード、このノードの直前に挿入される );
[ public, virtual ] SFCError RemoveChild( SFXXMLNodeConstPtr oldchild // 削除する子ノード );
[ public, virtual ] SFCError ReplaceChild( SFXXMLNodeConstPtr newchild // 置換後ノード SFXXMLNodeConstPtr oldchild // 置換前ノード );
[ public ] Void SetInternalSubset( SFXAnsiStringConstRef intsubset // 設定する内部サブセット );
|
Copyright (C) 2002 - 2009 Sophia Cradle, Inc. All Rights Reserved. |
![]() ![]() ![]()
|