<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Definitions SYSTEM "widlprocxml.dtd">
<Definitions>
  <webidl>interface Animal {
  attribute DOMString name;
};

interface Human : <ref>Animal</ref> {
  attribute <ref>Dog</ref> pet;
};

interface Dog : <ref>Animal</ref> {
  attribute <ref>Human</ref> owner;
};</webidl>
  <Interface name="Animal" id="::Animal">
    <webidl>interface Animal {
  attribute DOMString name;
};</webidl>
    <Attribute name="name" id="::Animal::name">
      <webidl>  attribute DOMString name;</webidl>
      <Type type="DOMString"/>
    </Attribute>
  </Interface>
  <Interface name="Human" id="::Human">
    <webidl>interface Human : <ref>Animal</ref> {
  attribute <ref>Dog</ref> pet;
};</webidl>
    <InterfaceInheritance>
      <Name name="Animal"/>
    </InterfaceInheritance>
    <Attribute name="pet" id="::Human::pet">
      <webidl>  attribute <ref>Dog</ref> pet;</webidl>
      <Type name="Dog"/>
    </Attribute>
  </Interface>
  <Interface name="Dog" id="::Dog">
    <webidl>interface Dog : <ref>Animal</ref> {
  attribute <ref>Human</ref> owner;
};</webidl>
    <InterfaceInheritance>
      <Name name="Animal"/>
    </InterfaceInheritance>
    <Attribute name="owner" id="::Dog::owner">
      <webidl>  attribute <ref>Human</ref> owner;</webidl>
      <Type name="Human"/>
    </Attribute>
  </Interface>
</Definitions>
