D
(3) XYZWQ -->
YZ
(4)
ABCD
--> BC
It is important to note that nodes that are partially selected by the range
are cloned. Since part of such a node's contents must remain in the original
document (or document fragment) and part of the contents must be moved to
the new fragment, a clone of the partially selected node is brought along to
the new fragment. Note that cloning does not take place for selected
elements; these nodes are moved to the new fragment.
7.8. Cloning Content
The contents of a range may be duplicated using the following method:
DocumentFragment cloneContents();
This method returns a document fragment that is similar to the one returned
by the method extractContents(). However, in this case, the original nodes
and text content in the range are not deleted from the original document.
Instead, all of the nodes and text content within the returned document
fragment are cloned.
7.9. Inserting Content
A node may be inserted into a range using the following method:
void insertNode(in Node n);
The insertNode() method inserts the specified node into the document or
document fragment in which the range resides. For this method, the end of
the range is ignored and the node is inserted at the start of the range.
The Node passed into this method can be a DocumentFragment. In that case,
the contents of the fragment are inserted at the start position of the
range, but the fragment itself is not. Note that if the Node represents the
root of a sub-tree, the entire sub-tree is inserted.
Note that the same rules that apply to the insertBefore() method on the Node
interface apply here. Specifically, the Node passed in will be removed from
its existing position in the same document or another fragment.
7.10. Surrounding Content
The insertion of a single node to subsume the content selected by range can
be performed with:
void surroundContents(in Node n);
The surroundContents member differs from insertNode() in that
surroundContents() causes all of the content selected by the range to become
content of node, whereas insertNode() splices in existing content at the
given point in the document.
For example, calling surroundContents() with the node FOO yields:
Before:
ABCDE
After surroundContents ( FOO ):
ABCDE
Another way of of describing the effect of this member on the document or
fragment tree is to decompose it in terms of other operations:
1. Remove the contents selected by the range with a call to
extractContents().
2. Insert node where the range is now collapsed (after the extraction)
with insertNode()
3. Insert the entire contents of the extracted contents into node.
4. Select node and all of its contents with selectNode().
Because inserting a node in such a manner will be a common operation,
surroundContents() is provided to avoid the overhead of these four steps.
The surroundContents() method raises an exception if the range partially
selects a non-Text node. An example of a range for which surroundContents()
raises an exception is:
ABCDE
If node has any children, those children are removed before its insertion.
Also, if node is part of any existing content, it is also removed from that
content before insertion.
7.11. Miscellaneous Members
One can clone a Range:
Range cloneRange();
This creates a new Range which selects exactly the same content of the Range
on which it was called. No content is affected by this operation.
Because the end-points of a range do not necessarily have the same
containers, use:
readonly attribute Node commonAncestorContainer;
to get the deepest node that is an ancestor container of both end-points.
One can get a copy of all the text nodes selected or partially selected by a
range with:
DOMString toString();
This does nothing more than simply concatenate all the characters selected
by the range.
7.12. Range modification under document mutation
As a document is mutated, the Ranges within the document need to be updated.
For example, if one end-point of a Range is within a node and that node is
removed from the document, then the Range would be invalid unless it is
fixed up in some way. This section describes how Ranges are modified under
document mutations so that they remain valid.
There are two general principles which apply to Ranges under document
mutation: The first is that all Ranges in a document will remain valid after
any mutation operation and the second is that, loosely speaking, all Ranges
will select the same portion of the document after any mutation operation,
where that is possible.
Any mutation of the document tree which affect Ranges can be considered to
be a combination of basic delete and insertion operations. In fact, it can
be convenient to think of those operations as being accomplished using the
deleteContents() and insertNode() Range methods.
7.12.1. Insertions
An insertion occurs at a single point, the insertion point, in the document.
For any Range in the document tree, consider each end-point. The only case
in which the end-point will be changed after the insertion is when the
end-point and the insertion point have the same container and the offset of
the insertion point is strictly less than the offset of the Range's
end-point. In that case the offset of the Range's end-point will be
increased so that it is between the same nodes or characters as it was
before the insertion.
Note that when content is inserted at an end-point, it is ambiguous as to
where the end-point should be repositioned if its relative position is to be
maintained.
This is not the same as the principle, given above, of having the Range
select the same content, although often the Range ends up selecting the same
content.There are two possibilities: at the start or at the end of the newly
inserted content. We have chosen that in this case neither the container nor
offset of the end-point is changed. As a result, it will be positioned at
the start of the newly inserted content.
Examples:
Suppose the Range selects the following:
Abcd efgh XY blah ijkl
Consider the insertion of the text "inserted text" at the following
positions:
1. Before the 'X':
Abcd efgh inserted textXY blah ijkl
2. After the 'X':
Abcd efgh Xinserted textY blah ijkl
3. After the 'Y':
Abcd efgh XYinserted text blah ijkl
4. After the 'h' in "Y blah":
Abcd efgh XY blahinserted text ijkl
7.12.2. Deletions
Any deletion from the document tree can be considered as a sequence of
deleteContents() operations applied to a minimal set of disjoint Ranges. To
specify how a Range is modified under deletions we need only to consider
what happens to a Range only under a single deleteContents() operation of
another Range. And, in fact, we need only to consider what happens to a
single end-point of the Range since both end-points are modified using the
same algorithm.
If an end-point is within the content being deleted, then after the deletion
it will be at the same position as the one common to the end-points of the
Range used to delete the contents.
If an end-point is after the content being deleted then it is not affected
by the deletion unless its container is also the container of one of the
end-points of the range being deleted. If there is such a common container,
then the index of the end-point is modified so that the end-point maintains
its position relative to the content of the container.
If an end-point is before the content being deleted then it is not affected
by the deletion at all.
Examples:
In these examples, the Range on which deleteContents() is invoked is
indicated by the underline.
Example 1.
Before:
Abcd efgh The Range
ijkl
After:
Abcd Range ijkl
Example 2.
Before:
Abcd efgh The Range ijkl
After:
Abcd ^kl
Example 3.
Before:
ABCD efgh TheRange ijkl
After:
ABCD ange ijkl
Example 4.
Before:
Abcd efgh The Range ijkl
After:
Abcd he Range ijkl
Example 5.
Before:
Abcd efgh The Rangeijkl
After:
Abcd ^kl
7.13. Formal Description of the Range Interface
To summarize, the complete, formal description of the Range interface is
given below:
Interface Range
IDL Definition
interface Range {
readonly attribute Node startContainer;
readonly attribute long startOffset;
readonly attribute Node endContainer;
readonly attribute long endOffset;
readonly attribute boolean isCollapsed;
readonly attribute Node commonAncestorContainer;
void setStart(in Node node,
in long offset)
raises(RangeException);
void setEnd(in Node node,
in long offset)
raises(RangeException);
void setStartBefore(in Node node)
raises(RangeException);
void setStartAfter(in Node node)
raises(RangeException);
void setEndBefore(in Node node)
raises(RangeException);
void setEndAfter(in Node node)
raises(RangeException);
void collapse(in boolean toStart);
void selectNode(in Node node)
raises(RangeException);
void selectNodeContents(in Node node)
raises(RangeException);
typedef enum CompareHow_ {
StartToStart,
StartToEnd,
EndToEnd,
EndToStart
} CompareHow;
short compareEndPoints(in CompareHow how,
in Range sourceRange)
raises(DOMException);
void deleteContents()
raises(DOMException);
DocumentFragment extractContents()
raises(DOMException);
DocumentFragment cloneContents()
raises(DOMException);
void insertNode(in Node node)
raises(DOMException, RangeException);
void surroundContents(in Node node)
raises(DOMException, RangeException);
Range cloneRange();
DOMString toString();
};
Attributes
startContainer
Node within which the range begins
startOffset
Offset within the starting node of the range.
endContainer
Node within which the range ends
endOffset
Offset within the ending node of the range.
isCollapsed
TRUE if the range is collapsed
commonAncestorContainer
The common ancestor container of the range's two end-points.
Type Definition CompareHow
Enumeration CompareHow_
Enumerator Values
StartToStart
StartToEnd
EndToEnd
EndToStart
Methods
setStart
Sets the attributes describing the start of therange.
Parameters
node The startNode value. Thisparameter must be
non-null.
offset The startOffset value.
Exceptions
RangeException
NULL_NODE_ERR: Raised if nodeis null.
INVALID_NODE_TYPE_ERR: Raised ifnode or an ancestor
of node is anAttr, Entity, Notation, or
DocumentType node.
If an offset is out-of-bounds, shouldit just be
fixed up or should an exception be raised.
This method returns nothing.
setEnd
Sets the attributes describing the end of a range.
Parameters
node The endNode value. Thisparameter must be
non-null.
offset The endOffset value.
Exceptions
RangeException
NULL_NODE_ERR: Raised if nodeis null.
INVALID_NODE_TYPE_ERR: Raised ifnode or an ancestor
of node is anAttr, Entity, Notation, or
DocumentType node.
This method returns nothing.
setStartBefore
Sets the start position to be before a node
Parameters
node Range starts before node
Exceptions
RangeException
INVALID_NODE_TYPE_ERR: Raised if an ancestorof node
is an Attr, Entity,Notation, or DocumentType node
or if node is a Document,DocumentFragment, Attr,
Entity, or Notation node.
This method returns nothing.
setStartAfter
Sets the start position to be after a node
Parameters
node Range starts after node
Exceptions
RangeException
INVALID_NODE_TYPE_ERR: Raised if an ancestorof node
is an Attr, Entity,Notation, or DocumentType node
or if node is a Document,DocumentFragment, Attr,
Entity, or Notation node.
This method returns nothing.
setEndBefore
Sets the end position to be before a node.
Parameters
node Range ends before node
Exceptions
RangeException
INVALID_NODE_TYPE_ERR: Raised if an ancestorof node
is an Attr, Entity,Notation, or DocumentType node
or if node is a Document,DocumentFragment, Attr,
Entity, or Notation node.
This method returns nothing.
setEndAfter
Sets the end of a range to be after a node
Parameters
node Range ends after node.
Exceptions
RangeException
INVALID_NODE_TYPE_ERR: Raised if an ancestorof node
is an Attr, Entity,Notation or DocumentType node or
if node is a Document,DocumentFragment, Attr,
Entity, or Notation node.
This method returns nothing.
collapse
Collapse a range onto one of its end-points
Parameters
toStart If TRUE, collapses the Range onto its start;if
FALSE, collapses it onto its end.
This method returns nothing.
This method raises no exceptions.
selectNode
Select a node and its contents
Parameters
node The node to select.
Exceptions
RangeException
INVALID_NODE_TYPE_ERR: Raised if an ancestorof node
is an Attr, Entity,Notation or DocumentType node or
if node is a Document,DocumentFragment, Attr,
Entity, or Notation node.
This method returns nothing.
selectNodeContents
Select the contents within a node
Parameters
node Node to select from
Exceptions
RangeException
INVALID_NODE_TYPE_ERR: Raised ifnode or an ancestor
of node is anAttr, Entity, Notation or DocumentType
node.
This method returns nothing.
compareEndPoints
Compare the end-points of two ranges in a document.
Parameters
how
sourceRange
Return Value
-1, 0 or 1 depending on whether the
correspondingend-point of the Range is before, equal to,
or after thecorresponding end-point of sourceRange.
Exceptions
DOMException
WRONG_DOCUMENT_ERR: Raised if the two Rangesare not
in the same document or document fragment.
deleteContents
Removes the contents of a range from the containingdocument
or document fragment without returning a reference to
theremoved content.
Exceptions
DOMException
NO_MODIFICATION_ALLOWED_ERR: Raised if anyportion
of the content of the range is read-only or anyof
the nodes that contain any of the content of the
range areread-only.
This method has no parameters.
This method returns nothing.
extractContents
Moves the contents of a range from the containingdocument or
document fragment to a new DocumentFragment.
Return Value
A DocumentFragment containing the extractedcontents.
Exceptions
DOMException
NO_MODIFICATION_ALLOWED_ERR: Raised if anyportion
of the content of the range is read-only or anyof
the nodes which contain any of the content of the
range are read-only.
HIERARCHY_REQUEST_ERR: Raised if aDocumentType node
would be extracted into the newDocumentFragment.
This method has no parameters.
cloneContents
Duplicates the contents of a range
Return Value
A DocumentFragment containing contents equivalentto
those of this range.
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if aDocumentType node
would be extracted into the newDocumentFragment.
This method has no parameters.
insertNode
Inserts a node into the document or document fragmentat the
start of the range.
Parameters
node The node to insert at the start of therange
Exceptions
DOMException
NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor
container of the start of the range is read-only.
WRONG_DOCUMENT_ERR: Raised ifnode and the container
of the start of the Range were not created from the
same document.
HIERARCHY_REQUEST_ERR: Raised if the container of
the start of the Range is of a type that does not
allow children ofthe type of node or if node is an
ancestor of thecontainer.
RangeException
INVALID_NODE_TYPE_ERR: Raised ifnode is an Attr,
Entity, Notation,DocumentFragment, or Document
node.
This method returns nothing.
surroundContents
Reparents the contents of the range to the given nodeand
inserts the node at the position of the start of therange.
Parameters
node The node to surround the contents with.
Exceptions
DOMException
NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor
container of either end-point of the range is
read-only.
WRONG_DOCUMENT_ERR: Raised ifnode and the container
of the start of the Range were not created from the
same document.
HIERARCHY_REQUEST_ERR: Raised if the container of
the start of the Range is of a type that does not
allow children ofthe type of node or if node is an
ancestor of thecontaineror if node would end up
with a child node of a type not allowedby the type
of node.
RangeException
BAD_ENDPOINTS_ERR: Raised if the range partially
selects a non-text node.
INVALID_NODE_TYPE_ERR: Raised ifnode is an Attr,
Entity, DocumentType, Notation,Document, or
DocumentFragment node.
This method returns nothing.
cloneRange
Produces a new range whose end-points are equal tothe
end-points of the range.
Return Value
The duplicated range.
This method has no parameters.
This method raises no exceptions.
toString
Returns the contents of a range as a string.
Return Value
The contents of the range.
This method has no parameters.
This method raises no exceptions.
Exception RangeException
The Range object needs additional exception codes to thosein DOM Level
1. These codes will need to be consolidated withother exception codes
added to DOM Level 2.
IDL Definition
exception RangeException {
unsigned short code;
};
// RangeExceptionCode
const unsigned short BAD_ENDPOINTS_ERR = 201;
const unsigned short INVALID_NODE_TYPE_ERR = 202;
const unsigned short NULL_NODE_ERR = 203;
Definition group RangeExceptionCode
An integer indicating the type of error generated.
Defined Constants
BAD_ENDPOINTS_ERR If the end-points of a range do not
meet specific requirements.
If the container of an end-point of a
INVALID_NODE_TYPE_ERR range is being set to either a node
ofan invalid type or a node with an
ancestor of an invalid type.
NULL_NODE_ERR If the container of an end-point of a
range is being set to null.
Appendix A: Contributors
Members of the DOM Working Group and Interest Group contributing to this
specification were:
Lauren Wood, SoftQuad Software Inc., chair
Arnaud Le Hors, W3C, W3C staff contact
Andy Heninger, IBM
Bill Smith, Sun
Bill Shea, Merrill Lynch
Bob Sutor, IBM
Chris Wilson, Microsoft
David Brownell, Sun
Don Park, Docuverse
Eric Vasilik, Microsoft
Gavin Nicol, INSO
Jared Sorensen, Novell
Joe Kesselman, IBM
Joe Lapp, webMethods
Jonathan Robie, Software AG
Mike Champion, Software AG
Peter Sharpe, SoftQuad Software Inc.
Philippe Le Hégaret, W3C
Ramesh Lekshmynarayanan, Merrill Lynch
Ray Whitmer, iMall
Rich Rollman, Microsoft
Tom Pixley, Netscape
Vidur Apparao, Netscape
Appendix B: Glossary
Editors
Robert S. Sutor, IBM Research
Several of the following term definitions have been borrowed or modified
from similar definitions in other W3C or standards documents. See the links
within the definitions for more information.
ancestor
An ancestor node of any node A is any node above A in a tree model of a
document, where "above" means "toward the root."
API
An API is an application programming interface, a set of functions or
methods used to access some functionality.
child
A child is an immediate descendant node of a node.
client application
A [client] application is any software that uses the Document Object
Model programming interfaces provided by the hosting implementation to
accomplish useful work. Some examples of client applications are
scripts within an HTML or XML document.
COM
COM is Microsoft's Component Object Model, a technology for building
applications from binary software components.
content model
The content model is a simple grammar governing the allowed types of
the child elements and the order in which they appear. See [XML]
context
A context specifies an access pattern (or path): a set of interfaces
which give you a way to interact with a model. For example, imagine a
model with different colored arcs connecting data nodes. A context
might be a sheet of colored acetate that is placed over the model
allowing you a partial view of the total information in the model.
convenience
A convenience method is an operation on an object that could be
accomplished by a program consisting of more basic operations on the
object. Convenience methods are usually provided to make the API easier
and simpler to use or to allow specific programs to create more
optimized implementations for common operations. A similar definition
holds for a convenience property.
cooked model
A model for a document that represents the document after it has been
manipulated in some way. For example, any combination of any of the
following transformations would create a cooked model:
1. Expansion of internal text entities.
2. Expansion of external entities.
3. Model augmentation with style-specified generated text.
4. Execution of style-specified reordering.
5. Execution of scripts.
A browser might only be able to provide access to a cooked model, while
an editor might provide access to a cooked or the initial structure
model (also known as the uncooked model) for a document.
CORBA
CORBA is the Common Object Request Broker Architecture from the OMG.
This architecture is a collection of objects and libraries that allow
the creation of applications containing objects that make and receive
requests and responses in a distributed environment.
cursor
A cursor is an object representation of a node. It may possess
information about context and the path traversed to reach the node.
data model
A data model is a collection of descriptions of data structures and
their contained fields, together with the operations or functions that
manipulate them.
deprecation
When new releases of specifications are released, some older features
may be marked as being deprecated. This means that new work should not
use the features and that although they are supported in the current
release, they may not be supported or available in future releases.
descendant
A descendant node of any node A is any node below A in a tree model of
a document, where "above" means "toward the root."
ECMAScript
The programming language defined by the ECMA-262 standard. As stated in
the standard, the originating technology for ECMAScript was JavaScript.
Note that in the ECMAScript binding, the word "property" is used in the
same sense as the IDL term "attribute."
element
Each document contains one or more elements, the boundaries of which
are either delimited by start-tags and end-tags, or, for empty elements
by an empty-element tag. Each element has a type, identified by name,
and may have a set of attributes. Each attribute has a name and a
value. [XML]
event propagation, also known as event bubbling
This is the idea that an event can affect one object and a set of
related objects. Any of the potentially affected objects can block the
event or substitute a different one (upward event propagation). The
event is broadcast from the node at which it originates to every parent
node.
equivalence
Two nodes are equivalent if they have the same node type and same node
name. Also, if the nodes contain data, that must be the same. Finally,
if the nodes have attributes then collection of attribute names must be
the same and the attributes corresponding by name must be equivalent as
nodes. Two nodes are deeply equivalent if they are equivalent, the
child node lists are equivalent are equivalent as NodeList objects, and
the pairs of equivalent attributes must in fact be deeply equivalent.
Two NodeList objects are equivalent if they have the same length, and
the nodes corresponding by index are deeply equivalent. Two
NamedNodeMap objects are equivalent if they are have the same length,
they have same collection of names, and the nodes corresponding by name
in the maps are deeply equivalent. Two DocumentType nodes are
equivalent if they are equivalent as nodes, have the same names, and
have equivalent entities and attributes NamedNodeMap objects.
hosting implementation
A [hosting] implementation is a software module that provides an
implementation of the DOM interfaces so that a client application can
use them. Some examples of hosting implementations are browsers,
editors and document repositories.
HTML
The HyperText Markup Language (HTML) is a simple markup language used
to create hypertext documents that are portable from one platform to
another. HTML documents are SGML documents with generic semantics that
are appropriate for representing information from a wide range of
applications. [HTML 3.2] [HTML4.0]
IDL
An Interface Definition Language (IDL) is used to define the interfaces
for accessing and operating upon objects. Examples of IDLs are the
Object Management Group's IDL, Microsoft's IDL, and Sun's Java IDL.
implementor
Companies, organizations, and individuals that claim to support the
Document Object Model as an API for their products.
inheritance
In object-oriented programming, the ability to create new classes (or
interfaces) that contain all the methods and properties of another
class (or interface), plus additional methods and properties. If class
(or interface) D inherits from class (or interface) B, then D is said
to be derived from B. B is said to be a base class (or interface) for
D. Some programming languages allow for multiple inheritance, that is,
inheritance from more than one class or interface.
initial structure model
Also known as the raw structure model or the uncooked model, this
represents the document before it has been modified by entity
expansions, generated text, style-specified reordering, or the
execution of scripts. In some implementations, this might correspond to
the "initial parse tree" for the document, if it ever exists. Note that
a given implementation might not be able to provide access to the
initial structure model for a document, though an editor probably
would.
interface
An interface is a declaration of a set of methods with no information
given about their implementation. In object systems that support
interfaces and inheritance, interfaces can usually inherit from one
another.
language binding
A programming language binding for an IDL specification is an
implementation of the interfaces in the specification for the given
language. For example, a Java language binding for the Document Object
Model IDL specification would implement the concrete Java classes that
provide the functionality exposed by the interfaces.
method
A method is an operation or function that is associated with an object
and is allowed to manipulate the object's data.
model
A model is the actual data representation for the information at hand.
Examples are the structural model and the style model representing the
parse structure and the style information associated with a document.
The model might be a tree, or a directed graph, or something else.
object model
An object model is a collection of descriptions of classes or
interfaces, together with their member data, member functions, and
class-static operations.
parent
A parent is an immediate ancestor node of a node.
root node
The root node is the unique node that is not a child of any other node.
All other nodes are children or other descendents of the root node.
[XML]
sibling
Two nodes are siblings if they have the same parent node.
string comparison
When string matching is required, it is to occur as though the
comparison was between 2 sequences of code points from the Unicode 2.0
standard.
tag valid document
A document is tag valid if all begin and end tags are properly balanced
and nested.
type valid document
A document is type valid if it conforms to an explicit DTD.
uncooked model
See initial structure model.
well-formed document
A document is well-formed if it is tag valid and entities are limited
to single elements (i.e., single sub-trees).
XML
Extensible Markup Language (XML) is an extremely simple dialect of SGML
which is completely described in this document. The goal is to enable
generic SGML to be served, received, and processed on the Web in the
way that is now possible with HTML. XML has been designed for ease of
implementation and for interoperability with both SGML and HTML. [XML]
Appendix C: IDL Definitions
This appendix contains the complete OMG IDL for the Level 2 Document Object
Model definitions. The definitions are divided into Core, Namespaces,
Stylesheets, CSS, Events, Filters and Iterators, and Range.
The IDL files are also available as:
http://www.w3.org/TR/1999/WD-DOM-Level-2-19990719/idl.zip
C.1: Document Object Model Level 2 Core
dom2.idl:
// File: dom2.idl
#ifndef _DOM2_IDL_
#define _DOM2_IDL_
#include "dom.idl"
#pragma prefix "dom.w3c.org"
module dom2
{
typedef dom::DocumentType DocumentType;
typedef dom::DOMString DOMString;
typedef dom::DOMImplementation DOMImplementation;
typedef dom::Document Document;
typedef dom::Node Node;
typedef dom::Attr Attr;
typedef dom::Element Element;
typedef dom::HTMLDocument HTMLDocument;
interface DocumentType2 : DocumentType {
readonly attribute DOMString publicID;
readonly attribute DOMString systemID;
};
interface DOMImplementation2 : DOMImplementation {
DocumentType createDocumentType(in DOMString name,
in DOMString publicID,
in DOMString systemID)
raises(DOMException);
Document createDocument(in DOMString name,
in DocumentType doctype)
raises(DOMException);
};
interface Document2 : Document {
Node importNode(in Node importedNode,
in boolean deep);
};
interface Node2 : Node {
boolean supports(in DOMString feature,
in DOMString version);
};
interface Attr2 : Attr {
readonly attribute Element ownerElement;
};
interface HTMLDOMImplementation : DOMImplementation {
HTMLDocument createHTMLDocument(in DOMString title);
};
};
#endif // _DOM2_IDL_
C.2: Document Object Model Level 2 Namespaces
namespaces.idl:
// File: namespaces.idl
#ifndef _NAMESPACES_IDL_
#define _NAMESPACES_IDL_
#include "dom.idl"
#include "dom2.idl"
#pragma prefix "dom.w3c.org"
module namespaces
{
typedef dom dom2::DOMString DOMString;
typedef dom dom2::Element Element;
typedef dom dom2::Attr Attr;
typedef dom dom2::NodeList NodeList;
interface NodeNS {
readonly attribute DOMString namespaceName;
attribute DOMString prefix;
// raises(DOMException) on setting
readonly attribute DOMString localName;
};
interface DocumentNS {
Element createElementNS(in DOMString namespaceName,
in DOMString qualifiedName)
raises(DOMException);
Attr createAttributeNS(in DOMString namespaceName,
in DOMString qualifiedName)
raises(DOMException);
NodeList getElementsByTagNameNS(in DOMString namespaceName,
in DOMString localName);
};
interface ElementNS {
DOMString getAttributeNS(in DOMString namespaceName,
in DOMString localName);
void setAttributeNS(in DOMString namespaceName,
in DOMString localName,
in DOMString value)
raises(DOMException);
void removeAttributeNS(in DOMString namespaceName,
in DOMString localName)
raises(DOMException);
Attr getAttributeNodeNS(in DOMString namespaceName,
in DOMString localName);
Attr setAttributeNodeNS(in Attr newAttr)
raises(DOMException);
NodeList getElementsByTagNameNS(in DOMString namespaceName,
in DOMString localName);
};
interface NodeNS {
readonly attribute DOMString universalName;
readonly attribute DOMString namespaceName;
attribute DOMString prefix;
// raises(DOMException) on setting
readonly attribute DOMString localName;
};
};
#endif // _NAMESPACES_IDL_
C.3: Document Object Model Level 2 Stylesheets
stylesheets.idl:
// File: stylesheets.idl
#ifndef _STYLESHEETS_IDL_
#define _STYLESHEETS_IDL_
#include "dom.idl"
#pragma prefix "dom.w3c.org"
module stylesheets
{
typedef dom::DOMString DOMString;
typedef dom::Node Node;
interface MediaList;
interface StyleSheet {
readonly attribute DOMString type;
attribute boolean disabled;
readonly attribute Node ownerNode;
readonly attribute StyleSheet parentStyleSheet;
readonly attribute DOMString href;
readonly attribute DOMString title;
readonly attribute MediaList media;
};
interface StyleSheetList {
readonly attribute unsigned long length;
StyleSheet item(in unsigned long index);
};
interface MediaList {
attribute DOMString cssText;
// raises(DOMException) on setting
readonly attribute unsigned long length;
DOMString item(in unsigned long index);
void delete(in DOMString oldMedium)
raises(DOMException);
void append(in DOMString newMedium)
raises(DOMException);
};
interface DocumentStyle {
readonly attribute StyleSheetList styleSheets;
};
};
#endif // _STYLESHEETS_IDL_
C.4: Document Object Model Level 2 CSS
css.idl:
// File: css.idl
#ifndef _CSS_IDL_
#define _CSS_IDL_
#include "dom.idl"
#include "stylesheets.idl"
#pragma prefix "dom.w3c.org"
module css
{
typedef dom stylesheets::DOMString DOMString;
typedef dom stylesheets::MediaList MediaList;
typedef dom stylesheets::float float;
typedef dom stylesheets::StyleSheet StyleSheet;
interface CSSRule;
interface CSSStyleSheet;
interface CSSStyleDeclaration;
interface CSSValue;
interface Counter;
interface Rect;
interface RGBColor;
interface CSSRuleList {
readonly attribute unsigned long length;
CSSRule item(in unsigned long index);
};
interface CSSRule {
// RuleType
const unsigned short UNKNOWN_RULE = 0;
const unsigned short STYLE_RULE = 1;
const unsigned short CHARSET_RULE = 2;
const unsigned short IMPORT_RULE = 3;
const unsigned short MEDIA_RULE = 4;
const unsigned short FONT_FACE_RULE = 5;
const unsigned short PAGE_RULE = 6;
readonly attribute unsigned short type;
attribute DOMString cssText;
// raises(DOMException) on setting
readonly attribute CSSStyleSheet parentStyleSheet;
readonly attribute CSSRule parentRule;
};
interface CSSStyleRule : CSSRule {
attribute DOMString selectorText;
// raises(DOMException) on setting
readonly attribute CSSStyleDeclaration style;
};
interface CSSMediaRule : CSSRule {
readonly attribute MediaList media;
readonly attribute CSSRuleList cssRules;
unsigned long insertRule(in DOMString rule,
in unsigned long index)
raises(DOMException);
void deleteRule(in unsigned long index)
raises(DOMException);
};
interface CSSFontFaceRule : CSSRule {
readonly attribute CSSStyleDeclaration style;
};
interface CSSPageRule : CSSRule {
attribute DOMString selectorText;
// raises(DOMException) on setting
readonly attribute CSSStyleDeclaration style;
};
interface CSSImportRule : CSSRule {
readonly attribute DOMString href;
readonly attribute MediaList media;
readonly attribute CSSStyleSheet styleSheet;
};
interface CSSCharsetRule : CSSRule {
attribute DOMString encoding;
// raises(DOMException) on setting
};
interface CSSUnknownRule : CSSRule {
};
interface CSSStyleDeclaration {
attribute DOMString cssText;
// raises(DOMException) on setting
DOMString getPropertyValue(in DOMString propertyName);
CSSValue getPropertyCSSValue(in DOMString propertyName);
DOMString removeProperty(in DOMString propertyName)
raises(DOMException);
DOMString getPropertyPriority(in DOMString propertyName);
void setProperty(in DOMString propertyName,
in DOMString value,
in DOMString priority)
raises(DOMException);
readonly attribute unsigned long length;
DOMString item(in unsigned long index);
readonly attribute CSSRule parentRule;
};
interface CSSValue {
// UnitTypes
const unsigned short CSS_PRIMITIVE_VALUE = 0;
const unsigned short CSS_VALUE_LIST = 1;
const unsigned short CSS_CUSTOM = 2;
attribute DOMString cssText;
// raises(DOMException) on setting
readonly attribute unsigned short valueType;
};
interface CSSPrimitiveValue : CSSValue {
// UnitTypes
const unsigned short CSS_UNKNOWN = 0;
const unsigned short CSS_INHERIT = 1;
const unsigned short CSS_NUMBER = 2;
const unsigned short CSS_PERCENTAGE = 3;
const unsigned short CSS_EMS = 4;
const unsigned short CSS_EXS = 5;
const unsigned short CSS_PX = 6;
const unsigned short CSS_CM = 7;
const unsigned short CSS_MM = 8;
const unsigned short CSS_IN = 9;
const unsigned short CSS_PT = 10;
const unsigned short CSS_PC = 11;
const unsigned short CSS_DEG = 12;
const unsigned short CSS_RAD = 13;
const unsigned short CSS_GRAD = 14;
const unsigned short CSS_MS = 15;
const unsigned short CSS_S = 16;
const unsigned short CSS_HZ = 17;
const unsigned short CSS_KHZ = 18;
const unsigned short CSS_DIMENSION = 19;
const unsigned short CSS_STRING = 20;
const unsigned short CSS_URI = 21;
const unsigned short CSS_IDENT = 22;
const unsigned short CSS_ATTR = 23;
const unsigned short CSS_COUNTER = 24;
const unsigned short CSS_RECT = 26;
const unsigned short CSS_RGBCOLOR = 27;
readonly attribute unsigned short primitiveType;
void setFloatValue(in unsigned short unitType,
in float floatValue)
raises(DOMException);
float getFloatValue(in unsigned short unitType)
raises(DOMException);
void setStringValue(in unsigned short stringType,
in DOMString stringValue)
raises(DOMException);
DOMString getStringValue()
raises(DOMException);
Counter getCounterValue()
raises(DOMException);
Rect getRectValue()
raises(DOMException);
RGBColor getRGBColorValue()
raises(DOMException);
};
interface CSSValueList : CSSValue {
readonly attribute unsigned long length;
CSSValue item(in unsigned long index);
};
interface RGBColor {
attribute CSSValue red;
attribute CSSValue green;
attribute CSSValue blue;
};
interface Rect {
attribute CSSValue top;
attribute CSSValue right;
attribute CSSValue bottom;
attribute CSSValue left;
};
interface Counter {
attribute DOMString identifier;
attribute DOMString listStyle;
attribute DOMString separator;
};
interface CSS2Azimuth : CSSValue {
readonly attribute unsigned short azimuthType;
readonly attribute DOMString identifier;
readonly attribute boolean behind;
void setAngleValue(in unsigned short unitType,
in float floatValue)
raises(DOMException);
float getAngleValue(in unsigned short unitType)
raises(DOMException);
void setIdentifier(in DOMString identifier,
in boolean behind)
raises(DOMException);
};
interface CSS2BackgroundPosition : CSSValue {
readonly attribute unsigned short horizontalType;
readonly attribute unsigned short verticalType;
readonly attribute DOMString horizontalIdentifier;
readonly attribute DOMString verticalIdentifier;
float getHorizontalPosition(in float horizontalType)
raises(DOMException);
float getVerticalPosition(in float verticalType)
raises(DOMException);
void setHorizontalPosition(in unsigned short horizontalType,
in float value)
raises(DOMException);
void setVerticalPosition(in unsigned short verticalType,
in float value)
raises(DOMException);
void setPositionIdentifier(in DOMString horizontalIdentifier,
in DOMString verticalIdentifier)
raises(DOMException);
};
interface CSS2BorderSpacing : CSSValue {
readonly attribute unsigned short horizontalType;
readonly attribute unsigned short verticalType;
float getHorizontalSpacing(in float horizontalType)
raises(DOMException);
float getVerticalSpacing(in float verticalType)
raises(DOMException);
void setHorizontalSpacing(in unsigned short horizontalType,
in float value)
raises(DOMException);
void setVerticalSpacing(in unsigned short verticalType,
in float value)
raises(DOMException);
void setInherit()();
};
interface CSS2CounterReset {
attribute DOMString identifier;
// raises(DOMException) on setting
attribute short reset;
// raises(DOMException) on setting
};
interface CSS2CounterIncrement {
attribute DOMString identifier;
// raises(DOMException) on setting
attribute short increment;
// raises(DOMException) on setting
};
interface CSS2Cursor : CSSValue {
attribute unsigned short cursorType;
readonly attribute CSSValueList uris;
attribute DOMString predefinedCursor;
// raises(DOMException) on setting
};
interface CSS2PlayDuring : CSSValue {
readonly attribute unsigned short playDuringType;
attribute DOMString playDuringIdentifier;
// raises(DOMException) on setting
attribute DOMString uri;
// raises(DOMException) on setting
attribute boolean mix;
// raises(DOMException) on setting
attribute boolean repeat;
// raises(DOMException) on setting
};
interface CSS2TextShadow {
readonly attribute CSSValue color;
readonly attribute CSSValue horizontal;
readonly attribute CSSValue vertical;
readonly attribute CSSValue blur;
};
interface CSS2FontFaceSrc {
attribute DOMString uri;
// raises(DOMException) on setting
readonly attribute CSSValueList format;
attribute DOMString fontFaceName;
// raises(DOMException) on setting
};
interface CSS2FontFaceWidths {
attribute DOMString urange;
// raises(DOMException) on setting
readonly attribute CSSValueList numbers;
};
interface CSS2PageSize : CSSValue {
readonly attribute unsigned short widthType;
readonly attribute unsigned short heightType;
readonly attribute DOMString identifier;
float getWidth(in float widthType)
raises(DOMException);
float getHeightSize(in float heightType)
raises(DOMException);
void setWidthSize(in unsigned short widthType,
in float value)
raises(DOMException);
void setHeightSize(in unsigned short heightType,
in float value)
raises(DOMException);
void setIdentifier(in DOMString identifier)
raises(DOMException);
};
interface CSS2Properties {
attribute DOMString azimuth;
attribute DOMString background;
attribute DOMString backgroundAttachment;
attribute DOMString backgroundColor;
attribute DOMString backgroundImage;
attribute DOMString backgroundPosition;
attribute DOMString backgroundRepeat;
attribute DOMString border;
attribute DOMString borderCollapse;
attribute DOMString borderColor;
attribute DOMString borderSpacing;
attribute DOMString borderStyle;
attribute DOMString borderTop;
attribute DOMString borderRight;
attribute DOMString borderBottom;
attribute DOMString borderLeft;
attribute DOMString borderTopColor;
attribute DOMString borderRightColor;
attribute DOMString borderBottomColor;
attribute DOMString borderLeftColor;
attribute DOMString borderTopStyle;
attribute DOMString borderRightStyle;
attribute DOMString borderBottomStyle;
attribute DOMString borderLeftStyle;
attribute DOMString borderTopWidth;
attribute DOMString borderRightWidth;
attribute DOMString borderBottomWidth;
attribute DOMString borderLeftWidth;
attribute DOMString borderWidth;
attribute DOMString bottom;
attribute DOMString captionSide;
attribute DOMString clear;
attribute DOMString clip;
attribute DOMString color;
attribute DOMString content;
attribute DOMString counterIncrement;
attribute DOMString counterReset;
attribute DOMString cue;
attribute DOMString cueAfter;
attribute DOMString cueBefore;
attribute DOMString cursor;
attribute DOMString direction;
attribute DOMString display;
attribute DOMString elevation;
attribute DOMString emptyCells;
attribute DOMString cssFloat;
attribute DOMString font;
attribute DOMString fontFamily;
attribute DOMString fontSize;
attribute DOMString fontSizeAdjust;
attribute DOMString fontStretch;
attribute DOMString fontStyle;
attribute DOMString fontVariant;
attribute DOMString fontWeight;
attribute DOMString height;
attribute DOMString left;
attribute DOMString letterSpacing;
attribute DOMString lineHeight;
attribute DOMString listStyle;
attribute DOMString listStyleImage;
attribute DOMString listStylePosition;
attribute DOMString listStyleType;
attribute DOMString margin;
attribute DOMString marginTop;
attribute DOMString marginRight;
attribute DOMString marginBottom;
attribute DOMString marginLeft;
attribute DOMString markerOffset;
attribute DOMString marks;
attribute DOMString maxHeight;
attribute DOMString maxWidth;
attribute DOMString minHeight;
attribute DOMString minWidth;
attribute DOMString orphans;
attribute DOMString outline;
attribute DOMString outlineColor;
attribute DOMString outlineStyle;
attribute DOMString outlineWidth;
attribute DOMString overflow;
attribute DOMString padding;
attribute DOMString paddingTop;
attribute DOMString paddingRight;
attribute DOMString paddingBottom;
attribute DOMString paddingLeft;
attribute DOMString page;
attribute DOMString pageBreakAfter;
attribute DOMString pageBreakBefore;
attribute DOMString pageBreakInside;
attribute DOMString pause;
attribute DOMString pauseAfter;
attribute DOMString pauseBefore;
attribute DOMString pitch;
attribute DOMString pitchRange;
attribute DOMString playDuring;
attribute DOMString position;
attribute DOMString quotes;
attribute DOMString richness;
attribute DOMString right;
attribute DOMString size;
attribute DOMString speak;
attribute DOMString speakHeader;
attribute DOMString speakNumeral;
attribute DOMString speakPunctuation;
attribute DOMString speechRate;
attribute DOMString stress;
attribute DOMString tableLayout;
attribute DOMString textAlign;
attribute DOMString textDecoration;
attribute DOMString textIndent;
attribute DOMString textShadow;
attribute DOMString textTransform;
attribute DOMString top;
attribute DOMString unicodeBidi;
attribute DOMString verticalAlign;
attribute DOMString visibility;
attribute DOMString voiceFamily;
attribute DOMString volume;
attribute DOMString whiteSpace;
attribute DOMString widows;
attribute DOMString width;
attribute DOMString wordSpacing;
attribute DOMString zIndex;
};
interface CSSStyleSheet : StyleSheet {
readonly attribute CSSRule ownerRule;
readonly attribute CSSRuleList cssRules;
unsigned long insertRule(in DOMString rule,
in unsigned long index)
raises(DOMException);
void deleteRule(in unsigned long index)
raises(DOMException);
};
};
#endif // _CSS_IDL_
C.5: Document Object Model Level 2 Events
events.idl:
// File: events.idl
#ifndef _EVENTS_IDL_
#define _EVENTS_IDL_
#include "dom.idl"
#pragma prefix "dom.w3c.org"
module events
{
typedef dom::DOMString DOMString;
typedef dom::Node Node;
interface EventListener;
interface Event;
interface EventTarget {
void addEventListener(in DOMString type,
in EventListener listener,
in boolean useCapture);
void removeEventListener(in DOMString type,
in EventListener listener,
in boolean useCapture);
};
interface EventListener {
void handleEvent(in Event event);
};
interface Event {
// PhaseType
const unsigned short BUBBLING_PHASE = 1;
const unsigned short CAPTURING_PHASE = 2;
const unsigned short AT_TARGET = 3;
attribute DOMString type;
attribute Node target;
attribute Node currentNode;
attribute unsigned short eventPhase;
void preventBubble();
void preventCapture();
void preventDefault();
};
interface UIEvent : Event {
const int CHAR_UNDEFINED = 1;
const int KEY_FIRST = 1;
const int KEY_LAST = 1;
const int VK_0 = 1;
const int VK_1 = 1;
const int VK_2 = 1;
const int VK_3 = 1;
const int VK_4 = 1;
const int VK_5 = 1;
const int VK_6 = 1;
const int VK_7 = 1;
const int VK_8 = 1;
const int VK_9 = 1;
const int VK_A = 1;
const int VK_ACCEPT = 1;
const int VK_ADD = 1;
const int VK_AGAIN = 1;
const int VK_ALL_CANDIDATES = 1;
const int VK_ALPHANUMERIC = 1;
const int VK_ALT = 1;
const int VK_ALT_GRAPH = 1;
const int VK_AMPERSAND = 1;
const int VK_ASTERISK = 1;
const int VK_AT = 1;
const int VK_B = 1;
const int VK_BACK_QUOTE = 1;
const int VK_BACK_SLASH = 1;
const int VK_BACK_SPACE = 1;
const int VK_BRACELEFT = 1;
const int VK_BRACERIGHT = 1;
const int VK_C = 1;
const int VK_CANCEL = 1;
const int VK_CAPS_LOCK = 1;
const int VK_CIRCUMFLEX = 1;
const int VK_CLEAR = 1;
const int VK_CLOSE_BRACKET = 1;
const int VK_CODE_INPUT = 1;
const int VK_COLON = 1;
const int VK_COMMA = 1;
const int VK_COMPOSE = 1;
const int VK_CONTROL = 1;
const int VK_CONVERT = 1;
const int VK_COPY = 1;
const int VK_CUT = 1;
const int VK_D = 1;
const int VK_DEAD_ABOVEDOT = 1;
const int VK_DEAD_ABOVERING = 1;
const int VK_DEAD_ACUTE = 1;
const int VK_DEAD_BREVE = 1;
const int VK_DEAD_CARON = 1;
const int VK_DEAD_CEDILLA = 1;
const int VK_DEAD_CIRCUMFLEX = 1;
const int VK_DEAD_DIAERESIS = 1;
const int VK_DEAD_DOUBLEACUTE = 1;
const int VK_DEAD_GRAVE = 1;
const int VK_DEAD_IOTA = 1;
const int VK_DEAD_MACRON = 1;
const int VK_DEAD_OGONEK = 1;
const int VK_DEAD_SEMIVOICED_SOUND = 1;
const int VK_DEAD_TILDE = 1;
const int VK_DEAD_VOICED_SOUND = 1;
const int VK_DECIMAL = 1;
const int VK_DELETE = 1;
const int VK_DIVIDE = 1;
const int VK_DOLLAR = 1;
const int VK_DOWN = 1;
const int VK_E = 1;
const int VK_END = 1;
const int VK_ENTER = 1;
const int VK_EQUALS = 1;
const int VK_ESCAPE = 1;
const int VK_EURO_SIGN = 1;
const int VK_EXCLAMATION_MARK = 1;
const int VK_F = 1;
const int VK_F1 = 1;
const int VK_F10 = 1;
const int VK_F11 = 1;
const int VK_F12 = 1;
const int VK_F13 = 1;
const int VK_F14 = 1;
const int VK_F15 = 1;
const int VK_F16 = 1;
const int VK_F17 = 1;
const int VK_F18 = 1;
const int VK_F19 = 1;
const int VK_F2 = 1;
const int VK_F20 = 1;
const int VK_F21 = 1;
const int VK_F22 = 1;
const int VK_F23 = 1;
const int VK_F24 = 1;
const int VK_F3 = 1;
const int VK_F4 = 1;
const int VK_F5 = 1;
const int VK_F6 = 1;
const int VK_F7 = 1;
const int VK_F8 = 1;
const int VK_F9 = 1;
const int VK_FINAL = 1;
const int VK_FIND = 1;
const int VK_FULL_WIDTH = 1;
const int VK_G = 1;
const int VK_GREATER = 1;
const int VK_H = 1;
const int VK_HALF_WIDTH = 1;
const int VK_HELP = 1;
const int VK_HIRAGANA = 1;
const int VK_HOME = 1;
const int VK_I = 1;
const int VK_INSERT = 1;
const int VK_INVERTED_EXCLAMATION_MARK = 1;
const int VK_J = 1;
const int VK_JAPANESE_HIRAGANA = 1;
const int VK_JAPANESE_KATAKANA = 1;
const int VK_JAPANESE_ROMAN = 1;
const int VK_K = 1;
const int VK_KANA = 1;
const int VK_KANJI = 1;
const int VK_KATAKANA = 1;
const int VK_KP_DOWN = 1;
const int VK_KP_LEFT = 1;
const int VK_KP_RIGHT = 1;
const int VK_KP_UP = 1;
const int VK_L = 1;
const int VK_LEFT = 1;
const int VK_LEFT_PARENTHESIS = 1;
const int VK_LESS = 1;
const int VK_M = 1;
const int VK_META = 1;
const int VK_MINUS = 1;
const int VK_MODECHANGE = 1;
const int VK_MULTIPLY = 1;
const int VK_N = 1;
const int VK_NONCONVERT = 1;
const int VK_NUM_LOCK = 1;
const int VK_NUMBER_SIGN = 1;
const int VK_NUMPAD0 = 1;
const int VK_NUMPAD1 = 1;
const int VK_NUMPAD2 = 1;
const int VK_NUMPAD3 = 1;
const int VK_NUMPAD4 = 1;
const int VK_NUMPAD5 = 1;
const int VK_NUMPAD6 = 1;
const int VK_NUMPAD7 = 1;
const int VK_NUMPAD8 = 1;
const int VK_NUMPAD9 = 1;
const int VK_O = 1;
const int VK_OPEN_BRACKET = 1;
const int VK_P = 1;
const int VK_PAGE_DOWN = 1;
const int VK_PAGE_UP = 1;
const int VK_PASTE = 1;
const int VK_PAUSE = 1;
const int VK_PERIOD = 1;
const int VK_PLUS = 1;
const int VK_PREVIOUS_CANDIDATE = 1;
const int VK_PRINTSCREEN = 1;
const int VK_PROPS = 1;
const int VK_Q = 1;
const int VK_QUOTE = 1;
const int VK_QUOTEDBL = 1;
const int VK_R = 1;
const int VK_RIGHT = 1;
const int VK_RIGHT_PARENTHESIS = 1;
const int VK_ROMAN_CHARACTERS = 1;
const int VK_S = 1;
const int VK_SCROLL_LOCK = 1;
const int VK_SEMICOLON = 1;
const int VK_SEPARATER = 1;
const int VK_SHIFT = 1;
const int VK_SLASH = 1;
const int VK_SPACE = 1;
const int VK_STOP = 1;
const int VK_SUBTRACT = 1;
const int VK_T = 1;
const int VK_TAB = 1;
const int VK_U = 1;
const int VK_UNDEFINED = 1;
const int VK_UNDERSCORE = 1;
const int VK_UNDO = 1;
const int VK_UP = 1;
const int VK_V = 1;
const int VK_W = 1;
const int VK_X = 1;
const int VK_Y = 1;
const int VK_Z = 1;
attribute long screenX;
attribute long screenY;
attribute long clientX;
attribute long clientY;
attribute boolean ctrlKey;
attribute boolean shiftKey;
attribute boolean altKey;
attribute boolean metaKey;
attribute unsigned long keyCode;
attribute unsigned long charCode;
attribute unsigned short button;
attribute unsigned short clickCount;
};
interface MutationEvent : Event {
attribute Node relatedNode;
attribute DOMString prevValue;
attribute DOMString newValue;
attribute DOMString attrName;
};
};
#endif // _EVENTS_IDL_
C.6: Document Object Model Level 2 Filters and Iterators
fi.idl:
// File: fi.idl
#ifndef _FI_IDL_
#define _FI_IDL_
#include "dom.idl"
#pragma prefix "dom.w3c.org"
module fi
{
typedef dom::Node Node;
interface NodeFilter;
interface NodeIterator {
readonly attribute long whatToShow;
// Constants for whatToShow
const unsigned long SHOW_ALL = 0xFFFF;
const unsigned long SHOW_ELEMENT = 0x00000001;
const unsigned long SHOW_ATTRIBUTE = 0x00000002;
const unsigned long SHOW_TEXT = 0x00000004;
const unsigned long SHOW_CDATA_SECTION = 0x00000008;
const unsigned long SHOW_ENTITY_REFERENCE = 0x00000010;
const unsigned long SHOW_ENTITY = 0x00000020;
const unsigned long SHOW_PROCESSING_INSTRUCTION = 0x00000040;
const unsigned long SHOW_COMMENT = 0x00000080;
const unsigned long SHOW_DOCUMENT = 0x00000100;
const unsigned long SHOW_DOCUMENT_TYPE = 0x00000200;
const unsigned long SHOW_DOCUMENT_FRAGMENT = 0x00000400;
const unsigned long SHOW_NOTATION = 0x00000800;
readonly attribute NodeFilter filter;
Node nextNode();
Node previousNode();
};
interface NodeFilter {
// Constants returned by acceptNode
const short FILTER_ACCEPT = 1;
const short FILTER_REJECT = 2;
const short FILTER_SKIP = 3;
short acceptNode(in Node n);
};
interface TreeWalker {
readonly attribute long whatToShow;
// Constants for whatToShow
const unsigned long SHOW_ALL = 0xFFFF;
const unsigned long SHOW_ELEMENT = 0x00000001;
const unsigned long SHOW_ATTRIBUTE = 0x00000002;
const unsigned long SHOW_TEXT = 0x00000004;
const unsigned long SHOW_CDATA_SECTION = 0x00000008;
const unsigned long SHOW_ENTITY_REFERENCE = 0x00000010;
const unsigned long SHOW_ENTITY = 0x00000020;
const unsigned long SHOW_PROCESSING_INSTRUCTION = 0x00000040;
const unsigned long SHOW_COMMENT = 0x00000080;
const unsigned long SHOW_DOCUMENT = 0x00000100;
const unsigned long SHOW_DOCUMENT_TYPE = 0x00000200;
const unsigned long SHOW_DOCUMENT_FRAGMENT = 0x00000400;
const unsigned long SHOW_NOTATION = 0x00000800;
readonly attribute NodeFilter filter;
Node current();
Node parentNode();
Node firstChild();
Node lastChild();
Node previousSibling();
Node nextSibling();
};
interface DocumentIF {
short createNodeIterator(in Node root,
in short whatToShow,
in NodeFilter filter);
};
};
#endif // _FI_IDL_
C.7: Document Object Model Level 2 Range
range.idl:
// File: range.idl
#ifndef _RANGE_IDL_
#define _RANGE_IDL_
#include "dom.idl"
#pragma prefix "dom.w3c.org"
module range
{
typedef dom::Node Node;
typedef dom::DocumentFragment DocumentFragment;
typedef dom::DOMString DOMString;
exception RangeException {
unsigned short code;
};
// RangeExceptionCode
const unsigned short BAD_ENDPOINTS_ERR = 201;
const unsigned short INVALID_NODE_TYPE_ERR = 202;
const unsigned short NULL_NODE_ERR = 203;
interface Range {
readonly attribute Node startContainer;
readonly attribute long startOffset;
readonly attribute Node endContainer;
readonly attribute long endOffset;
readonly attribute boolean isCollapsed;
readonly attribute Node commonAncestorContainer;
void setStart(in Node node,
in long offset)
raises(RangeException);
void setEnd(in Node node,
in long offset)
raises(RangeException);
void setStartBefore(in Node node)
raises(RangeException);
void setStartAfter(in Node node)
raises(RangeException);
void setEndBefore(in Node node)
raises(RangeException);
void setEndAfter(in Node node)
raises(RangeException);
void collapse(in boolean toStart);
void selectNode(in Node node)
raises(RangeException);
void selectNodeContents(in Node node)
raises(RangeException);
typedef enum CompareHow_ {
StartToStart,
StartToEnd,
EndToEnd,
EndToStart
} CompareHow;
short compareEndPoints(in CompareHow how,
in Range sourceRange)
raises(DOMException);
void deleteContents()
raises(DOMException);
DocumentFragment extractContents()
raises(DOMException);
DocumentFragment cloneContents()
raises(DOMException);
void insertNode(in Node node)
raises(DOMException, RangeException);
void surroundContents(in Node node)
raises(DOMException, RangeException);
Range cloneRange();
DOMString toString();
};
};
#endif // _RANGE_IDL_
Appendix D: Java Language Binding
This appendix contains the complete Java bindings for the Level 2 Document
Object Model. The definitions are divided into Core, Namespaces,
Stylesheets, CSS, Events, Filters and Iterators, and Range.
The Java files are also available as
http://www.w3.org/TR/1999/WD-DOM-Level-2-19990719/java-binding.zip
D.1: Document Object Model Level 2 Core
org/w3c/dom/DocumentType2.java:
package org.w3c.dom;
public interface DocumentType2 extends DocumentType {
public String getPublicID();
public String getSystemID();
}
org/w3c/dom/DOMImplementation2.java:
package org.w3c.dom;
public interface DOMImplementation2 extends DOMImplementation {
public DocumentType createDocumentType(String name,
String publicID,
String systemID)
throws DOMException;
public Document createDocument(String name,
DocumentType doctype)
throws DOMException;
}
org/w3c/dom/Document2.java:
package org.w3c.dom;
public interface Document2 extends Document {
public Node importNode(Node importedNode,
boolean deep);
}
org/w3c/dom/Node2.java:
package org.w3c.dom;
public interface Node2 extends Node {
public boolean supports(String feature,
String version);
}
org/w3c/dom/Attr2.java:
package org.w3c.dom;
public interface Attr2 extends Attr {
public Element getOwnerElement();
}
org/w3c/dom/HTMLDOMImplementation.java:
package org.w3c.dom;
public interface HTMLDOMImplementation extends DOMImplementation {
public HTMLDocument createHTMLDocument(String title);
}
D.2: Document Object Model Level 2 Namespaces
org/w3c/dom/namespaces/NodeNS.java:
package org.w3c.dom.namespaces;
import org.w3c.dom.*;
public interface NodeNS {
public String getNamespaceName();
public String getPrefix();
public void setPrefix(String prefix)
throws DOMException;
public String getLocalName();
}
org/w3c/dom/namespaces/DocumentNS.java:
package org.w3c.dom.namespaces;
import org.w3c.dom.*;
public interface DocumentNS {
public Element createElementNS(String namespaceName,
String qualifiedName)
throws DOMException;
public Attr createAttributeNS(String namespaceName,
String qualifiedName)
throws DOMException;
public NodeList getElementsByTagNameNS(String namespaceName,
String localName);
}
org/w3c/dom/namespaces/ElementNS.java:
package org.w3c.dom.namespaces;
import org.w3c.dom.*;
public interface ElementNS {
public String getAttributeNS(String namespaceName,
String localName);
public void setAttributeNS(String namespaceName,
String localName,
String value)
throws DOMException;
public void removeAttributeNS(String namespaceName,
String localName)
throws DOMException;
public Attr getAttributeNodeNS(String namespaceName,
String localName);
public Attr setAttributeNodeNS(Attr newAttr)
throws DOMException;
public NodeList getElementsByTagNameNS(String namespaceName,
String localName);
}
org/w3c/dom/namespaces/NodeNS.java:
package org.w3c.dom.namespaces;
import org.w3c.dom.*;
public interface NodeNS {
public String getUniversalName();
public String getNamespaceName();
public String getPrefix();
public void setPrefix(String prefix)
throws DOMException;
public String getLocalName();
}
D.3: Document Object Model Level 2 Stylesheets
org/w3c/dom/stylesheets/StyleSheet.java:
package org.w3c.dom.stylesheets;
import org.w3c.dom.*;
public interface StyleSheet {
public String getType();
public boolean getDisabled();
public void setDisabled(boolean disabled);
public Node getOwnerNode();
public StyleSheet getParentStyleSheet();
public String getHref();
public String getTitle();
public MediaList getMedia();
}
org/w3c/dom/stylesheets/StyleSheetList.java:
package org.w3c.dom.stylesheets;
import org.w3c.dom.*;
public interface StyleSheetList {
public int getLength();
public StyleSheet item(int index);
}
org/w3c/dom/stylesheets/MediaList.java:
package org.w3c.dom.stylesheets;
import org.w3c.dom.*;
public interface MediaList {
public String getCssText();
public void setCssText(String cssText)
throws DOMException;
public int getLength();
public String item(int index);
public void delete(String oldMedium)
throws DOMException;
public void append(String newMedium)
throws DOMException;
}
org/w3c/dom/stylesheets/DocumentStyle.java:
package org.w3c.dom.stylesheets;
import org.w3c.dom.*;
public interface DocumentStyle {
public StyleSheetList getStyleSheets();
}
D.4: Document Object Model Level 2 CSS
org/w3c/dom/css/CSSStyleSheet.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSStyleSheet extends StyleSheet {
public CSSRule getOwnerRule();
public CSSRuleList getCssRules();
public int insertRule(String rule,
int index)
throws DOMException;
public void deleteRule(int index)
throws DOMException;
}
org/w3c/dom/css/CSSRuleList.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSRuleList {
public int getLength();
public CSSRule item(int index);
}
org/w3c/dom/css/CSSRule.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSRule {
// RuleType
public static final short UNKNOWN_RULE = 0;
public static final short STYLE_RULE = 1;
public static final short CHARSET_RULE = 2;
public static final short IMPORT_RULE = 3;
public static final short MEDIA_RULE = 4;
public static final short FONT_FACE_RULE = 5;
public static final short PAGE_RULE = 6;
public short getType();
public String getCssText();
public void setCssText(String cssText)
throws DOMException;
public CSSStyleSheet getParentStyleSheet();
public CSSRule getParentRule();
}
org/w3c/dom/css/CSSStyleRule.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSStyleRule extends CSSRule {
public String getSelectorText();
public void setSelectorText(String selectorText)
throws DOMException;
public CSSStyleDeclaration getStyle();
}
org/w3c/dom/css/CSSMediaRule.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSMediaRule extends CSSRule {
public MediaList getMedia();
public CSSRuleList getCssRules();
public int insertRule(String rule,
int index)
throws DOMException;
public void deleteRule(int index)
throws DOMException;
}
org/w3c/dom/css/CSSFontFaceRule.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSFontFaceRule extends CSSRule {
public CSSStyleDeclaration getStyle();
}
org/w3c/dom/css/CSSPageRule.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSPageRule extends CSSRule {
public String getSelectorText();
public void setSelectorText(String selectorText)
throws DOMException;
public CSSStyleDeclaration getStyle();
}
org/w3c/dom/css/CSSImportRule.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSImportRule extends CSSRule {
public String getHref();
public MediaList getMedia();
public CSSStyleSheet getStyleSheet();
}
org/w3c/dom/css/CSSCharsetRule.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSCharsetRule extends CSSRule {
public String getEncoding();
public void setEncoding(String encoding)
throws DOMException;
}
org/w3c/dom/css/CSSUnknownRule.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSUnknownRule extends CSSRule {
}
org/w3c/dom/css/CSSStyleDeclaration.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSStyleDeclaration {
public String getCssText();
public void setCssText(String cssText)
throws DOMException;
public String getPropertyValue(String propertyName);
public CSSValue getPropertyCSSValue(String propertyName);
public String removeProperty(String propertyName)
throws DOMException;
public String getPropertyPriority(String propertyName);
public void setProperty(String propertyName,
String value,
String priority)
throws DOMException;
public int getLength();
public String item(int index);
public CSSRule getParentRule();
}
org/w3c/dom/css/CSSValue.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSValue {
// UnitTypes
public static final short CSS_PRIMITIVE_VALUE = 0;
public static final short CSS_VALUE_LIST = 1;
public static final short CSS_CUSTOM = 2;
public String getCssText();
public void setCssText(String cssText)
throws DOMException;
public short getValueType();
}
org/w3c/dom/css/CSSPrimitiveValue.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSPrimitiveValue extends CSSValue {
// UnitTypes
public static final short CSS_UNKNOWN = 0;
public static final short CSS_INHERIT = 1;
public static final short CSS_NUMBER = 2;
public static final short CSS_PERCENTAGE = 3;
public static final short CSS_EMS = 4;
public static final short CSS_EXS = 5;
public static final short CSS_PX = 6;
public static final short CSS_CM = 7;
public static final short CSS_MM = 8;
public static final short CSS_IN = 9;
public static final short CSS_PT = 10;
public static final short CSS_PC = 11;
public static final short CSS_DEG = 12;
public static final short CSS_RAD = 13;
public static final short CSS_GRAD = 14;
public static final short CSS_MS = 15;
public static final short CSS_S = 16;
public static final short CSS_HZ = 17;
public static final short CSS_KHZ = 18;
public static final short CSS_DIMENSION = 19;
public static final short CSS_STRING = 20;
public static final short CSS_URI = 21;
public static final short CSS_IDENT = 22;
public static final short CSS_ATTR = 23;
public static final short CSS_COUNTER = 24;
public static final short CSS_RECT = 26;
public static final short CSS_RGBCOLOR = 27;
public short getPrimitiveType();
public void setFloatValue(short unitType,
float floatValue)
throws DOMException;
public float getFloatValue(short unitType)
throws DOMException;
public void setStringValue(short stringType,
String stringValue)
throws DOMException;
public String getStringValue()
throws DOMException;
public Counter getCounterValue()
throws DOMException;
public Rect getRectValue()
throws DOMException;
public RGBColor getRGBColorValue()
throws DOMException;
}
org/w3c/dom/css/CSSValueList.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSSValueList extends CSSValue {
public int getLength();
public CSSValue item(int index);
}
org/w3c/dom/css/RGBColor.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface RGBColor {
public CSSValue getRed();
public void setRed(CSSValue red);
public CSSValue getGreen();
public void setGreen(CSSValue green);
public CSSValue getBlue();
public void setBlue(CSSValue blue);
}
org/w3c/dom/css/Rect.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface Rect {
public CSSValue getTop();
public void setTop(CSSValue top);
public CSSValue getRight();
public void setRight(CSSValue right);
public CSSValue getBottom();
public void setBottom(CSSValue bottom);
public CSSValue getLeft();
public void setLeft(CSSValue left);
}
org/w3c/dom/css/Counter.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface Counter {
public String getIdentifier();
public void setIdentifier(String identifier);
public String getListStyle();
public void setListStyle(String listStyle);
public String getSeparator();
public void setSeparator(String separator);
}
org/w3c/dom/css/CSS2Azimuth.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSS2Azimuth extends CSSValue {
public short getAzimuthType();
public String getIdentifier();
public boolean getBehind();
public void setAngleValue(short unitType,
float floatValue)
throws DOMException;
public float getAngleValue(short unitType)
throws DOMException;
public void setIdentifier(String identifier,
boolean behind)
throws DOMException;
}
org/w3c/dom/css/CSS2BackgroundPosition.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSS2BackgroundPosition extends CSSValue {
public short getHorizontalType();
public short getVerticalType();
public String getHorizontalIdentifier();
public String getVerticalIdentifier();
public float getHorizontalPosition(float horizontalType)
throws DOMException;
public float getVerticalPosition(float verticalType)
throws DOMException;
public void setHorizontalPosition(short horizontalType,
float value)
throws DOMException;
public void setVerticalPosition(short verticalType,
float value)
throws DOMException;
public void setPositionIdentifier(String horizontalIdentifier,
String verticalIdentifier)
throws DOMException;
}
org/w3c/dom/css/CSS2BorderSpacing.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSS2BorderSpacing extends CSSValue {
public short getHorizontalType();
public short getVerticalType();
public float getHorizontalSpacing(float horizontalType)
throws DOMException;
public float getVerticalSpacing(float verticalType)
throws DOMException;
public void setHorizontalSpacing(short horizontalType,
float value)
throws DOMException;
public void setVerticalSpacing(short verticalType,
float value)
throws DOMException;
public void setInherit()();
}
org/w3c/dom/css/CSS2CounterReset.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSS2CounterReset {
public String getIdentifier();
public void setIdentifier(String identifier)
throws DOMException;
public short getReset();
public void setReset(short reset)
throws DOMException;
}
org/w3c/dom/css/CSS2CounterIncrement.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSS2CounterIncrement {
public String getIdentifier();
public void setIdentifier(String identifier)
throws DOMException;
public short getIncrement();
public void setIncrement(short increment)
throws DOMException;
}
org/w3c/dom/css/CSS2Cursor.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSS2Cursor extends CSSValue {
public short getCursorType();
public void setCursorType(short cursorType);
public CSSValueList getUris();
public String getPredefinedCursor();
public void setPredefinedCursor(String predefinedCursor)
throws DOMException;
}
org/w3c/dom/css/CSS2PlayDuring.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSS2PlayDuring extends CSSValue {
public short getPlayDuringType();
public String getPlayDuringIdentifier();
public void setPlayDuringIdentifier(String playDuringIdentifier)
throws DOMException;
public String getUri();
public void setUri(String uri)
throws DOMException;
public boolean getMix();
public void setMix(boolean mix)
throws DOMException;
public boolean getRepeat();
public void setRepeat(boolean repeat)
throws DOMException;
}
org/w3c/dom/css/CSS2TextShadow.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSS2TextShadow {
public CSSValue getColor();
public CSSValue getHorizontal();
public CSSValue getVertical();
public CSSValue getBlur();
}
org/w3c/dom/css/CSS2FontFaceSrc.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSS2FontFaceSrc {
public String getUri();
public void setUri(String uri)
throws DOMException;
public CSSValueList getFormat();
public String getFontFaceName();
public void setFontFaceName(String fontFaceName)
throws DOMException;
}
org/w3c/dom/css/CSS2FontFaceWidths.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSS2FontFaceWidths {
public String getUrange();
public void setUrange(String urange)
throws DOMException;
public CSSValueList getNumbers();
}
org/w3c/dom/css/CSS2PageSize.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSS2PageSize extends CSSValue {
public short getWidthType();
public short getHeightType();
public String getIdentifier();
public float getWidth(float widthType)
throws DOMException;
public float getHeightSize(float heightType)
throws DOMException;
public void setWidthSize(short widthType,
float value)
throws DOMException;
public void setHeightSize(short heightType,
float value)
throws DOMException;
public void setIdentifier(String identifier)
throws DOMException;
}
org/w3c/dom/css/CSS2Properties.java:
package org.w3c.dom.css;
import org.w3c.dom.*;
import org.w3c.dom.stylesheets.*;
public interface CSS2Properties {
public String getAzimuth();
public void setAzimuth(String azimuth);
public String getBackground();
public void setBackground(String background);
public String getBackgroundAttachment();
public void setBackgroundAttachment(String backgroundAttachment);
public String getBackgroundColor();
public void setBackgroundColor(String backgroundColor);
public String getBackgroundImage();
public void setBackgroundImage(String backgroundImage);
public String getBackgroundPosition();
public void setBackgroundPosition(String backgroundPosition);
public String getBackgroundRepeat();
public void setBackgroundRepeat(String backgroundRepeat);
public String getBorder();
public void setBorder(String border);
public String getBorderCollapse();
public void setBorderCollapse(String borderCollapse);
public String getBorderColor();
public void setBorderColor(String borderColor);
public String getBorderSpacing();
public void setBorderSpacing(String borderSpacing);
public String getBorderStyle();
public void setBorderStyle(String borderStyle);
public String getBorderTop();
public void setBorderTop(String borderTop);
public String getBorderRight();
public void setBorderRight(String borderRight);
public String getBorderBottom();
public void setBorderBottom(String borderBottom);
public String getBorderLeft();
public void setBorderLeft(String borderLeft);
public String getBorderTopColor();
public void setBorderTopColor(String borderTopColor);
public String getBorderRightColor();
public void setBorderRightColor(String borderRightColor);
public String getBorderBottomColor();
public void setBorderBottomColor(String borderBottomColor);
public String getBorderLeftColor();
public void setBorderLeftColor(String borderLeftColor);
public String getBorderTopStyle();
public void setBorderTopStyle(String borderTopStyle);
public String getBorderRightStyle();
public void setBorderRightStyle(String borderRightStyle);
public String getBorderBottomStyle();
public void setBorderBottomStyle(String borderBottomStyle);
public String getBorderLeftStyle();
public void setBorderLeftStyle(String borderLeftStyle);
public String getBorderTopWidth();
public void setBorderTopWidth(String borderTopWidth);
public String getBorderRightWidth();
public void setBorderRightWidth(String borderRightWidth);
public String getBorderBottomWidth();
public void setBorderBottomWidth(String borderBottomWidth);
public String getBorderLeftWidth();
public void setBorderLeftWidth(String borderLeftWidth);
public String getBorderWidth();
public void setBorderWidth(String borderWidth);
public String getBottom();
public void setBottom(String bottom);
public String getCaptionSide();
public void setCaptionSide(String captionSide);
public String getClear();
public void setClear(String clear);
public String getClip();
public void setClip(String clip);
public String getColor();
public void setColor(String color);
public String getContent();
public void setContent(String content);
public String getCounterIncrement();
public void setCounterIncrement(String counterIncrement);
public String getCounterReset();
public void setCounterReset(String counterReset);
public String getCue();
public void setCue(String cue);
public String getCueAfter();
public void setCueAfter(String cueAfter);
public String getCueBefore();
public void setCueBefore(String cueBefore);
public String getCursor();
public void setCursor(String cursor);
public String getDirection();
public void setDirection(String direction);
public String getDisplay();
public void setDisplay(String display);
public String getElevation();
public void setElevation(String elevation);
public String getEmptyCells();
public void setEmptyCells(String emptyCells);
public String getCssFloat();
public void setCssFloat(String cssFloat);
public String getFont();
public void setFont(String font);
public String getFontFamily();
public void setFontFamily(String fontFamily);
public String getFontSize();
public void setFontSize(String fontSize);
public String getFontSizeAdjust();
public void setFontSizeAdjust(String fontSizeAdjust);
public String getFontStretch();
public void setFontStretch(String fontStretch);
public String getFontStyle();
public void setFontStyle(String fontStyle);
public String getFontVariant();
public void setFontVariant(String fontVariant);
public String getFontWeight();
public void setFontWeight(String fontWeight);
public String getHeight();
public void setHeight(String height);
public String getLeft();
public void setLeft(String left);
public String getLetterSpacing();
public void setLetterSpacing(String letterSpacing);
public String getLineHeight();
public void setLineHeight(String lineHeight);
public String getListStyle();
public void setListStyle(String listStyle);
public String getListStyleImage();
public void setListStyleImage(String listStyleImage);
public String getListStylePosition();
public void setListStylePosition(String listStylePosition);
public String getListStyleType();
public void setListStyleType(String listStyleType);
public String getMargin();
public void setMargin(String margin);
public String getMarginTop();
public void setMarginTop(String marginTop);
public String getMarginRight();
public void setMarginRight(String marginRight);
public String getMarginBottom();
public void setMarginBottom(String marginBottom);
public String getMarginLeft();
public void setMarginLeft(String marginLeft);
public String getMarkerOffset();
public void setMarkerOffset(String markerOffset);
public String getMarks();
public void setMarks(String marks);
public String getMaxHeight();
public void setMaxHeight(String maxHeight);
public String getMaxWidth();
public void setMaxWidth(String maxWidth);
public String getMinHeight();
public void setMinHeight(String minHeight);
public String getMinWidth();
public void setMinWidth(String minWidth);
public String getOrphans();
public void setOrphans(String orphans);
public String getOutline();
public void setOutline(String outline);
public String getOutlineColor();
public void setOutlineColor(String outlineColor);
public String getOutlineStyle();
public void setOutlineStyle(String outlineStyle);
public String getOutlineWidth();
public void setOutlineWidth(String outlineWidth);
public String getOverflow();
public void setOverflow(String overflow);
public String getPadding();
public void setPadding(String padding);
public String getPaddingTop();
public void setPaddingTop(String paddingTop);
public String getPaddingRight();
public void setPaddingRight(String paddingRight);
public String getPaddingBottom();
public void setPaddingBottom(String paddingBottom);
public String getPaddingLeft();
public void setPaddingLeft(String paddingLeft);
public String getPage();
public void setPage(String page);
public String getPageBreakAfter();
public void setPageBreakAfter(String pageBreakAfter);
public String getPageBreakBefore();
public void setPageBreakBefore(String pageBreakBefore);
public String getPageBreakInside();
public void setPageBreakInside(String pageBreakInside);
public String getPause();
public void setPause(String pause);
public String getPauseAfter();
public void setPauseAfter(String pauseAfter);
public String getPauseBefore();
public void setPauseBefore(String pauseBefore);
public String getPitch();
public void setPitch(String pitch);
public String getPitchRange();
public void setPitchRange(String pitchRange);
public String getPlayDuring();
public void setPlayDuring(String playDuring);
public String getPosition();
public void setPosition(String position);
public String getQuotes();
public void setQuotes(String quotes);
public String getRichness();
public void setRichness(String richness);
public String getRight();
public void setRight(String right);
public String getSize();
public void setSize(String size);
public String getSpeak();
public void setSpeak(String speak);
public String getSpeakHeader();
public void setSpeakHeader(String speakHeader);
public String getSpeakNumeral();
public void setSpeakNumeral(String speakNumeral);
public String getSpeakPunctuation();
public void setSpeakPunctuation(String speakPunctuation);
public String getSpeechRate();
public void setSpeechRate(String speechRate);
public String getStress();
public void setStress(String stress);
public String getTableLayout();
public void setTableLayout(String tableLayout);
public String getTextAlign();
public void setTextAlign(String textAlign);
public String getTextDecoration();
public void setTextDecoration(String textDecoration);
public String getTextIndent();
public void setTextIndent(String textIndent);
public String getTextShadow();
public void setTextShadow(String textShadow);
public String getTextTransform();
public void setTextTransform(String textTransform);
public String getTop();
public void setTop(String top);
public String getUnicodeBidi();
public void setUnicodeBidi(String unicodeBidi);
public String getVerticalAlign();
public void setVerticalAlign(String verticalAlign);
public String getVisibility();
public void setVisibility(String visibility);
public String getVoiceFamily();
public void setVoiceFamily(String voiceFamily);
public String getVolume();
public void setVolume(String volume);
public String getWhiteSpace();
public void setWhiteSpace(String whiteSpace);
public String getWidows();
public void setWidows(String widows);
public String getWidth();
public void setWidth(String width);
public String getWordSpacing();
public void setWordSpacing(String wordSpacing);
public String getZIndex();
public void setZIndex(String zIndex);
}
D.5: Document Object Model Level 2 Events
org/w3c/dom/events/EventTarget.java:
package org.w3c.dom.events;
import org.w3c.dom.*;
public interface EventTarget {
public void addEventListener(String type,
EventListener listener,
boolean useCapture);
public void removeEventListener(String type,
EventListener listener,
boolean useCapture);
}
org/w3c/dom/events/EventListener.java:
package org.w3c.dom.events;
import org.w3c.dom.*;
public interface EventListener {
public void handleEvent(Event event);
}
org/w3c/dom/events/Event.java:
package org.w3c.dom.events;
import org.w3c.dom.*;
public interface Event {
// PhaseType
public static final short BUBBLING_PHASE = 1;
public static final short CAPTURING_PHASE = 2;
public static final short AT_TARGET = 3;
public String getType();
public void setType(String type);
public Node getTarget();
public void setTarget(Node target);
public Node getCurrentNode();
public void setCurrentNode(Node currentNode);
public short getEventPhase();
public void setEventPhase(short eventPhase);
public void preventBubble();
public void preventCapture();
public void preventDefault();
}
org/w3c/dom/events/UIEvent.java:
package org.w3c.dom.events;
import org.w3c.dom.*;
public interface UIEvent extends Event {
public static final int CHAR_UNDEFINED = 1;
public static final int KEY_FIRST = 1;
public static final int KEY_LAST = 1;
public static final int VK_0 = 1;
public static final int VK_1 = 1;
public static final int VK_2 = 1;
public static final int VK_3 = 1;
public static final int VK_4 = 1;
public static final int VK_5 = 1;
public static final int VK_6 = 1;
public static final int VK_7 = 1;
public static final int VK_8 = 1;
public static final int VK_9 = 1;
public static final int VK_A = 1;
public static final int VK_ACCEPT = 1;
public static final int VK_ADD = 1;
public static final int VK_AGAIN = 1;
public static final int VK_ALL_CANDIDATES = 1;
public static final int VK_ALPHANUMERIC = 1;
public static final int VK_ALT = 1;
public static final int VK_ALT_GRAPH = 1;
public static final int VK_AMPERSAND = 1;
public static final int VK_ASTERISK = 1;
public static final int VK_AT = 1;
public static final int VK_B = 1;
public static final int VK_BACK_QUOTE = 1;
public static final int VK_BACK_SLASH = 1;
public static final int VK_BACK_SPACE = 1;
public static final int VK_BRACELEFT = 1;
public static final int VK_BRACERIGHT = 1;
public static final int VK_C = 1;
public static final int VK_CANCEL = 1;
public static final int VK_CAPS_LOCK = 1;
public static final int VK_CIRCUMFLEX = 1;
public static final int VK_CLEAR = 1;
public static final int VK_CLOSE_BRACKET = 1;
public static final int VK_CODE_INPUT = 1;
public static final int VK_COLON = 1;
public static final int VK_COMMA = 1;
public static final int VK_COMPOSE = 1;
public static final int VK_CONTROL = 1;
public static final int VK_CONVERT = 1;
public static final int VK_COPY = 1;
public static final int VK_CUT = 1;
public static final int VK_D = 1;
public static final int VK_DEAD_ABOVEDOT = 1;
public static final int VK_DEAD_ABOVERING = 1;
public static final int VK_DEAD_ACUTE = 1;
public static final int VK_DEAD_BREVE = 1;
public static final int VK_DEAD_CARON = 1;
public static final int VK_DEAD_CEDILLA = 1;
public static final int VK_DEAD_CIRCUMFLEX = 1;
public static final int VK_DEAD_DIAERESIS = 1;
public static final int VK_DEAD_DOUBLEACUTE = 1;
public static final int VK_DEAD_GRAVE = 1;
public static final int VK_DEAD_IOTA = 1;
public static final int VK_DEAD_MACRON = 1;
public static final int VK_DEAD_OGONEK = 1;
public static final int VK_DEAD_SEMIVOICED_SOUND = 1;
public static final int VK_DEAD_TILDE = 1;
public static final int VK_DEAD_VOICED_SOUND = 1;
public static final int VK_DECIMAL = 1;
public static final int VK_DELETE = 1;
public static final int VK_DIVIDE = 1;
public static final int VK_DOLLAR = 1;
public static final int VK_DOWN = 1;
public static final int VK_E = 1;
public static final int VK_END = 1;
public static final int VK_ENTER = 1;
public static final int VK_EQUALS = 1;
public static final int VK_ESCAPE = 1;
public static final int VK_EURO_SIGN = 1;
public static final int VK_EXCLAMATION_MARK = 1;
public static final int VK_F = 1;
public static final int VK_F1 = 1;
public static final int VK_F10 = 1;
public static final int VK_F11 = 1;
public static final int VK_F12 = 1;
public static final int VK_F13 = 1;
public static final int VK_F14 = 1;
public static final int VK_F15 = 1;
public static final int VK_F16 = 1;
public static final int VK_F17 = 1;
public static final int VK_F18 = 1;
public static final int VK_F19 = 1;
public static final int VK_F2 = 1;
public static final int VK_F20 = 1;
public static final int VK_F21 = 1;
public static final int VK_F22 = 1;
public static final int VK_F23 = 1;
public static final int VK_F24 = 1;
public static final int VK_F3 = 1;
public static final int VK_F4 = 1;
public static final int VK_F5 = 1;
public static final int VK_F6 = 1;
public static final int VK_F7 = 1;
public static final int VK_F8 = 1;
public static final int VK_F9 = 1;
public static final int VK_FINAL = 1;
public static final int VK_FIND = 1;
public static final int VK_FULL_WIDTH = 1;
public static final int VK_G = 1;
public static final int VK_GREATER = 1;
public static final int VK_H = 1;
public static final int VK_HALF_WIDTH = 1;
public static final int VK_HELP = 1;
public static final int VK_HIRAGANA = 1;
public static final int VK_HOME = 1;
public static final int VK_I = 1;
public static final int VK_INSERT = 1;
public static final int VK_INVERTED_EXCLAMATION_MARK = 1;
public static final int VK_J = 1;
public static final int VK_JAPANESE_HIRAGANA = 1;
public static final int VK_JAPANESE_KATAKANA = 1;
public static final int VK_JAPANESE_ROMAN = 1;
public static final int VK_K = 1;
public static final int VK_KANA = 1;
public static final int VK_KANJI = 1;
public static final int VK_KATAKANA = 1;
public static final int VK_KP_DOWN = 1;
public static final int VK_KP_LEFT = 1;
public static final int VK_KP_RIGHT = 1;
public static final int VK_KP_UP = 1;
public static final int VK_L = 1;
public static final int VK_LEFT = 1;
public static final int VK_LEFT_PARENTHESIS = 1;
public static final int VK_LESS = 1;
public static final int VK_M = 1;
public static final int VK_META = 1;
public static final int VK_MINUS = 1;
public static final int VK_MODECHANGE = 1;
public static final int VK_MULTIPLY = 1;
public static final int VK_N = 1;
public static final int VK_NONCONVERT = 1;
public static final int VK_NUM_LOCK = 1;
public static final int VK_NUMBER_SIGN = 1;
public static final int VK_NUMPAD0 = 1;
public static final int VK_NUMPAD1 = 1;
public static final int VK_NUMPAD2 = 1;
public static final int VK_NUMPAD3 = 1;
public static final int VK_NUMPAD4 = 1;
public static final int VK_NUMPAD5 = 1;
public static final int VK_NUMPAD6 = 1;
public static final int VK_NUMPAD7 = 1;
public static final int VK_NUMPAD8 = 1;
public static final int VK_NUMPAD9 = 1;
public static final int VK_O = 1;
public static final int VK_OPEN_BRACKET = 1;
public static final int VK_P = 1;
public static final int VK_PAGE_DOWN = 1;
public static final int VK_PAGE_UP = 1;
public static final int VK_PASTE = 1;
public static final int VK_PAUSE = 1;
public static final int VK_PERIOD = 1;
public static final int VK_PLUS = 1;
public static final int VK_PREVIOUS_CANDIDATE = 1;
public static final int VK_PRINTSCREEN = 1;
public static final int VK_PROPS = 1;
public static final int VK_Q = 1;
public static final int VK_QUOTE = 1;
public static final int VK_QUOTEDBL = 1;
public static final int VK_R = 1;
public static final int VK_RIGHT = 1;
public static final int VK_RIGHT_PARENTHESIS = 1;
public static final int VK_ROMAN_CHARACTERS = 1;
public static final int VK_S = 1;
public static final int VK_SCROLL_LOCK = 1;
public static final int VK_SEMICOLON = 1;
public static final int VK_SEPARATER = 1;
public static final int VK_SHIFT = 1;
public static final int VK_SLASH = 1;
public static final int VK_SPACE = 1;
public static final int VK_STOP = 1;
public static final int VK_SUBTRACT = 1;
public static final int VK_T = 1;
public static final int VK_TAB = 1;
public static final int VK_U = 1;
public static final int VK_UNDEFINED = 1;
public static final int VK_UNDERSCORE = 1;
public static final int VK_UNDO = 1;
public static final int VK_UP = 1;
public static final int VK_V = 1;
public static final int VK_W = 1;
public static final int VK_X = 1;
public static final int VK_Y = 1;
public static final int VK_Z = 1;
public int getScreenX();
public void setScreenX(int screenX);
public int getScreenY();
public void setScreenY(int screenY);
public int getClientX();
public void setClientX(int clientX);
public int getClientY();
public void setClientY(int clientY);
public boolean getCtrlKey();
public void setCtrlKey(boolean ctrlKey);
public boolean getShiftKey();
public void setShiftKey(boolean shiftKey);
public boolean getAltKey();
public void setAltKey(boolean altKey);
public boolean getMetaKey();
public void setMetaKey(boolean metaKey);
public int getKeyCode();
public void setKeyCode(int keyCode);
public int getCharCode();
public void setCharCode(int charCode);
public short getButton();
public void setButton(short button);
public short getClickCount();
public void setClickCount(short clickCount);
}
org/w3c/dom/events/MutationEvent.java:
package org.w3c.dom.events;
import org.w3c.dom.*;
public interface MutationEvent extends Event {
public Node getRelatedNode();
public void setRelatedNode(Node relatedNode);
public String getPrevValue();
public void setPrevValue(String prevValue);
public String getNewValue();
public void setNewValue(String newValue);
public String getAttrName();
public void setAttrName(String attrName);
}
D.6: Document Object Model Level 2 Filters and Iterators
org/w3c/dom/fi/NodeIterator.java:
package org.w3c.dom.fi;
import org.w3c.dom.*;
public interface NodeIterator {
public int getWhatToShow();
// Constants for whatToShow
public static final int SHOW_ALL = 0xFFFF;
public static final int SHOW_ELEMENT = 0x00000001;
public static final int SHOW_ATTRIBUTE = 0x00000002;
public static final int SHOW_TEXT = 0x00000004;
public static final int SHOW_CDATA_SECTION = 0x00000008;
public static final int SHOW_ENTITY_REFERENCE = 0x00000010;
public static final int SHOW_ENTITY = 0x00000020;
public static final int SHOW_PROCESSING_INSTRUCTION = 0x00000040;
public static final int SHOW_COMMENT = 0x00000080;
public static final int SHOW_DOCUMENT = 0x00000100;
public static final int SHOW_DOCUMENT_TYPE = 0x00000200;
public static final int SHOW_DOCUMENT_FRAGMENT = 0x00000400;
public static final int SHOW_NOTATION = 0x00000800;
public NodeFilter getFilter();
public Node nextNode();
public Node previousNode();
}
org/w3c/dom/fi/NodeFilter.java:
package org.w3c.dom.fi;
import org.w3c.dom.*;
public interface NodeFilter {
// Constants returned by acceptNode
public static final short FILTER_ACCEPT = 1;
public static final short FILTER_REJECT = 2;
public static final short FILTER_SKIP = 3;
public short acceptNode(Node n);
}
org/w3c/dom/fi/TreeWalker.java:
package org.w3c.dom.fi;
import org.w3c.dom.*;
public interface TreeWalker {
public int getWhatToShow();
// Constants for whatToShow
public static final int SHOW_ALL = 0xFFFF;
public static final int SHOW_ELEMENT = 0x00000001;
public static final int SHOW_ATTRIBUTE = 0x00000002;
public static final int SHOW_TEXT = 0x00000004;
public static final int SHOW_CDATA_SECTION = 0x00000008;
public static final int SHOW_ENTITY_REFERENCE = 0x00000010;
public static final int SHOW_ENTITY = 0x00000020;
public static final int SHOW_PROCESSING_INSTRUCTION = 0x00000040;
public static final int SHOW_COMMENT = 0x00000080;
public static final int SHOW_DOCUMENT = 0x00000100;
public static final int SHOW_DOCUMENT_TYPE = 0x00000200;
public static final int SHOW_DOCUMENT_FRAGMENT = 0x00000400;
public static final int SHOW_NOTATION = 0x00000800;
public NodeFilter getFilter();
public Node current();
public Node parentNode();
public Node firstChild();
public Node lastChild();
public Node previousSibling();
public Node nextSibling();
}
org/w3c/dom/fi/DocumentIF.java:
package org.w3c.dom.fi;
import org.w3c.dom.*;
public interface DocumentIF {
public short createNodeIterator(Node root,
short whatToShow,
NodeFilter filter);
}
D.7: Document Object Model Level 2 Range
org/w3c/dom/range/RangeException.java:
package org.w3c.dom.range;
import org.w3c.dom.*;
public abstract class RangeException extends RuntimeException {
public RangeException(short code, String message) {
super(message);
this.code = code;
}
public short code;
// RangeExceptionCode
public static final short BAD_ENDPOINTS_ERR = 201;
public static final short INVALID_NODE_TYPE_ERR = 202;
public static final short NULL_NODE_ERR = 203;
}
org/w3c/dom/range/Range.java:
package org.w3c.dom.range;
import org.w3c.dom.*;
public interface Range {
public Node getStartContainer();
public int getStartOffset();
public Node getEndContainer();
public int getEndOffset();
public boolean getIsCollapsed();
public Node getCommonAncestorContainer();
public void setStart(Node node,
int offset)
throws RangeException;
public void setEnd(Node node,
int offset)
throws RangeException;
public void setStartBefore(Node node)
throws RangeException;
public void setStartAfter(Node node)
throws RangeException;
public void setEndBefore(Node node)
throws RangeException;
public void setEndAfter(Node node)
throws RangeException;
public void collapse(boolean toStart);
public void selectNode(Node node)
throws RangeException;
public void selectNodeContents(Node node)
throws RangeException;
public static final int StartToStart = 1;
public static final int StartToEnd = 2;
public static final int EndToEnd = 3;
public static final int EndToStart = 4;
public short compareEndPoints(int how,
Range sourceRange)
throws DOMException;
public void deleteContents()
throws DOMException;
public DocumentFragment extractContents()
throws DOMException;
public DocumentFragment cloneContents()
throws DOMException;
public void insertNode(Node node)
throws DOMException, RangeException;
public void surroundContents(Node node)
throws DOMException, RangeException;
public Range cloneRange();
public String toString();
}
Appendix E: ECMA Script Language Binding
This appendix contains the complete ECMA Script binding for the Level 2
Document Object Model definitions. The definitions are divided into Core,
Namespaces, Stylesheets, CSS, Events, Filters and Iterators, and Range.
E.1: Document Object Model Level 2 Core
Object DocumentType2
DocumentType2 has the all the properties and methods of DocumentType as
well as the properties and methods defined below.
The DocumentType2 object has the following properties:
publicID
This property is of type String.
systemID
This property is of type String.
Object DOMImplementation2
DOMImplementation2 has the all the properties and methods of
DOMImplementation as well as the properties and methods defined below.
The DOMImplementation2 object has the following methods:
createDocumentType(name, publicID, systemID)
This method returns a DocumentType. The name parameter is of
type DOMString. The publicID parameter is of type DOMString.
The systemID parameter is of type DOMString.
createDocument(name, doctype)
This method returns a Document. The name parameter is of type
DOMString. The doctype parameter is of type DocumentType.
Object Document2
Document2 has the all the properties and methods of Document as well as
the properties and methods defined below.
The Document2 object has the following methods:
importNode(importedNode, deep)
This method returns a Node. The importedNode parameter is of
type Node. The deep parameter is of type boolean.
Object Node2
Node2 has the all the properties and methods of Node as well as the
properties and methods defined below.
The Node2 object has the following methods:
supports(feature, version)
This method returns a boolean. The feature parameter is of
type DOMString. The version parameter is of type DOMString.
Object Attr2
Attr2 has the all the properties and methods of Attr as well as the
properties and methods defined below.
The Attr2 object has the following properties:
ownerElement
This property is of type Element.
Object HTMLDOMImplementation
HTMLDOMImplementation has the all the properties and methods of
DOMImplementation as well as the properties and methods defined below.
The HTMLDOMImplementation object has the following methods:
createHTMLDocument(title)
This method returns a HTMLDocument. The title parameter is of
type DOMString.
E.2: Document Object Model Level 2 Namespaces
Object NodeNS
The NodeNS object has the following properties:
namespaceName
This property is of type String.
prefix
This property is of type String.
localName
This property is of type String.
Object DocumentNS
The DocumentNS object has the following methods:
createElementNS(namespaceName, qualifiedName)
This method returns a Element. The namespaceName parameter is
of type DOMString. The qualifiedName parameter is of type
DOMString.
createAttributeNS(namespaceName, qualifiedName)
This method returns a Attr. The namespaceName parameter is of
type DOMString. The qualifiedName parameter is of type
DOMString.
getElementsByTagNameNS(namespaceName, localName)
This method returns a NodeList. The namespaceName parameter
is of type DOMString. The localName parameter is of type
DOMString.
Object ElementNS
The ElementNS object has the following methods:
getAttributeNS(namespaceName, localName)
This method returns a DOMString. The namespaceName parameter
is of type DOMString. The localName parameter is of type
DOMString.
setAttributeNS(namespaceName, localName, value)
This method returns a void. The namespaceName parameter is of
type DOMString. The localName parameter is of type DOMString.
The value parameter is of type DOMString.
removeAttributeNS(namespaceName, localName)
This method returns a void. The namespaceName parameter is of
type DOMString. The localName parameter is of type DOMString.
getAttributeNodeNS(namespaceName, localName)
This method returns a Attr. The namespaceName parameter is of
type DOMString. The localName parameter is of type DOMString.
setAttributeNodeNS(newAttr)
This method returns a Attr. The newAttr parameter is of type
Attr.
getElementsByTagNameNS(namespaceName, localName)
This method returns a NodeList. The namespaceName parameter
is of type DOMString. The localName parameter is of type
DOMString.
Object NodeNS
The NodeNS object has the following properties:
universalName
This property is of type String.
namespaceName
This property is of type String.
prefix
This property is of type String.
localName
This property is of type String.
Object Document changes
The Document changes object has the following methods:
createElement(universalName)
This method returns a Element. The universalName parameter is
of type DOMString.
createAttribute(universalName)
This method returns a Attr. The universalName parameter is of
type DOMString.
getElementsByTagName(universalName)
This method returns a NodeList. The universalName parameter
is of type DOMString.
Object Element changes
The Element changes object has the following methods:
getAttribute(universalName)
This method returns a DOMString. The universalName parameter
is of type DOMString.
setAttribute(universalName, value)
This method returns a void. The universalName parameter is of
type DOMString. The value parameter is of type DOMString.
removeAttribute(universalName)
This method returns a void. The universalName parameter is of
type DOMString.
getAttributeNode(universalName)
This method returns a Attr. The universalName parameter is of
type DOMString.
setAttributeNode(newAttr)
This method returns a Attr. The newAttr parameter is of type
Attr.
getElementsByTagName(universalName)
This method returns a NodeList. The universalName parameter
is of type DOMString.
E.3: Document Object Model Level 2 Stylesheets
Object StyleSheet
The StyleSheet object has the following properties:
type
This property is of type String.
disabled
This property is of type boolean.
ownerNode
This property is of type Node.
parentStyleSheet
This property is of type StyleSheet.
href
This property is of type String.
title
This property is of type String.
media
This property is of type MediaList.
Object StyleSheetList
The StyleSheetList object has the following properties:
length
This property is of type int.
The StyleSheetList object has the following methods:
item(index)
This method returns a StyleSheet. The index parameter is of
type unsigned long.
Object MediaList
The MediaList object has the following properties:
cssText
This property is of type String.
length
This property is of type int.
The MediaList object has the following methods:
item(index)
This method returns a DOMString. The index parameter is of
type unsigned long.
delete(oldMedium)
This method returns a void. The oldMedium parameter is of
type DOMString.
append(newMedium)
This method returns a void. The newMedium parameter is of
type DOMString.
Object DocumentStyle
The DocumentStyle object has the following properties:
styleSheets
This property is of type StyleSheetList.
E.4: Document Object Model Level 2 CSS
Object CSSStyleSheet
CSSStyleSheet has the all the properties and methods of StyleSheet as
well as the properties and methods defined below.
The CSSStyleSheet object has the following properties:
ownerRule
This property is of type CSSRule.
cssRules
This property is of type CSSRuleList.
The CSSStyleSheet object has the following methods:
insertRule(rule, index)
This method returns a unsigned long. The rule parameter is of
type DOMString. The index parameter is of type unsigned long.
deleteRule(index)
This method returns a void. The index parameter is of type
unsigned long.
Object CSSRuleList
The CSSRuleList object has the following properties:
length
This property is of type int.
The CSSRuleList object has the following methods:
item(index)
This method returns a CSSRule. The index parameter is of type
unsigned long.
Object CSSRule
The CSSRule object has the following properties:
type
This property is of type short.
cssText
This property is of type String.
parentStyleSheet
This property is of type CSSStyleSheet.
parentRule
This property is of type CSSRule.
Object CSSStyleRule
CSSStyleRule has the all the properties and methods of CSSRule as well
as the properties and methods defined below.
The CSSStyleRule object has the following properties:
selectorText
This property is of type String.
style
This property is of type CSSStyleDeclaration.
Object CSSMediaRule
CSSMediaRule has the all the properties and methods of CSSRule as well
as the properties and methods defined below.
The CSSMediaRule object has the following properties:
media
This property is of type MediaList.
cssRules
This property is of type CSSRuleList.
The CSSMediaRule object has the following methods:
insertRule(rule, index)
This method returns a unsigned long. The rule parameter is of
type DOMString. The index parameter is of type unsigned long.
deleteRule(index)
This method returns a void. The index parameter is of type
unsigned long.
Object CSSFontFaceRule
CSSFontFaceRule has the all the properties and methods of CSSRule as
well as the properties and methods defined below.
The CSSFontFaceRule object has the following properties:
style
This property is of type CSSStyleDeclaration.
Object CSSPageRule
CSSPageRule has the all the properties and methods of CSSRule as well
as the properties and methods defined below.
The CSSPageRule object has the following properties:
selectorText
This property is of type String.
style
This property is of type CSSStyleDeclaration.
Object CSSImportRule
CSSImportRule has the all the properties and methods of CSSRule as well
as the properties and methods defined below.
The CSSImportRule object has the following properties:
href
This property is of type String.
media
This property is of type MediaList.
styleSheet
This property is of type CSSStyleSheet.
Object CSSCharsetRule
CSSCharsetRule has the all the properties and methods of CSSRule as
well as the properties and methods defined below.
The CSSCharsetRule object has the following properties:
encoding
This property is of type String.
Object CSSUnknownRule
CSSUnknownRule has the all the properties and methods of CSSRule as
well as the properties and methods defined below.
Object CSSStyleDeclaration
The CSSStyleDeclaration object has the following properties:
cssText
This property is of type String.
length
This property is of type int.
parentRule
This property is of type CSSRule.
The CSSStyleDeclaration object has the following methods:
getPropertyValue(propertyName)
This method returns a DOMString. The propertyName parameter
is of type DOMString.
getPropertyCSSValue(propertyName)
This method returns a CSSValue. The propertyName parameter is
of type DOMString.
removeProperty(propertyName)
This method returns a DOMString. The propertyName parameter
is of type DOMString.
getPropertyPriority(propertyName)
This method returns a DOMString. The propertyName parameter
is of type DOMString.
setProperty(propertyName, value, priority)
This method returns a void. The propertyName parameter is of
type DOMString. The value parameter is of type DOMString. The
priority parameter is of type DOMString.
item(index)
This method returns a DOMString. The index parameter is of
type unsigned long.
Object CSSValue
The CSSValue object has the following properties:
cssText
This property is of type String.
valueType
This property is of type short.
Object CSSPrimitiveValue
CSSPrimitiveValue has the all the properties and methods of CSSValue as
well as the properties and methods defined below.
The CSSPrimitiveValue object has the following properties:
primitiveType
This property is of type short.
The CSSPrimitiveValue object has the following methods:
setFloatValue(unitType, floatValue)
This method returns a void. The unitType parameter is of type
unsigned short. The floatValue parameter is of type float.
getFloatValue(unitType)
This method returns a float. The unitType parameter is of
type unsigned short.
setStringValue(stringType, stringValue)
This method returns a void. The stringType parameter is of
type unsigned short. The stringValue parameter is of type
DOMString.
getStringValue()
This method returns a DOMString.
getCounterValue()
This method returns a Counter.
getRectValue()
This method returns a Rect.
getRGBColorValue()
This method returns a RGBColor.
Object CSSValueList
CSSValueList has the all the properties and methods of CSSValue as well
as the properties and methods defined below.
The CSSValueList object has the following properties:
length
This property is of type int.
The CSSValueList object has the following methods:
item(index)
This method returns a CSSValue. The index parameter is of
type unsigned long.
Object RGBColor
The RGBColor object has the following properties:
red
This property is of type CSSValue.
green
This property is of type CSSValue.
blue
This property is of type CSSValue.
Object Rect
The Rect object has the following properties:
top
This property is of type CSSValue.
right
This property is of type CSSValue.
bottom
This property is of type CSSValue.
left
This property is of type CSSValue.
Object Counter
The Counter object has the following properties:
identifier
This property is of type String.
listStyle
This property is of type String.
separator
This property is of type String.
Object CSS2Azimuth
CSS2Azimuth has the all the properties and methods of CSSValue as well
as the properties and methods defined below.
The CSS2Azimuth object has the following properties:
azimuthType
This property is of type short.
identifier
This property is of type String.
behind
This property is of type boolean.
The CSS2Azimuth object has the following methods:
setAngleValue(unitType, floatValue)
This method returns a void. The unitType parameter is of type
unsigned short. The floatValue parameter is of type float.
getAngleValue(unitType)
This method returns a float. The unitType parameter is of
type unsigned short.
setIdentifier(identifier, behind)
This method returns a void. The identifier parameter is of
type DOMString. The behind parameter is of type boolean.
Object CSS2BackgroundPosition
CSS2BackgroundPosition has the all the properties and methods of
CSSValue as well as the properties and methods defined below.
The CSS2BackgroundPosition object has the following properties:
horizontalType
This property is of type short.
verticalType
This property is of type short.
horizontalIdentifier
This property is of type String.
verticalIdentifier
This property is of type String.
The CSS2BackgroundPosition object has the following methods:
getHorizontalPosition(horizontalType)
This method returns a float. The horizontalType parameter is
of type float.
getVerticalPosition(verticalType)
This method returns a float. The verticalType parameter is of
type float.
setHorizontalPosition(horizontalType, value)
This method returns a void. The horizontalType parameter is
of type unsigned short. The value parameter is of type float.
setVerticalPosition(verticalType, value)
This method returns a void. The verticalType parameter is of
type unsigned short. The value parameter is of type float.
setPositionIdentifier(horizontalIdentifier, verticalIdentifier)
This method returns a void. The horizontalIdentifier
parameter is of type DOMString. The verticalIdentifier
parameter is of type DOMString.
Object CSS2BorderSpacing
CSS2BorderSpacing has the all the properties and methods of CSSValue as
well as the properties and methods defined below.
The CSS2BorderSpacing object has the following properties:
horizontalType
This property is of type short.
verticalType
This property is of type short.
The CSS2BorderSpacing object has the following methods:
getHorizontalSpacing(horizontalType)
This method returns a float. The horizontalType parameter is
of type float.
getVerticalSpacing(verticalType)
This method returns a float. The verticalType parameter is of
type float.
setHorizontalSpacing(horizontalType, value)
This method returns a void. The horizontalType parameter is
of type unsigned short. The value parameter is of type float.
setVerticalSpacing(verticalType, value)
This method returns a void. The verticalType parameter is of
type unsigned short. The value parameter is of type float.
setInherit()()
This method returns a void.
Object CSS2CounterReset
The CSS2CounterReset object has the following properties:
identifier
This property is of type String.
reset
This property is of type short.
Object CSS2CounterIncrement
The CSS2CounterIncrement object has the following properties:
identifier
This property is of type String.
increment
This property is of type short.
Object CSS2Cursor
CSS2Cursor has the all the properties and methods of CSSValue as well
as the properties and methods defined below.
The CSS2Cursor object has the following properties:
cursorType
This property is of type short.
uris
This property is of type CSSValueList.
predefinedCursor
This property is of type String.
Object CSS2PlayDuring
CSS2PlayDuring has the all the properties and methods of CSSValue as
well as the properties and methods defined below.
The CSS2PlayDuring object has the following properties:
playDuringType
This property is of type short.
playDuringIdentifier
This property is of type String.
uri
This property is of type String.
mix
This property is of type boolean.
repeat
This property is of type boolean.
Object CSS2TextShadow
The CSS2TextShadow object has the following properties:
color
This property is of type CSSValue.
horizontal
This property is of type CSSValue.
vertical
This property is of type CSSValue.
blur
This property is of type CSSValue.
Object CSS2FontFaceSrc
The CSS2FontFaceSrc object has the following properties:
uri
This property is of type String.
format
This property is of type CSSValueList.
fontFaceName
This property is of type String.
Object CSS2FontFaceWidths
The CSS2FontFaceWidths object has the following properties:
urange
This property is of type String.
numbers
This property is of type CSSValueList.
Object CSS2PageSize
CSS2PageSize has the all the properties and methods of CSSValue as well
as the properties and methods defined below.
The CSS2PageSize object has the following properties:
widthType
This property is of type short.
heightType
This property is of type short.
identifier
This property is of type String.
The CSS2PageSize object has the following methods:
getWidth(widthType)
This method returns a float. The widthType parameter is of
type float.
getHeightSize(heightType)
This method returns a float. The heightType parameter is of
type float.
setWidthSize(widthType, value)
This method returns a void. The widthType parameter is of
type unsigned short. The value parameter is of type float.
setHeightSize(heightType, value)
This method returns a void. The heightType parameter is of
type unsigned short. The value parameter is of type float.
setIdentifier(identifier)
This method returns a void. The identifier parameter is of
type DOMString.
Object CSS2Properties
The CSS2Properties object has the following properties:
azimuth
This property is of type String.
background
This property is of type String.
backgroundAttachment
This property is of type String.
backgroundColor
This property is of type String.
backgroundImage
This property is of type String.
backgroundPosition
This property is of type String.
backgroundRepeat
This property is of type String.
border
This property is of type String.
borderCollapse
This property is of type String.
borderColor
This property is of type String.
borderSpacing
This property is of type String.
borderStyle
This property is of type String.
borderTop
This property is of type String.
borderRight
This property is of type String.
borderBottom
This property is of type String.
borderLeft
This property is of type String.
borderTopColor
This property is of type String.
borderRightColor
This property is of type String.
borderBottomColor
This property is of type String.
borderLeftColor
This property is of type String.
borderTopStyle
This property is of type String.
borderRightStyle
This property is of type String.
borderBottomStyle
This property is of type String.
borderLeftStyle
This property is of type String.
borderTopWidth
This property is of type String.
borderRightWidth
This property is of type String.
borderBottomWidth
This property is of type String.
borderLeftWidth
This property is of type String.
borderWidth
This property is of type String.
bottom
This property is of type String.
captionSide
This property is of type String.
clear
This property is of type String.
clip
This property is of type String.
color
This property is of type String.
content
This property is of type String.
counterIncrement
This property is of type String.
counterReset
This property is of type String.
cue
This property is of type String.
cueAfter
This property is of type String.
cueBefore
This property is of type String.
cursor
This property is of type String.
direction
This property is of type String.
display
This property is of type String.
elevation
This property is of type String.
emptyCells
This property is of type String.
cssFloat
This property is of type String.
font
This property is of type String.
fontFamily
This property is of type String.
fontSize
This property is of type String.
fontSizeAdjust
This property is of type String.
fontStretch
This property is of type String.
fontStyle
This property is of type String.
fontVariant
This property is of type String.
fontWeight
This property is of type String.
height
This property is of type String.
left
This property is of type String.
letterSpacing
This property is of type String.
lineHeight
This property is of type String.
listStyle
This property is of type String.
listStyleImage
This property is of type String.
listStylePosition
This property is of type String.
listStyleType
This property is of type String.
margin
This property is of type String.
marginTop
This property is of type String.
marginRight
This property is of type String.
marginBottom
This property is of type String.
marginLeft
This property is of type String.
markerOffset
This property is of type String.
marks
This property is of type String.
maxHeight
This property is of type String.
maxWidth
This property is of type String.
minHeight
This property is of type String.
minWidth
This property is of type String.
orphans
This property is of type String.
outline
This property is of type String.
outlineColor
This property is of type String.
outlineStyle
This property is of type String.
outlineWidth
This property is of type String.
overflow
This property is of type String.
padding
This property is of type String.
paddingTop
This property is of type String.
paddingRight
This property is of type String.
paddingBottom
This property is of type String.
paddingLeft
This property is of type String.
page
This property is of type String.
pageBreakAfter
This property is of type String.
pageBreakBefore
This property is of type String.
pageBreakInside
This property is of type String.
pause
This property is of type String.
pauseAfter
This property is of type String.
pauseBefore
This property is of type String.
pitch
This property is of type String.
pitchRange
This property is of type String.
playDuring
This property is of type String.
position
This property is of type String.
quotes
This property is of type String.
richness
This property is of type String.
right
This property is of type String.
size
This property is of type String.
speak
This property is of type String.
speakHeader
This property is of type String.
speakNumeral
This property is of type String.
speakPunctuation
This property is of type String.
speechRate
This property is of type String.
stress
This property is of type String.
tableLayout
This property is of type String.
textAlign
This property is of type String.
textDecoration
This property is of type String.
textIndent
This property is of type String.
textShadow
This property is of type String.
textTransform
This property is of type String.
top
This property is of type String.
unicodeBidi
This property is of type String.
verticalAlign
This property is of type String.
visibility
This property is of type String.
voiceFamily
This property is of type String.
volume
This property is of type String.
whiteSpace
This property is of type String.
widows
This property is of type String.
width
This property is of type String.
wordSpacing
This property is of type String.
zIndex
This property is of type String.
E.5: Document Object Model Level 2 Events
Object EventTarget
The EventTarget object has the following methods:
addEventListener(type, listener, useCapture)
This method returns a void. The type parameter is of type
DOMString. The listener parameter is of type EventListener.
The useCapture parameter is of type boolean.
removeEventListener(type, listener, useCapture)
This method returns a void. The type parameter is of type
DOMString. The listener parameter is of type EventListener.
The useCapture parameter is of type boolean.
Object EventListener
The EventListener object has the following methods:
handleEvent(event)
This method returns a void. The event parameter is of type
Event.
Object Event
The Event object has the following properties:
type
This property is of type String.
target
This property is of type Node.
currentNode
This property is of type Node.
eventPhase
This property is of type short.
The Event object has the following methods:
preventBubble()
This method returns a void.
preventCapture()
This method returns a void.
preventDefault()
This method returns a void.
Object UIEvent
UIEvent has the all the properties and methods of Event as well as the
properties and methods defined below.
The UIEvent object has the following properties:
screenX
This property is of type long.
screenY
This property is of type long.
clientX
This property is of type long.
clientY
This property is of type long.
ctrlKey
This property is of type boolean.
shiftKey
This property is of type boolean.
altKey
This property is of type boolean.
metaKey
This property is of type boolean.
keyCode
This property is of type int.
charCode
This property is of type int.
button
This property is of type short.
clickCount
This property is of type short.
Object MutationEvent
MutationEvent has the all the properties and methods of Event as well
as the properties and methods defined below.
The MutationEvent object has the following properties:
relatedNode
This property is of type Node.
prevValue
This property is of type String.
newValue
This property is of type String.
attrName
This property is of type String.
E.6: Document Object Model Level 2 Filters and Iterators
Object NodeIterator
The NodeIterator object has the following properties:
whatToShow
This property is of type long.
filter
This property is of type NodeFilter.
The NodeIterator object has the following methods:
nextNode()
This method returns a Node.
previousNode()
This method returns a Node.
Object NodeFilter
The NodeFilter object has the following methods:
acceptNode(n)
This method returns a short. The n parameter is of type Node.
Object TreeWalker
The TreeWalker object has the following properties:
whatToShow
This property is of type long.
filter
This property is of type NodeFilter.
The TreeWalker object has the following methods:
current()
This method returns a Node.
parentNode()
This method returns a Node.
firstChild()
This method returns a Node.
lastChild()
This method returns a Node.
previousSibling()
This method returns a Node.
nextSibling()
This method returns a Node.
Object DocumentIF
The DocumentIF object has the following methods:
createNodeIterator(root, whatToShow, filter)
This method returns a short. The root parameter is of type
Node. The whatToShow parameter is of type short. The filter
parameter is of type NodeFilter.
E.7: Document Object Model Level 2 Range
Object Range
The Range object has the following properties:
startContainer
This property is of type Node.
startOffset
This property is of type long.
endContainer
This property is of type Node.
endOffset
This property is of type long.
isCollapsed
This property is of type boolean.
commonAncestorContainer
This property is of type Node.
The Range object has the following methods:
setStart(node, offset)
This method returns a void. The node parameter is of type
Node. The offset parameter is of type long.
setEnd(node, offset)
This method returns a void. The node parameter is of type
Node. The offset parameter is of type long.
setStartBefore(node)
This method returns a void. The node parameter is of type
Node.
setStartAfter(node)
This method returns a void. The node parameter is of type
Node.
setEndBefore(node)
This method returns a void. The node parameter is of type
Node.
setEndAfter(node)
This method returns a void. The node parameter is of type
Node.
collapse(toStart)
This method returns a void. The toStart parameter is of type
boolean.
selectNode(node)
This method returns a void. The node parameter is of type
Node.
selectNodeContents(node)
This method returns a void. The node parameter is of type
Node.
compareEndPoints(how, sourceRange)
This method returns a short. The how parameter is of type
CompareHow. The sourceRange parameter is of type Range.
deleteContents()
This method returns a void.
extractContents()
This method returns a DocumentFragment.
cloneContents()
This method returns a DocumentFragment.
insertNode(node)
This method returns a void. The node parameter is of type
Node.
surroundContents(node)
This method returns a void. The node parameter is of type
Node.
cloneRange()
This method returns a Range.
toString()
This method returns a DOMString.
References
CORBA
OMG (Object Management Group) The Common Object Request Broker:
Architecture and Specification. See
http://www.omg.org/corba/corbiiop.htm.
DOM-Level-1
W3C (World Wide Web Consortium) DOM Level 1 Specification. See
http://www.w3.org/TR/REC-DOM-Level-1.
ECMAScript
ECMA (European Computer Manufacturers Association) ECMAScript Language
Specification. See http://www.ecma.ch/stand/ECMA-262.htm.
HTML4.0
W3C (World Wide Web Consortium) HTML 4.0 Specification. See
http://www.w3.org/TR/REC-html40.
Java
Sun The Java Language Specification. See
http://java.sun.com/docs/books/jls/.
Namespaces
W3C (World Wide Web Consortium) Namespaces in XML . See
http://www.w3.org/TR/REC-xml-names.
Unicode
The Unicode Consortium. The Unicode Standard, Version 2.0. Reading,
Mass.: Addison-Wesley Developers Press, 1996.
XML
W3C (World Wide Web Consortium) Extensible Markup Language (XML) 1.0.
See http://www.w3.org/TR/REC-xml.
Index
AT_TARGET 1 Attr2 1 BAD_ENDPOINTS_ERR 1
BUBBLING_PHASE 1 CAPTURING_PHASE 1 CHARSET_RULE 1
CHAR_UNDEFINED 1 CSS2Azimuth 1 CSS2BackgroundPosition 1
CSS2BorderSpacing 1 CSS2CounterIncrement 1 CSS2CounterReset 1
CSS2Cursor 1 CSS2FontFaceSrc 1 CSS2FontFaceWidths 1
CSS2PageSize 1 CSS2PlayDuring 1 CSS2Properties 1
CSS2TextShadow 1 CSSCharsetRule 1 CSSFontFaceRule 1
CSSImportRule 1 CSSMediaRule 1 CSSPageRule 1
CSSPrimitiveValue 1 CSSRule 1 CSSRuleList 1
CSSStyleDeclaration 1 CSSStyleRule 1 CSSStyleSheet 1
CSSUnknownRule 1 CSSValue 1 CSSValueList 1
CSS_ATTR 1 CSS_CM 1 CSS_COUNTER 1
CSS_CUSTOM 1 CSS_DEG 1 CSS_DIMENSION 1
CSS_EMS 1 CSS_EXS 1 CSS_GRAD 1
CSS_HZ 1 CSS_IDENT 1 CSS_IN 1
CSS_INHERIT 1 CSS_KHZ 1 CSS_MM 1
CSS_MS 1 CSS_NUMBER 1 CSS_PC 1
CSS_PERCENTAGE 1 CSS_PRIMITIVE_VALUE 1 CSS_PT 1
CSS_PX 1 CSS_RAD 1 CSS_RECT 1
CSS_RGBCOLOR 1 CSS_S 1 CSS_STRING 1
CSS_UNKNOWN 1 CSS_URI 1 CSS_VALUE_LIST 1
Counter 1 DOMImplementation2 1 Document2 1
DocumentIF 1 DocumentNS 1 DocumentStyle 1
DocumentType2 1 ElementNS 1 Event 1
EventListener 1 EventTarget 1 FILTER_ACCEPT 1
FILTER_REJECT 1 FILTER_SKIP 1 FONT_FACE_RULE 1
HTMLDOMImplementation 1 IMPORT_RULE 1 INVALID_NODE_TYPE_ERR 1
KEY_FIRST 1 KEY_LAST 1 MEDIA_RULE 1
MediaList 1 MutationEvent 1 NULL_NODE_ERR 1
Node2 1 NodeFilter 1 NodeIterator 1
NodeNS 1, 2 PAGE_RULE 1 RGBColor 1
Range 1 RangeException 1 Rect 1
SHOW_ALL 1, 2 SHOW_ATTRIBUTE 1, 2 SHOW_CDATA_SECTION 1, 2
SHOW_COMMENT 1, 2 SHOW_DOCUMENT 1, 2 SHOW_DOCUMENT_FRAGMENT 1, 2
SHOW_DOCUMENT_TYPE 1, 2 SHOW_ELEMENT 1, 2 SHOW_ENTITY 1, 2
SHOW_ENTITY_REFERENCE 1, 2 SHOW_NOTATION 1, 2 SHOW_PROCESSING_INSTRUCTION
1, 2
SHOW_TEXT 1, 2 STYLE_RULE 1 StyleSheet 1
StyleSheetList 1 TreeWalker 1 UIEvent 1
UNKNOWN_RULE 1 VK_0 1 VK_1 1
VK_2 1 VK_3 1 VK_4 1
VK_5 1 VK_6 1 VK_7 1
VK_8 1 VK_9 1 VK_A 1
VK_ACCEPT 1 VK_ADD 1 VK_AGAIN 1
VK_ALL_CANDIDATES 1 VK_ALPHANUMERIC 1 VK_ALT 1
VK_ALT_GRAPH 1 VK_AMPERSAND 1 VK_ASTERISK 1
VK_AT 1 VK_B 1 VK_BACK_QUOTE 1
VK_BACK_SLASH 1 VK_BACK_SPACE 1 VK_BRACELEFT 1
VK_BRACERIGHT 1 VK_C 1 VK_CANCEL 1
VK_CAPS_LOCK 1 VK_CIRCUMFLEX 1 VK_CLEAR 1
VK_CLOSE_BRACKET 1 VK_CODE_INPUT 1 VK_COLON 1
VK_COMMA 1 VK_COMPOSE 1 VK_CONTROL 1
VK_CONVERT 1 VK_COPY 1 VK_CUT 1
VK_D 1 VK_DEAD_ABOVEDOT 1 VK_DEAD_ABOVERING 1
VK_DEAD_ACUTE 1 VK_DEAD_BREVE 1 VK_DEAD_CARON 1
VK_DEAD_CEDILLA 1 VK_DEAD_CIRCUMFLEX 1 VK_DEAD_DIAERESIS 1
VK_DEAD_DOUBLEACUTE 1 VK_DEAD_GRAVE 1 VK_DEAD_IOTA 1
VK_DEAD_MACRON 1 VK_DEAD_OGONEK 1 VK_DEAD_SEMIVOICED_SOUND 1
VK_DEAD_TILDE 1 VK_DEAD_VOICED_SOUND 1 VK_DECIMAL 1
VK_DELETE 1 VK_DIVIDE 1 VK_DOLLAR 1
VK_DOWN 1 VK_E 1 VK_END 1
VK_ENTER 1 VK_EQUALS 1 VK_ESCAPE 1
VK_EURO_SIGN 1 VK_EXCLAMATION_MARK 1 VK_F 1
VK_F1 1 VK_F10 1 VK_F11 1
VK_F12 1 VK_F13 1 VK_F14 1
VK_F15 1 VK_F16 1 VK_F17 1
VK_F18 1 VK_F19 1 VK_F2 1
VK_F20 1 VK_F21 1 VK_F22 1
VK_F23 1 VK_F24 1 VK_F3 1
VK_F4 1 VK_F5 1 VK_F6 1
VK_F7 1 VK_F8 1 VK_F9 1
VK_FINAL 1 VK_FIND 1 VK_FULL_WIDTH 1
VK_G 1 VK_GREATER 1 VK_H 1
VK_HALF_WIDTH 1 VK_HELP 1 VK_HIRAGANA 1
VK_HOME 1 VK_I 1 VK_INSERT 1
VK_INVERTED_EXCLAMATION_MARK
1 VK_J 1 VK_JAPANESE_HIRAGANA 1
VK_JAPANESE_KATAKANA 1 VK_JAPANESE_ROMAN 1 VK_K 1
VK_KANA 1 VK_KANJI 1 VK_KATAKANA 1
VK_KP_DOWN 1 VK_KP_LEFT 1 VK_KP_RIGHT 1
VK_KP_UP 1 VK_L 1 VK_LEFT 1
VK_LEFT_PARENTHESIS 1 VK_LESS 1 VK_M 1
VK_META 1 VK_MINUS 1 VK_MODECHANGE 1
VK_MULTIPLY 1 VK_N 1 VK_NONCONVERT 1
VK_NUMBER_SIGN 1 VK_NUMPAD0 1 VK_NUMPAD1 1
VK_NUMPAD2 1 VK_NUMPAD3 1 VK_NUMPAD4 1
VK_NUMPAD5 1 VK_NUMPAD6 1 VK_NUMPAD7 1
VK_NUMPAD8 1 VK_NUMPAD9 1 VK_NUM_LOCK 1
VK_O 1 VK_OPEN_BRACKET 1 VK_P 1
VK_PAGE_DOWN 1 VK_PAGE_UP 1 VK_PASTE 1
VK_PAUSE 1 VK_PERIOD 1 VK_PLUS 1
VK_PREVIOUS_CANDIDATE 1 VK_PRINTSCREEN 1 VK_PROPS 1
VK_Q 1 VK_QUOTE 1 VK_QUOTEDBL 1
VK_R 1 VK_RIGHT 1 VK_RIGHT_PARENTHESIS 1
VK_ROMAN_CHARACTERS 1 VK_S 1 VK_SCROLL_LOCK 1
VK_SEMICOLON 1 VK_SEPARATER 1 VK_SHIFT 1
VK_SLASH 1 VK_SPACE 1 VK_STOP 1
VK_SUBTRACT 1 VK_T 1 VK_TAB 1
VK_U 1 VK_UNDEFINED 1 VK_UNDERSCORE 1
VK_UNDO 1 VK_UP 1 VK_V 1
VK_W 1 VK_X 1 VK_Y 1
VK_Z 1 acceptNode 1 addEventListener 1
altKey 1 append 1 attrName 1
azimuth 1 azimuthType 1 background 1
backgroundAttachment 1 backgroundColor 1 backgroundImage 1
backgroundPosition 1 backgroundRepeat 1 behind 1
blue 1 blur 1 border 1
borderBottom 1 borderBottomColor 1 borderBottomStyle 1
borderBottomWidth 1 borderCollapse 1 borderColor 1
borderLeft 1 borderLeftColor 1 borderLeftStyle 1
borderLeftWidth 1 borderRight 1 borderRightColor 1
borderRightStyle 1 borderRightWidth 1 borderSpacing 1
borderStyle 1 borderTop 1 borderTopColor 1
borderTopStyle 1 borderTopWidth 1 borderWidth 1
bottom 1, 2 button 1 captionSide 1
charCode 1 clear 1 clickCount 1
clientX 1 clientY 1 clip 1
cloneContents 1 cloneRange 1 collapse 1
color 1, 2 commonAncestorContainer compareEndPoints 1
1
content 1 counterIncrement 1 counterReset 1
createAttribute 1 createAttributeNS 1 createDocument 1
createDocumentType 1 createElement 1 createElementNS 1
createHTMLDocument 1 createNodeIterator 1 cssFloat 1
cssRules 1, 2 cssText 1, 2, 3, 4 ctrlKey 1
cue 1 cueAfter 1 cueBefore 1
current 1 currentNode 1 cursor 1
cursorType 1 delete 1 deleteContents 1
deleteRule 1, 2 direction 1 disabled 1
display 1 elevation 1 emptyCells 1
encoding 1 endContainer 1 endOffset 1
eventPhase 1 extractContents 1 filter 1, 2
firstChild 1 font 1 fontFaceName 1
fontFamily 1 fontSize 1 fontSizeAdjust 1
fontStretch 1 fontStyle 1 fontVariant 1
fontWeight 1 format 1 getAngleValue 1
getAttribute 1 getAttributeNS 1 getAttributeNode 1
getAttributeNodeNS 1 getCounterValue 1 getElementsByTagName 1, 2
getElementsByTagNameNS 1, 2 getFloatValue 1 getHeightSize 1
getHorizontalPosition 1 getHorizontalSpacing 1 getPropertyCSSValue 1
getPropertyPriority 1 getPropertyValue 1 getRGBColorValue 1
getRectValue 1 getStringValue 1 getVerticalPosition 1
getVerticalSpacing 1 getWidth 1 green 1
handleEvent 1 height 1 heightType 1
horizontal 1 horizontalIdentifier 1 horizontalType 1, 2
href 1, 2 identifier 1, 2, 3, 4, importNode 1
5
increment 1 insertNode 1 insertRule 1, 2
isCollapsed 1 item 1, 2, 3, 4, 5 keyCode 1
lastChild 1 left 1, 2 length 1, 2, 3, 4, 5
letterSpacing 1 lineHeight 1 listStyle 1, 2
listStyleImage 1 listStylePosition 1 listStyleType 1
localName 1, 2 margin 1 marginBottom 1
marginLeft 1 marginRight 1 marginTop 1
markerOffset 1 marks 1 maxHeight 1
maxWidth 1 media 1, 2, 3 metaKey 1
minHeight 1 minWidth 1 mix 1
namespaceName 1, 2 newValue 1 nextNode 1
nextSibling 1 numbers 1 orphans 1
outline 1 outlineColor 1 outlineStyle 1
outlineWidth 1 overflow 1 ownerElement 1
ownerNode 1 ownerRule 1 padding 1
paddingBottom 1 paddingLeft 1 paddingRight 1
paddingTop 1 page 1 pageBreakAfter 1
pageBreakBefore 1 pageBreakInside 1 parentNode 1
parentRule 1, 2 parentStyleSheet 1, 2 pause 1
pauseAfter 1 pauseBefore 1 pitch 1
pitchRange 1 playDuring 1 playDuringIdentifier 1
playDuringType 1 position 1 predefinedCursor 1
prefix 1, 2 prevValue 1 preventBubble 1
preventCapture 1 preventDefault 1 previousNode 1
previousSibling 1 primitiveType 1 publicID 1
quotes 1 red 1 relatedNode 1
removeAttribute 1 removeAttributeNS 1 removeEventListener 1
removeProperty 1 repeat 1 reset 1
richness 1 right 1, 2 screenX 1
screenY 1 selectNode 1 selectNodeContents 1
selectorText 1, 2 separator 1 setAngleValue 1
setAttribute 1 setAttributeNS 1 setAttributeNode 1
setAttributeNodeNS 1 setEnd 1 setEndAfter 1
setEndBefore 1 setFloatValue 1 setHeightSize 1
setHorizontalPosition 1 setHorizontalSpacing 1 setIdentifier 1, 2
setInherit() 1 setPositionIdentifier 1 setProperty 1
setStart 1 setStartAfter 1 setStartBefore 1
setStringValue 1 setVerticalPosition 1 setVerticalSpacing 1
setWidthSize 1 shiftKey 1 size 1
speak 1 speakHeader 1 speakNumeral 1
speakPunctuation 1 speechRate 1 startContainer 1
startOffset 1 stress 1 style 1, 2, 3
styleSheet 1 styleSheets 1 supports 1
surroundContents 1 systemID 1 tableLayout 1
target 1 textAlign 1 textDecoration 1
textIndent 1 textShadow 1 textTransform 1
title 1 toString 1 top 1, 2
type 1, 2, 3 unicodeBidi 1 universalName 1
urange 1 uri 1, 2 uris 1
valueType 1 vertical 1 verticalAlign 1
verticalIdentifier 1 verticalType 1, 2 visibility 1
voiceFamily 1 volume 1 whatToShow 1, 2
whiteSpace 1 widows 1 width 1
widthType 1 wordSpacing 1 zIndex 1