Oracle® Database

XML C++ APIリファレンス

11gリリース2 (11.2)

E94919-01(原本部品番号:E10771-01)

2009年7月

Oracle Database XML C++ APIリファレンス, 11gリリース2 (11.2)

E94919-01

Copyright © 2001, 2009, Oracle and/or its affiliates. All rights reserved.

原本著者:  Roza Leyderman

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントが、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供される場合は、次のNoticeが適用されます。

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007).Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

このソフトウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアを危険が伴うアプリケーションで使用する際、このソフトウェアを安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

このソフトウェアおよびドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。

目次

表一覧

タイトルおよび著作権情報

はじめに

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

1 C++用のCtx APIパッケージ

- Ctxのデータ型

- encoding

- encodings

- MemAllocatorインタフェース

- alloc()

- dealloc()

- ~MemAllocator()

- TCtxインタフェース

- TCtx()

- getEncoding()

- getErrHandler()

- getMemAllocator()

- isSimple()

- isUnicode()

- ~TCtx()

2 C++用のDOM APIパッケージ

- DOMの使用

- DOMのデータ型

- AcceptNodeCodes

- CompareHowCode

- DOMNodeType

- DOMExceptionCode

- WhatToShowCode

- RangeExceptionCode

- AttrRefインタフェース

- AttrRef()

- getName()

- getOwnerElement()

- getSpecified()

- getValue()

- setValue()

- ~AttrRef()

- CDATASectionRefインタフェース

- CDATASectionRef()

- ~CDATASectionRef()

- CharacterDataRefインタフェース

- appendData()

- deleteData()

- freeString()

- getData()

- getLength()

- insertData()

- replaceData()

- setData()

- substringData()

- CommentRefインタフェース

- CommentRef()

- ~CommentRef()

- DOMExceptionインタフェース

- getDOMCode()

- getMesLang()

- getMessage()

- DOMImplRefインタフェース

- DOMImplRef()

- createDocument()

- createDocumentType()

- formDocument()

- getImplementation()

- getNoMod()

- hasFeature()

- setContext()

- ~DOMImplRef()

- DOMImplementationインタフェース

- DOMImplementation()

- getNoMod()

- ~DOMImplementation()

- DocumentFragmentRefインタフェース

- DocumentFragmentRef()

- ~DocumentFragmentRef()

- DocumentRangeインタフェース

- DocumentRange()

- createRange()

- destroyRange()

- ~DocumentRange()

- DocumentRefインタフェース

- DocumentRef()

- createAttribute()

- createAttributeNS()

- createCDATASection()

- createComment()

- createDocumentFragment()

- createElement()

- createElementNS()

- createEntityReference()

- createProcessingInstruction()

- createTextNode()

- getDoctype()

- getDocumentElement()

- getElementById()

- getElementsByTagName()

- getElementsByTagNameNS()

- getImplementation()

- importNode()

- ~DocumentRef()

- DocumentTraversalインタフェース

- DocumentTraversal()

- createNodeIterator()

- createTreeWalker()

- destroyNodeIterator()

- destroyTreeWalker()

- ~DocumentTraversal()

- DocumentTypeRefインタフェース

- DocumentTypeRef()

- getEntities()

- getInternalSubset()

- getName()

- getNotations()

- getPublicId()

- getSystemId()

- ~DocumentTypeRef()

- ElementRefインタフェース

- ElementRef()

- getAttribute()

- getAttributeNS()

- getAttributeNode()

- getElementsByTagName()

- getTagName()

- hasAttribute()

- hasAttributeNS()

- removeAttribute()

- removeAttributeNS()

- removeAttributeNode()

- setAttribute()

- setAttributeNS()

- setAttributeNode()

- ~ElementRef()

- EntityRefインタフェース

- EntityRef()

- getNotationName()

- getPublicId()

- getSystemId()

- getType()

- ~EntityRef()

- EntityReferenceRefインタフェース

- EntityReferenceRef()

- ~EntityReferenceRef()

- NamedNodeMapRefインタフェース

- NamedNodeMapRef()

- getLength()

- getNamedItem()

- getNamedItemNS()

- item()

- removeNamedItem()

- removeNamedItemNS()

- setNamedItem()

- setNamedItemNS()

- ~NamedNodeMapRef()

- NodeFilterインタフェース

- acceptNode()

- NodeIteratorインタフェース

- adjustCtx()

- detach()

- nextNode()

- previousNode()

- NodeListRefインタフェース

- NodeListRef()

- getLength()

- item()

- ~NodeListRef()

- NodeRefインタフェース

- NodeRef()

- appendChild()

- cloneNode()

- getAttributes()

- getChildNodes()

- getFirstChild()

- getLastChild()

- getLocalName()

- getNamespaceURI()

- getNextSibling()

- getNoMod()

- getNodeName()

- getNodeType()

- getNodeValue()

- getOwnerDocument()

- getParentNode()

- getPrefix()

- getPreviousSibling()

- hasAttributes()

- hasChildNodes()

- insertBefore()

- isSupported()

- markToDelete()

- normalize()

- removeChild()

- replaceChild()

- resetNode()

- setNodeValue()

- setPrefix()

- ~NodeRef()

- NotationRefインタフェース

- NotationRef()

- getPublicId()

- getSystemId()

- ~NotationRef()

- ProcessingInstructionRefインタフェース

- ProcessingInstructionRef()

- getData()

- getTarget()

- setData()

- ~ProcessingInstructionRef()

- Rangeインタフェース

- CompareBoundaryPoints()

- cloneContent()

- cloneRange()

- deleteContents()

- detach()

- extractContent()

- getCollapsed()

- getCommonAncestorContainer()

- getEndContainer()

- getEndOffset()

- getStartContainer()

- getStartOffset()

- insertNode()

- selectNodeContent()

- selectNode()

- setEnd()

- setEndAfter()

- setEndBefore()

- setStart()

- setStartAfter()

- setStartBefore()

- surroundContents()

- toString()

- RangeExceptionインタフェース

- getCode()

- getMesLang()

- getMessage()

- getRangeCode()

- TextRefインタフェース

- TextRef()

- splitText()

- ~TextRef()

- TreeWalkerインタフェース

- adjustCtx()

- firstChild()

- lastChild()

- nextNode()

- nextSibling()

- parentNode()

- previousNode()

- previousSibling()

3 C++用のIO APIパッケージ

- IOのデータ型

- InputSourceType

- InputSourceインタフェース

- getBaseURI()

- getISrcType()

- setBaseURI()

4 C++用のOracleXml APIパッケージ

- XmlExceptionインタフェース

- getCode()

- getMesLang()

- getMessage()

5 C++用のパーサーAPIパッケージ

- パーサーのデータ型

- ParserExceptionCode

- DOMParserIdType

- SAXParserIdType

- SchValidatorIdType

- DOMParserインタフェース

- getContext()

- getParserId()

- parse()

- parseDTD()

- parseSchVal()

- setValidator()

- GParserインタフェース

- SetWarnDuplicateEntity()

- getBaseURI()

- getDiscardWhitespaces()

- getExpandCharRefs()

- getSchemaLocation()

- getStopOnWarning()

- getWarnDuplicateEntity()

- setBaseURI()

- setDiscardWhitespaces()

- setExpandCharRefs()

- setSchemaLocation()

- setStopOnWarning()

- ParserExceptionインタフェース

- getCode()

- getMesLang()

- getMessage()

- getParserCode()

- SAXHandlerインタフェース

- CDATA()

- XMLDecl()

- attributeDecl()

- characters()

- comment()

- elementDecl()

- endDocument()

- endElement()

- notationDecl()

- parsedEntityDecl()

- processingInstruction()

- startDocument()

- startElement()

- startElementNS()

- unparsedEntityDecl()

- whitespace()

- SAXParserインタフェース

- getContext()

- getParserId()

- parse()

- parseDTD()

- setSAXHandler()

- SchemaValidatorインタフェース

- getSchemaList()

- getValidatorId()

- loadSchema()

- unloadSchema()

6 C++用のSOAP APIパッケージ

- SOAPのデータ型

- SoapExceptionCode

- SoapBinding

- SoapRole

- SoapExceptionインタフェース

- getCode()

- getMessage()

- getMesLang()

- getSoapCode()

- ConnectRefインタフェース

- ~ConnectRef()

- call()

- MsgFactoryインタフェース

- ~MsgFactory()

- MsgFactory()

- addBodyElement()

- addFaultReason()

- addHeaderElement()

- createConnection()

- createMessage()

- destroyMessage()

- getBody()

- getBodyElement()

- getEnvelope()

- getFault()

- getHeader()

- getHeaderElement()

- getMustUnderstand()

- getReasonNum()

- getReasonLang()

- getRole()

- hasFault()

- setFault()

- setMustUnderstand()

- setRole()

7 C++用のツールAPIパッケージ

- ツールのデータ型

- FactoryExceptionCode

- Factoryインタフェース

- Factory()

- createDOMParser()

- createSAXParser()

- createSchemaValidator()

- createXPathCompProcessor()

- createXPathCompiler()

- createXPathProcessor()

- createXPointerProcessor()

- createXslCompiler()

- createXslExtendedTransformer()

- createXslTransformer()

- getContext()

- ~Factory()

- FactoryExceptionインタフェース

- getCode()

- getFactoryCode()

- getMesLang()

- getMessage()

8 C++用のXPath APIパッケージ

- XPathのデータ型

- XPathCompIdType

- XPathObjType

- XPathExceptionCode

- XPathPrIdType

- CompProcessorインタフェース

- getProcessorId()

- process()

- processWithBinXPath()

- Compilerインタフェース

- compile()

- getCompilerId()

- NodeSetインタフェース

- getNode()

- getSize()

- Processorインタフェース

- getProcessorId()

- process()

- XPathExceptionインタフェース

- getCode()

- getMesLang()

- getMessage()

- getXPathCode()

- XPathObjectインタフェース

- XPathObject()

- getNodeSet()

- getObjBoolean()

- getObjNumber()

- getObjString()

- getObjType()

9 C++用のXPointer APIパッケージ

- XPointerのデータ型

- XppExceptionCode

- XppPrIdType

- XppLocType

- Processorインタフェース

- getProcessorId()

- process()

- XppExceptionインタフェース

- getCode()

- getMesLang()

- getMessage()

- getXppCode()

- XppLocationインタフェース

- getLocType()

- getNode()

- getRange()

- XppLocSetインタフェース

- getItem()

- getSize()

10 C++用のXsl APIパッケージ

- Xslのデータ型

- XslCompIdType

- XslExceptionCode

- XslTrIdType

- Compilerインタフェース

- compile()

- getCompilerId()

- getLength()

- CompTransformerインタフェース

- getTransformerId()

- setBinXsl()

- setSAXHandler()

- setXSL()

- transform()

- Transformerインタフェース

- getTransformerId()

- setSAXHandler()

- setXSL()

- transform()

- XSLExceptionインタフェース

- getCode()

- getMesLang()

- getMessage()

- getXslCode()

索引

表一覧

- 1-1 データ型の概要: Ctxパッケージ

- 1-2 MemAllocatorメソッドの概要: Ctxパッケージ

- 1-3 TCtxメソッドの概要: Ctxパッケージ

- 2-1 データ型の概要: DOMパッケージ

- 2-2 AttrRefメソッドの概要: DOMパッケージ

- 2-3 CDATASectionRefメソッドの概要: DOMパッケージ

- 2-4 CharacterDataRefメソッドの概要: DOMパッケージ

- 2-5 CommentRefメソッドの概要: DOMパッケージ

- 2-6 DOMExceptionメソッドの概要: DOMパッケージ

- 2-7 DOMImplRefメソッドの概要: DOMパッケージ

- 2-8 DOMImplementationメソッドの概要: DOMパッケージ

- 2-9 DocumentFragmentRefメソッドの概要: DOMパッケージ

- 2-10 DocumentRangeメソッドの概要: DOMパッケージ

- 2-11 DocumentRefメソッドの概要: DOMパッケージ

- 2-12 DocumentTraversalメソッドの概要: DOMパッケージ

- 2-13 DocumentTypeRefメソッドの概要: DOMパッケージ

- 2-14 ElementRefメソッドの概要: DOMパッケージ

- 2-15 EntityRefメソッドの概要: DOMパッケージ

- 2-16 EntityReferenceRefメソッドの概要: DOMパッケージ

- 2-17 NamedNodeMapRefメソッドの概要: DOMパッケージ

- 2-18 NodeFilterメソッドの概要: DOMパッケージ

- 2-19 NodeIteratorメソッドの概要: DOMパッケージ

- 2-20 NodeListRefメソッドの概要: DOMパッケージ

- 2-21 NodeRefメソッドの概要: DOMパッケージ

- 2-22 NotationRefメソッドの概要: DOMパッケージ

- 2-23 ProcessingInstructionRefメソッドの概要: DOMパッケージ

- 2-24 Rangeメソッドの概要: DOMパッケージ

- 2-25 RangeExceptionメソッドの概要: DOMパッケージ

- 2-26 TextRefメソッドの概要: DOMパッケージ

- 2-27 TreeWalkerメソッドの概要: DOMパッケージ

- 3-1 データ型の概要: IOパッケージ

- 3-2 IOパッケージ・インタフェースの概要

- 4-1 OracleXmlパッケージ・インタフェースの概要

- 5-1 データ型の概要: パーサー・パッケージ

- 5-2 DOMParserメソッドの概要: パーサー・パッケージ

- 5-3 GParserメソッドの概要: パーサー・パッケージ

- 5-4 ParserExceptionメソッドの概要: パーサー・パッケージ

- 5-5 SAXHandlerメソッドの概要: パーサー・パッケージ

- 5-6 SAXParserメソッドの概要: パーサー・パッケージ

- 5-7 SchemaValidatorメソッドの概要: パーサー・パッケージ

- 6-1 データ型の概要: SOAPパッケージ

- 6-2 SoapExceptionインタフェースの概要

- 6-3 ConnectRefインタフェースの概要

- 6-4 MsgFactoryインタフェースの概要

- 7-1 データ型の概要: ツール・パッケージ

- 7-2 Factoryメソッドの概要: ツール・パッケージ

- 7-3 FactoryExceptionメソッドの概要: ツール・パッケージ

- 8-1 データ型の概要: Xpathパッケージ

- 8-2 CompProcessorメソッドの概要: XPathパッケージ

- 8-3 Compilerメソッドの概要: XPathパッケージ

- 8-4 NodeSetメソッドの概要: XPathパッケージ

- 8-5 Processorメソッドの概要: XPathパッケージ

- 8-6 XPathExceptionメソッドの概要: XPathパッケージ

- 8-7 XPathObjectメソッドの概要: XPathパッケージ

- 9-1 データ型の概要: XPointerパッケージ

- 9-2 Processorメソッドの概要: XPointerパッケージ

- 9-3 XppExceptionメソッドの概要: XPointerパッケージ

- 9-4 XppLocationメソッドの概要: XPointerパッケージ

- 9-5 XppLocSetメソッドの概要: XPointerパッケージ

- 10-1 データ型の概要: Xslパッケージ

- 10-2 Compilerメソッドの概要: Xslパッケージ

- 10-3 CompTransformerメソッドの概要: Xslパッケージ

- 10-4 Transformerメソッドの概要: Xslパッケージ

- 10-5 XSLExceptionメソッドの概要: Xslパッケージ

はじめに

このリファレンスでは、Cプログラミング言語に対応するOracle XML Developer's Kit (XDK)およびOracle XML DB APIについて説明します。主に、これらのAPIに関連する関数、メソッドおよびプロシージャの構文を示します。

対象読者

このガイドは、OracleでXMLアプリケーションを作成する開発者を対象としています。

このマニュアルを活用するには、オブジェクト指向プログラミングの基本概念を理解し、Structured Query Language (SQL)を熟知し、Cプログラミング言語を使用したアプリケーション開発の実際的知識を持っている必要があります。

ドキュメントのアクセシビリティについて

オラクル社は、障害のあるお客様にもオラクル社の製品、サービスおよびサポート・ドキュメントを簡単にご利用いただけることを目標としています。オラクル社のドキュメントには、ユーザーが障害支援技術を使用して情報を利用できる機能が組み込まれています。HTML形式のドキュメントで用意されており、障害のあるお客様が簡単にアクセスできるようにマークアップされています。標準規格は改善されつつあります。オラクル社はドキュメントをすべてのお客様がご利用できるように、市場をリードする他の技術ベンダーと積極的に連携して技術的な問題に対応しています。オラクル社のアクセシビリティについての詳細情報は、Oracle Accessibility ProgramのWebサイトhttp://www.oracle.com/accessibility/を参照してください。

ドキュメント内のサンプル・コードのアクセシビリティについて

スクリーン・リーダーは、ドキュメント内のサンプル・コードを正確に読めない場合があります。コード表記規則では閉じ括弧だけを行に記述する必要があります。しかし、一部のスクリーン・リーダーは括弧だけの行を読まない場合があります。

外部Webサイトのドキュメントのアクセシビリティについて

このドキュメントにはオラクル社およびその関連会社が所有または管理しないWebサイトへのリンクが含まれている場合があります。オラクル社およびその関連会社は、それらのWebサイトのアクセシビリティに関しての評価や言及は行っておりません。

聴覚に障害があるお客様のOracleサポート・サービスへのアクセス

Oracleサポート・サービス に連絡するために、電気通信リレー・サービス(TRS)を使用して、1.800.223.1711でOracle Supportに電話してください。Oracle Support Servicesのエンジニアは、技術的な問題を処理し、Oracleサービス・リクエスト処理に応じてカスタマ・サポートを提供します。TRSの詳細については、http://www.fcc.gov/cgb/consumerfacts/trs.htmlを参照し、電話番号の一覧については、http://www.fcc.gov/cgb/dro/trsphonebk.htmlを参照してください。

関連ドキュメント

詳細は、Oracle Database 11gリリース2 (11.2)ドキュメント・セットの次のドキュメントを参照してください。

- 『Oracle Database概要』

- 『Oracle Database SQL言語リファレンス』

- 『Oracle Databaseオブジェクト・リレーショナル開発者ガイド』

- 『Oracle Database新機能ガイド』

- 『Oracle XML Developer's Kitプログラマーズ・ガイド』

- 『Oracle XML DB開発者ガイド』

- 『Oracle Databaseサンプル・スキーマ』

表記規則

このドキュメントでは次の表記規則を使用します。

規則

意味

太字

太字は、操作に関連するGraphical User Interface要素、または本文中で定義されている用語および用語集に記載されている用語を示します。

イタリック体

イタリックは、ユーザーが特定の値を指定するプレースホルダー変数を示します。

固定幅フォント

固定幅フォントは、段落内のコマンド、URL、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。

1 C++用のCtx APIパッケージ

CtxはTCtx XMLコンテキスト関連の型とインタフェースの名前空間です。

この章には、次の項が含まれます。

- Ctxのデータ型

- MemAllocatorインタフェース

- TCtxインタフェース

関連項目:

- 『Oracle XML Developer's Kitプログラマーズ・ガイド』

- 『Oracle XML DB開発者ガイド』

Ctxのデータ型

表1-1にCtxパッケージのデータ型の概要を示します。

表1-1 データ型の概要: Ctxパッケージ

データ型

説明

encoding

サポートされる唯一のエンコーディング

encodings

エンコーディングの配列

encoding

サポートされる唯一のエンコーディング

定義

typedef struct encoding {
oratext *encname;
oratext *encvalue;
} encoding;

encodings

エンコーディングの配列

定義

typedef struct encodings {
unsigned num;
encoding *enc;
} encodings;

MemAllocatorインタフェース

表1-2にMemAllocatorインタフェースで使用できるメソッドの概要を示します。

表1-2 MemAllocatorメソッドの概要: Ctxパッケージ

関数

概要

alloc()

特定のサイズのメモリーを割り当てます。

dealloc()

引数がポイントしているメモリーの割当てを解除します。

~MemAllocator()

仮想デストラクタ。実際のデストラクタに対するインタフェース・レベルのハンドル。

alloc()

これはユーザー定義のアロケータ関数のプロトタイプを定義する、仮想メンバー関数です。

構文

virtual void* alloc(
ub4 size) = 0;

パラメータ

説明

size

メモリー・サイズ

dealloc()

これはユーザー定義のデアロケータ関数のプロトタイプを定義する、仮想メンバー関数です。このようなデアロケータは、allocメンバー関数で割り当てられたメモリーの割当てを解除するためにサポートされています。

構文

virtual void dealloc(
void* ptr) = 0;

パラメータ

説明

ptr

それまでに割り当てられたメモリーへのポインタ

~MemAllocator()

名前や実装を把握せずに呼び出すことが可能な、実際のデストラクタに対するインタフェース・レベルのハンドルを提供します。

構文

virtual ~MemAllocator() {}

TCtxインタフェース

表1-3にTCtxインタフェースで使用できるメソッドの概要を示します。

表1-3 TCtxメソッドの概要: Ctxパッケージ

関数

概要

TCtx()

クラス・コンストラクタです。

getEncoding()

XMLコンテキストで使用されるデータ・エンコーディングを取得します。

getErrHandler()

ユーザーが提供するエラー・ハンドラを取得します。

getMemAllocator()

メモリー・アロケータを取得します。

isSimple()

データ・エンコーディングがシンプルかどうかを示すフラグを取得します。

isUnicode()

データ・エンコーディングがUnicodeかどうかを示すフラグを取得します。

~TCtx()

デストラクタ。領域をクリアし、実装を破棄します。

TCtx()

TCtxコンストラクタ。コンテキスト・オブジェクトの作成に失敗した場合、XmlExceptionをスローします。

構文

説明

TCtx() throw (XMLException)

このコンストラクタはコンテキスト・オブジェクトを作成し、デフォルト値のパラメータを使用してコンテキスト・オブジェクトを初期化します。

TCtx(
oratext* name,
ErrorHandler* errh = NULL,
MemAllocator* memalloc = NULL,
encodings* encs = NULL)
throw (XMLException)

このコンストラクタはコンテキスト・オブジェクトを作成し、ユーザーが指定したパラメータ値を使用してコンテキスト・オブジェクトを初期化します。

TCtx(
oratext* name,
up4 inpblksize,
ErrorIfs* errh = NULL,
MemAllocator* memalloc = NULL,
encodings* encs = NULL)
throw (XMLException)

このコンストラクタはコンテキスト・オブジェクトを作成し、ユーザーが指定したパラメータ値を使用してコンテキスト・オブジェクトを初期化します。入力ソースからのメモリー・ブロック・サイズに関する追加パラメータをとります。

パラメータ

説明

name

ユーザー定義のコンテキスト名

errh

ユーザー定義のエラー・ハンドラ

memalloc

ユーザー定義のメモリー・アロケータ

encs

ユーザー指定のエンコーディング

inpblksize

入力ソースのメモリー・ブロック・サイズ

戻り値

(TCtx) コンテキスト・オブジェクト

getEncoding()

XMLコンテキストで使用されているデータ・エンコーディングを戻します。通常、データ・エンコーディングはユーザーが選択するため、この関数は必要ありません。ただし、データ・エンコーディングが指定されておらず、デフォルトが使用されている場合、この関数を使用して、デフォルトのエンコーディング名を戻すことができます。

構文

oratext* getEncoding() const;

戻り値

(oratext *) データ・エンコーディングの名前。

getErrHandler()

このメンバー関数は、コンテキストが作成されたときにユーザーが指定したエラー・ハンドラを戻し、ユーザーが何も指定していない場合はNULLを戻します。

構文

ErrorHandler* getErrHandler() const;

戻り値

(ErrorHandler *) エラー・ハンドラ・オブジェクトへのポインタ、またはNULL。

getMemAllocator()

このメンバー関数は、コンテキストが作成されたときにユーザーが指定したメモリー・アロケータ、またはデフォルトのメモリー・アロケータを戻します。Cレベルのすべてのメモリー割当てについて、このメモリー・アロケータが使用される必要があります。

構文

MemAllocator* getMemAllocator() const;

戻り値

(MemAllocator*) メモリー・アロケータ・オブジェクトへのポインタ。

isSimple()

コンテキストのデータ・エンコーディングが「シンプル」かどうか、すなわちASCIIやEBCDICのように各文字がシングルバイトであるかどうかを示すフラグを戻します。

構文

boolean isSimple() const;

戻り値

(boolean) データ・エンコーディングが「シンプル」の場合はTRUE、それ以外はFALSE。

isUnicode()

コンテキストのデータ・エンコーディングが、1文字に2バイトを使用するUnicode、UTF-16かどうかを示すフラグを戻します。

構文

boolean isUnicode() const;

戻り値

(boolean) データ・エンコーディングがUnicodeの場合はTRUE、それ以外はFALSE。

~TCtx()

デストラクタ。コンテキスト・オブジェクトが不要になった場合に、ユーザーがコールします。

構文

~Tctx();

2 C++用のDOM APIパッケージ

このパッケージのインタフェースは、http://www.w3.org/TR/DOM-Level-2-Core/におけるDOMレベル2 Coreインタフェースに相当します。

この章には、次の項が含まれます。

- DOMの使用

- DOMのデータ型

- AttrRefインタフェース

- CDATASectionRefインタフェース

- CharacterDataRefインタフェース

- CommentRefインタフェース

- DOMExceptionインタフェース

- DOMImplRefインタフェース

- DOMImplementationインタフェース

- DocumentFragmentRefインタフェース

- DocumentRangeインタフェース

- DocumentRefインタフェース

- DocumentTraversalインタフェース

- DocumentTypeRefインタフェース

- ElementRefインタフェース

- EntityRefインタフェース

- EntityReferenceRefインタフェース

