<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Definitions SYSTEM "widlprocxml.dtd">
<Definitions>
  <Module name="W3CWidget" id="::W3CWidget">
    <webidl>module W3CWidget
{
    [NoInterfaceObject]
    interface W3CWidget {
        readonly attribute DOMString     author;
                readonly attribute DOMString     authorEmail;
        readonly attribute DOMString     authorHref;
                readonly attribute DOMString     description;
                readonly attribute DOMString     id;
                readonly attribute DOMString     name;
                readonly attribute DOMString     shortName;
                readonly attribute <ref>Storage</ref>       preferences;
                readonly attribute DOMString     version;
                readonly attribute unsigned long height;
                readonly attribute unsigned long width;
    };

    [Supplemental, NoInterfaceObject]
    interface WindowWidget {
      readonly attribute <ref>W3CWidget</ref> widget;
    };

    <ref>Window</ref> implements <ref>WindowWidget</ref>;
};</webidl>
    <Interface name="W3CWidget" id="::W3CWidget::W3CWidget">
      <webidl>    [NoInterfaceObject]
    interface W3CWidget {
        readonly attribute DOMString     author;
                readonly attribute DOMString     authorEmail;
        readonly attribute DOMString     authorHref;
                readonly attribute DOMString     description;
                readonly attribute DOMString     id;
                readonly attribute DOMString     name;
                readonly attribute DOMString     shortName;
                readonly attribute <ref>Storage</ref>       preferences;
                readonly attribute DOMString     version;
                readonly attribute unsigned long height;
                readonly attribute unsigned long width;
    };</webidl>
      <ExtendedAttributeList>
        <ExtendedAttribute name="NoInterfaceObject"/>
      </ExtendedAttributeList>
      <Attribute readonly="readonly" name="author" id="::W3CWidget::W3CWidget::author">
        <webidl>        readonly attribute DOMString     author;</webidl>
        <descriptive>
            <brief>
 Author of widget.
            </brief>
        </descriptive>
        <Type type="DOMString"/>
      </Attribute>
      <Attribute readonly="readonly" name="authorEmail" id="::W3CWidget::W3CWidget::authorEmail">
        <webidl>                readonly attribute DOMString     authorEmail;</webidl>
        <descriptive>
            <brief>
 Author e-mail.
            </brief>
        </descriptive>
        <Type type="DOMString"/>
      </Attribute>
      <Attribute readonly="readonly" name="authorHref" id="::W3CWidget::W3CWidget::authorHref">
        <webidl>        readonly attribute DOMString     authorHref;</webidl>
        <descriptive>
            <brief>
 Author web site.
            </brief>
        </descriptive>
        <Type type="DOMString"/>
      </Attribute>
      <Attribute readonly="readonly" name="description" id="::W3CWidget::W3CWidget::description">
        <webidl>                readonly attribute DOMString     description;</webidl>
        <descriptive>
            <brief>
 Description of widget.
            </brief>
        </descriptive>
        <Type type="DOMString"/>
      </Attribute>
      <Attribute readonly="readonly" name="id" id="::W3CWidget::W3CWidget::id">
        <webidl>                readonly attribute DOMString     id;</webidl>
        <descriptive>
            <brief>
 Identifier of widget.
            </brief>
        </descriptive>
        <Type type="DOMString"/>
      </Attribute>
      <Attribute readonly="readonly" name="name" id="::W3CWidget::W3CWidget::name">
        <webidl>                readonly attribute DOMString     name;</webidl>
        <descriptive>
            <brief>
 Name of widget.
            </brief>
        </descriptive>
        <Type type="DOMString"/>
      </Attribute>
      <Attribute readonly="readonly" name="shortName" id="::W3CWidget::W3CWidget::shortName">
        <webidl>                readonly attribute DOMString     shortName;</webidl>
        <descriptive>
            <brief>
 Short name of widget.
            </brief>
        </descriptive>
        <Type type="DOMString"/>
      </Attribute>
      <Attribute readonly="readonly" name="preferences" id="::W3CWidget::W3CWidget::preferences">
        <webidl>                readonly attribute <ref>Storage</ref>       preferences;</webidl>
        <descriptive>
            <brief>
 Preferences.
            </brief>
        </descriptive>
        <Type name="Storage"/>
      </Attribute>
      <Attribute readonly="readonly" name="version" id="::W3CWidget::W3CWidget::version">
        <webidl>                readonly attribute DOMString     version;</webidl>
        <descriptive>
            <brief>
 Version of widget.
            </brief>
        </descriptive>
        <Type type="DOMString"/>
      </Attribute>
      <Attribute readonly="readonly" name="height" id="::W3CWidget::W3CWidget::height">
        <webidl>                readonly attribute unsigned long height;</webidl>
        <descriptive>
            <brief>
 Height of widget.
            </brief>
        </descriptive>
        <Type type="unsigned long"/>
      </Attribute>
      <Attribute readonly="readonly" name="width" id="::W3CWidget::W3CWidget::width">
        <webidl>                readonly attribute unsigned long width;</webidl>
        <descriptive>
            <brief>
 Width of widget.
            </brief>
        </descriptive>
        <Type type="unsigned long"/>
      </Attribute>
    </Interface>
    <Interface name="WindowWidget" id="::W3CWidget::WindowWidget">
      <webidl>    [Supplemental, NoInterfaceObject]
    interface WindowWidget {
      readonly attribute <ref>W3CWidget</ref> widget;
    };</webidl>
      <ExtendedAttributeList>
        <ExtendedAttribute name="Supplemental"/>
        <ExtendedAttribute name="NoInterfaceObject"/>
      </ExtendedAttributeList>
      <Attribute readonly="readonly" name="widget" id="::W3CWidget::WindowWidget::widget">
        <webidl>      readonly attribute <ref>W3CWidget</ref> widget;</webidl>
        <descriptive>
            <brief>
 W3C Widget.
            </brief>
           <description>
            <p>
