13 November, 2000

# Appendix A: Changes

Editors
  Arnaud Le Hors, IBM
  Philippe Le Hégaret, W3C

## A.1: Changes between DOM Level 1 Core and DOM Level 2 Core

OMG IDL
  The DOM Level 2 specifications are now using Corba 2.3.1 instead of Corba 2.2.
Type `DOMString`
  The definition of `DOMString` in IDL is now a `valuetype`.

### A.1.1: Changes to DOM Level 1 Core interfaces and exceptions

Interface `Attr`
  The `Attr` interface has one new attribute: `ownerElement`.
Interface `Document`
  The `Document` interface has five new methods: `importNode`, `createElementNS`, `createAttributeNS`, `getElementsByTagNameNS` and `getElementById`.
Interface `NamedNodeMap`
  The `NamedNodeMap` interface has three new methods: `getNamedItemNS`, `setNamedItemNS`, `removeNamedItemNS`.
Interface `Node`
  The `Node` interface has two new methods: `isSupported` and `hasAttributes`.
  `normalize`, previously in the `Element` interface, has been moved in the `Node` interface.
  The `Node` interface has three new attributes: `namespaceURI`, `prefix` and `localName`.
  The `ownerDocument` attribute was specified to be `null` when the node is a `Document`. It now is also `null` when the node is a `DocumentType` which is not used with any `Document` yet.
Interface `DocumentType`
  The `DocumentType` interface has three attributes: `publicId`, `systemId` and `internalSubset`.
Interface `DOMImplementation`
  The `DOMImplementation` interface has two new methods: `createDocumentType` and `createDocument`.
Interface `Element`
  The `Element` interface has eight new methods: `getAttributeNS`, `setAttributeNS`, `removeAttributeNS`, `getAttributeNodeNS`, `setAttributeNodeNS`, `getElementsByTagNameNS`, `hasAttribute` and `hasAttributeNS`.
  The method `normalize` is now inherited from the `Node` interface where it was moved.
Exception `DOMException`
  The `DOMException` has five new exception codes: `INVALID_STATE_ERR`, `SYNTAX_ERR`, `INVALID_MODIFICATION_ERR`, `NAMESPACE_ERR` and `INVALID_ACCESS_ERR`.

### A.1.2: New features

#### A.1.2.1: New types

`DOMTimeStamp`
  The `DOMTimeStamp` type was added to the Core module.