- NamedNodeMapRefインタフェース

- NodeFilterインタフェース

- NodeIteratorインタフェース

- NodeListRefインタフェース

- NodeRefインタフェース

- NotationRefインタフェース

- ProcessingInstructionRefインタフェース

- Rangeインタフェース

- RangeExceptionインタフェース

- TextRefインタフェース

- TreeWalkerインタフェース

関連項目:

- 『Oracle XML Developer's Kitプログラマーズ・ガイド』

- 『Oracle XML DB開発者ガイド』

DOMの使用

DOMインタフェースは、DOM仕様の様々な実装に対する汎用参照として表されます。これらはノード別にパラメータ化されるため、各種の特殊化およびインスタンス化がサポートされます。そのうち最も重要なのはxmlnodeで、これは現在のC実装に対応します。

これらの一般的な参照には、NULLのような値はありません。実装が状態のない参照を作成することはありません。状態がないことを通知する必要がある場合、例外がスローされます。

多くのメソッドでは、DOMツリーの構成が誤っている場合はSYNTAX_ERR例外をスローし、不正なパラメータまたは予期しないNULLポインタが使用されている場合はUNDEFINED_ERR例外をスローします。個別のメソッドがスローするエラーがそれのみである場合は、メソッド・シグネチャには反映されません。

実際のDOMツリーはコンテキスト(TCtx)に依存しません。ただし、現行のxmlctxベースの実装でDOMツリーを操作するには、現行のコンテキスト(TCtx)へのアクセス権が必要です。そのためには、コンテキスト・ポインタをDOMImplRefのコンストラクタに渡します。マルチスレッド環境では、DOMImplRefは常にスレッド・コンテキストで作成されるため、正しいコンテキストを指すポインタが備わります。

DOMツリーはDOMImplRefにより作成できます。DomImplRefは、DomImplRefの通常の非コピー・コンストラクタが起動された場合に作成される、実際のDOMImplementationオブジェクトに対する参照です。これは、DOMツリーを共有する必要があるマルチスレッド環境で適切に機能し、各スレッドに個別のTCtxが関連付けられます。シングル・スレッド環境でも同じく適切に機能します。

DOMStringは、Oracle実装でサポートされるエンコーディングの1つにすぎません。Oracleでは機能を拡張して他のエンコーディングもサポートしています。oratext*データ型はすべてのエンコーディングに使用されます。

DOMのデータ型

表2-1にDOMパッケージのデータ型の概要を示します。

表2-1 データ型の概要: DOMパッケージ

データ型

説明

AcceptNodeCodes

ノード・フィルタによって戻される値を定義します。

CompareHowCode

比較の型を定義します。

DOMNodeType

ノードの型を定義します。

DOMExceptionCode

DOM例外のコードを定義します。

WhatToShowCode

フィルタ処理のコードを定義します。

RangeExceptionCode

DOM範囲例外のコードです。

AcceptNodeCodes

ノード・フィルタによって戻される値を定義します。ノード・イテレータおよびツリー・ウォーカにより使用されます。

定義

typedef enum AcceptNodeCode {
FILTER_ACCEPT   = 1,
FILTER_REJECT   = 2,
FILTER_SKIP     = 3
} AcceptNodeCode;

CompareHowCode

比較の型を定義します。

定義

typedef enum CompareHowCode {
START_TO_START = 0,
START_TO_END = 1,
END_TO_END = 2,
END_TO_START = 3 }
CompareHowCode;

DOMNodeType

ノードの型を定義します。

定義

typedef enum DOMNodeType {
UNDEFINED_NODE = 0,
ELEMENT_NODE = 1,
ATTRIBUTE_NODE = 2,
TEXT_NODE = 3,
CDATA_SECTION_NODE = 4,
ENTITY_REFERENCE_NODE = 5,
ENTITY_NODE = 6,
PROCESSING_INSTRUCTION_NODE = 7,
COMMENT_NODE = 8,
DOCUMENT_NODE = 9,
DOCUMENT_TYPE_NODE = 10,
DOCUMENT_FRAGMENT_NODE = 11,
NOTATION_NODE = 12
} DOMNodeType;

DOMExceptionCode

DOM例外のコードを定義します。

定義

typedef enum DOMExceptionCode {
UNDEFINED_ERR               = 0,
INDEX_SIZE_ERR              = 1,
DOMSTRING_SIZE_ERR          = 2,
HIERARCHY_REQUEST_ERR       = 3,
WRONG_DOCUMENT_ERR          = 4,
INVALID_CHARACTER_ERR       = 5,
NO_DATA_ALLOWED_ERR         = 6,
NO_MODIFICATION_ALLOWED_ERR = 7,
NOT_FOUND_ERR               = 8,
NOT_SUPPORTED_ERR           = 9,
INUSE_ATTRIBUTE_ERR         = 10,
INVALID_STATE_ERR           = 11,
SYNTAX_ERR                  = 12,
INVALID_MODIFICATION_ERR    = 13,
NAMESPACE_ERR               = 14,
INVALID_ACCESS_ERR          = 15
} DOMExceptionCode;

WhatToShowCode

フィルタ処理のコードを定義します。

定義

typedef unsigned long WhatToShowCode;
const unsigned long SHOW_ALL = 0xFFFFFFFF; c
onst unsigned long SHOW_ELEMENT = 0x00000001;
const unsigned long SHOW_ATTRIBUTE = 0x00000002;
const unsigned long SHOW_TEXT = 0x00000004;
const unsigned long SHOW_CDATA_SECTION = 0x00000008;
const unsigned long SHOW_ENTITY_REFERENCE = 0x00000010;
const unsigned long SHOW_ENTITY = 0x00000020;
const unsigned long SHOW_PROCESSING_INSTRUCTION = 0x00000040;
const unsigned long SHOW_COMMENT = 0x00000080;
const unsigned long SHOW_DOCUMENT = 0x00000100;
const unsigned long SHOW_DOCUMENT_TYPE = 0x00000200;
const unsigned long SHOW_DOCUMENT_FRAGMENT = 0x00000400;
const unsigned long SHOW_NOTATION = 0x00000800;

RangeExceptionCode

DOM範囲例外のコードです。

定義

typedef enum RangeExceptionCode {
RANGE_UNDEFINED_ERR         = 0,
BAD_BOUNDARYPOINTS_ERR      = 1,
INVALID_NODE_TYPE_ERR       = 2
} RangeExceptionCode;

AttrRefインタフェース

表2-2にAttrRefインタフェースで使用できるメソッドの概要を示します。

表2-2 AttrRefメソッドの概要: DOMパッケージ

関数

概要

AttrRef()

コンストラクタです。

getName()

属性の名前を戻します。

getOwnerElement()

属性の元の要素を戻します。

getSpecified()

属性が明示的に作成されているかどうかを示すブール値を戻します。

getValue()

属性値を戻します。

setValue()

属性値を設定します。

~AttrRef()

デフォルトのパブリック・デストラクタです。

AttrRef()

クラス・コンストラクタです。

構文

説明

AttrRef(
const NodeRef< Node>& node_ref,
Node* nptr);

createAttributeをコールした後に、指定の属性ノードに対する参照を作成するのに使用します。

AttrRef(
const AttrRef< Node>& nref);

コピー・コンストラクタです。

パラメータ

説明

node_ref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(AttrRef) Node参照オブジェクト。

getName()

(データ・エンコーディング内の)属性の完全修飾名を、NULLで終了する文字列で戻します。

構文

oratext* getName() const;

戻り値

(oratext *) 属性名。

getOwnerElement()

属性の元の要素を戻します。

構文

Node* getOwnerElement();

戻り値

(Node*) 属性の元の要素ノード。

getSpecified()

属性の指定値を戻します。元のドキュメントで属性に値が明示的に指定されている場合はTRUE、それ以外の場合はFALSEを戻します。ノードが属性でない場合は、FALSEを戻します。ユーザーがDOMを介して属性値を設定した場合、指定値はTRUEとなります。

構文

boolean getSpecified() const;

戻り値

(boolean) 属性の指定値。

getValue()

(データ・エンコーディング内の)属性の値(文字データ)を、NULLで終了する文字列で戻します。文字および汎用エンティティが置換されています。

構文

oratext* getValue() const;

戻り値

(oratext*) 属性値

setValue()

指定された属性値をデータに設定します。新しい値はデータ・エンコーディングに含まれている必要があります。これは検証、変換、確認されません。新しい値を設定した後、属性の指定されたフラグはTRUEとなります。

構文

void setValue(
oratext* data)
throw (DOMException);

パラメータ

説明

data

属性の新しい値

~AttrRef()

これはデフォルトのデストラクタです。

構文

~AttrRef();

CDATASectionRefインタフェース

表2-3にCDATASectionRefインタフェースで使用できるメソッドの概要を示します。

表2-3 CDATASectionRefメソッドの概要: DOMパッケージ

関数

概要

CDATASectionRef()

コンストラクタです。

~CDATASectionRef()

デフォルトのパブリック・デストラクタです。

CDATASectionRef()

クラス・コンストラクタです。

構文

説明

CDATASectionRef(
const NodeRef< Node>& node_ref,
Node* nptr);

createCDATASectionをコールした後に、指定のCDATAノードに対する参照を作成するのに使用します。

CDATASectionRef(
const CDATASectionRef< Node>& nref);

コピー・コンストラクタです。

パラメータ

説明

node_ref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(CDATASectionRef) Node参照オブジェクト。

~CDATASectionRef()

これはデフォルトのデストラクタです。

構文

~CDATASectionRef();

CharacterDataRefインタフェース

表2-4にCharacterDataRefインタフェースで使用できるメソッドの概要を示します。

表2-4 CharacterDataRefメソッドの概要: DOMパッケージ

関数

概要

appendData()

ノードの現行データの最後にデータを追加します。

deleteData()

ノードのデータの一部を削除します。

freeString()

substringDataによって割り当てられた文字列の割当てを解除します。

getData()

ノードのデータを戻します。

getLength()

ノードのデータの長さを戻します。

insertData()

ノードの現行データに文字列を挿入します。

replaceData()

ノードのデータの一部を置換します。

setData()

ノードのデータを設定します。

substringData()

ノードのデータの部分文字列を取得します。

appendData()

CharacterDataノードのデータの最後に文字列を追加します。追加するデータはデータ・エンコーディング内に含まれている必要があります。これは検証、変換、確認されません。

構文

void appendData(
oratext* data)
throw (DOMException);

パラメータ

説明

data

追加するデータ

deleteData()

CharacterDataノードのデータから一定範囲の文字を削除します。オフセットは0(ゼロ)から始まるため、データの先頭はオフセット0(ゼロ)で表されます。オフセットとカウントはどちらも、バイト数ではなく文字数で表されます。オフセットとカウントの合計がデータ長を超える場合、オフセットからデータの最後までのすべての文字が削除されます。

構文

void deleteData(
ub4 offset,
ub4 count)
throw (DOMException);

パラメータ

説明

offset

削除の開始点となる文字オフセット

count

削除する文字数

freeString()

substringData() によって割り当てられた文字列の割当てを解除します。これはOracleの拡張機能です。

構文

void freeString(
oratext* str);

パラメータ

説明

str

文字列

getData()

データ・エンコーディング内のCharacterDataノードのデータ(テキスト、コメントまたはCDATA)を戻します。

構文

oratext* getData() const;

戻り値

(oratext*) ノードのデータ

getLength()

CharacterDataノードのデータ(Text、CommentまたはCDATA)の長さを、バイト数ではなく文字数で戻します。

構文

ub4 getLength() const;

戻り値

(ub4) ノードのデータの長さ(バイト数ではなく、文字数)。

insertData()

CharacterDataノードのデータの指定位置に文字列を挿入します。挿入されるデータはデータ・エンコーディングに含まれている必要があります。これは検証、変換、確認されません。オフセットは、バイト数ではなく文字数で指定されます。オフセットは0(ゼロ)から始まるため、オフセット0(ゼロ)の位置に挿入するとデータが先頭に付加されます。

構文

void insertData(
ub4 offset,
oratext* data)
throw (DOMException);

パラメータ

説明

offset

挿入の開始点となる文字オフセット

data

挿入するデータ

replaceData()

CharacterDataノードのデータの一定範囲の文字を新規文字列で置換します。オフセットは0(ゼロ)から始まるため、データの先頭はオフセット0(ゼロ)で表されます。置換データはデータ・エンコーディングに含まれている必要があります。これは検証、変換、確認されません。オフセットおよびカウントはどちらも、バイト数ではなく文字数で表されます。オフセットとカウントの合計が長さを超える場合、データの最後までのすべての文字が置換されます。

構文

void replaceData(
ub4 offset,
ub4 count,
oratext* data)
throw (DOMException);

パラメータ

説明

offset

オフセット

count

置換する文字数

data

データ

setData()

CharacterDataノードのデータ(テキスト、コメントまたはCDATAの型)を設定し、古いデータを置換します。新しいデータは、検証、変換、確認は行われず、データ・エンコーディング内にある必要があります。

構文

void setData(
oratext* data)
throw (DOMException);

パラメータ

説明

data

データ

substringData()

CharacterDataノードから一定範囲の文字データ(Text、CommentまたはCDATA)を戻します。データはデータ・エンコーディングに含まれるため、オフセットおよびカウントはバイト数ではなく文字数で表されます。文字列の先頭はオフセット0(ゼロ)です。オフセットとカウントの合計が長さを超える場合、データの最後までのすべての文字が戻されます。部分文字列はコンテキスト管理されたメモリーに永続的に割り当てられており、freeStringによって明示的に割当て解除される必要があります。

構文

oratext* substringData(
ub4 offset,
ub4 count)
throw (DOMException);

パラメータ

説明

offset

オフセット

count

抽出する文字数

戻り値

(oratext *) 指定された部分文字列

CommentRefインタフェース

表2-5にCommentRefインタフェースで使用できるメソッドの概要を示します。

表2-5 CommentRefメソッドの概要: DOMパッケージ

関数

概要

CommentRef()

コンストラクタです。

~CommentRef()

デフォルトのパブリック・デストラクタです。

CommentRef()

クラス・コンストラクタです。

構文

説明

CommentRef(
const NodeRef< Node>& node_ref,
Node* nptr);

createCommentをコールした後に、指定のCommentノードに対する参照を作成します。

CommentRef(
const CommentRef< Node>& nref);

コピー・コンストラクタです。

パラメータ

説明

node_ref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(CommentRef) Node参照オブジェクト。

~CommentRef()

これはデフォルトのデストラクタです。

構文

~CommentRef();

DOMExceptionインタフェース

表2-6にDOMExceptionインタフェースで使用できるメソッドの概要を示します。

表2-6 DOMExceptionメソッドの概要: DOMパッケージ

関数

概要

getDOMCode()

例外に埋め込まれたDOM例外コードを取得します。

getMesLang()

エラー・メッセージの現在の言語エンコーディングを取得します。

getMessage()

Oracle XMLエラー・メッセージを取得します。

getDOMCode()

これは、実行時の例外状況のDOM例外コード(DOMExceptionCodeで定義)を戻す、実装で定義済のメンバー関数のプロトタイプを定義する仮想メンバー関数です。

構文

virtual DOMExceptionCode getDOMCode() const = 0;

戻り値

(DOMExceptionCode) 例外コード

getMesLang()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMesLang() const = 0;

戻り値

(oratext*) エラー・メッセージの現在の言語(エンコーディング)。

getMessage()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMessage() const = 0;

戻り値

(oratext *) エラー・メッセージ

DOMImplRefインタフェース

表2-7にDOMImplRefインタフェースで使用できるメソッドの概要を示します。

表2-7 DOMImplRefメソッドの概要: DOMパッケージ

関数

概要

DOMImplRef()

コンストラクタです。

createDocument()

ドキュメント参照を作成します。

createDocumentType()

DTD参照を作成します。

formDocument()

ドキュメント・ポインタを持つドキュメント参照を構成します。

getImplementation()

ドキュメントに関連付けられたDOMImplementationオブジェクトを取得します。

getNoMod()

no modification allowedフラグ値を取得します。

hasFeature()

DOM機能が実装されているかどうかを判別します。

setContext()

ノードに別のコンテキストを設定します。

~DOMImplRef()

デフォルトのパブリック・デストラクタです。

DOMImplRef()

クラス・コンストラクタです。

構文

説明

DOMImplRef(
Context* ctx_ptr,
DOMImplementation< Node>* impl_ptr);

指定されたコンテキストにおいて、DOMImplementationオブジェクトに対する参照オブジェクトを作成します。インプリメンテーション・オブジェクトに対する参照を戻します。

DOMImplRef(
const DOMImplRef< Context, Node>& iref);

インプリメンテーション・オブジェクトに対する他の参照を作成する際に必要です。削除フラグはコピーされません。

DOMImplRef(
const DOMImplRef< Context, Node>& iref,
Context* ctx_ptr);

別のコンテキストにおいてインプリメンテーション・オブジェクトに対する参照を作成する際に必要です。削除フラグはコピーされません。

パラメータ

説明

ctx_ptr

コンテキスト・ポインタ

impl_ptr

実装

戻り値

(DOMImplRef) インプリメンテーション・オブジェクトに対する参照。

createDocument()

ドキュメント参照を作成します

構文

DocumentRef< Node>* createDocument(
oratext* namespaceURI,
oratext* qualifiedName,
DocumentTypeRef< Node>& doctype)
throw (DOMException);

パラメータ

説明

namespaceURI

ルート要素の名前空間URI

qualifiedName

ルート要素の修飾名

doctype

対応するDTDノード

戻り値

(DocumentRef< Node>*) ドキュメント参照。

createDocumentType()

DTD参照を作成します

構文

DocumentTypeRef< Node>* createDocumentType(
oratext* qualifiedName,
oratext* publicId,
oratext* systemId)
throw (DOMException);

パラメータ

説明

qualifiedName

修飾名

publicId

外部サブセットの公開識別子

systemId

外部サブセットのシステム識別子

戻り値

(DocumentTypeRef< Node>*) DTD参照。

formDocument()

ドキュメント・ポインタを持つドキュメント参照を構成します。

構文

DocumentRef< Node>* formDocument( Node* node);

パラメータ

説明

node

ドキュメント・ノードへのポインタ

戻り値

(DocumentRef< Node>*) ドキュメント参照へのポインタ。

getImplementation()

このドキュメントの作成に使用されたDOMImplementationオブジェクトを戻します。DOMImplementationオブジェクトが破棄された場合、対応するドキュメント・ツリーもすべて破棄されます。

構文

DOMImplementation< Node>* getImplementation() const;

戻り値

(DOMImplementation) DOMImplementation参照オブジェクト。

getNoMod()

no modification allowedフラグ値を取得します。これはOracleの拡張機能です。

構文

boolean getNoMod() const;

戻り値

フラグの値がTRUEの場合はTRUE、それ以外の場合はFALSE。

hasFeature()

DOM機能が実装されているかどうかを判別します。機能が指定バージョンで実装されている場合はTRUE、実装されていない場合はFALSEを戻します。

レベル1では、パッケージの正当な値は「HTML」および「XML」(大/小文字は区別されない)、バージョンは文字列「1.0」です。バージョンを指定しなかった場合は、この機能のどのバージョンが実装されていても、TRUEが戻されます。

DOM 1.0の機能は「XML」および「HTML」です。

DOM 2.0の機能は、「Core」、「XML」、「HTML」、「Views」、「StyleSheets」、「CSS」、「CSS2」、「Events」、「UIEvents」、「MouseEvents」、「MutationEvents」、「HTMLEvents」、「Range」、「Traversal」です。

構文

boolean hasFeature(
oratext* feature,
oratext* version);

パラメータ

説明

feature

機能のパッケージ名

version

パッケージのバージョン

戻り値

(boolean) 機能が実装されているかどうか。

setContext()

別のコンテキストにおいてノード参照を作成する際に必要です。

構文

void setContext(
NodeRef< Node>& nref,
Context* ctx_ptr);

パラメータ

説明

nref

参照ノード

ctx_ptr

コンテキスト・ポインタ

~DOMImplRef()

これはデフォルトのデストラクタです。インプリメンテーション・オブジェクトに対する参照を消去します。通常は環境によってコールされます。ただし、必要に応じてユーザーが直接コールできます。

構文

~DOMImplRef();

DOMImplementationインタフェース

表2-8にDOMImplementationインタフェースで使用できるメソッドの概要を示します。

表2-8 DOMImplementationメソッドの概要: DOMパッケージ

関数

概要

DOMImplementation()

コンストラクタです。

getNoMod()

nomodificationallowedフラグ値を取得します。

~DOMImplementation()

デフォルトのパブリック・デストラクタです。

DOMImplementation()

DOMImplementationオブジェクトを作成します。パラメータ値にno modifications allowedフラグを設定します。

構文

DOMImplementation(
boolean no_mod);

パラメータ

説明

no_mod

変更が許可されているか(FALSE)許可されていないか(TRUE)。

戻り値

(DOMImplementation) インプリメンテーション・オブジェクト

getNoMod()

no modification allowedフラグ値を取得します。これはOracleの拡張機能です。

構文

boolean getNoMod() const;

戻り値

フラグの値がTRUEの場合はTRUE、それ以外の場合はFALSE。

~DOMImplementation()

これはデフォルトのデストラクタです。このオブジェクトに対応するすべてのDOMツリーを削除します。

構文

~DOMImplementation();

DocumentFragmentRefインタフェース

表2-9にDocumentFragmentRefインタフェースで使用できるメソッドの概要を示します。

表2-9 DocumentFragmentRefメソッドの概要: DOMパッケージ

関数

概要

DocumentFragmentRef()

コンストラクタです。

~DocumentFragmentRef()

デフォルトのパブリック・デストラクタです。

DocumentFragmentRef()

クラス・コンストラクタです。

構文

説明

DocumentFragmentRef(
const NodeRef< Node>& node_ref,
Node* nptr);

createDocumentFragmentをコールした後に、指定のフラグメント・ノードに対する参照を作成するのに使用します。

DocumentFragmentRef(
const DocumentFragmentRef< Node>& nref);

コピー・コンストラクタです。

パラメータ

説明

node_ref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(DocumentFragmentRef) Node参照オブジェクト。

~DocumentFragmentRef()

これはデフォルトのデストラクタです。

構文

~DocumentFragmentRef() {}

DocumentRangeインタフェース

表2-10にDocumentRangeインタフェースで使用できるメソッドの概要を示します。

表2-10 DocumentRangeメソッドの概要: DOMパッケージ

関数

概要

DocumentRange()

コンストラクタです。

createRange()

新しい範囲オブジェクトを作成します。

destroyRange()

範囲オブジェクトを破棄します。

~DocumentRange()

デフォルトのデストラクタです。

DocumentRange()

ファクトリを作成します。

構文

DocumentRange();

戻り値

(DocumentRange) 新しいファクトリ・オブジェクト。

createRange()

新しい範囲オブジェクトを作成します。

構文

Range< Node>* createRange(
DocumentRef< Node>& doc);

パラメータ

説明

doc

ドキュメント・ノードに対する参照

戻り値

(Range*) 新しい範囲へのポインタ。

destroyRange()

範囲オブジェクトを破棄します。

構文

void destroyRange(
Range< Node>* range)
throw (DOMException);

パラメータ

説明

range

範囲

~DocumentRange()

デフォルトのデストラクタです。

構文

~DocumentRange();

DocumentRefインタフェース

表2-11にDocumentRefインタフェースで使用できるメソッドの概要を示します。

表2-11 DocumentRefメソッドの概要: DOMパッケージ

関数

概要

DocumentRef()

コンストラクタです。

createAttribute()

属性ノードを作成します。

createAttributeNS()

名前空間の情報を含む属性ノードを作成します。

createCDATASection()

CDATAノードを作成します。

createComment()

コメント・ノードを作成します。

createDocumentFragment()

ドキュメント・フラグメントを作成します。

createElement()

要素ノードを作成します。

createElementNS()

名前空間の情報を含む要素ノードを作成します。

createEntityReference()

実体参照ノードを作成します。

createProcessingInstruction()

ProcessingInstructionノードを作成します。

createTextNode()

テキスト・ノードを作成します。

getDoctype()

ドキュメントに対応するDTDを取得します。

getDocumentElement()

このドキュメントの最上位要素を取得します。

getElementById()

指定されたIDの要素を取得します。

getElementsByTagName()

ドキュメント内の要素をタグ名で取得します。

getElementsByTagNameNS()

ドキュメント内の要素をタグ名で取得します(名前空間認識バージョン)。

getImplementation()

ドキュメントに関連付けられたDOMImplementationオブジェクトを取得します。

importNode()

別のDOMからノードをインポートします。

~DocumentRef()

デフォルトのパブリック・デストラクタです。

DocumentRef()

これはコンストラクタです。

構文

説明

DocumentRef(
const NodeRef< Node>& nref,
Node* nptr);

デフォルトのコンストラクタです。

DocumentRef(
const DocumentRef< Node>& nref);

コピー・コンストラクタです。

パラメータ

説明

nref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(DocumentRef) Node参照オブジェクト。

createAttribute()

指定された名前の属性ノードを作成します。これは名前空間を認識しない関数です。新しい属性は、名前空間URIおよび接頭辞がNULLとなり、指定された名前が修飾名である場合も、属性のローカル名は属性名と同じになります。新しいノードは、親を持たない孤立した子です。名前はコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

Node* createAttribute(
oratext* name)
throw (DOMException);

パラメータ

説明

name

名前

戻り値

(Node*) 新しい属性ノード。

createAttributeNS()

指定された名前空間URIおよび修飾名を持つ属性ノードを作成します。新しいノードは、親を持たない孤立した子です。URIおよび修飾名はコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