The Widget Interface &lt;a href=&quot;http://www.w3.org/TR/widgets-apis/&quot;>http://www.w3.org/TR/widgets-apis/&lt;/a>.
            </p>
           </description>
        </descriptive>
        <Type name="W3CWidget"/>
      </Attribute>
    </Interface>
    <Implements name1="Window" name2="WindowWidget">
      <webidl>    <ref>Window</ref> implements <ref>WindowWidget</ref>;</webidl>
    </Implements>
  </Module>
  <Module name="Console" id="::Console">
  <webidl>[NoInterfaceObject] interface ConsoleObject {
  readonly attribute <ref>Console</ref> console;
};
<ref>Window</ref> implements <ref>ConsoleObject</ref>;

interface Console {
  void assert(<ref>Object</ref> expression, <ref>Object</ref> data);
  void clear();
  void count(<ref>Object</ref> label);
  void debug(<ref>Object</ref>... data);
  void dir(<ref>Object</ref> data);
  void dirxml(<ref>Object</ref> data);
  void error(<ref>Object</ref>... data);
  void group(<ref>Object</ref>... data);
  void groupCollapsed(<ref>Object</ref>... data);
  void groupEnd();
  void info(<ref>Object</ref>... data);
  void log(<ref>Object</ref>... data);
  void profile(<ref>Object</ref> label);
  void profileEnd();
  void time(<ref>Object</ref> label);
  void timeline(<ref>Object</ref> label);
  void timeEnd(<ref>Object</ref> label);
  void timeStamp(<ref>Object</ref> label);
  void trace(<ref>Object</ref> data);
  void warn(<ref>Object</ref>... data);
};</webidl>
  <Interface name="ConsoleObject" id="::ConsoleObject">
    <webidl>[NoInterfaceObject] interface ConsoleObject {
  readonly attribute <ref>Console</ref> console;
};</webidl>
    <ExtendedAttributeList>
      <ExtendedAttribute name="NoInterfaceObject">
        <webidl>NoInterfaceObject</webidl>
      </ExtendedAttribute>
    </ExtendedAttributeList>
    <Attribute readonly="readonly" name="console" id="::ConsoleObject::console">
      <webidl>  readonly attribute <ref>Console</ref> console;</webidl>
      <Type name="Console"/>
    </Attribute>
  </Interface>
  <Implements name1="Window" name2="ConsoleObject">
    <webidl><ref>Window</ref> implements <ref>ConsoleObject</ref>;</webidl>
  </Implements>
  <Interface name="Console" id="::Console">
    <webidl>interface Console {
  void assert(<ref>Object</ref> expression, <ref>Object</ref> data);
  void clear();
  void count(<ref>Object</ref> label);
  void debug(<ref>Object</ref>... data);
  void dir(<ref>Object</ref> data);
  void dirxml(<ref>Object</ref> data);
  void error(<ref>Object</ref>... data);
  void group(<ref>Object</ref>... data);
  void groupCollapsed(<ref>Object</ref>... data);
  void groupEnd();
  void info(<ref>Object</ref>... data);
  void log(<ref>Object</ref>... data);
  void profile(<ref>Object</ref> label);
  void profileEnd();
  void time(<ref>Object</ref> label);
  void timeline(<ref>Object</ref> label);
  void timeEnd(<ref>Object</ref> label);
  void timeStamp(<ref>Object</ref> label);
  void trace(<ref>Object</ref> data);
  void warn(<ref>Object</ref>... data);
};</webidl>
    <Operation name="assert" id="::Console::assert">
      <webidl>  void assert(<ref>Object</ref> expression, <ref>Object</ref> data);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="expression">
          <Type name="Object"/>
        </Argument>
        <Argument name="data">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="clear" id="::Console::clear">
      <webidl>  void clear();</webidl>
      <Type type="void"/>
      <ArgumentList/>
    </Operation>
    <Operation name="count" id="::Console::count">
      <webidl>  void count(<ref>Object</ref> label);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="label">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="debug" id="::Console::debug">
      <webidl>  void debug(<ref>Object</ref>... data);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument ellipsis="ellipsis" name="data">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="dir" id="::Console::dir">
      <webidl>  void dir(<ref>Object</ref> data);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="data">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="dirxml" id="::Console::dirxml">
      <webidl>  void dirxml(<ref>Object</ref> data);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="data">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="error" id="::Console::error">
      <webidl>  void error(<ref>Object</ref>... data);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument ellipsis="ellipsis" name="data">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="group" id="::Console::group">
      <webidl>  void group(<ref>Object</ref>... data);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument ellipsis="ellipsis" name="data">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="groupCollapsed" id="::Console::groupCollapsed">
      <webidl>  void groupCollapsed(<ref>Object</ref>... data);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument ellipsis="ellipsis" name="data">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="groupEnd" id="::Console::groupEnd">
      <webidl>  void groupEnd();</webidl>
      <Type type="void"/>
      <ArgumentList/>
    </Operation>
    <Operation name="info" id="::Console::info">
      <webidl>  void info(<ref>Object</ref>... data);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument ellipsis="ellipsis" name="data">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="log" id="::Console::log">
      <webidl>  void log(<ref>Object</ref>... data);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument ellipsis="ellipsis" name="data">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="profile" id="::Console::profile">
      <webidl>  void profile(<ref>Object</ref> label);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="label">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="profileEnd" id="::Console::profileEnd">
      <webidl>  void profileEnd();</webidl>
      <Type type="void"/>
      <ArgumentList/>
    </Operation>
    <Operation name="time" id="::Console::time">
      <webidl>  void time(<ref>Object</ref> label);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="label">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="timeline" id="::Console::timeline">
      <webidl>  void timeline(<ref>Object</ref> label);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="label">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="timeEnd" id="::Console::timeEnd">
      <webidl>  void timeEnd(<ref>Object</ref> label);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="label">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="timeStamp" id="::Console::timeStamp">
      <webidl>  void timeStamp(<ref>Object</ref> label);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="label">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="trace" id="::Console::trace">
      <webidl>  void trace(<ref>Object</ref> data);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="data">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="warn" id="::Console::warn">
      <webidl>  void warn(<ref>Object</ref>... data);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument ellipsis="ellipsis" name="data">
          <Type name="Object"/>
        </Argument>
      </ArgumentList>
    </Operation>
  </Interface>
  </Module>
</Definitions>
