http://www.w3.org/TR/2004/NOTE-DOM-Level-3-XPath-20040226/ git-svn-id: https://svn.apache.org/repos/asf/xml/commons/trunk@226246 13f79535-47bb-0310-9956-ffa450edef68
116 lines
4.2 KiB
Plaintext
116 lines
4.2 KiB
Plaintext
/*
|
|
* Copyright (c) 2004 World Wide Web Consortium,
|
|
*
|
|
* (Massachusetts Institute of Technology, European Research Consortium for
|
|
* Informatics and Mathematics, Keio University). All Rights Reserved. This
|
|
* work is distributed under the W3C(r) Software License [1] in the hope that
|
|
* it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
*
|
|
* [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
|
|
*/
|
|
|
|
// File: http://www.w3.org/TR/2004/NOTE-DOM-Level-3-XPath-20040226/xpath.idl
|
|
|
|
#ifndef _XPATH_IDL_
|
|
#define _XPATH_IDL_
|
|
|
|
#include "dom.idl"
|
|
|
|
#pragma prefix "dom.w3c.org"
|
|
module xpath
|
|
{
|
|
|
|
typedef dom::DOMString DOMString;
|
|
typedef dom::Node Node;
|
|
typedef dom::DOMObject DOMObject;
|
|
typedef dom::Element Element;
|
|
|
|
interface XPathNSResolver;
|
|
interface XPathExpression;
|
|
|
|
exception XPathException {
|
|
unsigned short code;
|
|
};
|
|
// XPathExceptionCode
|
|
const unsigned short INVALID_EXPRESSION_ERR = 51;
|
|
const unsigned short TYPE_ERR = 52;
|
|
|
|
|
|
interface XPathEvaluator {
|
|
XPathExpression createExpression(in DOMString expression,
|
|
in XPathNSResolver resolver)
|
|
raises(XPathException,
|
|
dom::DOMException);
|
|
XPathNSResolver createNSResolver(in Node nodeResolver);
|
|
DOMObject evaluate(in DOMString expression,
|
|
in Node contextNode,
|
|
in XPathNSResolver resolver,
|
|
in unsigned short type,
|
|
in DOMObject result)
|
|
raises(XPathException,
|
|
dom::DOMException);
|
|
};
|
|
|
|
interface XPathExpression {
|
|
DOMObject evaluate(in Node contextNode,
|
|
in unsigned short type,
|
|
in DOMObject result)
|
|
raises(XPathException,
|
|
dom::DOMException);
|
|
};
|
|
|
|
interface XPathNSResolver {
|
|
DOMString lookupNamespaceURI(in DOMString prefix);
|
|
};
|
|
|
|
interface XPathResult {
|
|
|
|
// XPathResultType
|
|
const unsigned short ANY_TYPE = 0;
|
|
const unsigned short NUMBER_TYPE = 1;
|
|
const unsigned short STRING_TYPE = 2;
|
|
const unsigned short BOOLEAN_TYPE = 3;
|
|
const unsigned short UNORDERED_NODE_ITERATOR_TYPE = 4;
|
|
const unsigned short ORDERED_NODE_ITERATOR_TYPE = 5;
|
|
const unsigned short UNORDERED_NODE_SNAPSHOT_TYPE = 6;
|
|
const unsigned short ORDERED_NODE_SNAPSHOT_TYPE = 7;
|
|
const unsigned short ANY_UNORDERED_NODE_TYPE = 8;
|
|
const unsigned short FIRST_ORDERED_NODE_TYPE = 9;
|
|
|
|
readonly attribute unsigned short resultType;
|
|
readonly attribute double numberValue;
|
|
// raises(XPathException) on retrieval
|
|
|
|
readonly attribute DOMString stringValue;
|
|
// raises(XPathException) on retrieval
|
|
|
|
readonly attribute boolean booleanValue;
|
|
// raises(XPathException) on retrieval
|
|
|
|
readonly attribute Node singleNodeValue;
|
|
// raises(XPathException) on retrieval
|
|
|
|
readonly attribute boolean invalidIteratorState;
|
|
readonly attribute unsigned long snapshotLength;
|
|
// raises(XPathException) on retrieval
|
|
|
|
Node iterateNext()
|
|
raises(XPathException,
|
|
dom::DOMException);
|
|
Node snapshotItem(in unsigned long index)
|
|
raises(XPathException);
|
|
};
|
|
|
|
interface XPathNamespace : Node {
|
|
|
|
// XPathNodeType
|
|
const unsigned short XPATH_NAMESPACE_NODE = 13;
|
|
|
|
readonly attribute Element ownerElement;
|
|
};
|
|
};
|
|
|
|
#endif // _XPATH_IDL_
|
|
|