Node* createAttributeNS(
oratext* namespaceURI,
oratext* qualifiedName)
throw (DOMException);

パラメータ

説明

namespaceURI

名前空間URI

qualifiedName

修飾名

戻り値

(Node*) 新しい属性ノード。

createCDATASection()

指定された初期データ(データ・エンコーディングに含まれている必要があります)を持つCDATAセクション・ノードを作成します。CDATAセクションは文字どおりとみなされ、解析されません。つまり、正規化処理によって隣接したテキスト・ノードと結合されることはありません。初期データにNULLが指定されている場合、検証、変換、確認は行われません。CDATAノードの名前は、常に「#cdata-section」となります。新しいノードは、親を持たない孤立した子です。CDATAはコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

Node* createCDATASection(
oratext* data)
throw (DOMException);

パラメータ

説明

data

新しいノードのデータ

戻り値

(Node*) 新しいCDATAノード。

createComment()

指定された初期データ(データ・エンコーディングに含まれている必要があります)を持つコメント・ノードを作成します。データにNULLが指定されている場合、検証、変換、確認は行われません。コメント・ノードの名前は、常に「#comment」となります。新しいノードは、親を持たない孤立した子です。コメント・データはコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

Node* createComment(
oratext* data)
throw (DOMException);

パラメータ

説明

data

新しいノードのデータ

戻り値

(Node*) 新しいコメント・ノード。

createDocumentFragment()

空のドキュメント・フラグメント・ノードを作成します。ドキュメント・フラグメントは、DOMツリーに挿入されると特殊な方法で処理されます。フラグメント・ノード自体ではなく、フラグメントの子が順番に挿入されます。挿入後、フラグメント・ノードは存続しますが、子はなくなります。フラグメント・ノードの名前は、常に「#document-fragment」となります。

構文

Node* createDocumentFragment()
throw (DOMException);

戻り値

(Node*) 新しいドキュメント・フラグメント・ノード。

createElement()

指定されたタグ名(データ・エンコーディングに含まれている必要があります)を持つ要素ノードを作成します。新しいノードは、親を持たない孤立した子です。tagnameはコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

要素のタグ名は大/小文字が区別されることに注意してください。これは、名前空間を認識しない関数です。したがって、新しいノードは、名前空間URIおよび接頭辞がNULLとなり、指定されたタグ名が修飾名である場合も、ノードのローカル名はノードのタグ名と同じになります。

構文

Node* createElement(
oratext* tagname)
throw (DOMException);

パラメータ

説明

tagname

タグ名

戻り値

(Node*) 新しい要素ノード。

createElementNS()

指定された名前空間URIおよび修飾名を持つ要素を作成します。新しいノードは、親を持たない孤立した子です。URIおよび修飾名はコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

要素名では大/小文字が区別され、URIはNULLにできますが、修飾名は必須であることに注意してください。修飾名は、接頭辞部分とローカル部分に分割されます。tagNameが完全修飾名になります。

構文

Node* createElementNS(
oratext* namespaceURI,
oratext* qualifiedName)
throw (DOMException);

パラメータ

説明

namespaceURI

名前空間URI

qualifiedName

修飾名

戻り値

(Node*) 新しい要素ノード。

createEntityReference()

実体参照ノードを作成します。名前(データ・エンコーディングに含まれている必要があります)は、参照される実体の名前です。名前付きの実体が存在する必要はありません。名前の検証、変換、確認は行われません。新しいノードは、親を持たない孤立した子です。実体参照名はコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

パーサーは実体参照ノードを生成するのでなく、検出した実体参照を展開します。出力の際、実体参照ノードはスタイル参照の「&name;」に変換されます。

構文

Node* createEntityReference(
oratext* name)
throw (DOMException);

パラメータ

説明

name

名前

戻り値

(Node*) 新しい実体参照ノード。

createProcessingInstruction()

指定されたターゲットおよびデータ(データ・エンコーディングに含まれている必要があります)を持つ処理命令ノードを作成します。このデータはNULLにできますが、ターゲットは必須で、変更できません。ターゲットおよびデータの検証、変換、確認は行われません。ノードの名前はターゲットと同じです。新しいノードは、親を持たない孤立した子です。ターゲットおよびデータはコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

Node* createProcessingInstruction(
oratext* target,
oratext* data)
throw (DOMException);

パラメータ

説明

target

ターゲット

data

新しいノードのデータ

戻り値

(Node*) 新しいPIノード。

createTextNode()

指定された初期データ(非NULLで、データ・エンコーディングに含まれている必要があります)を持つテキスト・ノードを作成します。データにNULLが指定されている場合、検証、変換、確認は行われません(エンティティは拡張されません)。ノードの名前は、常に「#text」となります。新しいノードは、親を持たない孤立した子です。テキスト・データはコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

Node* createTextNode(
oratext* data)
throw (DOMException);

パラメータ

説明

data

新しいテキスト・ノードのデータ

戻り値

(Node*) 新しいテキスト・ノード。

getDoctype()

このドキュメントに対応するDTDノードを戻します。このコールの後、メンバー関数をコールするために、適切なコンストラクタを使用してDocumentTypeRefオブジェクトを作成する必要があります。DTDツリーは編集できません。

構文

Node* getDoctype() const;

戻り値

(Node*) DTDノード

getDocumentElement()

DOMツリーのルート要素(ノード)を戻します。各ドキュメントには、ルート要素と呼ばれる最上位の要素ノードが1つのみ含まれます。ルート要素がない場合、NULLが戻されます。これは、ドキュメント・ツリーが作成されている場合に発生することがあります。

構文

Node* getDocumentElement() const;

戻り値

(Node*) ルート要素

getElementById()

指定されたIDを持つ要素ノードを戻します。要素が検出されない場合は、NOT_FOUND_ERRをスローします。指定されたIDはデータ・エンコーディングに含まれている必要があります。そうでないと一致しない場合があります。

IDという名前の属性が必ずタイプIDであるとは限らないことに注意してください。ID属性(任意の名前を指定可能)は、そのドキュメントに対応するDTDまたはXMLスキーマでタイプIDとして宣言する必要があります。

構文

Node* getElementById(
oratext* elementId);

パラメータ

説明

elementId

要素ID

戻り値

(Node*) Elementノード

getElementsByTagName()

ドキュメント内の指定されたタグ名を持つすべての要素のリストを、ドキュメントの順序(ツリーの先行順走査で検出された順序)で戻します。リストが不要になった場合は、ユーザーが解放する必要があります。このリストは最新のものではなく、スナップショットです。つまり、リストが戻された後に、タグ名に一致する新しいノードがDOMに追加された場合、そのノードを含むようにリストが自動的に更新されることはありません。

特別な名前「*」はすべてのタグ名と一致します。NULLの名前に一致するものはありません。タグ名は大/小文字が区別されることに注意してください。また、データ・エンコーディングに含まれている必要があり、そうでないと不一致が生じる場合があります。

この関数は名前空間を認識しません。したがって、完全なタグ名が比較されます。同じURIにマップされる異なる接頭辞を持つ2つの修飾名を比較すると、比較は失敗します。

構文

NodeList< Node>* getElementsByTagName(
oratext* tagname) const;

パラメータ

説明

tagname

タグ名

戻り値

(NodeList< Node>*) ノードのリスト。

getElementsByTagNameNS()

ドキュメント内の指定された名前空間URIおよびローカル名を持つすべての要素のリストを、ドキュメント順序(ツリーの先行順走査で検出された順序)で戻します。リストが不要になった場合は、ユーザーが解放する必要があります。このリストは最新のものではなく、スナップショットです。つまり、リストが戻された後に、URIとローカル名に一致する新しいノードがDOMに追加された場合、そのノードを含むようにリストが自動的に更新されることはありません。

URIとローカル名は、データ・エンコーディング内に含まれている必要があります。特別な名前「*」はすべてのローカル名と一致します。NULLのローカル名に一致するものはありません。名前空間URIは常に一致する必要がありますが、ワイルド・カードは使用できません。比較では、大/小文字が区別されます。

構文

NodeList< Node>* getElementsByTagNameNS(
oratext* namespaceURI,
oratext* localName);

パラメータ

説明

namespaceURI

一致する名前空間URI

localName

一致するローカル名

戻り値

(NodeList< Node>*) ノードのリスト。

getImplementation()

このドキュメントの作成に使用されたDOMImplementationオブジェクトを戻します。DOMImplementationオブジェクトが破棄された場合、これに対応するドキュメント・ツリーもすべて破棄されます。

構文

DOMImplementation< Node>* getImplementation() const;

戻り値

(DOMImplementation) DOMImplementation参照オブジェクト。

importNode()

あるドキュメントから別のドキュメントにノードをインポートします。新しいノードは孤立した子であり、親を持ちません。元のノードは、変更されたりドキュメントから削除されることはありません。かわりに、元のノードの修飾名、接頭辞、名前空間URIおよびローカル名をすべてコピーした新しいノードが作成されます。

deepパラメータは、ノードの子が再帰的にインポートされるかどうかを制御します。FALSEの場合、ノード自体のみがインポートされ、子は含まれません。TRUEの場合、ノードのすべての子孫が同様にインポートされ、新しいサブツリー全体が作成されます。要素には指定された属性のみがインポートされます。指定されていない(デフォルトの)属性は省略されます。その後、(インポート先ドキュメントの)新しいデフォルトの属性が追加されます。ドキュメント・ノードおよびDocumentTypeノードはインポートできません。

構文

Node* importNode(
NodeRef< Node>& importedNode,
boolean deep) const
throw (DOMException);

パラメータ

説明

importedNode

インポートするノード

deep

サブツリーを再帰的にインポートするためのインジケータ

戻り値

(Node*) インポートされた新しいノード。

~DocumentRef()

これはデフォルトのデストラクタです。ノードに対する参照を消去します。ドキュメント・ノードが削除用にマークされている場合、このデストラクタがノードとその下のツリーを削除します。ドキュメント・ノードの場合は、常に深いレベルの削除となります。デストラクタは、環境からコールすることも、またユーザーが直接コールすることもできます。

構文

~DocumentRef();

DocumentTraversalインタフェース

表2-12にDocumentTraversalインタフェースで使用できるメソッドの概要を示します。

表2-12 DocumentTraversalメソッドの概要: DOMパッケージ

関数

概要

DocumentTraversal()

コンストラクタです。

createNodeIterator()

新しいNodeIteratorオブジェクトを作成します。

createTreeWalker()

新しいTreeWalkerオブジェクトを作成します。

destroyNodeIterator()

NodeIteratorオブジェクトを破棄します。

destroyTreeWalker()

TreeWalkerオブジェクトを破棄します。

~DocumentTraversal()

デフォルトのデストラクタです。

DocumentTraversal()

ファクトリを作成します。

構文

DocumentTraversal();

戻り値

(DocumentTraversal) 新しいファクトリ・オブジェクト。

createNodeIterator()

新しいイテレータ・オブジェクトを作成します。

構文

NodeIterator< Node>* createNodeIterator(
NodeRef< Node>& root,
WhatToShowCode whatToShow,
boolean entityReferenceExpansion)
throw (DOMException);

パラメータ

説明

root

root反復用のサブツリーのルート

whatToShow

ノード・タイプ・フィルタ

entityReferenceExpansion

TRUEの場合、実体参照を展開

戻り値

(NodeIterator*) 新しいイテレータへのポインタ。

createTreeWalker()

新しいTreeWalkerオブジェクトを作成します。

構文

TreeWalker< Node>* createTreeWalker(
NodeRef< Node>& root,
WhatToShowCode whatToShow,
boolean entityReferenceExpansion)
throw (DOMException);

パラメータ

説明

root

走査用のサブツリーのルート

whatToShow

ノード・タイプ・フィルタ

entityReferenceExpansion

TRUEの場合、実体参照を展開

戻り値

(TreeWalker*) 新しいツリー・ウォーカへのポインタ。

destroyNodeIterator()

ノード・イテレータ・オブジェクトを破棄します。

構文

void destroyNodeIterator(
NodeIterator< Node>* iter)
throw (DOMException);

パラメータ

説明

iter

イテレータ

destroyTreeWalker()

TreeWalkerオブジェクトを破棄します。

構文

void destroyTreeWalker(
TreeWalker< Node>* walker)
throw (DOMException);

パラメータ

説明

walker

ツリー・ウォーカ

~DocumentTraversal()

デフォルトのデストラクタです。

構文

~DocumentTraversal();

DocumentTypeRefインタフェース

表2-13にDocumentTypeRefインタフェースで使用できるメソッドの概要を示します。

表2-13 DocumentTypeRefメソッドの概要: DOMパッケージ

関数

概要

DocumentTypeRef()

コンストラクタです。

getEntities()

DTDのエンティティを取得します。

getInternalSubset()

DTDの内部サブセットを取得します。

getName()

DTDの名前を取得します。

getNotations()

DTDの表記法を取得します。

getPublicId()

DTDの公開識別子を取得します。

getSystemId()

DTDのシステム識別子を取得します。

~DocumentTypeRef()

デフォルトのパブリック・デストラクタです。

DocumentTypeRef()

これはコンストラクタです。

構文

説明

DocumentTypeRef(
const NodeRef< Node>& node_ref,
Node* nptr);

デフォルトのコンストラクタです。

DocumentTypeRef(
const DocumentTypeRef< Node>& node_ref);

コピー・コンストラクタです。

パラメータ

説明

node_ref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(DocumentTypeRef) Node参照オブジェクト。

getEntities()

DTDによって定義された汎用エンティティの名前付きノード・マップを戻します。

構文

NamedNodeMap< Node>* getEntities() const;

戻り値

(NamedNodeMap< Node>*) エンティティを含むマップ。

getInternalSubset()

要素のコンテンツ・モデルを戻します。DTDが存在しない場合、NULLを戻します。

構文

Node* getInternalSubset(
oratext* name);

パラメータ

説明

name

要素名

戻り値

(xmlnode*) コンテンツ・モデル・サブツリー。

getName()

DOCTYPEキーワードの直後に指定されたDTDの名前を戻します。

構文

oratext* getName() const;

戻り値

(oratext *) 属性名。

getNotations()

DTDによって宣言された表記法の名前付きノード・マップを戻します。

構文

NamedNodeMap< Node>* getNotations() const;

戻り値

(NamedNodeMap< Node>*) 表記法を含むマップ。

getPublicId()

DTDの公開識別子を戻します。

構文

oratext* getPublicId() const;

戻り値

(oratext*) DTDの公開識別子。

getSystemId()

DTDのシステム識別子を戻します。

構文

oratext* getSystemId() const;

戻り値

(oratext*) DTDのシステム識別子。

~DocumentTypeRef()

これはデフォルトのデストラクタです。

構文

~DocumentTypeRef();

ElementRefインタフェース

表2-14にElementRefインタフェースで使用できるメソッドの概要を示します。

表2-14 ElementRefメソッドの概要: DOMパッケージ

関数

概要

ElementRef()

コンストラクタです。

getAttribute()

指定された名前の属性の値を取得します。

getAttributeNS()

指定されたURIおよびローカル名の属性の値を取得します。

getAttributeNode()

指定された名前の属性ノードを取得します。

getElementsByTagName()

指定されたタグ名の要素を取得します。

getTagName()

要素のタグ名を取得します。

hasAttribute()

指定された属性が存在するかどうかを確認します。

hasAttributeNS()

指定された属性が存在するかどうかを確認します(名前空間認識バージョン)。

removeAttribute()

指定された名前を持つ属性を削除します。

removeAttributeNS()

指定されたURIおよびローカル名を持つ属性を削除します。

removeAttributeNode()

属性ノードを削除します

setAttribute()

この要素と新しい値のいずれかまたは両方に対して新しい属性を設定します。

setAttributeNS()

この要素と新しい値のいずれかまたは両方に対して新しい属性を設定します。

setAttributeNode()

属性ノードを設定します。

~ElementRef()

デフォルトのパブリック・デストラクタです。

ElementRef()

クラス・コンストラクタです。

構文

説明

ElementRef(
const NodeRef< Node>& node_ref,
Node* nptr);

createElementをコールした後に、指定の要素ノードに対する参照を作成します。

ElementRef(
const ElementRef< Node>& node_ref);

コピー・コンストラクタです。

パラメータ

説明

node_ref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(ElementRef) Node参照オブジェクト。

getAttribute()

名前で指定された要素の属性の値を戻します。属性の値には空の文字列を使用できますが、NULLにはできません。

構文

oratext* getAttribute(
oratext* name) const;

パラメータ

説明

name

属性の名前(データ・エンコーディング)

戻り値

(oratext*) 指定された属性の値(データ・エンコーディング内)。

getAttributeNS()

URIおよびローカル名で指定された要素の属性の値を戻します。属性の値には空の文字列を使用できますが、NULLにはできません。

構文

oratext* getAttributeNS(
oratext* namespaceURI,
oratext* localName);

パラメータ

説明

namespaceURI

属性の名前空間URI(データ・エンコーディング)

localName

属性のローカル名(データ・エンコーディング)

戻り値

(oratext*) 指定された属性の値(データ・エンコーディング内)。

getAttributeNode()

指定された名前の属性ノードを戻します。

構文

Node* getAttributeNode(
oratext* name) const;

パラメータ

説明

name

属性の名前(データ・エンコーディング)

戻り値

(Node*) 属性ノード。

getElementsByTagName()

指定されたタグ名を持つすべての要素のリストを、サブツリーの先行順走査で検出された順序で戻します。タグ名は、データ・エンコーディング内に含まれている必要があります。特別な名前「*」はすべてのタグ名と一致します。NULLの名前に一致するものはありません。タグ名は大/小文字が区別されます。この関数は名前空間を認識しません。したがって、完全なタグ名が比較されます。戻されたリストはユーザーが解放する必要があります。

構文

NodeList< Node>* getElementsByTagName(
oratext* name);

パラメータ

説明

name

一致させるタグ名(データ・エンコーディング)

戻り値

(NodeList< Node>*) 要素のリスト。

getTagName()

ノード・インタフェースのノード名と同じ値を持つはずの要素ノードのタグ名を戻します。

構文

oratext* getTagName() const;

戻り値

(oratext*) 要素名(データ・エンコーディング内)。

hasAttribute()

指定された名前の属性を要素が持っているかどうかを判別します。

構文

boolean hasAttribute(
oratext* name);

パラメータ

説明

name

属性の名前(データ・エンコーディング)

戻り値

(boolean) 指定された名前の属性を要素が持っている場合はTRUE。

hasAttributeNS()

指定されたURIおよびローカル名の属性を要素が持っているかどうかを判別します。

構文

boolean hasAttributeNS(
oratext* namespaceURI,
oratext* localName);

パラメータ

説明

namespaceURI

属性の名前空間URI(データ・エンコーディング)

localName

属性のローカル名(データ・エンコーディング)

戻り値

(boolean) 該当する属性を要素が持っている場合はTRUE。

removeAttribute()

名前で指定された属性を削除します。属性は要素の属性リストから削除されますが、属性ノード自体は破棄されません。

構文

void removeAttribute(
oratext* name) throw (DOMException);

パラメータ

説明

name

属性の名前(データ・エンコーディング)

removeAttributeNS()

URIおよびローカル名で指定された属性を削除します。属性は要素の属性リストから削除されますが、属性ノード自体は破棄されません。

構文

void removeAttributeNS(
oratext* namespaceURI,
oratext* localName)
throw (DOMException);

パラメータ

説明

namespaceURI

属性の名前空間URI(データ・エンコーディング)

localName

属性のローカル名(データ・エンコーディング)

removeAttributeNode()

要素から属性を削除します。削除された属性へのポインタまたはNULLを戻します。

構文

Node* removeAttributeNode(
AttrRef< Node>& oldAttr)
throw (DOMException);

パラメータ

説明

oldAttr

古い属性ノード

戻り値

(Node*) 古い属性ノードまたはNULL。

setAttribute()

指定された名前および値(データ・エンコーディングに含まれている必要があります)を持つ、要素の新しい属性を作成します。指定された属性名を持つ属性がすでに存在する場合は、単純にその値が置換されます。名前および値の検証、変換、確認は行われません。値は解析されないため、実体参照は展開されません。

構文

void setAttribute(
oratext* name,
oratext* value)
throw (DOMException);

パラメータ

説明

name

属性の名前(データ・エンコーディング)

value

属性値(データ・エンコーディング)

setAttributeNS()

指定されたURI、ローカル名および値(データ・エンコーディングに含まれている必要があります)を持つ、要素の新しい属性を作成します。指定された属性名を持つ属性がすでに存在する場合は、単純にその値が置換されます。名前および値の検証、変換、確認は行われません。値は解析されないため、実体参照は展開されません。

構文

void setAttributeNS(
oratext* namespaceURI,
oratext* qualifiedName,
oratext* value)
throw (DOMException);

パラメータ

説明

namespaceURI

属性の名前空間URI(データ・エンコーディング)

qualifiedName

属性の修飾名(データ・エンコーディング)

value

属性値(データ・エンコーディング)

setAttributeNode()

要素に新しい属性を追加します。指定された名前の属性がすでに存在する場合、その属性は置換され、古い属性へのポインタが戻されます。この属性が新しい場合、要素リストに追加され、新しい属性へのポインタが戻されます。

構文

Node* setAttributeNode(
AttrRef< Node>& newAttr)
throw (DOMException);

パラメータ

説明

newAttr

新しいノード

戻り値

(Node*) 古い、または新しい属性ノード。

~ElementRef()

これはデフォルトのデストラクタです。

構文

~ElementRef();

EntityRefインタフェース

表2-15にEntityRefインタフェースで使用できるメソッドの概要を示します。

表2-15 EntityRefメソッドの概要: DOMパッケージ

関数

概要

EntityRef()

コンストラクタです。

getNotationName()

エンティティの表記法を取得します。

getPublicId()

エンティティの公開識別子を取得します。

getSystemId()

エンティティのシステム識別子を取得します。

getType()

エンティティの型を取得します。

~EntityRef()

デフォルトのパブリック・デストラクタです。

EntityRef()

クラス・コンストラクタです。

構文

説明

EntityRef(
const NodeRef< Node>& node_ref,
Node* nptr);

createEntityをコールした後に、指定のエンティティ・ノードに対する参照を作成します。

EntityRef(
const EntityRef< Node>& nref);

コピー・コンストラクタです。

パラメータ

説明

node_ref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(EntityRef) Node参照オブジェクト。

getNotationName()

解析対象外のエンティティの場合、データ・エンコーディング内の表記法の名前を戻します。解析対象エンティティおよびその他のノード・タイプの場合は、NULLを戻します。

構文

oratext* getNotationName() const;

戻り値

(oratext*) エンティティの表記法

getPublicId()

エンティティの公開識別子(データ・エンコーディング内)を戻します。

構文

oratext* getPublicId() const;

戻り値

(oratext*) エンティティの公開識別子。

getSystemId()

エンティティのシステム識別子(データ・エンコーディング内)を戻します。

構文

oratext* getSystemId() const;

戻り値

(oratext*) エンティティのシステム識別子。

getType()

エンティティが汎用であるか(TRUE)パラメータであるか(FALSE)を説明するブール値を戻します。

構文

boolean getType() const;

戻り値

(boolean) 汎用エンティティの場合はTRUE、パラメータ・エンティティの場合はFALSE。

~EntityRef()

これはデフォルトのデストラクタです。

構文

~EntityRef();

EntityReferenceRefインタフェース

表2-16にEntityReferenceRefインタフェースで使用できるメソッドの概要を示します。

表2-16 EntityReferenceRefメソッドの概要: DOMパッケージ

関数

概要

EntityReferenceRef()

コンストラクタです。

~EntityReferenceRef()

デフォルトのパブリック・デストラクタです。

EntityReferenceRef()

クラス・コンストラクタです。

構文

説明

EntityReferenceRef(
const NodeRef< Node>& node_ref,
Node* nptr);

createEntityReferenceをコールした後に、指定の実体参照ノードに対する参照を作成します。

EntityReferenceRef(
const EntityReferenceRef< Node>& nref);

コピー・コンストラクタです。

パラメータ

説明

node_ref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(EntityReferenceRef) Node参照オブジェクト。

~EntityReferenceRef()

これはデフォルトのデストラクタです。

構文

~EntityReferenceRef();

NamedNodeMapRefインタフェース

表2-17にNamedNodeMapRefインタフェースで使用できるメソッドの概要を示します。

表2-17 NamedNodeMapRefメソッドの概要: DOMパッケージ

関数

概要

NamedNodeMapRef()

コンストラクタです

getLength()

マップの長さを取得します

getNamedItem()

指定された名前の項目を取得します。

getNamedItemNS()

指定された名前空間URIおよびローカル名の項目を取得します。

item()

指定されたインデックスの項目を取得します。

removeNamedItem()

指定された名前の項目を削除します。

removeNamedItemNS()

マップから項目を削除します。

setNamedItem()

マップに新しい項目を追加します。

setNamedItemNS()

指定された項目をマップに設定します。

~NamedNodeMapRef()

デフォルトのデストラクタです。

NamedNodeMapRef()

クラス・コンストラクタです。

構文

説明

NamedNodeMapRef(
const NodeRef< Node>& node_ref,
NamedNodeMap< Node>* mptr);

指定のNamedNodeMapノードに対する参照を作成します。

NamedNodeMapRef(
const NamedNodeMapRef< Node>& mref);

コピー・コンストラクタです。

パラメータ

説明

node_ref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(NamedNodeMapRef) Node参照オブジェクト。

getLength()

マップの長さを取得します。

構文

