Extends the DOM2 Element interface with  methods for guided document editing. 
Java binding:
package org.w3c.dom.abstractSchemas;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.DOMException;
public interface ElementAS extends Element {
  public short contentType();
  public ASElementDeclaration getElementDeclaration()
   throws DOMException;
  public boolean canSetAttribute(String attrname, String attrval);
  public boolean canSetAttributeNode(Node node);
  public boolean canSetAttributeNodeNS(Node node);
  public boolean canSetAttributeNS(String attrname, 
   String attrval, String namespaceURI, String localName);
  public boolean canRemoveAttribute(String attrname);
  public boolean canRemoveAttributeNS(String attrname, String namespaceURI);
  public boolean canRemoveAttributeNode(Node node);
  public ASDOMStringList getChildElements();
  public ASDOMStringList getParentElements();
  public ASDOMStringList getAttributeList();
}
IDL:
interface ElementAS : Element {
  short                contentType();
  ASElementDeclaration getElementDeclaration() raises(DOMException);
  boolean            canSetAttribute(in DOMString attrname, 
                                     in DOMString attrval);
  boolean            canSetAttributeNode(in Node node);
  boolean            canSetAttributeNodeNS(in Node node);
  boolean            canSetAttributeNS(in DOMString attrname, 
                                       in DOMString attrval, 
                                       in DOMString namespaceURI, 
                                       in DOMString localName);
  boolean            canRemoveAttribute(in DOMString attrname);
  boolean            canRemoveAttributeNS(in DOMString attrname, 
                                          inout DOMString namespaceURI);
  boolean            canRemoveAttributeNode(in Node node);
  ASDOMStringList    getChildElements();
  ASDOMStringList    getParentElements();
  ASDOMStringList    getAttributeList();
};