// Extracted from http://dev.w3.org/2006/webapi/WebIDL/ on 2011-05-06
  interface Node {
    readonly attribute unsigned short nodeType;
    // ...
  };

  interface EventTarget {
    void addEventListener(DOMString type,
                          EventListener listener,
                          boolean useCapture);
    // ...
  };

  Node implements EventTarget;