ub4 getLength() const;

戻り値

(ub4) マップの長さ

getNamedItem()

指定された名前の項目の名前を取得します。

構文

Node* getNamedItem( oratext* name) const;

パラメータ

説明

name

項目の名前

戻り値

(Node*) 項目へのポインタ。

getNamedItemNS()

指定された名前空間URIおよびローカル名の項目の名前を取得します。

構文

Node* getNamedItemNS(
oratext* namespaceURI,
oratext* localName) const;

パラメータ

説明

namespaceURI

項目の名前空間URI

localName

項目のローカル名

戻り値

(Node*) 項目へのポインタ。

item()

指定されたインデックスの項目を取得します。

構文

Node* item(
ub4 index) const;

パラメータ

説明

index

項目のインデックス

戻り値

(Node*) 項目へのポインタ。

removeNamedItem()

マップから指定された名前の項目を削除します。

構文

Node* removeNamedItem(
oratext* name)
throw (DOMException);

パラメータ

説明

name

項目の名前

戻り値

(Node*) 削除された項目へのポインタ。

removeNamedItemNS()

マップから、指定された名前空間URIおよびローカル名の項目を削除します。

構文

Node* removeNamedItemNS(
oratext* namespaceURI,
oratext* localName)
throw (DOMException);

パラメータ

説明

namespaceURI

項目の名前空間URI

localName

項目のローカル名

戻り値

(Node*) 削除された項目へのポインタ。

setNamedItem()

マップに新しい項目を追加します。

構文

Node* setNamedItem(
NodeRef< Node>& newItem)
throw (DOMException);

パラメータ

説明

newItem

マップに設定する項目

戻り値

(Node*) 新しい項目へのポインタ。

setNamedItemNS()

名前空間を認識する、指定された項目をマップに設定します。

構文

Node* setNamedItemNS(
NodeRef< Node>& newItem)
throw (DOMException);

パラメータ

説明

newItem

マップに設定する項目

戻り値

(Node*) 項目へのポインタ。

~NamedNodeMapRef()

デフォルトのデストラクタです。

構文

~NamedNodeMapRef();

NodeFilterインタフェース

表2-18にNodeFilterインタフェースで使用できるメソッドの概要を示します。

表2-18 NodeFilterメソッドの概要: DOMパッケージ

関数

概要

acceptNode()

指定されたノードに対して実行し、その戻り値を使用します。

acceptNode()

この関数は、NodeIteratorおよびTreeWalkerによってテストとして使用されます。

構文

template< typename Node> AcceptNodeCode AcceptNode(
NodeRef< Node>& nref);

パラメータ

説明

nref

テストされるノードに対する参照

戻り値

(AcceptNodeCode) フィルタ関数により戻された結果。

NodeIteratorインタフェース

表2-19にNodeIteratorインタフェースで使用できるメソッドの概要を示します。

表2-19 NodeIteratorメソッドの概要: DOMパッケージ

関数

概要

adjustCtx()

このイテレータを別のコンテキストにアタッチします。

detach()

イテレータを無効にします。

nextNode()

次のノードに移動します。

previousNode()

前のノードに移動します。

adjustCtx()

指定されたノード参照に対応するコンテキストに、このイテレータをアタッチします。

構文

void adjustCtx(
NodeRef< Node>& nref);

パラメータ

説明

nref

参照ノード

detach()

イテレータを無効にします。

構文

void detach();

nextNode()

次のノードに移動します。

構文

Node* nextNode() throw (DOMException);

戻り値

(Node*) 次のノードへのポインタ。

previousNode()

前のノードに移動します。

構文

Node* previousNode() throw (DOMException);

戻り値

(Node*) 前のノードへのポインタ。

NodeListRefインタフェース

表2-20にNodeListRefインタフェースで使用できるメソッドの概要を示します。

表2-20 NodeListRefメソッドの概要: DOMパッケージ

関数

概要

NodeListRef()

コンストラクタです。

getLength()

リストの長さを取得します。

item()

指定されたインデックスの項目を取得します。

~NodeListRef()

デフォルトのデストラクタです。

NodeListRef()

クラス・コンストラクタです。

構文

説明

NodeListRef(
const NodeRef< Node>& node_ref,
NodeList< Node>* lptr);

指定のNodeListノードに対する参照を作成します。

NodeListRef(
const NodeListRef< Node>& lref);

コピー・コンストラクタです。

パラメータ

説明

node_ref

コンテキストを提供するための参照

lptr

参照されるリスト

戻り値

(NodeListRef) Node参照オブジェクト。

getLength()

リストの長さを取得します。

構文

ub4 getLength() const;

戻り値

(ub4) リストの長さ

item()

指定されたインデックスの項目を取得します。

構文

Node* item(
ub4 index) const;

パラメータ

説明

index

項目のインデックス

戻り値

(Node*) 項目へのポインタ。

~NodeListRef()

オブジェクトを破棄します。

構文

~NodeListRef();

NodeRefインタフェース

表2-21にNodeRefインタフェースで使用できるメソッドの概要を示します。

表2-21 NodeRefメソッドの概要: DOMパッケージ

関数

概要

NodeRef()

コンストラクタです。

appendChild()

ノードの子リストに新しい子を追加します。

cloneNode()

このノードを複製します。

getAttributes()

このノードの属性を取得します。

getChildNodes()

このノードの子を取得します。

getFirstChild()

このノードの最初の子ノードを取得します。

getLastChild()

このノードの最後の子ノードを取得します。

getLocalName()

このノードのローカル名を取得します。

getNamespaceURI()

このノードの名前空間URIを、NULLで終了する文字列で取得します。

getNextSibling()

このノードの直後の兄弟関係ノードを取得します。

getNoMod()

このノードで変更が不許可かどうかをテストします。

getNodeName()

ノード名を、NULLで終了する文字列で取得します。

getNodeType()

ノードのDOMNodeTypeを取得します。

getNodeValue()

ノードの値を、NULLで終了する文字列で取得します。

getOwnerDocument()

このノードの所有者ドキュメントを取得します。

getParentNode()

このノードの親ノードを取得します。

getPrefix()

このノードの名前空間接頭辞を取得します。

getPreviousSibling()

このノードの直前の兄弟関係ノードを取得します。

hasAttributes()

このノードが属性を持つかどうかをテストします。

hasChildNodes()

このノードが子を持つかどうかをテストします。

insertBefore()

ノードの子リストに新しい子を挿入します。

isSupported()

指定された機能がこの実装でサポートされているかどうかをテストします。

markToDelete()

参照されるノードを削除するためのマークを設定します。

normalize()

隣接したテキスト・ノードをマージします。

removeChild()

既存の子ノードを削除します。

replaceChild()

ノードの既存の子を置換します。

resetNode()

別のノードを参照するようにNodeRefをリセットします。

setNodeValue()

ノードの値を、NULLで終了する文字列で設定します。

setPrefix()

このノードの名前空間接頭辞を設定します。

~NodeRef()

デフォルトのパブリック・デストラクタです。

NodeRef()

クラス・コンストラクタです。

構文

説明

NodeRef(
const NodeRef< Node>& nref,
Node* nptr);

指定のノードまたは別のノードに対する少なくとも1つの参照がすでに使用可能である場合、この指定のノードに対する参照を作成します。ノード削除フラグはコピーされず、FALSEに設定されます。

NodeRef(
const NodeRef< Node>& nref);

コピー・コンストラクタです。少なくとも1つの参照がすでに使用可能である場合、ノードに対する追加参照を作成します。ノード削除フラグはコピーされず、FALSEに設定されます。

パラメータ

説明

node_ref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(NodeRef) Node参照オブジェクト。

appendChild()

このノードの子リストの最後にノードを追加し、新しいノードを戻します。newChildがDocumentFragmentである場合、その子がすべて元の順序で追加されます。DocumentFragmentノード自体は追加されません。newChildがDOMツリー内にすでに存在する場合、最初に現在の位置から削除されます。

構文

Node* appendChild(
NodeRef& newChild)
throw (DOMException);

パラメータ

説明

newChild

参照ノード

戻り値

(Node*) 追加されたノード。

cloneNode()

このノードの複製を作成して戻します。複製ノードは親を持ちません。要素を複製すると、すべての属性とその値(デフォルトの属性を示すためにXMLプロセッサで生成された値を含む)がコピーされます。ただし、格納されているテキストは、子であるTextノードに含まれているため、ディープ・クローンの場合以外はコピーされません。他のタイプのノードを複製すると、単にそのノードのコピーが戻されます。deepがTRUEの場合、ノードの子はすべて再帰的に複製され、複製されたノードは複製された子を持ちます。非ディープ・クローンは子を持ちません。複製されたノードが別のツリーまたはフラグメントに挿入されない場合、(ユーザーによる)削除のために、参照を介してマークされる必要があります。

構文

Node* cloneNode(
boolean deep);

パラメータ

説明

deep

ノードの下のノード階層全体を複製するか(TRUE)、またはノード自体のみを複製するか(FALSE)

戻り値

(Node*) 複製(クローン)ノード。

getAttributes()

このノードの属性のNamedNodeMapを戻します。属性が存在しない場合は、NULLを戻します。属性ノードを持つことができるのは、要素ノードのみです。その他の種類のノードでは、常にNULLが戻されます。現在の実装では、子ノードのノード・マップは最新のものです。元のノードにおけるすべての変更がすぐに反映されます。このため、一部のDOMツリー操作形式、特にマルチスレッド環境では副次的影響が出る場合があります。

構文

NamedNodeMap< Node>* getAttributes() const;

戻り値

(NamedNodeMap*) 属性のNamedNodeMap。

getChildNodes()

子ノードのリストを戻します。このノードに子ノードがない場合は、NULLを戻します。子を持つ可能性があるのは、要素ノード、ドキュメント・ノード、DTDノードおよびDocumentFragmentノードのみです。他のすべての型ではNULLが戻されます。現在の実装では、子ノードのリストは最新のものです。元のノードにおけるすべての変更がすぐに反映されます。このため、一部のDOMツリー操作形式、特にマルチスレッド環境では副次的影響が出る場合があります。

構文

NodeList< Node>* getChildNodes() const;

戻り値

(NodeList*) 子ノードのリスト。

getFirstChild()

最初の子ノードを戻します。このノードに子ノードがない場合は、NULLを戻します。

構文

Node* getFirstChild() const;

戻り値

(Node*) 最初の子ノードまたはNULL。

getLastChild()

最後の子ノードを戻します。このノードに子ノードがない場合は、NULLを戻します。

構文

Node* getLastChild() const;

戻り値

(Node*) 最後の子ノードまたはNULL。

getLocalName()

このノード(データ・エンコーディング内)のローカル名(修飾名のローカル部分)を、NULLで終了する文字列で戻します。このノードの名前が完全修飾名でない(接頭辞がない)場合、ローカル名はこのノード名と同じです。

構文

oratext* getLocalName() const;

戻り値

(oratext*) このノードのローカル名。

getNamespaceURI()

このノードの名前空間URI(データ・エンコーディング内)を、NULLで終了する文字列で戻します。ノードの名前が修飾されていない(名前空間接頭辞が含まれない)場合は、ノードの作成時に有効だったデフォルトの名前空間が含まれます(ただしNULLの場合があります)。

構文

oratext* getNamespaceURI() const;

戻り値

(oratext*) このノードの名前空間URI。

getNextSibling()

直後の兄弟関係ノードを戻します。このノードに直後の兄弟関係が存在しない場合は、NULLを戻します。

構文

Node* getNextSibling() const;

戻り値

(Node*) 直後の兄弟関係ノードまたはNULL。

getNoMod()

このノードおよびノードが属するDOMツリーで変更が不許可かどうかをテストします。このメンバー関数は、Oracleの拡張機能です。

構文

boolean getNoMod() const;

戻り値

(boolean) 変更が許可されていない場合はTRUE。

getNodeName()

ノード(データ・エンコーディング内)の(完全修飾の)名前を、NULLで終了する文字列で戻します。たとえば、「bar\0」または「foo:bar\0」などです。ノードの種類によっては、「#text」、「#cdata-section」、「#comment」、「#document」、「#document-fragment」といった固定ノード名が設定されています。ノードの名前は、作成後は変更できません。

構文

oratext* getNodeName() const;

戻り値

(oratext*) データ・エンコーディング内のノード名。

getNodeType()

ノードのDOMNodeTypeを戻します。

構文

DOMNodeType getNodeType() const;

戻り値

ノードの(DOMNodeType)。

getNodeValue()

ノードの値(対応する文字データ)を、NULLで終了する文字列で戻します。文字および汎用エンティティが置換されています。値が設定されているのは、Attr、CDATA、Comment、ProcessingInstructionおよびTextノードのみで、他のすべてのノード・タイプにはNULL値が設定されています。

構文

oratext* getNodeValue() const;

戻り値

(oratext *) ノードの値。

getOwnerDocument()

このノードに対応するドキュメント・ノードを戻します。ドキュメント・ノードのタイプはノード・タイプから派生するものと想定されています。各ノードは1つのドキュメントにのみ属するか、ユーザーのリクエストで作成された直後など、どのドキュメントにも関連付けられていないこともあります。元のドキュメント[ノード]が戻されるか、またはWRONG_DOCUMENT_ERR例外がスローされます。

構文

Node* getOwnerDocument() const throw (DOMException);

戻り値

(Node*) 元のドキュメント・ノード。

getParentNode()

親ノードを戻します。このノードに親ノードがない場合は、NULLを戻します。

構文

Node* getParentNode() const;

戻り値

(Node*) 親ノードまたはNULL。

getPrefix()

このノードの名前空間接頭辞(データ・エンコーディング内)を、NULLで終了する文字列で戻します。このノードの名前が完全修飾名でない(接頭辞がない)場合、NULLが戻されます。

構文

oratext* getPrefix() const;

戻り値

(oratext*) このノードの名前空間接頭辞。

getPreviousSibling()

直前の兄弟関係ノードを戻します。このノードに直前の兄弟関係がない場合は、NULLを戻します。

構文

Node* getPreviousSibling() const;

戻り値

(Node*) 直前の兄弟関係ノードまたはNULL。

hasAttributes()

このノードに属性が含まれ、このノードが要素である場合は、TRUEを戻します。それ以外の場合はFALSEを戻します。要素でないノードの場合は、常にFALSEを戻す点に注意してください。

構文

boolean hasAttributes() const;

戻り値

(boolean) このノードが要素であり、属性を持つ場合はTRUE。

hasChildNodes()

このノードが子を持つかどうかをテストします。子を持つ可能性があるのは、Element、Document、DTDおよびDocumentFragmentノードのみです。

構文

boolean hasChildNodes() const;

戻り値

(boolean) このノードが子を持つ場合はTRUE。

insertBefore()

このノードの既存の子ノードrefChildの前にnewChildノードを挿入します。refChildはこのノードの子である必要があります。newChildがDocumentFragmentである場合、その子はすべてrefChildの前に(同じ順序で)挿入されます。DocumentFragmentノード自体は挿入されません。newChildがDOMツリー内にすでに存在する場合、最初に現在の位置から削除されます。

構文

Node* insertBefore(
NodeRef& newChild,
NodeRef& refChild)
throw (DOMException);

パラメータ

説明

newChild

新しいノード

refChild

参照ノード

戻り値

(Node*) 挿入されるノード。

isSupported()

引数によって指定された機能が、このノードのDOMインプリメンテーションによりサポートされているかどうかをテストします。

構文

boolean isSupported(
oratext* feature,
oratext* version) const;

パラメータ

説明

feature

機能のパッケージ名

version

パッケージのバージョン

戻り値

(boolean) 指定された機能がサポートされている場合はTRUE。

markToDelete()

参照されたノードが、この参照のデストラクタがコールされた時点で削除される必要があることを示すマークを設定します。このノードに対する他のすべての参照は無効になります。この動作は、他のすべての参照クラスによって継承されます。このメンバー関数は、Oracleの拡張機能です。

構文

void markToDelete();

normalize()

要素をルートとしたサブツリーを正規化し、要素の隣接したText子ノードをマージします。隣接したTextノードは通常の解析中には作成されず、DOMコールによるドキュメントの操作後にのみ作成されることに注意してください。

構文

void normalize();

removeChild()

このノードの子リストからノードを削除し、それを戻します。このノードは孤立した子です。削除後、親ノードはNULLとなります。

構文

Node* removeChild(
NodeRef& oldChild)
throw (DOMException);

パラメータ

説明

oldChild

古いノード

戻り値

(Node*) 削除されたノード

replaceChild()

このノードの子リストで、子ノードoldChildを新しいノードnewChildで置換し、oldChildを戻します(これは孤立した子となり、親はNULLです)。newChildがDocumentFragmentである場合、その子がすべてoldChildのかわりに挿入されます。DocumentFragmentノード自体は挿入されません。newChildがDOMツリー内にすでに存在する場合、最初に現在の位置から削除されます。

構文

Node* replaceChild(
NodeRef& newChild,
NodeRef& oldChild)
throw (DOMException);

パラメータ

説明

newChild

新しいノード

oldChild

古いノード

戻り値

(Node*) 置換されたノード。

resetNode()

この関数は、引数として指定されたNodeを参照するようにNodeRefをリセットします。

構文

void resetNode(
Node* nptr);

パラメータ

説明

nptr

参照ノード

setNodeValue()

ノードの値(文字データ)をNULLで終了する文字列として設定します。値をNULLに設定することはできません。値が設定されているのは、Attr、CDATA、Comment、ProcessingInstructionおよびTextノードのみです。別の種類のノードの値を設定しようとしても動作しません。新しい値はデータ・エンコーディングに含まれている必要があります。これは検証、変換、確認されません。値はコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

変更が許可されていない場合はNO_MODIFICATION_ALLOWED_ERR例外をスローし、実装で定義されたエラーの場合は、UNDEFINED_ERRおよび適切なOracle XMLエラー・コード(xml.hを参照)をスローします。

構文

void setNodeValue(
oratext* data)
throw (DOMException);

パラメータ

説明

data

ノードの新しい値

setPrefix()

このノードの名前空間接頭辞を、NULLで終了する文字列として設定します。接頭辞が定義済かどうかは検証されません。また、接頭辞が現在のデータ・エンコーディングに含まれているかどうかも検証されません。新しい接頭辞および古いローカル名から新しい修飾名を作成するのみです。

変更が許可されていない場合は、NO_MODIFICATION_ALLOWED_ERR例外をスローします。このノードのnamespaceURIがNULLである場合、または指定された接頭辞が「xml」で、このノードのnamespaceURIが「http://www.w3.org/XML/1998/namespace」と異なる場合、またはこのノードが属性で、指定された接頭辞が「xmlns」で、このノードのnamespaceURIが「http://www.w3.org/2000/xmlns/」と異なる場合、NAMESPACE_ERRをスローします。接頭辞の作成方法は確認されないため、INVALID_CHARACTER_ERR例外はスローされません

構文

void setPrefix(
oratext* prefix)
throw (DOMException);

パラメータ

説明

prefix

新しい名前空間接頭辞

~NodeRef()

これはデフォルトのデストラクタです。ノードに対する参照を消去し、ノードが削除用にマークされている場合はノードを削除します。ノードが深いレベルの削除用にマークされている場合は、ノードの下のツリーも削除(割当て解除)されます。通常は環境によってコールされます。ただし、必要に応じてユーザーが直接コールできます。

構文

~NodeRef();

NotationRefインタフェース

表2-22にNotationRefインタフェースで使用できるメソッドの概要を示します。

表2-22 NotationRefメソッドの概要: DOMパッケージ

関数

概要

NotationRef()

コンストラクタです。

getPublicId()

公開識別子を取得します。

getSystemId()

システム識別子を取得します。

~NotationRef()

デフォルトのパブリック・デストラクタです。

NotationRef()

クラス・コンストラクタです。

構文

説明

NotationRef(
const NodeRef< Node>& node_ref,
Node* nptr);

createNotationをコールした後に、指定の表記法ノードに対する参照を作成します。

NotationRef(
const NotationRef< Node>& nref);

コピー・コンストラクタです。

パラメータ

説明

node_ref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(NotationRef) Node参照オブジェクト。

getPublicId()

公開識別子を取得します。

構文

oratext* getPublicId() const;

戻り値

(oratext*) 公開識別子

getSystemId()

システム識別子を取得します。

構文

oratext* getSystemId() const;

戻り値

(oratext*) システム識別子

~NotationRef()

これはデフォルトのデストラクタです。

構文

~NotationRef();

ProcessingInstructionRefインタフェース

表2-23にProcessingInstructionRefインタフェースで使用できるメソッドの概要を示します。

表2-23 ProcessingInstructionRefメソッドの概要: DOMパッケージ

関数

概要

ProcessingInstructionRef()

コンストラクタです。

getData()

処理命令のデータを取得します。

getTarget()

処理命令のターゲットを取得します。

setData()

処理命令のデータを設定します。

~ProcessingInstructionRef()

デフォルトのパブリック・デストラクタです。

ProcessingInstructionRef()

クラス・コンストラクタです。

構文

説明

ProcessingInstructionRef(
const NodeRef< Node>& node_ref,
Node* nptr);

createProcessingInstructionをコールした後に、指定のProcessingInstructionノードに対する参照を作成します。

ProcessingInstructionRef(
const ProcessingInstructionRef< Node>& nref);

コピー・コンストラクタです。

パラメータ

説明

node_ref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(ProcessingInstructionRef) Node参照オブジェクト。

getData()

(データ・エンコーディングの)処理命令のコンテンツ(データ)を戻します。コンテンツは、ターゲットの後の最初の空白以外の文字から、最後の「?>」までの部分です。

構文

oratext* getData() const;

戻り値

(oratext*) 処理命令のデータ。

getTarget()

処理命令のターゲット文字列を戻します。ターゲットは、ProcessingInstructionを開始するマークアップの後に続く最初のトークンです。すべてのProcessingInstructionにはターゲットが必須ですが、データ部分はオプションです。

構文

oratext* getTarget() const;

戻り値

(oratext*) 処理命令のターゲット。

setData()

処理命令のデータ(内容)を設定します。これは、データ・エンコーディングに含まれている必要があります。データをNULLに設定することはできません。新しいデータの検証、変換、確認は行われません。

構文

void setData(
oratext* data)
throw (DOMException);

パラメータ

説明

data

新しいデータ

~ProcessingInstructionRef()

これはデフォルトのデストラクタです。

構文

~ProcessingInstructionRef();

Rangeインタフェース

表2-24にRangeインタフェースで使用できるメソッドの概要を示します。

表2-24 Rangeメソッドの概要: DOMパッケージ

関数

概要

CompareBoundaryPoints()

cloneContent()

cloneRange()

deleteContents()

detach()

範囲を無効にします。

extractContent()

getCollapsed()

範囲が縮小されたかどうかを確認します。

getCommonAncestorContainer()

最も深い共通の祖先ノードを取得します。

getEndContainer()

終了コンテナ・ノードを取得します。

getEndOffset()

エンド・ポイントのオフセットを取得します。

getStartContainer()

開始コンテナ・ノードを取得します。

getStartOffset()

開始ポイントのオフセットを取得します。

insertNode()

selectNodeContent()

selectNode()

setEnd()

エンド・ポイントを設定します。

setEndAfter()

setEndBefore()

setStart()

開始ポイントを設定します。

setStartAfter()

setStartBefore()

surroundContents()

toString()

CompareBoundaryPoints()

境界点を比較します。

構文

CompareHowCode compareBoundaryPoints(
unsigned short how,
Range< Node>* sourceRange)
throw (DOMException);

パラメータ

説明

how

比較方法

sourceRange

比較の範囲

戻り値

(CompareHowCode) 比較の結果。

cloneContent()

子を含むノードの複製を作成します。

構文

Node* cloneContents() throw (DOMException);

戻り値

(Node*) 複製されたサブツリー

cloneRange()

一定範囲のノードを複製します。

構文

Range< Node>* cloneRange();

戻り値

(Range< Node>*) 複製された新しい範囲。

deleteContents()

ノードのコンテンツを削除します。

構文

void deleteContents() throw (DOMException);

detach()

範囲を無効にします。オブジェクトが無効な状態になるため、このメソッドの使用はお薦めしません。デストラクタをコールする方法をお薦めします。

構文

void detach();

extractContent()

ノードを抽出します。

構文

Node* extractContents() throw (DOMException);

戻り値

(Node*) 抽出されたサブツリー

getCollapsed()

範囲が縮小されているかどうかを確認します。

構文

boolean getCollapsed() const;

戻り値

(boolean) 範囲が縮小されている場合はTRUE、縮小されていない場合はFALSE。

getCommonAncestorContainer()

ノードの最も深い共通の祖先を取得します。

構文

Node* getCommonAncestorContainer() const;

戻り値

(Node*) 共通の祖先ノード。

getEndContainer()

コンテナ・ノードを取得します。

構文

Node* getEndContainer() const;

戻り値

(Node*) 終了コンテナ・ノード。

getEndOffset()

エンド・ポイントのオフセットを取得します。

構文

long getEndOffset() const;

戻り値

(long) オフセット

getStartContainer()

開始コンテナ・ノードを取得します。

構文

Node* getStartContainer() const;

戻り値

(Node*) 開始コンテナ・ノード。

getStartOffset()

開始ポイントのオフセットを取得します。

構文

long getStartOffset() const;

戻り値

(long) オフセット

insertNode()

ノードを挿入します。

構文

void insertNode(
NodeRef< Node>& newNode)
throw (RangeException, DOMException);

パラメータ

説明

newNode

挿入するノード

selectNodeContent()

参照によりノード内容を選択します。

構文

