Oracle® Database

XML C APIリファレンス

11gリリース2 (11.2)

E94918-01(原本部品番号:E10770-02)

2010年5月

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

E94918-01

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

原本著者:  Roza Leyderman

原本協力者: Ian Macky、Vijay Medi

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

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

このソフトウェアまたは関連ドキュメントが、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供される場合は、次の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およびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

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

目次

例一覧

表一覧

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

はじめに

- 対象読者

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

- 関連ドキュメント

- 表記規則

XML C APIの新機能

- Oracle Database 11g リリース2(11.2)における新機能

- Oracle Database11gリリース1(11.1)の新機能

1 Cのデータ型

- Cのデータ型

- oracheck

- oraerr

- oraprop_id

- oramemctx

- oraprop

- oraprop_t

- oraprop_v

- orastream

- orastreamhdl

- xmlcmphow

- xmlctx

- xmldfoptype

- xmldfsrct

- xmlerr

- xmlevctx

- xmlevtype

- xmlhasht

- xmlistream

- xmliter

- xmlnodetype

- xmlostream

- xmlpoint

- xmlrange

- xmlsoapbind

- xmlsoapcon

- xmlsoapctx

- xmlsoaprole

- xmlshowbits

- xmlurlacc

- xmlurlhdl

- xmlurlpart

- xmlxptrloc

- xmlxptrlocset

- xmlxslobjtype

- xmlxslomethod

- xmlxvm

- xmlxvmcomp

- xmlxvmflags

- xmlxvmobjtype

- xpctx

- xpexpr

- xpobj

- xsdctx

- xslctx

- xvmobj

2 C用のコールバックAPIパッケージ

- コールバック・メソッド

- XML_ACCESS_CLOSE_F()

- XML_ACCESS_OPEN_F()

- XML_ACCESS_READ_F()

- XML_ALLOC_F()

- XML_ERRMSG_F()

- XML_FREE_F()

- XML_STREAM_CLOSE_F()

- XML_STREAM_OPEN_F()

- XML_STREAM_READ_F()

- XML_STREAM_WRITE_F()

3 C用のDOM APIパッケージ

- Attrインタフェース

- XmlDomGetAttrLocal()

- XmlDomGetAttrLocalLen()

- XmlDomGetAttrName()

- XmlDomGetAttrNameLen()

- XmlDomGetAttrPrefix()

- XmlDomGetAttrSpecified()

- XmlDomGetAttrURI()

- XmlDomGetAttrURILen()

- XmlDomGetAttrValue()

- XmlDomGetAttrValueLen()

- XmlDomGetAttrValueStream()

- XmlDomGetOwnerElem()

- XmlDomSetAttrValue()

- XmlDomSetAttrValueStream()

- CharacterDataインタフェース

- XmlDomAppendData()

- XmlDomDeleteData()

- XmlDomGetCharData()

- XmlDomGetCharDataLength()

- XmlDomInsertData()

- XmlDomReplaceData()

- XmlDomSetCharData()

- XmlDomSubstringData()

- Documentインタフェース

- XmlDomCreateAttr()

- XmlDomCreateAttrNS()

- XmlDomCreateCDATA()

- XmlDomCreateComment()

- XmlDomCreateElem()

- XmlDomCreateElemNS()

- XmlDomCreateEntityRef()

- XmlDomCreateFragment()

- XmlDomCreatePI()

- XmlDomCreateText()

- XmlDomFreeString()

- XmlDomGetBaseURI()

- XmlDomGetDTD()

- XmlDomGetDecl()

- XmlDomGetDocElem()

- XmlDomGetDocElemByID()

- XmlDomGetDocElemsByTag()

- XmlDomGetDocElemsByTagNS()

- XmlDomGetLastError()

- XmlDomGetSchema()

- XmlDomImportNode()

- XmlDomIsSchemaBased()

- XmlDomSaveString()

- XmlDomSaveString2()

- XmlDomSetBaseURI()

- XmlDomSetDTD()

- XmlDomSetDocOrder()

- XmlDomSetLastError()

- XmlDomSync()

- DocumentTypeインタフェース

- XmlDomGetDTDEntities()

- XmlDomGetDTDInternalSubset()

- XmlDomGetDTDName()

- XmlDomGetDTDNotations()

- XmlDomGetDTDPubID()

- XmlDomGetDTDSysID()

- Elementインタフェース

- XmlDomGetAttr()

- XmlDomGetAttrNS()

- XmlDomGetAttrNode()

- XmlDomGetAttrNodeNS()

- XmlDomGetChildrenByTag()

- XmlDomGetChildrenByTagNS()

- XmlDomGetElemsByTag()

- XmlDomGetElemsByTagNS()

- XmlDomGetTag()

- XmlDomHasAttr()

- XmlDomHasAttrNS()

- XmlDomRemoveAttr()

- XmlDomRemoveAttrNS()

- XmlDomRemoveAttrNode()

- XmlDomSetAttr()

- XmlDomSetAttrNS()

- XmlDomSetAttrNode()

- XmlDomSetAttrNodeNS()

- Entityインタフェース

- XmlDomGetEntityNotation()

- XmlDomGetEntityPubID()

- XmlDomGetEntitySysID()

- XmlDomGetEntityType()

- NamedNodeMapインタフェース

- XmlDomGetNamedItem()

- XmlDomGetNamedItemNS()

- XmlDomGetNodeMapItem()

- XmlDomGetNodeMapLength()

- XmlDomRemoveNamedItem()

- XmlDomRemoveNamedItemNS()

- XmlDomSetNamedItem()

- XmlDomSetNamedItemNS()

- Nodeインタフェース

- XmlDomAppendChild()

- XmlDomCleanNode()

- XmlDomCloneNode()

- XmlDomFreeNode()

- XmlDomGetAttrs()

- XmlDomGetChildNodes()

- XmlDomGetDefaultNS()

- XmlDomGetFirstChild()

- XmlDomGetFirstPfnsPair()

- XmlDomGetLastChild()

- XmlDomGetNextPfnsPair()

- XmlDomGetNextSibling()

- XmlDomGetNodeLocal()

- XmlDomGetNodeLocalLen()

- XmlDomGetNodeName()

- XmlDomGetNodeNameLen()

- XmlDomGetNodePrefix()

- XmlDomGetNodeType()

- XmlDomGetNodeURI()

- XmlDomGetNodeURILen()

- XmlDomGetNodeValue()

- XmlDomGetNodeValueLen()

- XmlDomGetNodeValueStream()

- XmlDomGetOwnerDocument()

- XmlDomGetParentNode()

- XmlDomGetPrevSibling()

- XmlDomGetPullNodeAsBinaryStream()

- XmlDomGetPullNodeAsCharacterStream()

- XmlDomGetPushNodeAsBinaryStream()

- XmlDomGetPushNodeAsCharacterStream()

- XmlDomGetSourceEntity()

- XmlDomGetSourceLine()

- XmlDomGetSourceLocation()

- XmlDomHasAttrs()

- XmlDomHasChildNodes()

- XmlDomInsertBefore()

- XmlDomNormalize()

- XmlDomNumAttrs()

- XmlDomNumChildNodes()

- XmlDomPrefixToURI()

- XmlDomRemoveChild()

- XmlDomRenameNode()

- XmlDomRenameNodeNS()

- XmlDomReplaceChild()

- XmlDomSetDefaultNS()

- XmlDomSetNodePrefix()

- XmlDomSetNodeValue()

- XmlDomSetNodeValueLen()

- XmlDomSetNodeValueStream()

- XmlDomSetPullNodeAsBinaryStream()

- XmlDomSetPullNodeAsCharacterStream()

- XmlDomSetPushNodeAsBinaryStream()

- XmlDomSetPushNodeAsCharacterStream()

- XmlDomValidate()

- NodeListインタフェース

- XmlDomFreeNodeList()

- XmlDomGetNodeListItem()

- XmlDomGetNodeListLength()

- Notationインタフェース

- XmlDomGetNotationPubID()

- XmlDomGetNotationSysID()

- ProcessingInstructionインタフェース

- XmlDomGetPIData()

- XmlDomGetPITarget()

- XmlDomSetPIData()

- Textインタフェース

- XmlDomSplitText()

4 C用のイベントAPIパッケージ

- Eventインタフェース

- XmlEvCleanPPCtx()

- XmlEvCreatePPCtx()

- XmlEvCreateSVCtx()

- XmlEvDestroyPPCtx()

- XmlEvDestroySVCtx()

- XmlEvGetAttrCount()

- XmlEvGetAttrDeclBody()

- XmlEvGetAttrDeclBody0()

- XmlEvGetAttrDeclCount()

- XmlEvGetAttrDeclElName()

- XmlEvGetAttrDeclElName0()

- XmlEvGetAttrDeclLocalName()

- XmlEvGetAttrDeclLocalName0()

- XmlEvGetAttrDeclName()

- XmlEvGetAttrDeclName0()

- XmlEvGetAttrDeclPrefix()

- XmlEvGetAttrDeclPrefix0()

- XmlEvGetAttrID()

- XmlEvGetAttrLocalName()

- XmlEvGetAttrLocalName0()

- XmlEvGetAttrName()

- XmlEvGetAttrName0()

- XmlEvGetAttrPrefix()

- XmlEvGetAttrPrefix0()

- XmlEvGetAttrURI()

- XmlEvGetAttrURI0()

- XmlEvGetAttrUriID()

- XmlEvGetAttrValue()

- XmlEvGetAttrValue0()

- XmlEvGetElDeclContent()

- XmlEvGetElDeclContent0()

- XmlEvGetEncoding()

- XmlEvGetError()

- XmlEvGetName()

- XmlEvGetName0()

- XmlEvGetLocalName()

- XmlEvGetLocalName0()

- XmlEvGetLocation()

- XmlEvGetPIData()

- XmlEvGetPIData0()

- XmlEvGetPITarget()

- XmlEvGetPITarget0()

- XmlEvGetPEIsGen()

- XmlEvGetPERepl()

- XmlEvGetPERepl0()

- XmlEvGetPrefix()

- XmlEvGetPrefix0()

- XmlEvGetPubId()

- XmlEvGetPubId0()

- XmlEvGetSysId()

- XmlEvGetSysId0()

- XmlEvGetTagID()

- XmlEvGetTagUriID()

- XmlEvGetText()

- XmlEvGetText0()

- XmlEvGetUENdata()

- XmlEvGetUENdata0()

- XmlEvGetURI()

- XmlEvGetURI0()

- XmlEvGetVersion()

- XmlEvIsEncodingSpecified()

- XmlEvIsNamespaceAttr()

- XmlEvIsStandalone()

- XmlEvNext()

- XmlEvNextTag()

- XmlEvLoadPPDoc()

- XmlEvSchemaValidate()

5 C用のOrastream APIパッケージ

- OraStreamインタフェース

- OraStreamClose()

- OraStreamHandle()

- OraStreamInit()

- OraStreamIsOpen()

- OraStreamOpen()

- OraStreamRead()

- OraStreamReadable()

- OraStreamReadChar()

- OraStreamSid()

- OraStreamTerm()

- OraStreamWrite()

- OraStreamWritable()

- OraStreamWriteChar()

6 C用の範囲APIパッケージ

- DocumentRangeインタフェース

- XmlDomCreateRange()

- Rangeインタフェース

- XmlDomRangeClone()

- XmlDomRangeCloneContents()

- XmlDomRangeCollapse()

- XmlDomRangeCompareBoundaryPoints()

- XmlDomRangeDeleteContents()

- XmlDomRangeDetach()

- XmlDomRangeExtractContents()

- XmlDomRangeGetCollapsed()

- XmlDomRangeGetCommonAncestor()

- XmlDomRangeGetDetached()

- XmlDomRangeGetEndContainer()

- XmlDomRangeGetEndOffset()

- XmlDomRangeGetStartContainer()

- XmlDomRangeGetStartOffset()

- XmlDomRangeIsConsistent()

- XmlDomRangeSelectNode()

- XmlDomRangeSelectNodeContents()

- XmlDomRangeSetEnd()

- XmlDomRangeSetEndBefore()

- XmlDomRangeSetStart()

- XmlDomRangeSetStartAfter()

- XmlDomRangeSetStartBefore()

7 C用のSAX APIパッケージ

- SAXインタフェース

- XmlSaxAttributeDecl()

- XmlSaxCDATA()

- XmlSaxCharacters()

- XmlSaxComment()

- XmlSaxElementDecl()

- XmlSaxEndDocument()

- XmlSaxEndElement()

- XmlSaxNotationDecl()

- XmlSaxPI()

- XmlSaxParsedEntityDecl()

- XmlSaxStartDocument()

- XmlSaxStartElement()

- XmlSaxStartElementNS()

- XmlSaxUnparsedEntityDecl()

- XmlSaxWhitespace()

- XmlSaxXmlDecl()

8 C用のスキーマAPIパッケージ

- Schemaインタフェース

- XmlSchemaClean()

- XmlSchemaCreate()

- XmlSchemaDestroy()

- XmlSchemaErrorWhere()

- XmlSchemaLoad()

- XmlSchemaLoadedList()

- XmlSchemaSetErrorHandler()

- XmlSchemaSetValidateOptions()

- XmlSchemaTargetNamespace()

- XmlSchemaUnload()

- XmlSchemaValidate()

- XmlSchemaVersion()

9 C用のSOAP APIパッケージ

- SOAPパッケージ・インタフェース

- XmlSoapAddBodyElement()

- XmlSoapAddFaultReason()

- XmlSoapAddFaultSubDetail()

- XmlSoapAddHeaderElement()

- XmlSoapCall()

- XmlSoapCreateConnection()

- XmlSoapCreateCtx()

- XmlSoapCreateMsg()

- XmlSoapDestroyConnection()

- XmlSoapDestroyCtx()

- XmlSoapDestroyMsg()

- XmlSoapError()

- XmlSoapGetBody()

- XmlSoapGetBodyElement()

- XmlSoapGetEnvelope()

- XmlSoapGetFault()

- XmlSoapGetHeader()

- XmlSoapGetHeaderElement()

- XmlSoapGetMustUnderstand()

- XmlSoapGetReasonLang()

- XmlSoapGetReasonNum()

- XmlSoapGetRelay()

- XmlSoapGetRole()

- XmlSoapHasFault()

- XmlSoapSetFault()

- XmlSoapSetMustUnderstand()

- XmlSoapSetRelay()

- XmlSoapSetRole()

10 C用の横断APIパッケージ

- DocumentTraversalインタフェース

- XmlDomCreateNodeIter()

- XmlDomCreateTreeWalker()

- NodeFilterインタフェース

- XMLDOM_ACCEPT_NODE_F()

- NodeIteratorインタフェース

- XmlDomIterDetach()

- XmlDomIterNextNode()

- XmlDomIterPrevNode()

- TreeWalkerインタフェース

- XmlDomWalkerFirstChild()

- XmlDomWalkerGetCurrentNode()

- XmlDomWalkerGetRoot()

- XmlDomWalkerLastChild()

- XmlDomWalkerNextNode()

- XmlDomWalkerNextSibling()

- XmlDomWalkerParentNode()

- XmlDomWalkerPrevNode()

- XmlDomWalkerPrevSibling()

- XmlDomWalkerSetCurrentNode()

- XmlDomWalkerSetRoot()

11 C用のXML APIパッケージ

- XMLインタフェース

- XmlAccess()

- XmlCreate()

- XmlCreateDTD()

- XmlCreateDocument()

- XmlDestroy()

- XmlDiff()

- XmlFreeDocument()

- XmlGetEncoding()

- XmlHasFeature()

- XmlIsSimple()

- XmlIsUnicode()

- XmlLoadDom()

- XmlLoadSax()

- XmlLoadSaxVA()

- XmlSaveDom()

- XmlVersion()

12 C用のXmlDiff APIパッケージ

- XmlDiffインタフェース

- XmlDiff()

- XmlHash()

- XmlPatch()

13 C用のXPath APIパッケージ

- XPathインタフェース

- XmlXPathCreateCtx()

- XmlXPathDestroyCtx()

- XmlXPathEval()

- XmlXPathGetObjectBoolean()

- XmlXPathGetObjectFragment()

- XmlXPathGetObjectNSetNode()

- XmlXPathGetObjectNSetNum()

- XmlXPathGetObjectNumber()

- XmlXPathGetObjectString()

- XmlXPathGetObjectType()

- XmlXPathParse()

14 C用のXPointer APIパッケージ

- XPointerインタフェース

- XmlXPointerEval()

- XPtrLocインタフェース

- XmlXPtrLocGetNode()

- XmlXPtrLocGetPoint()

- XmlXPtrLocGetRange()

- XmlXPtrLocGetType()

- XmlXPtrLocToString()

- XPtrLocSetインタフェース

- XmlXPtrLocSetFree()

- XmlXPtrLocSetGetItem()

- XmlXPtrLocSetGetLength()

15 C用のXSLT APIパッケージ

- XSLTインタフェース

- XmlXslCreate()

- XmlXslDestroy()

- XmlXslGetBaseURI()

- XmlXslGetOutput()

- XmlXslGetStylesheetDom()

- XmlXslGetTextParam()

- XmlXslProcess()

- XmlXslResetAllParams()

- XmlXslSetOutputDom()

- XmlXslSetOutputEncoding()

- XmlXslSetOutputMethod()

- XmlXslSetOutputSax()

- XmlXslSetOutputStream()

- XmlXslSetTextParam()

16 C用のXSLTVM APIパッケージ

- XSLTVMの使用

- XSLTCインタフェース

- XmlXvmCompileBuffer()

- XmlXvmCompileDom()

- XmlXvmCompileFile()

- XmlXvmCompileURI()

- XmlXvmCompileXPath()

- XmlXvmCreateComp()

- XmlXvmDestroyComp()

- XmlXvmGetBytecodeLength()

- XSLTVMインタフェース

- XMLXVM_DEBUG_F()

- XmlXvmCreate()

- XmlXvmDestroy()

- XmlXvmEvaluateXPath()

- XmlXvmGetObjectBoolean()

- XmlXvmGetObjectNSetNode()

- XmlXvmGetObjectNSetNum()

- XmlXvmGetObjectNumber()

- XmlXvmGetObjectString()

- XmlXvmGetObjectType()

- XmlXvmGetOutputDom()

- XmlXvmResetParams()

- XmlXvmSetBaseURI()

- XmlXvmSetBytecodeBuffer()

- XmlXvmSetBytecodeFile()

- XmlXvmSetBytecodeURI()

- XmlXvmSetDebugFunc()

- XmlXvmSetOutputDom()

- XmlXvmSetOutputEncoding()

- XmlXvmSetOutputSax()

- XmlXvmSetOutputStream()

- XmlXvmSetTextParam()

- XmlXvmTransformBuffer()

- XmlXvmTransformDom()

- XmlXvmTransformFile()

- XmlXvmTransformURI()

付録 Oracle Database10gリリース1の前に使用されていたAPIのマッピング

- Cパッケージの変更点

- 初期化と解析順序の変更点

- oraxmlパッケージとxmlパッケージ間のデータ型のマッピング

- oraxmlパッケージとxmlパッケージのメソッドのマッピング

索引

例一覧

- A-1 統一前のC APIを使用した初期化と解析の順序: 一度に1ドキュメント

- A-2 統一C APIを使用した初期化と解析の順序: 一度に1ドキュメント

- A-3 統一前のC APIを使用した初期化と解析の順序: 複数ドキュメントおよび同時DOMアクセス

- A-4 統一C APIを使用した初期化と解析の順序: 複数ドキュメントおよび同時DOMアクセス

表一覧

- 1-1 Cのデータ型の概要

- 2-1 コールバック・メソッドの概要

- 3-1 Attrメソッドの概要: DOMパッケージ

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

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

- 3-4 DocumentTypeメソッドの概要: DOMパッケージ

- 3-5 Elementメソッドの概要: DOMパッケージ

- 3-6 Entityメソッドの概要: DOMパッケージ

- 3-7 NamedNodeMapメソッドの概要: DOMパッケージ

- 3-8 Nodeメソッドの概要: DOMパッケージ

- 3-9 NodeListメソッドの概要: DOMパッケージ

- 3-10 NodeListメソッドの概要: DOMパッケージ

- 3-11 ProcessingInstructionメソッドの概要: DOMパッケージ

- 3-12 Textメソッドの概要: DOMパッケージ

- 4-1 Eventメソッドの概要

- 5-1 Orastreamエラー・コード

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

- 6-1 DocumentRangeメソッドの概要: 範囲パッケージ

- 6-2 Rangeメソッドの概要: 範囲パッケージ

- 7-1 SAXメソッドの概要

- 8-1 Schemaメソッドの概要

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

- 10-1 DocumentTraversalメソッドの概要: 横断パッケージ

- 10-2 NodeFileterメソッドの概要: 横断パッケージ

- 10-3 NodeIteratorメソッドの概要: 横断パッケージ

- 10-4 TreeWalkerメソッドの概要: 横断パッケージ

- 11-1 XMLメソッドの概要

- 12-1 XmlDiffメソッドの概要

- 13-1 XPathメソッドの概要

- 14-1 XPointerメソッドの概要: XPointerパッケージ

- 14-2 XPtrLocメソッドの概要: XPointerパッケージ

- 14-3 XPtrLocSetメソッドの概要: XPointerパッケージ

- 15-1 XSLTメソッドの概要

- 16-1 XSLTCメソッドの概要: XSLTVMパッケージ

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

- A-1 oraxmlパッケージとxmlパッケージでサポートされるデータ型

- A-2 oraxmlパッケージとxmlパッケージのメソッド

はじめに

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

対象読者

『Oracle Database XML C 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、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。

XML C APIの新機能

この項では、『Oracle Database XML C APIリファレンス』の新機能について説明し、追加情報の参照先を示します。

Oracle Database 11g リリース2(11.2)における新機能

Oracle Database 11gリリース2では、次の機能が新たに追加されました。

Orastreamインタフェース

orastreamパッケージは、XMLドキュメントで大規模な(64Kを超える)テキストおよびバイナリ・ノードを処理します。

この機能については、第5章「C用のOrastream APIパッケージ」を参照してください。また、次の新しいデータ型は第1章「Cのデータ型」で説明されています。

- oracheck

- oraerr

- oraprop_id

- oramemctx

- oraprop

- oraprop_t

- oraprop_v

- orastream

- orastreamhdl

Oracle Database11gリリース1(11.1)の新機能

Oracle Database11gリリース1では、次の機能が新たに追加されました。

XMLノードおよび属性へのDOMストリーム・アクセス

この機能については、第3章「C用のDOM APIパッケージ」を参照してください。次の関数のサポートが含まれます。

- XmlDomGetPullNodeAsBinaryStream()

- XmlDomGetPullNodeAsCharacterStream()

- XmlDomGetPushNodeAsBinaryStream()

- XmlDomGetPushNodeAsCharacterStream()

- XmlDomSetPullNodeAsBinaryStream()

- XmlDomSetPullNodeAsCharacterStream()

- XmlDomSetPushNodeAsBinaryStream()

- XmlDomSetPushNodeAsCharacterStream()

ノード管理

次の関数では、指定されたノードの名前を更新します。

- XmlDomRenameNode()

- XmlDomRenameNodeNS()

XML差分サポート

この機能については、第12章「C用のXmlDiff APIパッケージ」を参照してください。次の関数のサポートが含まれます。

- XmlDiff()

- XmlHash()

- XmlPatch()

イベントベースのXMLプル解析およびスケーラブルかつハイ・パフォーマンスのXML検証

この機能については、第4章「C用のイベントAPIパッケージ」を参照してください。

1 Cのデータ型

このパッケージでは、XMLコールバックの関数(または関数ポインタ)を宣言するマクロを定義します。コールバックはエラー・メッセージ処理、メモリーの割当てと解放およびストリーム操作に使用されます。

この章の内容は次のとおりです。

- Cのデータ型

関連項目:

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

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

Cのデータ型

表1-1に、Cのすべてのデータ型とその説明を示します。

表1-1 Cのデータ型の概要

データ型

目的

oracheck

データ構造を検証するためのチェック語。

oraerr

エラー・コード: 0は成功、0以外は失敗。

oraprop_id

プロパティのID。>= 0の場合は有効、< 0の場合は無効。

oramemctx

不透明なメモリー・コンテキスト。

oraprop

プロパティ名。

oraprop_t

プロパティ値タイプ。

oraprop_v

値: すべてのデータ型のストレージの結合。

orastream

不透明なストリーム・オブジェクト。

orastreamhdl

ファイル・ハンドルのストレージ。

xmlcmphow

DOM範囲の比較に使用される定数。

xmlctx

XMLセッションのすべてのドキュメントで共有されるコンテキスト。

xmldfsrct

XmlDiff操作の入力タイプを指定。

xmlerr

多くの関数により戻される、数値のエラー・コード。

xmlevctx

XMLイベント・コンテキスト。

xmlhasht

XMLツリーまたはサブツリーのハッシュ値(ダイジェスト)。

xmlistream

ユーザー定義の汎用入力ストリーム。

xmliter

DOM2 NodeIteratorとTreeWalkerの構造の制御。

xmlnodetype

ノードの数値型コード。

xmlostream

ユーザー定義の汎用出力ストリーム。

xmlpoint

XPointerのポイント位置。

xmlrange

DOM2範囲の構造の制御。

xmlsoapbind

SOAP接続のためのバインディング。

xmlsoapcon

SOAP接続オブジェクト。

xmlsoapctx

SOAP操作のコンテキスト。

xmlsoaprole

SOAPノードのロール。

xmlshowbits

表示するノードのタイプの選択に使用されるビット・フラグ。

xmlurlacc

URLからデータを取り出すための、既知のアクセス・メソッドの列挙。

xmlurlhdl

この共有体には、URLデータへのアクセスに必要なハンドル、すなわちストリームまたはstdioポインタ、ファイル・ディスクリプタなどが含まれます。

xmlurlpart

この構造にはURLのサブパートが含まれます。

xmlxptrloc

XPointer位置のデータ型。

xmlxptrlocset

XPointer位置の設定データ型。

xmlxslobjtype

戻されるXSLTオブジェクトのタイプ。

xmlxslomethod

XSLTプロセッサで生成される出力のタイプ。

xmlxvm

xmlxvm型のオブジェクトはXMLドキュメントの変換に使用されます。

xmlxvmcomp

xmlxvmcomp型のオブジェクトはXSLスタイルシートのコンパイルに使用されます。

xmlxvmflags

XSLTコンパイラの制御フラグ。

xmlxvmobjtype

XSLTVMオブジェクトのタイプ。

xpctx

XPathの最上位コンテキスト。

xpexpr

XPath式。

xpobj

XPathオブジェクト。

xsdctx

XMLSchemaバリデータのコンテキスト。

xslctx

XSLの最上位コンテキスト。

xvmobj

XSLVMプロセッサのランタイム・オブジェクト。コンテンツは内部的に使用されるため、ユーザーがアクセスすることはできません。

oracheck

データ構造を検証するためのチェック語。

定義

typedef ub4 oracheck;

oraerr

エラー・コード: 0は成功、0以外は失敗。

定義

typedef ub4 oraerr;

oraprop_id

プロパティのID。>= 0の場合は有効、< 0の場合は無効。

定義

typedef sb2 oraprop_id;

oramemctx

不透明なメモリー・コンテキスト。

定義

typedef struct oramemctx oramemctx;

oraprop

プロパティ名。

定義

typedef struct oraprop {
oratext    *name_oraprop;
oraprop_id  id_oraprop;
oraprop_t   type_oraprop;
oraprop_v   value_oraprop;
} oraprop;

oraprop_t

プロパティ値タイプ。

定義

typedef enum {
ORAPROP_TYPE_BOOLEAN,
ORAPROP_TYPE_SIGNED,
ORAPROP_TYPE_UNSIGNED,
ORAPROP_TYPE_POINTER
} oraprop_t;

oraprop_v

値: すべてのデータ型のストレージの結合。

定義

typedef union oraprop_v {
boolean b_oraprop_v;
sb4     s_oraprop_v;
ub4     u_oraprop_v;
void   *p_oraprop_v;
} oraprop_v;

orastream

不透明なストリーム・オブジェクト。

定義

typedef struct orastream orastream;

orastreamhdl

ファイル・ハンドルのストレージ。

定義

typedef union orastreamhdl {
void  *ptr_orastreamhdl;      /* generic pointer stream/file/etc */
struct {
sb4 fd_orastreamhdl;     /* file descriptor(s) [FTP needs all 3!] */
sb4 fd2_orastreamhdl;
sb4 fd3_orastreamhdl;
} fds_lpihdl;
} orastreamhdl;

xmlcmphow

DOM範囲の比較に使用される定数。

定義

typedef enum {
XMLDOM_START_TO_START ,
XMLDOM_START_TO_END   ,
XMLDOM_END_TO_END     ,
XMLDOM_END_TO_START
} xmlcmphow;

xmlctx

XMLセッションのすべてのドキュメントで共有されるコンテキスト。エンコーディング情報、低レベルのメモリー割当て関数ポインタ、エラー・メッセージの言語またはエンコーディング、およびオプションのハンドラ関数などが含まれます。ドキュメントのロード(解析)、およびDOMの作成、SAXの生成などに必要です。

定義

struct xmlctx;
typedef struct xmlctx xmlctx;

xmldfoptype

1つ以上の操作を表す操作タイプ。diffをXmlDiff()のカスタム・オペレーション・ビルダー(OB)に渡すために使用。

定義

typedef enum {
XMLDF_OP_NONE, /* Should not be set to non-zero for XMLDF_NUM_OP macro below */
XMLDF_OP_UPDATE,
XMLDF_OP_RENAME,
XMLDF_OP_DELETE,
XMLDF_OP_INSERT_BEFORE,
XMLDF_OP_APPEND
} xmldfoptype;

xmldfsrct

XmlDiff操作の入力タイプを指定。

定義

typedef enum {
XMLDF_SRCT_NONE ,    /* default is DOM */
XMLDF_SRCT_DOM,      /* DOM: doc node must be specified */
XMLDF_SRCT_FILE,     /* file name must be specified */
XMLDF_SRCT_URL,      /* URL in compiler encoding */
XMLDF_SRCT_BUFFER,   /* buffer: buffer pointer and length must be specified */
XMLDF_SRCT_FILEP,    /* FILE */
XMLDF_SRCT_OSTREAM,  /* orastream: stream pointer must be specified */
XMLDF_SRCT_DOMNODE   /* DOM node, used with XmlHash() */
} xmldfsrct;

xmlerr

多くの関数により戻される、数値のエラー・コード。値が0(ゼロ)の場合は成功を、0(ゼロ)以外の場合にはエラーを表します。

定義

typedef enum {
XMLERR_OK              , /* success return */
XMLERR_NULL_PTR        , /* NULL pointer */
XMLERR_NO_MEMORY       , /* out of memory */
XMLERR_HASH_DUP        , /* duplicate entry in hash table */
XMLERR_INTERNAL        ,  /* internal error */
XMLERR_BUFFER_OVERFLOW ,  /* name/quoted string too long */
XMLERR_BAD_CHILD       ,  /* invalid child for parent */
XMLERR_EOI             ,  /* unexpected EndOfInformation */
XMLERR_BAD_MEMCB       ,  /* invalid memory callbacks */
XMLERR_UNICODE_ALIGN   , /* Unicode data misalignment */
XMLERR_NODE_TYPE       , /* wrong node type */
XMLERR_UNCLEAN         , /* context is not clean */
XMLERR_NESTED_STRINGS  , /* internal: nested open str */
XMLERR_PROP_NOT_FOUND  , /* property not found */
XMLERR_SAVE_OVERFLOW   , /* save output overflowed */
XMLERR_NOT_IMP         , /* feature not implemented */
XMLERR_NLS_MISMATCH    , /* specify lxglo/lxd or neither*/
XMLERR_NLS_INIT        , /* error at NLS initialization */
XMLERR_LEH_INIT        , /* error at LEH initialization */
XMLERR_LML_INIT        , /* error at LML initialization */
XMLERR_LPU_INIT          /* error at LPU initialization */
} xmlerr;

xmlevctx

XMLイベント・コンテキスト。

定義

typedef  struct {
void *ctx_xmlevctx;       /* implementation specific context */
xmlevdisp disp_xmlevctx;  /* dispatch table */
ub4 checkword_xmlevctx;   /* checkword for integrity check */
ub4 flags_xmlevctx;       /* mode; default: expand_entity */
struct xmlevctx;          /* input xmlevctx; chains the XML Event context */
} xmlevctx;

xmlevtype

パーサー・プル・イベントのイベント・タイプ。

定義

typedef enum  xmlevtype {
XML_EVENT_FATAL_ERROR,            /* Fatal Error */
XML_EVENT_BEFORE_START,           /* Before Start Document */
XML_EVENT_START_DOCUMENT,         /* Indicates Start Document */
XML_EVENT_START_DTD,              /* Start DTD */
XML_EVENT_END_DTD,                /* End DTD */
XML_EVENT_NOTATION_DECLARATION,   /* Notation Decl */
XML_EVENT_PE_DECLARATION,         /* PE Decl */
XML_EVENT_UE_DECLARATION,         /* US Decl */
XML_EVENT_ELEMENT_DECLARATION,    /* Element Decl */
XML_EVENT_ATTLIST_DECLARATION,    /* Attribute Decl */
XML_EVENT_START_ELEMENT,          /* Start Element */
XML_EVENT_END_ELEMENT,            /* End Element */
XML_EVENT_CHARACTERS,             /* Characters (text) */
XML_EVENT_CHARACTERS_CONT,        /* Characters Continued */
XML_EVENT_PI,                     /* Processing Instruction */
XML_EVENT_PI_CONT,                /* Processing Instruction Continued */
XML_EVENT_COMMENT,                /* Comment */
XML_EVENT_COMMENT_CONT,           /* Comment Continued */
XML_EVENT_SPACE,                  /* White Space */
XML_EVENT_SPACE_CONT,             /* White Space Continued */
XML_EVENT_ENTITY_REFERENCE,       /* Entity Reference */
XML_EVENT_CDATA,                  /* CDATA */
XML_EVENT_CDATA_CONT,             /* CDATA continued */
XML_EVENT_START_ENTITY,           /* Start Entity */
XML_EVENT_END_ENTITY,             /* End Entity */
XML_EVENT_END_DOCUMENT,           /* End Document */
XML_EVENT_ERROR                   /* Error */
}xmlevtype;

xmlhasht

XMLツリーまたはサブツリーのハッシュ値(ダイジェスト)。

2つのXMLツリーのハッシュ値が同じである場合、非常に高い確率でそれらのツリーは同じであると考えられます。MD5アルゴリズムを使用します。

定義

struct xmlhasht {
ub4  l_xmlhasht;   /* lenght of digest in bytes */
ub1  d_xmlhasht[XMLDF_DIGEST_MAX];   /* the digest */
};
typedef struct xmlhasht xmlhasht;

xmlistream

ユーザー定義の汎用入力ストリーム。3つの関数ポインタが必要です(スタブでもかまいません)。コンテキスト・ポインタは完全なユーザー定義ポインタです。ストリームの管理に必要な状態の情報をすべて示します。このポインタはユーザー関数に最初の引数として渡されます。

定義

typedef struct xmlistream {
XML_STREAM_OPEN_F(
(*open_xmlistream),
xctx,
sctx,
path,
parts,
length);
XML_STREAM_READ_F(
(*read_xmlistream),
xctx,
sctx,
path,
dest,
size,
nraw, eoi);
XML_STREAM_CLOSE_F(
(*close_xmlistream),
xctx,
sctx);
void *ctx_xmlistream;                         /* user's stream context */
} xmlistream;

xmliter

DOM2 NodeIteratorとTreeWalkerの構造を制御します。

定義

struct xmliter {
xmlnode *root_xmliter;   /* root node of the iteration space */
xmlnode *cur_xmliter;    /* current position iterator ref node */
ub4      show_xmliter;   /* node filter mask */
void    *filt_xmliter;   /* node filter function */
boolean  attach_xmliter; /* is iterator valid? */
boolean  expan_xmliter;  /* are external entities expanded? */
boolean  before_xmliter; /* iter position before ref node? */
};
typedef struct xmliter xmliter;
typedef struct xmliter xmlwalk;

xmlnodetype

ノードの数値型コード。0は無効を意味し、1から13はDOM 1.0の標準番号です。14以上の数値は内部的に使用されます。

定義

typedef enum {
XMLDOM_NONE     , /* bogus node */
XMLDOM_ELEM     , /* element */
XMLDOM_ATTR     , /* attribute */
XMLDOM_TEXT     , /* char data not escaped by CDATA */
XMLDOM_CDATA    , /* char data escaped by CDATA */
XMLDOM_ENTREF   , /* entity reference */
XMLDOM_ENTITY   , /* entity */
XMLDOM_PI       , /* <?processing instructions?> */
XMLDOM_COMMENT  , /* <!-- Comments --> */
XMLDOM_DOC      , /* Document */
XMLDOM_DTD      , /* DTD */
XMLDOM_FRAG     , /* Document fragment */
XMLDOM_NOTATION , /* notation */

/* Oracle extensions from here on */
XMLDOM_ELEMDECL , /* DTD element declaration */
XMLDOM_ATTRDECL , /* DTD attribute declaration */

/* Content Particles (nodes in element's Content Model) */
XMLDOM_CPELEM   , /* element */
XMLDOM_CPCHOICE , /* choice (a|b) */
XMLDOM_CPSEQ    , /* sequence (a,b) */
XMLDOM_CPPCDATA , /* #PCDATA */
XMLDOM_CPSTAR   , /* '*' (zero or more) */
XMLDOM_CPPLUS   , /* '+' (one or more) */
XMLDOM_CPOPT    , /* '?' (optional) */
XMLDOM_CPEND      /* end marker */
} xmlnodetype;

xmlostream

ユーザー定義の汎用出力ストリーム。3つの関数ポインタが必要です(スタブでもかまいません)。コンテキスト・ポインタは完全なユーザー定義ポインタです。ストリームの管理に必要な状態の情報をすべて示します。このポインタはユーザー関数に最初の引数として渡されます。

定義

typedef struct xmlostream {
XML_STREAM_OPEN_F(
(*open_xmlostream),
xctx,
sctx,
path,
parts,
length);
XML_STREAM_WRITE_F(
(*write_xmlostream),
xctx,
sctx,
path,
src,
size);
XML_STREAM_CLOSE_F(
(*close_xmlostream),
xctx,
sctx);
void *ctx_xmlostream;        /* user's stream context */
} xmlostream;

xmlpoint

XPointerのポイント位置。

定義

typedef struct xmlpoint xmlpoint;

xmlrange

DOM2範囲の構造を制御します。

定義

typedef struct xmlrange {
xmlnode *startnode_xmlrange;  /* start point container */
ub4      startofst_xmlrange;  /* start point index */
xmlnode *endnode_xmlrange;    /* end point container */
ub4      endofst_xmlrange;    /* end point index */
xmlnode *doc_xmlrange;        /* document node */
xmlnode *root_xmlrange;       /* root node of the range */
boolean  collapsed_xmlrange;  /* is range collapsed? */
boolean  detached_xmlrange;   /* range invalid, invalidated?*/
} xmlrange;

xmlsoapbind

SOAP接続のためのバインディング。SOAPはメッセージを転送するためのバインディング(トランスポート)は行いません。しかし、HTTPプロトコルが十分に定義されており、現時点ではこれが唯一の選択肢です。

定義

typedef enum xmlsoapbind {
XMLSOAP_BIND_NONE ,  /* none */
XMLSOAP_BIND_HTTP    /* HTTP */ } xmlsoapbind;

xmlsoapcon

SOAP接続オブジェクト。各接続には、バインディングとエンドポイント情報を含む、このタイプのインスタンスが必要です。

定義

typedef struct xmlsoapcon xmlsoapcon;

xmlsoapctx

SOAP操作のコンテキスト。単一コンテキストのみが必要で、複数のSOAPメッセージによって共有されます。

定義

typedef struct xmlsoapctx xmlsoapctx;

xmlsoaprole

SOAPノードのロール。

定義

typedef enum xmlsoaprole {
XMLSOAP_ROLE_UNSET,   /* not specified */
XMLSOAP_ROLE_NONE,    /* "none" */
XMLSOAP_ROLE_NEXT,    /* "next" */
XMLSOAP_ROLE_ULT,     /* "ultimateReceiver" */
XMLSOAP_ROLE_OTHER    /* other - user defined */
} xmlsoaprole;

xmlshowbits

表示するノードのタイプの選択に使用されるビット・フラグ。

定義

typedef ub4 xmlshowbits;
#define XMLDOM_SHOW_ALL        ~(ub4)0
#define XMLDOM_SHOW_BIT(ntype) ((ub4)1 << (ntype))
#define XMLDOM_SHOW_ELEM       XMLDOM_SHOW_BIT(XMLDOM_ELEM)
#define XMLDOM_SHOW_ATTR       XMLDOM_SHOW_BIT(XMLDOM_ATTR)
#define XMLDOM_SHOW_TEXT       XMLDOM_SHOW_BIT(XMLDOM_TEXT)
#define XMLDOM_SHOW_CDATA      XMLDOM_SHOW_BIT(XMLDOM_CDATA)
#define XMLDOM_SHOW_ENTREF     XMLDOM_SHOW_BIT(XMLDOM_ENTREF)
#define XMLDOM_SHOW_ENTITY     XMLDOM_SHOW_BIT(XMLDOM_ENTITY)
#define XMLDOM_SHOW_PI         XMLDOM_SHOW_BIT(XMLDOM_PI)
#define XMLDOM_SHOW_COMMENT    XMLDOM_SHOW_BIT(XMLDOM_COMMENT)
#define XMLDOM_SHOW_DOC        XMLDOM_SHOW_BIT(XMLDOM_DOC)
#define XMLDOM_SHOW_DTD        XMLDOM_SHOW_BIT(XMLDOM_DTD)
#define XMLDOM_SHOW_FRAG       XMLDOM_SHOW_BIT(XMLDOM_FRAG)
#define XMLDOM_SHOW_NOTATION   XMLDOM_SHOW_BIT(XMLDOM_NOTATION)
#define XMLDOM_SHOW_DOC_TYPE   XMLDOM_SHOW_BIT(XMLDOM_DOC_TYPE)

xmlurlacc

URLからデータを取り出すための、既知のアクセス・メソッドの列挙。オープン、読込み、およびクローズの各関数を指定して、デフォルトの動作をオーバーライドすることができます。

定義

typedef enum {
XML_ACCESS_NONE    , /* not specified */
XML_ACCESS_UNKNOWN , /* specified but unknown */
XML_ACCESS_FILE    , /* filesystem access */
XML_ACCESS_HTTP    , /* HTTP */
XML_ACCESS_FTP     , /* FTP */
XML_ACCESS_GOPHER  , /* Gopher */
XML_ACCESS_ORADB   , /* Oracle DB */
XML_ACCESS_STREAM    /* user-defined stream */
} xmlurlacc;

xmlurlhdl

この共有体には、URLデータへのアクセスに必要なハンドル、すなわちストリームまたはstdioポインタ、ファイル・ディスクリプタなどが含まれます。

定義

typedef union xmlurlhdl {
void  *ptr_xmlurlhdl;  /* generic stream/file/... handle */
struct {
sb4 fd1_xmlurlhdl; /* file descriptor(s) [FTP needs all 3!] */
sb4 fd2_xmlurlhdl;
sb4 fd3_xmlurlhdl;
} fds_lpihdl;
} xmlurlhdl;

xmlurlpart

この構造にはURLのサブパートが含まれます。元のURLが解析され、NULLで終了する各パートが作業バッファにコピーされ、次に、この構造にはそれらのパートを指すデータが挿入されます。URLをhttp://user:pwd@baz.com:8080/pub/baz.html;quux=1?huh#fraggyとした場合、そのコンポーネント・パートの例が示されます。

定義

typedef struct xmlurlpart {
xmlurlacc access_xmlurlpart;   /* access method code, XMLACCESS_HTTP */
oratext   *accbuf_xmlurlpart;  /* access method name: "http" */
oratext   *host_xmlurlpart;    /* hostname:         "baz.com" */
oratext   *dir_xmlurlpart;     /* directory:        "pub" */
oratext   *file_xmlurlpart;    /* filename:         "baz.html" */
oratext   *uid_xmlurlpart;     /* userid/username:  "user" */
oratext   *passwd_xmlurlpart;  /* password:         "pwd" */
oratext   *port_xmlurlpart;    /* port (as string): "8080" */
oratext   *frag_xmlurlpart;    /* fragment:         "fraggy" */
oratext   *query_xmlurlpart;   /* query:            "huh" */
oratext   *param_xmlurlpart;   /* parameter:        "quux=1" */
ub2        portnum_xmlurlpart; /* port (as number): 8080 */
ub1        abs_xmlurlpart;     /* absolute path?     TRUE */
} xmlurlpart;

xmlxptrloc

XPointer位置のデータ型。

定義

typedef struct xmlxptrloc xmlxptrloc;

xmlxptrlocset

XPointer位置の設定データ型。

定義

typedef struct xmlxptrlocset xmlxptrlocset;

xmlxslobjtype

戻されるXSLTオブジェクトのタイプ。

定義

typedef enum xmlxslobjtype {
XMLXSL_TYPE_UNKNOWN , /* Not a defined type */
XMLXSL_TYPE_NDSET   , /* Node-set */
XMLXSL_TYPE_BOOL    , /* Boolean value */
XMLXSL_TYPE_NUM     , /* Numeric value (double) */
XMLXSL_TYPE_STR     , /* String */
XMLXSL_TYPE_FRAG      /* Document Fragment */
} xmlxslobjtype;

xmlxslomethod

XSLTプロセッサで生成される出力のタイプ。

定義

typedef enum xmlxslomethod {
XMLXSL_OUTPUT_UNKNOWN , /* Not defined */
XMLXSL_OUTPUT_XML     , /* Produce a Document Fragment */
XMLXSL_OUTPUT_STREAM  , /* Stream out formatted result */
XMLXSL_OUTPUT_HTML      /* Stream out HTML formatted result */
} xmlxslomethod;

xmlxvm

xmlxvm型のオブジェクトはXMLドキュメントの変換に使用されます。xmlxvmのコンテンツは内部的に使用されるため、ユーザーからはアクセスできません。

定義

struct xmlxvm;
typedef struct xmlxvm xmlxvm;

xmlxvmcomp

xmlxvmcomp型のオブジェクトはXSLスタイルシートのコンパイルに使用されます。xmlxvmcompのコンテンツは内部的に使用されるため、ユーザーからはアクセスできません。

定義

struct xmlxvmcomp;
typedef struct xmlxvmcomp xmlxvmcomp;

xmlxvmflags

XSLTコンパイラの制御フラグ。

- XMLXVM_DEBUGはコンパイラに対して、バイトコードへのデバッグ情報の挿入を強制します。

- XMLXVM_STRIPSPACEはxsl:strip-space elements="*"と同じ動作を強制します。

定義

typedef ub4 xmlxvmflag;
#define XMLXVM_NOFLAG
#define XMLXVM_DEBUG      /* insert debug info into bytecode */
#define XMLXVM_STRIPSPACE /* same as xsl:strip-space elements="*" */

xmlxvmobjtype

XSLTVMオブジェクトのタイプ。

定義

typedef enum xmlxvmobjtype {
XMLXVM_TYPE_UNKNOWN ,
XMLXVM_TYPE_NDSET   ,
XMLXVM_TYPE_BOOL    ,
XMLXVM_TYPE_NUM     ,
XMLXVM_TYPE_STR     ,
XMLXVM_TYPE_FRAG
} xmlxvmobjtype;

xpctx

XPathの最上位コンテキスト。

定義

struct xpctx;
typedef struct xpctx xpctx;

xpexpr

XPath式。

定義

struct xpexpr;
typedef struct xpexpr xpexpr;

xpobj

XPathオブジェクト。

定義

struct xpobj;typedef struct xpobj xpobj;

xsdctx

XMLスキーマ・バリデータ・コンテキスト。XmlSchemaCreateにより作成され、ほとんどのスキーマ関数に渡されます。

定義

# define XSDCTX_DEFINED
struct xsdctx; typedef struct xsdctx xsdctx;

xslctx

XSLの最上位コンテキスト。

定義

struct xslctx;
typedef struct xslctx xslctx;

xvmobj

XSLVMプロセッサのランタイム・オブジェクト。コンテンツは内部的に使用されるため、ユーザーがアクセスすることはできません。

定義

struct xvmobj;
typedef struct xvmobj xvmobj;

2 C用のコールバックAPIパッケージ

このパッケージでは、XMLコールバックの関数(または関数ポインタ)を宣言するマクロを定義します。コールバックはエラー・メッセージ処理、メモリーの割当てと解放およびストリーム操作に使用されます。

この章の内容は次のとおりです。

- コールバック・メソッド

関連項目:

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

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

コールバック・メソッド

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

表2-1 コールバック・メソッドの概要

関数

概要

XML_ACCESS_CLOSE_F()

ユーザー定義のアクセス・メソッド・クローズ・コールバック

XML_ACCESS_OPEN_F()

ユーザー定義のアクセス・メソッド・オープン・コールバック

XML_ACCESS_READ_F()

ユーザー定義のアクセス・メソッド読込みコールバック

XML_ALLOC_F()

低レベルのメモリー割当て

XML_ERRMSG_F()

エラー・メッセージ処理

XML_FREE_F()

低レベルのメモリー解放

XML_STREAM_CLOSE_F()

ユーザー定義のストリーム・クローズ・コールバック

XML_STREAM_OPEN_F()

ユーザー定義のストリーム・オープン・コールバック

XML_STREAM_READ_F()

ユーザー定義のストリーム読込みコールバック

XML_STREAM_WRITE_F()

ユーザー定義のストリーム書込みコールバック

XML_ACCESS_CLOSE_F()

このマクロはURLへのアクセスに使用する、クローズ関数コールバックのプロトタイプを定義します。

構文

#define XML_ACCESS_CLOSE_F(func, ctx, uh)
xmlerr func(
void *ctx,
xmlurlhdl *uh);

パラメータ

IN/OUT

説明

ctx

IN

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

uh

IN

URLハンドル

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

関連項目:
XML_ACCESS_OPEN_F()、XML_ACCESS_READ_F()

XML_ACCESS_OPEN_F()

このマクロはURLへのアクセスに使用する、オープン関数コールバックのプロトタイプを定義します。

構文

#define XML_ACCESS_OPEN_F(func, ctx, uri, parts, length, uh)
xmlerr func(
void *ctx,
oratext *uri,
xmlurlpart *parts,
ubig_ora *length,
xmlurlhdl *uh);

パラメータ

IN/OUT

説明

ctx

IN

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

uri

IN

オープンされるURI

parts

IN

コンポーネントに分割されたURI

length

OUT

入力データの長さがわかっている場合は合計の長さ、わからない場合は0

uh

IN

URLハンドル

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

関連項目:
XML_ACCESS_CLOSE_F()、XML_ACCESS_READ_F()

XML_ACCESS_READ_F()

このマクロはURLへのアクセスに使用する、読込み関数コールバックのプロトタイプを定義します。

構文

#define XML_ACCESS_READ_F(func, ctx, uh, data, nraw, eoi)
xmlerr func(
void *ctx,
xmlurlhdl *uh,
oratext **data,
ubig_ora *nraw,
ub1 *eoi);

パラメータ

IN/OUT

説明

ctx

IN

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

uh

IN

URLハンドル

data

IN/OUT

受信者のデータ・バッファ。データの先頭にリセット

nraw

OUT

読み込まれる実際のデータ・バイト数

eoi

OUT

情報の終わりへのシグナル、最後のチャンク

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

関連項目:
XML_ACCESS_OPEN_F()、XML_ACCESS_CLOSE_F()

XML_ALLOC_F()

このマクロはユーザーが指定する低レベル・メモリーalloc関数のプロトタイプを定義します。アロケータが指定されない場合、mallocが使用されます。この関数によるメモリーがゼロにならないようにしてください。XML_FREE_F()に対応します。

構文

#define XML_ALLOC_F(func, mctx, size)
void *func(
void *mctx,
size_t size);

パラメータ

IN/OUT

説明

mctx

IN

低レベルのメモリー・コンテキスト

size

IN

割り当てられるバイト数

戻り値

(void *) 割り当てられたメモリー数。

関連項目:
XML_FREE_F()

XML_ERRMSG_F()

このマクロはエラー・メッセージ処理関数のプロトタイプを定義します。XML初期化の際にエラー・メッセージ・コールバックが割り当てられない場合、エラーはstderrに出力されます。ハンドラが指定されている場合、stderrへの出力のかわりにハンドラが呼び出されます。

構文

#define XML_ERRMSG_F(func, ectx, msg, err)
void func(
void *ectx,
oratext *msg,
xmlerr err);

パラメータ

IN/OUT

説明

ectx

IN

エラー・メッセージ・コンテキスト

msg

IN

エラー・メッセージのテキスト

err

IN

数値のエラー・コード

関連項目:
第11章「C用のXML APIパッケージ」のXmlCreate()

XML_FREE_F()

このマクロはユーザーが指定する低レベル・メモリー解放関数のプロトタイプを定義します。アロケータが指定されない場合、free()が使用されます。XML_ALLOC_F()に対応します。

構文

#define XML_FREE_F(func, mctx, ptr)
void func(
void *mctx,
void *ptr);

パラメータ

IN/OUT

説明

mctx

IN

低レベルのメモリー・コンテキスト

ptr

IN

解放されるメモリー

XML_STREAM_CLOSE_F()

このマクロはオープン・ソースをクローズし、そのリソースを解放するためにコールされるクローズ関数コールバックのプロトタイプを定義します。

構文

#define XML_STREAM_CLOSE_F(func, xctx, sctx)
void func(
xmlctx *xctx,
void *sctx);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

sctx

IN

ユーザー定義のストリーム・コンテキスト

関連項目:
XML_STREAM_OPEN_F()、XML_STREAM_READ_F()、XML_STREAM_WRITE_F()

XML_STREAM_OPEN_F()

このマクロは、入力ソースをオープンするために1回コールされる、オープン関数コールバックのプロトタイプを定義します。この関数は、成功するとXMLERR_OKを戻します。

構文

#define XML_STREAM_OPEN_F(func, xctx, sctx, path, parts, length)
xmlerr func(
xmlctx *xctx,
void *sctx,
oratext *path,
void *parts,
ubig_ora *length);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

sctx

IN

ユーザー定義のストリーム・コンテキスト

path

IN

オープンするURIへのフルパス

parts

IN

コンポーネントに分割されたURI(不透明ポインタ)

length

(OUT)

入力データの長さがわかっている場合は合計の長さ、わからない場合は0

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

関連項目:
XML_STREAM_CLOSE_F()、XML_STREAM_READ_F()、XML_STREAM_WRITE_F()

XML_STREAM_READ_F()

このマクロは、オープン・ソースのデータをバッファに読み込むためにコールされ、読み込まれるバイト数(エラー時は0)を戻す、読込み関数コールバックのプロトタイプを定義します。　　eoiフラグは、これがデータの最終ブロックかどうかを判断します。

EOIでは、クローズ関数が自動的にコールされます。

構文

#define XML_STREAM_READ_F(func, xctx, sctx, path, dest, size, nraw, eoi)
xmlerr func(
xmlctx *xctx,
void *sctx,
oratext *path,
oratext *dest,
size_t size,
sbig_ora *nraw,
boolean *eoi);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

sctx

IN

ユーザー定義のストリーム・コンテキスト

path

IN

(エラー・メッセージの)オープン・ソースのフルURI

dest

(OUT)

データの読込み先の宛先バッファ

size

IN

宛先バッファのサイズ

nraw

(OUT)

読み込まれるバイト数

eoi

(OUT)

情報の終わりへのシグナル、最後のチャンク

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

関連項目:
XML_STREAM_OPEN_F()、XML_STREAM_CLOSE_F()、XML_STREAM_WRITE_F()

XML_STREAM_WRITE_F()

このマクロはユーザー定義のストリームにデータを書き込むためにコールされる、書込み関数コールバックのプロトタイプを定義します。

構文

#define XML_STREAM_WRITE_F(func, xctx, sctx, path, src, size)
xmlerr func(
xmlctx *xctx,
void *sctx,
oratext *path,
oratext *src,
size_t size);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

sctx

IN

ユーザー定義のストリーム・コンテキスト

path

IN

(エラー・メッセージの)オープン・ソースのフルURI

src

IN

データを読み込むソース・バッファ

size

IN

ソースのサイズ(バイト)

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

関連項目:
XML_STREAM_OPEN_F()、XML_STREAM_CLOSE_F()、XML_STREAM_READ_F()

3 C用のDOM APIパッケージ

この実装は、REC-DOM-Level-1-19981001に準拠しています。DOM標準はオブジェクト指向であるため、C言語用にいくつかの変更が行われました。

- 再利用される関数名を拡張する必要があります。AttrインタフェースのgetValueには、DOM2のgetNodeValueによって設定されるパターンと一致する一意の名前XmlDomGetAttrValueがあります。

- 標準を超えてDOMを拡張するために、関数が追加されました。その一例が、子ノードの数を戻すXmlDomNumChildNodesです。

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

- Attrインタフェース

- CharacterDataインタフェース

- Documentインタフェース

- DocumentTypeインタフェース

- Elementインタフェース

- Entityインタフェース

- NamedNodeMapインタフェース

- Nodeインタフェース

- NodeListインタフェース

- Notationインタフェース

- ProcessingInstructionインタフェース

- Textインタフェース

関連項目:

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

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

Attrインタフェース

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

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

関数

概要

XmlDomGetAttrLocal()

属性の名前空間のローカル名を、NULLで終了する文字列として戻します。

XmlDomGetAttrLocalLen()

属性の名前空間のローカル名を、長さがエンコードされた文字列として戻します。

XmlDomGetAttrName()

属性の名前を、NULLで終了する文字列として戻します。

XmlDomGetAttrNameLen()

属性の名前を、長さがエンコードされた文字列として戻します。

XmlDomGetAttrPrefix()

属性の名前空間の接頭辞を戻します。

XmlDomGetAttrSpecified()

属性が明示的に作成されたかどうかを示すフラグを戻します。

XmlDomGetAttrURI()

属性の名前空間URIを、NULLで終了する文字列として戻します。

XmlDomGetAttrURILen()

属性の名前空間URIを、長さがエンコードされた文字列として戻します。

XmlDomGetAttrValue()

属性の値を、NULLで終了する文字列として戻します。

XmlDomGetAttrValueLen()

属性の値を、長さがエンコードされた文字列として戻します。

XmlDomGetAttrValueStream()

属性値のストリーム形式、つまりチャンクを取得します。

XmlDomGetOwnerElem()

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

XmlDomSetAttrValue()

属性の値を設定します。

XmlDomSetAttrValueStream()

属性値のストリーム形式(チャンク)を設定します。

XmlDomGetAttrLocal()

(データ・エンコーディングの)属性の名前空間のローカル名を戻します。属性名が完全に修飾されていない(接頭辞がない)場合、ローカル名は属性名と同じになります。

長さがエンコードされたバージョンは、XmlDomGetAttrURILenとして使用できます。これは、ローカル名をポインタおよび長さとして戻し、データがXMLTypeバックエンドのデータストアを使用するとわかっている場合に使用します。

構文

oratext* XmlDomGetAttrLocal(
xmlctx *xctx,
xmlattrnode *attr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

戻り値

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

関連項目:
XmlDomGetAttrLocalLen()、XmlDomGetAttrName()、XmlDomGetAttrURI()、XmlDomGetAttrPrefix()

XmlDomGetAttrLocalLen()

(データ・エンコーディングの)属性の名前空間のローカル名を戻します。属性名が完全に修飾されていない(接頭辞がない)場合、ローカル名は属性名と同じになります。

NULLで終了するバージョンはXmlDomGetAttrLocalとして使用でき、これはローカル名をNULLで終了する文字列として戻します。バッキング・ストアがXMLTypeであるとわかっている場合、属性のデータは、長さがエンコードされたデータとして内部的に格納されます。長さに基づくGetXXX関数を使用すると、データをコピーしたり、データをNULLで終了する必要がなくなります。

両方の入力バッファがNULL以外で、入力バッファの長さが0(ゼロ)以外の場合、値は入力バッファに格納されます。それ以外の場合、実装は独自のバッファを戻します。

実際の長さがbuflenより大きい場合、切り捨てられた値がバッファにコピーされ、lenが実際の長さを戻します。

構文

oratext* XmlDomGetAttrLocalLen(
xmlctx *xctx,
xmlattrnode *attr,
oratext *buf,
ub4 buflen,
ub4 *len);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

buf

IN

入力バッファ(オプション)

buflen

IN

入力バッファ長(オプション)

len

OUT

ローカル名の長さ(文字数)

戻り値

(oratext *) Attrのローカル名(データ・エンコーディング)。

関連項目:
XmlDomGetAttrLocal()、XmlDomGetAttrName()、XmlDomGetAttrURI()、XmlDomGetAttrPrefix()

XmlDomGetAttrName()

(データ・エンコーディングの)属性の完全修飾名を、NULLで終了する文字列として戻します。たとえば、bar\0、foo:bar\0などです。

長さがエンコードされたバージョンは、XmlDomGetAttrNameLenとして使用できます。これは、属性名をポインタおよび長さとして戻し、データがXMLTypeバックエンドのデータストアを使用するとわかっている場合に使用します。

構文

oratext* XmlDomGetAttrName(
xmlctx *xctx,
xmlattrnode *attr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

戻り値

(oratext *) 属性名(データ・エンコーディング)。

関連項目:
XmlDomGetAttrNameLen()、XmlDomGetAttrURI()、XmlDomGetAttrPrefix()、XmlDomGetAttrLocal()

XmlDomGetAttrNameLen()

(データ・エンコーディングの)属性の完全修飾名を、長さがエンコードされた文字列として戻します。たとえば、("bar", 3)、("foo:bar", 7)などです。

NULLで終了するバージョンはXmlDomGetAttrNameとして使用でき、これは属性名をNULLで終了する文字列として戻します。バッキング・ストアがXMLTypeであるとわかっている場合、属性のデータは、長さがエンコードされたデータとして内部的に格納されます。長さに基づくGetXXX()関数を使用すると、データをコピーしたり、データをNULLで終了する必要がなくなります。

両方の入力バッファがNULL以外で、入力バッファの長さが0(ゼロ)以外の場合、値は入力バッファに格納されます。それ以外の場合、実装は独自のバッファを戻します。

実際の長さがbuflenより大きい場合、切り捨てられた値がバッファにコピーされ、lenが実際の長さを戻します。

構文

oratext* XmlDomGetAttrNameLen(
xmlctx *xctx,
xmlattrnode *attr,
oratext *buf,
ub4 buflen,
ub4 *len);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

buf

IN

入力バッファ(オプション)

buflen

IN

入力バッファ長(オプション)

len

OUT

ローカル名の長さ(文字数)

戻り値

(oratext *) 属性名(データ・エンコーディング)。

関連項目:
XmlDomGetAttrName()、XmlDomGetAttrURI()、XmlDomGetAttrPrefix()、XmlDomGetAttrLocal()

XmlDomGetAttrPrefix()

(データ・エンコーディングの)属性の名前空間の接頭辞を戻します。属性名が完全に修飾されていない(接頭辞がない)場合は、NULLを戻します。

構文

oratext* XmlDomGetAttrPrefix(
xmlctx *xctx,
xmlattrnode *attr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

戻り値

(oratext *) 属性の名前空間の接頭辞(データ・エンコーディング)またはNULL。

関連項目:
XmlDomGetAttrName()、XmlDomGetAttrURI()、XmlDomGetAttrLocal()

XmlDomGetAttrSpecified()

属性の'specified'フラグを戻します。元のドキュメントで属性に値が明示的に指定されている場合はTRUE、それ以外の場合はFALSEを戻します。ノードが属性でない場合は、FALSEを戻します。ユーザーがDOMを介して属性値を設定した場合、specifiedフラグはTRUEとなります。属性をデフォルト値(ある場合)に戻すには、属性を削除する必要があります。これにより、デフォルト値を使用して属性が自動的に再作成されます(specifiedはFALSEになります)。

構文

boolean XmlDomGetAttrSpecified(
xmlctx *xctx,
xmlattrnode *attr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

戻り値

(boolean) 属性のspecifiedフラグ。

関連項目:
XmlDomSetAttrValue()

XmlDomGetAttrURI()

(データ・エンコーディングの)属性の名前空間URIを戻します。属性名が修飾されていない(名前空間の接頭辞が含まれない)場合は、ノードが作成されたときに、デフォルトの名前空間が使用されます(NULLになる可能性があります)。

長さがエンコードされたバージョンは、XmlDomGetAttrURILenとして使用できます。これは、URIをポインタおよび長さとして戻し、データがXMLTypeバックエンドのデータストアを使用するとわかっている場合に使用します。

構文

oratext* XmlDomGetAttrURI(
xmlctx *xctx,
xmlattrnode *attr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

戻り値

(oratext *) 属性の名前空間URI(データ・エンコーディング)またはNULL。

関連項目:
XmlDomGetAttrURILen()、XmlDomGetAttrPrefix()、XmlDomGetAttrLocal()

XmlDomGetAttrURILen()

(データ・エンコーディングの)属性の名前空間URIを、長さがエンコードされた文字列として戻します。属性名が修飾されていない(名前空間の接頭辞が含まれない)場合は、ノードが作成されたときに、デフォルトの名前空間が使用されます(NULLになる可能性があります)。

NULLで終了するバージョンはXmlDomGetAttrURIとして使用でき、これはURIをNULLで終了する文字列として戻します。バッキング・ストアがXMLTypeであるとわかっている場合、属性のデータは、長さがエンコードされたデータとして内部的に格納されます。長さに基づくGet関数を使用すると、データをコピーしたり、データをNULLで終了する必要がなくなります。

両方の入力バッファがNULL以外で、入力バッファの長さが0(ゼロ)以外の場合、値は入力バッファに格納されます。それ以外の場合、実装は独自のバッファを戻します。

実際の長さがbuflenより大きい場合、切り捨てられた値がバッファにコピーされ、lenが実際の長さを戻します。

構文

oratext* XmlDomGetAttrURILen(
xmlctx *xctx,
xmlattrnode *attr,
oratext *buf,
ub4 buflen,
ub4 *len);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

buf

IN

入力バッファ(オプション)

buflen

IN

入力バッファ長(オプション)

len

OUT

URIの長さ(文字数)

戻り値

(oratext *) 属性の名前空間URI(データ・エンコーディング)またはNULL。

関連項目:
XmlDomGetAttrURI()、XmlDomGetAttrPrefix()、XmlDomGetAttrLocal()

XmlDomGetAttrValue()

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

長さがエンコードされたバージョンは、XmlDomGetAttrValueLenとして使用できます。これは、属性値をポインタおよび長さとして戻し、データがXMLTypeバックエンドのデータストアを使用するとわかっている場合に使用します。

構文

oratext* XmlDomGetAttrValue(
xmlctx *xctx,
xmlattrnode *attr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

戻り値

(oratext*) 属性値。

関連項目:
XmlDomGetAttrValueLen()、XmlDomSetAttrValue()

XmlDomGetAttrValueLen()

(データ・エンコーディングの)属性の値(文字データ)を、長さがエンコードされた文字列として戻します。文字および汎用エンティティが置換されています。

NULLで終了するバージョンはXmlDomGetAttrValueとして使用でき、これは属性値をNULLで終了する文字列として戻します。バッキング・ストアがXMLTypeであるとわかっている場合、属性のデータは、長さがエンコードされたデータとして内部的に格納されます。長さに基づくGetXXX()関数を使用すると、データをコピーしたり、データをNULLで終了する必要がなくなります。

両方の入力バッファがNULL以外で、入力バッファの長さが0(ゼロ)以外の場合、値は入力バッファに格納されます。それ以外の場合、実装は独自のバッファを戻します。

実際の長さがbuflenより大きい場合、切り捨てられた値がバッファにコピーされ、lenが実際の長さを戻します。

構文

oratext* XmlDomGetAttrValueLen(
xmlctx *xctx,
xmlattrnode *attr,
oratext *buf,
ub4 buflen,
ub4 *len);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

buf

IN

入力バッファ(オプション)

buflen

IN

入力バッファ長(オプション)

len

OUT

属性値の長さ(文字数)

戻り値

(oratext*) 属性値。

関連項目:
XmlDomGetAttrValue()、XmlDomSetAttrValue()

XmlDomGetAttrValueStream()

属性の大きい値(対応する文字データ)を戻し、分割してユーザーの出力ストリームに送信します。非常に大きいデータの場合、単一の連続するチャンクとして効率的に格納できるとはかぎりません。この関数は、そのタイプのチャンク・データへのアクセスに使用します。

構文

xmlerr XmlDomGetAttrValueStream(
xmlctx *xctx,
xmlnode *attr,
xmlostream *ostream);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

ostream

IN

出力ストリーム・オブジェクト

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

XmlDomGetOwnerElem()

属性に対応するElementノードを戻します。各attrは要素(唯一の要素)に属するか、または分離されておりDOMツリーの一部ではありません。前者の場合は要素ノードが戻されます。attrが未割当の場合はNULLが戻されます。

構文

xmlelemnode* XmlDomGetOwnerElem(
xmlctx *xctx,
xmlattrnode *attr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

戻り値

(xmlelemnode *) 属性の要素ノード(またはNULL)。

関連項目:
XmlDomGetOwnerDocument()

XmlDomSetAttrValue()

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

構文

void XmlDomSetAttrValue(
xmlctx *xctx,
xmlattrnode *attr,
oratext *value);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

value

IN

新しい属性の値(データ・エンコーディング)

関連項目:
XmlDomGetAttrValue()

XmlDomSetAttrValueStream()

属性の大きい値(対応する文字データ)を、入力ストリームとは別に設定します。非常に大きいデータの場合、単一の連続するチャンクとして効率的に格納できるとはかぎりません。この関数は、そのタイプのチャンク・データへのアクセスに使用します。

構文

xmlerr XmlDomSetAttrValueStream(
xmlctx *xctx,
xmlnode *attr,
xmlistream *istream);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

attr

IN

属性ノード

isream

IN

入力ストリーム

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

CharacterDataインタフェース

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

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

関数

概要

XmlDomAppendData()

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

XmlDomDeleteData()

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

XmlDomGetCharData()

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

XmlDomGetCharDataLength()

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

XmlDomInsertData()

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

XmlDomReplaceData()

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

XmlDomSetCharData()

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

XmlDomSubstringData()

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

XmlDomAppendData()

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

新しいノード・データはDOMによって割当ておよび管理されますが、前のノード値がユーザーによって割当ておよび管理されていた場合、新しいノード・データが前のノード値を解放します。これにより、前のノード値が戻されます。

構文

void XmlDomAppendData(
xmlctx *xctx,
xmlnode *node,
oratext *data,
oratext **old);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

CharacterDataノード

data

IN

追加するデータ(データ・エンコーディング)

old

OUT

ノードの前のデータ(データ・エンコーディング)

関連項目:
XmlDomGetCharData()、XmlDomInsertData()、XmlDomDeleteData()、XmlDomReplaceData()、XmlDomSplitText()

XmlDomDeleteData()

CharacterDataノードのデータから一定範囲の文字を削除します。ノードがテキスト、コメントまたはCDATAではない場合、またはoffsetが元のデータの範囲外にある場合は、処理を行いません。offsetは0(ゼロ)から始まるため、データの先頭はoffset 0(ゼロ)で表されます。offsetおよびcountは、バイト数ではなく文字数です。offsetおよびcountの合計がデータ長を超える場合、offsetからデータの最後の文字までがすべて削除されます。

新しいノード・データはDOMによって割当ておよび管理されますが、前のノード値がユーザーによって割当ておよび管理されていた場合、新しいノード・データが前のノード値を解放します。これにより、前のノード値が戻されます。

構文

void XmlDomDeleteData(
xmlctx *xctx,
xmlnode *node,
ub4 offset,
ub4 count,
oratext **old);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

CharacterDataノード

offset

IN

削除を開始する文字のオフセット

count

IN

削除する文字数

old

OUT

ノードの前のデータ(データ・エンコーディング)

関連項目:
XmlDomGetCharData()、XmlDomAppendData()、XmlDomInsertData()、XmlDomReplaceData()、XmlDomSplitText()

XmlDomGetCharData()

データ・エンコーディングのCharacterDataノードのデータ(テキスト、コメントまたはCDATAの型)を戻します。ノードのタイプがそれ以外の場合、またはデータがない場合は、NULLを戻します。

構文

oratext* XmlDomGetCharData(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

CharacterDataノード(Text、CommentまたはCDATA)

戻り値

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

関連項目:
XmlDomSetCharData()、XmlDomCreateText()、XmlDomCreateComment()、XmlDomCreateCDATA()

XmlDomGetCharDataLength()

CharacterDataノードのデータ長およびタイプ(Text、CommentまたはCDATA)を、バイト数ではなく文字数で戻します。ノードのタイプがそれ以外の場合は、0(ゼロ)を戻します。

構文

ub4 XmlDomGetCharDataLength(
xmlctx *xctx,
xmlnode *cdata);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

CharacterDataノード(Text、CommentまたはCDATA)

戻り値

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

関連項目:
XmlDomGetCharData()

XmlDomInsertData()

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

新しいノード・データはDOMによって割当ておよび管理されますが、前のノード値がユーザーによって割当ておよび管理されていた場合、新しいノード・データが前のノード値を解放します。これにより、前のノード値が戻されます。

構文

void XmlDomInsertData(
xmlctx *xctx,
xmlnode *node,
ub4 offset,
oratext *arg,
oratext **old);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

CharacterDataノード(Text、CommentまたはCDATA)

offset

IN

挿入を開始する文字のオフセット

arg

IN

挿入するデータ

old

OUT

ノードの前のデータ(データ・エンコーディング)

関連項目:
XmlDomGetCharData()、XmlDomAppendData()、XmlDomDeleteData()、XmlDomReplaceData()、XmlDomSplitText()

XmlDomReplaceData()

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

新しいノード・データはDOMによって割当ておよび管理されますが、前のノード値がユーザーによって割当ておよび管理されていた場合、新しいノード・データが前のノード値を解放します。これにより、前のノード値が戻されます。

構文

void XmlDomReplaceData(
xmlctx *xctx,
xmlnode *node,
ub4 offset,
ub4 count,
oratext *arg,
oratext **old);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

CharacterDataノード(Text、CommentまたはCDATA)

offset

IN

置換を開始する文字のオフセット

count

IN

置換する文字数

arg

IN

置換する部分文字列(データ・エンコーディング)

old

OUT

ノードの前のデータ(データ・エンコーディング)

関連項目:
XmlDomGetCharData()、XmlDomAppendData()、XmlDomInsertData()、XmlDomDeleteData()、XmlDomSplitText()

XmlDomSetCharData()

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

構文

void XmlDomSetCharData(
xmlctx *xctx,
xmlnode *node,
oratext *data);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

CharacterDataノード(Text、CommentまたはCDATA)

data

IN

ノードの新しいデータ

関連項目:
XmlDomGetCharData()

XmlDomSubstringData()

CharacterDataノードの文字データの範囲および型(Text、CommentまたはCDATA)を戻します。ノードのタイプがそれ以外の場合、またはcountが0(ゼロ)の場合は、NULLを戻します。データはデータ・エンコーディングに含まれるため、オフセットおよびカウントはバイト数ではなく文字数で表されます。文字列の先頭は、offset 0です。offsetおよびcountの合計がデータ長を超える場合、データの最後までの文字がすべて戻されます。

部分文字列は、ノードのドキュメントのメモリー・プール内に永続的に割り当てられます。部分文字列を解放するには、XmlDomFreeStringを使用します。

構文

oratext* XmlDomSubstringData(
xmlctx *xctx,
xmlnode *node,
ub4 offset,
ub4 count);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

CharacterDataノード(Text、CommentまたはCDATA)

offset

IN

部分文字列の抽出を開始する文字のオフセット

count

IN

抽出する文字数

戻り値

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

関連項目:
XmlDomAppendData()、XmlDomInsertData()、XmlDomDeleteData()、XmlDomReplaceData()、XmlDomSplitText()、XmlDomFreeString()

Documentインタフェース

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

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

関数

概要

XmlDomCreateAttr()

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

XmlDomCreateAttrNS()

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

XmlDomCreateCDATA()

CDATAノードを作成します。

XmlDomCreateComment()

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

XmlDomCreateElem()

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

XmlDomCreateElemNS()

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

XmlDomCreateEntityRef()

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

XmlDomCreateFragment()

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

XmlDomCreatePI()

PIノードを作成します。

XmlDomCreateText()

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

XmlDomFreeString()

XmlDomSubstringDataなどによって割り当てられた文字列を解放します。

XmlDomGetBaseURI()

ドキュメントのベースURIを戻します。

XmlDomGetDTD()

ドキュメントのDTDを取得します。

XmlDomGetDecl()

ドキュメントのXMLDecl情報を戻します。

XmlDomGetDocElem()

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

XmlDomGetDocElemByID()

ドキュメント要素に指定されたIDを取得します。

XmlDomGetDocElemsByTag()

ドキュメント要素を取得します。

XmlDomGetDocElemsByTagNS()

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

XmlDomGetLastError()

ドキュメントの最後のエラー・コードを戻します。

XmlDomGetSchema()

ドキュメントに対応するスキーマのURIを戻します。

XmlDomImportNode()

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

XmlDomIsSchemaBased()

スキーマがドキュメントに対応するかどうかを示します。

XmlDomSaveString()

ドキュメントのメモリー・プールに文字列を永続的に保存します。

XmlDomSaveString2()

ドキュメントのメモリー・プールにUnicode文字列を永続的に保存します。

XmlDomSetDTD()

ドキュメントのDTDを設定します。

XmlDomSetDocOrder()

すべてのノードのドキュメント順序を設定します。

XmlDomSetLastError()

ドキュメントの最後のエラー・コードを設定します。

XmlDomSync()

ドキュメントの永続バージョンをそのDOMと同期化します。

XmlDomCreateAttr()

(データ・エンコーディングで)指定された名前と値を使用して、属性ノードを作成します。この関数は、属性の初期値を設定できないDOM仕様とは異なることに注意してください(XmlDomSetAttrValueを参照)。名前は必須ですが、値はNULLの可能性があり、どちらも検証、変換、確認は行われません。

これは、名前空間を認識しない関数です(XmlDomCreateAttrNSを参照)。新しい属性には、NULLの名前空間URIおよび接頭辞が設定され、指定された属性名が修飾名の場合でも、属性のローカル名は属性名と同じになります。

初期値が指定された場合、属性のspecifiedフラグはTRUEになります。

新しいノードは、親がなく孤立しているため、XmlDomAppendChildなどを使用して、DOMツリーに追加する必要があります。

1回の操作で属性を作成および追加する「XmlDomSetAttr」を参照してください。

名前および値はコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

xmlattrnode* XmlDomCreateAttr(
xmlctx *xctx,
xmldocnode *doc,
oratext *name,
oratext *value);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

name

IN

新しいノードの名前(データ・エンコーディング)。ユーザーが制御します。

value

IN

新しいノードの値(データ・エンコーディング)。ユーザーが制御します。

戻り値

(xmlattrnode *) 新しいAttrノード。

関連項目:
XmlDomSetAttrValue()、XmlDomCreateAttrNS()、XmlDomSetAttr()、XmlDomCleanNode()、XmlDomFreeNode()

XmlDomCreateAttrNS()

指定された名前空間URIと修飾名を使用して属性ノードを作成します。これは、XmlDomCreateAttrの名前空間を認識したバージョンです。この関数は、属性の初期値を設定できないDOM仕様とは異なることに注意してください(XmlDomSetAttrValueを参照)。名前は必須ですが、値はNULLの可能性があり、どちらも検証、変換、確認は行われません。

初期値が指定された場合、属性のspecifiedフラグはTRUEになります。

新しいノードは、親がなく孤立しているため、XmlDomAppendChildなどを使用して、DOMツリーに追加する必要があります。1回の操作で属性を作成および追加する「XmlDomSetAttr」を参照してください。

URI、修飾名および値はコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

xmlattrnode* XmlDomCreateAttrNS(
xmlctx *xctx,
xmldocnode *doc,
oratext *uri,
oratext *qname,
oratext *value);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

uri

IN

ノードの名前空間URI(データ・エンコーディング)。ユーザーが制御します。

qname

IN

ノードの修飾名(データ・エンコーディング)。ユーザーが制御します。

value

IN

新しいノードの値(データ・エンコーディング)。ユーザーが制御します。

戻り値

(xmlattrnode *) 新しいAttrノード。

関連項目:
XmlDomSetAttrValue()、XmlDomCreateAttr()、XmlDomSetAttr()、XmlDomCleanNode()、XmlDomFreeNode()

XmlDomCreateCDATA()

指定された初期データ(データ・エンコーディング内にある必要があります)を使用して、CDATASection ノードを作成します。CDATASectionは逐語的とみなされ、解析されることはありません。正規化処理によって、隣接するTextノードと結合されることもありません。初期データにNULLが指定されている場合、検証、変換、確認は行われません。CDATAノードの名前は、常に「#cdata-section」となります。

新しいノードは、親がなく孤立しているため、XmlDomAppendChildなどを使用して、DOMツリーに追加する必要があります。

CDATAはコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

xmlcdatanode* XmlDomCreateCDATA(
xmlctx *xctx,
xmldocnode *doc,
oratext *data);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

data

IN

新しいノードのCDATA(データ・エンコーディング)。ユーザーが制御します。

戻り値

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

関連項目:
XmlDomCreateText()、XmlDomCleanNode()、XmlDomFreeNode()

XmlDomCreateComment()

指定された初期データ(データ・エンコーディング内にある必要があります)を使用して、Commentノードを作成します。データにNULLが指定されている場合、検証、変換、確認は行われません。Commentノードの名前は常に#commentです。

新しいノードは、親がなく孤立しているため、XmlDomAppendChildなどを使用して、DOMツリーに追加する必要があります。

コメント・データはコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

xmlcommentnode* XmlDomCreateComment(
xmlctx *xctx,
xmldocnode *doc,
oratext *data);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

data

IN

新しいノードのコメント(データ・エンコーディング)。ユーザーが制御します。

戻り値

(xmlcommentnode *) 新しいCommentノード。

関連項目:
XmlDomCleanNode()、XmlDomFreeNode()

XmlDomCreateElem()

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

新しいノードは、親がなく孤立しているため、XmlDomAppendChildなどを使用して、DOMツリーに追加する必要があります。

tagnameはコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

xmlelemnode* XmlDomCreateElem(
xmlctx *xctx,
xmldocnode *doc,
oratext *tagname);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

tagname

IN

新しいノードの名前(データ・エンコーディング)。ユーザーが制御します。

戻り値

(xmlelemnode *) 新しいElementノード。

関連項目:
XmlDomCreateElemNS()、XmlDomCleanNode()、XmlDomFreeNode()

XmlDomCreateElemNS()

指定された名前空間URIおよび修飾名を持つ要素を作成します。要素名では大/小文字が区別され、URIはNULLにできますが、修飾名は必須であることに注意してください。修飾名は接頭辞とローカル部分に分割され、XmlDomGetNodePrefix、XmlDomGetNodeLocalなどを使用して取得できます。tagNameは完全修飾名になります。

新しいノードは、親がなく孤立しているため、XmlDomAppendChildなどを使用して、DOMツリーに追加する必要があります。

URIおよび修飾名はコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

xmlelemnode* XmlDomCreateElemNS(
xmlctx *xctx,
xmldocnode *doc,
oratext *uri,
oratext *qname);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

uri

IN

新しいノードの名前空間URI(データ・エンコーディング)。ユーザーが制御します。

qname

IN

新しいノードの修飾名(データ・エンコーディング)。ユーザーが制御します。

戻り値

(xmlelemnode *) 新しいElementノード。

関連項目:
XmlDomCreateElem()、XmlDomCleanNode()、XmlDomFreeNode()

XmlDomCreateEntityRef()

EntityReferenceノードを作成します。名前(データ・エンコーディング内にある必要があります)は、参照されるエンティティの名前です。名前付きの実体が存在する必要はありません。名前の検証、変換、確認は行われません。

EntityReferenceノードはパーサーによって生成されることはなく、実体参照が検出されたときに拡張されます。出力の際、実体参照ノードはスタイル参照の「&name;」に変換されます。

新しいノードは、親がなく孤立しているため、XmlDomAppendChildなどを使用して、DOMツリーに追加する必要があります。

実体参照名はコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

xmlentrefnode* XmlDomCreateEntityRef(
xmlctx *xctx,
xmldocnode *doc,
oratext *name);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

name

IN

実体参照名(データ・エンコーディング)。ユーザーが制御します。

戻り値

(xmlentrefnode *) 新しいEntityReferenceノード。

XmlDomCreateFragment()

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

構文

xmlfragnode* XmlDomCreateFragment(
xmlctx *xctx,
xmldocnode *doc);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

戻り値

(xmlfragnode *) 新しい空のDocumentFragmentノード。

関連項目:
XmlDomInsertBefore()、XmlDomReplaceChild()、XmlDomAppendChild()

XmlDomCreatePI()

指定されたターゲットおよびデータ(データ・エンコーディング内にある必要があります)を使用して、ProcessingInstructionノードを作成します。データは、最初はNULLで、(XmlDomSetPIDataを使用して)後で変更される可能性がありますが、ターゲットは必須で、変更できません。ターゲットは、検証、変換、確認は行われません。PIノードの名前は、ターゲットと同じです。

新しいノードは、親がなく孤立しているため、XmlDomAppendChildなどを使用して、DOMツリーに追加する必要があります。

PIのターゲットおよびデータはコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

xmlpinode* XmlDomCreatePI(
xmlctx *xctx
xmldocnode *doc,
oratext *target,
oratext *data);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

target

IN

新しいノードのターゲット(データ・エンコーディング)。ユーザーが制御します。

data

IN

新しいノードのデータ(データ・エンコーディング)。ユーザーが制御します。

戻り値

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

関連項目:
XmlDomGetPITarget()、XmlDomGetPIData()、XmlDomSetPIData()、XmlDomCleanNode()、XmlDomFreeNode()

XmlDomCreateText()

指定された初期データ(非NULLで、データ・エンコーディングに含まれている必要があります)を使用してTextノードを作成します。データにNULLが指定されている場合、検証、変換、確認は行われません(エンティティは拡張されません)。フラグメント・ノードの名前は、常に「#text」となります。Textノードの新しいデータを設定できます。メソッドの編集については、CharacterDataインタフェースを参照してください。

新しいノードは、親がなく孤立しているため、XmlDomAppendChildなどを使用して、DOMツリーに追加する必要があります。

テキスト・データはコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

xmltextnode* XmlDomCreateText(
xmlctx *xctx,
xmldocnode *doc,
oratext *data);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

data

IN

新しいノードのテキスト(データ・エンコーディング)。ユーザーが制御します。

戻り値

(xmltextnode *) 新しいTextノード。

関連項目:
XmlDomCreateCDATA()、XmlDomSetNodeValue()、XmlDomGetNodeValue()、XmlDomSetCharData()、XmlDomGetCharData()、XmlDomGetCharDataLength()、XmlDomSubstringData()、XmlDomAppendData()、XmlDomInsertData()、XmlDomDeleteData()、XmlDomReplaceData()、XmlDomCleanNode()、XmlDomFreeNode()

XmlDomFreeString()

XmlDomSubstringDataまたは同様の関数によって割り当てられた文字列を解放します。XmlDomSaveStringを使用して明示的に保存された文字列は、個別に解放できません。

構文

void XmlDomFreeString(
xmlctx *xctx,
xmldocnode *doc,
oratext *str);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

文字列が属するドキュメント

str

IN

解放する文字列

関連項目:
XmlDomSaveString()、XmlDomSaveString2()

XmlDomGetBaseURI()

ドキュメントのベースURIを戻します。通常は、URIからロードされたドキュメントにのみ、ベースURIが自動的に設定されます。他のソース(stdin、バッファなど)からロードされたドキュメントには通常、ベースURIは設定されていませんが、相対URIを解決するために、XmlDomSetBaseURIを使用してベースURIが設定されている場合もあります。

構文

oratext *XmlDomGetBaseURI(
xmlctx *xctx,
xmldocnode *doc);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

戻り値

(oratext *) ドキュメントのベースURI(またはNULL)。

関連項目:
XmlDomSetBaseURI()

XmlDomGetDTD()

現在のドキュメントに対応するDTDノードを戻します。DTDがない場合は、NULLを戻します。DTDは編集できませんが、他のノードのタイプについては、XmlDomGetChildNodesを使用して子を取得できます。

構文

xmldtdnode* XmlDomGetDTD(
xmlctx *xctx,
xmldocnode *doc);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

戻り値

(xmldtdnode *) ドキュメントのDTDノード(またはNULL)。

関連項目:
第11章「C用のXML APIパッケージ」のXmlDomSetDTD()、XmlCreateDTD()およびXmlCreate()と、XmlDomGetDTDName()、XmlDomGetDTDEntities()およびXmlDomGetDTDNotations()

XmlDomGetDecl()

ドキュメントのXMLDeclから情報を戻します。XMLDeclが存在しない場合は、XMLERR_NO_DECLを戻します。XMLバージョン#(1.0また2.0)、指定されたエンコーディングおよびスタンドアロン値が戻されます。エンコーディングが指定されていない場合は、NULLが設定されます。スタンドアロン・フラグには3つの状態があります。スタンドアロンが指定されていない場合は< 0、スタンドアロンが指定されていてFALSEの場合は0、スタンドアロンが指定されていてTRUEの場合は> 0になります。

構文

xmlerr XmlDomGetDecl(
xmlctx *xctx,
xmldocnode *doc,
oratext **ver,
oratext **enc,
sb4 *std);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

ver

OUT

XMLバージョン

enc

OUT

エンコーディング仕様

std

OUT

スタンドアロン仕様

戻り値

(xmlerr) XMLエラー・コード。バージョン/エンコーディング/スタンドアロンが設定されます。

XmlDomGetDocElem()

DOMツリーのルート要素(ノード)を戻します。ない場合はNULLを戻します。各ドキュメントには、ルート要素と呼ばれる最上位のElementノードが1つのみあります。これは、ドキュメントが正常に解析された後に作成されるか、またはXmlDomCreateElem、XmlDomAppendChildなどによって手動で作成されます。

構文

xmlelemnode* XmlDomGetDocElem(
xmlctx *xctx,
xmldocnode *doc);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

戻り値

(xmlelemnode *) ルート要素(またはNULL)。

関連項目:
XmlDomCreateElem()

XmlDomGetDocElemByID()

指定されたIDを持つ要素ノードを戻します。このようなIDが定義されていない場合は、NULLを戻します。名前がIDである属性が、自動的にID型になるわけではありません。ID属性(任意の名前を付けられます)は、DTDでID型として宣言する必要があります。

指定されたIDはデータ・エンコーディングに含まれている必要があります。そうでないと一致しない場合があります。

構文

xmlelemnode* XmlDomGetDocElemByID(
xmlctx *xctx,
xmldocnode *doc,
oratext *id);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

id

IN

要素の一意のID(データ・エンコーディング)

戻り値

(xmlelemnode *) 一致する要素。

関連項目:
XmlDomGetDocElemsByTag()、XmlDomGetDocElemsByTagNS()

XmlDomGetDocElemsByTag()

指定されたタグ名を持つルート・ノードをルートとするドキュメント・ツリー内のすべての要素のリストを、ドキュメント順(ツリーの先行順走査で検出した順)に戻します。ルートがNULLの場合は、ドキュメント全体を検索します。

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

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

リストが不要になった場合は、XmlDomFreeNodeListを使用して解放する必要があります。

このリストは最新のものではなく、スナップショットです。つまり、リストが戻された後に、タグ名に一致する新しいノードがDOMに追加された場合、そのノードを含むようにリストが自動的に更新されることはありません。

構文

xmlnodelist* XmlDomGetDocElemsByTag(
xmlctx *xctx,
xmldocnode *doc,
oratext *name);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

name

IN

一致させるタグ名(データ・エンコーディング)。すべてのタグ名を一致させるには「*」を指定します。

戻り値

(xmlnodelist *) 一致したすべてのElementを含む、新しいNodeList。

関連項目:
XmlDomGetDocElemByID()、XmlDomGetDocElemsByTagNS()、XmlDomFreeNodeList()

XmlDomGetDocElemsByTagNS()

指定された名前空間URIおよびローカル名を持つ(指定されたノードをルートとするドキュメント・ツリー内の)すべての要素のリストを、ツリーの先行順走査で検出した順に戻します。ルートがNULLの場合は、ドキュメント全体を検索します。

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

リストが不要になった場合は、XmlDomFreeNodeListを使用して解放する必要があります。

このリストは最新のものではなく、スナップショットです。つまり、リストが戻された後に、タグ名に一致する新しいノードがDOMに追加された場合、そのノードを含むようにリストが自動的に更新されることはありません。

構文

xmlnodelist* XmlDomGetDocElemsByTagNS(
xmlctx *xctx,
xmldocnode *doc,
oratext *uri,
oratext *local);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

uri

IN

一致させる名前空間URI(データ・エンコーディング)。すべての名前空間URIを一致させるには「*」を指定します。

local

IN

一致させるローカル名(データ・エンコーディング)。すべてのローカル名と一致させるには「*」を指定します。

戻り値

(xmlnodelist *) 一致したすべてのElementを含む、新しいNodeList。

関連項目:
XmlDomGetDocElemByID()、XmlDomGetDocElemsByTag()、XmlDomFreeNodeList()

XmlDomGetLastError()

指定されたドキュメントで最後に発生したエラーのエラー・コードを戻します。

構文

xmlerr XmlDomGetLastError(
xmlctx *xctx,
xmldocnode *doc);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

戻り値

(xmlerr) 数値のエラー・コード。エラーがない場合は、0(ゼロ)を戻します。

XmlDomGetSchema()

ドキュメントに対応するスキーマのURIを戻します。ない場合は、NULLを戻します。XmlLoadDom関数は、スキーマの場所のヒント(URI)を取得します。スキーマは、XMLTypeデータを効率的にレイアウトするために使用されます。スキーマがロード時に指定された場合、この関数はTRUEを戻します。

構文

oratext* XmlDomGetSchema(
xmlctx *xctx,
xmldocnode *doc);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

戻り値

(oratext *) スキーマURIまたはNULL。

関連項目:
XmlDomIsSchemaBased()、第11章「C用のXML APIパッケージ」のXmlLoadDom()

XmlDomImportNode()

Documentから別のドキュメントにノードをインポートします。新しいノードは、親がなく孤立しているため、XmlDomAppendChildなどを使用して、DOMツリーに追加する必要があります。元のノードは、変更されたりドキュメントから削除されることはありません。かわりに、元のノードの修飾名、接頭辞、名前空間URIおよびローカル名をすべてコピーした新しいノードが作成されます。

XmlDomCloneNodeと同様に、ノードの子を再帰的にインポートするかどうかをdeepが制御します。FALSEの場合、ノード自体のみがインポートされ、子は含まれません。TRUEの場合、ノードのすべての子孫が同様にインポートされ、新しいサブツリー全体が作成されます。

DocumentノードおよびDocumentTypeノードはインポートできません。インポートされた属性のspecifiedフラグは、TRUEに設定されます。要素には指定された属性のみがインポートされます。指定されていない(デフォルトの)属性は省略されます。その後、(インポート先ドキュメントの)新しいデフォルトの属性が追加されます。

構文

xmlnode* XmlDomImportNode(
xmlctx *xctx,
xmldocnode *doc,
xmlctx *nctx,
xmlnode *node,
boolean deep);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

nctx

IN

インポートされたノードのXMLコンテキスト

node

IN

インポートするノード

deep

IN

サブツリーを再帰的にインポートする場合はTRUE

戻り値

(xmlnode *) 新しくインポートされたノード(このDocument内)。

関連項目:
XmlDomCloneNode()

XmlDomIsSchemaBased()

このドキュメントに対応するスキーマがあるかどうかを指定するフラグを戻します。XmlLoadDom関数は、スキーマの場所のヒント(URI)を取得します。スキーマは、XMLTypeデータを効率的にレイアウトするために使用されます。スキーマがロード時に指定された場合、この関数はTRUEを戻します。

構文

boolean XmlDomIsSchemaBased(
xmlctx *xctx,
xmldocnode *doc);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

戻り値

(boolean) ドキュメントに対応するスキーマがある場合はTRUE。

関連項目:
XmlDomGetSchema()、第11章「C用のXML APIパッケージ」のXmlLoadDom()

XmlDomSaveString()

指定された文字列をドキュメントのメモリー・プールにコピーすることで、ドキュメントが存続する間、存続するようにします。個別の文字列は解放できません。ドキュメント全体が解放されたときにのみ、記憶域が戻されます。シングルバイトまたはマルチバイト・エンコーディングで機能します。Unicode文字列の場合は、XmlDomSaveString2を使用します。

構文

oratext* XmlDomSaveString(
xmlctx *xctx,
xmldocnode *doc,
oratext *str);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

str

IN

保存する文字列(データ・エンコーディング)。シングルバイトまたはマルチバイトのみです。

戻り値

(oratext *) 文字列の保存されたコピー。

関連項目:
XmlDomSaveString2()、第11章「C用のXML APIパッケージ」のXmlFreeDocument()

XmlDomSaveString2()

指定された文字列をドキュメントのメモリー・プールにコピーすることで、ドキュメントが存続する間、存続するようにします。個別の文字列は解放できません。ドキュメント全体が解放されたときにのみ、記憶域が戻されます。Unicode文字列でのみ機能します。シングルバイトまたはマルチバイト文字列の場合は、XmlDomSaveStringを使用します。

構文

ub2* XmlDomSaveString2(
xmlctx *xctx,
xmldocnode *doc,
ub2 *ustr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

ustr

IN

保存する文字列(データ・エンコーディング)。Unicodeのみです。

戻り値

(ub2 *) 文字列の保存されたコピー。

関連項目:
XmlDomSaveString()、第11章「C用のXML APIパッケージ」のXmlFreeDocument()

XmlDomSetBaseURI()

URIからロードされたドキュメントのみに、ベースURIが自動的に設定されます。他のソース(stdin、バッファなど)からロードされたドキュメントには、ベースURIは自動的には設定されません。したがって、相対URIを解決するために、このAPIを使用してベースURIを設定します。ベースURIは、データ・エンコーディング内にある必要があり、コピーが作成されます。

構文

xmlerr XmlDomSetBaseURI(
xmlctx *xctx,
xmldocnode *doc,
oratext *uri);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

uri

IN

設定されるベースURI(データ・エンコーディング)

戻り値

(xmlerr) XMLエラー・コード。

関連項目:
XmlDomGetBaseURI()

XmlDomSetDTD()

ドキュメントのDTDを設定します。このコールは、解析が行われる前に、空のドキュメントに対してのみ使用されます。1つのDTDを複数のドキュメントに対して設定できるため、DTDが設定されたドキュメントを解放しても、設定されたDTDは解放されません。

構文

xmlerr XmlDomSetDTD(
xmlctx *xctx,
xmldocnode *doc,
xmldtdnode *dtdnode);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

dtdnode

IN

設定されるDocumentTypeノード

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

関連項目:
XmlDomGetDTD()、XmlDomGetDTDName()、XmlDomGetDTDEntities()、XmlDomGetDTDNotations()

XmlDomSetDocOrder()

現行のドキュメントの各ノードに対してドキュメント順序を設定します。XSLT処理を行うには、最終ドキュメントに対してこの関数をコールする必要があります。この関数は、XSLTプロセッサによって自動的にコールされるため、ユーザーがこの関数をコールする必要はありません。

構文

ub4 XmlDomSetDocOrder(
xmlctx *xctx,
xmldocnode *doc,
ub4 start_id);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

start_id

IN

文字列のID番号

戻り値

(ub4) 割り当てられた最大の序数。

XmlDomSetLastError()

指定されたドキュメントの最後のエラー・コードを設定します。docがNULLの場合は、XMLコンテキストのエラー・コードを設定します。

構文

xmlerr XmlDomSetLastError(
xmlctx *xctx,
xmldocnode *doc,
xmlerr errcode);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

errcode

IN

設定されるエラー・コード。エラーを消去するには0を設定します。

戻り値

(xmlerr) 元のエラー・コード。

XmlDomSync()

変更されたDOMを元のソースにすべて書き込んで、永続的なストアおよびメモリー内バージョンを同期化します。

構文

xmlerr XmlDomSync(
xmlctx *xctx,
xmldocnode *doc);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

XML文書ノード

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

DocumentTypeインタフェース

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

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

関数

概要

XmlDomGetDTDEntities()

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

XmlDomGetDTDInternalSubset()

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

XmlDomGetDTDName()

DTDの名前を取得します。

XmlDomGetDTDNotations()

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

XmlDomGetDTDPubID()

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

XmlDomGetDTDSysID()

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

XmlDomGetDTDEntities()

DTDによって定義された汎用エンティティの名前付きノード・マップを戻します。ノードがDTDではないか、または汎用エンティティを持っていない場合はNULLを戻します。

構文

xmlnamedmap* XmlDomGetDTDEntities(
xmlctx *xctx,
xmldtdnode *dtd);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

dtd

IN

DTDノード

戻り値

(xmlnamedmap *) DTDで宣言されたエンティティを含む、名前付きノード・マップ。

関連項目:
XmlDomGetDTD()、XmlDomGetDTDName()、XmlDomGetDTDNotations()、XmlDomGetDTDSysID()、XmlDomGetDTDInternalSubset()

XmlDomGetDTDInternalSubset()

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

構文

xmlnode* XmlDomGetDTDInternalSubset(
xmlctx *xctx,
xmldtdnode *dtd,
oratext *name);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

dtd

IN

DTDノード

name

IN

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

戻り値

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

関連項目:
XmlDomGetDTD()、XmlDomGetDTDName()、XmlDomGetDTDEntities()、XmlDomGetDTDNotations()、XmlDomGetDTDPubID()

XmlDomGetDTDName()

DTD名(DOCTYPEキーワードの直後に指定されます)、またはノードのタイプがDTD以外の場合はNULLを戻します。

構文

oratext* XmlDomGetDTDName(
xmlctx *xctx,
xmldtdnode *dtd);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

dtd

IN

DTDノード

戻り値

(oratext*) DTDの名前。

関連項目:
XmlDomGetDTD()、XmlDomGetDTDEntities()、XmlDomGetDTDNotations()、XmlDomGetDTDSysID()、XmlDomGetDTDInternalSubset()

XmlDomGetDTDNotations()

DTDで宣言されている表記法の名前付きノード・マップを戻します。ノードがDTDではないか、またはNotationを持っていない場合はNULLを戻します。

構文

xmlnamedmap* XmlDomGetDTDNotations(
xmlctx *xctx,
xmldtdnode *dtd);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

dtd

IN

DTDノード

戻り値

(xmlnamedmap *) DTDで宣言された表記法を含む、名前付きノード・マップ。

関連項目:
XmlDomGetDTD()、XmlDomGetDTDName()、XmlDomGetDTDEntities()、XmlDomGetDTDSysID()、XmlDomGetDTDInternalSubset()

XmlDomGetDTDPubID()

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

構文

oratext* XmlDomGetDTDPubID(
xmlctx *xctx,
xmldtdnode *dtd);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

dtd

IN

DTDノード

戻り値

(oratext *) DTDの公開識別子(データ・エンコーディング)。

関連項目:
XmlDomGetDTD()、XmlDomGetDTDName()、XmlDomGetDTDEntities()、XmlDomGetDTDSysID()、XmlDomGetDTDInternalSubset()

XmlDomGetDTDSysID()

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

構文

oratext* XmlDomGetDTDSysID(
xmlctx *xctx,
xmldtdnode *dtd);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

dtd

IN

DTDノード

戻り値

(oratext *) DTDのシステム識別子(データ・エンコーディング)。

関連項目:
XmlDomGetDTD()、XmlDomGetDTDName()、XmlDomGetDTDEntities()、XmlDomGetDTDPubID()、XmlDomGetDTDInternalSubset()

Elementインタフェース

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

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

関数

概要

XmlDomGetAttr()

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

XmlDomGetAttrNS()

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

XmlDomGetAttrNode()

属性名を持つ属性を取得します。

XmlDomGetAttrNodeNS()

属性名を持つ属性(名前空間認識バージョン)を取得します。

XmlDomGetChildrenByTag()

指定されたタグ名(名前空間を認識しないバージョン)を持つ要素の子を戻します。

XmlDomGetChildrenByTagNS()

タグ名(名前空間認識バージョン)を持つ要素の子を戻します。

XmlDomGetDocElemsByTag()

ドキュメント要素を取得します。

XmlDomGetDocElemsByTagNS()

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

XmlDomGetTag()

要素ノードのタグ名を戻します。

XmlDomHasAttr()

名前付き属性は存在しますか。

XmlDomHasAttrNS()

名前付き属性(名前空間認識バージョン)は存在しますか。

XmlDomRemoveAttr()

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

XmlDomRemoveAttrNS()

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

XmlDomRemoveAttrNode()

属性ノードを削除します。

XmlDomSetAttr()

要素の新しい属性を設定します。

XmlDomSetAttrNS()

要素の新しい属性(名前空間認識バージョン)を設定します。

XmlDomSetAttrNode()

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

XmlDomSetAttrNodeNS()

属性ノード(名前空間認識バージョン)を設定します。

XmlDomGetAttr()

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

構文

oratext* XmlDomGetAttr(
xmlctx *xctx,
xmlelemnode *elem,
oratext *name);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

name

IN

属性名

戻り値

(oratext *) 名前付き属性の値(データ・エンコーディング。NULLの可能性があります)。

関連項目:
XmlDomGetAttrNS()、XmlDomGetAttrs()、XmlDomGetAttrNode()

XmlDomGetAttrNS()

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

構文

oratext* XmlDomGetAttrNS(
xmlctx *xctx,
xmlelemnode *elem,
oratext *uri,
oratext *local);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

uri

IN

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

local

IN

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

戻り値

(oratext *) 名前付き属性の値(データ・エンコーディング。NULLの可能性があります)。

関連項目:
XmlDomGetAttr()、XmlDomGetAttrs()、XmlDomGetAttrNode()

XmlDomGetAttrNode()

名前で指定された要素の属性を戻します。ノードが要素ではないか、または名前付き属性が存在しない場合はNULLを戻します。

構文

xmlattrnode* XmlDomGetAttrNode(
xmlctx *xctx,
xmlelemnode *elem,
oratext *name);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

name

IN

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

戻り値

(xmlattrnode *) 指定した名前を持つ属性(またはNULL)。

関連項目:
XmlDomGetAttrNodeNS()、XmlDomGetAttr()

XmlDomGetAttrNodeNS()

URIおよびローカル名で指定された要素の属性を戻します。ノードが要素ではないか、または名前付き属性が存在しない場合はNULLを戻します。

構文

xmlattrnode* XmlDomGetAttrNodeNS(
xmlctx *xctx,
xmlelemnode *elem,
oratext *uri,
oratext *local);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

uri

IN

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

local

IN

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

戻り値

(xmlattrnode *) 指定したURI/ローカル名を持つ属性ノード(またはNULL)。

関連項目:
XmlDomGetAttrNode()、XmlDomGetAttr()

XmlDomGetChildrenByTag()

指定されたタグ名を持つ要素の子のリストを、ツリーの先行順走査で検出された順に戻します。タグ名は、データ・エンコーディング内に含まれている必要があります。特別な名前「*」はすべてのタグ名と一致します。NULLの名前に一致するものはありません。タグ名では大/小文字が区別されます。この関数は名前空間を認識しません。したがって、完全なタグ名が比較されます。同じURIにマップされる2つの接頭辞を比較すると、比較は失敗します。名前空間を認識するバージョンについては、「XmlDomGetChildrenByTagNS」を参照してください。戻されるリストは、XmlDomFreeNodeListを使用して解放できます。

構文

xmlnodelist* XmlDomGetChildrenByTag(
xmlctx *xctx,
xmlelemnode *elem,
oratext *name);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

name

IN

一致させるタグ名(データ・エンコーディング)。すべてのタグ名を一致させるには「*」を指定します。

戻り値

(xmlnodelist *) 一致する子のノード・リスト。

関連項目:
XmlDomGetChildrenByTagNS()、XmlDomFreeNodeList()

XmlDomGetChildrenByTagNS()

指定されたURIおよびローカル名を持つ要素の子のリストを、ツリーの先行順走査で検出された順に戻します。URIとローカル名は、データ・エンコーディング内に含まれている必要があります。特殊な名前「*」はすべてのURIまたはタグ名と一致します。NULLの名前に一致するものはありません。名前では大/小文字が区別されます。名前空間を認識しないバージョンについては、「XmlDomGetChildrenByTag」を参照してください。戻されるリストは、XmlDomFreeNodeListを使用して解放できます。

構文

xmlnodelist* XmlDomGetChildrenByTagNS(
xmlctx *xctx,
xmlelemnode *elem,
oratext *uri,
oratext *local);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

uri

IN

一致させる名前空間URI(データ・エンコーディング)。すべての名前空間URIを一致させるには「*」を指定します。

local

IN

一致させるローカル名(データ・エンコーディング)。すべてのローカル名と一致させるには「*」を指定します。

戻り値

(xmlnodelist *) 一致する子のノード・リスト。

関連項目:
XmlDomGetChildrenByTag()、XmlDomFreeNodeList()

XmlDomGetElemsByTag()

指定されたタグ名を持つ(ルート・ノードをルートとするドキュメント・ツリー内の)すべての要素のリストを、ツリーの先行順走査で検出した順に戻します。ルートがNULLの場合は、ドキュメント全体を検索します。タグ名は、データ・エンコーディング内に含まれている必要があります。特別な名前「*」はすべてのタグ名と一致します。NULLの名前に一致するものはありません。タグ名では大/小文字が区別されます。この関数は名前空間を認識しません。したがって、完全なタグ名が比較されます。同じURIにマップされる2つの接頭辞を比較すると、比較は失敗します。名前空間を認識するバージョンについては、「XmlDomGetElemsByTagNS」を参照してください。戻されるリストは、XmlDomFreeNodeListを使用して解放できます。

構文

xmlnodelist* XmlDomGetElemsByTag(
xmlctx *xctx,
xmlelemnode *elem,
oratext *name);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

name

IN

一致させるタグ名(データ・エンコーディング)。すべてのタグ名を一致させるには「*」を指定します。

戻り値

(xmlnodelist *) 一致する要素のノード・リスト。

関連項目:
XmlDomGetElemsByTagNS()、XmlDomFreeNodeList()

XmlDomGetElemsByTagNS()

指定されたURIおよびローカル名を持つ(ルート・ノードをルートとするドキュメント・ツリー内の)すべての要素のリストを、ツリーの先行順走査で検出した順に戻します。ルートがNULLの場合は、ドキュメント全体を検索します。タグ名は、データ・エンコーディング内に含まれている必要があります。特別な名前「*」はすべてのタグ名と一致します。NULLの名前に一致するものはありません。タグ名では大/小文字が区別されます。この関数は名前空間を認識しません。したがって、完全なタグ名が比較されます。同じURIにマップされる2つの接頭辞を比較すると、比較は失敗します。戻されるリストは、XmlDomFreeNodeListを使用して解放できます。

構文

xmlnodelist* XmlDomGetElemsByTagNS(
xmlctx *xctx,
xmlelemnode *elem,
oratext *uri,
oratext *local);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

uri

IN

一致させる名前空間URI(データ・エンコーディング)。すべての名前空間URIを一致させるには「*」を指定します。

local

IN

一致させるローカル名(データ・エンコーディング)。すべてのローカル名と一致させるには「*」を指定します。

戻り値

(xmlnodelist *) 一致する要素のノード・リスト。

関連項目:
XmlDomGetDocElemsByTag()、XmlDomFreeNodeList()

XmlDomGetTag()

ノードのtagNameを戻します。これはノードの名前と同じです。W3Cのワーキング・グループでは、DOM 1.0仕様について、「Nodeインタフェースには汎用のnodeName属性があるが、Elementインタフェース上にはtagName属性がある。これらの2つの属性には同じ値が含まれている必要があるが、ワーキング・グループでは、DOM APIが様々なユーザー層のニーズを満たす必要があることを考慮し、両方をサポートする価値がある」と考えています。

構文

oratext* XmlDomGetTag(
xmlctx *xctx,
xmlelemnode *elem);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

Elementノード

戻り値

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

関連項目:
XmlDomGetNodeName()

XmlDomHasAttr()

要素に指定された名前を持つ属性があるかどうかを判別します。属性がある場合はTRUE、ない場合はFALSEを戻します。

構文

boolean XmlDomHasAttr(
xmlctx *xctx,
xmlelemnode *elem,
oratext *name);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

Elementノード

name

IN

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

戻り値

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

関連項目:
XmlDomHasAttrNS()

XmlDomHasAttrNS()

要素に指定されたURIおよびローカル名を持つ属性があるかどうかを判別します。属性がある場合はTRUE、ない場合はFALSEを戻します。

構文

boolean XmlDomHasAttrNS(
xmlctx *xctx,
xmlelemnode *elem,
oratext *uri,
oratext *local);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

Elementノード

uri

IN

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

local

IN

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

戻り値

(boolean) 要素に指定されたURI/ローカル名を持つ属性がある場合はTRUE。

関連項目:
XmlDomHasAttr()

XmlDomRemoveAttr()

(名前で指定された)属性を削除します。削除された属性がデフォルト値を持つ場合は、そのデフォルト値を使用してすぐに再作成されます。属性は属性の要素のリストから削除されますが、属性ノード自体は破棄されません。

構文

void XmlDomRemoveAttr(
xmlctx *xctx,
xmlelemnode *elem,
oratext *name);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

name

IN

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

関連項目:
XmlDomRemoveAttrNS()、XmlDomRemoveAttrNode()

XmlDomRemoveAttrNS()

(URIおよびローカル名で指定された)属性を削除します。削除された属性がデフォルト値を持つ場合は、そのデフォルト値を使用してすぐに再作成されます。属性は属性の要素のリストから削除されますが、属性ノード自体は破棄されません。

構文

void XmlDomRemoveAttrNS(
xmlctx *xctx,
xmlelemnode *elem,
oratext *uri,
oratext *local);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

uri

IN

属性の名前空間URI

local

IN

属性のローカル名

関連項目:
XmlDomRemoveAttr()、XmlDomRemoveAttrNode()

XmlDomRemoveAttrNode()

要素から属性を削除します。属性がデフォルト値を持つ場合は、そのデフォルト値(FALSEに設定されたSpecified)を使用してすぐに再作成されます。正常に終了した場合は削除された属性、エラーが発生した場合はNULLを戻します。

構文

xmlattrnode* XmlDomRemoveAttrNode(
xmlctx *xctx,
xmlelemnode *elem,
xmlattrnode *oldAttr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

oldAtrr

IN

削除する属性ノード

戻り値

(xmlattrnode *) 置換された属性ノード(またはNULL)。

関連項目:
XmlDomRemoveAttr()

XmlDomSetAttr()

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

構文

void XmlDomSetAttr(
xmlctx *xctx,
xmlelemnode *elem,
oratext *name,
oratext *value);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

name

IN

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

value

IN

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

関連項目:
XmlDomSetAttrNS()、XmlDomCreateAttr()、XmlDomSetAttrValue()、XmlDomRemoveAttr()

XmlDomSetAttrNS()

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

値は解析されないため、実体参照は展開されません。

属性の指定されたフラグが設定されます。

構文

void XmlDomSetAttrNS(
xmlctx *xctx,
xmlelemnode *elem,
oratext *uri,
oratext *qname,
oratext *value);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

uri

IN

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

qname

IN

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

value

IN

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

関連項目:
XmlDomSetAttr()、XmlDomCreateAttr()、XmlDomSetAttrValue()、XmlDomRemoveAttr()

XmlDomSetAttrNode()

要素に新しい属性を追加します。指定された名前を持つ属性がすでに存在する場合は、その属性が置換され、oldNodeによって古い属性が戻されます。新しい属性である場合、その属性が要素のリストに追加され、oldNodeがNULLに設定されます。

構文

xmlattrnode* XmlDomSetAttrNode(
xmlctx *xctx,
xmlelemnode *elem,
xmlattrnode *newAttr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

newAttr

IN

追加する属性ノード

戻り値

(xmlattrnode *) 置換された属性ノード(またはNULL)。

関連項目:
XmlDomSetAttrNodeNS()、XmlDomCreateAttr()、XmlDomSetAttrValue()

XmlDomSetAttrNodeNS()

要素に新しい属性を追加します。newNodeのURIおよびローカル名を持つ属性がすでに存在する場合は、その属性が置換され、oldNodeによって古い属性が戻されます。新しい属性である場合、その属性が要素のリストに追加され、oldNodeがNULLに設定されます。

構文

xmlattrnode* XmlDomSetAttrNodeNS(
xmlctx *xctx,
xmlelemnode *elem,
xmlattrnode *newAttr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

要素ノード

newAttr

IN

追加する属性ノード

戻り値

(xmlattrnode *) 置換された属性ノード(またはNULL)。

関連項目:
XmlDomSetAttrNode()、XmlDomCreateAttr()、XmlDomSetAttrValue()

Entityインタフェース

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

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

関数

概要

XmlDomGetEntityNotation()

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

XmlDomGetEntityPubID()

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

XmlDomGetEntitySysID()

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

XmlDomGetEntityType()

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

XmlDomGetEntityNotation()

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

構文

oratext* XmlDomGetEntityNotation(
xmlctx *xctx,
xmlentnode *ent);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

ent

IN

エンティティ・ノード

戻り値

(oratext *) エンティティの表記法(データ・エンコーディング。NULLの可能性があります)。

関連項目:
XmlDomGetEntityPubID()、XmlDomGetEntitySysID()

XmlDomGetEntityPubID()

エンティティの公開識別子(データ・エンコーディング内)を戻します。ノードがエンティティではないか、または定義済の公開識別子を持っていない場合はNULLを戻します。

構文

oratext* XmlDomGetEntityPubID(
xmlctx *xctx,
xmlentnode *ent);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

ent

IN

エンティティ・ノード

戻り値

(oratext *) エンティティの公開識別子(データ・エンコーディング。NULLの可能性があります)。

関連項目:
XmlDomGetEntitySysID()、XmlDomGetEntityNotation()

XmlDomGetEntitySysID()

エンティティのシステム識別子(データ・エンコーディング内)を戻します。ノードがエンティティではないか、または定義済のシステム識別子を持っていない場合はNULLを戻します。

構文

oratext* XmlDomGetEntitySysID(
xmlctx *xctx,
xmlentnode *ent);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

ent

IN

エンティティ・ノード

戻り値

(oratext *) エンティティのシステム識別子(データ・エンコーディング。NULLの可能性があります)。

関連項目:
XmlDomGetEntityPubID()、XmlDomGetEntityNotation()

XmlDomGetEntityType()

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

構文

boolean XmlDomGetEntityType(
xmlctx *xctx,
xmlentnode *ent);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

ent

IN

エンティティ・ノード

戻り値

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

関連項目:
XmlDomGetEntityPubID()、XmlDomGetEntitySysID()、XmlDomGetEntityNotation()

NamedNodeMapインタフェース

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

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

関数

概要

XmlDomGetNamedItem()

リストから名前付きノードを戻します。

XmlDomGetNamedItemNS()

リスト(名前空間認識バージョン)から名前付きノードを戻します。

XmlDomGetNodeMapItem()

リスト内のn番目のノードを戻します。

XmlDomGetNodeMapLength()

名前付きノード・マップの長さを戻します。

XmlDomRemoveNamedItem()

名前付きノード・マップからノードを削除します。

XmlDomRemoveNamedItemNS()

名前付きノード・マップ(名前空間認識バージョン)からノードを削除します。

XmlDomSetNamedItem()

名前付きノード・リストのノードを設定します。

XmlDomSetNamedItemNS()

名前付きノード・マップ(名前空間認識バージョン)のノードを設定します。

XmlDomGetNamedItem()

名前(データ・エンコーディング内にある必要があります)で指定されたNamedNodeMapから、項目を取得します。これは、名前空間を認識しない関数です。修飾名全体で(大/小文字を区別して)照合します。この関数は、一致する項目の索引も戻されるという点で、DOM仕様とは異なります。

構文

xmlnode* XmlDomGetNamedItem(
xmlctx *xctx,
xmlnamedmap *map,
oratext *name);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

map

IN

NamedNodeMap

name

IN

取得するノードの名前

戻り値

(xmlnode *) 指定した名前を持つNode(またはNULL)。

関連項目:
XmlDomGetNamedItemNS()、XmlDomGetNodeMapItem()、XmlDomGetNodeMapLength()

XmlDomGetNamedItemNS()

URIおよびローカル名(データ・エンコーディング内にある必要があります)で指定されたNamedNodeMapから、項目を取得します。この関数は、一致する項目の索引も戻されるという点で、DOM仕様とは異なります。

構文

xmlnode* XmlDomGetNamedItemNS(
xmlctx *xctx,
xmlnamedmap *map,
oratext *uri,
oratext *local);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

map

IN

NamedNodeMap

uri

IN

取得するノードの名前空間URI(データ・エンコーディング)

local

IN

取得するノードのローカル名(データ・エンコーディング)

戻り値

(xmlnode *) 指定したローカル名および名前空間URIを持つノード(またはNULL)。

関連項目:
XmlDomGetNamedItem()、XmlDomGetNodeMapItem()、XmlDomGetNodeMapLength()

XmlDomGetNodeMapItem()

名前(データ・エンコーディング内にある必要があります)で指定されたNamedNodeMapから、項目を取得します。これは、名前空間を認識しない関数です。修飾名全体で(大/小文字を区別して)照合します。この関数は、一致する項目の索引も戻されるという点で、DOM仕様とは異なります。W3C仕様の名前付き「項目」です。

構文

xmlnode* XmlDomGetNodeMapItem(
xmlctx *xctx,
xmlnamedmap *map,
ub4 index);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

map

IN

NamedNodeMap

index

IN

マップの0(ゼロ)ベースの索引

戻り値

(xmlnode *) マップ内のn番目の位置にあるノード(またはNULL)。

関連項目:
XmlDomGetNamedItem()、XmlDomSetNamedItem()、XmlDomRemoveNamedItem()、XmlDomGetNodeMapLength()

XmlDomGetNodeMapLength()

NamedNodeMap内のノードの数(長さ)を戻します。ノードは索引によって参照されるため、有効な索引の範囲は0(ゼロ)からlength-1です。

構文

ub4 XmlDomGetNodeMapLength(
xmlctx *xctx,
xmlnamedmap *map);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

map

IN

NamedNodeMap

戻り値

(ub4) NamedNodeMap内のノードの数。

関連項目:
XmlDomGetNodeMapItem()、XmlDomGetNamedItem()

XmlDomRemoveNamedItem()

名前で指定されたNamedNodeMapからノードを削除します。これは、名前空間を認識しない関数です。修飾名全体で(大/小文字を区別して)照合します。削除されたノードが(指定されていない)デフォルト値を持つ属性の場合は、すぐに置換されます。削除されたノードが戻されます。削除が行われなかった場合は、NULLが戻されます。

構文

xmlnode* XmlDomRemoveNamedItem(
xmlctx *xctx,
xmlnamedmap *map,
oratext *name);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

map

IN

NamedNodeMap

name

IN

削除するノードの名前

戻り値

(xmlnode *) このマップから削除されたノード。

関連項目:
XmlDomRemoveNamedItemNS()、XmlDomGetNamedItem()、XmlDomGetNamedItemNS()、XmlDomSetNamedItem()、XmlDomSetNamedItemNS()

XmlDomRemoveNamedItemNS()

URIおよびローカル名で指定されたNamedNodeMapからノードを削除します。削除されたノードが(指定されていない)デフォルト値を持つ属性の場合は、すぐに置換されます。削除されたノードが戻されます。削除が行われなかった場合は、NULLが戻されます。

構文

xmlnode* XmlDomRemoveNamedItemNS(
xmlctx *xctx,
xmlnamedmap *map,
oratext *uri,
oratext *local);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

map

IN

NamedNodeMap

uri

IN

削除されるノードの名前空間URI(データ・エンコーディング)

local

IN

削除されるノードのローカル名(データ・エンコーディング)

戻り値

(xmlnode *) このマップから削除されたノード。

関連項目:
XmlDomRemoveNamedItem()、XmlDomGetNamedItem()、XmlDomGetNamedItemNS()、XmlDomSetNamedItem()、XmlDomSetNamedItemNS()

XmlDomSetNamedItem()

NamedNodeMapに新しいノードを追加します。指定された名前を持つノードがすでに存在する場合、古いノードは置換され、戻されます。該当する名前付きノードが存在しない場合は、新しいノードがマップに追加され、古いノードがNULLに設定されます。これは、名前空間を認識しない関数です。修飾名全体で(大/小文字を区別して)照合します。ノードのタイプによっては決まった名前(Text、Commentなど)があるため、同じタイプに別の名前を設定しようとすると、常に置換が行われます。

構文

xmlnode* XmlDomSetNamedItem(
xmlctx *xctx,
xmlnamedmap *map,
xmlnode *newNode);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

map

IN

NamedNodeMap

newNode

IN

マップに格納される新しいノード

戻り値

(xmlnode *) 置換されたノード(またはNULL)。

関連項目:
XmlDomSetNamedItemNS()、XmlDomGetNamedItem()、XmlDomGetNamedItemNS()、XmlDomGetNodeMapItem()、XmlDomGetNodeMapLength()

XmlDomSetNamedItemNS()

NamedNodeMapに新しいノードを追加します。指定されたURIおよびローカル名を持つノードがすでに存在する場合、古いノードは置換され、戻されます。該当する名前付きノードが存在しない場合は、新しいノードがマップに追加され、古いノードがNULLに設定されます。ノードのタイプによっては決まった名前(Text、Commentなど)があるため、同じタイプに別の名前を設定しようとすると、常に置換が行われます。

構文

xmlnode* XmlDomSetNamedItemNS(
xmlctx *xctx,
xmlnamedmap *map,
xmlnode *newNode);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

map

IN

NamedNodeMap

newNode

IN

マップに格納される新しいノード

戻り値

(xmlnode *) 置換されたNode(またはNULL)。

関連項目:
XmlDomSetNamedItem、XmlDomGetNamedItem()、XmlDomGetNamedItemNS()、XmlDomGetNodeMapItem()、XmlDomGetNodeMapLength()

Nodeインタフェース

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

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

関数

概要

XmlDomAppendChild()

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

XmlDomCleanNode()

ノードを消去します(DOM割当てを解放します)。

XmlDomCloneNode()

ノードを複製します。

XmlDomFreeNode()

XmlDomCreateXXXを使用して割り当てられたノードを解放します。

XmlDomGetAttrs()

ノードの属性を戻します。

XmlDomGetChildNodes()

ノードの子を戻します。

XmlDomGetDefaultNS()

ノードのデフォルトの名前空間を取得します。

XmlDomGetFirstChild()

ノードの最初の子ノードを戻します。

XmlDomGetFirstPfnsPair()

最初の接頭辞名前空間の組を取得します。

XmlDomGetLastChild()

ノードの最後の子ノードを戻します。

XmlDomGetNextPfnsPair()

後続の接頭辞名前空間の組を取得します。

XmlDomGetNextSibling()

ノードの直後の兄弟関係を戻します。

XmlDomGetNodeLocal()

ノードの修飾名のローカル部分を、NULLで終了する文字列として取得します。

XmlDomGetNodeLocalLen()

ノードの修飾名のローカル部分を、長さがエンコードされた文字列として取得します。

XmlDomGetNodeName()

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

XmlDomGetNodeNameLen()

ノードの名前を、長さがエンコードされた文字列として取得します。

XmlDomGetNodePrefix()

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

XmlDomGetNodeType()

ノードの数値型コードを取得します。

XmlDomGetNodeURI()

ノードの名前空間URIを、NULLで終了する文字列として戻します。

XmlDomGetNodeURILen()

ノードの名前空間URIを、長さがエンコードされた文字列として戻します。

XmlDomGetNodeValue()

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

XmlDomGetNodeValueLen()

ノードの値を、長さがエンコードされた文字列として取得します。

XmlDomGetNodeValueStream()

ノードの大きいデータを戻し、分割してユーザーの出力ストリームに送信します。

XmlDomGetOwnerDocument()

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

XmlDomGetParentNode()

親ノードを取得します。

XmlDomGetPrevSibling()

ノードの直前の兄弟関係を戻します。

XmlDomGetPullNodeAsBinaryStream()

プル・パラダイムを使用してバイナリ・ストリームのアドレスを戻します。

XmlDomGetPullNodeAsCharacterStream()

プル・パラダイムを使用して文字ストリームのアドレスを戻します。

XmlDomGetPushNodeAsBinaryStream()

プッシュ・パラダイムを使用してバイナリ・ストリームのアドレスをOUT ostreamパラメータとして戻します。

XmlDomGetPushNodeAsCharacterStream()

プッシュ・パラダイムを使用して文字ストリームのアドレスをOUT ostreamパラメータとして戻します。

XmlDomGetSourceEntity()

入力ファイルが外部エンティティの場合、エンティティ・ノードを戻します。

XmlDomGetSourceLine()

ノードのソース行番号を戻します。

XmlDomGetSourceLocation()

ノードのソース位置(パス、URIなど)を戻します。

XmlDomHasAttr()

名前付き属性は存在しますか。

XmlDomHasChildNodes()

ノードが子ノードを持っているかどうかをテストします。

XmlDomInsertBefore()

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

XmlDomNormalize()

隣接するテキスト・ノードをマージしてノードを正規化します。

XmlDomNumAttrs()

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

XmlDomNumChildNodes()

ノードの子の数を戻します。

XmlDomPrefixToURI()

接頭辞の名前空間URIを取得します。

XmlDomRemoveChild()

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

XmlDomRenameNode()

要素ノードおよび属性ノードについてのみ、ノードの名前を更新します。

XmlDomRenameNodeNS()

要素ノードおよび属性ノードについてのみ、ノードの名前とURIを更新します。

XmlDomReplaceChild()

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

XmlDomSetDefaultNS()

ノードのデフォルトの名前空間を設定します。

XmlDomSetNodePrefix()

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

XmlDomSetNodeValue()

ノード値を設定します。

XmlDomSetNodeValueLen()

ノードの値を、長さがエンコードされた文字列として設定します。

XmlDomSetNodeValueStream()

ノードの大きい値(文字データ)を、入力ストリームとは別に設定します。

XmlDomSetPullNodeAsBinaryStream()

プル・パラダイムを使用してバイナリ入力ストリームのアドレスをOUT istreamパラメータとして戻します。

XmlDomSetPullNodeAsCharacterStream()

プル・パラダイムを使用して入力文字ストリームのアドレスをOUT istreamパラメータとして戻します。

XmlDomSetPushNodeAsBinaryStream()

プッシュ・パラダイムを使用して入力バイナリ・ストリームのアドレスを戻します。

XmlDomSetPushNodeAsCharacterStream()

プッシュ・パラダイムを使用して文字ストリームのアドレスを戻します。

XmlDomValidate()

ノードを現行のDTDに対して検証します。

XmlDomAppendChild()

親の子リストの最後にノードを追加し、その新しいノードを戻します。newChildがDocumentFragmentである場合、その子がすべて元の順序で追加されます。DocumentFragmentノード自体は追加されません。

構文

xmlnode* XmlDomAppendChild(
xmlctx *xctx,
xmlnode *parent,
xmlnode *newChild);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

parent

IN

新しいノードを受け取る親ノード

newChild

IN

追加するノード

戻り値

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

関連項目:
XmlDomInsertBefore()、XmlDomReplaceChild()

XmlDomCleanNode()

DOM自体によって割り当てられたノードの一部を解放しますが、子ノードに再帰したり、ノードの属性に影響することはありません。ノードの一部(名前など)を解放した後に、その一部(XmlDomGetNodeNameなど)を取得するためのDOMコールは、NULLポインタを戻す必要があります。DOMによって制御されるノードの一部、およびユーザーによって制御されるノードの一部を管理するために使用されます。正常な解放をコールすると、すべての割当てはDOMによって行われ、ユーザーの割当てのみが残ります。ユーザーは、ユーザー自身の割当てを解放します。

構文

void XmlDomCleanNode(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

消去されるノード

関連項目:
XmlDomFreeNode()

XmlDomCloneNode()

ノードの複製を作成して戻します。複製ノードは親を持ちません。要素のクローニングによって、すべての属性とその値(デフォルトの属性を示すためにXMLプロセッサで生成された値を含む)がコピーされます。ただし、ディープ・クローンの場合を除き、格納されているテキストをコピーしません。これは、テキストが子のテキスト・ノードに格納されているためです。他のタイプのノードを複製すると、単にそのノードのコピーが戻されます。未指定の属性ノードの複製も指定されます。deepがTRUEの場合、ノードの子はすべて再帰的に複製され、複製されたノードは複製された子を持ちます。非ディープ・クローンは子を持ちません。

構文

xmlnode* XmlDomCloneNode(
xmlctx *xctx,
xmlnode *node,
boolean deep);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

deep

IN

子を再帰的に複製する場合はTRUE

戻り値

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

関連項目:
XmlDomImportNode()

XmlDomFreeNode()

XmlDomCreateXXXを使用して割り当てられたノードを解放します。ノードに対応するすべてのリソースを解放してから、ノード自体を解放します。ノードには、DOMで制御される部分とユーザーが制御する部分があります。DOMは誰がどのノードを所有するかを追跡するフラグを保持し、DOM独自の割当てのみを解放します。ユーザーは、XmlDomFreeNodeをコールする前に、ノードのユーザー独自の割当て部分を解放します。

構文

void XmlDomFreeNode(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

解放されるXMLノード

関連項目:
XmlDomCleanNode()

XmlDomGetAttrs()

要素ノードの属性のNamedNodeMapを戻します。属性がない場合はNULLを戻します。ノードのタイプがそれ以外の場合は、NULLが戻されます。要素に属性があった場合でも、すべて削除されている場合は、空のリストが戻されます。したがって、リストがあっても、要素に属性があるとはかぎりません。XmlDomNumAttrsを使用してリストのサイズをチェックするか、先にXmlDomHasChildNodesを使用する必要があります。

構文

xmlnamedmap* XmlDomGetAttrs(
xmlctx *xctx,
xmlelemnode *elem);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

XML要素ノード

戻り値

(xmlnamedmap *) ノードの属性のNamedNodeMap。

関連項目:
XmlDomNumAttrs()、XmlDomHasChildNodes()

XmlDomGetChildNodes()

ノードの子のリストを戻します。子がない場合はNULLを戻します。子を持つ可能性があるのは、Element、Document、DTDおよびDocumentFragmentノードのみです。それ以外のタイプはすべて、NULLを戻します。

ノードに子があった場合でも、それらがすべて削除されている場合は、空のリストが戻される可能性があります。つまり、リストが存在しても、メンバーは存在しません。したがって、リストが存在するだけで、ノードに子があることを意味するわけではありません。XmlDomNumChildNodesを使用してリストのサイズをチェックするか、先にXmlDomHasChildNodesを使用する必要があります。

xmlnodelist構造体は不透明なため、NodeListインタフェース内の関数でのみ操作できます。

戻されるリストは最新です。元のノードへのすべての変更が、すぐに反映されます。

構文

xmlnodelist* XmlDomGetChildNodes(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(xmlnodelist *) ノードのすべての子を含む、最新のNodeList。

XmlDomGetDefaultNS()

ノードのデフォルトの名前空間を取得します。

構文

oratext* XmlDomGetDefaultNS(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

要素または属性DOMノード

戻り値

(oratext *) ノードのデフォルトの名前空間(データ・エンコーディング。NULLの可能性があります)。

XmlDomGetFirstChild()

ノードの最初の子ノードを返します。ノードに子ノードがない場合はNULLを戻します。子を持つ可能性があるのは、Element、Document、DTDおよびDocumentFragmentノードのみです。それ以外のタイプはすべて、NULLを戻します。

構文

xmlnode* XmlDomGetFirstChild(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(xmlnode *) ノードの最初の子ノード。

関連項目:
XmlDomGetLastChild()、XmlDomHasChildNodes()、XmlDomGetChildNodes()、XmlDomNumChildNodes()

XmlDomGetFirstPfnsPair()

この関数を使用すると、実装では指定されたノードで使用できるすべての使用可能なURIの接頭辞バインドの反復を高速化できます。これにより、最初のURIの接頭辞マッピングの状態構造、接頭辞およびURIが戻されます。状態構造は、残りの組のXmlDomGetNextPfnsPairに渡される必要があります。

構文

xmlpfnspair* XmlDomGetFirstPfnsPair(
xmlctx *xctx,
xmlnode *node,
oratext **prefix,
oratext **uri);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

prefix

OUT

最初のマッピングの接頭辞(データ・エンコーディング)

uri

OUT

最初のマッピングのURI(データ・エンコーディング)

戻り値

(xmlpfnspair *) 反復オブジェクト。接頭辞がない場合はNULLを戻します。

XmlDomGetLastChild()

ノードの最後の子ノードを返します。ノードに子ノードがない場合はNULLを戻します。子を持つ可能性があるのは、Element、Document、DTDおよびDocumentFragmentノードのみです。それ以外のタイプはすべて、NULLを戻します。

構文

xmlnode* XmlDomGetLastChild(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(xmlnode *) ノードの最後の子ノード。

関連項目:
XmlDomGetFirstChild()、XmlDomHasChildNodes()、XmlDomGetChildNodes()、XmlDomNumChildNodes()

XmlDomGetNextPfnsPair()

この関数を使用すると、実装では指定されたノードで使用できるすべての使用可能なURIの接頭辞バインドの反復を高速化できます。XmlDomGetFirstPfnsPairからイテレータ構造を指定すると、次のURIの接頭辞マッピングが戻されます。NULLが戻されるまで、XmlDomGetNextPfnsPairのコールを繰り返します。

構文

xmlpfnspair* XmlDomGetNextPfnsPair(
xmlctx *xctx
xmlpfnspair *pfns,
oratext **prefix,
oratext **uri);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

prefix

OUT

次のマッピングの接頭辞(データ・エンコーディング)

uri

OUT

次のマッピングのURI(データ・エンコーディング)

戻り値

(xmlpfnspair *) 反復オブジェクト。組がなくなった場合はNULLを戻します。

XmlDomGetNextSibling()

DOMツリーの同じレベルにあるノードに続いて、ノードを戻します。つまり、親ノードの子ノードごとに、その子ノードの直後の兄弟関係が、その子ノードに続く子ノードになります。子ノードが親ノードの最後の子ノードである場合、または子ノードが親ノードを持たない場合は、NULLを戻します。

構文

xmlnode* XmlDomGetNextSibling(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(xmlnode *) 同レベルにある次のノード。

関連項目:
XmlDomGetPrevSibling()

XmlDomGetNodeLocal()

ノードの名前空間のローカル名を、NULLで終了する文字列として戻します。ノード名が完全に修飾されていない(接頭辞がない)場合、ローカル名はノード名と同じになります。

長さがエンコードされたバージョンは、XmlDomGetNodeLocalLenとして使用できます。これは、ローカル名をポインタおよび長さとして戻し、データがXMLTypeバックエンドのデータストアを使用するとわかっている場合に使用します。

構文

oratext* XmlDomGetNodeLocal(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

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

関連項目:
XmlDomGetNodeLocalLen()、XmlDomGetNodePrefix()、XmlDomGetNodeURI()

XmlDomGetNodeLocalLen()

ノードの名前空間のローカル名を、長さがエンコードされた文字列として戻します。ノード名が完全に修飾されていない(接頭辞がない)場合、ローカル名はノード名と同じになります。

NULLで終了するバージョンはXmlDomGetNodeLocalとして使用でき、これはローカル名をNULLで終了する文字列として戻します。バッキング・ストアがXMLTypeであるとわかっている場合、ノードのデータは、長さがエンコードされたデータとして内部的に格納されます。長さに基づくGet関数を使用すると、データをコピーしたり、データをNULLで終了する必要がなくなります。

両方の入力バッファがNULL以外で、入力バッファの長さが0(ゼロ)以外の場合、値は入力バッファに格納されます。それ以外の場合、実装は独自のバッファを戻します。

実際の長さがbuflenより大きい場合、切り捨てられた値がバッファにコピーされ、lenが実際の長さを戻します。

構文

oratext* XmlDomGetNodeLocalLen(
xmlctx *xctx,
xmlnode *node,
oratext *buf,
ub4 buflen,
ub4 *len);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

buf

IN

入力バッファ(オプション)

buflen

IN

入力バッファ長(オプション)

len

OUT

ローカル名の長さ(文字数)

戻り値

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

関連項目:
XmlDomGetNodeLocal()、XmlDomGetNodePrefix()、XmlDomGetNodeURILen()

XmlDomGetNodeName()

(データ・エンコーディングの)属性の完全修飾名を、NULLで終了する文字列として戻します。たとえば、bar\0、foo:bar\0などです。

ノードのタイプによっては、「#text」、「#cdata-section」、「#comment」、「#document」、「#document-fragment」などの決まった名前があります。

ノード名は1度作成すると変更できないため、一致するSetNodeName関数はありません。

長さに基づくバージョンは、XmlDomGetNodeNameLenとして使用できます。これは、ノード名をポインタおよび長さとして戻し、データがXMLTypeバックエンドのデータストアを使用するとわかっている場合に使用します。

構文

oratext* XmlDomGetNodeName(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

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

関連項目:
XmlDomGetNodeNameLen()

XmlDomGetNodeNameLen()

(データ・エンコーディングの)ノードの(完全修飾された)名前を、長さがエンコードされた文字列として戻します。たとえば、"bar", 3、"foo:bar", 7などです。

ノードのタイプによっては、「#text」、「#cdata-section」、「#comment」、「#document」、「#document-fragment」などの決まった名前があります。

ノード名は1度作成すると変更できないため、一致するSetNodeName関数はありません。

NULLで終了するバージョンはXmlDomGetNodeNameとして使用でき、これはノード名をNULLで終了する文字列として戻します。バッキング・ストアがXMLTypeであるとわかっている場合、ノードの名前は、長さがエンコードされたデータとして内部的に格納されます。長さがエンコードされたGetXXX関数を使用すると、データをコピーしたり、名前をNULLで終了する必要がなくなります。

両方の入力バッファがNULL以外で、入力バッファの長さが0(ゼロ)以外の場合、値は入力バッファに格納されます。それ以外の場合、実装は独自のバッファを戻します。

実際の長さがbuflenより大きい場合、切り捨てられた値がバッファにコピーされ、lenが実際の長さを戻します。

構文

oratext* XmlDomGetNodeNameLen(
xmlctx *xctx,
xmlnode *node,
oratext *buf,
ub4 buflen,
ub4 *len);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

buf

IN

入力バッファ(オプション)

buflen

IN

入力バッファ長(オプション)

len

OUT

名前の長さ(文字数)

戻り値

(oratext *) ノードの名前。名前の長さはlenで設定されます。

関連項目:
XmlDomGetNodeName()

XmlDomGetNodePrefix()

ノードの名前空間接頭辞を(NULLで終了する文字列として)戻します。ノード名が完全に修飾されていない(接頭辞がない)場合は、NULLを戻します。

構文

oratext* XmlDomGetNodePrefix(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(oratext *) ノードの名前空間の接頭辞(データ・エンコーディング。NULLの可能性があります)。

XmlDomGetNodeType()

ノードの型コードを戻します。型の名前および数値はDOM仕様に適合します。

- 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

Oracle拡張機能のその他のノードの型は、次のとおりです。

- ELEMENT_DECL_NODE

- ATTR_DECL_NODE

- CP_ELEMENT_NODE

- CP_CHOICE_NODE

- CP_PCDATA_NODE

- CP_STAR_NODE

- CP_PLUS_NODE

- CP_OPT_NODE

構文

xmlnodetype XmlDomGetNodeType(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(xmlnodetype) ノードの数値型コード。

XmlDomGetNodeURI()

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

長さがエンコードされたバージョンは、XmlDomGetNodeURILenとして使用できます。これは、URIをポインタおよび長さとして戻し、データがXMLTypeバックエンドのデータストアを使用するとわかっている場合に使用します。

構文

oratext* XmlDomGetNodeURI(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(oratext *) ノードの名前空間URI(データ・エンコーディング。NULLの可能性があります)。

関連項目:
XmlDomGetNodeURILen()、XmlDomGetNodePrefix()、XmlDomGetNodeLocal()

XmlDomGetNodeURILen()

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

NULLで終了するバージョンはXmlDomGetNodeURIとして使用でき、これはURI値をNULLで終了する文字列として戻します。バッキング・ストアがXMLTypeであるとわかっている場合、ノードのデータは、長さがエンコードされたデータとして内部的に格納されます。長さに基づくGet関数を使用すると、データをコピーしたり、データをNULLで終了する必要がなくなります。

両方の入力バッファがNULL以外で、入力バッファの長さが0(ゼロ)以外の場合、値は入力バッファに格納されます。それ以外の場合、実装は独自のバッファを戻します。

実際の長さがbuflenより大きい場合、切り捨てられた値がバッファにコピーされ、lenが実際の長さを戻します。

構文

oratext* XmlDomGetNodeURILen(
xmlctx *xctx,
xmlnode *node,
oratext *buf,
ub4 buflen,
ub4 *len);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

buf

IN

入力バッファ(オプション)

buflen

IN

入力バッファ長(オプション)

len

OUT

URIの長さ(文字数)

戻り値

(oratext *) ノードの名前空間URI(データ・エンコーディング。NULLの可能性があります)。

関連項目:
XmlDomGetNodeURI()、XmlDomGetNodePrefix()、XmlDomGetNodeLocal()

XmlDomGetNodeValue()

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

長さがエンコードされたバージョンは、XmlDomGetNodeValueLenとして使用できます。これは、ノード値をポインタおよび長さとして戻し、データがXMLTypeバックエンドのデータストアを使用するとわかっている場合に使用します。

構文

oratext* XmlDomGetNodeValue(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(oratext *) ノードの値。

関連項目:
XmlDomSetNodeValue()、XmlDomGetNodeValueLen()

XmlDomGetNodeValueLen()

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

NULLで終了するバージョンはXmlDomGetNodeValueとして使用でき、これはノード値をNULLで終了する文字列として戻します。バッキング・ストアがXMLTypeであるとわかっている場合、ノードのデータは、長さがエンコードされたデータとして内部的に格納されます。長さに基づくGet関数を使用すると、データをコピーしたり、データをNULLで終了する必要がなくなります。

両方の入力バッファがNULL以外で、入力バッファの長さが0(ゼロ)以外の場合、値は入力バッファに格納されます。それ以外の場合、実装は独自のバッファを戻します。

実際の長さがbuflenより大きい場合、切り捨てられた値がバッファにコピーされ、lenが実際の長さを戻します。

構文

oratext* XmlDomGetNodeValueLen(
xmlctx *xctx,
xmlnode *node,
oratext *buf,
ub4 buflen,
ub4 *len);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

buf

IN

入力バッファ(オプション)

buflen

IN

入力バッファ長(オプション)

len

OUT

値の長さ(バイト数)

戻り値

(oratext *) ノードの値。

関連項目:
XmlDomSetNodeValueLen()、XmlDomGetNodeValue()

XmlDomGetNodeValueStream()

ノードの大きいデータを戻し、分割してユーザーの出力ストリームに送信します。非常に大きいデータの場合、単一の連続するチャンクとして効率的に格納できるとはかぎりません。この関数は、そのタイプのチャンク・データへのアクセスに使用します。XMLTypeのみがデータを(場合によって)チャンクします。XDKのデータは常に連続しています。

構文

xmlerr XmlDomGetNodeValueStream(
xmlctx *xctx,
xmlnode *node,
xmlostream *ostream);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

ostream

IN

出力ストリーム・オブジェクト

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

関連項目:
XmlDomSetNodeValueStream()、XmlDomGetNodeValue()、XmlDomGetNodeValueLen()

XmlDomGetOwnerDocument()

ノードに対応するDocumentノードを戻します。各ノードは1つのドキュメントのみに属する場合もあれば、どのドキュメントにも対応しない場合もあります(XmlDomCreateElemの直後など)。元のドキュメント[ノード]が戻されます。孤立したノードの場合は、NULLが戻されます。

構文

xmldocnode* XmlDomGetOwnerDocument(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(xmldocnode *) ドキュメント・ノードが存在します。

XmlDomGetParentNode()

ノードの親ノードを戻します。Attr、Document、DocumentFragment、EntityおよびNotation以外のノードのタイプはすべて、親を持ちます(この5つの例外は、常にNULLの親を持ちます)。ノードが作成された直後で、DOMツリーにまだ追加されていない場合、またはノードがDOMツリーから削除されている場合は、親もNULLになります。

構文

xmlnode* XmlDomGetParentNode(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(xmlnode *) ノードの親ノード。

XmlDomGetPrevSibling()

DOMツリーの同じレベルにあるノードの直前のノードを戻します。つまり、親ノードの子ノードごとに、その子ノードの直前の兄弟関係が、その子ノードの前の子ノードになります。ノードが親ノードの最初の子ノードの場合は、NULLを戻します。

構文

xmlnode* XmlDomGetPrevSibling(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(xmlnode *) 同レベルにある次のノード。

関連項目:
XmlDomGetNextSibling()

XmlDomGetPullNodeAsBinaryStream()

プル・パラダイムを使用してバイナリ・ストリームのアドレスを戻します。

構文

orastream *XmlDomGetPullNodeAsBinaryStream(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード(RAWまたはBLOB)。それ以外の場合、この関数はNULLを戻します。

戻り値

(orastream *) 判別可能なバイナリ・ストリーム、出力ではOraStreamReadChar()ではなくOraStreamRead()を使用。

XmlDomGetPullNodeAsCharacterStream()

プル・パラダイムを使用して文字ストリームのアドレスを戻します。

構文

orastream *XmlDomGetPullNodeAsCharacterStream(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード(XML DBによってサポートされる任意のタイプ)

戻り値

(orastream *) 判別可能な文字ストリーム、出力ではOraStreamRead()ではなくOraStreamReadChar()を使用。

XmlDomGetPushNodeAsBinaryStream()

プッシュ・パラダイムを使用してバイナリ・ストリームのアドレスをOUT ostreamパラメータとして戻します。

構文

xmlerr XmlDomGetPushNodeAsBinaryStream(
xmlctx *xctx,
xmlnode *node,
orastream *ostream);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード(RAWまたはBLOB)。それ以外の場合はエラーを戻します。

ostream

OUT

orastreamのアプリケーション実装。値の書込みにはOraStreamWriteChar()ではなくOraStreamWrite()を使用。

戻り値

(xmlerr *) エラー・コード。正常に終了した場合は、XMLERR_OK []を戻します。

XmlDomGetPushNodeAsCharacterStream()

プッシュ・パラダイムを使用して文字ストリームのアドレスをOUT ostreamパラメータとして戻します。

構文

xmlerr XmlDomGetPushNodeAsCharacterStream(
xmlctx *xctx,
xmlnode *node,
orastream *ostream);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード(XML DBによってサポートされる任意のタイプ)

ostream

IN

orastreamのアプリケーション実装。値の書込みにはOraStreamWrite()ではなくOraStreamWriteChar()を使用。

戻り値

(xmlerr *) エラー・コード。正常に終了した場合は、XMLERR_OK []を戻します。

XmlDomGetSourceEntity()

包含によって特定のノードが作成される外部エンティティ・ノードを戻します。

構文

xmlentnode* XmlDomGetSourceEntity(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(xmlentnode *) 入力が外部エンティティから行われる場合は、エンティティ・ノードを戻します。

XmlDomGetSourceLine()

ノードが開始された元のソースの行番号を戻します。すべての入力で、最初の行は行番号1になります。

構文

ub4 XmlDomGetSourceLine(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(ub4) 元の入力ソースのノードの行番号。

XmlDomGetSourceLocation()

ノードのソース位置(パス、URIなど)を戻します。これは、データ・エンコーディング内ではなくコンパイラ・エンコーディング内にあります。

構文

oratext* XmlDomGetSourceLocation(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(oratext *) 入力ソースのフルパス(コンパイラ・エンコーディング)。

XmlDomHasAttrs()

要素が属性を持っているかどうかをテストします。ソートの属性(名前空間または標準)が定義されている場合はTRUEを戻します。

構文

boolean XmlDomHasAttrs(
xmlctx *xctx,
xmlelemnode *elem);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

XML要素ノード

戻り値

(boolean) 要素が属性が持つ場合はTRUE。

XmlDomHasChildNodes()

ノードが子ノードを持っているかどうかをテストします。子を持つ可能性があるのは、Element、Document、DTDおよびDocumentFragmentノードのみです。XmlDomGetChildNodesがリストを戻した場合でも、ノードが実際に子ノードを持っているとはかぎりません。リストが空の場合もあるため、XmlDomGetChildNodesからのNULL以外の戻り値は、テストとして使用できません。

構文

boolean XmlDomHasChildNodes(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

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

XmlDomInsertBefore()

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

構文

xmlnode* XmlDomInsertBefore(
xmlctx *xctx,
xmlnode *parent,
xmlnode *newChild,
xmlnode *refChild);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

parent

IN

新しい子ノードを受け取る親ノード

newChild

IN

挿入するノード

refChild

IN

参照ノード

戻り値

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

関連項目:
XmlDomAppendChild()、XmlDomReplaceChild()、XmlDomRemoveChild()

XmlDomNormalize()

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

構文

void XmlDomNormalize(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

XmlDomNumAttrs()

要素の属性の数を戻します。XmlDomGetAttrsによってリストが戻される場合でも、属性が含まれているとはかぎりません。長さが0(ゼロ)の空のリストの場合もあります。

構文

ub4 XmlDomNumAttrs(
xmlctx *xctx,
xmlelemnode *elem);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

elem

IN

XML要素ノード

戻り値

(ub4) ノードの属性の数。

XmlDomNumChildNodes()

ノードの子ノードの数を戻します。子を持つ可能性があるのは、Element、Document、DTDおよびDocumentFragmentノードのみです。それ以外のタイプはすべて、0(ゼロ)を戻します。XmlDomGetChildNodesによってリストが戻される場合でも、子が含まれているとはかぎりません。長さが0(ゼロ)の空のリストの場合もあります。

構文

ub4 XmlDomNumChildNodes(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

戻り値

(ub4) ノードの子ノードの数。

XmlDomPrefixToURI()

名前空間接頭辞およびノードを指定すると、その接頭辞にマップされた名前空間URIを戻します。指定されたノードが一致する接頭辞を持たない場合は、その親ノードが試行されます。次に、その親ノードの親ノードが試行され、ルート・ノードまで繰り返し試行されます。接頭辞が定義されていない場合は、NULLを戻します。

構文

oratext* XmlDomPrefixToURI(
xmlctx *xctx,
xmlnode *node,
oratext *prefix);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

prefix

IN

マップされる接頭辞

戻り値

(oratext *) 接頭辞のURI(データ・エンコーディング。一致しない場合はNULLを戻します)。

XmlDomRemoveChild()

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

構文

xmlnode* XmlDomRemoveChild(
xmlctx *xctx,
xmlnode *oldChild);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

oldChild

IN

削除するノード

戻り値

(xmlnode *) 削除されたノード。

関連項目:
XmlDomAppendChild()、XmlDomInsertBefore()、XmlDomReplaceChild()

XmlDomRenameNode()

要素ノードおよび属性ノードについてのみ、ノードの名前を更新します。

接頭辞に現在のマッピングがない場合、xmlns属性を作成し、XmlDomSetAttrNodeNS()をコールしてこの要素ノードに関連付けることで、マッピングを追加する必要があります。名前空間属性ノードは変更できません。

構文

xmlnode* XmlDomRenameNode(
xmlctx *xctx,
xmlnode *node,
oratext *tagname);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

tagname

IN

新しいタグ名

戻り値

(xmlnode *) 変更されたノード

関連項目:
XmlDomSetAttrNodeNS()

XmlDomRenameNodeNS()

要素ノードおよび属性ノードについてのみ、ノードの名前とURIを更新します。

接頭辞に現在のマッピングがない場合、xmlns属性を作成し、XmlDomSetAttrNodeNS()をコールしてこの要素ノードに関連付けることで、マッピングを追加する必要があります。名前空間属性ノードは変更できません。

構文

xmlnode* XmlDomRenameNodeNS(
xmlctx *xctx,
xmlnode *node,
oratext *uri,
oratext *tagname);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

uri

IN

新しいURI。NULLの場合、既存のURIを保持します

tagname

IN

新しいタグ名

戻り値

(xmlnode *) 変更されたノード。

関連項目:
XmlDomSetAttrNodeNS()

XmlDomReplaceChild()

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

構文

xmlnode* XmlDomReplaceChild(
xmlctx *xctx,
xmlnode *newChild,
xmlnode *oldChild);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

newChild

IN

置換される新しいノード

oldChild

IN

置換される古いノード

戻り値

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

関連項目:
XmlDomAppendChild()、XmlDomInsertBefore()、XmlDomRemoveChild()

XmlDomSetDefaultNS()

ノードのデフォルトの名前空間を設定します。

構文

void XmlDomSetDefaultNS(
xmlctx *xctx,
xmlnode *node,
oratext *defns);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

要素または属性DOMノード

defns

IN

ノードの新しいデフォルトの名前空間

XmlDomSetNodePrefix()

ノードの名前空間接頭辞を(NULLで終了する文字列として)設定します。接頭辞が定義されているかどうかは検証しません。新しい接頭辞と古いローカル名から、新しい修飾名が作成されます。新しい修飾名はDOMで制御され、ユーザーは管理できません。

構文

void XmlDomSetNodePrefix(
xmlctx *xctx,
xmlnode *node,
oratext *prefix);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

prefix

OUT

新しい名前空間接頭辞

XmlDomSetNodeValue()

ノードの値(文字データ)をNULLで終了する文字列として設定します。値をNULLに設定することはできません。値が設定されているのは、Attr、CDATA、Comment、PIおよびTextノードのみで、それ以外のタイプのノードの値を設定しようとしても、動作しません。新しい値はデータ・エンコーディングに含まれている必要があります。これは検証、変換、確認されません。

値はコピーされず、ポインタのみが保存されます。ノードのデータの保持および解放は、ユーザーが行います。

構文

xmlerr XmlDomSetNodeValue(
xmlctx *xctx,
xmlnode *node,
oratext *value);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

value

IN

ノードの新しい値(データ・エンコーディング)。ユーザーが制御します。

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

関連項目:
XmlDomSetNodeValueLen()、XmlDomGetNodeValue()

XmlDomGetNodeValueLen()

ノードの(文字データに対応する)値を、長さがエンコードされた文字列として設定します。

NULLで終了するバージョンはXmlDomSetNodeValueとして使用でき、これはノード値をNULLで終了する文字列として取ります。バッキング・ストアがXMLTypeであるとわかっている場合、ノードのデータは、長さがエンコードされたデータとして内部的に格納されます。長さに基づくSet関数を使用すると、データをコピーしたり、データをNULLで終了する必要がなくなります。

構文

xmlerr XmlDomSetNodeValueLen(
xmlctx *xctx,
xmlnode *node,
oratext *value,
ub4 len);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

value

IN

ノードの新しい値(データ・エンコーディング)。ユーザーが制御します。

len

IN

値の長さ(バイト数)

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

関連項目:
XmlDomSetNodeValueLen()、XmlDomSetNodeValue()

XmlDomSetNodeValueStream()

ノードの大きい値(文字データ)を、入力ストリームとは別に設定します。非常に大きいデータの場合、単一の連続するチャンクとして効率的に格納できるとはかぎりません。この関数は、そのタイプのチャンク・データを格納するために使用されます。XMLTypeデータのみに使用され、XDKのデータは常に連続しています。

構文

xmlerr XmlDomSetNodeValueStream(
xmlctx *xctx,
xmlnode *node,
xmlistream *istream);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード

istream

IN

入力ストリーム・オブジェクト

戻り値

(xmlerr) 数値のエラー・コード、正常に終了した場合は、0(ゼロ)を戻します。

関連項目:
XmlDomGetNodeValueStream()、XmlDomSetNodeValue()

XmlDomSetPullNodeAsBinaryStream()

プル・パラダイムを使用してバイナリ入力ストリームのアドレスをOUT istreamパラメータとして戻します。

構文

xmlerr *XmlDomSetPullNodeAsBinaryStream(
xmlctx *xctx,
xmlnode *node
orastream *istream);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード(RAWまたはBLOB)。それ以外の場合はエラーを戻します。

istream

OUT

入力ストリーム・オブジェクト。この値の読込みにはOraStreamReadChar()ではなくOraStreamRead()メソッドを使用する必要があります。

戻り値

(xmlerr *) エラー・コード。正常に終了した場合は、XMLERR_OK []を戻します。

XmlDomSetPullNodeAsCharacterStream()

プル・パラダイムを使用して入力文字ストリームのアドレスをOUT istreamパラメータとして戻します。

構文

xmlerr *XmlDomSetPullNodeAsCharacterStream(
xmlctx *xctx,
xmlnode *node
orcharacterinputstream *istream);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード(XML DBによってサポートされる任意のタイプ)

istream

OUT

入力ストリーム・オブジェクト。この値の読込みにはOraStreamRead()ではなくOraStreamReadChar()メソッドを使用する必要があります。

戻り値

(xmlerr *) エラー・コード。正常に終了した場合は、XMLERR_OK []を戻します。

XmlDomSetPushNodeAsBinaryStream()

プッシュ・パラダイムを使用して入力バイナリ・ストリームのアドレスを戻します。

構文

orastream* XmlDomSetPushNodeAsBinaryStream(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード(RAWまたはBLOB)

戻り値

(orastream *)バイナリ・ストリーム。出力の読込みにはOraStreamWriteChar()ではなくOraStreamWrite()を使用。

XmlDomSetPushNodeAsCharacterStream()

プッシュ・パラダイムを使用して文字ストリームのアドレスを戻します。

構文

orastream *XmlDomSetPushNodeAsCharacterStream(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

XMLノード(XML DBによってサポートされる任意のタイプ)

戻り値

(orastream *) 文字ストリーム。出力の読込みにはOraStreamWrite()ではなくOraStreamWriteChar()を使用。

XmlDomValidate()

ルート・ノードを指定すると、現行のDTDに対して検証されます。

構文

xmlerr XmlDomValidate(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

検証するノード

戻り値

(xmlerr) エラー・コード。XMLERR_OK [0]はノードが有効なことを示します。

NodeListインタフェース

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

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

関数

概要

XmlDomFreeNodeList()

XmlDomGetElemsByTagなどによって戻されるノード・リストを解放します。

XmlDomGetNodeListItem()

リスト内のn番目のノードを戻します。

XmlDomGetNodeListLength()

ノード・リストの長さを戻します。

XmlDomFreeNodeList()

XmlDomGetElemsByTagまたは関連する関数によって戻されたノード・リストを解放して、対応するすべてのリソースを解放します。DOM固有のノード・リストの一部(ノードの子など)を指定すると、処理は行われません。

構文

void XmlDomFreeNodeList(
xmlctx *xctx,
xmlnodelist *list);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

list

IN

解放するNodeList

関連項目:
XmlDomGetElemsByTag()、XmlDomGetElemsByTagNS()、XmlDomGetChildrenByTag()、XmlDomGetChildrenByTagNS()

XmlDomGetNodeListItem()

ノード・リストのn番目のノードを戻します。最初の項目は、索引0です。

構文

xmlnode* XmlDomGetNodeListItem(
xmlctx *xctx,
xmlnodelist *list,
ub4 index);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

list

IN

NodeList

index

IN

listへの索引

戻り値

(xmlnode *) ノード・リスト内のn番目の位置にあるノード(またはNULL)。

関連項目:
XmlDomGetNodeListLength()、XmlDomFreeNodeList()

XmlDomGetNodeListLength()

ノード・リスト内のノードの数(長さ)を戻します。ノードは索引によって参照されるため、有効な索引の範囲は0(ゼロ)からlength-1です。

構文

ub4 XmlDomGetNodeListLength(
xmlctx *xctx,
xmlnodelist *list);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

list

IN

NodeList

戻り値

(ub4) ノード・リスト内のノードの数。

関連項目:
XmlDomGetNodeListItem()、XmlDomFreeNodeList()

Notationインタフェース

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

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

関数

概要

XmlDomGetNotationPubID()

表記法の公開識別子を取得します。

XmlDomGetNotationSysID()

表記法のシステム識別子を取得します。

XmlDomGetNotationPubID()

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

構文

oratext* XmlDomGetNotationPubID(
xmlctx *xctx,
xmlnotenode *note);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

note

IN

Notationノード

戻り値

(oratext *) 表記法の公開識別子(データ・エンコーディング。NULLの可能性があります)。

関連項目:
XmlDomGetNotationSysID()

XmlDomGetNotationSysID()

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

構文

oratext* XmlDomGetNotationSysID(
xmlctx *xctx,
xmlnotenode *note);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

note

IN

Notationノード

戻り値

(oratext *) 表記法のシステム識別子(データ・エンコーディング。NULLの可能性があります)。

関連項目:
XmlDomGetNotationPubID()

ProcessingInstructionインタフェース

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

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

関数

概要

XmlDomGetPIData()

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

XmlDomGetPITarget()

PIのターゲットを取得します。

XmlDomSetPIData()

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

XmlDomGetPIData()

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

構文

oratext* XmlDomGetPIData(
xmlctx *xctx,
xmlpinode *pi);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

pi

IN

ProcessingInstructionノード

戻り値

(oratext *) 処理命令のデータ(データ・エンコーディング)。

関連項目:
XmlDomGetPITarget()、XmlDomSetPIData()

XmlDomGetPITarget()

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

構文

oratext* XmlDomGetPITarget(
xmlctx *xctx,
xmlpinode *pi);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

pi

IN

ProcessingInstructionノード

戻り値

(oratext *) 処理命令のターゲット(データ・エンコーディング)。

関連項目:
XmlDomGetPIData()、XmlDomSetPIData()

XmlDomSetPIData()

ProcessingInstructionのコンテンツ(データ・エンコーディング内にある必要があります)を設定します。データをNULLに設定することはできません。ノードがProcessingInstructionではない場合、処理は行われません。新しいデータの検証、変換、確認は行われません。

構文

void XmlDomSetPIData(
xmlctx *xctx,
xmlpinode *pi,
oratext *data);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

pi

IN

ProcessingInstructionノード

data

IN

ProcessingInstructionの新しいデータ(データ・エンコーディング)

関連項目:
XmlDomGetPITarget()、XmlDomGetPIData()

Textインタフェース

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

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

関数

概要

XmlDomSplitText()

テキスト・ノードを2つに分割します。

XmlDomSplitText()

1つのテキスト・ノードを2つに分割します。元のデータは、2つのノードに分割されます。指定されたノードのタイプがテキストではないか、またはオフセットが元のデータの範囲外にある場合は、処理を行わずにNULLを戻します。オフセットはゼロ・ベースで、バイト数ではなく文字数で表されます。元のノードは保持され、そのデータが切り捨てられます。元のデータの残りの部分を含む新しいテキスト・ノードが作成され、元のデータの次の兄弟として挿入されます。新しいテキスト・ノードが戻されます。

構文

xmltextnode* XmlDomSplitText(
xmlctx *xctx,
xmltextnode *textnode,
ub4 offset);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

textnode

IN

Textノード。

offset

IN

0(ゼロ)から始まる文字カウント。この文字数でテキストを分割します。

戻り値

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

関連項目:
XmlDomGetCharData()、XmlDomAppendData()、XmlDomInsertData()、XmlDomDeleteData()、XmlDomReplaceData()

4 C用のイベントAPIパッケージ

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

- Eventインタフェース

関連項目:

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

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

Eventインタフェース

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

表4-1 Eventメソッドの概要

関数

概要

XmlEvCleanPPCtx()

解析操作に関連のある内部構造をクリーン・アップします。これにより、イベント・コンテキストは破棄されません。イベント・コンテキストは、このコールの後に再利用できます。

XmlEvCreatePPCtx()

イベント・コンテキストをプル解析モードで作成します。

XmlEvCreateSVCtx()

ストリーム・バリデータ用のイベント・コンテキストを作成します。

XmlEvDestroyPPCtx()

イベント・コンテキストを破棄します。解析を終了します。解析操作中いつでもコールできます。

XmlEvDestroySVCtx()

ストリーム・バリデータによって作成されたイベント・コンテキストを終了します。

XmlEvGetAttrCount()

XML_EVENT_START_ELEMENTイベントの属性数を取得します。

XmlEvGetAttrDeclBody()

属性宣言XML_EVENT_ATTLIST_DECLARATIONの属性本体を取得します。また、長さをOUT lenパラメータとして提供します。

XmlEvGetAttrDeclBody0()

属性宣言XML_EVENT_ATTLIST_DECLARATIONのNULLで終了する属性本体を取得します。

XmlEvGetAttrDeclCount()

属性宣言XML_EVENT_ATTLIST_DECLARATIONの属性数を取得します。

XmlEvGetAttrDeclElName()

属性宣言XML_EVENT_ATTLIST_DECLARATIONの要素名を取得します。また、長さをOUT lenパラメータとして提供します。

XmlEvGetAttrDeclElName0()

属性宣言XML_EVENT_ATTLIST_DECLARATIONのNULLで終了する要素名を取得します。

XmlEvGetAttrDeclLocalName()

属性宣言XML_EVENT_ATTLIST_DECLARATIONのローカル名を取得します。また、長さをOUT lenパラメータとして提供します。

XmlEvGetAttrDeclLocalName0()

属性宣言XML_EVENT_ATTLIST_DECLARATIONのNULLで終了するローカル名を取得します。

XmlEvGetAttrDeclName()

属性宣言XML_EVENT_ATTLIST_DECLARATIONの属性名を取得します。また、長さをOUT lenパラメータとして提供します。

XmlEvGetAttrDeclName0()

属性宣言XML_EVENT_ATTLIST_DECLARATIONのNULLで終了する属性名を取得します。

XmlEvGetAttrDeclPrefix()

属性宣言XML_EVENT_ATTLIST_DECLARATIONの属性接頭辞を取得します。また、長さをOUT lenパラメータとして提供します。

XmlEvGetAttrDeclPrefix0()

属性宣言XML_EVENT_ATTLIST_DECLARATIONのNULLで終了する属性接頭辞を取得します。

XmlEvGetAttrID()

XML_EVENT_START_ELEMENTイベントの、属性のQNAMEの識別子を取得します。

XmlEvGetAttrLocalName()

XML_EVENT_START_ELEMENTイベントの属性ローカル名を取得します。また、長さをOUT lenパラメータとして提供します。

XmlEvGetAttrLocalName0()

XML_EVENT_START_ELEMENTイベントのNULLで終了する属性名を取得します。

XmlEvGetAttrName()

XML_EVENT_START_ELEMENTイベントの属性名を取得します。また、長さをOUT lenパラメータとして提供します。

XmlEvGetAttrName0()

XML_EVENT_START_ELEMENTイベントのNULLで終了する属性名を取得します。

XmlEvGetAttrPrefix()

XML_EVENT_START_ELEMENTイベントの接頭辞タグを取得し、イベントの長さをOUT lenパラメータとして戻します。

XmlEvGetAttrPrefix0()

XML_EVENT_START_ELEMENTイベントのNULLで終了する属性接頭辞を取得します。

XmlEvGetAttrURI()

XML_EVENT_START_ELEMENTイベントの属性URIを取得します。また、長さをOUT lenパラメータとして提供します。

XmlEvGetAttrURI0()

XML_EVENT_START_ELEMENTイベントのNULLで終了する属性URIを取得します。

XmlEvGetAttrUriID()

XML_EVENT_START_ELEMENTイベントに対する属性のURIの識別子を取得します。

XmlEvGetAttrValue()

XML_EVENT_START_ELEMENTイベントのいずれかの属性値を取得し、イベントの長さをOUT lenパラメータとして戻します。

XmlEvGetAttrValue0()

XML_EVENT_START_ELEMENTイベントのNULLで終了する属性値を取得します。

XmlEvGetElDeclContent()

XML_EVENT_ELEMENT_DECLARATIONの要素宣言コンテンツを取得します。また、長さをOUT lenパラメータとして提供します。

XmlEvGetElDeclContent0()

XML_EVENT_ELEMENT_DECLARATIONの要素宣言コンテンツを取得します。

XmlEvGetEncoding()

指定されたエンコーディングの値を戻します。

XmlEvGetError()

XmlEvNext()によってXML_EVENT_FATAL_ERRORまたはXML_EVENT_ERRORイベントが戻されるときにエラー番号を取得します。

XmlEvGetName()

XML_EVENT_START_ELEMENTまたはXML_EVENT_END_ELEMENTイベントの名前を戻し、イベントの長さをOUT lenパラメータで戻します。

XmlEvGetName0()

XML_EVENT_START_ELEMENTまたはXML_EVENT_END_ELEMENTイベントのNULLで終了する名前を取得します。

XmlEvGetLocalName()

XML_EVENT_START_ELEMENTまたはXML_EVENT_END_ELEMENTイベントのローカル名タグを取得し、イベントの長さをOUT lenパラメータとして戻します。

XmlEvGetLocalName0()

XML_EVENT_START_ELEMENTまたはXML_EVENT_END_ELEMENTイベントのNULLで終了するローカル名タグを取得し、イベントの長さをOUT lenパラメータとして戻します。

XmlEvGetLocation()

解析時の位置を入力ストリームおよびそのパスの行番号のOUTパラメータとして取得します。

XmlEvGetPIData()

XML_EVENT_PIまたはXML_EVENT_PI_CONTイベントのテキストを取得し、イベントの長さをOUT lenパラメータとして戻します。

XmlEvGetPIData0()

XML_EVENT_PIまたはXML_EVENT_PI_CONTイベントのNULLで終了するテキストを取得します。

XmlEvGetPITarget()

XML_EVENT_PIおよびXML_EVENT_PI_CONTイベントのターゲットを取得し、イベントの長さをOUT lenパラメータとして戻します。

XmlEvGetPITarget0()

XML_EVENT_PIおよびXML_EVENT_PI_CONTイベントのNULLで終了するターゲットを取得します。

XmlEvGetPEIsGen()

汎用エンティティが宣言されたかどうか(XML_EVENT_PE_DECLARATION)を判別します。

XmlEvGetPERepl()

PE宣言XML_EVENT_PE_DECLARATIONの置換テキストを取得します。また、長さをOUT lenパラメータとして提供します。

XmlEvGetPERepl0()

PE宣言XML_EVENT_PE_DECLARATIONのNULLで終了する置換テキストを取得します。

XmlEvGetPrefix()

XML_EVENT_START_ELEMENTまたはXML_EVENT_END_ELEMENTイベントのいずれかの接頭辞タグを取得し、イベントの長さをOUT lenパラメータとして戻します。

XmlEvGetPrefix0()

XML_EVENT_START_ELEMENTまたはXML_EVENT_END_ELEMENTイベントのいずれかの接頭辞タグを取得します。

XmlEvGetPubId()

XML_EVENT_PE_DECLARATION、XML_EVENT_UE_DECLARATIONまたはXML_EVENT_NOTATION_DECLARATIONイベントの公開識別子を取得し、長さをOUT lenパラメータとして戻します。

XmlEvGetPubId0()

XML_EVENT_PE_DECLARATION、XML_EVENT_UE_DECLARATIONまたはXML_EVENT_NOTATION_DECLARATIONイベントのNULLで終了する公開識別子を取得します。

XmlEvGetSysId()

XML_EVENT_PE_DECLARATION、XML_EVENT_UE_DECLARATIONまたはXML_EVENT_NOTATION_DECLARATIONイベントのシステム識別子を取得し、長さをOUT lenパラメータとして戻します。

XmlEvGetSysId0()

XML_EVENT_PE_DECLARATION、XML_EVENT_UE_DECLARATIONまたはXML_EVENT_NOTATION_DECLARATIONイベントのNULLで終了するシステム識別子を取得します。

XmlEvGetTagID()

XML_EVENT_START_ELEMENTイベントに対するタグのQNAMEの識別子を取得します。

XmlEvGetTagUriID()

XML_EVENT_START_ELEMENTまたはXML_EVENT_END_ELEMENTイベントに対するタグのURIの識別子を取得します。

XmlEvGetText()

XML_EVENT_CHARACTERS、XML_EVENT_CHARACTERS_CONT、XML_EVENT_SPACE、XML_EVENT_SPACE_CONT、XML_EVENT_COMMENT、XML_EVENT_COMMENT_CONT、XML_EVENT_CDATAおよびXML_EVENT_CDATA_CONTイベントのテキストを取得し、イベントの長さをOUT lenパラメータとして戻します。

XmlEvGetText0()

XML_EVENT_CHARACTERS、XML_EVENT_CHARACTERS_CONT、XML_EVENT_SPACE、XML_EVENT_SPACE_CONT、XML_EVENT_COMMENT、XML_EVENT_COMMENT_CONT、XML_EVENT_CDATAおよびXML_EVENT_CDATA_CONTイベントのNULLで終了するテキストを取得します。

XmlEvGetUENdata()

XML_EVENT_UE_DECLARATIONイベントのndataを取得し、イベントの長さをOUT lenパラメータとして戻します。

XmlEvGetUENdata0()

XML_EVENT_UE_DECLARATIONイベントのNULLで終了するndataを取得します。

XmlEvGetURI()

XML_EVENT_START_ELEMENTまたはXML_EVENT_END_ELEMENTイベントのURIタグを取得し、イベントの長さをOUT lenパラメータとして戻します。

XmlEvGetURI0()

XML_EVENT_START_ELEMENTまたはXML_EVENT_END_ELEMENTイベントのNULLで終了するURIタグを取得します。

XmlEvGetVersion()

XML_EVENT_START_DOCUMENTイベントのXML宣言でのバージョン仕様に関する情報を提供します。

XmlEvIsEncodingSpecified()

XML_EVENT_START_DOCUMENTイベントのXML宣言でのエンコーディング仕様に関する情報を提供します。

XmlEvIsNamespaceAttr()

XML_EVENT_START_ELEMENTイベントの属性が名前空間属性かどうかを判別します。

XmlEvIsStandalone()

XML_EVENT_START_DOCUMENTイベントのXML宣言でのスタンドアロン仕様に関する情報を提供します。

XmlEvNext()

次のイベントを取得し、パーサーを進めます。

XmlEvNextTag()

パーサーを次のタグ・イベントに進めます。

XmlEvLoadPPDoc()

新しいドキュメントをロードし、プル解析用に構成します。

XmlEvSchemaValidate()

イベントによって表されるXML文書を検証します。

XmlEvCleanPPCtx()

解析操作に関連のある内部構造をクリーン・アップします。これにより、イベント・コンテキストは破棄されません。イベント・コンテキストは、このコールの後に再利用できます。

構文

xmlerr XmlEvCleanPPCtx(
xmlctx *xctx,
xmlevctx *evctx);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

evtx

IN

XmlEventsコンテキスト

戻り値

(xmlerr) エラー番号。

XmlEvCreatePPCtx()

イベント・コンテキストをプル解析モードで作成します。

XmlEvLoadPPDocを使用してドキュメントがロードされます。実際の解析は、XmlEvNext()への複数のコールによって進められます。各コールの後に、様々なXmlEvGetXXX()関数へのコールによって関連情報が取得される場合があります。プロパティの基本セットは、XmlLoadDomと同じです。入力ソースは、XmlEvLoadPPDoc()コールで指定される必要があります。

構文

xmlevctx *XmlEvCreatePPCtx(
xmlctx *xctx,
xmlerr  *xerr,
list);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

xerr

IN

数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

list

IN

これらの追加プロパティは、NULLで終了する必要があります。

- ("expand_entities", boolean)つまり、FALSEの場合、解析される非パラメータ実体参照は拡張されません。デフォルトでは、それらの参照が拡張されます。

- ("use_buffer", buffer)はバッファのアドレスで、指定時にそのバッファを使用して、ユーザーに戻す必要があるデータを収集します。getXXX()関数はこのバッファをデータ・ポインタとして戻します。

- ("use_buffer_len", lengthOfBuffer)は、バッファ内のバイト数で、バッファの実際の長さであり、指定された長さを超えて収集されることはありません。バッファを超える場合は、データの一部のみが収集され、イベントのCONTフレーバが生成されます。XmlEventsNextへの後続のコールによって追加データが提供されます。CONTフレーバ・イベントのシーケンスは、常に非CONTイベントによって終了します。バッファは、一部のみが満たされる場合があります。

- ("get_id_callback", function)は、テキストベース名を8バイト識別子に変換するためのコールバック関数のアドレスです。この関数が提供されると、ユーザーは、XmlEvGetTagID、XmlEvGetAttrID、XmlEvGetTagUriIDおよびXmlEvGetAttrUriIDを使用できるようになります。

- ("raw_buffer_len", length)は、バッファ内のバイト数です。デフォルトでは、このパラメータは256Kです。入力データの読込み、文字変換、およびCRLFとCRのLFへの変換にはRAWバッファが使用されます。

- ("error_callback", callback)は、そのイベントのAPIの不正使用を示すために呼び出されるコールバック関数のアドレスを指定します。

これらのオプション・パラメータは、次のように使用してください。

xmlevctx *XmlEvCreatePPCtx(
xmlctx *xctx,
xmlerr  *xerr,
("expand_entities", mode),
("use_buffer", buffer),
("use_buffer_len", length),
("get_id_callback", function),
("raw_buffer_len",  length),
("error_callback", callback) );

戻り値

(xmlevctx) XmlEvNext()への後続コールに渡されるイベント・コンテキスト。

XmlEvCreateSVCtx()

ストリーム・バリデータ用のイベント・コンテキストを作成します。ストリーム・バリデータを初期化し、後続のコールで使用できるイベント・コンテキストを戻します。

XmlEvDestroySVCtx()とともに使用します。これは透過的なメソッドです。かわりに不透過なXmlEvSchemaValidate()を使用することもできます。

構文

xmlevctx *XmlEvCreateSVCtx(
xmlctx *xctx,
xsdctx *sctx,
xmlevctx *docEvCtx,
xmlerr *err);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト。有効である必要があります。

sctx

IN

スキーマ・コンテキスト。有効である必要があります。

docEvCtx

IN

検証されるドキュメントのイベント・コンテキスト

err

OUT

数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

戻り値

(xmlevctx) XmlEvNext()への後続コールに渡されるイベント・コンテキスト。

XmlEvDestroyPPCtx()

イベント・コンテキストを破棄します。解析を終了します。解析操作中いつでもコールできます。

構文

void XmlEvDestroyPPCtx(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

XmlEvDestroySVCtx()

ストリーム・バリデータによって作成されたイベント・コンテキストを終了します。正常に終了した場合は、XMLERR_OK [0]を戻し、失敗時には数値のエラー・コードを戻します。

XmlEvCreateSVCtx()とともに使用します。これは透過的なメソッドです。かわりに不透過なXmlEvSchemaValidate()を使用することもできます。

構文

xmlerr XmlEvDestroySVCtx(
xmlctx *xctx,
xmlevctx *evCtx);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

evCtx

IN

終了されたイベント・コンテキスト

戻り値

(xmlerr) エラー番号。

XmlEvGetAttrCount()

XML_EVENT_START_ELEMENTイベントの属性数を取得します。

構文

ub4  XmlEvGetAttrCount(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(ub4) 属性数。

XmlEvGetAttrDeclBody()

属性宣言XML_EVENT_ATTLIST_DECLARATIONの属性本体を取得します。また、長さをOUT lenパラメータとして提供します。

構文

oratext *XmlEvGetAttrDeclBody(
xmlevctx *evctx,
ub4 index,
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

len

OUT

長さ

戻り値

(oratext *) 宣言本体。

XmlEvGetAttrDeclBody0()

属性宣言XML_EVENT_ATTLIST_DECLARATIONのNULLで終了する属性本体を取得します。

構文

oratext *XmlEvGetAttrDeclBody0(
xmlevctx *evctx,
ub4 index);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

戻り値

(oratext *) 宣言本体。

XmlEvGetAttrDeclCount()

属性宣言XML_EVENT_ATTLIST_DECLARATIONの属性数を取得します。

構文

ub4 XmlEvGetAttrDeclCount(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(ub4) 属性数。

XmlEvGetAttrDeclElName()

属性宣言XML_EVENT_ATTLIST_DECLARATIONの要素名を取得します。また、長さをOUT lenパラメータとして提供します。

構文

oratext *XmlEvGetAttrDeclElName(
xmlevctx *evctx,
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

len

OUT

長さ

戻り値

(oratext *) 要素名。

XmlEvGetAttrDeclElName0()

属性宣言XML_EVENT_ATTLIST_DECLARATIONのNULLで終了する要素名を取得します。

構文

oratext *XmlEvGetAttrDeclElName0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext *) 要素名。

XmlEvGetAttrDeclLocalName()

属性宣言イベントXML_EVENT_ATTLIST_DECLARATIONのローカル名を取得します。また、長さをOUT lenパラメータとして提供します。

構文

oratext *XmlEvGetAttrDeclLocalName(
xmlevctx *evctx,
ub4 index
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

len

OUT

長さ

戻り値

(oratext *) ローカル名。

XmlEvGetAttrDeclLocalName0()

属性宣言イベントXML_EVENT_ATTLIST_DECLARATIONのNULLで終了するローカル名を取得します。

構文

oratext *XmlEvGetAttrDeclLocalName0(
xmlevctx *evctx,
ub4 index);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

戻り値

(oratext *) ローカル名。

XmlEvGetAttrDeclName()

属性宣言XML_EVENT_ATTLIST_DECLARATIONの属性名を取得します。また、長さをOUT lenパラメータとして提供します。

構文

oratext *XmlEvGetAttrDeclName(
xmlevctx *evctx,
ub4 index
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

len

OUT

長さ

戻り値

(oratext *) 属性名。

XmlEvGetAttrDeclName0()

属性宣言XML_EVENT_ATTLIST_DECLARATIONのNULLで終了する属性名を取得します。

構文

oratext *XmlEvGetAttrDeclName0(
xmlevctx *evctx,
ub4 index);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

戻り値

(oratext *) 属性名。

XmlEvGetAttrDeclPrefix()

属性宣言XML_EVENT_ATTLIST_DECLARATIONの属性接頭辞を取得します。また、長さをOUT lenパラメータとして提供します。

構文

oratext *XmlEvGetAttrDeclPrefix(
xmlevctx *evctx,
ub4 index
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

len

OUT

長さ

戻り値

(oratext *) 属性接頭辞。

XmlEvGetAttrDeclPrefix0()

属性宣言XML_EVENT_ATTLIST_DECLARATIONのNULLで終了する属性接頭辞を取得します。

構文

oratext *XmlEvGetAttrDeclPrefix0(
xmlevctx *evctx,
ub4 index);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

戻り値

(oratext *) 属性接頭辞。

XmlEvGetAttrID()

XML_EVENT_START_ELEMENTイベントの、属性のQNAMEの識別子を取得します。XmlEvCreatePPCtx()で指定されたユーザー定義のIDコールバックを起動します。コールバックが指定されていない場合、0 (ゼロ)を戻します。

構文

sb8 XmlEvGetAttrID(
xmlevctx *evctx
ub4 index);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

戻り値

(sb8) 識別子。

XmlEvGetAttrLocalName()

XML_EVENT_START_ELEMENTイベントの属性ローカル名を取得します。また、長さをOUT lenパラメータとして提供します。

構文

oratext *XmlEvGetAttrLocalName(
xmlevctx *evctx,
ub4 index
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス。XML_EVENT_START_ATTRの場合は無視されます。

len

OUT

長さ

戻り値

(oratext *) 属性名。

XmlEvGetAttrLocalName0()

XML_EVENT_START_ELEMENTイベントのNULLで終了する属性ローカル名を取得します。

構文

oratext *XmlEvGetAttrLocalName0(
xmlevctx *evctx,
ub4 index);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス。XML_EVENT_START_ATTRの場合は無視されます。

戻り値

(oratext *) 属性名。

XmlEvGetAttrName()

XML_EVENT_START_ELEMENTイベントの属性名を取得します。また、長さをOUT lenパラメータとして提供します。

構文

oratext *XmlEvGetAttrName(
xmlevctx *evctx,
ub4 index
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス。XML_EVENT_START_ATTRの場合は無視されます。

len

OUT

長さ

戻り値

(oratext *) 属性名。

XmlEvGetAttrName0()

XML_EVENT_START_ELEMENTイベントのNULLで終了する属性名を取得します。

構文

oratext *XmlEvGetAttrName0(
xmlevctx *evctx,
ub4 index);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス。XML_EVENT_START_ATTRの場合は無視されます。

戻り値

(oratext *) 属性名。

XmlEvGetAttrPrefix()

XML_EVENT_START_ELEMENTイベントの接頭辞タグを取得し、イベントの長さをOUT lenパラメータとして戻します。

構文

oratext *XmlEvGetAttrPrefix(
xmlevctx *evctx,
ub4 index,
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

len

OUT

イベント名の長さ

戻り値

(oratext *) 属性接頭辞。

XmlEvGetAttrPrefix0()

XML_EVENT_START_ELEMENTイベントのNULLで終了する属性接頭辞を取得します。

構文

oratext *XmlEvGetAttrPrefix0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

戻り値

(oratext *) 属性接頭辞。

XmlEvGetAttrURI()

XML_EVENT_START_ELEMENTイベントの属性URIを取得します。また、長さをOUT lenパラメータとして提供します。

構文

oratext *XmlEvGetAttrURI(
xmlevctx *evctx,
ub4 index
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

len

OUT

長さ

戻り値

(oratext *) 属性URI。

XmlEvGetAttrURI0()

XML_EVENT_START_ELEMENTイベントのNULLで終了する属性URIを取得します。

構文

oratext *XmlEvGetAttrURI0(
xmlevctx *evctx,
ub4 index);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

戻り値

(oratext *) 属性URI。

XmlEvGetAttrUriID()

XML_EVENT_START_ELEMENTイベントに対する属性のURIの識別子を取得します。XmlEvCreatePPCtx()で指定されたユーザー定義のIDコールバックを起動します。コールバックが指定されていない場合、0 (ゼロ)を戻します。

構文

sb8 XmlEvGetAttrUriID(
xmlevctx *evctx,
ub4 index);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

戻り値

(sb8) 識別子。

XmlEvGetAttrValue()

XML_EVENT_START_ELEMENTイベントのいずれかの属性値を取得し、イベントの長さをOUT lenパラメータとして戻します。

構文

oratext *XmlEvGetAttrValue(
xmlevctx *evctx,
ub4 index,
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

len

OUT

イベント名の長さ

戻り値

(oratext *) 属性値。

XmlEvGetAttrValue0()

XML_EVENT_START_ELEMENTイベントのNULLで終了する属性値を取得します。

構文

oratext *XmlEvGetAttrValue0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

戻り値

(oratext *) 属性値。

XmlEvGetElDeclContent()

XML_EVENT_ELEMENT_DECLARATIONの要素宣言コンテンツを取得します。また、長さをOUT lenパラメータとして提供します。

構文

oratext *XmlEvGetElDeclContent(
xmlevctx *evctx,
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

len

OUT

長さ

戻り値

(oratext *) 宣言コンテンツ。

XmlEvGetElDeclContent0()

XML_EVENT_ELEMENT_DECLARATIONの要素宣言コンテンツを取得します。

構文

oratext *XmlEvGetElDeclContent0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext *) 宣言コンテンツ。

XmlEvGetEncoding()

XmlEvCreatePPCtx()コールまたはXmlEvCreateSVCtx()コールで指定されたエンコーディングの値を戻します。

構文

oratext *XmlEvGetEncoding(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext *) 出力エンコーディングのエンコーディング値。エンコーディングが指定されていない場合はNULLを戻します。

XmlEvGetError()

XmlEvNext()コールによってXML_EVENT_FATAL_ERRORまたはXML_EVENT_ERRORイベントが戻されるときにエラー番号を取得します。

構文

xmlerr XmlEvGetError(
xmlevctx *evctx
oratext **message);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

message

IN

エラー・メッセージ

戻り値

(xmlerr) エラー番号。

XmlEvGetName()

イベントの名前を戻し、イベントの長さをOUT lenパラメータで戻します。イベント名は、次のいずれかです。

- XML_EVENT_START_ELEMENT

- XML_EVENT_END_ELEMENT

- XML_EVENT_START_ENTITY

- XML_EVENT_ENTITY_REFERENCE

- XML_EVENT_ELEMENT_DECLARATION

- XML_EVENT_PE_DECLARATION

- XML_EVENT_UE_DECLARATION

- XML_EVENT_NOTATTION_DECLARATION

構文

oratext *XmlEvGetName(
xmlevctx *evctx,
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

len

OUT

名前の長さ

戻り値

(oratext *) 名前。

XmlEvGetName0()

次のいずれかのイベントのNULLで終了する名前を取得します。

- XML_EVENT_START_ELEMENT

- XML_EVENT_END_ELEMENT

- XML_EVENT_START_ENTITY

- XML_EVENT_ENTITY_REFERENCE

- XML_EVENT_ELEMENT_DECLARATION

- XML_EVENT_PE_DECLARATION

- XML_EVENT_UE_DECLARATION

- XML_EVENT_NOTATTION_DECLARATION

構文

oratext *XmlEventGetName0(
xmleventctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext *) 名前。

XmlEvGetLocalName()

次のいずれかのイベントのローカル名タグを取得し、イベントの長さをOUT lenパラメータとして戻します。

- XML_EVENT_START_ELEMENT

- XML_EVENT_END_ELEMENT

構文

oratext *XmlEvGetLocalName(
xmlevctx *evctx,
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

len

OUT

イベント名の長さ

戻り値

(oratext *) ローカル名タグ。

XmlEvGetLocalName0()

次のいずれかのイベントのNULLで終了するローカル名タグを取得します。

- XML_EVENT_START_ELEMENT

- XML_EVENT_END_ELEMENT

構文

oratext *XmlEvGetLocalName0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext *) ローカル名タグ。

XmlEvGetLocation()

解析時の位置を入力ストリームおよびそのパスの行番号のOUTパラメータとして取得します。解析プロセス中いつでも使用できます。

構文

void *XmlEvGetLocation(
xmlevctx *evctx,
ub4 *line,
oratext **path);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

line

OUT

行番号

path

OUT

URLまたはファイル名

XmlEvGetPIData()

次のいずれかのイベントのテキストを取得し、イベントの長さをOUT lenパラメータとして戻します。

- XML_EVENT_PI

- XML_EVENT_PI_CONT

構文

oratext *XmlEvGetPIData(
xmlevctx *evctx
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

len

OUT

イベント名の長さ

戻り値

(oratext *) データ。

XmlEvGetPIData0()

次のいずれかのイベントのNULLで終了するデータを取得します。

- XML_EVENT_PI

- XML_EVENT_PI_CONT

構文

oratext *XmlEvGetPIData0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext *) データ。

XmlEvGetPITarget()

次のいずれかのイベントのターゲットを取得し、イベントの長さをOUT lenパラメータとして戻します。

- XML_EVENT_PI

- XML_EVENT_PI_CONT

構文

oratext *XmlEvGetPITarget(
xmlevctx *evctx
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

len

OUT

イベント名の長さ

戻り値

(oratext *) ターゲット。

XmlEvGetPITarget0()

次のいずれかのイベントのNULLで終了するターゲットを取得します。

- XML_EVENT_PI

- XML_EVENT_PI_CONT

構文

oratext *XmlEvGetPITarget0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext *) ターゲット。

XmlEvGetPEIsGen()

汎用エンティティが宣言されたかどうか(XML_EVENT_PE_DECLARATION)を判別します。

構文

boolean XmlEvGetPEIsGen(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

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

XmlEvGetPERepl()

PE宣言XML_EVENT_PE_DECLARATIONの置換テキストを取得します。また、長さをOUT lenパラメータとして提供します。

構文

oratext *XmlEvGetPERepl(
xmlevctx *evctx,
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

len

OUT

長さ

戻り値

(oratext *) PE置換テキスト。

XmlEvGetPERepl0()

PE宣言XML_EVENT_PE_DECLARATIONのNULLで終了する置換テキストを取得します。

構文

oratext *XmlEvGetPERepl0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext *) PE置換テキスト。

XmlEvGetPrefix()

次のいずれかのイベントの接頭辞タグを取得し、イベントの長さをOUT lenパラメータとして戻します。

- XML_EVENT_START_ELEMENT

- XML_EVENT_END_ELEMENT

構文

oratext *XmlEvGetPrefix(
xmlevctx *evctx,
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

len

OUT

接頭辞の長さ

戻り値

(oratext *) 接頭辞タグ。

XmlEvGetPrefix0()

次のいずれかのイベントのNULLで終了する接頭辞タグを取得します。

- XML_EVENT_START_ELEMENT

- XML_EVENT_END_ELEMENT

構文

oratext *XmlEvGetPrefix0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext *) 接頭辞タグ。

XmlEvGetPubId()

次のいずれかのイベントの公開識別子を取得し、長さをOUT lenパラメータとして提供します。

- XML_EVENT_PE_DECLARATION

- XML_EVENT_UE_DECLARATION

- XML_EVENT_NOTATION_DECLARATION

構文

oratext *XmlEvGetPubId(
xmlevctx *evctx,
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

len

OUT

長さ

戻り値

(oratext *) 公開識別子。

XmlEvGetPubId0()

次のいずれかのイベントのNULLで終了する公開識別子を取得します。

- XML_EVENT_PE_DECLARATION

- XML_EVENT_UE_DECLARATION

- XML_EVENT_NOTATION_DECLARATION

構文

oratext *XmlEvGetPubId0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext *) 公開識別子。

XmlEvGetSysId()

次のいずれかのイベントのシステム識別子を取得し、長さをOUT lenパラメータとして提供します。

- XML_EVENT_PE_DECLARATION

- XML_EVENT_UE_DECLARATION

- XML_EVENT_NOTATION_DECLARATION

構文

oratext *XmlEvGetSysId(
xmlevctx *evctx,
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

len

OUT

長さ

戻り値

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

XmlEvGetSysId0()

次のいずれかのイベントのNULLで終了するシステム識別子を取得します。

- XML_EVENT_PE_DECLARATION

- XML_EVENT_UE_DECLARATION

- XML_EVENT_NOTATION_DECLARATION

構文

oratext *XmlEvGetSysId0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

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

XmlEvGetTagID()

XML_EVENT_START_ELEMENTイベントに対するタグのQNAMEの識別子を取得します。XmlEvCreatePPCtx()で指定されたユーザー定義のIDコールバックを起動します。コールバックが指定されていない場合、0 (ゼロ)を戻します。

構文

sb8 XmlEvGetTagID(
xmlevctx *evctx)

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(sb8) 識別子。

XmlEvGetTagUriID()

XML_EVENT_START_ELEMENTまたはXML_EVENT_END_ELEMENTイベントに対するタグのURIの識別子を取得します。XmlEvCreatePPCtx()で指定されたユーザー定義のIDコールバックを起動します。コールバックが指定されていない場合、0 (ゼロ)を戻します。

構文

sb8 XmlEvGetTagUriID(
xmlevctx *evctx)

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(sb8) 識別子。

XmlEvGetText()

次のいずれかのイベントのテキストを取得し、イベントの長さをOUT lenパラメータとして戻します。

- XML_EVENT_CHARACTERS

- XML_EVENT_CHARACTERS_CONT

- XML_EVENT_SPACE

- XML_EVENT_SPACE_CONT

- XML_EVENT_COMMENT

- XML_EVENT_COMMENT_CONT

- XML_EVENT_CDATA

- XML_EVENT_CDATA_CONT

構文

oratext *XmlEvGetText(
xmlevctx *evctx
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

len

OUT

イベント名の長さ

戻り値

(oratext *) イベント・テキスト。

XmlEvGetText0()

次のいずれかのイベントのNULLで終了するテキストを取得します。

- XML_EVENT_CHARACTERS

- XML_EVENT_CHARACTERS_CONT

- XML_EVENT_SPACE

- XML_EVENT_SPACE_CONT

- XML_EVENT_COMMENT

- XML_EVENT_COMMENT_CONT

- XML_EVENT_CDATA

- XML_EVENT_CDATA_CONT

構文

oratext *XmlEvGetText0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext *) イベント・テキスト。

XmlEvGetUENdata()

XML_EVENT_UE_DECLARATIONイベントのndataを取得し、イベントの長さをOUT lenパラメータとして戻します。

構文

oratext *XmlEvGetUENdata(
xmlevctx *evctx,
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

len

OUT

イベント名の長さ

戻り値

(oratext*) ndata。

XmlEvGetUENdata0()

XML_EVENT_UE_DECLARATIONイベントのNULLで終了するndataを取得します。

構文

oratext *XmlEvGetUENdata0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext*) ndata。

XmlEvGetURI()

次のいずれかのイベントのURIタグを取得し、イベントの長さをOUT lenパラメータとして戻します。

- XML_EVENT_START_ELEMENT

- XML_EVENT_END_ELEMENT

構文

oratext *XmlEvGetURI(
xmlevctx *evctx,
ub4 *len);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

len

OUT

イベント名の長さ

戻り値

(oratext *) URIタグ。

XmlEvGetURI0()

次のいずれかのイベントのNULLで終了するURIタグを取得します。

- XML_EVENT_START_ELEMENT

- XML_EVENT_END_ELEMENT

構文

oratext *XmlEvGetURI0(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext *) URIタグ。

XmlEvGetVersion()

XML_EVENT_START_DOCUMENTイベントのXML宣言でのバージョン仕様に関する情報を提供します。

構文

oratext *XmlEvGetVersion(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(oratext *) XML宣言からのバージョン文字列。

XmlEvIsEncodingSpecified()

XML_EVENT_START_DOCUMENTイベントのXML宣言でのエンコーディング仕様に関する情報を提供します。

構文

boolean XmlEvIsEncodingSpecified(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

エンコーディングがXML宣言で指定されている場合はTRUE、指定されていない場合はFALSEを戻します。

XmlEvIsNamespaceAttr()

XML_EVENT_START_ELEMENTイベントの属性が名前空間属性かどうかを判別します。

構文

boolean XmlEvIsNamespaceAttr(
xmlevctx *evctx,
ub4 index);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

index

IN

属性のインデックス

戻り値

属性が名前空間属性の場合はTRUE、名前空間属性でない場合はFALSEを戻します。

XmlEvIsStandalone()

XML_EVENT_START_DOCUMENTイベントのXML宣言でのスタンドアロン仕様に関する情報を提供します。

構文

sword  XmlEvIsStandalone(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(sword) スタンドアロンがXML宣言で指定されていない場合は-1、スタンドアロンにFALSEが指定されている場合は0、スタンドアロンにTRUEが指定されている場合は1を戻します。

XmlEvNext()

次のイベントを取得し、パーサーを進めます。

構文

xmlevtype XmlEvNext(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(xmlevtype) イベント。

XmlEvNextTag()

XML_EVENT_START_ELEMENT、XML_EVENT_END_ELEMENT、XML_EVENT_END_DOCUMENTなどの次のタグ・イベントにパーサーを進めます。

構文

xmlevtype XmlEvNextTag(
xmlevctx *evctx);

パラメータ

IN/OUT

説明

evctx

IN

XMLイベント・コンテキスト

戻り値

(xmlevtype) イベント。

XmlEvLoadPPDoc()

新しいドキュメントをロードし、プル解析用に設定します。入力ソースからのXML文書をプル解析モードで解析する準備をします。入力ソースは、第11章「C用のXML APIパッケージ」のXmlLoadDom()およびXmlLoadSax()のものと同じです。実際の解析は、XmlEvNext()への複数のコールによって進められます。

構文

xmlerr XmlEvLoadPPDoc(
xmlctx *xctx,
xmlevctx *evctx,
oratext *inputType,
void *input,
ub4 inputLen,
oratext *inputEncoding);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

evctx

IN

XMLイベント・コンテキスト

inputType

IN

入力タイプ(ファイル、バッファ、URI、ストリーム、stdioなど)

input

IN

入力

inputLen

IN

バッファ入力タイプの入力の長さ

inputEncoding

IN

入力エンコーディング

戻り値

(xmlerr) エラー・コード。

XmlEvSchemaValidate()

イベントによって表されるXML文書を検証します。ストリーム・バリデータを初期化します。

これは不透過メソッドです。かわりに透過的なXmlEvCreateSVCtx()およびXmlEvDestroySVCtx()を使用することもできます。

構文

xmlerr XmlEvSchemaValidate(
xmlctx *xctx,
xsdctx *sctx,
xmlevctx *docEvCtx,
oratext **errmsg);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

sctx

IN

スキーマ・コンテキスト

docEvCtx

IN

検証されるドキュメントのイベント・コンテキスト

errmsg

OUT

エラー・コードに対応するエラー・メッセージ

戻り値

(xmlerr) エラー・コード。

5 C用のOrastream APIパッケージ

Orastream APIは、XML文書での64Kを超えるテキスト・ノードおよびバイナリ・ノードの処理をサポートします。

Orastreamには、次のグループのインタフェースが含まれています。

- 「OraStreamインタフェース」

Orastreamで使用されるデータ型は第1章「Cのデータ型」に記載されています。oracheck、oraerr、oraprop_id、oramemctx、oraprop、oraprop_t、oraprop_v、orastreamおよびorastreamhdlが含まれます。

Orastreamインタフェースのエラー・コードを表5-1に示します。

表5-1 Orastreamエラー・コード

エラー・コード

説明

ORASTREAM_ERR_NULL_POINTER

Nullポインタが検出されました。

ORASTREAM_ERR_BAD_STREAM

無効なストリーム・オブジェクト。

ORASTREAM_ERR_WRONG_DIRECTION

ストリーム・オブジェクトは反対のI/O方向に定義されています。

ORASTREAM_ERR_UNKNOWN_PROPERTY

不明な作成プロパティ。

ORASTREAM_ERR_NO_DIRECTION

ストリームのI/O方向が定義されていません。

ORASTREAM_ERR_BI_DIRECTION

ストリームの方向は、両方のI/O方向を使用していると間違って定義されています。

ORASTREAM_ERR_NOT_OPEN

ストリームはオープンしていません。

ORASTREAM_ERR_WRONG_MODE

ストリームは反対のchar/byteモードに定義されています。

ORASTREAM_ERR_CANT_OPEN

ストリームをオープンできません。

ORASTREAM_ERR_CANT_CLOSE

ストリームをクローズできません。

Orastreamインタフェースの詳細は、『Oracle XML Developer's Kitプログラマーズ・ガイド』を参照してください。

OraStreamインタフェース

これらのメソッドは、データをピース単位の移動に使用する一方向のストリームをサポートしています。ストリームの方向およびモードは、OraStreamInit()メソッドでストリームを初期化するパラメータによって決定されます。

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

関数

概要

OraStreamClose()

ストリームをクローズします。

OraStreamHandle()

ストリームにハンドルを戻します。

OraStreamInit()

ストリームを初期化します。

OraStreamIsOpen()

ストリームがオープンしているかどうかを判断します。

OraStreamOpen()

ストリームをオープンします。

OraStreamRead()

ストリームからバイトを読み込みます。

OraStreamReadable()

ストリームが読取り可能かどうかを判断します。

OraStreamReadChar()

ストリームから文字を読み込みます。

OraStreamSid()

ストリームのSIDを設定します。

OraStreamTerm()

ストリームを破棄します。

OraStreamWrite()

ストリームにバイトを書き込みます。

OraStreamWritable()

ストリームが書込み可能かどうかを判断します。

OraStreamWriteChar()

ストリームに文字を書き込みます。

OraStreamClose()

orastreamオブジェクトをクローズします。

この関数を使用し、ストリームの「クローズ」コールバック関数をコールして、特定のストリームをクローズします。

成功した場合はORAERR_OKを戻し、失敗した場合はエラー・コードを戻します。表5-1を参照してください。

構文

oraerr OraStreamClose(
orastream *stream);

パラメータ

IN/OUT

説明

stream

IN

クローズされるストリーム

OraStreamHandle()

orastreamオブジェクトのハンドルを戻します。

ハンドルには、汎用ポインタとファイル記述子が含まれます。

構文

orastreamhdl *OraStreamHandle(
orastream *stream);

パラメータ

IN/OUT

説明

stream

IN

ハンドルが戻されるストリーム

OraStreamInit()

orastreamオブジェクトを作成して初期化します。

構文

orastream *OraStreamInit(
void *sctx,
void *sid,
oraerr *err,
list);

パラメータ

IN/OUT

説明

sctx

IN

入力コンテキスト。NULLの場合もあります

sid

IN

ユーザー定義のストリーム・コンテキスト識別子

err

OUT

エラー(存在する場合)。成功した場合はORAERR_OK、失敗した場合はエラー・コード。表5-1を参照してください

list

IN

新しいorastreamオブジェクトのプロパティを指定する引数の名前/値ペアのNULLで終了するリスト。これらは次のとおりです。

- openプロパティ名はオープン関数のためのもので、その値が続きます。

ORASTREAM_OPEN_F((*), sctx, sid, hdl, length)

- closeプロパティ名はクローズ関数のためのもので、その値が続きます。

ORASTREAM_CLOSE_F((*), sctx, sid, hdl)

- readプロパティ名は、ストリームからバッファにバイト・データを読み込むためのものです。nreadは実際に読み込まれたバイト数を戻します。

ORASTREAM_READ_F((*), sctx, sid, hdl, dest,
size, start, nread, eoi)

- writeプロパティ名は、バッファからストリームにバイト・データを書き込むためのものです。writtenは実際に書き込まれたバイト数を戻します。

ORASTREAM_WRITE_F((*), sctx, sid, hdl, src,
size, written)

- read_charプロパティ名は、ストリームからバッファに文字データを読み込むためのものです。nreadは実際に読み込まれた文字数を戻します。

ORASTREAM_READ_F((*), sctx, sid, hdl, dest,
size, start, nread, eoi)

- write_charプロパティ名は、バッファからストリームに文字データを書き込むためのものです。writtenは実際に書き込まれた文字数を戻します。

ORASTREAM_WRITE_F((*), sctx, sid, hdl, src,
size, written)

OraStreamIsOpen()

orastreamがオープンしているかどうかを判断します。TRUEまたはFALSEを返します。

読込みおよび書込み操作を実行するには、ストリームがオープンしている必要があります。

構文

boolean OraStreamIsOpen(
orastream *stream);

パラメータ

IN/OUT

説明

stream

IN

読込みまたは書込みのためにオープンする必要のあるストリーム。

OraStreamOpen()

orastreamオブジェクトをオープンします。

この関数は、ストリームの「オープン」コールバック関数をコールしてストリームをオープンします。

成功した場合はORAERR_OKを戻し、失敗した場合はエラー・コードを戻します。表5-1を参照してください。

構文

oraerr OraStreamOpen(
orastream *stream,
ubig_ora *length)

パラメータ

IN/OUT

説明

stream

IN

オープンしているストリーム

length

OUT

オプションのパラメータ。使用されません

OraStreamRead()

orastreamオブジェクトからbyteを読み込みます。

この関数を使用して、ストリームから指定されたバッファにデータを読み込みます。また、ストリームの終わりに達すると、eoiパラメータにTRUEを戻します。

成功した場合はORAERR_OKを戻し、失敗した場合はエラー・コードを戻します。表5-1を参照してください。

構文

oraerr OraStreamRead(
orastream *stream,
oratext *dest,
ubig_ora size,
oratext **start,
ubig_ora *nread,
ub1 *eoi);

パラメータ

IN/OUT

説明

stream

IN

読み込まれるストリーム

dest

IN

宛先バッファ

size

IN

読み込まれるデータのサイズ

start

OUT

読み込まれるデータの先頭へのポインタ

nread

OUT

ストリームから実際に読み込まれたバイト数

eoi

OUT

ストリームの終わりに達するとTRUEを戻し、それ以外の場合はFALSEを戻します

OraStreamReadable()

既存のorastreamオブジェクトが読込み可能かどうかを判断します。

TRUEまたはFALSEを返します。

構文

boolean OraStreamReadable(
orastream *stream);

パラメータ

IN/OUT

説明

stream

IN

読込み可能かどうかを確認するストリーム

OraStreamReadChar()

orastreamオブジェクトからcharを読み込みます。

この関数を使用して、ストリームから指定されたバッファにデータを読み込みます。また、ストリームの終わりに達すると、eoiパラメータにTRUEを戻します。

成功した場合はORAERR_OKを戻し、失敗した場合はエラー・コードを戻します。表5-1を参照してください。

構文

oraerr OraStreamReadChar(
orastream *stream,
oratext *dest,
ubig_ora size,
oratext **start,
ubig_ora *nread,
ub1 *eoi);

パラメータ

IN/OUT

説明

stream

IN

読み込まれるストリーム

dest

IN

宛先バッファ

size

IN

読み込まれるデータのサイズ

start

OUT

読み込まれるデータの先頭へのポインタ

nread

OUT

ストリームから実際に読み込まれた文字数

eoi

OUT

ストリームの終わりに達するとTRUEを戻し、それ以外の場合はFALSEを戻します

OraStreamSid()

既存のorastreamオブジェクトにSIDを割り当てます。OUTパラメータosidを使用してSIDを戻します。

成功した場合はORAERR_OKを戻し、失敗した場合はエラー・コードを戻します。表5-1を参照してください。

構文

oraerr OraStreamSid(
orastream *stream,
void *sid,
void **osid);

パラメータ

IN/OUT

説明

stream

IN

SIDが変更されるストリーム

sid

IN

新しいSID

osid

OUT

ストリームの前のSID

OraStreamTerm()

orastreamオブジェクトを破棄して、対応するメモリーを解放します。

成功した場合はORAERR_OKを戻し、失敗した場合はエラー・コードを戻します。表5-1を参照してください。

構文

oraerr OraStreamTerm(
orastream *stream);

パラメータ

IN/OUT

説明

stream

IN

破棄するストリーム

OraStreamWrite()

orastreamオブジェクトにbyteを書き込みます。

実際に読み込まれたバイト数は、OUTパラメータnwroteによって格納されます。

成功した場合はORAERR_OKを戻し、失敗した場合はエラー・コードを戻します。表5-1を参照してください。

構文

oraerr OraStreamWrite(
orastream *stream,
oratext *src,
ubig_ora size,
ubig_ora *nwrote);

パラメータ

IN/OUT

説明

stream

IN

データが書き込まれるストリーム

src

IN

データの書込み元バッファ

size

IN

書き込まれるデータのサイズ

nwrote

OUT

ストリームに書き込まれるバイト数

OraStreamWritable()

既存のorastreamオブジェクトが書込み可能かどうかを判断します。

TRUEまたはFALSEを返します。

構文

boolean OraStreamWritable(
orastream *stream);

パラメータ

IN/OUT

説明

stream

IN

書込み可能かどうかを判断するストリーム。

OraStreamWriteChar()

orastreamオブジェクトにcharを書き込みます。

実際に書き込まれた文字数は、OUTパラメータnwroteによって格納されます。

成功した場合はORAERR_OKを戻し、失敗した場合はエラー・コードを戻します。表5-1を参照してください。

構文

oraerr OraStreamWriteChar(
orastream *stream,
oratext *src,
ubig_ora size,
ubig_ora *nwrote);

パラメータ

IN/OUT

説明

stream

IN

データが書き込まれるストリーム

src

IN

データの書込み元バッファ

size

IN

書き込まれるデータのサイズ

nwrote

OUT

ストリームに書き込まれる文字数

6 C用の範囲APIパッケージ

範囲パッケージには、2つのインタフェースのAPIが含まれます。

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

- DocumentRangeインタフェース

- Rangeインタフェース

関連項目:

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

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

DocumentRangeインタフェース

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

表6-1 DocumentRangeメソッドの概要: 範囲パッケージ

関数

概要

XmlDomCreateRange()

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

XmlDomCreateRange()

範囲オブジェクトの作成に使用される、唯一のDocumentRangeインタフェースのメソッド。

構文

xmlrange* XmlDomCreateRange(
xmlctx *xctx,
xmlrange *range,
xmldocnode *doc);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

既存のNodeIterator、または新規NodeIteratorを割り当てる場合はNULL

doc

IN

新規の範囲が追加されるドキュメント

戻り値

(xmlrange *) 元の、または新規の範囲オブジェクト。

Rangeインタフェース

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

表6-2 Rangeメソッドの概要: 範囲パッケージ

関数

概要

XmlDomRangeClone()

範囲を複製します。

XmlDomRangeCloneContents()

範囲で選択された内容を複製します。

XmlDomRangeCollapse()

範囲をスタート・ポイントかエンド・ポイントまで縮小します。

XmlDomRangeCompareBoundaryPoints()

2つの範囲の境界点を比べます。

XmlDomRangeDeleteContents()

範囲で選択された内容を削除します。

XmlDomRangeDetach()

範囲を分離します。

XmlDomRangeExtractContents()

範囲で選択された内容を抽出します。

XmlDomRangeGetCollapsed()

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

XmlDomRangeGetCommonAncestor()

2つの境界点の最も深い共通の祖先ノードを戻します。

XmlDomRangeGetDetached()

範囲が分離されているかどうかを戻します。

XmlDomRangeGetEndContainer()

範囲終了コンテナ・ノードを戻します。

XmlDomRangeGetEndOffset()

範囲終了オフセットを戻します。

XmlDomRangeGetStartContainer()

範囲開始コンテナ・ノードを戻します。

XmlDomRangeGetStartOffset()

範囲開始オフセットを戻します。

XmlDomRangeIsConsistent()

範囲が一貫しているかどうかを戻します。

XmlDomRangeSelectNode()

ノードを範囲として選択します。

XmlDomRangeSelectNodeContents()

ノード内容を選択するための範囲を定義します。

XmlDomRangeSetEnd()

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

XmlDomRangeSetEndBefore()

ノードの前にエンド・ポイントを設定します。

XmlDomRangeSetStart()

スタート・ポイントを設定します。

XmlDomRangeSetStartAfter()

ノードの後にスタート・ポイントを設定します。

XmlDomRangeSetStartBefore()

ノードの前にスタート・ポイントを設定します。

XmlDomRangeClone()

範囲を複製します。元の範囲で選択された内容に影響することなく、範囲を複製します。エラーの場合はNULLを戻します。

構文

xmlrange* XmlDomRangeClone(
xmlctx *xctx,
xmlrange *range,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

xerr

OUT

数値のリターン・コード

戻り値

(xmlrange *) 古い範囲を複製した新しい範囲。

XmlDomRangeCloneContents()

範囲で選択された内容を複製します。複製しますが、範囲で選択された内容を削除しません。範囲の一貫性チェックを実行し、エラーがあればretvalをエラー・コードに設定します。

構文

xmlnode* XmlDomRangeCloneContents(
xmlctx *xctx,
xmlrange *range,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

xerr

OUT

数値のリターン・コード

戻り値

(xmlnode *) 複製された内容。

XmlDomRangeCollapse()

範囲をスタート・ポイントかエンド・ポイントまで縮小します。縮小のポイントは、この範囲が追加されるドキュメント内の有効なポイントとみなされます。

構文

xmlerr XmlDomRangeCollapse(
xmlctx *xctx,
xmlrange *range,
boolean tostart);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

tostart

IN

スタート・ポイント(TRUE)かエンド・ポイント(FALSE)のどちらまで縮小するか指示

戻り値

(xmlerr) 数値のリターン・コード。

XmlDomRangeCompareBoundaryPoints()

2つの異なる範囲の2つの境界点を比較します。範囲(range)の対応する境界点が2番目の範囲(srange)の対応する境界点の前、同じ位置、後のいずれに位置するかにより-1、0、1を戻します。2つの範囲が2つの異なるドキュメントに追加される場合、またはいずれかの範囲が分離されている場合は~(int)0を戻します。

構文

sb4 XmlDomRangeCompareBoundaryPoints(
xmlctx *xctx,
xmlrange *range,
xmlcmphow how,
xmlrange *srange,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

how

IN

xmlcmphow値。比較方法

srange

IN

比較対象の範囲オブジェクト

xerr

OUT

数値のリターン・コード

戻り値

(sb4) strcmpのような比較結果。

XmlDomRangeDeleteContents()

範囲で選択された内容を削除します。範囲の一貫性チェックを実行し、エラーがあればretvalをエラー・コードに設定します。

構文

xmlerr XmlDomRangeDeleteContents(
xmlctx *xctx,
xmlrange *range);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

戻り値

(xmlerr) 数値のリターン・コード。

XmlDomRangeDetach()

範囲をドキュメントから分離させ、その範囲(range)を無効な状態にします。

構文

xmlerr XmlDomRangeDetach(
xmlctx *xctx,
xmlrange *range);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

戻り値

(xmlerr) 数値のリターン・コード。

XmlDomRangeExtractContents()

範囲で選択された内容を抽出します。範囲で選択された内容を複製し、削除します。範囲の一貫性チェックを実行し、エラーがあればretvalをエラー・コードに設定します。

構文

xmlnode* XmlDomRangeExtractContents(
xmlctx *xctx,
xmlrange *range,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

xerr

OUT

数値のリターン・コード

戻り値

(xmlnode *) 抽出された内容。

XmlDomRangeGetCollapsed()

範囲が縮小され、分離されていない場合はTRUEを、それ以外の場合はFALSEを戻します。

構文

boolean XmlDomRangeGetCollapsed(
xmlctx *xctx,
xmlrange *range,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

xerr

OUT

数値のリターン・コード

戻り値

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

XmlDomRangeGetCommonAncestor()

範囲が分離されていない場合、範囲の2つの境界点で最も深い共通の祖先ノードを戻し、それ以外の場合はNULLを戻します。範囲は一貫した状態にあると仮定されます。

構文

xmlnode* XmlDomRangeGetCommonAncestor(
xmlctx *xctx,
xmlrange *range,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

xerr

OUT

数値のリターン・コード

戻り値

(xmlnode *) 最も深い共通の祖先ノード(またはNULL)。

XmlDomRangeGetDetached()

範囲が分離されているかどうかを戻します。範囲が分離されていてNULL以外の場合は、TRUEを戻します。それ以外の場合は、FALSEを戻します。

構文

ub1 XmlDomRangeGetDetached(
xmlctx *xctx,
xmlrange *range);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

戻り値

(ub1) 範囲が分離されている場合はTRUE、それ以外の場合はFALSE。

XmlDomRangeGetEndContainer()

範囲が分離されていない場合は、範囲終了コンテナ・ノードを戻し、それ以外の場合はNULLを戻します。

構文

xmlnode* XmlDomRangeGetEndContainer(
xmlctx *xctx,
xmlrange *range,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

xerr

OUT

数値のリターン・コード

戻り値

(xmlnode *) 範囲終了コンテナ・ノード(またはNULL)。

XmlDomRangeGetEndOffset()

範囲が分離されていない場合、範囲終了オフセットを戻し、それ以外の場合は~(ub4)0(最大値ub4)を戻します。

構文

ub4 XmlDomRangeGetEndOffset(
xmlctx *xctx,
xmlrange *range,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

xerr

OUT

数値のリターン・コード

戻り値

(ub4) 範囲終了オフセット(または最大ub4)。

XmlDomRangeGetStartContainer()

範囲が有効な状態で分離されていない場合は、範囲開始コンテナ・ノードを戻し、それ以外の場合はNULLを戻します。

構文

xmlnode* XmlDomRangeGetStartContainer(
xmlctx *xctx,
xmlrange *range,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

xerr

OUT

数値のリターン・コード

戻り値

(xmlnode *) 範囲開始コンテナ・ノード。

XmlDomRangeGetStartOffset()

範囲が分離されていない場合、範囲開始オフセットを戻し、それ以外の場合は~(ub4)0(最大値ub4)を戻します。

構文

ub4 XmlDomRangeGetStartOffset(
xmlctx *xctx,
xmlrange *range,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

xerr

OUT

数値のリターン・コード

戻り値

(ub4) 範囲開始オフセット(または最大ub4)。

XmlDomRangeIsConsistent()

範囲が一貫しているかどうかを戻します。範囲が一貫している場合はTRUEを戻します。両方のポイントは同じルート内にあり、スタート・ポイントはエンド・ポイントの前か同位置にあります。それ以外の場合は、FALSEを戻します。

構文

boolean XmlDomRangeIsConsistent(
xmlctx *xctx,
xmlrange *range,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

xerr

OUT

数値のリターン・コード

戻り値

(ub1) 範囲が一貫している場合はTRUE、それ以外の場合はFALSE。

XmlDomRangeSelectNode()

このノードの親がコンテナ・ノードになり、その子の間で、オフセットがこのノードのオフセットと等しくなるように範囲のエンド・ポイントとスタート・ポイントを設定します。範囲は縮小されます。ノードはそのドキュメントの有効なノードであると仮定されます。範囲が分離されている場合、ノードは無視され、範囲が追加されます。

構文

xmlerr XmlDomRangeSelectNode(
xmlctx *xctx,
xmlrange *range,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

node

IN

XMLノード

戻り値

(xmlerr) 数値のリターン・コード。

XmlDomRangeSelectNodeContents()

範囲スタート・ポイントをノード内容の先頭に、範囲エンド・ポイントをノード内容の末尾に設定します。ノードは有効なドキュメント・ノードであると仮定されます。範囲が分離されている場合、ノードは無視され、範囲が追加されます。

構文

xmlerr XmlDomRangeSelectNodeContents(
xmlctx *xctx,
xmlrange *range,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

node

IN

XMLノード

戻り値

(xmlerr) 数値のリターン・コード。

XmlDomRangeSetEnd()

範囲のエンド・ポイントを設定します。現在のルート・コンテナ以外のルート・コンテナが範囲にある場合、範囲は新しい位置まで縮小されます。エンド・ポイントがスタート・ポイントの前に位置するように設定されている場合、範囲はその位置に縮小されます。このタイプが定義される説明に従って、xmlerr値を戻します。範囲のスタート・ポイントが有効なスタート・ポイントであると仮定します。

構文

xmlerr XmlDomRangeSetEnd(
xmlctx *xctx,
xmlrange *range,
xmlnode *node,
ub4 offset);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

node

IN

XMLノード

offset

IN

終了オフセット

戻り値

(xmlerr) 数値のリターン・コード。

XmlDomRangeSetEndBefore()

範囲のエンド・ポイントをノードの前に設定します。現在のルート・コンテナ以外のルート・コンテナが範囲にある場合、範囲は新しい位置まで縮小されます。前のノードによりエンド・ポイントがスタート・ポイントの前に設定されている場合、範囲は新しい位置まで縮小されます。このタイプが定義される説明に従って、xmlerr値を戻します。範囲のスタート・ポイントが有効なスタート・ポイントであると仮定します。

構文

xmlerr XmlDomRangeSetEndBefore(
xmlctx *xctx,
xmlrange *range,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

node

IN

XMLノード

戻り値

(xmlerr) 数値のリターン・コード。

XmlDomRangeSetStart()

範囲のスタート・ポイントを設定します。現在のルート・コンテナ以外のルート・コンテナが範囲にある場合、範囲は新しい位置まで縮小されます。スタート・ポイントがエンド・ポイントの後に位置するように設定されている場合、範囲はその位置まで縮小されます。このタイプが定義される説明に従って、xmlerr値を戻します。範囲のエンド・ポイントが有効なエンド・ポイントであると仮定します。

構文

xmlerr XmlDomRangeSetStart(
xmlctx *xctx,
xmlrange *range,
xmlnode *node,
ub4 offset);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

node

IN

XMLノード

offset

IN

開始オフセット

戻り値

(xmlerr) 数値のリターン・コード。

XmlDomRangeSetStartAfter()

範囲のスタート・ポイントをノードの後に設定します。現在のルート・コンテナ以外のルート・コンテナが範囲にある場合、範囲は新しい位置まで縮小されます。前のノードによりスタート・ポイントがエンド・ポイントの後に設定されている場合、範囲は新しい位置まで縮小されます。範囲のエンド・ポイントが有効なエンド・ポイントであると仮定します。

構文

xmlerr XmlDomRangeSetStartAfter(
xmlctx *xctx,
xmlrange *range,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

node

IN

XMLノード

戻り値

(xmlerr) 数値のリターン・コード。

XmlDomRangeSetStartBefore()

範囲のスタート・ポイントをノードの前に設定します。範囲に現在のルート・コンテナ以外のルート・コンテナがある場合、範囲は新しい位置(オフセットは0)まで縮小されます。前のノードによりスタート・ポイントがエンド・ポイントの後に設定されている場合、範囲は新しい位置まで縮小されます。範囲のエンド・ポイントが有効なエンド・ポイントであると仮定します。

構文

xmlerr XmlDomRangeSetStartBefore(
xmlctx *xctx,
xmlrange *range,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

range

IN

範囲オブジェクト

node

IN

XMLノード

戻り値

(xmlerr) 数値のリターン・コード。

7 C用のSAX APIパッケージ

SAXはイベントベースのXML解析用の標準インタフェースで、XML-DEVメーリング・リストのメンバーが共同開発したものです。SAXを使用するには、関数ポインタを使用してxmlsaxcb構造を初期化し、XmlLoadSaxコールのいずれかに渡します。ユーザー定義のコンテキスト構造に対するポインタも提供されており、各SAX関数に渡されます。

イベントベースのスキーマ検証のAPIについては、第4章「C用のイベントAPIパッケージ」を参照してください。

この章の内容は次のとおりです。

- SAXインタフェース

関連項目:

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

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

SAXインタフェース

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

表7-1 SAXメソッドの概要

関数

概要

XmlSaxAttributeDecl()

属性の宣言のSAX通知を受け取ります。

XmlSaxCDATA()

CDATAのSAX通知を受け取ります。Oracle拡張機能。

XmlSaxCharacters()

文字データのSAX通知を受け取ります。

XmlSaxComment()

コメントのSAX通知を受け取ります。

XmlSaxElementDecl()

要素の宣言のSAX通知を受け取ります。Oracle拡張機能。

XmlSaxEndDocument()

ドキュメントの終わりのSAX通知を受け取ります。

XmlSaxEndElement()

要素の終わりのSAX通知を受け取ります。

XmlSaxNotationDecl()

表記法の宣言のSAX通知を受け取ります。

XmlSaxPI()

処理命令のSAX通知を受け取ります。

XmlSaxParsedEntityDecl()

解析対象エンティティの宣言のSAX通知を受け取ります。Oracle拡張機能。

XmlSaxStartDocument()

ドキュメントの始まりのSAX通知を受け取ります。

XmlSaxStartElement()

要素の始まりのSAX通知を受け取ります。

XmlSaxStartElementNS()

名前空間を認識する要素の始まりのSAX通知を受け取ります。

XmlSaxUnparsedEntityDecl()

解析対象外のエンティティ宣言のSAX通知を受け取ります。

XmlSaxWhitespace()

無視できる(空白)データのSAX通知を受け取ります。

XmlSaxXmlDecl()

XML宣言のSAX通知を受け取ります。Oracle拡張機能。

XmlSaxAttributeDecl()

このイベントはDTDの要素宣言をマークします。要素の名前と内容はデータ・エンコーディングに含まれます。属性は所属する要素の前に宣言できることに注意してください。

構文

xmlerr XmlSaxAttributeDecl(
void *ctx,
oratext *elem,
oratext *attr,
oratext *body);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

elem

IN

属性が宣言される要素(データ・エンコーディング)

attr

IN

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

body

IN

属性宣言の本体

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

関連項目:
XmlSaxAttributeDecl()

XmlSaxCDATA()

このイベントではCDATAはTextと異なるものとして処理されます。XmlSaxCDATAコールバックが指定されない場合、Textコールバックが呼び出されます。データがデータ・エンコーディングに追加され、長さがバイトではなく文字数で戻されます。無視できる(空白形式の)文字データの通知を受け取る、XmlSaxWhitespaceも参照してください。

構文

xmlerr XmlSaxCDATA(
void *ctx,
oratext *ch,
size_t len);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

ch

IN

CDATAのポインタ(データ・エンコーディング)

len

IN

CDATAの長さ、文字数

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

関連項目:
XmlSaxWhitespace()

XmlSaxCharacters()

このイベントはTextまたはCDATAのいずれかの文字データをマークします。XmlSaxCDATAコールバックが指定されている場合、かわりにCDATAがそのコールバックに送られます。XmlSaxCDATAコールバックが指定されていない場合、TextとCDATAはいずれもXmlSaxCharactersコールバックに送られます。データがデータ・エンコーディングに追加され、長さがバイトではなく文字数で戻されます。無視できる(空白形式の)文字データの通知を受け取る、XmlSaxWhitespaceも参照してください。

構文

xmlerr XmlSaxCharacters(
void *ctx,
oratext *ch,
size_t len);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

ch

IN

データのポインタ(データ・エンコーディング)

len

IN

データの長さ、文字数

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

関連項目:
XmlSaxWhitespace()

XmlSaxComment()

このイベントはXML文書のコメントをマークします。コメントのデータはデータ・エンコーディングに追加されます。SAX標準ではなく、Oracle拡張機能です。

構文

xmlerr XmlSaxComment(
void *ctx,
oratext *data);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

data

IN

コメントのデータ(データ・エンコーディング)

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

XmlSaxElementDecl()

このイベントはDTDの要素宣言をマークします。要素の名前と内容はデータ・エンコーディングに含まれます。

構文

xmlerr XmlSaxElementDecl(
void *ctx,
oratext *name,
oratext *content);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

name

IN

要素名

content

IN

要素のコンテキスト・モデル

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

関連項目:
XmlSaxAttributeDecl()

XmlSaxEndDocument()

最後のSAXイベントで、ドキュメントごとに1回コールされ、ドキュメントの終わりを示します。対応するイベントはXmlSaxStartDocumentです。

構文

xmlerr XmlSaxEndDocument(
void *ctx);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

関連項目:
XmlSaxStartDocument()

XmlSaxEndElement()

このイベントは要素の終わりをマークしますXmlSaxStartElementイベントまたはXmlSaxStartElementNSイベントに対応します。名前は要素のtagName(名前空間を認識する要素の場合は修飾名の場合があります)で、データ・エンコーディングに含まれます。

構文

xmlerr XmlSaxEndElement(
void *ctx,
oratext *name);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

name

IN

要素の終わりの名前(データ・エンコーディング)

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

関連項目:
XmlSaxEndElement()

XmlSaxNotationDecl()

このイベントはDTDの表記法の宣言をマークします。表記法名、公開識別子、およびシステム識別子はすべてデータ・エンコーディングに含まれます。識別子はいずれもオプションで、NULLでもかまいません。

構文

xmlerr XmlSaxNotationDecl(
void *ctx,
oratext *name,
oratext *pubId,
oratext *sysId);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

name

IN

表記法名(データ・エンコーディング)

pubId

IN

データ・エンコーディング時の表記の公開識別子、またはNULL

sysId

IN

データ・エンコーディング時の表記法のシステム識別子、またはNULL

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

XmlSaxPI()

このイベントはProcessingInstructionをマークします。ProcessingInstructionのターゲットとデータはデータ・エンコーディングに含まれます。ターゲットは必須ですが、データはNULLでもかまいません。

構文

xmlerr XmlSaxPI(
void *ctx,
oratext *target,
oratext *data);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

target

IN

PIのターゲット(データ・エンコーディング)

data

IN

データ・エンコーディング時のPIのデータ、またはNULL

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

XmlSaxParsedEntityDecl()

DTDの解析対象エンティティの宣言をマークします。解析対象エンティティの名前、公開識別子、システム識別子および表記法名がすべてデータ・エンコーディングに追加されます。

構文

xmlerr XmlSaxParsedEntityDecl(
void *ctx,
oratext *name,
oratext *value,
oratext *pubId,
oratext *sysId,
boolean general);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

name

IN

エンティティ名(データ・エンコーディング)

value

IN

エンティティの値(データ・エンコーディング)

pubId

IN

データ・エンコーディングに含まれたエンティティの公開識別子、またはNULL

sysId

IN

エンティティのシステム識別子(データ・エンコーディング)

general

IN

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

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

関連項目:
XmlSaxUnparsedEntityDecl()

XmlSaxStartDocument()

最初のSAXイベントで、ドキュメントごとに1回コールされ、ドキュメントの始まりを示します。対応するイベントはXmlSaxEndDocumentです。

構文

xmlerr XmlSaxStartDocument(
void *ctx);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

関連項目:
XmlSaxEndDocument()

XmlSaxStartElement()

このイベントは要素の先頭を示します。元の名前空間を認識しないバージョンのSAX 1であることに注意してください。XmlSaxStartElementNSが名前空間を認識するバージョンのSAX 2です。両方が登録されている場合、NSバージョンのみがコールされます。要素名はすべての属性パートと同様に、データ・エンコーディングに含まれます。属性のマッピングの操作については、NamedNodeMapインタフェースの関数を参照してください。対応する関数はXmlSaxEndElementです(この関数の名前空間を認識するバージョンはありません)。

構文

xmlerr XmlSaxStartElement(
void *ctx,
oratext *name,
xmlnodelist *attrs);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

name

IN

要素名(データ・エンコーディング)

attrs

IN

要素の属性のNamedNodeMap

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

関連項目:
XmlSaxEndElement()、第3章「C用のDOM APIパッケージ」のXmlDomGetNodeMapLength()およびXmlDomRemoveNamedItem()

XmlSaxStartElementNS()

このイベントは要素の先頭を示します。名前空間を認識するバージョンの新しいSAX 2であることに注意してください。XmlSaxStartElementは名前空間を認識しないバージョンのSAX 1です。両方が登録されている場合、NSバージョンのみがコールされます。要素の修飾名、ローカル名、名前空間URIはすべての属性パートと同様に、データ・エンコーディングに含まれます。属性のマッピングの操作については、NamedNodeMapインタフェースの関数を参照してください。対応する関数はXmlSaxEndElementです(この関数の名前空間を認識するバージョンはありません)。

構文

xmlerr XmlSaxStartElementNS(
void *ctx,
oratext *qname,
oratext *local,
oratext *nsp,
xmlnodelist *attrs);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

qname

IN

要素の修飾名(データ・エンコーディング)

local

IN

要素の名前空間のローカル名(データ・エンコーディング)

nsp

IN

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

attrs

IN

要素の属性のNodeList、またはNULL

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

関連項目:
XmlSaxStartElement()、XmlSaxEndElement()、「C用のDOM APIパッケージ」のXmlDomGetNodeMapLength()およびXmlDomRemoveNamedItem()

XmlSaxUnparsedEntityDecl()

DTDの解析対象外のエンティティ宣言をマークします。解析対象エンティティについては、XmlSaxParsedEntityDeclを参照してください。解析対象外のエンティティ名、公開識別子、システム識別子および表記法名はすべてデータ・エンコーディングに含まれます。

構文

xmlerr XmlSaxUnparsedEntityDecl(
void *ctx,
oratext *name,
oratext *pubId,
oratext *sysId,
oratext *note);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

name

IN

エンティティ名(データ・エンコーディング)

pubId

IN

データ・エンコーディングに含まれたエンティティの公開識別子、またはNULL

sysId

IN

エンティティのシステム識別子(データ・エンコーディング)

note

IN

エンティティの表記法名(データ・エンコーディング)

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

関連項目:
XmlSaxParsedEntityDecl()

XmlSaxWhitespace()

このイベントは改行、行間のインデントなどの無視できる空白データをマークします。対応する関数は、通常の文字データの通知を受け取るXmlSaxCharactersです。データはデータ・エンコーディングに含まれ、戻される長さはバイトではなく文字数です。

構文

xmlerr XmlSaxWhitespace(
void *ctx,
oratext *ch,
size_t len);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

ch

IN

データのポインタ(データ・エンコーディング)

len

IN

データの長さ、文字数

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

関連項目:
XmlSaxCharacters()

XmlSaxXmlDecl()

このイベントはXML宣言をマークします。XmlSaxStartDocumentは常に最初のイベントです。このコールバックが登録されXMLDeclが存在する場合、これが2番目のイベントになります。エンコーディング・フラグにより、エンコーディングが指定されているかどうかが示されます。ドキュメントのデフォルトのエンコーディング指定はオーバーライドされる(あるいは間違っている)場合があり、またなんらかの方式で入力がデータ・エンコーディングに変換されるため、ドキュメントで指定される実際のエンコーディングは指定されません。スタンドアロン・フラグの場合、フラグが指定されていない場合は-1が戻されます。それ以外の場合、FALSEは0、TRUEは1が戻されます。

構文

xmlerr XmlSaxXmlDecl(
void *ctx,
oratext *version,
boolean encoding,
sword standalone);

パラメータ

IN/OUT

説明

ctx

IN

ユーザーのSAXコンテキスト

version

IN

XMLDeclのバージョン文字列(データ・エンコーディング)

encoding

IN

エンコーディングが指定されているかどうか

standalone

IN

スタンドアロン・ドキュメントの値。指定されない場合は< 0

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_OK [0]。

8 C用のスキーマAPIパッケージ

このXMLスキーマ・バリデータのC実装は、W3CのXML Schema仕様、Rev REC-xmlschema-1-20010502に準拠します。これにより、スキーマ・バリデータが複数のスキーマ・ドキュメントを1つのスキーマに編集するのに必要な動作が実装されます。この結果のスキーマを使用して、特定のインスタンス・ドキュメントを検証することができます。

イベントベースのスキーマ検証については、第4章「C用のイベントAPIパッケージ」で説明しているメソッドを参照してください。

この章の内容は次のとおりです。

- Schemaインタフェース

関連項目:

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

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

Schemaインタフェース

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

表8-1 Schemaメソッドの概要

関数

概要

XmlSchemaClean()

スキーマ・コンテキストにロードされたスキーマをクリーン・アップし、スキーマ・コンテキストを再利用します。

XmlSchemaCreate()

スキーマ・コンテキストを作成し、戻します。

XmlSchemaDestroy()

スキーマ・コンテキストを破棄します。

XmlSchemaErrorWhere()

エラーが発生した場所を戻します。

XmlSchemaLoad()

スキーマ・ドキュメントをロードします。

XmlSchemaLoadedList()

ロードされたスキーマ・ドキュメントのサイズとリスト、またはいずれかを戻します。

XmlSchemaSetErrorHandler()

スキーマ・コンテキストに、エラー・メッセージ・ハンドラとその関連コンテキストを設定します。

XmlSchemaSetValidateOptions()

次の検証セッションで使用されるオプションを設定します。

XmlSchemaTargetNamespace()

指定されたスキーマ・ドキュメントのターゲットの名前空間を戻します。

XmlSchemaUnload()

スキーマ・ドキュメントをアンロードします。

XmlSchemaValidate()

要素ノードをスキーマについて検証します。

XmlSchemaVersion()

このスキーマ実装のバージョンを戻します。

XmlSchemaClean()

スキーマ・コンテキストにロードされたスキーマをクリーン・アップし、スキーマ・コンテキストを再利用します。

構文

void XmlSchemaClean(
xsdctx *sctx);

パラメータ

IN/OUT

説明

sctx

IN

クリーン・アップされるスキーマ・コンテキスト

関連項目:
XmlSchemaCreate()、XmlSchemaDestroy()

XmlSchemaCreate()

その他のバリデータAPIで使用されるスキーマ・コンテキストを戻します。これはXmlSchemaDestroyと合せて使用する必要があります。

構文

xsdctx *XmlSchemaCreate(
xmlctx *xctx,
xmlerr *err,
list);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

err

OUT

戻されたエラー・コード

list

IN

変数引数のNULLで終了するリスト

戻り値

(xsdctx *) スキーマ・コンテキスト。

関連項目:
XmlSchemaDestroy()、第11章「C用のXML APIパッケージ」のXmlCreate()

XmlSchemaDestroy()

スキーマ・コンテキストを破棄し、そのすべてのリソースを解放します。

構文

void XmlSchemaDestroy(
xsdctx *sctx);

パラメータ

IN/OUT

説明

sctx

IN

解放されるスキーマ・コンテキスト

関連項目:
XmlSchemaCreate()

XmlSchemaErrorWhere()

エラーが発生した場所(行番号、パス)を戻します。

構文

xmlerr XmlSchemaErrorWhere(
xsdctx *sctx,
ub4 *line,
oratext **path);

パラメータ

IN/OUT

説明

sctx

IN

スキーマ・コンテキスト

line

IN/OUT

エラーが発生した行番号

path

IN/OUT

エラーが発生したURLまたはファイル領域

戻り値

(xmlerr) エラー・コード。

関連項目:
XmlSchemaSetErrorHandler()

XmlSchemaLoad()

次の検証セッションで使用されるスキーマ・ドキュメントをロードします。ロードされるスキーマ・ドキュメントが有効である間は、スキーマ・ドキュメントをスキーマに追加的にロードできます。最後にロードされたスキーマが無効と判断された場合は、XmlSchemaClean()をコールしてスキーマ・コンテキストをクリーン・アップし、適切に修正した最新のスキーマを含むすべてのコンテキストを再ロードする必要があります。

スキーマ・ドキュメントが指定されると、この関数は、DOM表現を内部スキーマ表現に変換します。スキーマ・ドキュメントは、URIまたは直接DOM表現で指定できます。URIの場合、この関数は、入力ストリームを読み込み、スキーマのDOM表現を構築してから内部表現に変換します。DOMの場合、アプリケーションはスキーマのDOM表現を指定でき、これを使用して内部スキーマ表現が作成されます。

構文

xmlerr XmlSchemaLoad(
xsdctx *sctx,
oratext *uri,
list);

パラメータ

IN/OUT

説明

sxctx

IN

スキーマ・コンテキスト

uri

IN

スキーマ・ドキュメントのURL、コンパイラのエンコーディング

list

IN

変数引数のNULLで終了するリスト

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSchemaUnload()、XmlSchemaLoadedList()

XmlSchemaLoadedList()

listがNULLの場合、ロードされたスキーマ・ドキュメントのサイズのみを戻します。listがNULL以外の場合、ユーザー側のポインタ・バッファにURLポインタのリストが戻されます。ユーザー側で、十分な大きさのバッファを用意する必要があります。

構文

ub4 XmlSchemaLoadedList(
xsdctx *sctx,
oratext **list);

パラメータ

IN/OUT

説明

sctx

IN

スキーマ・コンテキスト

list

IN

ポインタ・バッファのアドレス

戻り値

(ub4) リスト・サイズ。

関連項目:
XmlSchemaLoad()、XmlSchemaUnload()

XmlSchemaSetErrorHandler()

スキーマ・コンテキストに、エラー・メッセージ・ハンドラとその関連コンテキストを設定します。エラーに関する有益な位置情報を取り出すために、エラー・ハンドラ・コンテキストにスキーマ・コンテキストのアドレスを指定する必要があります。

構文

xmlerr XmlSchemaSetErrorHandler(
xsdctx *sctx,
XML_ERRMSG_F(
(*errhdl),
ectx,
msg,
err),
void *errctx);

パラメータ

IN/OUT

説明

sctx

IN

スキーマ・コンテキスト

errhdl

IN

エラー・メッセージ・ハンドラ

errctx

IN

エラー・ハンドラのコンテキスト

戻り値

(xmlerr) エラー・コード。

関連項目:
XmlSchemaCreate()、XmlSchemaErrorWhere()および第2章「C用のコールバックAPIパッケージ」のXML_ERRMSG_F()

XmlSchemaSetValidateOptions()

次の検証セッションで使用されるオプションを設定します。以前に設定されたオプションは、上書きまたはリセットされるまで有効です。

構文

xmlerr XmlSchemaSetValidateOptions(
xsdctx *sctx,
list);

パラメータ

IN/OUT

説明

sctx

IN

スキーマ・コンテキスト

list

IN

可変引数のNULLで終了するリスト

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSchemaValidate()

XmlSchemaTargetNamespace()

URIで識別される、指定されたスキーマ・ドキュメントのターゲットの名前空間を戻します。現在ロードされているすべてのスキーマ・ドキュメントは問い合せできます。現在ロードされているスキーマ・ドキュメントには、XmlSchemaLoadでロードされたドキュメント、およびschemaLocationヒントまたはnoNamespaceSchemaLocationヒントでロードされたドキュメントが含まれます。

構文

oratext *XmlSchemaTargetNamespace(
xsdctx *sctx,
oratext *uri);

パラメータ

IN/OUT

説明

sctx

IN

XMLコンテキスト

uri

IN

問い合せるスキーマ・ドキュメントのURL

戻り値

(oratext *) ターゲットの名前空間文字列。ドキュメントが指定されていない場合はNULL。

関連項目:
XmlSchemaLoadedList()

XmlSchemaUnload()

バリデータからスキーマ・ドキュメントをアンロードします。以前にロードされたすべてのスキーマ・ドキュメントは、アンロードされるまでロードされた状態です。ロードされたすべてのスキーマ・ドキュメントをアンロードするには、URIがNULLになるように設定します(XmlSchemaCleanと等価です)。指定のスキーマに関連する子スキーマも、すべてアンロードされることに注意してください。この実装では、次の使用例のみがサポートされます。

- ロード、ロード、...。

- ロード、ロード、ロード、アンロード、アンロード、アンロード、クリーン、これを反復。

ロード、ロード、アンロード、ロード、...はサポートされません。

構文

xmlerr XmlSchemaUnload(
xsdctx *sctx,
oratext *uri,
list);

パラメータ

IN/OUT

説明

sctx

IN

スキーマ・コンテキスト

uri

IN

スキーマ・ドキュメントのURL。コンパイラのエンコーディング

list

IN

可変引数のNULLで終了するリスト

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSchemaLoad()、XmlSchemaLoadedList()

XmlSchemaValidate()

要素ノードをスキーマについて検証します。現在のセッションで使用されるスキーマには、XmlSchemaLoadで指定されたスキーマ・ドキュメント、およびインスタンス・ドキュメントでschemaLocationまたはnoNamespaceSchemaLocationでヒントとして指定されたスキーマ・ドキュメントがすべて含まれます。このルーチンが呼び出された後、ロードされたすべてのスキーマ・ドキュメントはロードされた状態が続き、XmlSchemaLoadedListを使用して問い合せできます。ただし、これらは引き続き非アクティブな状態です。次の検証セッションでは、非アクティブなスキーマ・ドキュメントをアクティブにできます。それにはXmlSchemaLoadでスキーマ・ドキュメントを指定するか、または新しいインスタンス・ドキュメントのschemaLocationまたはnoNamespaceSchemaLocationで、それらをヒントとして指定します。スキーマ・ドキュメントとそのすべての子孫(ネスト化方式で追加またはインポートされたドキュメント)をアンロードする場合は、XmlSchemaUnloadを使用します。

構文

xmlerr XmlSchemaValidate(
xsdctx *sctx,
xmlctx *xctx,
xmlelemnode *elem);

パラメータ

IN/OUT

説明

sctx

IN

スキーマ・コンテキスト

xctx

IN

最上位のXMLコンテキスト

elem

IN

ドキュメント内の検証される要素ノード

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSchemaSetValidateOptions()

XmlSchemaVersion()

このスキーマ実装のバージョンを戻します。

構文

oratext *XmlSchemaVersion();

戻り値

(oratext *) バージョン文字列(コンパイラのエンコーディング)。

9 C用のSOAP APIパッケージ

W3Cでは、「SOAPは、非集中型の分散環境で情報を交換するための軽量プロトコルです。XMLベースのプロトコルで、3つの部分から構成されています。メッセージ中にあるものとその処理方法を記述するためのフレームワークを定義するエンベロープ、アプリケーションで定義されるデータ型のインスタンスを表現するための一連のエンコーディング・ルール、リモート・プロシージャ・コールとレスポンスを表現するための規則です。」

SOAP 1.1では、添付ファイルは許可されていません。SOAP 1.2では、フォルトがある場合、本文にはその他の要素を追加できません。

SOAPメッセージの構造は次のとおりです。

[SOAP message (XML document)
[SOAP envelope
[SOAP header?
element*
]
[SOAP body
(element* | Fault)?
]
]
]

関連項目:

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

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

SOAPパッケージ・インタフェース

表9-1に、SOAPパッケージで使用できるメソッドの概要を示します。

表9-1 SOAPパッケージ・インタフェースの概要

関数

概要

XmlSoapAddBodyElement()

SOAPメッセージの本文に要素を追加します。

XmlSoapAddFaultReason()

他のフォルト理由を追加します。

XmlSoapAddFaultSubDetail()

フォルト詳細に子を追加します。

XmlSoapAddHeaderElement()

SOAPヘッダーに要素を追加します。

XmlSoapCall()

SOAPメッセージを送信し、リプライを待機します。

XmlSoapCreateConnection()

SOAP接続オブジェクトを作成します。

XmlSoapCreateCtx()

SOAPコンテキストを作成し、戻します。

XmlSoapCreateMsg()

空のSOAPメッセージを作成して戻します。

XmlSoapDestroyConnection()

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

XmlSoapDestroyCtx()

SOAPコンテキストを破棄します。

XmlSoapDestroyMsg()

XmlSoapCreateMsgを使用して作成したSOAPメッセージを破棄します。

XmlSoapError()

判読可能なエラー・コードを取得します。

XmlSoapGetBody()

SOAPメッセージのエンベロープ本文を戻します。

XmlSoapGetBodyElement()

SOAP本文から要素を取得します。

XmlSoapGetEnvelope()

SOAPパートのエンベロープを戻します。

XmlSoapGetFault()

フォルトのコード、理由および詳細を戻します。

XmlSoapGetHeader()

SOAPメッセージのエンベロープ・ヘッダーを戻します。

XmlSoapGetHeaderElement()

SOAPヘッダーから要素を取得します。

XmlSoapGetMustUnderstand()

SOAPヘッダー要素からmustUnderstand属性を取得します。

XmlSoapGetReasonLang()

指定したインデックスを持つ理由の言語を取得します。

XmlSoapGetReasonNum()

Fault要素の理由の数を計算します。

XmlSoapGetRelay()

SOAPヘッダー要素からRelay属性を取得します。

XmlSoapGetRole()

SOAPヘッダー要素からロールを取得します。

XmlSoapHasFault()

SOAPメッセージにフォルト・オブジェクトが含まれているかどうかを判別します。

XmlSoapSetFault()

SOAPメッセージにフォルトを設定します。

XmlSoapSetMustUnderstand()

SOAPヘッダー要素にmustUnderstand属性を設定します。

XmlSoapSetRelay()

SOAPヘッダー要素にRelay属性を設定します。

XmlSoapSetRole()

SOAPヘッダー要素にロールを設定します。

XmlSoapAddBodyElement()

SOAPメッセージの本文に要素を追加します。数値のエラー・コードを設定します。

構文

xmlelemnode *XmlSoapAddBodyElement(
xmlsoapctx *ctx,
xmldocnode *msg,
oratext *qname,
oratext *uri,
xmlerr *xerr);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN/OUT

SOAPメッセージ

qname

IN

追加する要素のQName

uri

IN

追加する要素の名前空間URI

xerr

IN/OUT

エラー・コード

戻り値

(xmlelemnode *) 作成された要素。

関連項目:
XmlSoapAddHeaderElement()

XmlSoapAddFaultReason()

他のフォルト理由を追加します。同じ理由に対して別の言語のテキストを提供できます。フォルトが作成されると、そのときにプライマリ言語と理由が追加されます。この関数は、その理由の翻訳を追加するのに使用します。

構文

xmlerr XmlSoapAddFaultReason(
xmlsoapctx *ctx,
xmldocnode *msg,
ratext *reason,
oratext *lang);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN/OUT

SOAPメッセージ

reason

IN

判読可能なフォルト理由

lang

IN

理由の言語

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSoapSetFault()

XmlSoapAddFaultSubDetail()

フォルト詳細に子を追加します。XmlSoapSetFaultで作成できるのは、子を1つ持つ詳細要素です。この関数を使用すると、子を追加できます。

構文

xmlerr XmlSoapAddFaultSubDetail(
xmlsoapctx *ctx,
xmldocnode *msg,
xmlelemnode *sub);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN/OUT

SOAPメッセージ

sub

IN

サブ詳細ツリー

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSoapGetReasonLang()

XmlSoapAddHeaderElement()

SOAPヘッダーに要素を追加します。

構文

xmlelemnode *XmlSoapAddHeaderElement(
xmlsoapctx *ctx,
xmldocnode *msg,
oratext *qname,
oratext *uri,
xmlerr *xerr);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN/OUT

SOAPメッセージ

qname

IN

追加する要素のQName

uri

IN

追加する要素の名前空間URI

xerr

IN/OUT

エラー・コード

戻り値

(xmlelemnode *) 作成された要素。

関連項目:
XmlSoapAddBodyElement()、XmlSoapGetHeaderElement()

XmlSoapCall()

接続を介してSOAPメッセージを送信し、リプライを待機します。メッセージ・リプライ(XML文書)は解析され、SOAPメッセージ(DOMと等価)として戻されます。

最初にメッセージ・バッファを使用して送信メッセージがシリアル化されます。メッセージ・バッファが小さすぎる(オーバーフローする)場合、xerrはXMLERR_SAVE_OVERFLOWを取得し、NULLを戻します。この場合、同じバッファを再使用して、リプライされたSOAPメッセージを受け取ります。

接続オブジェクトをオープンすると、エンド・ポイントにアクティブなSOAPハンドラが表示されます。表示方法は、ユーザーによって異なります。HTTPの場合、URLでcgi-binを起動するか、application/soap+xmlコンテンツ・タイプを検出する必要があります。

構文

xmldocnode *XmlSoapCall(
xmlsoapctx *ctx,
xmlsoapcon *con,
xmldocnode *msg,
xmlerr *xerr);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

con

IN

SOAP接続オブジェクト

msg

IN

送信するSOAPメッセージ

xerr

IN

失敗の数値コード

戻り値

(xmldocnode *) 戻されるメッセージ。失敗時には、xerrが設定され、NULLが戻されます。

関連項目:
XmlSoapCreateMsg()、XmlSoapCreateConnection()、XmlSoapDestroyConnection()

XmlSoapCreateConnection()

バインディング(トランスポート)とエンド・ポイントを指定し、SOAP接続オブジェクトを作成します。バインディングはxmlsoapbindタイプのenumで、エンド・ポイントはこのバインディングに依存します。

現在、HTTPバインディングのみがサポートされており、エンド・ポイントはURLです。このURLは、アクティブである必要があります。つまり、cgi-binスクリプトまたはメカニズムによって、受信メッセージのコンテンツ・タイプ(application/soap+xml)に基づいてSOAPメッセージの処理をトリガーします。

HTTPアクセス・メソッド(GETまたはPOST)を制御するには、XMLSOAP_PROP_WEB_METHODという名前のWebメソッド・プロパティを使用します。このプロパティに使用可能な値は、XMLSOAP_WEB_METHOD_GETとXMLSOAP_WEB_METHOD_POSTです。

(conbuf, consiz)は、LPUとともに使用される接続バッファです。送信時には、HTTPヘッダーのみが含まれますが、受信時には、HTTPヘッダーと完全なSOAP本文を含むリプライ全体が保持されます。バッファが指定されていない場合は、1つ割り当てられます。サイズが0(ゼロ)の場合、デフォルト・サイズ(64K)が使用されます。

(msgbuf, msgsiz)は、送信用のSOAPメッセージの作成に使用されるメッセージ・バッファです。このバッファは、送信される最大のメッセージを格納するために十分なサイズである必要があります。バッファが指定されていない場合は、1つ割り当てられます。サイズが0(ゼロ)の場合、デフォルト・サイズ(64K)が使用されます。

サイズを決定するために最初にSOAPメッセージを作成する必要があるため、送信時には2つのバッファが必要です。これによりコンテンツの長さが決まるため、次にHTTPヘッダーが作成されます。

構文

xmlsoapcon *XmlSoapCreateConnection(
xmlsoapctx *ctx,
xmlerr *xerr,
xmlsoapbind bind,
void *endp,
oratext *conbuf,
ubig_ora consiz,
oratext *msgbuf,
ubig_ora msgsiz,
...);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

xerr

OUT

失敗した場合の数値のエラー・コード

bind

IN

接続バインディング

endp

IN

接続エンド・ポイント

conbuf

IN/OUT

接続バッファ(バッファの割当てを受けるときはNULL)

consiz

IN

接続バッファのサイズ(0の場合はデフォルトのサイズ)

msgbuf

IN/OUT

メッセージ・バッファ(バッファの割当てを受けるときはNULL)

msgsiz

IN

メッセージ・バッファのサイズ(デフォルトのサイズは0)

...

IN

設定するHTTPヘッダー(後ろにNULL)

戻り値

(xmlsoapcon *) 接続オブジェクト。エラー発生時には、xerrが設定された状態でNULLが戻されます。

関連項目:
XmlSoapDestroyConnection()、XmlSoapCall()

XmlSoapCreateCtx()

SOAPコンテキストを作成し、戻します。このコンテンツは、すべてのXmlSoap APIに渡されます。指定された名前は一意である必要があり、デバッグ時にコンテンツを識別するために使用されます。オプションは名前/値ペアとして指定し、NULLで終了します。これは、XmlCreateと同じです。オプションが必要なくても、NULLは必要です。オプションには、debug_level(SOAPデバッグをstderrに出力)、数値レベル(レベルが高くなるほど、出力がより詳細かつ広範になる)、0(デバッグなし。デフォルト設定)があります。

構文

xmlsoapctx *XmlSoapCreateCtx(
xmlctx *xctx,
xmlerr *xerr,
oratext *name,
...);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

xerr

OUT

失敗した場合のエラー・リターン・コード。

name

IN

コンテキスト名(デバッグ目的)。

...

IN

オプション。名前/値ペアとして指定し、後ろにはNULLが付きます。

戻り値

(xmlsoapctx *) SOAPコンテキスト。失敗時には、xerrが設定され、NULLが戻されます。

関連項目:
XmlSoapDestroyCtx()

XmlSoapCreateMsg()

空のSOAPメッセージを作成して戻します。SOAPメッセージは、エンベロープで構成されます。エンベロープには、空のヘッダーと本文が含まれます。SOAPメッセージは、DOMによって表されたXML文書で、他の文書との違いはありません。文書に対するすべてのDOM操作が有効ですが、構造全体に悪影響を与えないようにする必要があります。変更は、ヘッダーと本文における要素の作成と変更に限定する必要があります。

構文

xmldocnode *XmlSoapCreateMsg(
xmlsoapctx *ctx,
xmlerr *xerr);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

xerr

OUT

失敗した場合のエラー・リターン・コード

戻り値

(xmldocnode *) SOAPメッセージ。失敗時には、xerrが設定され、NULLが戻されます。

関連項目:
XmlSoapDestroyMsg()

XmlSoapDestroyConnection()

XmlSoapCreateConnectionを使用して作成されたSOAP接続オブジェクトを破棄し、割り当てられたすべてのリソースを解放します。

構文

xmlerr XmlSoapDestroyConnection(
xmlsoapctx *ctx,
xmlsoapcon *con);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

con

IN

SOAP接続

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSoapCreateConnection()、XmlSoapCall()

XmlSoapDestroyCtx()

XmlSoapCreateCtxを使用して作成したSOAPコンテキストを破棄します。割り当てられたメモリーはすべて解放され、接続はすべて閉じられます。

構文

xmlerr XmlSoapDestroyCtx(
xmlsoapctx *ctx);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSoapCreateCtx()

XmlSoapDestroyMsg()

XmlSoapCreateMsgを使用して作成されたSOAPメッセージを破棄します。これは、XmlFreeDocumentのコールと同じです。

構文

xmlerr XmlSoapDestroyMsg(
xmlsoapctx *ctx,
xmldocnode *msg);

パラメータ

IN/OUT

説明

ctx

IN

SOAP接続

msg

IN

SOAPメッセージ

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSoapCreateMsg()

XmlSoapError()

判読可能なエラー・コードを取得します。必要に応じて、基礎となるレイヤーのエラー・コードに関する情報を取得します。

構文

oratext *XmlSoapError(
xmlsoapctx *ctx,
xmlsoapcon *con,
xmlerr err,
uword *suberr,
oratext **submsg);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

con

IN

追加情報がリクエストされた接続

err

IN

判読可能な情報が戻されるエラー・コード

suberr

OUT

conからのエラー・コード

submsg

OUT

conエラーに関する判読可能な情報

戻り値

(oratext *) エラー・コード。

XmlSoapGetBody()

SOAPメッセージのエンベロープ本文を戻します。

構文

xmlelemnode *XmlSoapGetBody(
xmlsoapctx *ctx,
xmldocnode *msg,
xmlerr *xerr);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN

SOAPメッセージ

xmlerr

IN/OUT

エラー・コード

戻り値

(xmlelemnode *) SOAP本文。

関連項目:
XmlSoapGetHeader()

XmlSoapGetBodyElement()

SOAP本文から要素を取得します。

構文

xmlelemnode *XmlSoapGetBodyElement(
xmlsoapctx *ctx,
xmldocnode *msg,
oratext *uri,
oratext *local,
xmlerr *xerr);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN

SOAPメッセージ

uri

IN

取得する要素の名前空間URI

local

IN

取得する要素のローカル名

xerr

IN/OUT

エラー・コード

戻り値

(xmlelemnode *) 指定された要素。エラー発生時には、NULLが戻されます。

関連項目:
XmlSoapAddBodyElement()

XmlSoapGetEnvelope()

SOAPパートのエンベロープを戻します。

構文

xmlelemnode *XmlSoapGetEnvelope(
mlsoapctx *ctx,
xmldocnode *msg,
xmlerr *xerr);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN

SOAPメッセージ

xerr

IN/OUT

エラー・コード

戻り値

(xmlelemnode *) SOAPエンベロープ。

XmlSoapGetFault()

フォルトのコード、理由および詳細を戻します。フォルト情報をフェッチし、ユーザー変数を介して戻します。不要なパートには、NULLを指定できます。langについては、ポイント先の変数がNULLである場合、デフォルト言語(最初の理由に指定する言語)に設定されます。

構文

xmlerr XmlSoapGetFault(
xmlsoapctx *ctx,
xmldocnode *msg,
oratext **code,
oratext **reason,
oratext **lang,
oratext **node,
oratext **role,
xmlelemnode **detail);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN/OUT

SOAPメッセージ

code

OUT

バージョン1.2ではCode(コード)、バージョン1.1ではfaultcode(フォルトコード)。

reason

OUT

判読可能なフォルト理由(バージョン1.2)、バージョン1.1ではfaultreason(フォルト理由)。

lang

IN

理由に指定する言語(バージョン1.2)。バージョン1.1では使用されていません(NULL)。

node

OUT

フォルト・ノード。

role

OUT

ロール: 次、なしまたは最終受信者。バージョン1.1では使用されていません。

detail

OUT

ユーザー定義の詳細。

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSoapSetFault()

XmlSoapGetHeader()

SOAPメッセージのエンベロープ・ヘッダーを戻します。

構文

xmlelemnode *XmlSoapGetHeader(
xmlsoapctx *ctx,
xmldocnode *msg,
xmlerr *xerr);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN

SOAPメッセージ

xerr

IN/OUT

エラー・コード

戻り値

(xmlelemnode *) SOAPヘッダー。

関連項目:
XmlSoapGetBody()

XmlSoapGetHeaderElement()

SOAPヘッダーから要素を取得します。数値のエラー・コードを設定します。

構文

xmlelemnode *XmlSoapGetHeaderElement(
xmlsoapctx *ctx,
xmldocnode *msg,
oratext *uri,
oratext *local,
xmlerr *xerr);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN

SOAPメッセージ

uri

IN

取得する要素の名前空間URI

local

IN

取得する要素のローカル名

xerr

IN/OUT

エラー・コード

戻り値

(xmlelemnode *) 指定された要素。エラー発生時には、NULLが戻されます。

関連項目:
XmlSoapAddHeaderElement()、XmlSoapGetBodyElement()

XmlSoapGetMustUnderstand()

SOAPヘッダー要素からmustUnderstand属性を取得します。この属性がなくてもエラーにはならず、FALSE値として処理されます。属性がないことを示すために、この場合はXMLERR_SOAP_NO_MUST_UNDERSTANDが戻されます。属性がある場合は、XMLERR_OK (0)が戻されます。その他の該当するエラー・コードが戻される場合もあります。ユーザー指定のmustUnderstand値は、これに応じて設定されます。

構文

xmlerr XmlSoapGetMustUnderstand(
xmlsoapctx *ctx,
xmlelemnode *elem,
boolean *mustUnderstand);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

elem

IN

SOAPヘッダー要素

mustUnderstand

OUT

mustUnderstand値、TRUE|FALSE

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSoapAddBodyElement()、XmlSoapSetMustUnderstand()

XmlSoapGetReasonLang()

指定したインデックスを持つ理由の言語を取得します。

構文

xmlerr XmlSoapGetReasonLang(
xmlsoapctx *ctx,
xmldocnode *msg,
ub4 index,
oratext **lang);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN

SOAPメッセージ

indx

IN

フォルト理由のインデックス

lang

IN

理由の言語

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSoapGetFault()、XmlSoapHasFault()、XmlSoapGetReasonNum()

XmlSoapGetReasonNum()

Fault要素の理由の数を計算します。フォルトがない場合、0(ゼロ)が戻されます。

構文

ub4 XmlSoapGetReasonNum(
xmlsoapctx *ctx,
xmldocnode *msg);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN

SOAPメッセージ

戻り値

(ub4 *) 理由の数。

関連項目:
XmlSoapGetFault()、XmlSoapHasFault()

XmlSoapGetRelay()

SOAPヘッダー要素からRelay属性を取得します。

構文

xmlerr XmlSoapGetRelay(
xmlsoapctx *ctx,
xmlelemnode *elem,
boolean *Relay);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

elem

IN

SOAPヘッダー要素

Relay

OUT

リレー値

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OKを戻します。

関連項目:
XmlSoapAddBodyElement()、XmlSoapSetRelay()

XmlSoapGetRole()

SOAPヘッダー要素からロールを取得します。要素にロールがない場合、XMLERR_SOAP_NO_ROLEが戻されます。それ以外の場合は、XMLERR_OK (0)が戻され、これに応じてユーザーのロールが設定されます。要素にロールがない場合、標準に従ってユーザーのロールはXMLSOAP_ROLE_ULTに設定されます。

構文

xmlerr XmlSoapGetRole(
xmlsoapctx *ctx,
xmlelemnode *elem,
xmlsoaprole *role);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

elem

IN

SOAPヘッダー要素

role

OUT

ロール値

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSoapSetMustUnderstand()、XmlSoapSetRole()

XmlSoapHasFault()

SOAPメッセージにフォルト・オブジェクトが含まれているかどうかを判別します。

構文

boolean XmlSoapHasFault(
xmlsoapctx *ctx,
xmldocnode *msg,
xmlerr *xerr);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN

SOAPメッセージ

xerr

IN/OUT

エラー・コード

戻り値

(boolean) フォルトがある場合はTRUE、それ以外はFALSE。

関連項目:
XmlSoapGetFault()

XmlSoapSetFault()

SOAPメッセージにフォルトを設定します。

- バージョン1.2では、メッセージごとに使用可能なフォルトは1つのみであり、これは本文の唯一の子です。本文に子がある場合、最初に削除され、解放されます。これにより、子のコードに「env:Code」(必須)、理由に「env:Reason」(必須)、ノードに「env:Node」(オプション)、ロールに「env:role」(オプション)、詳細に「env:Detail」(オプション)を指定して、フォルトが追加されます。プライマリ言語の理由は最初に追加する必要があります。これは、NULL言語を渡すXmlSoapGetFaultへのコールによって選択されます。詳細は、フォルトに設定されるユーザー定義のサブツリーです。

- バージョン1.1では、メッセージごとに使用可能なフォルトは1つのみです。本文にすでにフォルトがある場合、最初に削除され、解放されます。これにより、子のコードに「faultcode (フォルトコード)」(必須)、理由に「faultstring (フォルト文字列)」(必須)、ノードに「faultactor(フォルトアクタ)」(オプション)、詳細に「detail (詳細)」(オプション)を指定して、フォルトが追加されます。詳細は、フォルトに設定されるユーザー定義のサブツリーです。バージョン1.1では、roleとlangは使用されていません。

構文

xmlerr XmlSoapSetFault(
xmlsoapctx *ctx,
xmldocnode *msg,
oratext *node,
oratext *code,
oratext *reason,
oratext *lang,
oratext *role,
xmlelemnode *detail);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

msg

IN/OUT

SOAPメッセージ

node

IN

フォルトが発生したSOAPノードのURI。バーション1.2ではNode(ノード)、バージョン1.1ではfaultactor(フォルトアクタ)。

code

IN

バージョン1.2ではCode(コード)、バージョン1.1ではfaultcode(フォルトコード)。

reason

IN

判読可能なフォルト理由(バージョン1.2)、バージョン1.1ではfaultreason(フォルト理由)。

lang

IN

理由の言語(バージョ・1.2)。バージョン1.1では使用されていません。

role

IN

ロールを示すURI。バージョン1.2ではRole(ロール)、バージョン1.1では使用されていません。

detail

IN

詳細要素(ユーザー定義)。

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSoapAddFaultReason()

XmlSoapSetMustUnderstand()

SOAPヘッダー要素にmustUnderstand属性を設定します。値がFALSEである場合は、標準に従い、属性は設定されません。

構文

xmlerr XmlSoapSetMustUnderstand(
xmlsoapctx *ctx,
xmlelemnode *elem,
boolean mustUnderstand);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

elem

IN/OUT

SOAPヘッダー要素

mustUnderstand

IN

mustUnderstand値、TRUE|FALSE

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSoapSetRole()

XmlSoapSetRelay()

SOAPヘッダー要素にRelay属性を設定します。値がFALSEである場合、属性は設定されません。

構文

xmlerr XmlSoapSetRelay(
xmlsoapctx *ctx,
xmlelemnode *elem,   boolean Relay);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

elem

IN/OUT

SOAPヘッダー要素

Relay

IN

リレー: TRUE|FALSE

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlSoapGetRelay()

XmlSoapSetRole()

SOAPヘッダー要素にロールを設定します。指定されたロールがXMLSOAP_ROLE_ULTである場合、標準に従って、属性は設定されません。

構文

xmlerr XmlSoapSetRole(
xmlsoapctx *ctx,
xmlelemnode *elem,
xmlsoaprole role);

パラメータ

IN/OUT

説明

ctx

IN

SOAPコンテキスト

elem

IN/OUT

SOAPヘッダー要素

role

IN

ロール値

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OKを戻します。

関連項目:
XmlSoapSetMustUnderstand()

10 C用の横断APIパッケージ

横断パッケージには4つのインタフェースのAPIが含まれます。

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

- DocumentTraversalインタフェース

- NodeFilterインタフェース

- NodeIteratorインタフェース

- TreeWalkerインタフェース

関連項目:

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

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

DocumentTraversalインタフェース

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

表10-1 DocumentTraversalメソッドの概要: 横断パッケージ

関数

概要

XmlDomCreateNodeIter()

ノードのイテレータ・オブジェクトを作成します。

XmlDomCreateTreeWalker()

ツリー・ウォーカ・オブジェクトを作成します。

XmlDomCreateNodeIter()

DocumentTraversalインタフェースの2つあるメソッドの1つであり、NodeIteratorオブジェクトの作成に使用されます。このメソッドは、戻されるオブジェクト・タイプを除いてはXmlDomCreateTreeWalker()と同一です。

whatToShow引数はフラグ・ビットのマスクであり、各ノード・タイプに1つずつ割り当てられます。値XMLDOM_SHOW_ALLでは、すべてのノード・タイプが渡されますが、それ以外の場合はビットが設定されているタイプのみが渡されます。

Entity参照拡張機能は、entrefExpansionフラグにより制御されます。TRUEの場合、実体参照は最終内容と置き換えられます。FALSEの場合、実体参照はノードとして残されます。

構文

xmliter* XmlDomCreateNodeIter(
xmlctx *xctx,
xmliter *iter,
xmlnode *root,
xmlshowbits whatToShow,
XMLDOM_ACCEPT_NODE_F(
(*nodeFilter),
xctx,
node),
boolean entrefExpand);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

iter

IN

設定する場合は既存のNodeIterator、作成する場合はNULL

xerr

IN

NodeIteratorのルート・ノード

whatToShow

IN

XMLDOM_SHOW_XXXフラグ・ビットのマスク

nodeFilter

IN

使用されるノード・フィルタ、ノード・フィルタがない場合はNULL

xerr

IN

実体参照ノードを拡張するかどうかを指定

戻り値

(xmliter *) 元の、または新規のNodeIteratorオブジェクト。

関連項目:
XmlDomCreateTreeWalker()

XmlDomCreateTreeWalker()

DocumentTraversalインタフェースの2つのメソッドのうち1つで、TreeWalkerオブジェクトの作成に使用されます。このメソッドは、戻されるオブジェクト・タイプを除いてはXmlDomCreateNodeIter()と同一です。

whatToShow引数はフラグ・ビットのマスクであり、各ノード・タイプに1つずつ割り当てられます。値XMLDOM_SHOW_ALLでは、すべてのノード・タイプが渡されますが、それ以外の場合はビットが設定されているタイプのみが渡されます。

Entity参照拡張機能は、entrefExpansionフラグにより制御されます。TRUEの場合、実体参照は最終内容と置き換えられます。FALSEの場合、実体参照はノードとして残されます。

構文

xmlwalk* XmlDomCreateTreeWalker(
xmlctx *xctx,
xmlwalk* walker,
xmlnode *root,
xmlshowbits whatToShow,
XMLDOM_ACCEPT_NODE_F(
(*nodeFilter),
xctx,
node),
boolean entrefExpansion);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

walker

IN

設定する場合は既存のTreeWalker、作成する場合はNULL

xerr

IN

TreeWalkerのルート・ノード

whatToShow

IN

XMLDOM_SHOW_XXXフラグ・ビットのマスク

nodeFilter

IN

使用されるノード・フィルタ、ノード・フィルタがない場合はNULL

xerr

IN

実体参照ノードを拡張するかどうかを指定

戻り値

(xmlwalk *) 新規TreeWalkerオブジェクト。

関連項目:
XmlDomCreateNodeIter()

NodeFilterインタフェース

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

表10-2 NodeFilterメソッドの概要: 横断パッケージ

関数

概要

XMLDOM_ACCEPT_NODE_F()

ノードおよびフィルタに基づいてフィルタリング・アクションを決定します。

XMLDOM_ACCEPT_NODE_F()

NodeFilterインタフェースの唯一のメソッド。ノードとフィルタが指定された場合、実行するフィルタリング・アクションを決定します。

この関数ポインタは、必要に応じてノード・イテレータ/ツリー・ウォーカ・メソッドに渡されます。

xmlerrの値は次のとおりです。

- XMLERR_OK: ノードを受け取ります。NodeIteratorまたはTreeWalkerに定義されたナビゲーション・メソッドはこのノードを戻します。

- XMLERR_FILTER_REJECT: ノードを拒否します。NodeIteratorまたはTreeWalkerに定義されたナビゲーション・メソッドはこのノードを戻しません。TreeWalkerの場合、このノードの子も拒否されます。NodeIteratorはこれをXMLDOM_FILTER_SKIPのシノニムとして処理します。

- XMLERR_FILTER_SKIP: この単一ノードをスキップします。NodeIteratorまたはTreeWalkerに定義されたナビゲーション・メソッドはこのノードを戻しません。NodeIteratorとTreeWalkerのいずれの場合も、このノードの子は依然として考慮されます。

構文

#define XMLDOM_ACCEPT_NODE_F(func, xctx, node)
xmlerr func(
xmlctx *xctx,
xmlnode *node);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

node

IN

テストするノード

戻り値

(xmlerr) フィルタリング結果。

NodeIteratorインタフェース

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

表10-3 NodeIteratorメソッドの概要: 横断パッケージ

関数

概要

XmlDomIterDetach()

ノード・イテレータを分離します(停止します)。

XmlDomIterNextNode()

イテレータの次のノードを戻します。

XmlDomIterPrevNode()

イテレータの前のノードを戻します。

XmlDomIterDetach()

反復しているセットからNodeIteratorを分離して、すべてのリソースを解放し、イテレータをINVALID状態に移行させます。この分離関数が呼び出された後、XmlDomIterNextNodeまたはXmlDomIterPrevNodeをコールすると例外XMLERR_ITER_DETACHEDが発生します。

構文

xmlerr XmlDomIterDetach(
xmlctx *xctx,
xmliter *iter);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

iter

IN

ノード・イテレータ・オブジェクト

関連項目:
XmlDomIterNextNode()、XmlDomIterPrevNode()

XmlDomIterNextNode()

セットの次のノードを戻し、セットのイテレータの位置を進めます。ノード・イテレータが作成された後、最初にXmlDomIterNextNodeをコールするとセットの最初のノードが戻されます。参照ノード(現在のイテレータの位置)は削除されないものと想定されます。それ以外の場合、基本のDOMツリーに変更を加えてもイテレータは無効になりません。

構文

xmlnode* XmlDomIterNextNode(
xmlctx *xctx,
xmliter *iter,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

iter

IN

ノード・イテレータ・オブジェクト

xerr

OUT

数値のリターン・エラー・コード

戻り値

(xmlnode *) 反復しているセットの次のノード(またはNULL)。

関連項目:
XmlDomIterPrevNode()、XmlDomIterDetach()

XmlDomIterPrevNode()

セットの前のノードを戻し、セットのイテレータの位置を後方に移動します。

構文

xmlnode* XmlDomIterPrevNode(
xmlctx *xctx,
xmliter *iter,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

iter

IN

ノード・イテレータ・オブジェクト

xerr

OUT

数値のリターン・エラー・コード

戻り値

(xmlnode *) 反復しているセットの前のノード(またはNULL)。

関連項目:
XmlDomIterNextNode()、XmlDomIterDetach()

TreeWalkerインタフェース

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

表10-4 TreeWalkerメソッドの概要: 横断パッケージ

関数

概要

XmlDomWalkerFirstChild()

現在のノードで最初に参照できる子を戻します。

XmlDomWalkerGetCurrentNode()

現在のノードを戻します。

XmlDomWalkerGetRoot()

ルート・ノードを戻します。

XmlDomWalkerLastChild()

現在のノードで最後に参照される子を戻します。

XmlDomWalkerNextNode()

次に参照できるノードを戻します。

XmlDomWalkerNextSibling()

直後の兄弟関係ノードを戻します。

XmlDomWalkerParentNode()

親ノードを戻します。

XmlDomWalkerPrevNode()

前のノードを戻します。

XmlDomWalkerPrevSibling()

直前の兄弟関係ノードを戻します。

XmlDomWalkerSetCurrentNode()

現在のノードを設定します。

XmlDomWalkerSetRoot()

ルート・ノードを設定します。

XmlDomWalkerFirstChild()

現在のノードで最初に参照できる子にTreeWalkerを移動し、新しいノードを戻します。現在のノードに参照可能な子が存在しない場合、NULLを戻し、現在のノードを保持します。

構文

xmlnode* XmlDomWalkerFirstChild(
xmlctx *xctx,
xmlwalk *walker,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

walker

IN

TreeWalkerオブジェクト

xerr

OUT

数値のリターン・エラー・コード

戻り値

(xmlnode *) 最初に参照できる子(またはNULL)。

関連項目:
XmlDomWalkerLastChild()

XmlDomWalkerGetCurrentNode()

現在のノードを戻します(取得します)。エラーの場合はNULLを戻します。

構文

xmlnode* XmlDomWalkerGetCurrentNode(
xmlctx *xctx,
xmlwalk *walker,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

walker

IN

TreeWalkerオブジェクト

xerr

OUT

数値のリターン・エラー・コード

戻り値

(xmlnode *) 現在のノード。

XmlDomWalkerGetRoot()

ルート・ードを戻します(取得します)。エラーの場合はNULLを戻します。現在のノードは、ノードが属するサブツリーと一緒にルート・ノード下から削除できるため、ウォーカ内の現在のルート・ノードでは現在のノードとの関連性が失われる場合があります。TreeWalkerの反復は現在のノードに基づきます。ただしルート・ノードは反復の空間を定義します。この関数は、ルート・ノード(祖先)が現在のノードとまだ関連性があるかどうかをチェックします。関連性がある場合、このルート・ノードを戻します。それ以外の場合、現在のルートが属するツリーのルートを検出し、このルートをウォーカのルート・ノードとして設定し、戻します。ウォーカがNULLポインタの場合、NULLを戻します。

構文

xmlnode* XmlDomWalkerGetRoot(
xmlctx *xctx,
xmlwalk *walker,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

walker

IN

TreeWalkerオブジェクト

xerr

OUT

数値のリターン・エラー・コード

戻り値

(xmlnode *) ルート・ノード。

XmlDomWalkerLastChild()

現在のノードで最後に参照される子にTreeWalkerを移動し、新しいノードを戻します。現在のノードに参照可能な子が存在しない場合、NULLを戻し、現在のノードを保持します。

構文

xmlnode* XmlDomWalkerLastChild(
xmlctx *xctx,
xmlwalk *walker,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

walker

IN

TreeWalkerオブジェクト

xerr

OUT

数値のリターン・エラー・コード

戻り値

(xmlnode *) 最後に参照できる子(またはNULL)。

XmlDomWalkerNextNode()

TreeWalkerを、ドキュメント内の順序において現在のノードの次に参照可能なノードに移動し、新しいノードを戻します。現在のノードに次のノードが存在しない場合、または次のノードの検索で、TreeWalkerのルート・ノードより上の検索が試行された場合は、NULLを戻し、現在のノードを保持します。

構文

xmlnode* XmlDomWalkerNextNode(
xmlctx *xctx,
xmlwalk *walker,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

walker

IN

TreeWalkerオブジェクト

xerr

OUT

数値のリターン・エラー・コード

戻り値

(xmlnode *) 次のノード(またはNULL)。

関連項目:
XmlDomWalkerPrevNode()、XmlDomWalkerNextSibling()、XmlDomWalkerPrevSibling()

XmlDomWalkerNextSibling()

現在のノードの直後の兄弟関係にTreeWalkerを移動し、新しいノードを戻します。現在のノードに参照可能な直後の兄弟関係が存在しない場合、NULLを戻し、現在のノードを保持します。

構文

xmlnode* XmlDomWalkerNextSibling(
xmlctx *xctx,
xmlwalk *walker,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

walker

IN

TreeWalkerオブジェクト

xerr

OUT

数値のリターン・エラー・コード

戻り値

(xmlnode *) 直後の兄弟関係(またはNULL)。

関連項目:
XmlDomWalkerNextNode()、XmlDomWalkerPrevNode()、XmlDomWalkerPrevSibling()

XmlDomWalkerParentNode()

現在のノードで参照可能な最も近い祖先ノードに移動し、その祖先モードを戻します。親ノードの検索でTreeWalkerのルート・ノードよりも上の検索が試行された場合、または参照可能な祖先モードが見つからなかった場合、このメソッドは現在の位置を保持し、NULLを戻します。

構文

xmlnode* XmlDomWalkerParentNode(
xmlctx *xctx,
xmlwalk *walker,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

walker

IN

TreeWalkerオブジェクト

xerr

OUT

数値のリターン・エラー・コード

戻り値

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

XmlDomWalkerPrevNode()

TreeWalkerを、ドキュメント内の順序において現在のノードの前の、参照可能なノードに移動し、新しいノードを戻します。現在のノードに前のノードが存在しない場合、または前のノード検索で、TreeWalkerのルート・ノードより上の検索が試行された場合、NULLを戻し、現在のノードを保持します。

構文

xmlnode* XmlDomWalkerPrevNode(
xmlctx *xctx,
xmlwalk *walker,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

walker

IN

TreeWalkerオブジェクト

xerr

OUT

数値のリターン・エラー・コード

戻り値

(xmlnode *) 前のノード(またはNULL)。

関連項目:
XmlDomWalkerNextNode()、XmlDomWalkerNextSibling()、XmlDomWalkerPrevSibling()

XmlDomWalkerPrevSibling()

現在のノードの直前の兄弟関係にTreeWalkerを移動し、新しいノードを戻します。現在のノードに参照可能な直前の兄弟関係が存在しない場合、NULLを戻し、現在のノードを保持します。

構文

xmlnode* XmlDomWalkerPrevSibling(
xmlctx *xctx,
xmlwalk *walker,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

walker

IN

TreeWalkerオブジェクト

xerr

OUT

数値のリターン・エラー・コード

戻り値

(xmlnode *) 直前の兄弟関係(またはNULL)。

関連項目:
XmlDomWalkerNextNode()、XmlDomWalkerPrevNode()、XmlDomWalkerNextSibling()

XmlDomWalkerSetCurrentNode()

新しい現在のノードを設定し、このノードを戻します。またルート・ノードが新しい現在のノードの祖先かどうかをチェックします。祖先ではない場合、現在のノードを設定せず、NULLを戻して、retvalをXMLDOM_WALKER_BAD_NEW_CURに設定します。エラーの場合はNULLを戻します。

構文

xmlnode* XmlDomWalkerSetCurrentNode(
xmlctx *xctx,
xmlwalk *walker,
xmlnode *node,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

walker

IN

TreeWalkerオブジェクト

node

IN

新しい現在のノード

xerr

OUT

数値のリターン・エラー・コード

戻り値

(xmlnode *) 新しい現在のノード。

XmlDomWalkerSetRoot()

ルート・ノードを設定します。新しいルート・ノードが現在のノードの祖先である場合は、このノードを戻します。祖先でない場合はエラーを送り、現在のルート・ノードが現在のノードの祖先かどうかをチェックします。祖先の場合、現在のノードを戻します。それ以外の場合、現在のノードが所属するツリーのルートにルート・ノードを設定し、そのルートを戻します。ウォーカまたはルート・ノード・パラメータがNULLポインタの場合、NULLを戻します。

構文

xmlnode* XmlDomWalkerSetRoot(
xmlctx *xctx,
xmlwalk *walker,
xmlnode *node,
xmlerr *xerr);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

walker

IN

TreeWalkerオブジェクト

node

IN

新しいルート・ノード

xerr

OUT

数値のリターン・エラー・コード

戻り値

(xmlnode *) 新しいルート・ノード。

11 C用のXML APIパッケージ

このXMLプロセッサ(またはパーサー)のC実装は、W3CのXML仕様(改訂REC-xml-19980210)に準拠しており、XMLデータを読み込むためにXMLプロセッサに必要な動作、およびアプリケーションに提供する必要がある情報を含んでいます。

この章の内容は次のとおりです。

- XMLインタフェース

関連項目:

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

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

XMLインタフェース

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

表11-1 XMLメソッドの概要

関数

概要

XmlAccess()

URLのアクセス・メソッド・コールバックを設定します。

XmlCreate()

XML Developer's Toolkitのxmlctxを作成します。

XmlCreateDTD()

DTDを作成します。

XmlCreateDocument()

ドキュメント(ノード)を作成します。

XmlDestroy()

xmlctxを破棄します。

XmlDiff()

2つのXMLドキュメントを比較します。

XmlFreeDocument()

ドキュメントを解放します(すべてのリソースを解放します)。

XmlGetEncoding()

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

XmlHasFeature()

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

XmlIsSimple()

シングルバイト(単純な)キャラクタ・セット・フラグを戻します。

XmlIsUnicode()

XmlIsUnicode(単純な)キャラクタ・セット・フラグを戻します。

XmlLoadDom()

XML文書をロード(解析)してDOMを生成します。

XmlLoadSax()

XML文書をロード(解析)してSAXイベントを生成します。

XmlLoadSaxVA()

XML文書をロード(解析)してSAXイベント[varargs]を生成します。

XmlSaveDom()

XML文書を保存(シリアル化、フォーマット)します。

XmlVersion()

XDKのバージョン文字列を戻します。

XmlAccess()

特定のURLアクセス・メソッドのデータをロードするために使用するオープン/読込み/クローズ・コールバックを設定します。HTTP、FTPなどのための組込みデータ・ロード関数をオーバーライドするか、または新しい型(UNKNOWNなど)を処理するための関数を提供します。

構文

xmlerr XmlAccess(
xmlctx *xctx,
xmlurlacc access,
void *userctx,
XML_ACCESS_OPEN_F(
(*openf),
ctx,
uri,
parts,
length,
uh),
XML_ACCESS_READ_F(
(*readf),
ctx,
uh,
data,
nraw,
eoi),
XML_ACCESS_CLOSE_F(
(*closef),
ctx,
uh));

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

access

IN

URLアクセス・メソッド

userctx

IN

コールバックに渡されるユーザー定義のコンテキスト

openf

IN

アクセスをオープンするコールバック関数

readf

IN

アクセスを読み込むコールバック関数

closef

IN

アクセスをクローズするコールバック関数

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlLoadDom()、XmlLoadSax()

XmlCreate()

XML Developer's Toolkitのxmlctxを作成します。

構文

xmlctx *XmlCreate(
xmlerr *err,
oratext *name,
list);

パラメータ

IN/OUT

説明

err

OUT

戻されたエラー・コード

access

IN

コンテキスト名(デバッグ目的)

list

IN

変数引数のNULLで終了するリスト。xmlctxのXDKおよびXMLTypeの両方に共通のプロパティは次のとおりです。

- data_encodingは、DOMおよびSAXによってXMLデータの表示に使用されるデータ・エンコーディングです。デフォルトはUTF-8およびEBCDICプラットフォームのUTF-Eです。シングルバイト・エンコーディングの方がマルチバイト・エンコーディングよりも高速です。Unicode(UTF-16)は、より多くのメモリーを消費しますが、マルチバイトよりもパフォーマンスが優れています。

- default_input_encodingは、デフォルトの入力エンコーディングです。入力ドキュメントのエンコーディングが他のメソッドによって自動的に判別できない場合、このエンコーディングがデフォルトになります。

- error_languageは、エラー・メッセージの作成に使用される言語(およびオプションでエンコーディング)です。デフォルトはUTF-8エンコーディングを使用した「American」です。言語のみを指定する場合は、言語名("American")を指定します。エンコーディングも指定するには、ピリオドに続いてエンコーディングのOracle名称を追加します("American.WE8ISO8859P1")。

- error_handlerは、関数ポインタです。XML_ERRMSG_Fを参照してください。デフォルトでは、エラー時にフォーマット済のメッセージがstderrに出力されます。エラー・ハンドラを指定すると、フォーマット済のメッセージは印刷されずにハンドラに渡されます。

- error_contextは、エラー・ハンドラ用のユーザー定義コンテキストであり、エラー・ハンドラ関数に渡されるコンテキスト・ポインタです。ユーザーが定義します。ここでは指定するのみで、エラー発生時に渡されます。

- input_encodingは、入力ドキュメントの強制入力エンコーディングの名前です。ドキュメントのXMLDeclをオーバーライドし、常に指定したエンコーディングで解析するために使用します。既存のBOMおよびXMLDeclは正確であるため、このプロパティは通常の場合は必ずしも必要ではありません。

- mallocを使用しない場合、memory_allocは、低レベルのメモリー割当て関数です。これを使用する場合、対応する解放関数も指定する必要があります。XML_ALLOC_Fを参照してください。

- freeを使用しない場合、memory_freeは、低レベルのメモリー解放関数です。memory_alloc関数に対応します。

- memory_contextは、allocおよびfree関数に渡されるユーザー定義のメモリー・コンテキストです。定義および用途はユーザーが決定できます。ここでは単に設定し、コールバックに渡されます。

XDKの追加プロパティは次のとおりです。

- input_buffer_sizeは、基本的なI/Oバッファ・サイズです。デフォルトは256K、範囲は4Kから4MBまでです。エンコーディングにより、これらのバッファが1つ、2つまたは3つ必要になります。サイズはバイト数ではなく文字数です。バッファがUnicodeデータを保持する場合、サイズは倍の大きさになります。

- memory_block_sizeは、高レベルのメモリー・パッケージが低レベルのアロケータから要求するチャンク・サイズで、メモリー割当ての基本単位です。デフォルトは64K、範囲は16Kから256Kまでです。

これらのオプション・パラメータは、次のように使用してください。

xmlctx *XmlCreate(
xmlerr *err,
oratext *name,
("data_encoding", dataEncoding),
("default_data_encoding", defaultDataEncoding),
("error_language", errorLanguage),
("error_handler", errorHandler),
("error_context", errorContext)
("input_encoding", inputEncoding),
("memory_alloc", memAlloc),
("memory_free", memFree),
("memory_context", memContext),
("input_buffer_seize", inputBufSize),
("memory_block_size", memBlockSize) );

戻り値

(xmlctx *) 作成されたxmlctx。エラー発生時にはerrが設定された状態でNULLが戻されます。

関連項目:
XmlDestroy()および第2章「C用のコールバックAPIパッケージ」のXML_ERRMSG_F()

XmlCreateDTD()

DTDを作成します。

構文

xmldocnode* XmlCreateDTD(
xmlctx *xctx
oratext *qname,
oratext *pubid,
oratext *sysid,
xmlerr *err);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

qname

IN

修飾名

pubid

IN

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

sysid

IN

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

err

OUT

戻されたエラー・コード

戻り値

(xmldtdnode *) 新しいDTDノード。

XmlCreateDocument()

最初のトップレベルのDOCUMENTノードおよびサポートするインフラストラクチャを作成します。修飾名を指定した場合、その名前の要素が作成され、ドキュメントのルート要素に設定されます。

構文

xmldocnode* XmlCreateDocument(
xmlctx *xctx,
oratext *uri,
oratext *qname,
xmldtdnode *dtd,
xmlerr *err);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

uri

IN

作成するルート要素の名前空間のURI、またはNULL

qname

IN

ルート要素の修飾名、または存在しない場合はNULL

dtd

IN

対応するDTDノード

err

OUT

戻されたエラー・コード

戻り値

(xmldocnode *) 新しいDocumentオブジェクト。

XmlDestroy()

XMLコンテキストを破棄します。

構文

void XmlDestroy(
xmlctx *xctx);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

関連項目:
XmlCreate()

XmlDiff()

DOMツリー、ファイル、URI、orastreamなどとして指定された2つのXMLドキュメントを比較し、そのドキュメント・ノードを戻します。入力ドキュメントがDOMツリーとして指定されていない場合、それらのDOMツリーが作成されます。

入力がDOMの場合、そのメモリーはコールの完了時に解放されません。

両方のドキュメントのデータ(DOM)エンコーディングは、XMLコンテキストでのデータ・エンコーディングと同じである必要があります。差分のDOMは、XMLコンテキストによって指定されたデータ・エンコーディングで作成されます。

構文

xmldocnode *XmlDiff(
xmlctx *xctx,
xmlerr *err,
ub4  flags,
xmldfsrct firstSourceType,
void *firstSource,
void *firstSourceExtra,
xmldfsrct secondSourceType,
void *secondSource,
void *secondSourceExtra,
uword hashLevel);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

err

OUT

数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

flags

IN

比較オプション。デフォルトでは、グローバル・アルゴリズムとスナップショット・モデルが使用されます。

- XMLDF_FL_DEFAULTS(=0)でデフォルトが選択されます。

- XMLDF_FL_ALGORITHM_GLOBALは、グローバル・アルゴリズムです。INSERT、APPEND、DELETEおよびUPDATEを使用して最小diffを生成し、XMLDF_FL_ALGORITHM_LOCALよりも多くのメモリーと時間を必要とします。

- XMLDF_FL_ALGORITHM_LOCALは、ローカル・アルゴリズムです。最小diffを生成しない場合がありますが、XMLDF_FL_ALGORITHM_GLOBALよりも高速で、使用領域は少なくなります。

- XMLDF_FL_DISABLE_UPDATEは、グローバル・アルゴリズムによる更新操作を無効化します。

- XMLDF_FL_OUTPUT_SNAPSHOTは、スナップショット・モデルを使用します。

firstSourceType

IN

1つ目のドキュメントのソース・タイプ。0の場合、DOMドキュメント・ノードとみなされます。

firstSource

IN

1つ目のドキュメント・ソースへのポインタ。

firstSourceExtra

IN

バッファ長ポインタのために使用される、1つ目のドキュメント・ソースへの追加ポインタ。

secondSourceType

IN

2つ目のドキュメントのソース・タイプ。0の場合、DOMドキュメント・ノードとみなされます。

secondSource

IN

2つ目のドキュメント・ソースへのポインタ。

secondSourceExtra

IN

バッファ長ポインタのために使用される、2つ目のドキュメント・ソースへの追加ポインタ。

hashLevel

IN

1-ベースの深さ(ルートからカウント)。サブツリーにはハッシングが使用されます。1以下の値は、ハッシングなしを示します。この値は、プログラムで指定される必要があります。
すべての要素ノードのハッシュ値は、そのノードをルートとするサブツリー全体に関連付けられます。差分の計算時には、ハッシュ・レベルの深さを超えたツリーへのドリルダウンは行われません。

- XMLDF_FL_ALGORITHM_GLOBALによってハッシングが使用される場合、差分計算の時間は大幅に短縮されますが、差分の質が低下する場合があります。

- XMLDF_FL_ALGORITHM_LOCALによる場合は、差分の質が向上します。

XmlFreeDocument()

XmlCreateDocumentまたはLoad関数によって作成されたドキュメントを破棄します。さらに、ドキュメントに関連付けられている、無効となったすべてのリソースを解放します。

構文

void XmlFreeDocument(
xmlctx *xctx,
xmldocnode *doc);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

doc

IN

解放するドキュメント

関連項目:
XmlCreateDocument()、XmlLoadDom()

XmlGetEncoding()

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

構文

oratext *XmlGetEncoding(
xmlctx *xctx);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

戻り値

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

関連項目:
XmlIsSimple()、XmlIsUnicode()

XmlHasFeature()

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 XmlHasFeature(
xmlctx *xctx,
oratext *feature,
oratext *version);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

feature

IN

テストする機能のパッケージ名

version

IN

テストするパッケージ名のバージョン番号

戻り値

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

XmlIsSimple()

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

構文

boolean XmlIsSimple(
xmlctx *xctx);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

戻り値

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

関連項目:
XmlGetEncoding()、XmlIsUnicode()

XmlIsUnicode()

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

構文

boolean XmlIsUnicode(
xmlctx *xctx);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

戻り値

(boolean) データ・エンコーディングがUnicodeの場合はTRUE、そうでない場合はFALSE。

関連項目:
XmlGetEncoding()、XmlIsSimple()

XmlLoadDom()

入力ソースからXML文書をロード(解析)してDOMを生成します。正常に終了した場合はルート・ドキュメント・ノード、エラーが発生した場合は(errを設定した状態で)NULLを戻します。

この関数は、2つの固定引数のxmlctxとエラー・リターン・コード、0個以上の(プロパティ, 値)ペア、およびNULLを取ります。

SOURCE: 入力ソースは、次のいずれかの相互に排他的なプロパティの1つによって設定されます(1つを選択します)。

- ("uri", ドキュメントのURI) [コンパイラのエンコーディング]

- ("file", ドキュメントのファイルシステム・パス) [コンパイラのエンコーディング]

- ("buffer", バッファのアドレス, "buffer_length", バッファ内のバイト数)

- ("stream", ストリーム・オブジェクトのアドレス, "stream_context", ストリーム・オブジェクトのコンテキストへのポインタ)

- ("stdio", FILEストリーム)

PROPERTIES: 追加プロパティは次のとおりです。

- ("dtd", DTDノード) ドキュメントのDTD

- ("base_uri", ドキュメントのベースURI) URI以外のソースからロードされたドキュメントの場合に、有効なベースURIを設定します。ドキュメントのベースURIは、相対URIのinclude、importなどの解決に必要です。

- ("input_encoding", エンコーディング名) 強制入力エンコーディング[名前]

- ("default_input_encoding", encoding_name) ドキュメントが自己記述的でない場合(BOM、プロトコル・ヘッダー、XMLDeclなどがない場合)に使用するデフォルトの入力エンコーディング

- ("schema_location", string) ドキュメントのスキーマのschemaLocation。ドキュメントをデータベースにロードする際に最適のレイアウトを判別するために使用されます。

- ("validate", ブール値) TRUEの場合、DTD検証を有効にします。デフォルトで、整形式のみ確認されます。スキーマの検証は別に扱われます。

- ("discard_whitespace", ブール値) TRUEの場合、入力ドキュメントの要素間の書式化用の空白(改行およびインデント)は削除されます。デフォルトでは、すべての入力文字が保持されます。

- ("dtd_only", ブール値) TRUEの場合、完全なドキュメントではなく、外部DTDを解析します。

- ("stop_on_warning", ブール値) TRUEの場合、警告はエラーと同様に扱われ、解析、検証などが即時停止されます。デフォルトでは、警告が発行されても処理は継続されます。

- ("warn_duplicate_entity", ブール値) TRUEの場合、エンティティが複数回宣言されると、警告が発行されます。デフォルトでは、最初の宣言が受け入れられ、その後の宣言は暗黙的に無視されます。

- ("no_expand_char_ref", ブール値) TRUEの場合、文字参照はDOMデータ内で展開されません。通常、文字参照は表現する文字によって置換されます。ただし、ドキュメントが保存されると、それらの文字エンティティは再表示されません。ロードおよび保存の過程でこれらを保持するには、展開しないようにします。

- ("no_check_chars", ブール値) TRUEの場合、XML [2] Char productionのテストを省略し、すべての入力文字が有効として受け入れられます。

構文

xmldocnode *XmlLoadDom(
xmlctx *xctx,
xmlerr *err,
list);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

err

OUT

戻されたエラー・コード

list

IN

変数引数のNULLで終了するリスト

戻り値

(xmldocnode *) 成功時はドキュメント・ノードが戻されます。失敗時には、errが設定された状態でNULLが戻されます。

関連項目:
XmlSaveDom()

XmlLoadSax()

入力ソースからXML文書をロード(解析)し、SAXイベントのセットを(ユーザー・コールバックとして)生成します。入力ソースおよびプロパティの基本セットは、XmlLoadDomと同じです。

構文

xmlerr XmlLoadSax(
xmlctx *xctx,
xmlsaxcb *saxcb,
void *saxctx,
list);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

saxcb

IN

SAXコールバック構造

saxctx

IN

SAXコールバックに渡されるコンテキスト

list

IN

変数引数のNULLで終了するリスト

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

XmlLoadSaxVA()

入力ソースからXML文書をロード(解析)し、SAXイベントのセットを(ユーザー・コールバックとして)生成します。入力ソースおよびプロパティの基本セットは、XmlLoadDomと同じです。

構文

xmlerr XmlLoadSaxVA(
xmlctx *xctx,
xmlsaxcb *saxcb,
void *saxctx,
va_list va);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

saxcb

IN

SAXコールバック構造

saxctx

IN

SAXコールバックに渡されるコンテキスト

va

IN

変数引数のNULLで終了するリスト

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

XmlSaveDom()

ドキュメントまたはサブツリーを指定された宛先にシリアル化し、書き込まれたバイト数を戻します。宛先が指定されていない場合、フォーマット後のサイズのみ戻し、出力は戻しません。

出力エンコーディングが指定されている場合、ドキュメントは出力時に再エンコードされます。そうでない場合、既存のエンコーディングのままです。

最上位はインデントされたステップ×レベルの空白、次のレベルはステップ×(レベル+1)の空白で、以下同様です。

バッファに保存する際、バッファがオーバーフローすると0(ゼロ)が戻され、エラーがXMLERR_SAVE_OVERFLOWに設定されます。

DESTINATION: 出力先は、相互に排他的な次のいずれかのプロパティによって設定されます(1つを選択します)。

- ("uri", ドキュメントのURI) POST、PUT? [コンパイラのエンコーディング]

- ("file", ドキュメントのファイルシステム・パス) [コンパイラのエンコーディング]

- ("buffer", バッファのアドレス, "buffer_length", バッファ内のバイト数)

- ("stream", ストリーム・オブジェクトのアドレス, "stream_context", ストリーム・オブジェクトのコンテキストへのポインタ)

PROPERTIES: 追加プロパティは次のとおりです。

- ("output_encoding", エンコーディング名) ドキュメントの最終エンコーディングの名前。指定された場合を除き、xmlctxと同じエンコーディングが使用されます。

- ("indent_step", 符号なし) 出力の各レベルをインデントする空白数。デフォルトは4です。0(ゼロ)はインデントなしを示します。

- ("indent_level", 符号なし) 最初のインデント・レベル。デフォルトは0(ゼロ)で、インデントなし、左揃えを示します。

- ("xmldecl", ブール値) 出力ドキュメントにXMLDeclを含めます。通常、XMLDeclは、完全なドキュメントの出力です(ルート・ノードはDOC)。

- ("bom", ブール値) 出力ドキュメントにBOMを入力します。通常、BOMは特定のエンコーディング(UTF-16)にのみ必要で、他のエンコーディング(UTF-8)の場合はオプションです。オプションでBOMを出力します。

- ("prune", ブール値) 出力をUNIXの'find'コマンドのようにプルーニングします。子には派生せず、指定された1つのノードのみ出力します。

構文

ubig_ora XmlSaveDom(
xmlctx *xctx,
xmlerr *err,
xmlnode *root,
list);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

err

OUT

失敗した場合、エラー・コード

root

IN

保存するルート・ノードまたはサブツリー

list

IN

変数引数のNULLで終了するリスト

戻り値

(ubig_ora) 出力先に書き込まれたバイト数。

関連項目:
XmlLoadDom()

XmlVersion()

XDKのバージョン文字列を戻します。

構文

oratext *XmlVersion();

戻り値

(oratext *) バージョン文字列。

12 C用のXmlDiff APIパッケージ

XmlDiffパッケージのメソッドを使用すると、XML文書を比較および変更することができます。XmlDiff()およびXmlPatch()メソッドは、UNIXコマンドのdiffおよびpatchとほぼ同等ですが、XML用に最適化されており、XMLに対応します。

この章の内容は次のとおりです。

- XmlDiffインタフェース

関連項目:

- 『Oracle XML Developer's Kitプログラマーズ・ガイド』のC XMLの相違点に関する項

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

XmlDiffインタフェース

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

表12-1 XmlDiffメソッドの概要

関数

概要

XmlDiff()

2つのXML文書の間の変更を判別します。

XmlHash()

DOMのXML文書またはノードのハッシュ値を計算します。

XmlPatch()

入力XML文書に変更を適用します。

XmlDiff()

2つのXML文書の間の変更を判別します。

XmlDiff()は、Xdiff XMLスキーマに準拠するXML形式の2つのドキュメント間のdiffを取得します。

これらの入力ドキュメントは、DOMツリー、ファイル、URI、orastreamなどとして指定することができます。これらのドキュメントがDOMツリーとして指定されていない場合、両方の入力のDOMツリーが作成されます。差分ドキュメントのDOMが作成され、ドキュメント・ノードが戻されます。

コール元が入力をDOMとして提供する場合、DOMのメモリーは解放されません。

両方のドキュメントのデータ(DOM)エンコーディングは、xctxでのデータ・エンコーディングと同じである必要があります。差分のDOMは、xctxで指定されたデータ・エンコーディングで作成されます。

XmlDiff()で実行可能なアルゴリズムは、グローバル、ローカル、ハッシングによるグローバル、およびハッシングによるローカルの4つです。diffは、4つの場合で異なる可能性があります。

グローバル・アルゴリズムは、挿入、追加、削除および更新操作を使用して最小diffを生成します。これは、ローカル・アルゴリズムよりも多くのメモリーと時間を必要とします。ローカル・アルゴリズムは、最小diffを生成しない場合がありますが、グローバル・アルゴリズムよりも高速であり、より少ない領域を使用します。

ハッシングは、グローバル・アルゴリズムとローカル・アルゴリズムの両方で使用できます。グローバル・アルゴリズムによってハッシングが使用される場合、差分計算の時間は大幅に短縮されますが、差分の質が低下する場合があります。ローカル・アルゴリズムによる場合は、diffの質が向上します。

ハッシングは、使用する深さを指定する必要があります。ハッシングでは、すべての要素ノードのハッシュ値は、そのノードをルートとするサブツリー全体のダイジェストに関連付けられます。diffの計算時には、指定されたハッシュ・レベルの深さを超えてツリーが調べられることはありません。

ハッシングを使用する、またはハッシングを使用しないグローバル・アルゴリズムの出力はドキュメント順操作の要件(ノードがドキュメント・ツリーの先行順走査と同じ順序で表示される)を満たしますが、ローカル・アルゴリズムの出力はこの要件を満たしません。

xdiffで使用される名前空間接頭辞XmlDiff()は、処理中にどの接頭辞が最初に現れるかによって、1つ目または2つ目のdocの接頭辞と同じになる場合があります。名前空間URIは、出力の接頭辞と適切にバインドされます。この名前空間が両方のdocで接頭辞を持たない場合、新しい接頭辞が生成され、xdiff docの名前空間にバインドされます。

XmlDiff()メソッドの詳細は、『Oracle XML Developer's Kitプログラマーズ・ガイド』を参照してください。同じガイドのXmlDiffコマンドラインに関する項では、追加リソースについて説明しています。

構文

xmldocnode *XmlDiff(
xmlctx *xctx,
xmlerr *err,
ub4  flags,
xmldfsrct firstSourceType,
void *firstSource,
void *firstSourceExtra,
xmldfsrct secondSourceType,
void *secondSource,
void *secondSourceExtra,
uword hashLevel,
oraprop *properties);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

xmlerr

OUT

数値のエラー・コード。正常に終了した場合は、XMLERR_OKを戻します。

flags

IN

次のオプションを利用できます。

- XMLDF_FL_DEFAULTS(=0)でデフォルトが選択されます。

- XMLDF_FL_ALGORITHM_GLOBALはグローバル・アルゴリズムです。

- XMLDF_FL_ALGORITHM_LOCALはローカル・アルゴリズムです。

- XMLDF_FL_DISABLE_UPDATEは、グローバル・アルゴリズムで更新操作の無効化を示します。

デフォルトでは、グローバル・アルゴリズムが使用されます。

firstSourceType

IN

1つ目のドキュメントのソース・タイプ。0(ゼロ)の場合、firstSourceはDOMドキュメント・ノードとみなされます。

firstSource

IN

1つ目のドキュメントのソースへのポインタ。

firstSourceExtra

IN

バッファ長ポインタのために使用される、1つ目のドキュメントのソースへの追加ポインタ。

secondSourceType

IN

2つ目のドキュメントのソース・タイプ。0(ゼロ)の場合、secondSourceはDOMドキュメント・ノードとみなされます。

secondSource

IN

2つ目のドキュメントのソースへのポインタ。

secondSourceExtra

IN

バッファ長ポインタのために使用される、2つ目のドキュメントのソースへの追加ポインタ。

hashLevel

IN

ハッシングを使用するサブツリーの深さ(ルートの1からカウント)。<=1の場合はハッシングを使用しないことを意味します。

properties

IN

Output Builderに使用

戻り値

(xmldocnode) 差分ドキュメントのドキュメント・ノード。エラー発生時にはNULLが戻されます。

XmlHash()

DOMのXML文書またはノードのハッシュ値を計算します。

2つのXMLサブツリーのハッシュ値が同じである場合、対応するサブツリーが同じである可能性が非常に高くなります。広く使用される、128ビット・ハッシュ値による暗号ハッシュ関数のメッセージ・ダイジェスト・アルゴリズム5(MD5)を使用してハッシュ値を計算するため、2つの異なる入力が同じMD5ダイジェストにマップされる可能性はほとんどありません。

ソースは、ファイルやURLなどとして指定できます。DOMのドキュメント・ノードや他のDOMノードも指定でき、inputSourceパラメータを使用して指定する必要があります。inputSourceが非ドキュメントのDOMノードの場合、inputSourceExtraはDOMのドキュメント・ノードを指している必要があります。

XmlHash()メソッドの詳細は、『Oracle XML Developer's Kitプログラマーズ・ガイド』を参照してください。

構文

xmlerr XmlHash(
xmlctx *xctx,
xmlhasht *digest,
ub4 flags,
xmldfsrct iputSourceType,
void *inputSource,
void *inputSourceExtra,
oraprop *properties);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

digest

OUT

XMLサブツリーのハッシュ値。

flags

IN

未使用。

inputSourceType

IN

入力ドキュメントのソース・タイプ。0(ゼロ)の場合、inputSourceはDOMドキュメント・ノードとみなされます。

inputSource

IN

入力ドキュメントのソースへのポインタ。

inputSourceExtra

IN

入力ドキュメントのソースへの追加ポインタ。DOMのノード・ポインタに使用される場合は、inputSourceがドキュメント・ノードである必要があります。

properties

IN

未使用。

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OKを戻します。

XmlPatch()

XmlPatch()は、Xdiffスキーマ準拠の変更を入力ドキュメントに適用します。入力ドキュメントおよびdiffドキュメントは、DOMツリー、ファイル、URIまたはバッファとして指定することができます。

入力ドキュメントおよびdiffドキュメントがDOMとして指定されていない場合は、それらのDOMが作成されます。

入力ドキュメントと差分ドキュメントの両方のデータ(DOM)エンコーディングは、xctxでのデータ・エンコーディングと同じである必要があります。パッチ適用済のDOMは、xctxで指定されたデータ・エンコーディング内に存在します。

スナップショット・モデルでは、単純なXPathのみがサポートされます。XPathは、/a[1]/b[2]などの簡略化された構文で示される位置によってノードを識別します。XmlDiff()によって生成されるXPathは、この要件を満たします。また、ドキュメント順操作の条件は、TRUEである必要があります。つまり、ノードをドキュメント・ツリーの先行順走査と同じ順序で表示する必要があります。グローバルは(ハッシングを使用しても、ハッシングを使用しなくても)この要件を満たします。ローカルは、この要件を満たしません。

プログラミング・インタフェースは、差分ドキュメントで使用される出力モデルを指定する必要があります。oracle-xmldifは、最上位のxdiff要素の最初の子になります。また、操作をドキュメント順にするかどうか(TRUEまたはFALSE)、および出力モデルをスナップショット・モデルと現在のモデルのいずれにするかを指定するフラグを使用する必要があります。

XmlPatch()メソッドの詳細は、『Oracle XML Developer's Kitプログラマーズ・ガイド』を参照してください。同じガイドのXmlPatchコマンドラインに関する項では、追加リソースについて説明しています。

構文

xmldocnode *XmlPatch(
xmlctx *xctx,
xmlerr *err,
ub4  flags,
xmldfsrct inputSourceType,
void *inputSource,
void *inputSourceExtra,
xmldfsrct diffSourceType,
void *diffSource,
void *diffSourceExtra,
oraprop *properties);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

xmlerr

OUT

数値のエラー・コード。正常に終了した場合は、XMLERR_OKを戻します。

flags

IN

次のオプションを利用できます。

- XMLDF_FL_DEFAULTS(=0)でデフォルトが選択されます。

inputSourceType

IN

入力ドキュメントのソース・タイプ。0(ゼロ)の場合、inputSourceはDOMドキュメント・ノードとみなされます。

inputSource

IN

入力ドキュメントのソースへのポインタ。

inputSourceExtra

IN

バッファ長ポインタに使用される、入力ドキュメントのソースへの追加ポインタ。

diffSourceType

IN

diffドキュメントのソース・タイプ。0(ゼロ)の場合、secondSourceはDOMドキュメント・ノードとみなされます。

diffsSource

IN

diffドキュメントのソースへのポインタ。

diffSourceExtra

IN

バッファ長ポインタに使用される、diffドキュメントのソースへの追加ポインタ。

properties

IN

未使用。

戻り値

(xmldocnode) パス指定されたDOMのドキュメント・ノード。エラー発生時にはNULLが戻されます。

13 C用のXPath APIパッケージ

XPathメソッドは、XPathに関連のある型およびインタフェースを処理します。

この章の内容は次のとおりです。

- XPathインタフェース

関連項目:

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

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

XPathインタフェース

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

表13-1 XPathメソッドの概要

関数

概要

XmlXPathCreateCtx()

XPathコンテキストを作成します。

XmlXPathDestroyCtx()

XPathコンテキストを破棄します。

XmlXPathEval()

XPath式を評価します。

XmlXPathGetObjectBoolean()

XPathオブジェクトのブール値を取得します。

XmlXPathGetObjectFragment()

XPathオブジェクトのフラグメント値を取得します。

XmlXPathGetObjectNSetNode()

ノードセット型XPathオブジェクトからノードを取得します。

XmlXPathGetObjectNSetNum()

ノードセット型XPathオブジェクトからノードの数を取得します。

XmlXPathGetObjectNumber()

XPathオブジェクトから数値を取得します。

XmlXPathGetObjectString()

XPathオブジェクトから文字列を取得します。

XmlXPathGetObjectType()

XPathオブジェクトの型を取得します。

XmlXPathParse()

XPath式を解析します。

XmlXPathCreateCtx()

XPathコンテキストを作成します。

構文

xpctx* XmlXPathCreateCtx(
xmlctx *xsl,
oratext *baseuri,
xmlnode *ctxnode,
ub4 ctxpos,
ub4 ctxsize);

パラメータ

IN/OUT

説明

xsl

IN

xmldocオブジェクトとしてのXSLスタイルシート

baseuri

IN

ドキュメントで使用されているベースURI(存在する場合)

ctxnode

IN

現在のコンテキストの位置

ctxpos

IN

現在のコンテキストのサイズ

ctxsize

IN

現在のコンテキスト・ノード

戻り値

(xpctx *) XPathコンテキスト。エラー発生時にはNULLが戻されます。

XmlXPathDestroyCtx()

XPathコンテキストを破棄します。

構文

void XmlXPathDestroyCtx(
xpctx *xslxpctx);

パラメータ

IN/OUT

説明

xslxpctx

IN

XPathコンテキスト・オブジェクト

XmlXPathEval()

XPath式を評価します。

構文

xpobj *XmlXPathEval(
xpctx *xctx,
xpexpr *exprtree,
xmlerr *err);

パラメータ

IN/OUT

説明

xctx

IN

XPathコンテキスト

exprtree

IN

解析したXPath式ツリー

err

OUT

エラー・コード

戻り値

(xpobj *) 結果のXPathオブジェクト。エラー発生時にはNULLが戻されます。

XmlXPathGetObjectBoolean()

XPathオブジェクトのブール値を取得します。

構文

boolean XmlXPathGetObjectBoolean(
xpobj *obj);

パラメータ

IN/OUT

説明

obj

IN

XPathオブジェクト

戻り値

(boolean) 真理値。

関連項目:
XmlXPathGetObjectType()、XmlXPathGetObjectNSetNum()、XmlXPathGetObjectNSetNode()、XmlXPathGetObjectNumber()、XmlXPathGetObjectBoolean()

XmlXPathGetObjectFragment()

XPathオブジェクトのブール値を取得します。

構文

xmlnode* XmlXPathGetObjectFragment(
xpobj *obj);

パラメータ

IN/OUT

説明

obj

IN

XPathオブジェクト

戻り値

(boolean) 真理値。

関連項目:
XmlXPathGetObjectType()、XmlXPathGetObjectNSetNum()、XmlXPathGetObjectNSetNode()、XmlXPathGetObjectNumber()、XmlXPathGetObjectBoolean()

XmlXPathGetObjectNSetNode()

ノードセット型XPathオブジェクトからノードを取得します。

構文

xmlnode *XmlXPathGetObjectNSetNode(
xpobj *obj,
ub4 i);

パラメータ

IN/OUT

説明

obj

IN

XPathオブジェクト

i

IN

ノードセットのノードのインデックス

戻り値

(xmlnode *) オブジェクト型または値。

関連項目:
XmlXPathGetObjectType()、XmlXPathGetObjectNSetNum()、XmlXPathGetObjectString()、XmlXPathGetObjectNumber()、XmlXPathGetObjectBoolean()

XmlXPathGetObjectNSetNum()

ノードセット型XPathオブジェクトからノードの数を取得します。

構文

ub4 XmlXPathGetObjectNSetNum(
xpobj *obj);

パラメータ

IN/OUT

説明

obj

IN

XPathオブジェクト

戻り値

(ub4) ノードセット内のノードの数。

関連項目:
XmlXPathGetObjectType()、XmlXPathGetObjectNSetNode()、XmlXPathGetObjectString()、XmlXPathGetObjectNumber()、XmlXPathGetObjectBoolean()

XmlXPathGetObjectNumber()

XPathオブジェクトから数値を取得します。

構文

double XmlXPathGetObjectNumber(
xpobj *obj);

パラメータ

IN/OUT

説明

obj

IN

XPathオブジェクト

戻り値

(double) 数値。

関連項目:
XmlXPathGetObjectType()、XmlXPathGetObjectNSetNum()、XmlXPathGetObjectNSetNode()、XmlXPathGetObjectString()、XmlXPathGetObjectBoolean()

XmlXPathGetObjectString()

XPathオブジェクトから文字列を取得します。

構文

oratext *XmlXPathGetObjectString(
xpobj *obj);

パラメータ

IN/OUT

説明

obj

IN

XPathオブジェクト

戻り値

(oratext *) 文字列。

関連項目:
XmlXPathGetObjectType()、XmlXPathGetObjectNSetNum()、XmlXPathGetObjectNSetNode()、XmlXPathGetObjectNumber()、XmlXPathGetObjectBoolean()

XmlXPathGetObjectType()

XPathオブジェクト型を取得します。

構文

xmlxslobjtype XmlXPathGetObjectType(
xpobj *obj);

パラメータ

IN/OUT

説明

obj

IN

XPathオブジェクト

戻り値

(xmlxslobjtype) オブジェクトの型コード。

関連項目:
XmlXPathGetObjectNSetNum()、XmlXPathGetObjectNSetNode()、XmlXPathGetObjectString()、XmlXPathGetObjectNumber()、XmlXPathGetObjectBoolean()

XmlXPathParse()

XPath式を解析します。

構文

xpexpr* XmlXPathParse(
xpctx *xctx,
oratext *expr,
xmlerr * err);

パラメータ

IN/OUT

説明

xctx

IN

XPathコンテキスト・オブジェクト

expr

IN

XPath式

err

OUT

エラー・コード

戻り値

(xpexpr *) XPath式解析ツリー。エラー発生時にはNULLが戻されます。

14 C用のXPointer APIパッケージ

XPointerパッケージには、3つのインタフェースのAPIが含まれています。

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

- XPointerインタフェース

- XPtrLocインタフェース

- XPtrLocSetインタフェース

関連項目:

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

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

XPointerインタフェース

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

表14-1 XPointerメソッドの概要: XPointerパッケージ

関数

概要

XmlXPointerEval()

xpointer文字列を評価します。

XmlXPointerEval()

xpointer文字列を解析および評価し、ドキュメント内での位置を計算します。

構文

xmlxptrlocset* XmlXPointerEval(
xmldocnode* doc,
oratext* xptrstr);

パラメータ

IN/OUT

説明

doc

IN

対応するDOMツリーのドキュメント・ノード

xptrstr

IN

xpointer文字列

戻り値

(xmlxptrlocset *) 計算した位置セット。

XPtrLocインタフェース

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

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

関数

概要

XmlXPtrLocGetNode()

XPtrLocからXmlノードを戻します。

XmlXPtrLocGetPoint()

XPtrLocからXmlポイントを戻します。

XmlXPtrLocGetRange()

XPtrLocからXmlの範囲を戻します。

XmlXPtrLocGetType()

XPtrLocの型を戻します。

XmlXPtrLocToString()

位置から文字列を戻します。

XmlXPtrLocGetNode()

位置からノードを戻します。

構文

xmlnode* XmlXPtrLocGetNode(
xmlxptrloc* loc);

パラメータ

IN/OUT

説明

loc

IN

位置

戻り値

(xmlnode *) 位置のNode。

XmlXPtrLocGetPoint()

位置からポイントを戻します。

構文

xmlpoint* XmlXPtrLocGetPoint(
xmlxptrloc* loc);

パラメータ

IN/OUT

説明

loc

IN

位置

戻り値

(xmlpoint *) 位置のポイント。

XmlXPtrLocGetRange()

位置から範囲を戻します。

構文

xmlrange* XmlXPtrLocGetRange(
xmlxptrloc* loc);

パラメータ

IN/OUT

説明

loc

IN

位置

戻り値

(xmlrange *) 位置の範囲。

XmlXPtrLocGetType()

位置の型を戻します。

構文

xmlxptrloctype XmlXPtrLocGetType(
xmlxptrloc* loc);

パラメータ

IN/OUT

説明

loc

IN

位置

戻り値

(xmlxptrloctype) 位置の型。

XmlXPtrLocToString()

位置から文字列を戻します。

- ノード名: コンテナ・ノードの名前。

- コンテナ・ノードの名前: それ以外の場合は位置ではありません。

構文

oratext* XmlXPtrLocToString(
xmlxptrloc* loc);

パラメータ

IN/OUT

説明

loc

IN

位置

戻り値

(oratext *) 文字列。

XPtrLocSetインタフェース

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

表14-3 XPtrLocSetメソッドの概要: XPointerパッケージ

関数

概要

XmlXPtrLocSetFree()

位置セットを解放します。

XmlXPtrLocSetGetItem()

XPtrLocSet内のidxの位置を戻します。

XmlXPtrLocSetGetLength()

XPtrLocSetの長さを戻します。

XmlXPtrLocSetFree()

XPointerまたはXPtrLocSetインタフェースによって戻されたすべての位置セットに対し、ユーザーが、この関数をコールする必要があります。

構文

void XmlXPtrLocSetFree(
xmlxptrlocset* locset);

パラメータ

IN/OUT

説明

locset

IN

位置セット

XmlXPtrLocSetGetItem()

位置セット内のidxの位置を戻します。最初の位置は1です。

構文

xmlxptrloc* XmlXPtrLocSetGetItem(
xmlxptrlocset* locset,
ub4 idx);

パラメータ

IN/OUT

説明

locset

IN

位置セット

idx

IN

位置のインデックス

戻り値

(xmlxptrloc *) idxの位置。

XmlXPtrLocSetGetLength()

位置セット内の位置の数を戻します。

構文

ub4 XmlXPtrLocSetGetLength(
xmlxptrlocset* locset);

パラメータ

IN/OUT

説明

locset

IN

位置セット

戻り値

(ub4) locset内のノードの数。

15 C用のXSLT APIパッケージ

XSLTパッケージは、XSL処理に関連のある型およびメソッドを実装します。

この章の内容は次のとおりです。

- XSLTインタフェース

関連項目:

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

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

XSLTインタフェース

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

表15-1 XSLTメソッドの概要

関数

概要

XmlXslCreate()

XSLコンテキストを作成します。

XmlXslDestroy()

XSLコンテキストを破棄します。

XmlXslGetBaseURI()

XSL ProcessorsのベースURIを取得します。

XmlXslGetOutput()

XSLの結果のフラグメントを取得します。

XmlXslGetStylesheetDom()

XSLスタイルシート・ドキュメントを取得します。

XmlXslGetTextParam()

XSLテキストのパラメータ値を取得します。

XmlXslProcess()

インスタンス・ドキュメントをXSL処理します。

XmlXslResetAllParams()

XSL Processorsのパラメータをリセットします。

XmlXslSetOutputDom()

XSLコンテキストの出力DOMを設定します。

XmlXslSetOutputEncoding()

XSLコンテキストの出力エンコーディングを設定します。

XmlXslSetOutputMethod()

XSLコンテキストの出力メソッドを設定します。

XmlXslSetOutputSax()

XSLコンテキストの出力SAXを設定します。

XmlXslSetOutputStream()

XSLコンテキストの出力ストリームを設定します。

XmlXslSetTextParam()

XSLコンテキストの出力テキスト・パラメータを設定します。

XmlXslCreate()

XSLTコンテキストを作成します。

構文

xslctx *XmlXslCreate(
xmlctx *ctx,
xmldocnode *xsl,
oratext *baseuri,
xmlerr *err);

パラメータ

IN/OUT

説明

ctx

IN

XSLコンテキスト・オブジェクト

xsl

IN

XSLスタイルシート・ドキュメント・オブジェクト

baseuri

IN

ドキュメントの挿入およびインポートに使用するベースURI

err

IN/OUT

戻されたエラー・コード

戻り値

(xslctx *) XSLTコンテキスト。

関連項目:
XmlXslDestroy()

XmlXslDestroy()

XSLコンテキストを破棄します。

構文

xmlerr XmlXslDestroy(
xslctx *ctx);

パラメータ

IN/OUT

説明

ctx

IN

XSLコンテキスト

戻り値

(xmlerr) エラー・コード。

関連項目:
XmlXslCreate()

XmlXslGetBaseURI()

XSL ProcessorsのベースURIを取得します。

構文

oratext *XmlXslGetBaseURI(
xslctx *ctx);

パラメータ

IN/OUT

説明

ctx

IN

XSLコンテキスト・オブジェクト

戻り値

(oratext *) ベースURI。

XmlXslGetOutput()

XSLの結果のフラグメントを取得します。

構文

xmlfragnode *XmlXslGetOutput(
xslctx *ctx);

パラメータ

IN/OUT

説明

ctx

IN

XSLコンテキスト・オブジェクト

戻り値

(xmlfragnode *) 結果のフラグメント。

XmlXslGetStylesheetDom()

XSLスタイルシート・ドキュメントを取得します。

構文

xmldocnode *XmlXslGetStylesheetDom(
xslctx *ctx);

パラメータ

IN/OUT

説明

ctx

IN

XSLコンテキスト・オブジェクト

戻り値

(xmldocnode *) スタイルシート・ドキュメント。

XmlXslGetTextParam()

XSLテキストのパラメータ値を取得します。

構文

oratext *XmlXslGetTextParam(
xslctx *ctx,
oratext *name);

パラメータ

IN/OUT

説明

ctx

IN

XMLコンテキスト・オブジェクト

name

IN

最上位のパラメータ値の名前

戻り値

(oratext *) パラメータ値。

関連項目:
XmlXslSetTextParam()

XmlXslProcess()

インスタンス・ドキュメントをXSL処理します。

構文

xmlerr XmlXslProcess(
xslctx *ctx,
xmldocnode *xml,
boolean normalize);

パラメータ

IN/OUT

説明

ctx

IN

XSLコンテキスト・オブジェクト

xml

IN

処理するインスタンス・ドキュメント。

normalize

IN

TRUEの場合は、ドキュメントを正規化するようXSL Processorsに強制します。

戻り値

(xmlerr) エラー・コード。

XmlXslResetAllParams()

追加された最上位のパラメータをすべてリセットします。

構文

xmlerr XmlXslResetAllParams(
xslctx *ctx);

パラメータ

IN/OUT

説明

ctx

IN

XSLコンテキスト・オブジェクト

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_SUCC [0]。

関連項目:
XmlXslSetTextParam()

XmlXslSetOutputDom()

xslctxの出力DOMを設定します。

構文

xmlerr XmlXslSetOutputDom(
xslctx *ctx,
xmldocnode *doc);

パラメータ

IN/OUT

説明

ctx

IN

XSLコンテキスト・オブジェクト

doc

IN

出力ノード

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_SUCC [0]。

XmlXslSetOutputEncoding()

xslctxの出力エンコーディングを設定します。

構文

xmlerr XmlXslSetOutputEncoding(
xslctx *ctx,
oratext* encoding);

パラメータ

IN/OUT

説明

ctx

IN

XMLコンテキスト・オブジェクト

encoding

IN

出力のエンコーディング

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_SUCC [0]。

XmlXslSetOutputMethod()

xslctxの出力メソッドを設定します。

構文

xmlerr XmlXslSetOutputMethod(
xslctx *ctx,
xmlxslomethod method);

パラメータ

IN/OUT

説明

ctx

IN

XMLコンテキスト・オブジェクト

encoding

IN

XSLの出力メソッド

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_SUCC [0]。

XmlXslSetOutputSax()

xslctxの出力SAXを設定します。

構文

xmlerr XmlXslSetOutputSax(
xslctx *ctx,
xmlsaxcb* saxcb,
void *saxctx);

パラメータ

IN/OUT

説明

ctx

IN

XSLコンテキスト・オブジェクト

saxcb

IN

SAXコールバック・オブジェクト

saxctx

IN

SAXコールバック・コンテキスト

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_SUCC [0]。

XmlXslSetOutputStream()

構文

xmlerr XmlXslSetOutputStream(
xslctx *ctx,
xmlostream *stream);

パラメータ

IN/OUT

説明

ctx

IN

XSLコンテキスト・オブジェクト

stream

IN

出力ストリーム・オブジェクト

戻り値

(xmlxsl) エラー・コード。成功の場合は、XMLXSL_SUCC [0](ゼロ)。

XmlXslSetTextParam()

xslctxの出力テキスト・パラメータを設定します。

構文

xmlerr XmlXslSetTextParam(
xslctx *ctx,
oratext *name,
oratext *value);

パラメータ

IN/OUT

説明

ctx

IN

XSLコンテキスト・オブジェクト

name

IN

最上位のパラメータの名前

value

IN

最上位のパラメータの値

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_SUCC [0]。

関連項目:
XmlXslGetTextParam()

16 C用のXSLTVM APIパッケージ

XSLTVMパッケージでは、1999年11月16日のW3C勧告で指定されたXSL Transformation(XSLT)言語を実装します。XSLTVMパッケージには、2つのインタフェースが含まれています。

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

- XSLTVMの使用

- XSLTCインタフェース

- XSLTVMインタフェース

関連項目:

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

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

XSLTVMの使用

XSLT仮想マシンは、コンパイル済のXSLTコードを実行するよう設計されたCPUのソフトウェアによる実装です。仮想マシンの概念は、XSLTスタイルシートを、バイトコードのシーケンスまたは「XSLT CPU」のマシン用手順にコンパイルするコンパイラに基づいています。バイトコード・プログラムは、2バイト単位のプラットフォームに依存しないシーケンスです。これは、異なるXSLTVM上で格納、キャッシュおよび実行できます。XSLTVMは、バイトコード・プログラムを使用して、インスタンスXML文書を変換します。この方法では、コンパイル(設計)時と実行時の計算を明確に分離し、手順間でデータを変換するための統一された手段を指定します。

APIパッケージを使用する一般的な場面には、次の手順が含まれます。

1. XMLメタ・コンテキスト・オブジェクトを作成/使用します。
xctx = XmlCreate(,...);

2. XSLTコンパイラ・オブジェクトを作成/使用します。
comp = XmlXvmCreateComp(xctx);

3. XSLTスタイルシートをコンパイルし、結果のバイトコードをキャッシュします。
code = XmlXvmCompileFile(comp, xslFile, baseuri, flags, );

4. XSLTVMオブジェクトを作成/使用します。XSLTVMがスタックのオーバーフローのメッセージで終了する場合、またはより小さいメモリー・フットプリントが必要な場合、明示的スタック・サイズの設定が必要となります(XmlXvmCreateを参照)。
vm = XmlXvmCreate(xctx, "StringStack", 32, "NodeStack", 24, NULL);

5. XSLTVMオブジェクトにスタイルシート・バイトコードを設定します。
len = XmlXvmGetBytecodeLength(code, ); err = XmlXvmSetBytecodeBuffer(vm, code, len);

6. インスタンスXML文書を変換します。
err = XmlXvmTransformFile(vm, xmlFile, baseuri);

7. クリーン・アップします。
XmlXvmDestroy(vm);

XmlXvmDestroyComp(comp);

XmlDestroy(xctx);

XSLTCインタフェース

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

表16-1 XSLTCメソッドの概要: XSLTVMパッケージ

関数

概要

XmlXvmCompileBuffer()

バッファからバイトコードにXSLTスタイルシートをコンパイルします。

XmlXvmCompileDom()

DOMからバイトコードにXSLTスタイルシートをコンパイルします。

XmlXvmCompileFile()

ファイルからバイトコードにXSLTスタイルシートをコンパイルします。

XmlXvmCompileURI()

URIからバイトコードにXSLTスタイルシートをコンパイルします。

XmlXvmCompileXPath()

XPath式をコンパイルします。

XmlXvmCreateComp()

XSLTコンパイラを作成します。

XmlXvmDestroyComp()

XSLTコンパイラ・オブジェクトを破棄します。

XmlXvmGetBytecodeLength()

バイトコードの長さを戻します。

XmlXvmCompileBuffer()

バッファからバイトコードにXSLTスタイルシートをコンパイルします。コンパイラ・フラグは、次のいずれか1つ以上になります。

- XMLXVM_DEBUGはコンパイラに対して、バイトコードへのデバッグ情報の挿入を強制します。

- XMLXVM_STRIPSPACEは<xsl:strip-space elements="*"/>と同等です。

生成されたバイトコードはコンパイラ・バッファに常駐し、次のスタイルシートがコンパイルされるか、コンパイラ・オブジェクトが削除されると解放されます。したがって、バイトコードを再利用する場合、別の場所にコピーする必要があります。

構文

ub2 *XmlXvmCompileBuffer(
xmlxvmcomp *comp,
oratext *buffer,
ub4 length,
oratext *baseURI,
xmlxvmflag flags,
xmlerr *error);

パラメータ

IN/OUT

説明

comp

IN

コンパイラ・オブジェクト

buffer

IN

スタイルシート・ドキュメントが含まれているバッファへのポインタ

length

IN

バイト単位で示したスタイルシート・ドキュメントの長さ

baseuri

IN

ドキュメントのベースURI

flags

IN

現在のコンパイルのフラグ

error

OUT

戻されたエラー・コード

戻り値

(ub2 *) バイトコード。エラー発生時にはNULLが戻されます。

関連項目:
XmlXvmCompileFile()、XmlXvmCompileURI()、XmlXvmCompileDom()

XmlXvmCompileDom()

DOMからバイトコードにXSLTスタイルシートをコンパイルします。コンパイラ・フラグは、次のいずれか1つ以上になります。

- XMLXVM_DEBUGはコンパイラに対して、バイトコードへのデバッグ情報の挿入を強制します。

- XMLXVM_STRIPSPACEは<xsl:strip-space elements="*"/>と同等です。

生成されたバイトコードはコンパイラ・バッファに常駐し、次のスタイルシートがコンパイルされるか、コンパイラ・オブジェクトが削除されると解放されます。したがって、バイトコードを再利用する場合、別の場所にコピーする必要があります。

構文

ub2 *XmlXvmCompileDom(
xmlxvmcomp *comp,
xmldocnode *root,
xmlxvmflag flags,
xmlerr *error);

パラメータ

IN/OUT

説明

comp

IN

コンパイラ・オブジェクト

rooot

IN

スタイルシートDOMのルート要素

flags

IN

現在のコンパイルのフラグ

error

OUT

戻されたエラー・コード

戻り値

(ub2 *) バイトコード。エラー発生時にはNULLが戻されます。

関連項目:
XmlXvmCompileFile()、XmlXvmCompileBuffer()、XmlXvmCompileURI()

XmlXvmCompileFile()

ファイルからバイトコードにXSLTスタイルシートをコンパイルします。コンパイラ・フラグは、次のいずれか1つ以上になります。

- XMLXVM_DEBUGはコンパイラに対して、バイトコードへのデバッグ情報の挿入を強制します。

- XMLXVM_STRIPSPACEは<xsl:strip-space elements="*"/>と同等です。

生成されたバイトコードはコンパイラ・バッファに常駐し、次のスタイルシートがコンパイルされるか、コンパイラ・オブジェクトが削除されると解放されます。したがって、バイトコードを再利用する場合、別の場所にコピーする必要があります。

構文

ub2 *XmlXvmCompileFile(
xmlxvmcomp *comp,
oratext *path,
oratext *baseURI,
xmlxvmflag flags,
xmlerr *error);

パラメータ

IN/OUT

説明

comp

IN

コンパイラ・オブジェクト

path

IN

XSLスタイルシート・ファイルのパス

baseuri

IN

ドキュメントのベースURI

flags

IN

現在のコンパイルのフラグ

error

OUT

戻されたエラー・コード

戻り値

(ub2 *) バイトコード。エラー発生時にはNULLが戻されます。

関連項目:
XmlXvmCompileURI()、XmlXvmCompileBuffer()、XmlXvmCompileDom()

XmlXvmCompileURI()

URIからバイトコードにXSLTスタイルシートをコンパイルします。コンパイラ・フラグは、次のいずれか1つ以上になります。

- XMLXVM_DEBUGはコンパイラに対して、バイトコードへのデバッグ情報の挿入を強制します。

- XMLXVM_STRIPSPACEは<xsl:strip-space elements="*"/>と同等です。

生成されたバイトコードはコンパイラ・バッファに常駐し、次のスタイルシートがコンパイルされるか、コンパイラ・オブジェクトが削除されると解放されます。したがって、バイトコードを再利用する場合、別の場所にコピーする必要があります。

構文

ub2 *XmlXvmCompileURI(
xmlxvmcomp *comp,
oratext *uri,
xmlxvmflag flags,
xmlerr *error);

パラメータ

IN/OUT

説明

comp

IN

コンパイラ・オブジェクト

uri

IN

XSLスタイルシートが含まれているファイルのURI

flags

IN

現在のコンパイルのフラグ

error

OUT

戻されたエラー・コード

戻り値

(ub2 *) バイトコード。エラー発生時にはNULLが戻されます。

関連項目:
XmlXvmCompileFile()、XmlXvmCompileBuffer()、XmlXvmCompileDom()

XmlXvmCompileXPath()

XPath式をコンパイルします。オプションのpfxmapは、名前空間の接頭辞をXPath式内のURIにマップするために使用されます。これは、NULLで終了する接頭辞やURI値などの配列です。

構文

ub2 *XmlXvmCompileXPath(
xmlxvmcomp *comp,
oratext *xpath,
oratext **pfxmap,
xmlerr *error);

パラメータ

IN/OUT

説明

comp

IN

コンパイラ・オブジェクト

xpath

IN

XPath式

pfxmap

IN

接頭辞とURIのマッピングの配列

error

OUT

戻されたエラー・コード

戻り値

(ub2 *) XPath式のバイトコード。エラー発生時にはNULLが戻されます。

XmlXvmCreateComp()

XSLTコンパイラ・オブジェクトを作成します。XSLTコンパイラは、XSLTスタイルシートをバイトコードにコンパイルするために使用します。

構文

xmlxvmcomp *XmlXvmCreateComp(
xmlctx *xctx);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

戻り値

(xmlxvmcomp *) XSLTコンパイラ・オブジェクト。エラー発生時にはNULLが戻されます。

関連項目:
XmlXvmDestroyComp()

XmlXvmDestroyComp()

XSLTコンパイラ・オブジェクトを破棄します。

構文

void XmlXvmDestroyComp(
xmlxvmcomp *comp);

パラメータ

IN/OUT

説明

comp

IN

XSLTコンパイラ・オブジェクト

関連項目:
XmlXvmCreateComp()

XmlXvmGetBytecodeLength()

バイトコードの長さは、バイトコードをコピーする場合、またはXSLTVMで設定する場合に必要です。

構文

ub4 XmlXvmGetBytecodeLength(
ub2 *bytecode,
xmlerr *error);

パラメータ

IN/OUT

説明

bytecode

IN

バイトコードのバッファ

error

OUT

戻されたエラー・コード

戻り値

(ub4) バイト単位で示したバイトコードの長さ。

XSLTVMインタフェース

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

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

関数

概要

XMLXVM_DEBUG_F()

XMLXSLTVMデバッグ関数。

XmlXvmCreate()

XSLT仮想マシンを作成します。

XmlXvmDestroy()

XSLT仮想マシンを破棄します。

XmlXvmEvaluateXPath()

コンパイル済のXPath式を評価します。

XmlXvmGetObjectBoolean()

XPathオブジェクトのブール値を取得します。

XmlXvmGetObjectNSetNode()

ノードセット型XPathオブジェクトからノードを取得します。

XmlXvmGetObjectNSetNum()

ノードセット型XPathオブジェクトからノードの数を取得します。

XmlXvmGetObjectNumber()

XPathオブジェクトから数値を取得します。

XmlXvmGetObjectString()

XPathオブジェクトから文字列を取得します。

XmlXvmGetObjectType()

XPathオブジェクトの型を取得します。

XmlXvmGetOutputDom()

出力DOMを戻します。

XmlXvmResetParams()

スタイルシートの最上位テキストのパラメータをリセットします。

XmlXvmSetBaseURI()

XLTVMのベースURIを設定します。

XmlXvmSetBytecodeBuffer()

コンパイルしたバイトコードを設定します。

XmlXvmSetBytecodeFile()

ファイルからコンパイルしたバイトコードを設定します。

XmlXvmSetBytecodeURI()

コンパイルしたバイトコードを設定します。

XmlXvmSetDebugFunc()

デバッグ用のコールバック関数を設定します。

XmlXvmSetOutputDom()

出力ドキュメント・ノードをXSLTVMに設定します。

XmlXvmSetOutputEncoding()

XSLTVM出力のエンコーディングを設定します。

XmlXvmSetOutputSax()

出力SAXをXSLTVMに設定します。

XmlXvmSetOutputStream()

ユーザー定義のストリームをXSLTVM出力に設定します。

XmlXvmSetTextParam()

スタイルシートの最上位テキストのパラメータを設定します。

XmlXvmTransformBuffer()

メモリー内のXML文書に対してコンパイルしたXSLTスタイルシートを実行します。

XmlXvmTransformDom()

DOMとしてXML文書に対してコンパイルしたXSLTスタイルシートを実行します。

XmlXvmTransformFile()

ファイル内のXML文書に対してコンパイルしたXSLTスタイルシートを実行します。

XmlXvmTransformURI()

URIのXML文書に対してコンパイルしたXSLTスタイルシートを実行します。

XMLXVM_DEBUG_F()

XSLTVMのデバッグ・コールバック関数です。

構文

#define XMLXVM_DEBUG_F(func, line, file, obj, n)
void func(
ub2 line,
oratext *file,
xvmobj *obj,
ub4 n)

パラメータ

IN/OUT

説明

line

IN

ソース・スタイルシートの行番号

file

IN

スタイルシートのファイル名

obj

IN

現行のVMオブジェクト

n

IN

現行ノードのインデックス

関連項目:
XmlXvmSetDebugFunc()

XmlXvmCreate()

XSLT仮想マシンを作成します。このAPIを使用して、次の中から0(ゼロ)以上のXSLTVMプロパティを設定できます。

- "VMStack", size: 主要なVMスタックのサイズ[KB]を設定します。デフォルトのサイズは4Kです。

- "NodeStack", size: ノードスタックのサイズ[KB]を設定します。デフォルトのサイズは16Kです。

- "StringStack", size: 文字列スタックのサイズ[KB]を設定します。デフォルトのサイズは64Kです。

スタック・サイズが指定されていない場合は、デフォルトのサイズが使用されます。XSLTVMがスタックのオーバーフローのメッセージで終了する場合、またはより小さいメモリー・フットプリントが必要な場合、明示的スタック・サイズの設定が必要となります。

構文

xmlxvm *XmlXvmCreate(
xmlctx *xctx,
list);

パラメータ

IN/OUT

説明

xctx

IN

XMLコンテキスト

list

IN

設定するプロパティのNULLで終了するリスト(空でも可)

戻り値

(xmlxvm *) XSLT仮想マシン・オブジェクト。エラー発生時にはNULLが戻されます。

関連項目:
XmlXvmDestroy()

XmlXvmDestroy()

XSLT仮想マシンを破棄します。

構文

void XmlXvmDestroy(
xmlxvm *vm);

パラメータ

IN/OUT

説明

vm

IN

VMオブジェクト

関連項目:
XmlXvmCreate()

XmlXvmEvaluateXPath()

コンパイル済のXPath式を評価します。

構文

xvmobj *XmlXvmEvaluateXPath(
xmlxvm *vm,
ub2 *bytecode,
ub4 ctxpos,
ub4 ctxsize,
xmlnode *ctxnode);

パラメータ

IN/OUT

説明

vm

IN

XSLTVMオブジェクト

bytecode

IN

XPath式のバイトコード

ctxpos

IN

現在のコンテキストの位置

ctxsize

IN

現在のコンテキストのサイズ

ctxnode

IN

現在のコンテキスト・ノード

戻り値

(xvmobj *) XPathオブジェクト。

XmlXvmGetObjectBoolean()

XPathオブジェクトのブール値を取得します。

構文

boolean XmlXvmGetObjectBoolean(
xvmobj *obj);

パラメータ

IN/OUT

説明

obj

IN

オブジェクト

戻り値

(boolean) XPathオブジェクトの値。

関連項目:
XmlXvmGetObjectType()、XmlXvmGetObjectNSetNum()、XmlXvmGetObjectNSetNode()、XmlXvmGetObjectNumber()、XmlXvmGetObjectBoolean()

XmlXvmGetObjectNSetNode()

ノードセット型XPathオブジェクトからノードを取得します。

構文

xmlnode *XmlXvmGetObjectNSetNode(
xvmobj *obj,
ub4 i);

パラメータ

IN/OUT

説明

obj

IN

オブジェクト

i

IN

ノードセットのノードのインデックス

戻り値

(xmlnode *) オブジェクト型または値。

関連項目:
XmlXvmGetObjectType()、XmlXvmGetObjectNSetNum()、XmlXvmGetObjectString()、XmlXvmGetObjectNumber()、XmlXvmGetObjectBoolean()

XmlXvmGetObjectNSetNum()

ノードセット型XPathオブジェクトからノードの数を取得します。

構文

ub4 XmlXvmGetObjectNSetNum(
xvmobj *obj);

パラメータ

IN/OUT

説明

obj

IN

オブジェクト

戻り値

(ub4) ノードセット内のノードの数。

関連項目:
XmlXvmGetObjectType()、XmlXvmGetObjectNSetNode()、XmlXvmGetObjectString()、XmlXvmGetObjectNumber()、XmlXvmGetObjectBoolean()

XmlXvmGetObjectNumber()

XPathオブジェクトから数値を取得します。

構文

double XmlXvmGetObjectNumber(
xvmobj *obj);

パラメータ

IN/OUT

説明

obj

IN

オブジェクト

戻り値

(double) 数値。

関連項目:
XmlXvmGetObjectType()、XmlXvmGetObjectNSetNum()、XmlXvmGetObjectNSetNode()、XmlXvmGetObjectString()、XmlXvmGetObjectBoolean()

XmlXvmGetObjectString()

XPathオブジェクトから文字列を取得します。

構文

oratext *XmlXvmGetObjectString(
xvmobj *obj);

パラメータ

IN/OUT

説明

obj

IN

オブジェクト

戻り値

(oratext *) 文字列。

関連項目:
XmlXvmGetObjectType()、XmlXvmGetObjectNSetNum()、XmlXvmGetObjectNSetNode()、XmlXvmGetObjectNumber()、XmlXvmGetObjectBoolean()

XmlXvmGetObjectType()

XPathオブジェクトの型を取得します。

構文

xmlxvmobjtype XmlXvmGetObjectType(
xvmobj *obj);

パラメータ

IN/OUT

説明

obj

IN

オブジェクト

戻り値

(xmlxvmobjtype) オブジェクトの型コード。

関連項目:
XmlXvmGetObjectNSetNum()、XmlXvmGetObjectNSetNode()、XmlXvmGetObjectString()、XmlXvmGetObjectNumber()、XmlXvmGetObjectBoolean()

XmlXvmGetOutputDom()

結果のDOMツリーのルート・ノードを戻します(存在する場合)。VMがDOMツリーを出力するための設定を行う変換の前に、XmlXvmSetOutputDomを使用する必要があります(デフォルトのVM出力はストリームです)。

構文

xmlfragnode *XmlXvmGetOutputDom(
xmlxvm *vm);

パラメータ

IN/OUT

説明

vm

IN

VMオブジェクト

戻り値

(xmlfragnode *) 出力DOM。SAXまたはストリーム出力の場合はNULLが戻されます。

関連項目:
XmlXvmSetOutputDom()

XmlXvmResetParams()

スタイルシートの最上位のパラメータをデフォルト値にリセットします。

構文

void XmlXvmResetParams(
xmlxvm *vm);

パラメータ

IN/OUT

説明

vm

IN

VMオブジェクト

XmlXvmSetBaseURI()

XSLTVMのベースURIを設定します。baseuriは、documentまたはXmlXvmTransformFileを使用してXML文書を変換する際に文書をロードするパスを、VMが構成するために使用されます。

構文

xmlerr XmlXvmSetBaseURI(
xmlxvm *vm,
oratext *baseuri);

パラメータ

IN/OUT

説明

vm

IN

VMオブジェクト

baseuri

IN

ドキュメントの読込みおよび書込みに使用するVMのベースURI

戻り値

(xmlerr) エラー・コード。

XmlXvmSetBytecodeBuffer()

コンパイルしたバイトコードをバッファから設定します。事前に設定されているバイトコードは置換されます。スタイルシートのバイトコードが設定されていない場合、XML変換は実行できません。VMはバイトコードを内部バッファにコピーしないため、VMが使用を完了するまでバイトコードを解放しないでください。

構文

xmlerr XmlXvmSetBytecodeBuffer(
xmlxvm *vm,
ub2 *buffer,
size_t buflen);

パラメータ

IN/OUT

説明

vm

IN

XSLT VMのコンテキスト

buffer

IN

ユーザーのバッファ

buflen

IN

バイト単位で示したバッファ・サイズ

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlXvmSetBytecodeFile()、XmlXvmSetBytecodeURI()

XmlXvmSetBytecodeFile()

コンパイルしたバイトコードをファイルから設定します。事前に設定されているバイトコードは置換されます。スタイルシートのバイトコードが設定されていない場合、XML変換は実行できません。

構文

xmlerr XmlXvmSetBytecodeFile(
xmlxvm *vm,
oratext *path);

パラメータ

IN/OUT

説明

vm

IN

XSLT VMのコンテキスト

path

IN

バイトコード・ファイルのパス

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlXvmSetBytecodeURI()、XmlXvmSetBytecodeBuffer()

XmlXvmSetBytecodeURI()

コンパイルしたバイトコードをURIから設定します。事前に設定されているバイトコードは置換されます。スタイルシートのバイトコードが設定されていない場合、XML変換は実行できません。

構文

xmlerr XmlXvmSetBytecodeURI(
xmlxvm *vm,
oratext *uri);

パラメータ

IN/OUT

説明

vm

IN

XSLT VMのコンテキスト

uri

IN

バイトコード・ファイルのパス

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:
XmlXvmSetBytecodeFile()、XmlXvmSetBytecodeBuffer()

XmlXvmSetDebugFunc()

このユーザー・コールバック関数は、実行がXSLTスタイルシートの新しい行に到達するたびに、VMによって起動されます。VMは、ユーザーに、スタイルシートのファイル名、行番号、現在のコンテキスト・ノードセットおよびノードセット内の現在のノード・インデックスを渡します。重要 - スタイルシートは、XMLXVM_DEBUGフラグを使用してコンパイルする必要があります。

構文

#define XMLXVM_DEBUG_FUNC(func)
void func (ub2 line, oratext *filename, xvmobj *obj, ub4 n)
xmlerr XmlXvmSetDebugFunc(
xmlxvm *vm,
XMLXVM_DEBUG_FUNC(debugcallback));

パラメータ

IN/OUT

説明

vm

IN

XSLT VMのコンテキスト

func

IN

コールバック関数

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

XmlXvmSetOutputDom()

出力DOMをXSLTVMに設定します。xmldocnode==NULLの場合、結果のDOMツリーはVMオブジェクトに属し、新しく変換が実行されるか、またはVMオブジェクトが削除されると、DOMツリーは削除されます。結果のDOMツリーを長期間使用する必要がある場合、xmldocnodeを作成し、VMオブジェクトで設定する必要があります。

構文

xmlerr XmlXvmSetOutputDom(
xmlxvm *vm,
xmldocnode *doc);

パラメータ

IN/OUT

説明

vm

IN

VMオブジェクト

doc

IN

空のドキュメント

戻り値

(xmlerr) エラー・コード。

XmlXvmSetOutputEncoding()

XSLTVMストリーム出力のエンコーディングを設定します。入力(データ)のエンコーディングが、このAPIによって設定されたエンコーディングと異なる場合、エンコーディングの変換が実行されます。このAPIは、XSLTスタイルシートに設定されているエンコーディング(設定されている場合)をオーバーライドします。

構文

xmlerr XmlXvmSetOutputEncoding(
xmlxvm *vm,
oratext *encoding);

パラメータ

IN/OUT

説明

vm

IN

VMオブジェクト

encoding

IN

出力のエンコーディング

戻り値

(xmlerr) エラー・コード。

XmlXvmSetOutputSax()

出力SAXをXSLTVMに設定します。SAXコールバック・インタフェース・オブジェクトが提供されている場合、VMはユーザーが指定したコールバック関数を使用して、結果のドキュメントをSAXイベントの形式で出力します。

構文

xmlerr XmlXvmSetOutputSax(
xmlxvm *vm,
xmlsaxcb *saxcb,
void *saxctx);

パラメータ

IN/OUT

説明

vm

IN

VMオブジェクト

saxcb

IN

SAXコールバック・オブジェクト

saxctx

IN

SAXコンテキスト

戻り値

(xmlerr) エラー・コード。

XmlXvmSetOutputStream()

ユーザー定義のストリームをXSLTVM出力に設定します。デフォルトのXSLTVM出力はストリームです。このAPIは、書込み時に、ユーザーの指定したAPIによってデフォルトのストリームをオーバーライドします。

構文

xmlerr XmlXvmSetOutputStream(
xmlxvm *vm,
xmlostream *ostream);

パラメータ

IN/OUT

説明

vm

IN

VMオブジェクト

ostream

IN

ストリーム・オブジェクト

戻り値

(xmlerr) エラー・コード。

XmlXvmSetTextParam()

スタイルシートの最上位テキストのパラメータを設定します。XSLTスタイルシートで設定されているパラメータ値は上書きされます。変換のたびに最上位のパラメータはスタイルシートの値にリセットされるため、このAPIを再度コールする必要があります。

構文

xmlerr XmlXvmSetTextParam(
xmlxvm *vm,
oratext *name,
oratext *value);

パラメータ

IN/OUT

説明

vm

IN

VMオブジェクト

name

IN

最上位のパラメータの名前

value

IN

最上位のパラメータの値

戻り値

(xmlerr) エラー・コード。成功の場合はXMLERR_SUCC [0]。

XmlXvmTransformBuffer()

メモリー内のXML文書に対してコンパイルしたXSLTスタイルシートを実行します。このコールの前に、XmlXvmSetBytecodeXXXを使用して、コンパイル済のXSLTスタイルシート(バイトコード)を設定する必要があります。

構文

xmlerr XmlXvmTransformBuffer(
xmlxvm *vm,
oratext *buffer,
ub4 length,
oratext *baseURI);

パラメータ

IN/OUT

説明

vm

IN

VMオブジェクト

buffer

IN

XML文書が含まれている、NULLで終了するバッファ

length

IN

XML文書の長さ

baseURI

IN

XML文書のベースURI

戻り値

(xmlerr) エラー・コード。

関連項目:
XmlXvmTransformFile()、XmlXvmTransformURI()、XmlXvmTransformDom()

XmlXvmTransformDom()

DOMとしてXML文書に対してコンパイルしたXSLTスタイルシートを実行します。このコールの前に、XmlXvmSetBytecodeXXXを使用して、コンパイル済のXSLTスタイルシート(バイトコード)を設定する必要があります。

構文

xmlerr XmlXvmTransformDom(
xmlxvm *vm,
xmldocnode *root);

パラメータ

IN/OUT

説明

vm

IN

VMオブジェクト

root

IN

XML文書のDOMのルート要素

戻り値

(xmlerr) エラー・コード。

関連項目:
XmlXvmTransformFile()、XmlXvmTransformURI()、XmlXvmTransformBuffer()

XmlXvmTransformFile()

ファイル内のXML文書に対してコンパイルしたXSLTスタイルシートを実行します。このコールの前に、XmlXvmSetBytecodeXXXを使用して、コンパイル済のXSLTスタイルシート(バイトコード)を設定する必要があります。

構文

xmlerr XmlXvmTransformFile(
xmlxvm *vm,
oratext *path,
oratext *baseURI);

パラメータ

IN/OUT

説明

vm

IN

VMオブジェクト

path

IN

変換するXML文書のパス

baseURI

IN

XML文書のベースURI

戻り値

(xmlerr) エラー・コード。

関連項目:
XmlXvmTransformURI()、XmlXvmTransformBuffer()、XmlXvmTransformDom()

XmlXvmTransformURI()

URIのXML文書に対してコンパイルしたXSLTスタイルシートを実行します。このコールの前に、XmlXvmSetBytecodeXXXを使用して、コンパイル済のXSLTスタイルシート(バイトコード)を設定する必要があります。

構文

xmlerr XmlXvmTransformURI(
xmlxvm *vm,
oratext *uri);

パラメータ

IN/OUT

説明

vm

IN

VMオブジェクト

uri

IN

変換するXML文書のURI

戻り値

(xmlerr) エラー・コード。

関連項目:
XmlXvmTransformFile()、XmlXvmTransformBuffer()、XmlXvmTransformDom()

付録 Oracle Database10gリリース1の前に使用されていたAPIのマッピング

この章では、Oracle9iリリースで使用可能なXML C APIを、このリリースのOracle Databaseで使用可能な統一XML C APIにマッピングする方法について説明します。

この章の内容は次のとおりです。

- Cパッケージの変更点

- 初期化と解析順序の変更点

- oraxmlパッケージとxmlパッケージ間のデータ型のマッピング

- oraxmlパッケージとxmlパッケージのメソッドのマッピング

関連項目:
『Oracle XML Developer's Kitプログラマーズ・ガイド』のフォーマット・モデルに関する項

Cパッケージの変更点

既存のC APIはoraxmlパッケージで使用できました。これには次のような特性がありました。

- 仕様はXMLコンテキスト(xmlctx)とXML文書間の1対1のマッピングに制限されていました。DOMから一度にアクセスできるのは常に1つのドキュメントのみでした。ただし、複数のドキュメントのデータへは、同時にアクセスできました。

- APIは常に一貫性があるとはかぎらず、xmlctxの宣言に準拠しない場合もありました。

これに対して、新しい統一C APIではこれらの問題が解決されています。

- xmlctxは、複数の独立したドキュメント間で共有されます。

- すべてのAPIはxmlctxの宣言に準拠しています。

- XmlDestroy()コールにより明示的に破棄されるまで、各ドキュメントにはDOMから同時にアクセスできます。

初期化と解析順序の変更点

統一C APIではドキュメントの初期化と解析が変更されました。

例A-1 統一前のC APIを使用した初期化と解析の順序: 一度に1ドキュメント

次の擬似コードは、古いC APIを使用してドキュメントを一度に1つずつ初期化し、解析する方法を示しています。例A-2の例と比較してください。

#include <oraxml.h>
uword err;
xmlctx *ctx = xmlinit(&err, options);
for (;;)
{
err = xmlparse(ctx, URI, options);
...
/* DOM operations */
...
/* recycle memory from document */
xmlclean(ctx);
}
xmlterm(ctx);

例A-2 統一C APIを使用した初期化と解析の順序: 一度に1ドキュメント

次の擬似コードは、新しいC APIを使用してドキュメントを一度に1つずつ初期化し、解析する方法を示しています。例A-1の例と比較してください。

#include <xml.h>
xmlerr err;
xmldocnode *doc;
xmlctx *xctx = XmlCreate(&err, options, NULL);
for (;;)
{
doc = XmlLoadDom(xctx, &err, "URI", URI, NULL);
...
/* DOM operations */
...
XmlFreeDocument(xctx, doc);
}
XmlDestroy(xctx);

例A-3 統一前のC APIを使用した初期化と解析の順序: 複数ドキュメントおよび同時DOMアクセス

次の擬似コードは、古いC APIを使用して同時DOMアクセスにより複数のドキュメントを初期化し、解析する方法を示しています。例A-4の例と比較してください。

xmlctx *ctx1 = xmlinitenc(&err, options);
xmlctx *ctx2 = xmlinitenc(&err, options);
err = xmlparse(ctx1, URI_1, options);
err = xmlparse(ctx2, URI_2, options);
...
/* DOM operations for both documents */
...
xmlterm(ctx1);
xmlterm(ctx2);

例A-4 統一C APIを使用した初期化と解析の順序: 複数ドキュメントおよび同時DOMアクセス

次の擬似コードは、新しいC APIを使用して同時DOMアクセスにより複数のドキュメントを初期化し、解析する方法を示しています。例A-3の例と比較してください。

xmldocnode *doc1;
xmldocnode *doc2;
xmlctx *xctx = XmlCreate(&err, options, NULL);
doc1 = XmlLoadDom(xctx, &err, "URI", URI_1, NULL);
doc2 = XmlLoadDom(xctx, &err, "URI", URI_2, NULL);
...
/* DOM operations for both documents*/
...
XmlFreeDocument(xctx, doc1);
XmlFreeDocument(xctx, doc2);
...
XmlDestroy(xctx);

oraxmlパッケージとxmlパッケージ間のデータ型のマッピング

表A-1に新しいC APIにおけるデータ型の変更の概略を示します。

表A-1 oraxmlパッケージとxmlパッケージでサポートされるデータ型

oraxmlでサポートされるデータ型

xmlでサポートされるデータ型

uword

xmlerr

xmlacctype

xmlurlacc

xmlattrnode

xmlattrnode

xmlcdatanode

xmlcdatanode

xmlcommentnode

xmlcommentnode

xmlctx

xmlctx

xmldocnode

xmldocnode

xmldomimp

廃止。xmlctxを使用。

xmldtdnode

xmldtdnode

xmlelemnode

xmlelemnode

xmlentnode

xmlentnode

xmlentrefnode

xmlentrefnode

xmlflags

ub4

xmlfragnode

xmlfragnode

xmlihdl

xmlurlhdl

xmlmemcb

個々の関数ポインタを使用

xmlnode

xmlnode

xmlnodes

xmlnodelist, xmlnamedmap

xmlnotenode

xmlnotenode

xmlntype

xmlnodetype

xmlpflags

ub4

xmlpinode

xmlpinode

xmlsaxcb

xmlsaxcb

xmlstream

xmlistream, xmliostream

xmltextnode

xmltextnode

xpctx

xpctx

xpexpr

xpexpr

xpnset

廃止。XmlXPathGetObjectNSetNum()と XmlXPathGetObjectNSetNode()を使用。

xpnsetele

廃止。XmlXPathGetObjectNSetNum()と XmlXPathGetObjectNSetNode()を使用。

xpobj

xpobj

xpobjtyp

xmlxslobjtype

xslctx

xslctx

xsloutputmethod

xmlxsloutputmethod

oraxmlパッケージとxmlパッケージのメソッドのマッピング

表A-2に新しいC APIにおけるメソッドの変更の概略を示します。

表A-2 oraxmlパッケージとxmlパッケージのメソッド

パッケージoraxmlのメソッド

パッケージxmlのメソッド

appendChild()

XmlDomAppendChild()

appendData()

XmlDomAppendData()

cloneNode()

XmlDomCloneNode()

createAttribute()

XmlDomCreateAttr()

createAttributeNS()

XmlDomCreateAttrNS()

createCDATASection()

XmlDomCreateCDATA()

createComment()

XmlDomCreateComment()

createDocument()

XmlCreateDocument()

createDocumentFragment()

XmlDomCreateFragment()

createDocumentNS()

XmlCreateDocument()

createDocumentType()

XmlCreateDTD()

createElement()

XmlDomCreateElem()

createElementNS()

XmlDomCreateElemNS()

createEntityReference()

XmlDomCreateEntityRef()

createProcessingInstruction()

XmlDomCreatePI()

createTextNode()

XmlDomCreateText()

deleteData()

XmlDomDeleteData()

freeElements()

XmlDomFreeNodeList()

getAttribute()

XmlDomGetAttr()

getAttributeIndex()

XmlDomGetAttrs(), XmlDomGetNodeMapItem()

getAttributeNode()

XmlDomGetAttrNode()

getAttributes()

XmlDomGetAttrs()

getAttrLocal()

XmlDomGetAttrLocal(), XmlDomGetAttrLocalLen()

getAttrName()

XmlDomGetAttrName()

getAttrNamespace()

XmlDomGetAttrURI(), XmlDomGetAttrURILen()

getAttrPrefix()

XmlDomGetAttrPrefix()

getAttrQualifiedName()

XmlDomGetAttrName()

getAttrSpecified()

XmlDomGetAttrSpecified()

getAttrValue()

XmlDomGetAttrValue()

getCharData()

XmlDomGetCharData()

getChildNode()

XmlDomGetChildNode()

getChildNodes()

XmlDomGetChildNodes()

getContentModel()

XmlDomGetContentModel()

getDocType()

XmlDomGetDTD()

getDocTypeEntities()

XmlDomGetDTDEntities()

getDocTypeName()

XmlDomGetDTDName()

getDocTypeNotations()

XmlDomGetDTDNotations()

getDocument()

廃止。ドキュメントを取得するには、XmlLoadDomxxx()コールを使用

getDocumentElement()

XmlDomGetDoctElem()

getElementByID()

XmlDomGetElemByID()

getElementsByTagName()

XmlDomGetElemsByTag()

getElementsByTagNameNS()

XmlDomGetElemsByTag()

getEncoding()

XmlDomGetEncoding()

getEntityNotation()

XmlDomGetEntityNotation()

getEntityPubID()

XmlDomGetEntityPubID()

getEntitySysID()

XmlDomGetEntitySysID()

getFirstChild()

XmlDomGetFirstChild()

getImplementation()

廃止。DOMImplementationのかわりに xmlctx を使用

getLastChild()

XmlDomGetLastChild()

getNamedItem()

XmlDomGetNamedItem()

getNextSibling()

XmlDomGetNextSibling()

getNodeLocal()

XmlDomGetNodeLocal(), XmlDomGetNodeLocalLen()

getNodeMapLength()

XmlDomGetNodeMapLength()

getNodeName()

XmlDomGetNodeName(), XmlDomGetNodeNameLen()

getNodeNameSpace()

XmlDomGetNodeURI(), XmlDomGetNodeURILen()

getNodePrefix()

XmlDomGetNodePrefix()

getNodeQualifiedName()

XmlDomGetNodedName(), XmlDomGetNodedNameLen()

getNodeType()

XmlDomGetNodeType()

getNodeValue()

XmlDomGetNodeValue(), XmlDomGetNodeValueLen()

getNotationPubID()

XmlDomGetNotationPubID()

getNotationSysID()

XmlDomGetNotationSysID()

getOwnerDocument()

XmlDomGetOwnerDocument()

getParentNode()

XmlDomGetParentNode()

getPIData()

XmlDomGetPIData()

getPITarget()

XmlDomGetPITarget()

getPreviousSibling()

XmlDomGetPrevSibling()

getTagName()

XmlDomGetTagName()

hasAttributes()

XmlDomHasAttrs()

hasChildNodes()

XmlDomHasChildNodes()

hasFeature()

XmlHasFeature()

importNode()

XmlDomImportNode()

insertBefore()

XmlDomInsertBefore()

insertData()

XmlDomInsertData()

isSingleChar()

XmlIsSimple()

isStandalone()

XmlDomGetDecl()

isUnicode()

XmlDomIsUnicode()

nodeValid()

XmlDomValidate()

normalize()

XmlDomNormalize()

numAttributes()

XmlDomNumAttrs()

numChildNodes()

XmlDomNumChildNodes()

prefixToURI()

XmlDomPrefixToURI()

printBuffer()

XmlSaveDomBuffer()

printBufferEnc()

XmlSaveDomBuffer()

printCallback()

XmlSaveDomStream()

printCallbackEnc()

XmlSaveDomStream()

printSize()

XmlSaveDomSize()

printSizeEnc()

XmlSaveDomSize()

printStream()

XmlSaveDomStdio()

printStreamEnc()

XmlSaveDomStdio()

removeAttribute()

XmlDomRemoveAttr()

removeAttributeNode()

XmlDomRemoveAttrNode()

removeChild()

XmlDomRemoveChild()

removeNamedItem()

XmlDomRemoveNamedItem()

replaceChild()

XmlDomReplaceChild()

replaceData()

XmlDomReplaceData()

saveString2()

XmlDomSaveString2()

saveString()

XmlDomSaveString()

setAttribute()

XmlDomSetAttr()

setAttributeNode()

XmlDomSetAttrNode()

setAttrValue()

XmlDomSetAttrValue()

setCharData()

XmlDomSetCharData()

setNamedItem()

XmlDomSetNamedItem()

setNodeValue()

XmlDomSetNodeValue(), XmlDomSetNodeValueLen()

setPIData()

XmlDomSetPIData()

splitText()

XmlDomSplitText()

substringData()

XmlDomSubstringData()

xmlaccess()

XmlAccess()

xmlinit()

XmlCreate()

xmlinitenc()

XmlCreate()

xmlparse()

XmlLoadDomURI()

xmlparsebuf()

XmlLoadDomBuffer()

xmlparsedtd()

廃止。かわりに、XmlLoadXXX()コールでXML_LOAD_FLAG_DTD_ONLYフラグを使用

xmlparsefile()

XmlLoadDomFile()

xmlparsestream()

XmlLoadDomStream()

xmlterm()

XmlDestroy()

xpevalxpathexpr()

XmlXPathEval()

xpfreexpathctx()

XmlXPathDeleteCtx()

xpgetbooleanval()

XmlXPathGetObjectBoolean()

xpgetfirstnsetelem()

XmlXPathGetObjectNSetNum()

xpgetnextnsetelem()

XmlXPathGetObjectNSetNum()

xpgetnsetelemnode()

XmlXPathGetObjectNSetNum()

xpgetnsetval()

XmlXPathGetObjectNSetNum()

xpgetnumval()

XmlXPathGetObjectNumber()

xpgetrtfragval()

XmlXPathGetObjectFragment()

xpgetstrval()

XmlXPathGetObjectString()

xpgetxpobjtyp()

XmlXPathGetObjectType()

xpmakexpathctx()

XmlXPathCreateCtx()

xpparsexpathexpr()

XmlXPathParse()

xslgetbaseuri()

XmlXslGetBaseURI()

xslgetoutputdomctx()

XmlXslGetOutputDom()

xslgetoutputsax()

不要

xslgetoutputstream()

不要

xslgetresultdocfrag()

XmlXslGetOutputFragment()

xslgettextparam()

XmlXslGetTextParam()

xslgetxslctx()

不要

xslinit()

XmlXslCreateCtx()

xslprocess()

XmlXslProcess()

xslprocessex()

XmlXslProcess()

xslprocessxml()

XmlXslProcess()

xslprocessxmldocfrag()

XmlXslProcess()

xslresetallparams()

XmlXslResetAllParams()

xslsetoutputdomctx()

XmlXslSetOutputDom()

xslsetoutputencoding()

XmlXslSetOutputEncoding()

xslsetoutputmethod()

XmlXslSetOutputMethod()

xslsetoutputsax()

XmlXslSetOutputSax()

xslsetoutputsaxctx()

XmlXslSetOutputSax()

xslsetoutputstream()

XmlXslSetOutputStream()

xslsettextparam()

XmlXslSetTextParam()

xslterm()

XmlXslDeleteCtx()

索引
C  D  E  M  P  R  S  T  X

C

Cパッケージのメソッド

コールバック・パッケージのXML_ACCESS_CLOSE_F, 2

コールバック・パッケージのXML_ACCESS_OPEN_F, 2

コールバック・パッケージのXML_ACCESS_READ_F, 2

コールバック・パッケージのXML_ALLOC_F, 2

コールバック・パッケージのXML_ERRMSG_F, 2

コールバック・パッケージのXML_FREE_F, 2

コールバック・パッケージのXML_STREAM_CLOSE_F, 2

コールバック・パッケージのXML_STREAM_OPEN_F, 2

コールバック・パッケージのXML_STREAM_READ_F, 2

コールバック・パッケージのXML_STREAM_WRITE_F, 2

XMLパッケージのXmlAccess, 11

XMLパッケージのXmlCreate, 11

XMLパッケージのXmlCreateDocument, 11

XMLパッケージのXmlCreateDTD, 11

XMLパッケージのXmlDestroy, 11

XMLパッケージのXmlDiff, 11

XmlDiffパッケージのXmlDiff, 12

横断パッケージのXMLDOM_ACCEPT_NODE_F, 10

DOMパッケージのXmlDomAppendChild, 3

DOMパッケージのXmlDomAppendData, 3

DOMパッケージのXmlDomCleanNode, 3

DOMパッケージのXmlDomCloneNode, 3

DOMパッケージのXmlDomCreateAttr, 3

DOMパッケージのXmlDomCreateAttrNS, 3

DOMパッケージのXmlDomCreateCDATA, 3

DOMパッケージのXmlDomCreateComment, 3

DOMパッケージのXmlDomCreateElem, 3

DOMパッケージのXmlDomCreateElemNS, 3

DOMパッケージのXmlDomCreateEntityRef, 3

DOMパッケージのXmlDomCreateFragment, 3

横断パッケージのXmlDomCreateNodeIter, 10

DOMパッケージのXmlDomCreatePI, 3

範囲パッケージのXmlDomCreateRange, 6

DOMパッケージのXmlDomCreateText, 3

横断パッケージのXmlDomCreateTreeWalker, 10

DOMパッケージのXmlDomDeleteData, 3

DOMパッケージのXmlDomFreeNode, 3

DOMパッケージのXmlDomFreeNodeList, 3

DOMパッケージのXmlDomFreeString, 3

DOMパッケージのXmlDomGetAttr, 3

DOMパッケージのXmlDomGetAttrLocal, 3

DOMパッケージのXmlDomGetAttrLocalLen, 3

DOMパッケージのXmlDomGetAttrName, 3

DOMパッケージのXmlDomGetAttrNameLen, 3

DOMパッケージのXmlDomGetAttrNode, 3

DOMパッケージのXmlDomGetAttrNodeNS, 3

DOMパッケージのXmlDomGetAttrNS, 3

DOMパッケージのXmlDomGetAttrPrefix, 3

DOMパッケージのXmlDomGetAttrs, 3

DOMパッケージのXmlDomGetAttrSpecified, 3

DOMパッケージのXmlDomGetAttrURI, 3

DOMパッケージのXmlDomGetAttrURILen, 3

DOMパッケージのXmlDomGetAttrValue, 3

DOMパッケージのXmlDomGetAttrValueLen, 3

DOMパッケージのXmlDomGetAttrValueStream, 3

DOMパッケージのXmlDomGetBaseURI, 3

DOMパッケージのXmlDomGetCharData, 3

DOMパッケージのXmlDomGetCharDataLength, 3

DOMパッケージのXmlDomGetChildNodes, 3

DOMパッケージのXmlDomGetChildrenByTag, 3

DOMパッケージのXmlDomGetChildrenByTagNS, 3

DOMパッケージのXmlDomGetDecl, 3

DOMパッケージのXmlDomGetDefaultNS, 3

DOMパッケージのXmlDomGetDocElem, 3

DOMパッケージのXmlDomGetDocElemByID, 3

DOMパッケージのXmlDomGetDocElemsByTag, 3

DOMパッケージのXmlDomGetDocElemsByTagNS, 3

DOMパッケージのXmlDomGetDTD, 3

DOMパッケージのXmlDomGetDTDEntities, 3

DOMパッケージのXmlDomGetDTDInternalSubset, 3

DOMパッケージのXmlDomGetDTDName, 3

DOMパッケージのXmlDomGetDTDNotations, 3

DOMパッケージのXmlDomGetDTDPubID, 3

DOMパッケージのXmlDomGetDTDSysID, 3

DOMパッケージのXmlDomGetElemsByTag, 3

DOMパッケージのXmlDomGetElemsByTagNS, 3

DOMパッケージのXmlDomGetEntityNotation, 3

DOMパッケージのXmlDomGetEntityPubID, 3

DOMパッケージのXmlDomGetEntitySysID, 3

DOMパッケージのXmlDomGetEntityType, 3

DOMパッケージのXmlDomGetFirstChild, 3

DOMパッケージのXmlDomGetFirstPfnsPair, 3

DOMパッケージのXmlDomGetLastChild, 3

DOMパッケージのXmlDomGetLastError, 3

DOMパッケージのXmlDomGetNamedItem, 3

DOMパッケージのXmlDomGetNamedItemNS, 3

DOMパッケージのXmlDomGetNextPfnsPair, 3

DOMパッケージのXmlDomGetNextSibling, 3

DOMパッケージのXmlDomGetNodeListItem, 3

DOMパッケージのXmlDomGetNodeListLength, 3

DOMパッケージのXmlDomGetNodeLocal, 3

DOMパッケージのXmlDomGetNodeLocalLen, 3

DOMパッケージのXmlDomGetNodeMapItem, 3

DOMパッケージのXmlDomGetNodeMapLength, 3

DOMパッケージのXmlDomGetNodeName, 3

DOMパッケージのXmlDomGetNodeNameLen, 3

DOMパッケージのXmlDomGetNodePrefix, 3

DOMパッケージのXmlDomGetNodeType, 3

DOMパッケージのXmlDomGetNodeURI, 3

DOMパッケージのXmlDomGetNodeURILen, 3

DOMパッケージのXmlDomGetNodeValue, 3

DOMパッケージのXmlDomGetNodeValueLen, 3

DOMパッケージのXmlDomGetNodeValueStream, 3

DOMパッケージのXmlDomGetNotationPubID, 3

DOMパッケージのXmlDomGetNotationSysID, 3

DOMパッケージのXmlDomGetOwnerDocument, 3

DOMパッケージのXmlDomGetOwnerElem, 3

DOMパッケージのXmlDomGetParentNode, 3

DOMパッケージのXmlDomGetPIData, 3

DOMパッケージのXmlDomGetPITarget, 3

DOMパッケージのXmlDomGetPrevSibling, 3

DOMパッケージのXmlDomGetPullNodeAsBinaryStream, 3

DOMパッケージのXmlDomGetPullNodeAsCharacterStream, 3

DOMパッケージのXmlDomGetPushNodeAsBinaryStream, 3

DOMパッケージのXmlDomGetPushNodeAsCharacterStream, 3

DOMパッケージのXmlDomGetSchema, 3

DOMパッケージのXmlDomGetSourceEntity, 3

DOMパッケージのXmlDomGetSourceLine, 3

DOMパッケージのXmlDomGetSourceLocation, 3

DOMパッケージのXmlDomGetTag, 3

DOMパッケージのXmlDomHasAttr, 3

DOMパッケージのXmlDomHasAttrNS, 3

DOMパッケージのXmlDomHasAttrs, 3

DOMパッケージのXmlDomHasChildNodes, 3

DOMパッケージのXmlDomImportNode, 3

DOMパッケージのXmlDomInsertBefore, 3

DOMパッケージのXmlDomInsertData, 3

DOMパッケージのXmlDomIsSchemaBased, 3

横断パッケージのXmlDomIterDetach, 10

横断パッケージのXmlDomIterNextNode, 10

横断パッケージのXmlDomIterPrevNode, 10

DOMパッケージのXmlDomNormalize, 3

DOMパッケージのXmlDomNumAttrs, 3

DOMパッケージのXmlDomNumChildNodes, 3

DOMパッケージのXmlDomPrefixToURI, 3

範囲パッケージのXmlDomRangeClone, 6

範囲パッケージのXmlDomRangeCloneContents, 6

範囲パッケージのXmlDomRangeCollapse, 6

範囲パッケージのXmlDomRangeCompareBoundaryPoints, 6

範囲パッケージのXmlDomRangeDeleteContents, 6

範囲パッケージのXmlDomRangeDetach, 6

範囲パッケージのXmlDomRangeExtractContents, 6

範囲パッケージのXmlDomRangeGetCollapsed, 6

範囲パッケージのXmlDomRangeGetCommonAncestor, 6

範囲パッケージのXmlDomRangeGetDetached, 6

範囲パッケージのXmlDomRangeGetEndContainer, 6

範囲パッケージのXmlDomRangeGetEndOffset, 6

範囲パッケージのXmlDomRangeGetStartContainer, 6

範囲パッケージのXmlDomRangeGetStartOffset, 6

範囲パッケージのXmlDomRangeIsConsistent, 6

範囲パッケージのXmlDomRangeSelectNode, 6

範囲パッケージのXmlDomRangeSelectNodeContents, 6

範囲パッケージのXmlDomRangeSetEnd, 6

範囲パッケージのXmlDomRangeSetEndBefore, 6

範囲パッケージのXmlDomRangeSetStart, 6

範囲パッケージのXmlDomRangeSetStartAfter, 6

範囲パッケージのXmlDomRangeSetStartBefore, 6

DOMパッケージのXmlDomRemoveAttr, 3

DOMパッケージのXmlDomRemoveAttrNode, 3

DOMパッケージのXmlDomRemove, 3

DOMパッケージのXmlDomRemoveChild, 3

DOMパッケージのXmlDomRemoveNamedItem, 3

DOMパッケージのXmlDomRemoveNamedItemNS, 3

DOMパッケージのXmlDomRenameNode, 3

DOMパッケージのXmlDomRenameNodeNS, 3

DOMパッケージのXmlDomReplaceChild, 3

DOMパッケージのXmlDomReplaceData, 3

DOMパッケージのXmlDomSaveString, 3

DOMパッケージのXmlDomSaveString2, 3

DOMパッケージのXmlDomSetAttr, 3

DOMパッケージのXmlDomSetAttrNode, 3

DOMパッケージのXmlDomSetAttrNodeNS, 3

DOMパッケージのXmlDomSetAttrNS, 3

DOMパッケージのXmlDomSetAttrValue, 3

DOMパッケージのXmlDomSetAttrValueStream, 3

DOMパッケージのXmlDomSetBaseURI, 3

DOMパッケージのXmlDomSetCharData, 3

DOMパッケージのXmlDomSetDefaultNS, 3

DOMパッケージのXmlDomSetDocOrder, 3

DOMパッケージのXmlDomSetDTD, 3

DOMパッケージのXmlDomSetLastError, 3

DOMパッケージのXmlDomSetNamedItem, 3

DOMパッケージのXmlDomSetNamedItemNS, 3

DOMパッケージのXmlDomSetNodePrefix, 3

DOMパッケージのXmlDomSetNodeValue, 3

DOMパッケージのXmlDomSetNodeValueLen, 3

DOMパッケージのXmlDomSetNodeValueStream, 3

DOMパッケージのXmlDomSetPIData, 3

DOMパッケージのXmlDomSetPullNodeAsBinaryStream, 3

DOMパッケージのXmlDomSetPullNodeAsCharacterStream, 3

DOMパッケージのXmlDomSetPushNodeAsBinaryStream, 3

DOMパッケージのXmlDomSetPushNodeAsCharacterStream, 3

DOMパッケージのXmlDomSplitText, 3

DOMパッケージのXmlDomSubstringData, 3

DOMパッケージのXmlDomSync, 3

DOMパッケージのXmlDomValidate, 3

横断パッケージのXmlDomWalkerFirstChild, 10

横断パッケージのXmlDomWalkerGetCurrentNode, 10

横断パッケージのXmlDomWalkerGetRoot, 10

横断パッケージのXmlDomWalkerLastChild, 10

横断パッケージのXmlDomWalkerNextNode, 10

横断パッケージのXmlDomWalkerNextSibling, 10

横断パッケージのXmlDomWalkerParentNode, 10

横断パッケージのXmlDomWalkerPrevNode, 10

横断パッケージのXmlDomWalkerPrevSibling, 10

横断パッケージのXmlDomWalkerSetCurrentNode, 10

横断パッケージのXmlDomWalkerSetRoot, 10

イベント・パッケージのXmlEvCleanPPCtx, 4

イベント・パッケージのXmlEvCreatePPCtx, 4

イベント・パッケージのXmlEvCreateSVCtx, 4

イベント・パッケージのXmlEvDestroyPPCtx, 4

イベント・パッケージのXmlEvDestroySVCtx, 4

イベント・パッケージのXmlEvGetAttrCount, 4

イベント・パッケージのXmlEvGetAttrDeclBody, 4

イベント・パッケージのXmlEvGetAttrDeclBody0, 4

イベント・パッケージのXmlEvGetAttrDeclCount, 4

イベント・パッケージのXmlEvGetAttrDeclElName, 4

イベント・パッケージのXmlEvGetAttrDeclElName0, 4

イベント・パッケージのXmlEvGetAttrDeclLocalName, 4

イベント・パッケージのXmlEvGetAttrDeclLocalName0, 4

イベント・パッケージのXmlEvGetAttrDeclName, 4

イベント・パッケージのXmlEvGetAttrDeclName0, 4

イベント・パッケージのXmlEvGetAttrDeclPrefix, 4

イベント・パッケージのXmlEvGetAttrDeclPrefix0, 4

イベント・パッケージのXmlEvGetAttrID, 4

イベント・パッケージのXmlEvGetAttrLocalName, 4

イベント・パッケージのXmlEvGetAttrLocalName0, 4

イベント・パッケージのXmlEvGetAttrName, 4

イベント・パッケージのXmlEvGetAttrName0, 4

イベント・パッケージのXmlEvGetAttrPrefix, 4

イベント・パッケージのXmlEvGetAttrPrefix0, 4

イベント・パッケージのXmlEvGetAttrURI, 4

イベント・パッケージのXmlEvGetAttrURI0, 4

イベント・パッケージのXmlEvGetAttrUriID, 4

イベント・パッケージのXmlEvGetAttrValue, 4

イベント・パッケージのXmlEvGetAttrValue0, 4

イベント・パッケージのXmlEvGetElDeclContent, 4

イベント・パッケージのXmlEvGetElDeclContent0, 4

イベント・パッケージのXmlEvGetEncoding, 4

イベント・パッケージのXmlEvGetError, 4

イベント・パッケージのXmlEvGetLocalName, 4

イベント・パッケージのXmlEvGetLocalName0, 4

イベント・パッケージのXmlEvGetLocation, 4

イベント・パッケージのXmlEvGetName, 4

イベント・パッケージのXmlEvGetName0, 4

イベント・パッケージのXmlEvGetPEisGen, 4

イベント・パッケージのXmlEvGetPERepl, 4

イベント・パッケージのXmlEvGetPERepl0, 4

イベント・パッケージのXmlEvGetPIData, 4

イベント・パッケージのXmlEvGetPIData0, 4

イベント・パッケージのXmlEvGetPITarget, 4

イベント・パッケージのXmlEvGetPITarget0, 4

イベント・パッケージのXmlEvGetPrefix, 4

イベント・パッケージのXmlEvGetPrefix0, 4

イベント・パッケージのXmlEvGetPubId, 4

イベント・パッケージのXmlEvGetPubId0, 4

イベント・パッケージのXmlEvGetSysId, 4

イベント・パッケージのXmlEvGetSysId0, 4

イベント・パッケージのXmlEvGetTagID, 4

イベント・パッケージのXmlEvGetTagUriID, 4

イベント・パッケージのXmlEvGetText, 4

イベント・パッケージのXmlEvGetText0, 4

イベント・パッケージのXmlEvGetUENdata, 4

イベント・パッケージのXmlEvGetUENdata0, 4

イベント・パッケージのXmlEvGetURI, 4

イベント・パッケージのXmlEvGetURI0, 4

イベント・パッケージのXmlEvGetVersion, 4

イベント・パッケージのXmlEvIsEncodingSpecified, 4

イベント・パッケージのXmlEvIsStandalone, 4

イベント・パッケージのXmlEvLoadPPDoc, 4

イベント・パッケージのXmlEvNamespaceAttr, 4

イベント・パッケージのXmlEvNext, 4

イベント・パッケージのXmlEvNextTag, 4

イベント・パッケージのXmlEvSchemaValidate, 4

XMLパッケージのXmlFreeDocument, 11

XMLパッケージのXmlGetEncoding, 11

XMLパッケージのXmlHasFeature, 11

XmlDiffパッケージのXmlHash, 12

XMLパッケージのXmlIsSimple, 11

XMLパッケージのXmlIsUnicode, 11

XMLパッケージのXmlLoadDom, 11

XMLパッケージのXmlLoadSax, 11

XMLパッケージのXmlLoadSaxVA, 11

XmlDiffパッケージのXmlPatch, 12

XMLパッケージのXmlSaveDom, 11

SAXパッケージのXmlSaxAttributeDecl, 7

SAXパッケージのXmlSaxCDATA, 7

SAXパッケージのXmlSaxCharacters, 7

SAXパッケージのXmlSaxComment, 7

SAXパッケージのXmlSaxElementDecl, 7

SAXパッケージのXmlSaxEndDocument, 7

SAXパッケージのXmlSaxEndElement, 7

SAXパッケージのXmlSaxNotationDecl, 7

SAXパッケージのXmlSaxParsedEntityDecl, 7

SAXパッケージのXmlSaxPI, 7

SAXパッケージのXmlSaxStartDocument, 7

SAXパッケージのXmlSaxStartElement, 7

SAXパッケージのXmlSaxStartElementNS, 7

SAXパッケージのXmlSaxUnparsedEntityDecl, 7

SAXパッケージのXmlSaxWhitespace, 7

SAXパッケージのXmlSaxXmlDecl, 7

スキーマ・パッケージのXmlSchemaClean, 8

スキーマ・パッケージのXmlSchemaCreate, 8

スキーマ・パッケージのXmlSchemaDestroy, 8

スキーマ・パッケージのXmlSchemaErrorWhere, 8

スキーマ・パッケージのXmlSchemaLoad, 8

スキーマ・パッケージのXmlSchemaLoadedList, 8

スキーマ・パッケージのXmlSchemaSetErrorHandler, 8

スキーマ・パッケージのXmlSchemaSetValidateOptions, 8

スキーマ・パッケージのXmlSchemaTargetNamespace, 8

スキーマ・パッケージのXmlSchemaUnload, 8

スキーマ・パッケージのXmlSchemaValidate, 8

スキーマ・パッケージのXmlSchemaVersion, 8

SOAPパッケージのXmlSoapAddBodyElement, 9

SOAPパッケージのXmlSoapAddFaultReason, 9

SOAPパッケージのXmlSoapAddFaultSubDetail, 9

SOAPパッケージのXmlSoapAddHeaderElement, 9

SOAPパッケージのXmlSoapCall, 9

SOAPパッケージのXmlSoapCreateConnection, 9

SOAPパッケージのXmlSoapCreateCtx, 9

SOAPパッケージのXmlSoapCreateMsg, 9

SOAPパッケージのXmlSoapDestroyConnection, 9

SOAPパッケージのXmlSoapDestroyCtx, 9

SOAPパッケージのXmlSoapDestroyMsg, 9

SOAPパッケージのXmlSoapError, 9

SOAPパッケージのXmlSoapGetBody, 9

SOAPパッケージのXmlSoapGetBodyElement, 9

SOAPパッケージのXmlSoapGetEnvelope, 9

SOAPパッケージのXmlSoapGetFault, 9

SOAPパッケージのXmlSoapGetHeader, 9

SOAPパッケージのXmlSoapGetHeaderElement, 9

SOAPパッケージのXmlSoapGetMustUnderstand, 9

SOAPパッケージのXmlSoapGetReasonLang, 9

SOAPパッケージのXmlSoapGetReasonNum, 9

SOAPパッケージのXmlSoapGetRelay, 9

SOAPパッケージのXmlSoapGetRole, 9

SOAPパッケージのXmlSoapHasFault, 9

SOAPパッケージのXmlSoapSetFault, 9

SOAPパッケージのXmlSoapSetMustUnderstand, 9

SOAPパッケージのXmlSoapSetRelay, 9

SOAPパッケージのXmlSoapSetRole, 9

XMLパッケージのXmlVersion, 11

XPathパッケージのXmlXPathCreateCtx, 13

XPathパッケージのXmlXPathDestroyCtx, 13

XPathパッケージのXmlXPathEval, 13

XPathパッケージのXmlXPathGetObjectBoolean, 13

XPathパッケージのXmlXPathGetObjectFragment, 13

XPathパッケージのXmlXPathGetObjectNSetNode, 13

XPathパッケージのXmlXPathGetObjectNSetNum, 13

XPathパッケージのXmlXPathGetObjectNumber, 13

XPathパッケージのXmlXPathGetObjectString, 13

XPathパッケージのXmlXPathGetObjectType, 13

XPathパッケージのXmlXPathParse, 13

XPointerパッケージのXmlXPointerEval, 14

XPointerパッケージのXmlXPtrLocGetNode, 14

XPointerパッケージのXmlXPtrLocGetPoint, 14

XPointerパッケージのXmlXPtrLocGetRange, 14

XPointerパッケージのXmlXPtrLocGetType, 14

XPointerパッケージのXmlXPtrLocSetFree, 14

XPointerパッケージのXmlXPtrLocSetGetItem, 14

XPointerパッケージのXmlXPtrLocSetGetLength, 14

XPointerパッケージのXmlXPtrLocToString, 14

XSLTパッケージのXmlXslCreate, 15

XSLTパッケージのXmlXslDestroy, 15

XSLTパッケージのXmlXslGetBaseURI, 15

XSLTパッケージのXmlXslGetOutput, 15

XSLTパッケージのXmlXslGetStylesheetDom, 15

XSLTパッケージのXmlXslGetTextParam, 15

XSLTパッケージのXmlXslProcess, 15

XSLTパッケージのXmlXslResetAllParams, 15

XSLTパッケージのXmlXslSetOutputDom, 15

XSLTパッケージのXmlXslSetOutputEncoding, 15

XSLTパッケージのXmlXslSetOutputMethod, 15

XSLTパッケージのXmlXslSetOutputSax, 15

XSLTパッケージのXmlXslSetOutputStream, 15

XSLTパッケージのXmlXslSetTextParam, 15

XSLTVMパッケージのXMLXVM_DEBUG_F, 16

XSLTVMパッケージのXmlXvmCompileBuffer, 16

XSLTVMパッケージのXmlXvmCompileDom, 16

XSLTVMパッケージのXmlXvmCompileFile, 16

XSLTVMパッケージのXmlXvmCompileURI, 16

XSLTVMパッケージのXmlXvmCompileXPath, 16

XSLTVMパッケージのXmlXvmCreate, 16

XSLTVMパッケージのXmlXvmCreateComp, 16

XSLTVMパッケージのXmlXvmDestroy, 16

XSLTVMパッケージのXmlXvmDestroyComp, 16

XSLTVMパッケージのXmlXvmEvaluateXPath, 16

XSLTVMパッケージのXmlXvmGetBytecodeLength, 16

XSLTVMパッケージのXmlXvmGetObjectBoolean, 16

XSLTVMパッケージのXmlXvmGetObjectNSetNode, 16

XSLTVMパッケージのXmlXvmGetObjectNSetNum, 16

XSLTVMパッケージのXmlXvmGetObjectNumber, 16

XSLTVMパッケージのXmlXvmGetObjectString, 16

XSLTVMパッケージのXmlXvmGetObjectType, 16

XSLTVMパッケージのXmlXvmGetOutputDom, 16

XSLTVMパッケージのXmlXvmResetParams, 16

XSLTVMパッケージのXmlXvmSetBaseURI, 16

XSLTVMパッケージのXmlXvmSetBytecodeBuffer, 16

XSLTVMパッケージのXmlXvmSetBytecodeFile, 16

XSLTVMパッケージのXmlXvmSetBytecodeURI, 16

XSLTVMパッケージのXmlXvmSetDebugFunc, 16

XSLTVMパッケージのXmlXvmSetOutputDom, 16

XSLTVMパッケージのXmlXvmSetOutputEncoding, 16

XSLTVMパッケージのXmlXvmSetOutputSax, 16

XSLTVMパッケージのXmlXvmSetOutputStream, 16

XSLTVMパッケージのXmlXvmSetTextParam, 16

XSLTVMパッケージのXmlXvmTransformBuffer, 16

XSLTVMパッケージのXmlXvmTransformDom, 16

XSLTVMパッケージのXmlXvmTransformFile, 16

XSLTVMパッケージのXmlXvmTransformURI, 16

Cパッケージ

コールバック, 2

DOM, 3

イベント, 4

範囲, 6

SAX, 7

スキーマ, 8

SOAP, 9

横断, 10

XML, 11

XmlDiff, 12

XPath, 13

XPointer, 14

XSLT, 15

XSLTVM, 16

C用のコールバック・パッケージ, 2

D

C用のDOMパッケージ, 3

E

C用のイベント・パッケージ, 4

M

メソッド

C用のコールバック・パッケージのXML_ACCESS_CLOSE_F, 2

C用のコールバック・パッケージのXML_ACCESS_OPEN_F, 2

C用のコールバック・パッケージのXML_ACCESS_READ_F, 2

C用のコールバック・パッケージのXML_ALLOC_F, 2

C用のコールバック・パッケージのXML_ERRMSG_F, 2

C用のコールバック・パッケージのXML_FREE_F, 2

C用のコールバック・パッケージのXML_STREAM_CLOSE_F, 2

C用のコールバック・パッケージのXML_STREAM_OPEN_F, 2

C用のコールバック・パッケージのXML_STREAM_READ_F, 2

C用のコールバック・パッケージのXML_STREAM_WRITE_F, 2

C用のXMLパッケージのXmlAccess, 11

C用のXMLパッケージのXmlCreate, 11

C用のXMLパッケージのXmlCreateDocument, 11

C用のXMLパッケージのXmlCreateDTD, 11

C用のXMLパッケージのXmlDestroy, 11

C用のXMLパッケージのXmlDiff, 11

C用のXmlDiffパッケージのXmlDiff, 12

C用の横断パッケージのXMLDOM_ACCEPT_NODE_F, 10

C用のDOMパッケージのXmlDomAppendChild, 3

C用のDOMパッケージのXmlDomAppendData, 3

C用のDOMパッケージのXmlDomCleanNode, 3

C用のDOMパッケージのXmlDomCloneNode, 3

C用のDOMパッケージのXmlDomCreateAttr, 3

C用のDOMパッケージのXmlDomCreateAttrNS, 3

C用のDOMパッケージのXmlDomCreateCDATA, 3

C用のDOMパッケージのXmlDomCreateComment, 3

C用のDOMパッケージのXmlDomCreateElem, 3

C用のDOMパッケージのXmlDomCreateElemNS, 3

C用のDOMパッケージのXmlDomCreateEntityRef, 3

C用のDOMパッケージのXmlDomCreateFragment, 3

C用の横断パッケージのXmlDomCreateNodeIter, 10

C用のDOMパッケージのXmlDomCreatePI, 3

C用の範囲パッケージのXmlDomCreateRange, 6

C用のDOMパッケージのXmlDomCreateText, 3

C用の横断パッケージのXmlDomCreateTreeWalker, 10

C用のDOMパッケージのXmlDomDeleteData, 3

C用のDOMパッケージのXmlDomFreeNode, 3

C用のDOMパッケージのXmlDomFreeNodeList, 3

C用のDOMパッケージのXmlDomFreeString, 3

C用のDOMパッケージのXmlDomGetAttr, 3

C用のDOMパッケージのXmlDomGetAttrLocal, 3

C用のDOMパッケージのXmlDomGetAttrLocalLen, 3

C用のDOMパッケージのXmlDomGetAttrName, 3

C用のDOMパッケージのXmlDomGetAttrNameLen, 3

C用のDOMパッケージのXmlDomGetAttrNode, 3

C用のDOMパッケージのXmlDomGetAttrNodeNS, 3

C用のDOMパッケージのXmlDomGetAttrNS, 3

C用のDOMパッケージのXmlDomGetAttrPrefix, 3

C用のDOMパッケージのXmlDomGetAttrs, 3

C用のDOMパッケージのXmlDomGetAttrSpecified, 3

C用のDOMパッケージのXmlDomGetAttrURI, 3

C用のDOMパッケージのXmlDomGetAttrURILen, 3

C用のDOMパッケージのXmlDomGetAttrValue, 3

C用のDOMパッケージのXmlDomGetAttrValueLen, 3

C用のDOMパッケージのXmlDomGetAttrValueStream, 3

C用のDOMパッケージのXmlDomGetBaseURI, 3

C用のDOMパッケージのXmlDomGetCharData, 3

C用のDOMパッケージのXmlDomGetCharDataLength, 3

C用のDOMパッケージのXmlDomGetChildNodes, 3

C用のDOMパッケージのXmlDomGetChildrenByTag, 3

C用のDOMパッケージのXmlDomGetChildrenByTagNS, 3

C用のDOMパッケージのXmlDomGetDecl, 3

C用のDOMパッケージのXmlDomGetDefaultNS, 3

C用のDOMパッケージのXmlDomGetDocElem, 3

C用のDOMパッケージのXmlDomGetDocElemByID, 3

C用のDOMパッケージのXmlDomGetDocElemsByTag, 3

C用のDOMパッケージのXmlDomGetDocElemsByTagNS, 3

C用のDOMパッケージのXmlDomGetDTD, 3

C用のDOMパッケージのXmlDomGetDTDEntities, 3

C用のDOMパッケージのXmlDomGetDTDInternalSubset, 3

C用のDOMパッケージのXmlDomGetDTDName, 3

C用のDOMパッケージのXmlDomGetDTDNotations, 3

C用のDOMパッケージのXmlDomGetDTDPubID, 3

C用のDOMパッケージのXmlDomGetDTDSysID, 3

C用のDOMパッケージのXmlDomGetElemsByTag, 3

C用のDOMパッケージのXmlDomGetElemsByTagNS, 3

C用のDOMパッケージのXmlDomGetEntityNotation, 3

C用のDOMパッケージのXmlDomGetEntityPubID, 3

C用のDOMパッケージのXmlDomGetEntitySysID, 3

C用のDOMパッケージのXmlDomGetEntityType, 3

C用のDOMパッケージのXmlDomGetFirstChild, 3

C用のDOMパッケージのXmlDomGetFirstPfnsPair, 3

C用のDOMパッケージのXmlDomGetLastChild, 3

C用のDOMパッケージのXmlDomGetLastError, 3

C用のDOMパッケージのXmlDomGetNamedItem, 3

C用のDOMパッケージのXmlDomGetNamedItemNS, 3

C用のDOMパッケージのXmlDomGetNextPfnsPair, 3

C用のDOMパッケージのXmlDomGetNextSibling, 3

C用のDOMパッケージのXmlDomGetNodeListItem, 3

C用のDOMパッケージのXmlDomGetNodeListLength, 3

C用のDOMパッケージのXmlDomGetNodeLocal, 3

C用のDOMパッケージのXmlDomGetNodeLocalLen, 3

C用のDOMパッケージのXmlDomGetNodeMapItem, 3

C用のDOMパッケージのXmlDomGetNodeMapLength, 3

C用のDOMパッケージのXmlDomGetNodeName, 3

C用のDOMパッケージのXmlDomGetNodeNameLen, 3

C用のDOMパッケージのXmlDomGetNodePrefix, 3

C用のDOMパッケージのXmlDomGetNodeType, 3

C用のDOMパッケージのXmlDomGetNodeURI, 3

C用のDOMパッケージのXmlDomGetNodeURILen, 3

C用のDOMパッケージのXmlDomGetNodeValue, 3

C用のDOMパッケージのXmlDomGetNodeValueLen, 3

C用のDOMパッケージのXmlDomGetNodeValueStream, 3

C用のDOMパッケージのXmlDomGetNotationPubID, 3

C用のDOMパッケージのXmlDomGetNotationSysID, 3

C用のDOMパッケージのXmlDomGetOwnerDocument, 3

C用のDOMパッケージのXmlDomGetOwnerElem, 3

C用のDOMパッケージのXmlDomGetParentNode, 3

C用のDOMパッケージのXmlDomGetPIData, 3

C用のDOMパッケージのXmlDomGetPITarget, 3

C用のDOMパッケージのXmlDomGetPrevSibling, 3

C用のDOMパッケージのXmlDomGetPullNodeAsBinaryStream, 3

C用のDOMパッケージのXmlDomGetPullNodeAsCharacterStream, 3

C用のDOMパッケージのXmlDomGetPushNodeAsBinaryStream, 3

C用のDOMパッケージのXmlDomGetPushNodeAsCharacterStream, 3

C用のDOMパッケージのXmlDomGetSchema, 3

C用のDOMパッケージのXmlDomGetSourceEntity, 3

C用のDOMパッケージのXmlDomGetSourceLine, 3

C用のDOMパッケージのXmlDomGetSourceLocation, 3

C用のDOMパッケージのXmlDomGetTag, 3

C用のDOMパッケージのXmlDomHasAttr, 3

C用のDOMパッケージのXmlDomHasAttrNS, 3

C用のDOMパッケージのXmlDomHasAttrs, 3

C用のDOMパッケージのXmlDomHasChildNodes, 3

C用のDOMパッケージのXmlDomImportNode, 3

C用のDOMパッケージのXmlDomInsertBefore, 3

C用のDOMパッケージのXmlDomInsertData, 3

C用のDOMパッケージのXmlDomIsSchemaBased, 3

C用の横断パッケージのXmlDomIterDetach, 10

C用の横断パッケージのXmlDomIterNextNode, 10

C用の横断パッケージのXmlDomIterPrevNode, 10

C用のDOMパッケージのXmlDomNormalize, 3

C用のDOMパッケージのXmlDomNumAttrs, 3

C用のDOMパッケージのXmlDomNumChildNodes, 3

C用のDOMパッケージのXmlDomPrefixToURI, 3

C用の範囲パッケージのXmlDomRangeClone, 6

C用の範囲パッケージのXmlDomRangeCloneContents, 6

C用の範囲パッケージのXmlDomRangeCollapse, 6

C用の範囲パッケージのXmlDomRangeCompareBoundaryPoints, 6

C用の範囲パッケージのXmlDomRangeDeleteContents, 6

C用の範囲パッケージのXmlDomRangeDetach, 6

C用の範囲パッケージのXmlDomRangeExtractContents, 6

C用の範囲パッケージのXmlDomRangeGetCollapsed, 6

C用の範囲パッケージのXmlDomRangeGetCommonAncestor, 6

C用の範囲パッケージのXmlDomRangeGetDetached, 6

C用の範囲パッケージのXmlDomRangeGetEndContainer, 6

C用の範囲パッケージのXmlDomRangeGetEndOffset, 6

C用の範囲パッケージのXmlDomRangeGetStartContainer, 6

C用の範囲パッケージのXmlDomRangeGetStartOffset, 6

C用の範囲パッケージのXmlDomRangeIsConsistent, 6

C用の範囲パッケージのXmlDomRangeSelectNode, 6

C用の範囲パッケージのXmlDomRangeSelectNodeContents, 6

C用の範囲パッケージのXmlDomRangeSetEnd, 6

C用の範囲パッケージのXmlDomRangeSetEndBefore, 6

C用の範囲パッケージのXmlDomRangeSetStart, 6

C用の範囲パッケージのXmlDomRangeSetStartAfter, 6

C用の範囲パッケージのXmlDomRangeSetStartBefore, 6

C用のDOMパッケージのXmlDomRemoveAttr, 3

C用のDOMパッケージのXmlDomRemoveAttrNode, 3

C用のDOMパッケージのXmlDomRemoveAttrNS, 3

C用のDOMパッケージのXmlDomRemoveChild, 3

C用のDOMパッケージのXmlDomRemoveNamedItem, 3

C用のDOMパッケージのXmlDomRemoveNamedItemNS, 3

C用のDOMパッケージのXmlDomRenameNode, 3

C用のDOMパッケージのXmlDomRenameNodeNS, 3

C用のDOMパッケージのXmlDomReplaceChild, 3

C用のDOMパッケージのXmlDomReplaceData, 3

C用のDOMパッケージのXmlDomSaveString, 3

C用のDOMパッケージのXmlDomSaveString2, 3

C用のDOMパッケージのXmlDomSetAttr, 3

C用のDOMパッケージのXmlDomSetAttrNode, 3

C用のDOMパッケージのXmlDomSetAttrNodeNS, 3

C用のDOMパッケージのXmlDomSetAttrNS, 3

C用のDOMパッケージのXmlDomSetAttrValue, 3

C用のDOMパッケージのXmlDomSetAttrValueStream, 3

C用のDOMパッケージのXmlDomSetBaseURI, 3

C用のDOMパッケージのXmlDomSetCharData, 3

C用のDOMパッケージのXmlDomSetDefaultNS, 3

C用のDOMパッケージのXmlDomSetDocOrder, 3

C用のDOMパッケージのXmlDomSetDTD, 3

C用のDOMパッケージのXmlDomSetLastError, 3

C用のDOMパッケージのXmlDomSetNamedItem, 3

C用のDOMパッケージのXmlDomSetNamedItemNS, 3

C用のDOMパッケージのXmlDomSetNodePrefix, 3

C用のDOMパッケージのXmlDomSetNodeValue, 3

C用のDOMパッケージのXmlDomSetNodeValueLen, 3

C用のDOMパッケージのXmlDomSetNodeValueStream, 3

C用のDOMパッケージのXmlDomSetPIData, 3

C用のDOMパッケージのXmlDomSetPullNodeAsBinaryStream, 3

C用のDOMパッケージのXmlDomSetPullNodeAsCharacterStream, 3

C用のDOMパッケージのXmlDomSetPushNodeAsBinaryStream, 3

C用のDOMパッケージのXmlDomSetPushNodeAsCharacterStream, 3

C用のDOMパッケージのXmlDomSplitText, 3

C用のDOMパッケージのXmlDomSubstringData, 3

C用のDOMパッケージのXmlDomSync, 3

C用のDOMパッケージのXmlDomValidate, 3

C用の横断パッケージのXmlDomWalkerFirstChild, 10

C用の横断パッケージのXmlDomWalkerGetCurrentNode, 10

C用の横断パッケージのXmlDomWalkerGetRoot, 10

C用の横断パッケージのXmlDomWalkerLastChild, 10

C用の横断パッケージのXmlDomWalkerNextNode, 10

C用の横断パッケージのXmlDomWalkerNextSibling, 10

C用の横断パッケージのXmlDomWalkerParentNode, 10

C用の横断パッケージのXmlDomWalkerPrevNode, 10

C用の横断パッケージのXmlDomWalkerPrevSibling, 10

C用の横断パッケージのXmlDomWalkerSetCurrentNode, 10

C用の横断パッケージのXmlDomWalkerSetRoot, 10

C用のイベント・パッケージのXmlEvCleanPPCtx, 4

C用のイベント・パッケージのXmlEvCreatePPCtx, 4

C用のイベント・パッケージのXmlEvCreateSVCtx, 4

C用のイベント・パッケージのXmlEvDestroyPPCtx, 4

C用のイベント・パッケージのXmlEvDestroySVCtx, 4

C用のイベント・パッケージのXmlEvGetAttrCount, 4

C用のイベント・パッケージのXmlEvGetAttrDeclBody, 4

C用のイベント・パッケージのXmlEvGetAttrDeclBody0, 4

C用のイベント・パッケージのXmlEvGetAttrDeclCount, 4

C用のイベント・パッケージのXmlEvGetAttrDeclElName, 4

C用のイベント・パッケージのXmlEvGetAttrDeclElName0, 4

C用のイベント・パッケージのXmlEvGetAttrDeclLocalName, 4

C用のイベント・パッケージのXmlEvGetAttrDeclLocalName0, 4

C用のイベント・パッケージのXmlEvGetAttrDeclName, 4

C用のイベント・パッケージのXmlEvGetAttrDeclName0, 4

C用のイベント・パッケージのXmlEvGetAttrDeclPrefix, 4

C用のイベント・パッケージのXmlEvGetAttrDeclPrefix0, 4

C用のイベント・パッケージのXmlEvGetAttrID, 4

C用のイベント・パッケージのXmlEvGetAttrLocalName, 4

C用のイベント・パッケージのXmlEvGetAttrLocalName0, 4

C用のイベント・パッケージのXmlEvGetAttrName, 4

C用のイベント・パッケージのXmlEvGetAttrName0, 4

C用のイベント・パッケージのXmlEvGetAttrPrefix, 4

C用のイベント・パッケージのXmlEvGetAttrPrefix0, 4

C用のイベント・パッケージのXmlEvGetAttrURI, 4

C用のイベント・パッケージのXmlEvGetAttrURI0, 4

C用のイベント・パッケージのXmlEvGetAttrUriID, 4

C用のイベント・パッケージのXmlEvGetAttrValue, 4

C用のイベント・パッケージのXmlEvGetAttrValue0, 4

C用のイベント・パッケージのXmlEvGetElDeclContent, 4

C用のイベント・パッケージのXmlEvGetElDeclContent0, 4

C用のイベント・パッケージのXmlEvGetEncoding, 4

C用のイベント・パッケージのXmlEvGetError, 4

C用のイベント・パッケージのXmlEvGetLocalName, 4

C用のイベント・パッケージのXmlEvGetLocalName0, 4

C用のイベント・パッケージのXmlEvGetLocation, 4

C用のイベント・パッケージのXmlEvGetName, 4

C用のイベント・パッケージのXmlEvGetName0, 4

C用のイベント・パッケージのXmlEvGetPERepl, 4

C用のイベント・パッケージのXmlEvGetPERepl0, 4, 4

C用のイベント・パッケージのXmlEvGetPIData, 4

C用のイベント・パッケージのXmlEvGetPIData0, 4

C用のイベント・パッケージのXmlEvGetPITarget, 4

C用のイベント・パッケージのXmlEvGetPITarget0, 4

C用のイベント・パッケージのXmlEvGetPrefix, 4

C用のイベント・パッケージのXmlEvGetPrefix0, 4

C用のイベント・パッケージのXmlEvGetPubId, 4

C用のイベント・パッケージのXmlEvGetPubId0, 4

C用のイベント・パッケージのXmlEvGetSysId, 4

C用のイベント・パッケージのXmlEvGetSysId0, 4

C用のイベント・パッケージのXmlEvGetTagID, 4

C用のイベント・パッケージのXmlEvGetTagUriID, 4

C用のイベント・パッケージのXmlEvGetText, 4

C用のイベント・パッケージのXmlEvGetText0, 4

C用のイベント・パッケージのXmlEvGetUENdata, 4

C用のイベント・パッケージのXmlEvGetUENdata0, 4

C用のイベント・パッケージのXmlEvGetURI, 4

C用のイベント・パッケージのXmlEvGetURI0, 4

C用のイベント・パッケージのXmlEvGetVersion, 4

C用のイベント・パッケージのXmlEvIsEncodingSpecified, 4

C用のイベント・パッケージのXmlEvIsStandalone, 4

C用のイベント・パッケージのXmlEvLoadPPDoc, 4, 4

C用のイベント・パッケージのXmlEvNamespaceAttr, 4

C用のイベント・パッケージのXmlEvNext, 4

C用のイベント・パッケージのXmlEvSchemaValidate, 4

C用のXMLパッケージのXmlFreeDocument, 11

C用のXMLパッケージのXmlGetEncoding, 11

C用のXMLパッケージのXmlHasFeature, 11

C用のXmlDiffパッケージのXmlHash, 12

C用のXMLパッケージのXmlIsSimple, 11

C用のXMLパッケージのXmlIsUnicode, 11

C用のXMLパッケージのXmlLoadDom, 11

C用のXMLパッケージのXmlLoadSax, 11

C用のXMLパッケージのXmlLoadSaxVA, 11

C用のXmlDiffパッケージのXmlPatch, 12

C用のXMLパッケージのXmlSaveDom, 11

C用のSAXパッケージのXmlSaxAttributeDecl, 7

C用のSAXパッケージのXmlSaxCDATA, 7

C用のSAXパッケージのXmlSaxCharacters, 7

C用のSAXパッケージのXmlSaxComment, 7

C用のSAXパッケージのXmlSaxElementDecl, 7

C用のSAXパッケージのXmlSaxEndDocument, 7

C用のSAXパッケージのXmlSaxEndElement, 7

C用のSAXパッケージのXmlSaxNotationDecl, 7

C用のSAXパッケージのXmlSaxParsedEntityDecl, 7

C用のSAXパッケージのXmlSaxPI, 7

C用のSAXパッケージのXmlSaxStartDocument, 7

C用のSAXパッケージのXmlSaxStartElement, 7

C用のSAXパッケージのXmlSaxStartElementNS, 7

C用のSAXパッケージのXmlSaxUnparsedEntityDecl, 7

C用のSAXパッケージのXmlSaxWhitespace, 7

C用のSAXパッケージのXmlSaxXmlDecl, 7

C用のスキーマ・パッケージのXmlSchemaClean, 8

C用のスキーマ・パッケージのXmlSchemaCreate, 8

C用のスキーマ・パッケージのXmlSchemaDestroy, 8

C用のスキーマ・パッケージのXmlSchemaErrorWhere, 8

C用のスキーマ・パッケージのXmlSchemaLoad, 8

C用のスキーマ・パッケージのXmlSchemaLoadedList, 8

C用のスキーマ・パッケージのXmlSchemaSetErrorHandler, 8

C用のスキーマ・パッケージのXmlSchemaSetValidateOptions, 8

C用のスキーマ・パッケージのXmlSchemaTargetNamespace, 8

C用のスキーマ・パッケージのXmlSchemaUnload, 8

C用のスキーマ・パッケージのXmlSchemaValidate, 8

C用のスキーマ・パッケージのXmlSchemaVersion, 8

C用のSOAPパッケージのXmlSoapAddBodyElement, 9

C用のSOAPパッケージのXmlSoapAddFaultReason, 9

C用のSOAPパッケージのXmlSoapAddFaultSubDetail, 9

C用のSOAPパッケージのXmlSoapAddHeaderElement, 9

C用のSOAPパッケージのXmlSoapCall, 9

C用のSOAPパッケージのXmlSoapCreateConnection, 9

C用のSOAPパッケージのXmlSoapCreateCtx, 9

C用のSOAPパッケージのXmlSoapCreateMsg, 9

C用のSOAPパッケージのXmlSoapDestroyConnection, 9

C用のSOAPパッケージのXmlSoapDestroyCtx, 9

C用のSOAPパッケージのXmlSoapDestroyMsg, 9

C用のSOAPパッケージのXmlSoapError, 9

C用のSOAPパッケージのXmlSoapGetBody, 9

C用のSOAPパッケージのXmlSoapGetBodyElement, 9

C用のSOAPパッケージのXmlSoapGetEnvelope, 9

C用のSOAPパッケージのXmlSoapGetFault, 9

C用のSOAPパッケージのXmlSoapGetHeader, 9

C用のSOAPパッケージのXmlSoapGetHeaderElement, 9

C用のSOAPパッケージのXmlSoapGetMustUnderstand, 9

C用のSOAPパッケージのXmlSoapGetReasonLang, 9

C用のSOAPパッケージのXmlSoapGetReasonNum, 9

C用のSOAPパッケージのXmlSoapGetRelay, 9

C用のSOAPパッケージのXmlSoapGetRole, 9

C用のSOAPパッケージのXmlSoapHasFault, 9

C用のSOAPパッケージのXmlSoapSetFault, 9

C用のSOAPパッケージのXmlSoapSetMustUnderstand, 9

C用のSOAPパッケージのXmlSoapSetRelay, 9

C用のSOAPパッケージのXmlSoapSetRole, 9

C用のXMLパッケージのXmlVersion, 11

C用のXPathパッケージのXmlXPathCreateCtx, 13

C用のXPathパッケージのXmlXPathDestroyCtx, 13

C用のXPathパッケージのXmlXPathEval, 13

C用のXPathパッケージのXmlXPathGetObjectBoolean, 13

C用のXPathパッケージのXmlXPathGetObjectFragment, 13

C用のXPathパッケージのXmlXPathGetObjectNSetNode, 13

C用のXPathパッケージのXmlXPathGetObjectNSetNum, 13

C用のXPathパッケージのXmlXPathGetObjectNumber, 13

C用のXPathパッケージのXmlXPathGetObjectString, 13

C用のXPathパッケージのXmlXPathGetObjectType, 13

C用のXPathパッケージのXmlXPathParse, 13

C用のXPointerパッケージのXmlXPointerEval, 14

C用のXPointerパッケージのXmlXPtrLocGetNode, 14

C用のXPointerパッケージのXmlXPtrLocGetPoint, 14

C用のXPointerパッケージのXmlXPtrLocGetRange, 14

C用のXPointerパッケージのXmlXPtrLocGetType, 14

C用のXPointerパッケージのXmlXPtrLocSetFree, 14

C用のXPointerパッケージのXmlXPtrLocSetGetItem, 14

C用のXPointerパッケージのXmlXPtrLocSetGetLength, 14

C用のXPointerパッケージのXmlXPtrLocToString, 14

C用のXSLTパッケージのXmlXslCreate, 15

C用のXSLTパッケージのXmlXslDestroy, 15

C用のXSLTパッケージのXmlXslGetBaseURI, 15

C用のXSLTパッケージのXmlXslGetOutput, 15

C用のXSLTパッケージのXmlXslGetStylesheetDom, 15

C用のXSLTパッケージのXmlXslGetTextParam, 15

C用のXSLTパッケージのXmlXslProcess, 15

C用のXSLTパッケージのXmlXslResetAllParams, 15

C用のXSLTパッケージのXmlXslSetOutputDom, 15

C用のXSLTパッケージのXmlXslSetOutputEncoding, 15

C用のXSLTパッケージのXmlXslSetOutputMethod, 15

C用のXSLTパッケージのXmlXslSetOutputSax, 15

C用のXSLTパッケージのXmlXslSetOutputStream, 15

C用のXSLTパッケージのXmlXslSetTextParam, 15

C用のXSLTVMパッケージのXMLXVM_DEBUG_F, 16

C用のXSLTVMパッケージのXmlXvmCompileBuffer, 16

C用のXSLTVMパッケージのXmlXvmCompileDom, 16

C用のXSLTVMパッケージのXmlXvmCompileFile, 16

C用のXSLTVMパッケージのXmlXvmCompileURI, 16

C用のXSLTVMパッケージのXmlXvmCompileXPath, 16

C用のXSLTVMパッケージのXmlXvmCreate, 16

C用のXSLTVMパッケージのXmlXvmCreateComp, 16

C用のXSLTVMパッケージのXmlXvmDestroy, 16

C用のXSLTVMパッケージのXmlXvmDestroyComp, 16

C用のXSLTVMパッケージのXmlXvmEvaluateXPath, 16

C用のXSLTVMパッケージのXmlXvmGetBytecodeLength, 16

C用のXSLTVMパッケージのXmlXvmGetObjectBoolean, 16

C用のXSLTVMパッケージのXmlXvmGetObjectNSetNode, 16

C用のXSLTVMパッケージのXmlXvmGetObjectNSetNum, 16

C用のXSLTVMパッケージのXmlXvmGetObjectNumber, 16

C用のXSLTVMパッケージのXmlXvmGetObjectString, 16

C用のXSLTVMパッケージのXmlXvmGetObjectType, 16

C用のXSLTVMパッケージのXmlXvmGetOutputDom, 16

C用のXSLTVMパッケージのXmlXvmResetParams, 16

C用のXSLTVMパッケージのXmlXvmSetBaseURI, 16

C用のXSLTVMパッケージのXmlXvmSetBytecodeBuffer, 16

C用のXSLTVMパッケージのXmlXvmSetBytecodeFile, 16

C用のXSLTVMパッケージのXmlXvmSetBytecodeURI, 16

C用のXSLTVMパッケージのXmlXvmSetDebugFunc, 16

C用のXSLTVMパッケージのXmlXvmSetOutputDom, 16

C用のXSLTVMパッケージのXmlXvmSetOutputEncoding, 16

C用のXSLTVMパッケージのXmlXvmSetOutputSax, 16

C用のXSLTVMパッケージのXmlXvmSetOutputStream, 16

C用のXSLTVMパッケージのXmlXvmSetTextParam, 16

C用のXSLTVMパッケージのXmlXvmTransformBuffer, 16

C用のXSLTVMパッケージのXmlXvmTransformDom, 16

C用のXSLTVMパッケージのXmlXvmTransformFile, 16

C用のXSLTVMパッケージのXmlXvmTransformURI, 16

P

パッケージ

C用のコールバック, 2

C用のDOM, 3

C用のイベント, 4

C用の範囲, 6

C用のSAX, 7

C用のスキーマ, 8

C用のSOAP, 9

C用の横断, 10

C用のXML, 11

C用のXmlDiff, 12

C用のXPath, 13

C用のXPointer, 14

C用のXSLT, 15

C用のXSLTVM, 16

R

C用の範囲パッケージ, 6

S

C用のSAXパッケージ, 7

C用のスキーマ・パッケージ, 8

C用のSOAPパッケージ, 9

T

C用の横断パッケージ, 10

X

C用のXMLパッケージ, 11

C用のコールバック・パッケージのXML_ACCESS_CLOSE_F, 2

C用のコールバック・パッケージのXML_ACCESS_OPEN_F, 2

C用のコールバック・パッケージのXML_ACCESS_READ_F, 2

C用のコールバック・パッケージのXML_ALLOC_F, 2

C用のコールバック・パッケージのXML_ERRMSG_F, 2

C用のコールバック・パッケージのXML_FREE_F, 2

C用のコールバック・パッケージのXML_STREAM_CLOSE_F, 2

C用のコールバック・パッケージのXML_STREAM_OPEN_F, 2

C用のコールバック・パッケージのXML_STREAM_READ_F, 2

C用のコールバック・パッケージのXML_STREAM_WRITE_F, 2

C用のXMLパッケージのXmlAccess, 11

C用のXMLパッケージのXmlCreate, 11

C用のXMLパッケージのXmlCreateDocument, 11

C用のXMLパッケージのXmlCreateDTD, 11

C用のXMLパッケージのXmlDestroy, 11

C用のXMLパッケージのXmlDiff, 11

C用のXmlDiffパッケージのXmlDiff, 12

C用のXmlDiffパッケージ, 12

C用の横断パッケージのXMLDOM_ACCEPT_NODE_F, 10

C用のDOMパッケージのXmlDomAppendChild, 3

C用のDOMパッケージのXmlDomAppendData, 3

C用のDOMパッケージのXmlDomCleanNode, 3

C用のDOMパッケージのXmlDomCloneNode, 3

C用のDOMパッケージのXmlDomCreateAttr, 3

C用のDOMパッケージのXmlDomCreateAttrNS, 3

C用のDOMパッケージのXmlDomCreateCDATA, 3

C用のDOMパッケージのXmlDomCreateComment, 3

C用のDOMパッケージのXmlDomCreateElem, 3

C用のDOMパッケージのXmlDomCreateElemNS, 3

C用のDOMパッケージのXmlDomCreateEntityRef, 3

C用のDOMパッケージのXmlDomCreateFragment, 3

C用の横断パッケージのXmlDomCreateNodeIter, 10

C用のDOMパッケージのXmlDomCreatePI, 3

C用の範囲パッケージのXmlDomCreateRange, 6

C用のDOMパッケージのXmlDomCreateText, 3

C用の横断パッケージのXmlDomCreateTreeWalker, 10

C用のDOMパッケージのXmlDomDeleteData, 3

C用のDOMパッケージのXmlDomFreeNode, 3

C用のDOMパッケージのXmlDomFreeNodeList, 3

C用のDOMパッケージのXmlDomFreeString, 3

C用のDOMパッケージのXmlDomGetAttr, 3

C用のDOMパッケージのXmlDomGetAttrLocal, 3

C用のDOMパッケージのXmlDomGetAttrLocalLen, 3

C用のDOMパッケージのXmlDomGetAttrName, 3

C用のDOMパッケージのXmlDomGetAttrNameLen, 3

C用のDOMパッケージのXmlDomGetAttrNode, 3

C用のDOMパッケージのXmlDomGetAttrNodeNS, 3

C用のDOMパッケージのXmlDomGetAttrNS, 3

C用のDOMパッケージのXmlDomGetAttrPrefix, 3

C用のDOMパッケージのXmlDomGetAttrs, 3

C用のDOMパッケージのXmlDomGetAttrSpecified, 3

C用のDOMパッケージのXmlDomGetAttrURI, 3

C用のDOMパッケージのXmlDomGetAttrURILen, 3

C用のDOMパッケージのXmlDomGetAttrValue, 3

C用のDOMパッケージのXmlDomGetAttrValueLen, 3

C用のDOMパッケージのXmlDomGetAttrValueStream, 3

C用のDOMパッケージのXmlDomGetBaseURI, 3

C用のDOMパッケージのXmlDomGetCharData, 3

C用のDOMパッケージのXmlDomGetCharDataLength, 3

C用のDOMパッケージのXmlDomGetChildNodes, 3

C用のDOMパッケージのXmlDomGetChildrenByTag, 3

C用のDOMパッケージのXmlDomGetChildrenByTagNS, 3

C用のDOMパッケージのXmlDomGetDecl, 3

C用のDOMパッケージのXmlDomGetDefaultNS, 3

C用のDOMパッケージのXmlDomGetDocElem, 3

C用のDOMパッケージのXmlDomGetDocElemByID, 3

C用のDOMパッケージのXmlDomGetDocElemsByTag, 3

C用のDOMパッケージのXmlDomGetDocElemsByTagNS, 3

C用のDOMパッケージのXmlDomGetDTD, 3

C用のDOMパッケージのXmlDomGetDTDEntities, 3

C用のDOMパッケージのXmlDomGetDTDInternalSubset, 3

C用のDOMパッケージのXmlDomGetDTDName, 3

C用のDOMパッケージのXmlDomGetDTDNotations, 3

C用のDOMパッケージのXmlDomGetDTDPubID, 3

C用のDOMパッケージのXmlDomGetDTDSysID, 3

C用のDOMパッケージのXmlDomGetElemsByTag, 3

C用のDOMパッケージのXmlDomGetElemsByTagNS, 3

C用のDOMパッケージのXmlDomGetEntityNotation, 3

C用のDOMパッケージのXmlDomGetEntityPubID, 3

C用のDOMパッケージのXmlDomGetEntitySysID, 3

C用のDOMパッケージのXmlDomGetEntityType, 3

C用のDOMパッケージのXmlDomGetFirstChild, 3

C用のDOMパッケージのXmlDomGetFirstPfnsPair, 3

C用のDOMパッケージのXmlDomGetLastChild, 3

C用のDOMパッケージのXmlDomGetLastError, 3

C用のDOMパッケージのXmlDomGetNamedItem, 3

C用のDOMパッケージのXmlDomGetNamedItemNS, 3

C用のDOMパッケージのXmlDomGetNextPfnsPair, 3

C用のDOMパッケージのXmlDomGetNextSibling, 3

C用のDOMパッケージのXmlDomGetNodeListItem, 3

C用のDOMパッケージのXmlDomGetNodeListLength, 3

C用のDOMパッケージのXmlDomGetNodeLocal, 3

C用のDOMパッケージのXmlDomGetNodeLocalLen, 3

C用のDOMパッケージのXmlDomGetNodeMapItem, 3

C用のDOMパッケージのXmlDomGetNodeMapLength, 3

C用のDOMパッケージのXmlDomGetNodeName, 3

C用のDOMパッケージのXmlDomGetNodeNameLen, 3

C用のDOMパッケージのXmlDomGetNodePrefix, 3

C用のDOMパッケージのXmlDomGetNodeType, 3

C用のDOMパッケージのXmlDomGetNodeURI, 3

C用のDOMパッケージのXmlDomGetNodeURILen, 3

C用のDOMパッケージのXmlDomGetNodeValue, 3

C用のDOMパッケージのXmlDomGetNodeValueLen, 3

C用のDOMパッケージのXmlDomGetNodeValueStream, 3

C用のDOMパッケージのXmlDomGetNotationPubID, 3

C用のDOMパッケージのXmlDomGetNotationSysID, 3

C用のDOMパッケージのXmlDomGetOwnerDocument, 3

C用のDOMパッケージのXmlDomGetOwnerElem, 3

C用のDOMパッケージのXmlDomGetParentNode, 3

C用のDOMパッケージのXmlDomGetPIData, 3

C用のDOMパッケージのXmlDomGetPITarget, 3

C用のDOMパッケージのXmlDomGetPrevSibling, 3

C用のDOMパッケージのXmlDomGetPullNodeAsBinaryStream, 3

C用のDOMパッケージのXmlDomGetPullNodeAsCharacterStream, 3

C用のDOMパッケージのXmlDomGetPushNodeAsBinaryStream, 3

C用のDOMパッケージのXmlDomGetPushNodeAsCharacterStream, 3

C用のDOMパッケージのXmlDomGetSchema, 3

C用のDOMパッケージのXmlDomGetSourceEntity, 3

C用のDOMパッケージのXmlDomGetSourceLine, 3

C用のDOMパッケージのXmlDomGetSourceLocation, 3

C用のDOMパッケージのXmlDomGetTag, 3

C用のDOMパッケージのXmlDomHasAttr, 3

C用のDOMパッケージのXmlDomHasAttrNS, 3

C用のDOMパッケージのXmlDomHasAttrs, 3

C用のDOMパッケージのXmlDomHasChildNodes, 3

C用のDOMパッケージのXmlDomImportNode, 3

C用のDOMパッケージのXmlDomInsertBefore, 3

C用のDOMパッケージのXmlDomInsertData, 3

C用のDOMパッケージのXmlDomIsSchemaBased, 3

C用の横断パッケージのXmlDomIterDetach, 10

C用の横断パッケージのXmlDomIterNextNode, 10

C用の横断パッケージのXmlDomIterPrevNode, 10

C用のDOMパッケージのXmlDomNormalize, 3

C用のDOMパッケージのXmlDomNumAttrs, 3

C用のDOMパッケージのXmlDomNumChildNodes, 3

C用のDOMパッケージのXmlDomPrefixToURI, 3

C用の範囲パッケージのXmlDomRangeClone, 6

C用の範囲パッケージのXmlDomRangeCloneContents, 6

C用の範囲パッケージのXmlDomRangeCollapse, 6

C用の範囲パッケージのXmlDomRangeCompareBoundaryPoints, 6

C用の範囲パッケージのXmlDomRangeDeleteContents, 6

C用の範囲パッケージのXmlDomRangeDetach, 6

C用の範囲パッケージのXmlDomRangeExtractContents, 6

C用の範囲パッケージのXmlDomRangeGetCollapsed, 6

C用の範囲パッケージのXmlDomRangeGetCommonAncestor, 6

C用の範囲パッケージのXmlDomRangeGetDetached, 6

C用の範囲パッケージのXmlDomRangeGetEndContainer, 6

C用の範囲パッケージのXmlDomRangeGetEndOffset, 6

C用の範囲パッケージのXmlDomRangeGetStartContainer, 6

C用の範囲パッケージのXmlDomRangeGetStartOffset, 6

C用の範囲パッケージのXmlDomRangeIsConsistent, 6

C用の範囲パッケージのXmlDomRangeSelectNode, 6

C用の範囲パッケージのXmlDomRangeSelectNodeContents, 6

C用の範囲パッケージのXmlDomRangeSetEnd, 6

C用の範囲パッケージのXmlDomRangeSetEndBefore, 6

C用の範囲パッケージのXmlDomRangeSetStart, 6

C用の範囲パッケージのXmlDomRangeSetStartAfter, 6

C用の範囲パッケージのXmlDomRangeSetStartBefore, 6

C用のDOMパッケージのXmlDomRemoveAttr, 3

C用のDOMパッケージのXmlDomRemoveAttrNode, 3

C用のDOMパッケージのXmlDomRemoveAttrNS, 3

C用のDOMパッケージのXmlDomRemoveChild, 3

C用のDOMパッケージのXmlDomRemoveNamedItem, 3

C用のDOMパッケージのXmlDomRemoveNamedItemNS, 3

C用のDOMパッケージのXmlDomRenameNode, 3

C用のDOMパッケージのXmlDomRenameNodeNS, 3

C用のDOMパッケージのXmlDomReplaceChild, 3

C用のDOMパッケージのXmlDomReplaceData, 3

C用のDOMパッケージのXmlDomSaveString, 3

C用のDOMパッケージのXmlDomSaveString2, 3

C用のDOMパッケージのXmlDomSetAttr, 3

C用のDOMパッケージのXmlDomSetAttrNode, 3

C用のDOMパッケージのXmlDomSetAttrNodeNS, 3

C用のDOMパッケージのXmlDomSetAttrNS, 3

C用のDOMパッケージのXmlDomSetAttrValue, 3

C用のDOMパッケージのXmlDomSetAttrValueStream, 3

C用のDOMパッケージのXmlDomSetBaseURI, 3

C用のDOMパッケージのXmlDomSetCharData, 3

C用のDOMパッケージのXmlDomSetDefaultNS, 3

C用のDOMパッケージのXmlDomSetDocOrder, 3

C用のDOMパッケージのXmlDomSetDTD, 3

C用のDOMパッケージのXmlDomSetLastError, 3

C用のDOMパッケージのXmlDomSetNamedItem, 3

C用のDOMパッケージのXmlDomSetNamedItemNS, 3

C用のDOMパッケージのXmlDomSetNodePrefix, 3

C用のDOMパッケージのXmlDomSetNodeValue, 3

C用のDOMパッケージのXmlDomSetNodeValueLen, 3

C用のDOMパッケージのXmlDomSetNodeValueStream, 3

C用のDOMパッケージのXmlDomSetPIData, 3

C用のDOMパッケージのXmlDomSetPullNodeAsBinaryStream, 3

C用のDOMパッケージのXmlDomSetPullNodeAsCharacterStream, 3

C用のDOMパッケージのXmlDomSetPushNodeAsBinaryStream, 3

C用のDOMパッケージのXmlDomSetPushNodeAsCharacterStream, 3

C用のDOMパッケージのXmlDomSplitText, 3

C用のDOMパッケージのXmlDomSubstringData, 3

C用のDOMパッケージのXmlDomSync, 3

C用のDOMパッケージのXmlDomValidate, 3

C用の横断パッケージのXmlDomWalkerFirstChild, 10

C用の横断パッケージのXmlDomWalkerGetCurrentNode, 10

C用の横断パッケージのXmlDomWalkerGetRoot, 10

C用の横断パッケージのXmlDomWalkerLastChild, 10

C用の横断パッケージのXmlDomWalkerNextNode, 10

C用の横断パッケージのXmlDomWalkerNextSibling, 10

C用の横断パッケージのXmlDomWalkerParentNode, 10

C用の横断パッケージのXmlDomWalkerPrevNode, 10

C用の横断パッケージのXmlDomWalkerPrevSibling, 10

C用の横断パッケージのXmlDomWalkerSetCurrentNode, 10

C用の横断パッケージのXmlDomWalkerSetRoot, 10

C用のイベント・パッケージのXmlEvCleanPPCtx, 4

C用のイベント・パッケージのXmlEvCreatePPCtx, 4

C用のイベント・パッケージのXmlEvCreateSVCtx, 4

C用のイベント・パッケージのXmlEvDestroyPPCtx, 4

C用のイベント・パッケージのXmlEvDestroySVCtx, 4

C用のイベント・パッケージのXmlEvGetAttrCount, 4

C用のイベント・パッケージのXmlEvGetAttrDeclBody, 4

C用のイベント・パッケージのXmlEvGetAttrDeclBody0, 4

C用のイベント・パッケージのXmlEvGetAttrDeclCount, 4

C用のイベント・パッケージのXmlEvGetAttrDeclElName, 4

C用のイベント・パッケージのXmlEvGetAttrDeclElName0, 4

C用のイベント・パッケージのXmlEvGetAttrDeclLocalName, 4

C用のイベント・パッケージのXmlEvGetAttrDeclLocalName0, 4

C用のイベント・パッケージのXmlEvGetAttrDeclName, 4

C用のイベント・パッケージのXmlEvGetAttrDeclName0, 4

C用のイベント・パッケージのXmlEvGetAttrDeclPrefix, 4

C用のイベント・パッケージのXmlEvGetAttrDeclPrefix0, 4

C用のイベント・パッケージのXmlEvGetAttrID, 4

C用のイベント・パッケージのXmlEvGetAttrLocalName, 4

C用のイベント・パッケージのXmlEvGetAttrLocalName0, 4

C用のイベント・パッケージのXmlEvGetAttrName, 4

C用のイベント・パッケージのXmlEvGetAttrName0, 4

C用のイベント・パッケージのXmlEvGetAttrPrefix, 4

C用のイベント・パッケージのXmlEvGetAttrPrefix0, 4

C用のイベント・パッケージのXmlEvGetAttrURI, 4

C用のイベント・パッケージのXmlEvGetAttrURI0, 4

C用のイベント・パッケージのXmlEvGetAttrUriID, 4

C用のイベント・パッケージのXmlEvGetAttrValue, 4

C用のイベント・パッケージのXmlEvGetAttrValue0, 4

C用のイベント・パッケージのXmlEvGetElDeclContent, 4

C用のイベント・パッケージのXmlEvGetElDeclContent0, 4

C用のイベント・パッケージのXmlEvGetEncoding, 4

C用のイベント・パッケージのXmlEvGetError, 4

C用のイベント・パッケージのXmlEvGetLocalName, 4

C用のイベント・パッケージのXmlEvGetLocalName0, 4

C用のイベント・パッケージのXmlEvGetLocation, 4

C用のイベント・パッケージのXmlEvGetName, 4

C用のイベント・パッケージのXmlEvGetName0, 4

C用のイベント・パッケージのXmlEvGetPEisGen, 4

C用のイベント・パッケージのXmlEvGetPERepl, 4

C用のイベント・パッケージのXmlEvGetPERepl0, 4

C用のイベント・パッケージのXmlEvGetPIData, 4

C用のイベント・パッケージのXmlEvGetPIData0, 4

C用のイベント・パッケージのXmlEvGetPITarget, 4

C用のイベント・パッケージのXmlEvGetPITarget0, 4

C用のイベント・パッケージのXmlEvGetPrefix, 4

C用のイベント・パッケージのXmlEvGetPrefix0, 4

C用のイベント・パッケージのXmlEvGetPubId, 4

C用のイベント・パッケージのXmlEvGetPubId0, 4

C用のイベント・パッケージのXmlEvGetSysId, 4

C用のイベント・パッケージのXmlEvGetSysId0, 4

C用のイベント・パッケージのXmlEvGetTagID, 4

C用のイベント・パッケージのXmlEvGetTagUriID, 4

C用のイベント・パッケージのXmlEvGetText, 4

C用のイベント・パッケージのXmlEvGetText0, 4

C用のイベント・パッケージのXmlEvGetUENdata, 4

C用のイベント・パッケージのXmlEvGetUENdata0, 4

C用のイベント・パッケージのXmlEvGetURI, 4

C用のイベント・パッケージのXmlEvGetURI0, 4

C用のイベント・パッケージのXmlEvGetVersion, 4

C用のイベント・パッケージのXmlEvIsEncodingSpecified, 4

C用のイベント・パッケージのXmlEvIsStandalone, 4

C用のイベント・パッケージのXmlEvLoadPPDoc, 4

C用のイベント・パッケージのXmlEvNamespaceAttr, 4

C用のイベント・パッケージのXmlEvNext, 4

C用のイベント・パッケージのXmlEvNextTag, 4

C用のイベント・パッケージのXmlEvSchemaValidate, 4

C用のXMLパッケージのXmlFreeDocument, 11

C用のXMLパッケージのXmlGetEncoding, 11

C用のXMLパッケージのXmlHasFeature, 11

C用のXPathパッケージのXmlHash, 12

C用のXMLパッケージのXmlIsSimple, 11

C用のXMLパッケージのXmlIsUnicode, 11

C用のXMLパッケージのXmlLoadDom, 11

C用のXMLパッケージのXmlLoadSax, 11

C用のXMLパッケージのXmlLoadSaxVA, 11

C用のXmlDiffパッケージのXmlPatch, 12

C用のXMLパッケージのXmlSaveDom, 11

C用のSAXパッケージのXmlSaxAttributeDecl, 7

C用のSAXパッケージのXmlSaxCDATA, 7

C用のSAXパッケージのXmlSaxCharacters, 7

C用のSAXパッケージのXmlSaxComment, 7

C用のSAXパッケージのXmlSaxElementDecl, 7

C用のSAXパッケージのXmlSaxEndDocument, 7

C用のSAXパッケージのXmlSaxEndElement, 7

C用のSAXパッケージのXmlSaxNotationDecl, 7

C用のSAXパッケージのXmlSaxParsedEntityDecl, 7

C用のSAXパッケージのXmlSaxPI, 7

C用のSAXパッケージのXmlSaxStartDocument, 7

C用のSAXパッケージのXmlSaxStartElement, 7

C用のSAXパッケージのXmlSaxStartElementNS, 7

C用のSAXパッケージのXmlSaxUnparsedEntityDecl, 7

C用のSAXパッケージのXmlSaxWhitespace, 7

C用のSAXパッケージのXmlSaxXmlDecl, 7

C用のスキーマ・パッケージのXmlSchemaClean, 8

C用のスキーマ・パッケージのXmlSchemaCreate, 8

C用のスキーマ・パッケージのXmlSchemaDestroy, 8

C用のスキーマ・パッケージのXmlSchemaErrorWhere, 8

C用のスキーマ・パッケージのXmlSchemaLoad, 8

C用のスキーマ・パッケージのXmlSchemaLoadedList, 8

C用のスキーマ・パッケージのXmlSchemaSetErrorHandler, 8

C用のスキーマ・パッケージのXmlSchemaSetValidateOptions, 8

C用のスキーマ・パッケージのXmlSchemaTargetNamespace, 8

C用のスキーマ・パッケージのXmlSchemaUnload, 8

C用のスキーマ・パッケージのXmlSchemaValidate, 8

C用のスキーマ・パッケージのXmlSchemaVersion, 8

C用のSOAPパッケージのXmlSoapAddBodyElement, 9

C用のSOAPパッケージのXmlSoapAddFaultReason, 9

C用のSOAPパッケージのXmlSoapAddFaultSubDetail, 9

C用のSOAPパッケージのXmlSoapAddHeaderElement, 9

C用のSOAPパッケージのXmlSoapCall, 9

C用のSOAPパッケージのXmlSoapCreateConnection, 9

C用のSOAPパッケージのXmlSoapCreateCtx, 9

C用のSOAPパッケージのXmlSoapCreateMsg, 9

C用のSOAPパッケージのXmlSoapDestroyConnection, 9

C用のSOAPパッケージのXmlSoapDestroyCtx, 9

C用のSOAPパッケージのXmlSoapDestroyMsg, 9

C用のSOAPパッケージのXmlSoapError, 9

C用のSOAPパッケージのXmlSoapGetBody, 9

C用のSOAPパッケージのXmlSoapGetBodyElement, 9

C用のSOAPパッケージのXmlSoapGetEnvelope, 9

C用のSOAPパッケージのXmlSoapGetFault, 9

C用のSOAPパッケージのXmlSoapGetHeader, 9

C用のSOAPパッケージのXmlSoapGetHeaderElement, 9

C用のSOAPパッケージのXmlSoapGetMustUnderstand, 9

C用のSOAPパッケージのXmlSoapGetReasonLang, 9

C用のSOAPパッケージのXmlSoapGetReasonNum, 9

C用のSOAPパッケージのXmlSoapGetRelay, 9

C用のSOAPパッケージのXmlSoapGetRole, 9

C用のSOAPパッケージのXmlSoapHasFault, 9

C用のSOAPパッケージのXmlSoapSetFault, 9

C用のSOAPパッケージのXmlSoapSetMustUnderstand, 9

C用のSOAPパッケージのXmlSoapSetRelay, 9

C用のSOAPパッケージのXmlSoapSetRole, 9

C用のXMLパッケージのXmlVersion, 11

C用のXPathパッケージのXmlXPathCreateCtx, 13

C用のXPathパッケージのXmlXPathDestroyCtx, 13

C用のXPathパッケージのXmlXPathEval, 13

C用のXPathパッケージのXmlXPathGetObjectBoolean, 13

C用のXPathパッケージのXmlXPathGetObjectFragment, 13

C用のXPathパッケージのXmlXPathGetObjectNSetNode, 13

C用のXPathパッケージのXmlXPathGetObjectNSetNum, 13

C用のXPathパッケージのXmlXPathGetObjectNumber, 13

C用のXPathパッケージのXmlXPathGetObjectString, 13

C用のXPathパッケージのXmlXPathGetObjectType, 13

C用のXPathパッケージのXmlXPathParse, 13

C用のXPointerパッケージのXmlXPointerEval, 14

C用のXPointerパッケージのXmlXPtrLocGetNode, 14

C用のXPointerパッケージのXmlXPtrLocGetPoint, 14

C用のXPointerパッケージのXmlXPtrLocGetRange, 14

C用のXPointerパッケージのXmlXPtrLocGetType, 14

C用のXPointerパッケージのXmlXPtrLocSetFree, 14

C用のXPointerパッケージのXmlXPtrLocSetGetItem, 14

C用のXPointerパッケージのXmlXPtrLocSetGetLength, 14

C用のXPointerパッケージのXmlXPtrLocToString, 14

C用のXSLTパッケージのXmlXslCreate, 15

C用のXSLTパッケージのXmlXslDestroy, 15

C用のXSLTパッケージのXmlXslGetBaseURI, 15

C用のXSLTパッケージのXmlXslGetOutput, 15

C用のXSLTパッケージのXmlXslGetStylesheetDom, 15

C用のXSLTパッケージのXmlXslGetTextParam, 15

C用のXSLTパッケージのXmlXslProcess, 15

C用のXSLTパッケージのXmlXslResetAllParams, 15

C用のXSLTパッケージのXmlXslSetOutputDom, 15

C用のXSLTパッケージのXmlXslSetOutputEncoding, 15

C用のXSLTパッケージのXmlXslSetOutputMethod, 15

C用のXSLTパッケージのXmlXslSetOutputSax, 15

C用のXSLTパッケージのXmlXslSetOutputStream, 15

C用のXSLTパッケージのXmlXslSetTextParam, 15

C用のXSLTVMパッケージのXMLXVM_DEBUG_F, 16

C用のXSLTVMパッケージのXmlXvmCompileBuffer, 16

C用のXSLTVMパッケージのXmlXvmCompileDom, 16

C用のXSLTVMパッケージのXmlXvmCompileFile, 16

C用のXSLTVMパッケージのXmlXvmCompileURI, 16

C用のXSLTVMパッケージのXmlXvmCompileXPath, 16

C用のXSLTVMパッケージのXmlXvmCreate, 16

C用のXSLTVMパッケージのXmlXvmCreateComp, 16

C用のXSLTVMパッケージのXmlXvmDestroy, 16

C用のXSLTVMパッケージのXmlXvmDestroyComp, 16

C用のXSLTVMパッケージのXmlXvmEvaluateXPath, 16

C用のXSLTVMパッケージのXmlXvmGetBytecodeLength, 16

C用のXSLTVMパッケージのXmlXvmGetObjectBoolean, 16

C用のXSLTVMパッケージのXmlXvmGetObjectNSetNode, 16

C用のXSLTVMパッケージのXmlXvmGetObjectNSetNum, 16

C用のXSLTVMパッケージのXmlXvmGetObjectNumber, 16

C用のXSLTVMパッケージのXmlXvmGetObjectString, 16

C用のXSLTVMパッケージのXmlXvmGetObjectType, 16

C用のXSLTVMパッケージのXmlXvmGetOutputDom, 16

C用のXSLTVMパッケージのXmlXvmResetParams, 16

C用のXSLTVMパッケージのXmlXvmSetBaseURI, 16

C用のXSLTVMパッケージのXmlXvmSetBytecodeBuffer, 16

C用のXSLTVMパッケージのXmlXvmSetBytecodeFile, 16

C用のXSLTVMパッケージのXmlXvmSetBytecodeURI, 16

C用のXSLTVMパッケージのXmlXvmSetDebugFunc, 16

C用のXSLTVMパッケージのXmlXvmSetOutputDom, 16

C用のXSLTVMパッケージのXmlXvmSetOutputEncoding, 16

C用のXSLTVMパッケージのXmlXvmSetOutputSax, 16

C用のXSLTVMパッケージのXmlXvmSetOutputStream, 16

C用のXSLTVMパッケージのXmlXvmSetTextParam, 16

C用のXSLTVMパッケージのXmlXvmTransformBuffer, 16

C用のXSLTVMパッケージのXmlXvmTransformDom, 16

C用のXSLTVMパッケージのXmlXvmTransformFile, 16

C用のXSLTVMパッケージのXmlXvmTransformURI, 16

C用のXPath, 13

C用のXPointer, 14

C用のXSLT, 15

C用のXSLTVMパッケージ, 16

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)を参照してください。