2007-03-22 10:30:00 -07:00
|
|
|
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
2012-05-21 04:12:37 -07:00
|
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
2007-03-22 10:30:00 -07:00
|
|
|
|
|
|
|
#include "domstubs.idl"
|
|
|
|
|
2011-06-14 00:56:48 -07:00
|
|
|
interface nsIVariant;
|
|
|
|
interface nsIDOMUserDataHandler;
|
|
|
|
|
2007-03-22 10:30:00 -07:00
|
|
|
/**
|
|
|
|
* The nsIDOMNode interface is the primary datatype for the entire
|
|
|
|
* Document Object Model.
|
|
|
|
* It represents a single node in the document tree.
|
|
|
|
*
|
|
|
|
* For more information on this interface please see
|
2011-04-11 04:06:18 -07:00
|
|
|
* http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html
|
2007-03-22 10:30:00 -07:00
|
|
|
*/
|
|
|
|
|
2012-02-23 05:23:30 -08:00
|
|
|
[scriptable, uuid(5e9bcec9-5928-4f77-8a9c-424ef01c20e1)]
|
2007-03-22 10:30:00 -07:00
|
|
|
interface nsIDOMNode : nsISupports
|
|
|
|
{
|
|
|
|
const unsigned short ELEMENT_NODE = 1;
|
|
|
|
const unsigned short ATTRIBUTE_NODE = 2;
|
|
|
|
const unsigned short TEXT_NODE = 3;
|
|
|
|
const unsigned short CDATA_SECTION_NODE = 4;
|
|
|
|
const unsigned short ENTITY_REFERENCE_NODE = 5;
|
|
|
|
const unsigned short ENTITY_NODE = 6;
|
|
|
|
const unsigned short PROCESSING_INSTRUCTION_NODE = 7;
|
|
|
|
const unsigned short COMMENT_NODE = 8;
|
|
|
|
const unsigned short DOCUMENT_NODE = 9;
|
|
|
|
const unsigned short DOCUMENT_TYPE_NODE = 10;
|
|
|
|
const unsigned short DOCUMENT_FRAGMENT_NODE = 11;
|
|
|
|
const unsigned short NOTATION_NODE = 12;
|
|
|
|
|
|
|
|
readonly attribute DOMString nodeName;
|
|
|
|
attribute DOMString nodeValue;
|
|
|
|
// raises(DOMException) on setting
|
|
|
|
// raises(DOMException) on retrieval
|
|
|
|
readonly attribute unsigned short nodeType;
|
|
|
|
readonly attribute nsIDOMNode parentNode;
|
2011-09-11 15:45:39 -07:00
|
|
|
readonly attribute nsIDOMElement parentElement;
|
2007-03-22 10:30:00 -07:00
|
|
|
readonly attribute nsIDOMNodeList childNodes;
|
|
|
|
readonly attribute nsIDOMNode firstChild;
|
|
|
|
readonly attribute nsIDOMNode lastChild;
|
|
|
|
readonly attribute nsIDOMNode previousSibling;
|
|
|
|
readonly attribute nsIDOMNode nextSibling;
|
|
|
|
readonly attribute nsIDOMNamedNodeMap attributes;
|
|
|
|
// Modified in DOM Level 2:
|
|
|
|
readonly attribute nsIDOMDocument ownerDocument;
|
|
|
|
nsIDOMNode insertBefore(in nsIDOMNode newChild,
|
|
|
|
in nsIDOMNode refChild)
|
|
|
|
raises(DOMException);
|
|
|
|
nsIDOMNode replaceChild(in nsIDOMNode newChild,
|
|
|
|
in nsIDOMNode oldChild)
|
|
|
|
raises(DOMException);
|
|
|
|
nsIDOMNode removeChild(in nsIDOMNode oldChild)
|
|
|
|
raises(DOMException);
|
|
|
|
nsIDOMNode appendChild(in nsIDOMNode newChild)
|
|
|
|
raises(DOMException);
|
|
|
|
boolean hasChildNodes();
|
2012-02-23 05:23:30 -08:00
|
|
|
// Modified in DOM Level 4:
|
|
|
|
[optional_argc] nsIDOMNode cloneNode([optional] in boolean deep);
|
2007-03-22 10:30:00 -07:00
|
|
|
// Modified in DOM Level 2:
|
|
|
|
void normalize();
|
|
|
|
// Introduced in DOM Level 2:
|
|
|
|
boolean isSupported(in DOMString feature,
|
|
|
|
in DOMString version);
|
|
|
|
// Introduced in DOM Level 2:
|
|
|
|
readonly attribute DOMString namespaceURI;
|
2011-04-11 04:06:18 -07:00
|
|
|
// Modified in DOM Core
|
|
|
|
readonly attribute DOMString prefix;
|
2007-03-22 10:30:00 -07:00
|
|
|
|
|
|
|
// Introduced in DOM Level 2:
|
|
|
|
readonly attribute DOMString localName;
|
|
|
|
// Introduced in DOM Level 2:
|
|
|
|
boolean hasAttributes();
|
2011-06-14 00:56:48 -07:00
|
|
|
|
|
|
|
// Introduced in DOM Level 3:
|
|
|
|
// This uses a binaryname to avoid warnings due to name collision with
|
|
|
|
// nsINode::GetBaseURI
|
|
|
|
[binaryname(DOMBaseURI)] readonly attribute DOMString baseURI;
|
|
|
|
|
|
|
|
// DocumentPosition
|
|
|
|
const unsigned short DOCUMENT_POSITION_DISCONNECTED = 0x01;
|
|
|
|
const unsigned short DOCUMENT_POSITION_PRECEDING = 0x02;
|
|
|
|
const unsigned short DOCUMENT_POSITION_FOLLOWING = 0x04;
|
|
|
|
const unsigned short DOCUMENT_POSITION_CONTAINS = 0x08;
|
|
|
|
const unsigned short DOCUMENT_POSITION_CONTAINED_BY = 0x10;
|
|
|
|
const unsigned short DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 0x20;
|
|
|
|
|
|
|
|
// Introduced in DOM Level 3:
|
|
|
|
unsigned short compareDocumentPosition(in nsIDOMNode other)
|
|
|
|
raises(DOMException);
|
|
|
|
// Introduced in DOM Level 3:
|
|
|
|
attribute DOMString textContent;
|
|
|
|
// raises(DOMException) on setting
|
|
|
|
// raises(DOMException) on retrieval
|
|
|
|
|
|
|
|
// Introduced in DOM Level 3:
|
|
|
|
DOMString lookupPrefix(in DOMString namespaceURI);
|
|
|
|
// Introduced in DOM Level 3:
|
|
|
|
boolean isDefaultNamespace(in DOMString namespaceURI);
|
|
|
|
// Introduced in DOM Level 3:
|
|
|
|
DOMString lookupNamespaceURI(in DOMString prefix);
|
|
|
|
// Introduced in DOM Level 3:
|
|
|
|
boolean isEqualNode(in nsIDOMNode arg);
|
|
|
|
// Introduced in DOM Level 3:
|
|
|
|
nsIVariant setUserData(in DOMString key,
|
|
|
|
in nsIVariant data,
|
|
|
|
in nsIDOMUserDataHandler handler);
|
|
|
|
// Introduced in DOM Level 3:
|
|
|
|
nsIVariant getUserData(in DOMString key);
|
2011-09-02 13:15:53 -07:00
|
|
|
|
|
|
|
boolean contains(in nsIDOMNode aOther);
|
2007-03-22 10:30:00 -07:00
|
|
|
};
|