void selectNodeContent(
NodeRef< Node>& refNode)
throw (RangeException);

パラメータ

説明

refNode

参照ノード

selectNode()

ノードを選択します。

構文

void selectNode(
NodeRef< Node>& refNode)
throw (RangeException);

パラメータ

説明

refNode

参照ノード

setEnd()

エンド・ポイントを設定します。

構文

void setEnd(
NodeRef< Node>& refNode,
long offset)
throw (RangeException, DOMException);

パラメータ

説明

refNode

参照ノード

offset

オフセット

setEndAfter()

指定されたノードの後に終了ポインタを設定します。

構文

void setEndAfter(
NodeRef< Node>& refNode)
throw (RangeException);

パラメータ

説明

refNode

参照ノード

setEndBefore()

指定されたノードの前に終了を設定します。

構文

void setEndBefore(
NodeRef< Node>& refNode)
throw (RangeException);

パラメータ

説明

refNode

参照ノード

setStart()

開始ポイントを設定します。

構文

void setStart(
NodeRef< Node>& refNode,
long offset)
throw (RangeException, DOMException);

パラメータ

説明

refNode

参照ノード

offset

オフセット

setStartAfter()

指定されたノードの後に開始ポインタを設定します。

構文

void setStartAfter(
NodeRef< Node>& refNode)
throw (RangeException);

パラメータ

説明

refNode

参照ノード

setStartBefore()

指定されたノードの前に開始ポインタを設定します。

構文

void setStartBefore(
NodeRef< Node>& refNode)
throw (RangeException);

パラメータ

説明

refNode

参照ノード

surroundContents()

あるノードを指定されたノードの子にします。

構文

void surroundContents(
NodeRef< Node>& newParent)
throw (RangeException, DOMException);

パラメータ

説明

newParent

親ノード

toString()

項目を文字列に変換します。

構文

oratext* toString();

戻り値

(oratext*) 範囲の文字列表現。

RangeExceptionインタフェース

表2-25にRangeExceptionインタフェースで使用できるメソッドの概要を示します。

表2-25 RangeExceptionメソッドの概要: DOMパッケージ

関数

概要

getCode()

例外に埋め込まれたOracle XMLエラー・コードを取得します。

getMesLang()

エラー・メッセージの現在の言語(エンコーディング)を取得します。

getMessage()

Oracle XMLエラー・メッセージを取得します。

getRangeCode()

例外に埋め込まれた範囲例外コードを取得します。

getCode()

例外に埋め込まれたOracle XMLエラー・コードを取得します。XmlExceptionから継承された仮想メンバー関数です。

構文

virtual unsigned getCode() const = 0;

戻り値

(unsigned) 数値のエラー・コード(正常に終了した場合は0)。

getMesLang()

エラー・メッセージの現在の言語エンコーディングを取得します。XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMesLang() const = 0;

戻り値

(oratext*) エラー・メッセージの現在の言語(エンコーディング)。

getMessage()

XMLエラー・メッセージを取得します。XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMessage() const = 0;

戻り値

(oratext *) エラー・メッセージ

getRangeCode()

これは、実行時の例外状況の範囲例外コード(RangeExceptionCodeで定義)を戻す実装で定義済のメンバー関数のプロトタイプを定義する仮想メンバー関数です。

構文

virtual RangeExceptionCode getRangeCode() const = 0;

戻り値

(RangeExceptionCode) 例外コード

TextRefインタフェース

表2-26にTextRefインタフェースで使用できるメソッドの概要を示します。

表2-26 TextRefメソッドの概要: DOMパッケージ

関数

概要

TextRef()

コンストラクタです。

splitText()

テキスト・ノードを2つに分割します。

~TextRef()

デフォルトのパブリック・デストラクタです。

TextRef()

クラス・コンストラクタです。

構文

説明

TextRef(
const NodeRef< Node>& node_ref,
Node* nptr);

createtextをコールした後に、指定のテキスト・ノードに対する参照を作成します。

TextRef(
const TextRef< Node>& nref);

コピー・コンストラクタです。

パラメータ

説明

node_ref

コンテキストを提供するための参照

nptr

参照されるノード

戻り値

(TextRef) Node参照オブジェクト。

splitText()

1つのテキスト・ノードを2つに分割します。元のデータは、2つのノードに分割されます。オフセットはゼロ・ベースで、バイト数ではなく文字数で表されます。元のノードは保持され、そのデータが切り捨てられます。元のデータの残りの部分を含む新しいテキスト・ノードが作成され、元のデータの次の兄弟として挿入されます。新しいテキスト・ノードが戻されます。

構文

Node* splitText(
ub4 offset)
throw (DOMException);

パラメータ

説明

offset

テキストの分割点となる文字オフセット

戻り値

(Node*) 新しいノード

~TextRef()

これはデフォルトのデストラクタです。

構文

~TextRef();

TreeWalkerインタフェース

表2-27にTreeWalkerインタフェースで使用できるメソッドの概要を示します。

表2-27  TreeWalkerメソッドの概要: DOMパッケージ

関数

概要

adjustCtx()

このツリー・ウォーカを別のコンテキストにアタッチします。

firstChild()

現在のノードの最初の子を取得します。

lastChild()

現在のノードの最後の子を取得します。

nextNode()

次のノードを取得します。

nextSibling()

直後の兄弟関係ノードを取得します。

parentNode()

現在のノードの親を取得します。

previousNode()

前のノードを取得します。

previousSibling()

直前の兄弟関係ノードを取得します。

adjustCtx()

指定されたノード参照に対応するコンテキストに、このツリー・ウォーカをアタッチします。

構文

void adjustCtx(
NodeRef< Node>& nref);

パラメータ

説明

nref

コンテキストを提供するための参照

firstChild()

現在のノードの最初の子を取得します。

構文

Node* firstChild();

戻り値

(Node*) 最初の子ノードへのポインタ。

lastChild()

現在のノードの最後の子を取得します。

構文

Node* lastChild();

戻り値

(Node*) 最後の子ノードへのポインタ。

nextNode()

次のノードを取得します。

構文

Node* nextNode();

戻り値

(Node*) 次のノードへのポインタ。

nextSibling()

直後の兄弟関係ノードを取得します。

構文

Node* nextSibling();

戻り値

(Node*) 直後の兄弟関係ノードへのポインタ。

parentNode()

現在のノードの親を取得します。

構文

Node* parentNode();

戻り値

(Node*) 親ノードへのポインタ。

previousNode()

前のノードを取得します。

構文

Node* previousNode();

戻り値

(Node*) 前のノードへのポインタ。

previousSibling()

直前の兄弟関係ノードを取得します。

構文

Node* previousSibling();

戻り値

(Node*) 直前の兄弟関係ノードへのポインタ。

3 C++用のIO APIパッケージ

この章には、次の項が含まれます。

- IOのデータ型

- InputSourceインタフェース

関連項目:

- 『Oracle XML Developer's Kitプログラマーズ・ガイド』

- 『Oracle XML DB開発者ガイド』

IOのデータ型

表3-1にIOパッケージのデータ型の概要を示します。

表3-1 データ型の概要: IOパッケージ

データ型

説明

InputSourceType

入力ソース・タイプを定義します。

InputSourceType

入力ソース・タイプを定義します。

定義

typedef enum InputSourceType {
ISRC_URI = 1,
ISRC_FILE = 2,
ISRC_BUFFER = 3,
ISRC_DOM = 4,
ISRC_CSTREAM = 5 }
InputSourceType;

InputSourceインタフェース

表3-2にIOインタフェースで使用できるメソッドの概要を示します。

表3-2 IOパッケージ・インタフェースの概要

関数

概要

getBaseURI()

ベースURIを取得します。

getISrcType()

入力ソース・タイプを取得します。

setBaseURI()

ベースURIを設定します。

getBaseURI()

ベースURIを取得します。ファイルやURIなどの一部の入力ソースにより使用されます。

構文

oratext* getBaseURI() { return baseURI; }

戻り値

(oratext*) ベースURI

getISrcType()

入力ソース・タイプを取得します。

構文

InputSourceType getISrcType() const { return isrctype; }

戻り値

(InputSourceType) 入力ソース・タイプ。

setBaseURI()

ベースURIを設定します。ファイルやURIなどの一部の入力ソースにより使用されます。

構文

void setBaseURI( oratext* base_URI)  baseURI = base_URI; }

4 C++用のOracleXml APIパッケージ

OracleXmlはXML C++のすべてのインタフェースの名前空間です。XMLのすべての例外のルート、クラスXmlExceptionとこれらの名前空間が含まれます。

- Ctx - TCtx関連の宣言のための名前空間。第1章「C++用のCtx APIパッケージ」で説明しています。

- Dom - DOM関連の宣言のための名前空間。第2章「C++用のDOM APIパッケージ」で説明しています。

- IO - 入力ソースと出力ソース宣言のための名前空間。第3章「C++用のIO APIパッケージ」で説明しています。

- パーサー - パーサーとスキーマのバリデータ宣言のための名前空間。第5章「C++用のパーサーAPIパッケージ」で説明しています。

- SOAP - SOAP宣言のための名前空間。第6章「C++用のSOAP APIパッケージ」で説明しています。

- ツール - Tools::Factory関連の宣言のための名前空間。第7章「C++用のツールAPIパッケージ」で説明しています。

- XPath - XPath関連の宣言のための名前空間。第8章「C++用のXPath APIパッケージ」で説明しています。

- XPointer - XPointer関連の宣言のための名前空間。第9章「C++用のXPointer APIパッケージ」で説明しています。

- Xsl - XSLT関連の宣言のための名前空間。第10章「C++用のXsl APIパッケージ」で説明しています。

この章の内容は次のとおりです。

- XmlExceptionインタフェース

関連項目:

- 『Oracle XML Developer's Kitプログラマーズ・ガイド』

- 『Oracle XML DB開発者ガイド』

XmlExceptionインタフェース

XMLExceptionはすべてのXML例外のルート・インタフェースです。表4-1にOracleXmlパッケージで使用できるメソッドの概要を示します。

表4-1 OracleXmlパッケージ・インタフェースの概要

関数

概要

getCode()

例外に埋め込まれたOracle XMLエラー・コードを取得します。

getMesLang()

エラー・メッセージの現在の言語(エンコーディング)を取得します。

getMessage()

Oracle XMLエラー・メッセージを取得します。

getCode()

これは実行時の例外状況のOracle XMLエラー・コード(xml.hで定義されるエラー・コードなど)を戻す、実装で定義済の関数のプロトタイプを定義する仮想メンバー関数です。

構文

virtual unsigned getCode() const = 0;

戻り値

(unsigned) 数値のエラー・コード(正常に終了した場合は0)。

getMesLang()

これは実行時の例外状況におけるエラー・メッセージの現在の言語(エンコーディング)を戻す、ユーザー定義の関数のプロトタイプを定義する仮想メンバー関数です。

構文

virtual oratext* getMesLang() const = 0;

戻り値

(oratext*) エラー・メッセージの現在の言語(エンコーディング)。

getMessage()

これは実行時の例外状況のOracle XMLエラー・メッセージを戻す、実装で定義済の関数のプロトタイプを定義する仮想メンバー関数です。

構文

virtual oratext* getMessage() const = 0;

戻り値

(oratext *) エラー・メッセージ

5 C++用のパーサーAPIパッケージ

パーサー・インタフェースには、パーサー例外、バリデータ、パーサー、DOMParser、SAXParserが含まれます。

この章には、次の項が含まれます。

- パーサーのデータ型

- DOMParserインタフェース

- GParserインタフェース

- ParserExceptionインタフェース

- SAXHandlerインタフェース

- SAXParserインタフェース

- SchemaValidatorインタフェース

関連項目:

- 『Oracle XML Developer's Kitプログラマーズ・ガイド』

- 『Oracle XML DB開発者ガイド』

パーサーのデータ型

表5-1にParserパッケージのデータ型の概要を示します。

表5-1 データ型の概要: パーサー・パッケージ

データ型

説明

ParserExceptionCode

例外のパーサー実装です。

DOMParserIdType

パーサーの識別子を定義します。

SAXParserIdType

ノードの型を定義します。

SchValidatorIdType

バリデータの識別子を定義します。

ParserExceptionCode

例外のパーサー実装です。

定義

typedef enum ParserExceptionCode {
PARSER_UNDEFINED_ERR = 0,
PARSER_VALIDATION_ERR = 1,
PARSER_VALIDATOR_ERR = 2,
PARSER_BAD_ISOURCE_ERR = 3,
PARSER_CONTEXT_ERR = 4,
PARSER_PARAMETER_ERR = 5,
PARSER_PARSE_ERR = 6,
PARSER_SAXHANDLER_SET_ERR = 7,
PARSER_VALIDATOR_SET_ERR = 8 }
ParserExceptionCode;

DOMParserIdType

パーサーの識別子を定義します。

定義

typedef enum DOMParserIdType {      DOMParCXml         = 1    } DOMParserIdType;
ypedef enum CompareHowCode {
START_TO_START = 0,
START_TO_END = 1,
END_TO_END = 2,
END_TO_START = 3 }
CompareHowCode;

SAXParserIdType

パーサーの識別子を定義します。

定義

typedef enum SAXParserIdType {
SAXParCXml = 1 }
SAXParserIdType;

SchValidatorIdType

バリデータの識別子を定義します。これらの識別子は、特定のバリデータ・オブジェクトを作成する必要がある場合に、XMLツール・ファクトリのパラメータとして使用されます。

定義

typedef enum SchValidatorIdType {
SchValCXml        = 1
} SchValidatorIdType;

DOMParserインタフェース

表5-2にDOMParserインタフェースで使用できるメソッドの概要を示します。

表5-2 DOMParserメソッドの概要: パーサー・パッケージ

関数

概要

getContext()

パーサーのXMLコンテキスト(割当てとエンコーディング)を戻します。

getParserId()

パーサーIDを取得します。

parse()

ドキュメントを解析します。

parseDTD()

DTDドキュメントを解析します。

parseSchVal()

ドキュメントを解析し、検証します。

setValidator()

このパーサーのバリデータを設定します。

getContext()

各パーサー・オブジェクトは個別のOracle XMLコンテキスト内で割り当てられ、実行されます。このメンバー関数は、このコンテキストへのポインタを戻します。

構文

virtual Context* getContext() const = 0;

戻り値

(Context*) パーサーのコンテキストへのポインタ。

getParserId()

構文

virtual DOMParserIdType getParserId() const = 0;

戻り値

(DOMParserIdType) パーサーID

parse()

ドキュメントを解析し、ツリーのルート・ノードを戻します。

構文

virtual DocumentRef< Node>* parse(
InputSource* isrc_ptr,
boolean DTDvalidate = FALSE,
DocumentTypeRef< Node>* dtd_ptr = NULL,
boolean no_mod = FALSE,
DOMImplementation< Node>* impl_ptr = NULL)
throw (ParserException) = 0;

パラメータ

説明

isrc_ptr

入力ソース

DTDvalidate

DTDで検証された場合はTRUE

dtd_ptr

DTD参照

no_mod

変更が許可されていない場合はTRUE

impl_ptr

オプションのDomImplementationポインタ

戻り値

(DocumentRef) ドキュメント・ツリー

parseDTD()

DTDドキュメントを解析します。

構文

virtual DocumentRef< Node>* parseDTD(
InputSource* isrc_ptr,
boolean no_mod = FALSE,
DOMImplementation< Node>* impl_ptr = NULL)
throw (ParserException) = 0;

パラメータ

説明

isrc_ptr

入力ソース

no_mod

変更が許可されていない場合はTRUE

impl_ptr

オプションのDomImplementationポインタ

戻り値

(DocumentRef) DTDドキュメント・ツリー。

parseSchVal()

ドキュメントを解析し、検証します。対応するパラメータがNULL以外の場合、バリデータを設定します。

構文

virtual DocumentRef< Node>* parseSchVal(
InputSource* src_par,
boolean no_mod = FALSE,
DOMImplementation< Node>* impl_ptr = NULL,
SchemaValidator< Node>* tor_ptr = NULL)
throw (ParserException) = 0;

パラメータ

説明

isrc_ptr

入力ソース

no_mod

変更が許可されていない場合はTRUE

impl_ptr

オプションのDomImplementationポインタ

tor_ptr

スキーマ・バリデータ

戻り値

(DocumentRef) ドキュメント・ツリー

setValidator()

parseSchValで別のバリデータが指定されている場合を除き、すべての検証についてバリデータを設定します。

構文

virtual void setValidator(
SchemaValidator< Node>* tor_ptr) = 0;

パラメータ

説明

tor_ptr

スキーマ・バリデータ

GParserインタフェース

表5-3にGParserインタフェースで使用できるメソッドの概要を示します。

表5-3 GParserメソッドの概要: パーサー・パッケージ

関数

概要

SetWarnDuplicateEntity()

複数のエンティティ宣言がある場合に警告を発生させるかどうかを指定します。

getBaseURI()

ドキュメントのベースURIを戻します。

getDiscardWhitespaces()

要素間の空白が破棄されているかどうかを確認します。

getExpandCharRefs()

文字参照が展開されているかどうかを確認します。

getSchemaLocation()

このドキュメントのスキーマの位置を取得します。

getStopOnWarning()

警告の発生時にドキュメント処理が停止されるかどうかを取得します。

getWarnDuplicateEntity()

複数のエンティティ宣言がある場合に警告が発生するかどうかを取得します。

setBaseURI()

ドキュメントのベースURIを設定します。

setDiscardWhitespaces()

書式を整えるための空白を破棄するかどうかを設定します。

setExpandCharRefs()

文字参照を展開するかどうかを設定します。

setSchemaLocation()

ドキュメントのスキーマの位置を設定します。

setStopOnWarning()

警告の発生時にドキュメント処理を停止させるかどうかを設定します。

SetWarnDuplicateEntity()

エンティティが2回以上宣言されている場合に警告を発生させるかどうかを指定します。

構文

void setWarnDuplicateEntity(
boolean par_bool);

パラメータ

説明

par_bool

エンティティ宣言が複数ある場合に警告を発生させる場合はTRUE

getBaseURI()

ドキュメントのベースURIを戻します。通常は、URIからロードされたドキュメントにのみ、ベースURIが自動的に設定されます。他のソース(stdin、バッファなど)からロードされたドキュメントには通常、ベースURIは設定されていませんが、相対URIを解決するために、setBaseURIを使用してベースURIが設定されている場合もあります。

構文

oratext* getBaseURI() const;

戻り値

(oratext*) 現在のドキュメントのベースURI(またはNULL)。

getDiscardWhitespaces()

入力ドキュメントの改行やインデントなど、要素間にある、書式を整えるための空白が破棄されているかどうかを確認します。デフォルトでは、すべての入力文字が維持されます。

構文

boolean getDiscardWhitespaces() const;

戻り値

(boolean) 要素間の空白が破棄されている場合はTRUE。

getExpandCharRefs()

DOMデータで文字参照が展開されているかどうかを確認します。デフォルトでは、文字参照は参照が表す文字に置き換えられます。ただし、ドキュメントが保存されると、それらの文字エンティティは再度表示されません。ロードと保存の後も状態を維持するには、文字参照を展開しないようにします。

構文

boolean getExpandCharRefs() const;

戻り値

(boolean) 文字参照が展開されている場合はTRUE。

getSchemaLocation()

ドキュメントのスキーマの位置を取得します。データベースにドキュメントをロードするときに、最適なレイアウトを判断するために使用します。

構文

oratext* getSchemaLocation() const;

戻り値

(oratext*) スキーマの位置

getStopOnWarning()

TRUEが戻される場合、警告はエラーと同様に処理され、解析、検証などは即時停止します。デフォルトでは、警告が発行されても処理は続けられます。

構文

boolean getStopOnWarning() const;

戻り値

(boolean) 警告の発生時にドキュメント処理を停止させる場合はTRUE。

getWarnDuplicateEntity()

エンティティが2回以上宣言されている場合に警告が発生するかどうかを取得します。

構文

boolean getWarnDuplicateEntity() const;

戻り値

(boolean) エンティティ宣言が複数ある場合に警告を発生させる場合はTRUE。

setBaseURI()

ドキュメントのベースURIを設定します。通常は、URIからロードされたドキュメントにのみ、ベースURIが自動的に設定されます。他のソース(stdin、バッファなど)からロードされたドキュメントには通常、ベースURIは設定されていませんが、相対URIを解決するために、setBaseURIを使用してベースURIが設定されている場合もあります。

構文

void setBaseURI( oratext* par);

パラメータ

説明

par

ベースURI

setDiscardWhitespaces()

入力ドキュメントの要素(改行とインデント)間にある、書式を整えるための空白を破棄するかどうかを設定します。デフォルトでは、すべての入力文字が維持されます。

構文

void setDiscardWhitespaces(
boolean par_bool);

パラメータ

説明

par_bool

空白を破棄する場合はTRUE

setExpandCharRefs()

DOMデータで文字参照を展開するかどうかを設定します。通常、文字参照は参照が表す文字に置き換えられます。ただし、ドキュメントが保存されると、それらの文字エンティティは再度表示されません。ロードと保存の後も状態を維持するには、文字参照を展開しないようにします。

構文

void setExpandCharRefs(
boolean par_bool);

パラメータ

説明

par_bool

文字参照を破棄する場合はTRUE

setSchemaLocation()

ドキュメントのスキーマの位置を設定します。データベースにドキュメントをロードするときに、最適なレイアウトを判断するために使用します。

構文

void setSchemaLocation(
oratext* par);

パラメータ

説明

par

スキーマの位置

setStopOnWarning()

TRUEを設定すると、警告はエラーと同様に処理され、解析、検証などは即時停止します。デフォルトでは、警告が発行されても処理は続けられます。

構文

void setStopOnWarning(
boolean par_bool);

パラメータ

説明

par_bool

警告によりドキュメント処理を停止させる場合はTRUE

ParserExceptionインタフェース

表5-4にParserExceptionインタフェースで使用できるメソッドの概要を示します。

表5-4 ParserExceptionメソッドの概要: パーサー・パッケージ

関数

概要

getCode()

例外に埋め込まれたOracle XMLエラー・コードを取得します。

getMesLang()

エラー・メッセージの現在の言語(エンコーディング)を取得します。

getMessage()

Oracle XMLエラー・メッセージを取得します。

getParserCode()

例外に埋め込まれたパーサー例外コードを取得します。

getCode()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual unsigned getCode() const = 0;

戻り値

(unsigned) 数値のエラー・コード(正常に終了した場合は0)。

getMesLang()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMesLang() const = 0;

戻り値

(oratext*) エラー・メッセージの現在の言語(エンコーディング)。

getMessage()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMessage() const = 0;

戻り値

(oratext *) エラー・メッセージ

getParserCode()

これは実行時の例外状況の、ParserExceptionCodeで定義されたパーサーおよびバリデータの例外コードを戻す、実装で定義済のメンバー関数のプロトタイプを定義する仮想メンバー関数です。

構文

virtual ParserExceptionCode getParserCode() const = 0;

戻り値

(ParserExceptionCode) 例外コード

SAXHandlerインタフェース

表5-5にSAXHandlerインタフェースで使用できるメソッドの概要を示します。

表5-5 SAXHandlerメソッドの概要: パーサー・パッケージ

関数

概要

CDATA()

CDATAの通知を受け取ります。

XMLDecl()

XML宣言の通知を受け取ります。

attributeDecl()

属性の宣言の通知を受け取ります。

characters()

文字データの通知を受け取ります。

comment()

コメントの通知を受け取ります。

elementDecl()

要素の宣言の通知を受け取ります。

endDocument()

文書の終了通知を受け取ります。

endElement()

要素の終わりの通知を受け取ります。

notationDecl()

表記法宣言の通知を受け取ります。

parsedEntityDecl()

解析対象エンティティ宣言の通知を受け取ります。

processingInstruction()

処理命令の通知を受け取ります。

startDocument()

ドキュメントの始まりの通知を受け取ります。

startElement()

要素の始まりの通知を受け取ります。

startElementNS()

要素の始まりの通知を受け取ります(名前空間を認識)。

unparsedEntityDecl()

解析対象外エンティティ宣言の通知を受け取ります。

whitespace()

空白文字の通知を受け取ります。

CDATA()

このイベントはCDATAをTextと異なるものとして処理します。データがデータ・エンコーディングに追加され、長さがバイトではなく文字数で戻されます。これはOracleの拡張機能です。

構文

virtual void CDATA(
oratext* data,
ub4 size) = 0;

パラメータ

説明

data

CDATAへのポインタ

size

CDATAのサイズ

XMLDecl()

このイベントはXML宣言(XMLDecl)をマークします。startDocumentイベントが常に最初に処理され、このイベントは2番目のイベントになります。エンコーディング・フラグにより、エンコーディングが指定されているかどうかが示されます。スタンドアロン・フラグの場合、指定されていない場合は-1が戻され、それ以外の場合はFALSEの場合は0、TRUEの場合は1が戻されます。このメンバー関数は、Oracleの拡張機能です。

構文

virtual void XMLDecl(
oratext* version,
boolean is_encoding,
sword standalone) = 0;

パラメータ

説明

version

XMLDeclのバージョン文字列

is_encoding

エンコーディングが指定されているかどうか

standalone

スタンドアロン値フラグの値

attributeDecl()

このイベントはDTDの属性宣言をマークします。Oracle拡張機能であり、SAX標準ではありません。

構文

virtual void attributeDecl(
oratext* attr_name,
oratext *name,
oratext *content) = 0;

パラメータ

説明

attr_name

name

content

属性宣言の本体

characters()

このイベントは文字データをマークします。

構文

virtual void characters(
oratext* ch,
ub4 size) = 0;

パラメータ

説明

ch

データへのポインタ

size

データの長さ

comment()

このイベントはXML文書のコメントをマークします。コメントのデータはデータ・エンコーディングに追加されます。Oracle拡張機能であり、SAX標準ではありません。

構文

virtual void comment(
oratext* data) = 0;

パラメータ

説明

data

コメントのデータ

elementDecl()

このイベントはDTDの要素宣言をマークします。Oracle拡張機能であり、SAX標準ではありません。

構文

virtual void elementDecl(
oratext *name,
oratext *content) = 0;

パラメータ

説明

name

要素名

content

要素の内容

endDocument()

文書の終了通知を受け取ります。

構文

virtual void endDocument() = 0;

endElement()

このイベントは要素の終わりをマークします。名前は要素のtagName(名前空間を認識する要素の場合は修飾名の場合があります)で、データ・エンコーディングに含まれます。

構文

virtual void endElement( oratext* name) = 0;

notationDecl()

このイベントはDTDの表記法の宣言をマークします。表記法名、公開識別子、およびシステム識別子はすべてデータ・エンコーディングに含まれます。識別子はいずれもオプションで、NULLでもかまいません。

構文

virtual void notationDecl(
oratext* name,
oratext* public_id,
oratext* system_id) = 0;

パラメータ

説明

name

表記法名

public_id

表記法の公開識別子

sysem_id

表記法のシステム識別子

parsedEntityDecl()

DTDの解析対象のエンティティ宣言をマークします。解析対象エンティティの名前、公開識別子、システム識別子および表記法名がすべてデータ・エンコーディングに追加されます。これはOracleの拡張機能です。

構文

virtual void parsedEntityDecl(
oratext* name,
oratext* value,
oratext* public_id,
oratext* system_id,
boolean general) = 0;

パラメータ

説明

name

エンティティ名

value

内部エンティティの場合はエンティティの値

public_id

エンティティの公開識別子

sysem_id

エンティティのシステム識別子

general

汎用エンティティかどうか(パラメータ・エンティティの場合はFALSE)

processingInstruction()

このイベントは処理命令をマークします。PIのターゲットとデータはデータ・エンコーディングに含まれます。ターゲットは必須ですが、データはNULLでもかまいません。

構文

virtual void processingInstruction(
oratext* target,
oratext* data) = 0;

パラメータ

説明

target

PIのターゲット

data

PIのデータ

startDocument()

ドキュメントの始まりの通知を受け取ります。

構文

virtual void startDocument() = 0;

startElement()

このイベントは要素の先頭を示します。

構文

virtual void startElement(
oratext* name,
NodeListRef< Node>* attrs_ptr) = 0;

パラメータ

説明

name

要素名

attrs_ptr

要素の属性のリスト

startElementNS()

このイベントは要素の先頭を示します。これは新しいSAX 2で、名前空間を認識することに注意してください。要素の修飾名、ローカル名、名前空間URIはすべての属性パートと同様に、データ・エンコーディングに含まれます。

構文

virtual void startElementNS(
oratext* qname,
oratext* local,
oratext* ns_URI,
NodeListRef< Node>* attrs_ptr) = 0;

パラメータ

説明

qname

要素の修飾名

local

要素の名前空間のローカル名

ns_URI

要素の名前空間URI

attrs_ref

要素の属性のNodeList

unparsedEntityDecl()

DTDの解析対象外エンティティ宣言をマークします。解析対象外のエンティティ名、公開識別子、システム識別子および表記法名はすべてデータ・エンコーディングに含まれます。

構文

virtual void unparsedEntityDecl(
oratext* name,
oratext* public_id,
oratext* system_id,
oratext* notation_name) = 0;
};

パラメータ

説明

name

エンティティ名

public_id

エンティティの公開識別子

sysem_id

エンティティのシステム識別子

notation_name

エンティティの表記法名

whitespace()

このイベントは改行、行間のインデントなどの無視できる空白データをマークします。

構文

virtual void whitespace(
oratext* data,
ub4 size) = 0;

パラメータ

説明

data

データへのポインタ

size

データの長さ

SAXParserインタフェース

表5-6にSAXParserインタフェースで使用できるメソッドの概要を示します。

表5-6 SAXParserメソッドの概要: パーサー・パッケージ

関数

概要

getContext()

パーサーのXMLコンテキスト(割当てとエンコーディング)を戻します。

getParserId()

パーサーIDを戻します。

parse()

ドキュメントを解析します。

parseDTD()

DTDを解析します。

setSAXHandler()

SAXハンドラを設定します。

getContext()

各パーサー・オブジェクトは個別のOracle XMLコンテキスト内で割り当てられ、実行されます。このメンバー関数は、このコンテキストへのポインタを戻します。

構文

virtual Context* getContext() const = 0;

戻り値

(Context*) パーサーのコンテキストへのポインタ。

getParserId()

パーサーIDを戻します。

構文

virtual SAXParserIdType getParserId() const = 0;

戻り値

(SAXParserIdType) パーサーID

parse()

ドキュメントを解析します。

構文

virtual void parse(
InputSource* src_ptr,
boolean DTDvalidate = FALSE,
SAXHandlerRoot* hdlr_ptr = NULL)
throw (ParserException) = 0;

パラメータ

説明

src_ptr

入力ソース

DTDValidate

DTDで検証する場合はTRUE

hdlr_ptr

SAXハンドラ・ポインタ

parseDTD()

DTDを解析します。

構文

virtual void parseDTD(
InputSource* src_ptr,
SAXHandlerRoot* hdlr_ptr = NULL)
throw (ParserException) = 0;

パラメータ

説明

src_ptr

入力ソース

hdlr_ptr

SAXハンドラ・ポインタ

setSAXHandler()

パーサー・コールで別のSAXハンドラが指定されている場合を除き、すべてのパーサー起動のSAXハンドラを設定します。

構文

virtual void setSAXHandler(
SAXHandlerRoot* hdlr_ptr) = 0;

パラメータ

説明

hdlr_ptr

SAXハンドラ・ポインタ

SchemaValidatorインタフェース

表5-7にSchemaValidatorインタフェースで使用できるメソッドの概要を示します。

表5-7 SchemaValidatorメソッドの概要: パーサー・パッケージ

関数

概要

getSchemaList()

スキーマ・リストを戻します。

getValidatorId()

バリデータ識別子を取得します。

loadSchema()

スキーマ・ドキュメントをロードします。

unloadSchema()

スキーマ・ドキュメントをアンロードします。

getSchemaList()

「list」がNULLの場合、ロードされたスキーマ・リスト・ドキュメントのサイズのみを戻します。「list」がNULL以外の場合、ユーザーが用意するポインタ・バッファにURLポインタのリストが戻されます。ユーザー側で、十分な大きさのバッファを用意する必要があります。

構文

virtual ub4 getSchemaList(
oratext **list) const = 0;

パラメータ

説明

list

ポインタ・バッファのアドレス

戻り値

(ub4) リスト・サイズとロードされたスキーマのリスト(I/Oパラメータ)。

getValidatorId()

このバリデータ・オブジェクトの実装に対応するバリデータ識別子を取得します。

構文

virtual SchValidatorIdType getValidatorId() const = 0;

戻り値

(SchValidatorIdType) バリデータ識別子

loadSchema()

次の検証セッションで使用されるスキーマ・ドキュメントをロードします。エラーの場合は、例外をスローします。

構文

virtual void loadSchema(
oratext* schema_URI)
throw (ParserException) = 0;

パラメータ

説明

schema_URI

スキーマ・ドキュメントのURL。コンパイラ・エンコーディング

unloadSchema()

スキーマ・ドキュメントとその(バリデータからネスト方式でインクルードまたはインポートされた)すべての子孫をアンロードします。以前にロードされたすべてのスキーマ・ドキュメントは、アンロードされるまでロードされた状態です。ロードされたすべてのスキーマ・ドキュメントをアンロードするためには、schema_URIをNULLに設定します。エラーの場合は、例外をスローします。

構文

virtual void unloadSchema(
oratext* schema_URI)
throw (ParserException) = 0;

パラメータ

説明

schema_URI

スキーマ・ドキュメントのURL。コンパイラ・エンコーディング

6 C++用のSOAP APIパッケージ

W3Cでは、「SOAPは、非集中型の分散環境で情報を交換するための軽量プロトコルです。XMLベースのプロトコルで、3つの部分から構成されています。メッセージ中にあるものとその処理方法を記述するためのフレームワークを定義するエンベロープ、アプリケーションで定義されるデータ型のインスタンスを表現するための一連のエンコーディング・ルール、リモート・プロシージャ・コールとレスポンスを表現するための規則です。」

SOAPメッセージの構造は次のとおりです。

[SOAP message (XML document)
[SOAP envelope
[SOAP header?
element*
]
[SOAP body
(element* | Fault)?
]
]
]

この章には、次の項が含まれます。

- SOAPのデータ型

- SoapExceptionインタフェース

- ConnectRefインタフェース

- MsgFactoryインタフェース

関連項目:

- 『Oracle XML Developer's Kitプログラマーズ・ガイド』

- 『Oracle XML DB開発者ガイド』

SOAPのデータ型

表6-1にSOAPパッケージのデータ型の概要を示します。

表6-1 データ型の概要: SOAPパッケージ

データ型

説明

SoapExceptionCode

SOAPに関連する例外コードを定義します。

SoapBinding

SOAP接続のためのバインディングを定義します。

SoapRole

SOAPノードのロールを定義します。

SoapExceptionCode

SOAPに関連する例外コードを定義します。

typedef enum SoapExceptionCode {
SOAP_UNDEFINED_ERR       = 0,
SOAP_OTHER_ERR           = 1} SoapExceptionCode;

SoapBinding

SOAP接続のためのバインディングを定義します。現在選択できるのはHTTPのみです。

typedef enum SoapBinding {
BIND_NONE  = 0,  /* none */
BIND_HTTP  = 1   /* HTTP */ } SoapBinding;

SoapRole

SOAPノードのロールを定義します。

typedef enum SoapRole {
ROLE_UNSET = 0,  /* not specified */
ROLE_NONE  = 1,  /* "none" */
ROLE_NEXT  = 2,  /* "next" */
ROLE_ULT   = 3   /* "ultimateReceiver" */ } SoapRole;

SoapExceptionインタフェース

表6-2にSoapExceptionインタフェースで使用できるメソッドの概要を示します。

表6-2 SoapExceptionインタフェースの概要

データ型

説明

getCode()

例外に埋め込まれたOracle XMLエラー・コードを取得します。

getMessage()

Oracle XMLエラー・メッセージを取得します。

getMesLang()

エラー・メッセージの現在の言語エンコーディングを取得します。

getSoapCode()

例外に埋め込まれたSOAP例外コードを取得します。

getCode()

例外に埋め込まれたOracle XMLエラー・コードを取得します。これはXMLExceptionから継承された仮想メンバー関数です。

構文

virtual unsigned getCode() const = 0;

戻り値

(unsigned) 数値のエラー・コード(正常に終了した場合は0)。

getMessage()

Oracle XMLエラー・メッセージを取得します。XMLExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMessage() const = 0;

戻り値

(oratext *) エラー・メッセージ

getMesLang()

エラー・メッセージの現在の言語エンコーディングを取得します。XMLExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMesLang() const = 0;

戻り値

(oratext*) エラー・メッセージの現在の言語(エンコーディング)。

getSoapCode()

例外に埋め込まれたSOAP例外コードを取得します。これは、SOAP API例外コードを戻す、実装で定義済のメンバー関数のプロトタイプを定義する仮想メンバー関数です。

構文

virtual SoapExceptionCode getSoapCode() const = 0;

戻り値

(SoapExceptionCode) 例外コード

ConnectRefインタフェース

表6-3に、使用できるConnectRefインタフェースのメソッドの概要を示します。

表6-3 ConnectRefインタフェースの概要

データ型

説明

~ConnectRef()

SOAP接続オブジェクトを破棄します。

call()

SOAPメッセージを送信し、レスポンスを待機します。

~ConnectRef()

デストラクタです。SOAP接続オブジェクトを破棄し、関連付けられていたリソースをすべて解放します。

構文

~ConnectRef() throw (SoapException);

call()

SOAPメッセージを送信し、レスポンスを待機します。

構文

DocumentRef< Node>* call(
DocumentRef< Node>& msg) throw (SoapException);

パラメータ

説明

msg

送信するSOAPメッセージ

戻り値

(DocumentRef) 戻されるメッセージ

MsgFactoryインタフェース

表6-4にMsgFactoryインタフェースで使用できるメソッドの概要を示します。

表6-4 MsgFactoryインタフェースの概要

データ型

説明

~MsgFactory()

SOAPメッセージ・ファクトリ・インスタンスを破棄します。

MsgFactory()

SOAPメッセージ・ファクトリ・インスタンスを作成して戻します。

addBodyElement()

SOAPメッセージの本文に要素を追加します。

addFaultReason()

他のフォルト原因を追加します。

addHeaderElement()

SOAPヘッダーに要素を追加します。

createConnection()

SOAP接続を作成します。

createMessage()

空のSOAPメッセージを作成して戻します。

destroyMessage()

SOAPメッセージを破棄します。

getBody()

SOAPメッセージのエンベロープ本文を戻します。

getBodyElement()

SOAP本文から要素を取得します。

getEnvelope()

SOAPパートのエンベロープを戻します。

getFault()

フォルトのコード、理由および詳細を戻します。

getHeader()

SOAPメッセージのエンベロープ・ヘッダーを戻します。

getHeaderElement()

SOAPヘッダーから要素を取得します。

getMustUnderstand()

SOAPヘッダー要素からmustUnderstand属性を取得します。

getReasonNum()

Fault要素の理由の数を取得します。

getReasonLang()

特定のインデックスを持つ理由の言語を取得します。

getRole()

SOAPヘッダー要素からロールを取得します。

hasFault()

SOAPメッセージにフォルト・オブジェクトが含まれているかどうかを判別します。

setFault()

SOAPメッセージにフォルトを設定します。

setMustUnderstand()

SOAPヘッダー要素にmustUnderstand属性を設定します。

setRole()

SOAPヘッダー要素にロールを設定します。

~MsgFactory()

デストラクタです。SOAPメッセージ・ファクトリを破棄します。割り当てられたメモリーはすべて解放され、接続はすべて閉じられます。

構文

~MsgFactory() throw (SoapException);

MsgFactory()

SOAPメッセージ・ファクトリ・インスタンスを作成して戻します。

構文

MsgFactory(
Context* ctx_ptr) throw (SoapException);

パラメータ

説明

ctx_ptr

TContext オブジェクト

戻り値

(MsgFactory) オブジェクト

addBodyElement()

SOAPメッセージの本文に要素を追加します。

構文

Node* addBodyElement( DocumentRef< Node>& msg,
oratext *qname,
oratext *uri) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ

qname

追加する要素のQName

uri

追加する要素の名前空間URI

戻り値

(Node*) 作成された要素へのポインタ。

addFaultReason()

他のフォルト原因を追加します。同じ理由のテキストを別の言語で提供できます。フォルトが作成されると、そのときにプライマリ言語と理由が追加されます。この関数は、その理由の翻訳を追加するのに使用します。

構文

void addFaultReason(
DocumentRef< Node>& msg,
oratext *reason,
oratext *lang) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ

reason

可読的なフォルト理由

lang

理由の言語

addHeaderElement()

SOAPヘッダーに要素を追加します。

構文

Node* addHeaderElement(
DocumentRef< Node>& msg,
oratext *qname, oratext *uri) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ

qname

追加する要素のQName

uri

追加する要素の名前空間URI

戻り値

(Node*) 作成された要素へのポインタ。

createConnection()

SOAP接続オブジェクトを作成します。接続参照オブジェクトはユーザーが明示的に削除する必要があります。

構文

ConnectRef< Node>* createConnection(
SoapBinding bind,
void *endp,
oratext *buf,
ubig_ora bufsiz,
oratext *msgbuf,
ubig_ora msgbufsiz) throw (SoapException);

パラメータ

説明

bind

接続バインディング

endp

接続エンド・ポイント

buf

データ・バッファ(バッファの割当てを受けるときはNULL)

bufsiz

データ・バッファのサイズ(デフォルトのサイズは0)

msgbuf

メッセージ・バッファ(バッファの割当てを受けるときはNULL)

msgfubsiz

メッセージ・バッファのサイズ(デフォルトのサイズは0)

戻り値

(ConnectRef) 接続オブジェクト

createMessage()

空のSOAPメッセージを作成して戻します。不要になった場合、参照オブジェクトはユーザーが明示的に削除する必要があります。

構文

DocumentRef< Node>* CreateMessage() throw (SoapException);

戻り値

(DocumentRef*) SOAPメッセージ、または例外。

destroyMessage()

SOAPメッセージを破棄します。

構文

void destroyMessage(
DocumentRef< Node>& msg) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ。

getBody()

SOAPメッセージのエンベロープ本文を、本文の要素ノードへのポインタとして戻します。

構文

Node* getBody(
DocumentRef<Node>& msg) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ

戻り値

(Node*) SOAPメッセージのエンベロープ本文へのポインタ。

getBodyElement()

SOAP本文から要素を、要素ノードへのポインタとして取得します。

構文

Node* getBodyElement(
DocumentRef< Node>& msg,
oratext *uri,
oratext *local) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ

uri

追加する要素の名前空間URI

local

取得する要素のローカル名

戻り値

(Node*) 指定した要素へのポインタ。

getEnvelope()

SOAPパートのエンベロープを、エンベロープ要素ノードへのポインタとして戻します。

構文

Node* getEnvelope(
DocumentRef<Node>& msg) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ

戻り値

(Node*) SOAPメッセージのエンベロープへのポインタ。

getFault()

フォルトのコード、理由および詳細を、ユーザー変数を介して戻します。不要なパートにはNULLを指定できます。langについては、ポイント先の変数がNULLである場合、最初の理由に指定するデフォルト言語に設定されます。

構文

Node* getFault(
DocumentRef< Node>& msg,
oratext **code,
oratext **reason,
oratext **lang,
oratext **node,
oratext **role) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ

code

フォルト・コード

reason

可読的なフォルト理由

lang

理由に指定する言語またはNULL(デフォルトの言語。最初の理由と同じ)

node

フォルト・ノード。

role

ロール: 次、なしまたは最終受信者(バージョン1.1では使用されていません)

戻り値

(Node) 詳細へのポインタ。

getHeader()

SOAPメッセージのエンベロープ・ヘッダーを、ヘッダーの要素ノードへのポインタとして戻します。

構文

Node* getHeader(
DocumentRef< Node>& msg) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ

戻り値

(Node*) SOAPメッセージのエンベロープ・ヘッダーへのポインタ。

getHeaderElement()

SOAPヘッダーから要素を、要素ノードへのポインタとして取得します。

構文

Node* getHeaderElement(
DocumentRef< Node>& msg,
oratext *uri,
oratext *local) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ

uri

取得する要素の名前空間URI

local

取得する要素のローカル名

戻り値

(Node*) 指定した要素へのポインタ。

getMustUnderstand()

SOAPヘッダー要素からmustUnderstand属性を取得します。

構文

boolean getMustUnderstand(
ElementRef< Node>& elem) throw (SoapException);

パラメータ

説明

elem

SOAPヘッダー要素

戻り値

(boolean) mustUnderstand属性の値。

getReasonNum()

Fault要素の理由の数を判別します。Faultがない場合、0を戻します。

構文

ub4 getReasonNum(
DocumentRef< Node>& msg) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ

戻り値

(up4) Fault要素の理由の数。

getReasonLang()

特定のインデックスを持つ理由の言語を戻します。

構文

oratext* getReasonLang(
DocumentRef< Node>& msg,
ub4 idx) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ

idx

フォルト理由のインデックス

戻り値

(oratext *) プロパティ値またはNULL。

getRole()

SOAPヘッダー要素からロールを取得します。

構文

SoapRole getRole(
ElementRef< Node>& elem) throw (SoapException);

パラメータ

説明

elem

ヘッダー要素に対する参照

戻り値

(SoapRole) ヘッダー要素のロール。

hasFault()

SOAPメッセージにフォルト・オブジェクトが含まれているかどうかを判別します。

構文

boolean hasFault(
DocumentRef< Node>& msg) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ

戻り値

(boolean) フォルトがある場合はTRUE、それ以外はFALSE。

setFault()

SOAPメッセージにフォルトを設定します。

構文

void setFault(
DocumentRef< Node>& msg,
oratext *node,
oratext *code,
oratext *reason,
oratext *lang,
oratext *role,
ElementRef< Node>& detail) throw (SoapException);

パラメータ

説明

msg

SOAPメッセージ

node

フォルトが発生したSOAPノードのURI。

code

フォルト・コード

reason

可読的なフォルト理由

lang

言語

role

ロールを示すURI。バージョン1.2ではRole(ロール)、バージョン1.1では使用されていません。

detail

ユーザー定義の要素

setMustUnderstand()

SOAPヘッダー要素にmustUnderstand属性を設定します。

構文

void setMustUnderstand(
ElementRef< Node>& elem,
boolean mustUnderstand) throw (SoapException);

パラメータ

説明

elem

SOAPヘッダー要素

mustUnderstand

mustUnderstandの値(TRUEまたはFALSE)

setRole()

SOAPヘッダー要素にロールを設定します。

構文

void setRole(
ElementRef< Node>& elem,
SoapRole role) throw (SoapException);

パラメータ

説明

elem

ヘッダー要素に対する参照

role

ロール値

7 C++用のツールAPIパッケージ

Toolsパッケージには、Oracle XMLツールの作成とインスタンス化に関連した型とインタフェースが含まれます。

この章の内容は次のとおりです。

- ツールのデータ型

- Factoryインタフェース

- FactoryExceptionインタフェース

関連項目:

- 『Oracle XML Developer's Kitプログラマーズ・ガイド』

- 『Oracle XML DB開発者ガイド』

ツールのデータ型

表7-1にToolsパッケージのデータ型の概要を示します。

表7-1 データ型の概要: ツール・パッケージ

データ型

説明

FactoryExceptionCode

Factoryツールの例外です。

FactoryExceptionCode

Factoryツールの例外です。

定義

typedef enum FactoryExceptionCode {
FACTORY_UNDEFINED_ERR = 0,
FACTORY_OTHER_ERR = 1
} FactoryExceptionCode;

Factoryインタフェース

表7-2にFactoryインタフェースで使用できるメソッドの概要を示します。

表7-2 Factoryメソッドの概要: ツール・パッケージ

関数

概要

Factory()

コンストラクタです。

createDOMParser()

DOMパーサーを作成します。

createSAXParser()

SAXパーサーを作成します。

createSchemaValidator()

スキーマ・バリデータを作成します。

createXPathCompProcessor()

拡張XPathプロセッサを作成します。

createXPathCompiler()

XPathコンパイラを作成します。

createXPathProcessor()

XPathプロセッサを作成します。

createXPointerProcessor()

XPointerプロセッサを作成します。

createXslCompiler()

Xslコンパイラを作成します。

createXslExtendedTransformer()

XSL拡張トランスフォーマを作成します。

createXslTransformer()

XSLトランスフォーマを作成します。

getContext()

ファクトリのコンテキストを取得します。

~Factory()

デフォルトのデストラクタです。

Factory()

クラス・コンストラクタです。

構文

説明

Factory()
throw (FactoryException);

デフォルトのコンストラクタです

Factory(
Context* ctx_ptr)
throw (FactoryException);

コンテキスト・オブジェクトを指定してファクトリ・オブジェクトを作成します。

パラメータ

説明

ctx_ptr

コンテキスト・オブジェクトへのポインタ

戻り値

(Factory) オブジェクト

createDOMParser()

DOMパーサーを作成します。

構文

DOMParser< Context, Node>* createDOMParser (
DOMParserIdType id_type,
Context* ctx_ptr = NULL)
throw (FactoryException);

パラメータ

説明

id_type

パーサーIDの型

ctx_ptr

コンテキスト・オブジェクトへのポインタ

戻り値

(DOMParser*) パーサー・オブジェクトへのポインタ。

createSAXParser()

SAXパーサーを作成します。

構文

SAXParser< Context>* createSAXParser (
SAXParserIdType id_type,
Context* ctx_ptr = NULL)
throw (FactoryException);

パラメータ

説明

id_type

パーサーIDの型

ctx_ptr

コンテキスト・オブジェクトへのポインタ

戻り値

(SAXParser*) パーサー・オブジェクトへのポインタ。

createSchemaValidator()

スキーマ・バリデータを作成します。

構文

SchemaValidator< Node>* createSchemaValidator (
SchValidatorIdType id_type,
Context* ctx_ptr = NULL)
throw (FactoryException);

パラメータ

説明

id_type

バリデータIDの型

ctx_ptr

コンテキスト・オブジェクトへのポインタ

戻り値

(SchemaValidator*) バリデータ・オブジェクトへのポインタ。

createXPathCompProcessor()

拡張XPathプロセッサを作成します。値XvmPrCXmlのみをとります。

構文

CompProcessor< Context, Node>* createXPathCompProcessor (
XPathPrIdType id_type,
Context* ctx_ptr = NULL)
throw (FactoryException);

パラメータ

説明

id_type

プロセッサIDの型

ctx_ptr

コンテキスト・オブジェクトへのポインタ

戻り値

(CompProcessor*) プロセッサ・オブジェクトへのポインタ。

createXPathCompiler()

XPathコンパイラを作成します。

構文

XPath::Compiler< Context, Node>* createXPathCompiler (
XPathCompIdType id_type,
Context* ctx_ptr = NULL)
throw (FactoryException);

パラメータ

説明

id_type

コンパイラIDの型

ctx_ptr

コンテキスト・オブジェクトへのポインタ

戻り値

(XpathCompiler*) コンパイラ・オブジェクトへのポインタ。

createXPathProcessor()

XPathプロセッサを作成します。

構文

XPath::Processor< Context, Node>* createXPathProcessor (
XPathPrIdType id_type,
Context* ctx_ptr = NULL)
throw (FactoryException);

パラメータ

説明

id_type

プロセッサIDの型

ctx_ptr

コンテキスト・オブジェクトへのポインタ

戻り値

(Processor*) プロセッサ・オブジェクトへのポインタ。

createXPointerProcessor()

XPointerプロセッサを作成します。

構文

XPointer::Processor< Context, Node>* createXPointerProcessor (
XppPrIdType id_type,
Context* ctx_ptr = NULL)
throw (FactoryException);

パラメータ

説明

id_type

プロセッサIDの型

ctx_ptr

コンテキスト・オブジェクトへのポインタ

戻り値

(Processor*) プロセッサ・オブジェクトへのポインタ。

createXslCompiler()

Xslコンパイラを作成します。

構文

Xsl::Compiler< Context, Node>* createXslCompiler (
XslCompIdType id_type,
Context* ctx_ptr = NULL)
throw (FactoryException);

パラメータ

説明

id_type

コンパイラIDの型

ctx_ptr

コンテキスト・オブジェクトへのポインタ

戻り値

(Compiler*) コンパイラ・オブジェクトへのポインタ。

createXslExtendedTransformer()

XSL拡張transformerを作成します。値XvmTrCXmlのみをとります。

構文

CompTransformer< Context, Node>* createXslExtendedTransformer (
XslTrIdType id_type,
Context* ctx_ptr = NULL)
throw (FactoryException);

パラメータ

説明

id_type

トランスフォーマIDの型

ctx_ptr

コンテキスト・オブジェクトへのポインタ

戻り値

(CompTrasformer*) トランスフォーマ・オブジェクトへのポインタ。

createXslTransformer()

XSLトランスフォーマを作成します。

構文

Transformer< Context, Node>* createXslTransformer (
XslTrIdType id_type,
Context* ctx_ptr = NULL)
throw (FactoryException);

パラメータ

説明

id_type

トランスフォーマIDの型

ctx_ptr

コンテキスト・オブジェクトへのポインタ

戻り値

(Trasformer*) トランスフォーマ・オブジェクトへのポインタ。

getContext()

ファクトリのコンテキストを戻します。

構文

Context* getContext() const;

戻り値

(Context*) コンテキスト・オブジェクトへのポインタ。

~Factory()

デフォルトのデストラクタです。

構文

~Factory();

FactoryExceptionインタフェース

表7-3にFactoryExceptionインタフェースで使用できるメソッドの概要を示します。

表7-3 FactoryExceptionメソッドの概要: ツール・パッケージ

関数

概要

getCode()

例外に埋め込まれたOracle XMLエラー・コードを取得します。

getFactoryCode()

例外に埋め込まれたFactoryExceptionコードを取得します。

getMesLang()

エラー・メッセージの現在の言語(エンコーディング)を取得します。

getMessage()

Oracle XMLエラー・メッセージを取得します。

getCode()

例外に埋め込まれたOracle XMLエラー・コードを取得します。XmlExceptionから継承された仮想メンバー関数です。

構文

virtual unsigned getCode() const = 0;

戻り値

(unsigned) 数値のエラー・コード(正常に終了した場合は0)。

getFactoryCode()

これは実行時の例外状況の、FactoryExceptionCodeで定義されたツール名前空間に固有の例外コードを戻す、実装で定義済のメンバー関数のプロトタイプを定義する仮想メンバー関数です。

構文

virtual FactoryExceptionCode getFactoryCode() const = 0;

戻り値

(FactoryExceptionCode) 例外コード

getMesLang()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMesLang() const = 0;

戻り値

(oratext*) エラー・メッセージの現在の言語(エンコーディング)。

getMessage()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMessage() const = 0;

戻り値

(oratext *) エラー・メッセージ

8 C++用のXPath APIパッケージ

XPathパッケージには、XPathの処理に関連のある型およびインタフェースが含まれています。

この章には、次の項が含まれます。

- XPathのデータ型

- CompProcessorインタフェース

- Compilerインタフェース

- NodeSetインタフェース

- Processorインタフェース

- XPathExceptionインタフェース

- XPathObjectインタフェース

関連項目:

- 『Oracle XML Developer's Kitプログラマーズ・ガイド』

- 『Oracle XML DB開発者ガイド』

XPathのデータ型

表8-1にXPathパッケージのデータ型の概要を示します。

表8-1 データ型の概要: XPathパッケージ

データ型

説明

XPathCompIdType

XPathコンパイラの識別子を定義します。

XPathObjType

XPath 1.0に基づいた実装のオブジェクト型を定義します。

XPathExceptionCode

XPathに関連する例外コードです。

XPathPrIdType

XPathプロセッサの識別子を定義します。

XPathCompIdType

XPathコンパイラの識別子を定義します。

定義

typedef enum XPathCompIdType {
XvmXPathCompCXml = 1
} XPathCompIdType;

XPathObjType

XPath 1.0に基づいた実装のオブジェクト型を定義します。

定義

typedef enum XPathObjType {
XPOBJ_TYPE_UNKNOWN = 0,
XPOBJ_TYPE_NDSET   = 1,
XPOBJ_TYPE_BOOL    = 2,
XPOBJ_TYPE_NUM     = 3,
XPOBJ_TYPE_STR     = 4
} XPathObjType;

XPathExceptionCode

XPathに関連する例外コードです。

定義

typedef enum XPathExceptionCode {
XPATH_UNDEFINED_ERR = 0,
XPATH_OTHER_ERR = 1
} XPathExceptionCode;

XPathPrIdType

XPathプロセッサの識別子を定義します。

定義

typedef enum XPathPrIdType {      XPathPrCXml       = 1,      XvmPrCXml         = 2    } XPathPrIdType;

CompProcessorインタフェース

表8-2にCompProcessorインタフェースで使用できるメソッドの概要を示します。

表8-2 CompProcessorメソッドの概要: XPathパッケージ

関数

概要

getProcessorId()

プロセッサのIDを取得します。

process()

指定したドキュメントに対してXPath式を評価します。

processWithBinXPath()

指定したドキュメントに対してコンパイルしたXPath式を評価します。

getProcessorId()

プロセッサIDを取得します。

構文

virtual XPathPrIdType getProcessorId() const = 0;

戻り値

(XPathPrIdType) プロセッサのID

process()

プロセッサから継承されます。

構文

virtual XPathObject< Node>* process (
InputSource* isrc_ptr,
oratext* xpath_exp)
throw (XPathException) = 0;

パラメータ

説明

isrc_ptr

処理するインスタンス・ドキュメント

xpath_exp

XPATH式

戻り値

(XpathGenObject*) XPathオブジェクト

processWithBinXPath()

指定したドキュメントに対してコンパイルしたXPath式を評価します。

構文

virtual XPathObject< Node>* processWithBinXPath (
InputSource* isrc_ptr,
ub2* bin_xpath)
throw (XPathException) = 0;

パラメータ

説明

isrc_ptr

処理するインスタンス・ドキュメント

bin_xpath

コンパイルしたXPATH式

戻り値

(XpathGenObject*) XPathオブジェクト

Compilerインタフェース

表8-3にCompilerインタフェースで使用できるメソッドの概要を示します。

表8-3 Compilerメソッドの概要: XPathパッケージ

関数

概要

compile()

XPathをコンパイルし、コンパイルしたバイナリ表現を戻します。

getCompilerId()

コンパイラのIDを取得します。

compile()

XPathをコンパイルし、コンパイルしたバイナリ表現を戻します。

構文

virtual ub2* compile (
oratext* xpath_exp)
throw (XPathException) = 0;

パラメータ

説明

xpath_exp

XPATH式

戻り値

(ub2) コンパイルしたバイナリ表現のXPath式。

getCompilerId()

コンパイラのIDを取得します。

構文

virtual XPathCompIdType getCompilerId() const = 0;

戻り値

(XPathCompIdType) コンパイラのID

NodeSetインタフェース

表8-4にNodeSetインタフェースで使用できるメソッドの概要を示します。

表8-4 NodeSetメソッドの概要: XPathパッケージ

関数

概要

getNode()

インデックスを指定してノードを取得します。

getSize()

NodeSetのサイズを取得します。

getNode()

ノードへの参照を戻します。

構文

NodeRef< Node>* getNode(
ub4 idx) const;

パラメータ

説明

idx

セット内のノードのインデックス

戻り値

(NodeRef) ノードへの参照。

getSize()

ノード・セットのサイズ。

構文

ub4 getSize() const;

戻り値

(ub4) ノード・セットのサイズ。

Processorインタフェース

表8-5にProcessorインタフェースで使用できるメソッドの概要を示します。

表8-5 Processorメソッドの概要: XPathパッケージ

関数

概要

getProcessorId()

プロセッサのIDを取得します。

process()

指定したドキュメントに対してXPath式を評価します。

getProcessorId()

プロセッサIDを取得します。

構文

virtual XPathPrIdType getProcessorId() const = 0;

戻り値

(XPathPrIdType) プロセッサのID

process()

指定したドキュメントに対してXPath式を評価し、結果のXPathオブジェクトを戻します。

構文

virtual XPathObject< Node>* process (
InputSource* isrc_ptr,
oratext* xpath_exp)
throw (XPathException) = 0;

パラメータ

説明

isrc_ptr

処理するインスタンス・ドキュメント

xpath_exp

XPath式

戻り値

(XpathGenObject*) XPathオブジェクト

XPathExceptionインタフェース

表8-6にXPathExceptionインタフェースで使用できるメソッドの概要を示します。

表8-6 XPathExceptionメソッドの概要: XPathパッケージ

関数

概要

getCode()

例外に埋め込まれたOracle XMLエラー・コードを取得します。

getMesLang()

エラー・メッセージの現在の言語(エンコーディング)を取得します。

getMessage()

Oracle XMLエラー・メッセージを取得します。

getXPathCode()

例外に埋め込まれたXPath例外のコードを取得します。

getCode()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual unsigned getCode() const = 0;

戻り値

(unsigned) 数値のエラー・コード(正常に終了した場合は0)。

getMesLang()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMesLang() const = 0;

戻り値

(oratext*) エラー・メッセージの現在の言語(エンコーディング)。

getMessage()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMessage() const = 0;

戻り値

(oratext *) エラー・メッセージ

getXPathCode()

これは実行時の例外状況の、XPathExceptionCodeで定義されたXPathプロセッサおよびコンパイラの例外コードを戻す、実装によって定義されるメンバー関数のプロトタイプを定義する仮想メンバー関数です。

構文

virtual XPathExceptionCode getXPathCode() const = 0;

戻り値

(XPathExceptionCode) 例外コード

XPathObjectインタフェース

表8-7にXPathObjectインタフェースで使用できるメソッドの概要を示します。

表8-7 XPathObjectメソッドの概要: XPathパッケージ

関数

概要

XPathObject()

コピー・コンストラクタです。

getNodeSet()

ノード・セットを取得します。

getObjBoolean()

オブジェクトからブール値を取得します。

getObjNumber()

オブジェクトから数値を取得します。

getObjString()

オブジェクトから文字列を取得します。

getObjType()

オブジェクトから型を取得します。

XPathObject()

コピー・コンストラクタです。

構文

XPathObject(
XPathObject< Node>& src);

パラメータ

説明

src

コピーするオブジェクトに対する参照

戻り値

(XPathObject) 新しいオブジェクト

getNodeSet()

ノード・セットを取得します。

構文

NodeSet< Node>* getNodeSet() const;

getObjBoolean()

オブジェクトからブール値を取得します。

構文

boolean getObjBoolean() const;

getObjNumber()

オブジェクトから数値を取得します。

構文

double getObjNumber() const;

getObjString()

オブジェクトから文字列を取得します。

構文

oratext* getObjString() const;

getObjType()

オブジェクトから型を取得します。

構文

XPathObjType getObjType() const;

9 C++用のXPointer APIパッケージ

XPointerパッケージには、XPointerの処理に関連のある型およびインタフェースが含まれています。

この章には、次の項が含まれます。

- XPointerのデータ型

- Processorインタフェース

- XppExceptionインタフェース

- XppLocationインタフェース

- XppLocSetインタフェース

関連項目:

- 『Oracle XML Developer's Kitプログラマーズ・ガイド』

- 『Oracle XML DB開発者ガイド』

XPointerのデータ型

表9-1にXPointerパッケージのデータ型の概要を示します。

表9-1 データ型の概要: XPointerパッケージ

データ型

説明

XppExceptionCode

XPathコンパイラの識別子を定義します。

XppPrIdType

XPointerプロセッサの識別子を定義します。

XppLocType

XPointerの位置の型を定義します。

XppExceptionCode

XPointerに関連する例外コードです。

定義

typedef enum XPathCompIdType {
XvmXPathCompCXml = 1
} XPathCompIdType;

XppPrIdType

XPointerプロセッサの識別子を定義します。

定義

typedef enum XppPrIdType {   XPtrPrCXml         = 1} XppPrIdType;

XppLocType

XPointerの位置の型を定義します。

定義

typedef enum XppLocType {
XPPLOC_TYPE_UNKNOWN = 0,
XPPLOC_TYPE_NODE    = 1,
XPPLOC_TYPE_POINT   = 2,
XPPLOC_TYPE_RANGE   = 3,
XPPLOC_TYPE_BOOL    = 4,
XPPLOC_TYPE_NUM     = 5,
XPPLOC_TYPE_STR     = 6
} XppLocType;

Processorインタフェース

表9-2にProcessorインタフェースで使用できるメソッドの概要を示します。

表9-2 Processorメソッドの概要: XPointerパッケージ

関数

概要

getProcessorId()

プロセッサのIDを取得します。

process()

指定したドキュメントに対してXPointer式を評価します。

getProcessorId()

プロセッサIDを取得します。

構文

virtual XppPrIdType getProcessorId() const = 0;

戻り値

(XppPrIdType) プロセッサのID

process()

指定したドキュメントに対してXPointer式を評価し、結果のXPointerの位置セット・オブジェクトを戻します。

構文

virtual XppLocSet< Node>* process (
InputSource* isrc_ptr,
oratext* xpp_exp)
throw (XppException) = 0;

パラメータ

説明

isrc_ptr

処理するインスタンス・ドキュメント

xpp_exp

XPointer式

戻り値

(XppLocSet*) XPathオブジェクト

XppExceptionインタフェース

表9-3にXPPExceptionインタフェースで使用できるメソッドの概要を示します。

表9-3 XppExceptionメソッドの概要: XPointerパッケージ

関数

概要

getCode()

例外に埋め込まれたOracle XMLエラー・コードを取得します。

getMesLang()

エラー・メッセージの現在の言語(エンコーディング)を取得します。

getMesLang()

Oracle XMLエラー・メッセージを取得します。

getXppCode()

例外に埋め込まれたXPointerの例外コードを取得します。

getCode()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual unsigned getCode() const = 0;

戻り値

(unsigned) 数値のエラー・コード(正常に終了した場合は0)。

getMesLang()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMesLang() const = 0;

戻り値

(oratext*) エラー・メッセージの現在の言語(エンコーディング)。

getMessage()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMessage() const = 0;

戻り値

(oratext *) エラー・メッセージ

getXppCode()

これは、実行時の例外状況の、XppExceptionCodeで定義されたXPointerプロセッサおよびコンパイラの例外コードを戻す、実装で定義済のメンバー関数のプロトタイプを定義する仮想メンバー関数です。

構文

virtual XppExceptionCode getXppCode() const = 0;

戻り値

(XppExceptionCode) 例外コード

XppLocationインタフェース

表9-4にXppLocationインタフェースで使用できるメソッドの概要を示します。

表9-4 XppLocationメソッドの概要: XPointerパッケージ

関数

概要

getLocType()

位置の型を取得します。

getNode()

ノードを取得します。

getRange()

範囲を取得します。

getLocType()

位置の型を取得します。

構文

XppLocType getLocType() const;

getNode()

ノードを取得します。

構文

Node* getNode() const;

getRange()

範囲を取得します。

構文

Range< Node>* getRange() const;

XppLocSetインタフェース

表9-5にXppLocSetインタフェースで使用できるメソッドの概要を示します。

表9-5 XppLocSetメソッドの概要: XPointerパッケージ

関数

概要

getItem()

指定されたインデックスの項目を取得します。

getSize()

位置セットのサイズを取得します。

getItem()

項目への参照を戻します。

構文

XppLocation< Node>* getItem(
ub4 index) const;

パラメータ

説明

index

項目のインデックス

戻り値

(XppLocation*) 項目に対する参照。

getSize()

ノード・セットのサイズ。

構文

ub4 getSize() const;

戻り値

(ub4) ノード・セットのサイズ。

10 C++用のXsl APIパッケージ

Xslパッケージには、XSLTに関連のある型およびインタフェースが含まれています。

この章には、次の項が含まれます。

- Xslのデータ型

- Compilerインタフェース

- CompTransformerインタフェース

- Transformerインタフェース

- XSLExceptionインタフェース

関連項目:

- 『Oracle XML Developer's Kitプログラマーズ・ガイド』

- 『Oracle XML DB開発者ガイド』

Xslのデータ型

表10-1にXslパッケージのデータ型の概要を示します。

表10-1 データ型の概要: Xslパッケージ

データ型

説明

XslCompIdType

XSLコンパイラの識別子を定義します。

XslExceptionCode

XSLTに関連のある例外を定義します。

XslTrIdType

XSLトランスフォーマの識別子を定義します。

XslCompIdType

XSLコンパイラの識別子を定義します。

定義

typedef enum XslCompIdType {
XvmCompCXml = 1
} XslCompIdType;

XslExceptionCode

XSLTに関連のある例外を定義します。

定義

typedef typedef enum XslExceptionCode {
XSL_UNDEFINED_ERR = 0,
XSL_OTHER_ERR = 1
} XslExceptionCode;

XslTrIdType

XSLトランスフォーマの識別子を定義します。

定義

typedef enum XslTrIdType {
XslTrCXml         = 1,
XvmTrCXml         = 2
} XslTrIdType;

Compilerインタフェース

表10-2にCompilerインタフェースで使用できるメソッドの概要を示します。

表10-2 Compilerメソッドの概要: Xslパッケージ

関数

概要

compile()

Xslをコンパイルし、コンパイルしたバイナリ表現を戻します。

getCompilerId()

コンパイラのIDを取得します。

getLength()

コンパイルしたXSL文書の長さを取得します。

compile()

Xslをコンパイルし、コンパイルしたバイナリ表現を戻します。

構文

virtual ub2* compile(
InputSource* isrc_ptr)
throw (XslException) = 0;

パラメータ

説明

isrc_ptr

Xsl文書

戻り値

(InputSource) コンパイルしたバイナリ表現のXsl文書。

getCompilerId()

コンパイラのIDを取得します。

構文

virtual XslCompIdType getCompilerId() const = 0;

戻り値

(XslCompIdType) コンパイラのID

getLength()

コンパイルしたXSL文書の長さを戻します。

構文

virtual ub4 getLength(
ub2* binxsl_ptr)
throw (XslException) = 0;

パラメータ

説明

binxsl_ptr

コンパイルしたXsl文書

戻り値

(ub4) 文書の長さ。

CompTransformerインタフェース

表10-3にCompTransformerインタフェースで使用できるメソッドの概要を示します。

表10-3 CompTransformerメソッドの概要: Xslパッケージ

関数

概要

getTransformerId()

トランスフォーマのIDを取得します。

setBinXsl()

コンパイルしたXslを設定します。

setSAXHandler()

SAXハンドラを設定します。

setXSL()

このトランスフォーマにXSLT文書を設定します。

transform()

文書を変換します。

getTransformerId()

トランスフォーマのIDを取得します。

構文

virtual XslTrIdType getTransformerId() const = 0;

戻り値

(XslTrIdType) トランスフォーマのID

setBinXsl()

コンパイルしたXslを設定します。

構文

virtual void setBinXsl (
ub2* binxsl_ptr)
throw (XslException) = 0;

パラメータ

説明

binxsl_ptr

コンパイルしたXsl文書

setSAXHandler()

トランスフォーマから継承されます。

構文

virtual void setSAXHandler(
SAXHandlerRoot* hdlr_ptr) = 0;

パラメータ

説明

hdlr_ptr

SAXハンドラ・ポインタ

setXSL()

このトランスフォーマにXSLT文書を設定します。transformメンバー関数がコールされる前にコールする必要があります。これは、Transformから継承されます。

構文

virtual void setXSL (
InputSource* isrc_ptr)
throw (XslException) = 0;

パラメータ

説明

isrc_ptr

処理するインスタンス・ドキュメント

transform()

文書を変換します。setXSLコールによってあらかじめXSLT文書が設定されていない場合、例外をスローします。これは、Transformから継承されます。

構文

説明

virtual NodeRef< Node>* transform(
nputSource* isrc_ptr)
throw (XslException) = 0;

ドキュメントを変換し、DOMを戻します。

virtual void transform(
InputSource* isrc_ptr,
SAXHandlerRoot* hdlr_ptr)
throw (XslException) = 0;

ドキュメントを変換し、SAXイベントを戻します。

パラメータ

説明

isrc_ptr

処理するインスタンス・ドキュメント

hdlr_ptr

SAXハンドラ・ポインタ

戻り値

(DocumentRef) 新しいドキュメントのドキュメント・ツリー。

Transformerインタフェース

表10-4にTransformerインタフェースで使用できるメソッドの概要を示します。

表10-4 Transformerメソッドの概要: Xslパッケージ

関数

概要

getTransformerId()

トランスフォーマのIDを取得します。

setSAXHandler()

SAXハンドラを設定します。

setXSL()

このトランスフォーマにXSLT文書を設定します。

transform()

ドキュメントを変換し、SAXイベントを戻します。

getTransformerId()

トランスフォーマのIDを取得します。

構文

virtual XslTrIdType getTransformerId() const = 0;

戻り値

(XslTrIdType) トランスフォーマのID

setSAXHandler()

SAXハンドラを設定します。

構文

virtual void setSAXHandler(
SAXHandlerRoot* hdlr_ptr) = 0;

パラメータ

説明

hdlr_ptr

SAXハンドラ・ポインタ

setXSL()

このトランスフォーマにXSLT文書を設定します。transformメンバー関数がコールされる前にコールする必要があります。

構文

virtual void setXSL (
InputSource* isrc_ptr)
throw (XslException) = 0;

パラメータ

説明

isrc_ptr

処理するインスタンス・ドキュメント

transform()

文書を変換します。setXSLコールによってあらかじめXSLT文書が設定されていない場合、例外をスローします。

構文

説明

virtual NodeRef< Node>* transform(
nputSource* isrc_ptr)
throw (XslException) = 0;

ドキュメントを変換し、DOMを戻します。

virtual void transform(
InputSource* isrc_ptr,
SAXHandlerRoot* hdlr_ptr)
throw (XslException) = 0;

ドキュメントを変換し、SAXイベントを戻します。

パラメータ

説明

isrc_ptr

処理するインスタンス・ドキュメント

hdlr_ptr

SAXハンドラ・ポインタ

戻り値

(DocumentRef) 新しいドキュメントのドキュメント・ツリー。

XSLExceptionインタフェース

表10-5にXSLExceptionインタフェースで使用できるメソッドの概要を示します。

表10-5 XSLExceptionメソッドの概要: Xslパッケージ

関数

概要

getCode()

例外に埋め込まれたOracle XMLエラー・コードを取得します。

getMesLang()

エラー・メッセージの現在の言語(エンコーディング)を取得します。

getMessage()

Oracle XMLエラー・メッセージを取得します。

getXslCode()

実装するプロトタイプを定義します。

getCode()

例外に埋め込まれたOracle XMLエラー・コードを取得します。XmlExceptionから継承された仮想メンバー関数です。

構文

virtual unsigned getCode() const = 0;

戻り値

(unsigned) 数値のエラー・コード(正常に終了した場合は0)。

getMesLang()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMesLang() const = 0;

戻り値

(oratext*) エラー・メッセージの現在の言語(エンコーディング)。

getMessage()

XmlExceptionから継承された仮想メンバー関数です。

構文

virtual oratext* getMessage() const = 0;

戻り値

(oratext *) エラー・メッセージ

getXslCode()

これは、実行時の例外状況の、XslExceptionCodeで定義されたXSLトランスフォーマおよびコンパイラの例外コードを戻す、実装で定義済のメンバー関数のプロトタイプを定義する仮想メンバー関数です。

構文

virtual XslExceptionCode getXslCode() const = 0;

戻り値

(XslExceptionCode) 例外コード

索引
A  C  D  E  F  G  H  I  L  M  N  O  P  R  S  T  U  W  X

記号

~AttrRef(), 2

~CDATASectionRef(), 2

~CommentRef(), 2

~ConnectRef(), 6

~DocumentFragmentRef(), 2

~DocumentRange(), 2

~DocumentRef(), 2

~DocumentTypeRef(), 2

~DOMImplementation(), 2

~DOMImplRef(), 2

~ElementRef(), 2

~EntityRef(), 2

~EntityReferenceRef(), 2

~Factory(), 7

~MemAllocator(), 1

~MsgFactory(), 6

~NamedNodeMapRef(), 2

~NodeListRef(), 2

~NodeRef(), 2

~NotationRef(), 2

~ProcessingInstructionRef(), 2

~TCtx(), 1

~TextRef(), 2

A

acceptNode(), 2

AcceptNodeCodesデータ型, DOMパッケージ, 2

addBodyElement(), 6

addFaultReason(), 6

addHeaderElement(), 6

adjustCtx(), 2, 2

alloc(), 1

appendChild(), 2, 2

appendData(), 2

attributeDecl(), 5

AttrRefインタフェース

~AttrRef(), 2

AttrRef(), 2

Domパッケージ, 2

getName(), 2

getSpecified(), 2

getValue(), 2

setValue(), 2

AttrRef(), 2

C

C++パッケージ

Ctx, 1

Dom, 2

IO, 3

OracleXml, 4

パーサー, 5, 5

SOAP, 6

ツール, 7

XPath, 8

XPointer, 9

Xsl, 10

call(), 6 CDATA(), 5 CDATASectionRefインタフェース

~CDATASectionRef(), 2

CDATASectionRef(), 2

Domパッケージ, 2

CDATASectionRef(), 2 CharacterDataRefインタフェース

appendData(), 2

deleteData(), 2

Domパッケージ, 2

freeString(), 2

getData(), 2

getLength(), 2

insertData(), 2

replaceData(), 2

setData(), 2

substringData(), 2

characters(), 5 cloneContent(), 2 cloneNode(), 2, 2 cloneRange(), 2 comment(), 5 CommentRefインタフェース

~CommentRef(), 2

CommentRef(), 2

Domパッケージ, 2

CommentRef(), 2 CompareBoundaryPoints(), 2 CompareHowCodeデータ型, DOMパッケージ, 2 compile(), 8, 10 Compilerインタフェース

compile(), 8, 10

getCompilerId(), 8, 10

getLength(), 10

getTransformerId(), 10

setBinXsl(), 10

setSAXHandler(), 10

setXSL(), 10

transform(), 10

XPathパッケージ, 8

Compilerインタフェース

Xslパッケージ, 10

CompProcessorインタフェース

getProcessorId(), 8

process(), 8

processWithBinXPath(), 8

XPathパッケージ, 8

CompTransformerインタフェース

Xslパッケージ, 10

ConnectRefインタフェース

~ConnectRef(), 6

call(), 6

SOAPパッケージ, 6

createAttribute(), 2 createAttributeNS(), 2 createCDATASection(), 2 createComment(), 2 createConnection(), 6 createDocument(), 2 createDocumentFragment(), 2 createDocumentType(), 2 createDOMParser(), 7 createElement(), 2 createElementNS(), 2 createEntityReference(), 2 createMessage(), 6 createNodeIterator(), 2 createProcessingInstruction(), 2 createRange(), 2 createSAXParser(), 7 createSchemaValidator(), 7 createTextNode(), 2 createTreeWalker(), 2 createXPathCompiler(), 7 createXPathCompProcessor(), 7 createXPathProcessor(), 7 createXPointerProcessor(), 7 createXslCompiler(), 7 createXslExtendedTransformer(), 7 createXslTransformer(), 7 Ctxのデータ型, 1, 1

encoding, 1

encodings, 1

C++用のCtxパッケージ, 1

D

dealloc(), 1

deleteContents(), 2

deleteData(), 2

destroyMessage(), 6

destroyRange(), 2

detach(), 2, 2

DocumentFragmentRefインタフェース

~DocumentFragmentRef(), 2

DocumentFragmentRef(), 2

Domパッケージ, 2

DocumentFragmentRef(), 2 DocumentRangeインタフェース

~DocumentRange(), 2

createRange(), 2

destroyRange(), 2

DocumentRange(), 2

Domパッケージ, 2

DocumentRange(), 2 DocumentRefインタフェース

~DocumentRef(), 2

createAttribute(), 2

createAttributeNS(), 2

createCDATASection(), 2

createComment(), 2

createDocumentFragment(), 2

createElement(), 2

createElementNS(), 2

createEntityReference(), 2

createProcessingInstruction(), 2

createTextNode(), 2

DocumentRef(), 2

Domパッケージ, 2

getDoctype(), 2

getDocumentElement(), 2

getElementById(), 2

getElementsByTagNameNS(), 2

getImplementation(), 2

importNode(), 2

DocumentRef(), 2 DocumentTraversalインタフェース

~DocumentTraversal(), 2

createNodeIterator(), 2

createTreeWalker(), 2

destroyNodeIterator(), 2

destroyTreeWalker(), 2

DocumentTraversal(), 2

Domパッケージ, 2

DocumentTraversal(), 2 DocumentTypeRefインタフェース

~DocumentTypeRef(), 2

DocumentTypeRef(), 2

Domパッケージ, 2

getEntities(), 2

getInternalSubset(), 2

getName(), 2

getNotations(), 2

getPublicId(), 2

getSystemId(), 2

DocumentTypeRef(), 2 DOMのデータ型

AcceptNodeCodes, 2

CompareHowCode, 2

DOMExceptionCode, 2

DOMNodeType, 2

RangeExceptionCode, 2

WhatToShowCode, 2

Domパッケージ

使用, 2

C++用のDomパッケージ, 2 DOMExceptionインタフェース

Domパッケージ, 2

getDOMCode(), 2

getMesLang(), 2

getMessage(), 2

DOMExceptionCodeデータ型, DOMパッケージ, 2 DOMImplementationインタフェース

~DOMImplementation(), 2

Domパッケージ, 2

DOMImplementation(), 2

getNoMod(), 2

DOMImplementation(), 2 DOMImplRefインタフェース

~DOMImplRef(), 2

createDocument(), 2

createDocumentType(), 2

Domパッケージ, 2

DOMImplRef(), 2

formDocument(), 2

getImplementation(), 2

getNoMod(), 2

hasFeature(), 2

setContext(), 2

DOMImplRef(), 2 DOMNodeTypeデータ型, DOMパッケージ, 2 DOMParserインタフェース

パーサー・パッケージ, 5

DomParserインタフェース

getContext(), 5

getParserId(), 5

parse(), 5

parseDTD(), 5

parseSchVal(), 5

setValidator(), 5

DOMParserIdTypeデータ型, パーサー・パッケージ, 5

E

elementDecl(), 5

ElementRefインタフェース

~ElementRef(), 2

Domパッケージ, 2

ElementRef(), 2

getAttributeNode(), 2

getAttributeNS(), 2

getElementsByTagName(), 2

getTagName(), 2

hasAttribute(), 2

hasAttributeNS(), 2

removeAttribute(), 2

removeAttributeNode(), 2

removeAttributeNS(), 2

setAttribute(), 2

setAttributeNode(), 2

setAttributeNS(), 2

ElementRef(), 2 encodingデータ型, Ctxパッケージ, 1 encodingsデータ型, Ctxパッケージ, 1 endDocument(), 5 endElement(), 5 EntityRefインタフェース

~EntityRef(), 2

Domパッケージ, 2

EntityRef(), 2

getNotationName(), 2

getPublicId(), 2

getSystemId(), 2

getType(), 2

EntityRef(), 2 EntityReferenceRefインタフェース

~EntityReferenceRef(), 2

Domパッケージ, 2

EntityReferenceRef(), 2

EntityReferenceRef(), 2 extractContent(), 2

F

Factoryインタフェース

~Factory(), 7

createDOMParser(), 7

createSAXParser(), 7

createSchemaValidator(), 7

createXPathCompiler(), 7

createXPathCompProcessor(), 7

createXPathProcessor(), 7

createXPointerProcessor(), 7

createXslCompiler(), 7

createXslExtendedTransformer(), 7

createXslTransformer(), 7

Factory(), 7

getContext(), 7

ツール・パッケージ, 7

Factory(), 7 FactoryExceptionインタフェース

getCode(), 7

getFactoryCode(), 7

getMesLang(), 7

getMessage(), 7

ツール・パッケージ, 7

FactoryExceptionCodeデータ型, ツール・パッケージ, 7 firstChild(), 2 formDocument(), 2 freeString(), 2

G

getAttribute(), 2

getAttributeNode(), 2

getAttributeNS(), 2

getAttributes(), 2, 2

getBaseURI(), 3, 5

getBody(), 6

getBodyElement(), 6

getChildNodes(), 2

getCode(), 2, 4, 5, 6, 7, 8, 9, 10

getCollapsed(), 2

getCommonAncestorContainer(), 2

getCompilerId(), 8, 10

getContext(), 5, 5, 7

getData(), 2, 2

getDiscardWhitespaces(), 5

getDoctype(), 2

getDocumentElement(), 2

getDOMCode(), 2

getElementById(), 2

getElementsByTagName(), 2, 2

getElementsByTagNameNS(), 2

getEncoding(), 1

getEndContainer(), 2

getEndOffset(), 2

getEntities(), 2

getEnvelope(), 6

getErrHandler(), 1

getExpandCharRefs(), 5

getFactoryCode(), 7

getFault(), 6

getFirstChild(), 2

getHeader(), 6

getHeaderElement(), 6

getImplementation(), 2, 2

getInternalSubset(), 2

getISrcType(), 3

getItem(), 9

getLastChild(), 2

getLength(), 2, 2, 2, 10

getLocalName(), 2

getLocType(), 9

getMemAllocator(), 1

getMesLang(), 2, 2, 4, 5, 6, 7, 8, 9, 10

getMessage(), 2, 2, 4, 5, 7, 8, 9, 10

getMustUnderstand(), 6

getName(), 2, 2

getNamedItem(), 2

getNamedItemNS(), 2

getNamespaceURI(), 2

getNextSibling(), 2

getNode(), 8, 9

getNodeName(), 2

getNodeSet(), 8

getNodeType(), 2

getNodeValue(), 2

getNoMod(), 2, 2, 2

getNotationName(), 2

getNotations(), 2

getObjBoolean(), 8

getObjNumber(), 8

getObjString(), 8

getObjType(), 8

getOwnerDocument(), 2

getOwnerElement(), 2

getParentNode(), 2

getParserCode(), 5

getParserId(), 5, 5

getPrefix(), 2

getPreviousSibling(), 2

getProcessorId(), 8, 8, 9

getPublicId(), 2, 2, 2

getRange(), 9

getRangeCode(), 2

getReasonLang(), 6

getReasonNum(), 6

getRole(), 6

getSchemaList(), 5

getSchemaLocation(), 5

getSize(), 8, 9

getSoapCode(), 6

getSpecified(), 2

getStartContainer(), 2

getStartOffset(), 2

getStopOnWarning(), 5

getSystemId(), 2, 2, 2

getTagName(), 2

getTarget(), 2

getTransformerId(), 10, 10

getType(), 2

getValidatorId(), 5

getValue(), 2

getWarnDuplicateEntity(), 5

getXPathCode(), 8

getXppCode(), 9

getXslCode(), 10

GParserインタフェース

getBaseURI(), 5

getDiscardWhitespaces(), 5

getExpandCharRefs(), 5

getSchemaLocation(), 5

getStopOnWarning(), 5

getWarnDuplicateEntity(), 5

パーサー・パッケージ, 5

setBaseURI(), 5

setDiscardWhitespaces(), 5

setExpandCharRefs(), 5

setSchemaLocation(), 5

setStopOnWarning(), 5

SetWarnDuplicateEntity(), 5

H

hasAttribute(), 2

hasAttributeNS(), 2

hasAttributes(), 2

hasChildNodes(), 2

hasFault(), 6

hasFeature(), 2

I

importNode(), 2

InputSourceインタフェース

getBaseURI(), 3

getISrcType(), 3

IOパッケージ, 3

setBaseURI(), 3

InputSourceTypeデータ型, IOパッケージ, 3 insertBefore(), 2 insertData(), 2 insertNode(), 2 IOのデータ型, 3

InputSourceType, 3

C++用のIOパッケージ, 3 isSimple(), 1 isSupported(), 2 isUnicode(), 1 item(), 2, 2

L

lastChild(), 2

loadSchema(), 5

M

markToDelete(), 2

MemAllocatorインタフェース

~MemAllocator(), 1

alloc(), 1

Ctxパッケージ, 1

dealloc(), 1

MsgFactoryインタフェース

~MsgFactory(), 6

addBodyElement(), 6

addFaultReason(), 6

addHeaderElement(), 6

createConnection(), 6

createMessage(), 6

destroyMessage(), 6

getBody(), 6

getBodyElement(), 6

getEnvelope(), 6

getFault(), 6

getHeader(), 6

getHeaderElement(), 6

getMustUnderstand(), 6

getReasonLang(), 6

getReasonNum(), 6

getRole(), 6

hasFault(), 6

MsgFactory(), 6

setFault(), 6

setMustUnderstand(), 6

setRole(), 6

SOAPパッケージ, 6

MsgFactory(), 6

N

NamedNodeMapRefインタフェース

~NamedNodeMapRef(), 2

Domパッケージ, 2

getLength(), 2

getNamedItem(), 2

getNamedItemNS(), 2

item(), 2

NamedNodeMapRef(), 2

removeNamedItem(), 2

removeNamedItemNS(), 2

setNamedItem(), 2

setNamedItemNS(), 2

NamedNodeMapRef(), 2 nextNode(), 2, 2 nextSibling(), 2 NodeFilterインタフェース

acceptNode(), 2

Domパッケージ, 2

NodeIteratorインタフェース

adjustCtx(), 2

detach(), 2

Domパッケージ, 2

nextNode(), 2

previousNode(), 2

NodeListRefインタフェース

~NodeListRef(), 2

Domパッケージ, 2

getLength(), 2

item(), 2

NodeListRef(), 2

NodeListRef(), 2 NodeRefインタフェース

~NodeRef(), 2

appendChild(), 2

cloneNode(), 2

Domパッケージ, 2

getAttributes(), 2

getChildNodes(), 2

getFirstChild(), 2

getLastChild(), 2

getNamespaceURI(), 2

getNextSibling(), 2

getNodeName(), 2

getNodeType(), 2

getNodeValue(), 2

getNoMod(), 2

getOwnerDocument(), 2

getParentNode(), 2

getPrefix(), 2

getPreviousSibling(), 2

hasAttributes(), 2

hasChildNodes(), 2

insertBefore(), 2

isSupported(), 2

markToDelete(), 2

NodeRef(), 2

normalize(), 2

removeChild(), 2

replaceChild(), 2

resetNode(), 2

setNodeValue(), 2

setPrefix(), 2

NodeRef(), 2 NodeSetインタフェース

getNode(), 8

getSize(), 8

XPathパッケージ, 8

normalize(), 2 notationDecl(), 5 NotationRefインタフェース

~NotationRef(), 2

Domパッケージ, 2

getPublicId(), 2

getSystemId(), 2

NotationRef(), 2

NotationRef(), 2

O

C++用のOracleXmlパッケージ, 4

P

パッケージ

C++用のCtx, 1

C++用のDom, 2

C++用のIO, 3

C++用のOracleXml, 4

C++用のパーサー, 5

C++用のSOAP, 6

C++用のツール, 7

C++用のXPath, 8

C++用のXPointer, 9

C++用のXsl, 10

parentNode(), 2 parse(), 5, 5 parsedEntityDecl(), 5 parseDTD(), 5, 5 パーサーのデータ型, 5

DOMParserIdType, 5

ParserExceptionCode, 5

SAXParserIdType, 5

SchValidatorIdType, 5

C++用のパーサー・パッケージ, 5 ParserExceptionインタフェース

getCode(), 5

getMesLang(), 5

getMessage(), 5

getParserCode(), 5

パーサー・パッケージ, 5

ParserExceptionCodeデータ型, パーサー・パッケージ, 5 parseSchVal(), 5 previousNode(), 2, 2 previousSibling(), 2 process(), 8, 8, 9 processingInstruction(), 5 ProcessingInstructionRefインタフェース

~ProcessingInstructionRef(), 2

Domパッケージ, 2

getData(), 2

getTarget(), 2

ProcessingInstructionRef(), 2

setData(), 2

ProcessingInstructionRef(), 2 Processorインタフェース

getProcessorId(), 8, 9

process(), 8, 9

XPathパッケージ, 8

XPointerパッケージ, 9

processWithBinXPath(), 8

R

Rangeインタフェース

cloneContent(), 2

cloneRange(), 2

CompareBoundaryPoints(), 2

deleteContents(), 2

detach(), 2

Domパッケージ, 2

extractContent(), 2

getCollapsed(), 2

getCommonAncestorContainer(), 2

getEndContainer(), 2

getEndOffset(), 2

getStartContainer(), 2

getStartOffset(), 2

insertNode(), 2

selectNode(), 2

selectNodeContent(), 2

setEnd(), 2

setEndAfter(), 2

setEndBefore(), 2

setStart(), 2

setStartAfter(), 2

setStartBefore(), 2

surroundContents(), 2

toString(), 2

RangeExceptionインタフェース

Domパッケージ, 2

getCode(), 2

getMesLang(), 2

getMessage(), 2

getRangeCode(), 2

RangeExceptionCodeデータ型, DOMパッケージ, 2 removeAttribute(), 2 removeAttributeNode(), 2 removeAttributeNS(), 2 removeChild(), 2 removeNamedItem(), 2 removeNamedItemNS(), 2 replaceChild(), 2 replaceData(), 2 resetNode(), 2

S

SAXHandlerインタフェース

attributeDecl(), 5

CDATA(), 5

characters(), 5

comment(), 5

elementDecl(), 5

endDocument(), 5

endElement(), 5

notationDecl(), 5

parsedEntityDecl(), 5

パーサー・パッケージ, 5

processingInstruction(), 5

startDocument(), 5

startElement(), 5

startElementNS(), 5

unparsedEntityDecl(), 5

whitespace(), 5

XMLDecl(), 5

SAXParserインタフェース

getContext(), 5

getParserId(), 5

parse(), 5

parseDTD(), 5

パーサー・パッケージ, 5

setSAXHandler(), 5

SAXParserIdTypeデータ型, パーサー・パッケージ, 5 SchemaValidatorインタフェース

getSchemaList(), 5

getValidatorId(), 5

loadSchema(), 5

パーサー・パッケージ, 5

unloadSchema(), 5

SchValidatorIdTypeデータ型, パーサー・パッケージ, 5 selectNode(), 2 selectNodeContent(), 2 setAttribute(), 2 setAttributeNode(), 2 setAttributeNS(), 2 setBaseURI(), 3, 5 setBinXsl(), 10 setContext(), 2 setData(), 2, 2 setDiscardWhitespaces(), 5 setEnd(), 2 setEndAfter(), 2 setEndBefore(), 2 setExpandCharRefs(), 5 setFault(), 6 setMustUnderstand(), 6 setNamedItem(), 2 setNamedItemNS(), 2 setNodeValue(), 2 setPrefix(), 2 setRole(), 6 setSAXHandler(), 5, 10, 10 setSchemaLocation(), 5 setStart(), 2 setStartAfter(), 2 setStartBefore(), 2 setStopOnWarning(), 5 setValidator(), 5 setValue(), 2 SetWarnDuplicateEntity(), 5 setXSL(), 10, 10 SOAPのデータ型, 6

SoapBinding, 6

SoapExceptionCode, 6

SoapRole, 6

C++用のSOAPパッケージ, 6 SoapBindingデータ型, SOAPパッケージ, 6 SoapExceptionインタフェース

getCode(), 6

getMesLang(), 6

getMessage(), 6

getSoapCode(), 6

SOAPパッケージ, 6

SoapExceptionCodeデータ型, SOAPパッケージ, 6 SoapRoleデータ型, SOAPパッケージ, 6 splitText(), 2 startDocument(), 5 startElement(), 5 startElementNS(), 5 substringData(), 2 surroundContents(), 2

T

TCtxインタフェース

~TCtx(), 1

Ctxパッケージ, 1

getEncoding(), 1

getErrHandler(), 1

getMemAllocator(), 1

isSimple(), 1

isUnicode(), 1

TCtx(), 1

TCtx(), 1 TextRefインタフェース

~TextRef(), 2

Domパッケージ, 2

splitText(), 2

TextRef(), 2

TextRef(), 2 ツールのデータ型, 7

FactoryExceptionCode, 7

C++用のツール・パッケージ, 7 toString(), 2 transform(), 10, 10 Transformerインタフェース

getTransformerId(), 10

setSAXHandler(), 10

setXSL(), 10

transform(), 10

Xslパッケージ, 10

TreeWalkerインタフェース

adjustCtx(), 2

Domパッケージ, 2

firstChild(), 2

lastChild(), 2

nextNode(), 2

nextSibling(), 2

parentNode(), 2

previousNode(), 2

previousSibling(), 2

U

unloadSchema(), 5

unparsedEntityDecl(), 5

W

WhatToShowCodeデータ型, DOMパッケージ, 2

whitespace(), 5

X

XMLDecl(), 5

XmlExceptionインタフェース

getCode(), 4

getMesLang(), 4

getMessage(), 4

OracleXmlパッケージ, 4

XPathのデータ型, 8

XPathCompIdType, 8

XPathExceptionCode, 8

XPathObjType, 8

XPathPrIdType, 8

C++用のXPathパッケージ, 8 XPathCompIdTypeデータ型, XPathパッケージ, 8 XPathExceptionインタフェース

getCode(), 8

getMesLang(), 8

getMessage(), 8

getXPathCode(), 8

XPathパッケージ, 8

XPathExceptionCodeデータ型, XPathパッケージ, 8 XPathObjectインタフェース

getNodeSet(), 8

getObjBoolean(), 8

getObjNumber(), 8

getObjString(), 8

getObjType(), 8

XPathパッケージ, 8

XPathObject(), 8

XPathObject(), 8 XPathObjTypeデータ型, XPathパッケージ, 8 XPathPrIdTypeデータ型, XPathパッケージ, 8 XPointerのデータ型, 9

XppExceptionCode, 9

XppLocType, 9

XppPrIdType, 9

C++用のXPointerパッケージ, 9 XppExceptionインタフェース

getCode(), 9

getMesLang(), 9

getMessage(), 9

getXppCode(), 9

XPointerパッケージ, 9

XppExceptionCodeデータ型, XPointerパッケージ, 9 XppLocationインタフェース

getLocType(), 9

getNode(), 9

getRange(), 9

XPointerパッケージ, 9

XppLocSetインタフェース

getItem(), 9

getSize(), 9

XPointerパッケージ, 9

XppLocTypeデータ型, XPointerパッケージ, 9 XppPrIdTypeデータ型, XPointerパッケージ, 9 Xslのデータ型, 10

XslCompIdType, 10

XslTrIdType, 10

C++用のXslパッケージ, 10 XslCompIdTypeデータ型, Xslパッケージ, 10 XSLExceptionインタフェース

Xslパッケージ, 10

XslExceptionCodeデータ型, Xslパッケージ, 10 XslTrIdTypeデータ型, Xslパッケージ, 10

Oracleの法律上の注意点

コピーライト

Copyright © 1994-2018, Oracle and/or its affiliates. All rights reserved.

ライセンス制約の保証と結果的に生じる損害の免責

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

保証免責

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクルまでご連絡ください。

制限付権利について

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

危険な用途への使用について

このソフトウェアまたはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアまたはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、Oracle Corporationおよびその関連会社は一切の責任を負いかねます。

商標と登録商標について

OracleおよびJavaはオラクルおよびその関連会社の登録商標です。その他の社名、商品名等は各社の商標または登録商標である場合があります。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

第三者のコンテンツ、製品、サービスに対する免責事項

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。適用されるお客様とOracle Corporationとの間の契約に別段の定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。適用されるお客様とOracle Corporationとの間の契約に定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

Pre-General Availability (一般提供前)版のドキュメントについて

このドキュメントがPre-General Availability (一般提供前)版の場合:

このドキュメントはPre-General Availability (一般提供前)版であり、デモおよび暫定使用のみを目的としたものです。このソフトウェアを使用するハードウェアに限定するものではありません。Oracle Corporationおよびその関連会社は、このドキュメントに関して一切の責任を負わず、いかなる保証もいたしません。また、このドキュメントを使用したことによって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。

非公開のPre-General Availability (一般提供前)版のドキュメントについて

このドキュメントが非公開のPre-General Availability (一般提供前)版の場合:

このドキュメントに含まれる情報は、情報の共有のみを目的としたものであって、顧客諮問委員会(Customer Advisory Board)のメンバーとしてのお客様の立場でのみ、またはお客様のPre-General Availability Trial Agreement (Pre-GAトライアル契約)のみに従って検討されるべきものとします。マテリアル、コード、または機能の提供をお約束するものではなく、購入決定を行う際の判断材料とすべきではありません。このドキュメントに記載されている特徴または機能の開発、リリースおよび時期については、オラクルの裁量により決定されます。

このドキュメントには、ソフトウェアまたは印刷物などの形式を問わず、オラクルが独占的な権利を有する財産的情報が含まれています。この機密資料へのアクセスと使用は、お客様とオラクルとの間で締結され、お客様が遵守に同意した、Oracle Master Agreement、Oracle License and Oracle Services Agreement (オラクル・ライセンスおよびサービスに関する契約書)、Oracle Partner Network Agreement、Oracle Distribution Agreementまたはその他のライセンス契約の条件に従うものとします。このドキュメントとその内容の開示、コピー、複製および配布には、オラクルによる事前の承諾を必要とします。このドキュメントはライセンス契約の一部となるものではなく、オラクルおよびその子会社や関連会社との契約を構成するものではありません。

ドキュメントのアクセシビリティ

オラクルのアクセシビリティについての詳細情報は、Oracle Accessibility ProgramのWebサイト(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc)を参照してください。

Oracle Supportへのアクセス

サポートをご契約のお客様には、My Oracle Supportを通して電子支援サービスを提供しています。詳細情報は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info)か、聴覚に障害のあるお客様は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs)を参照してください。