summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/WebIDL/valid/xml/interface-inherits.widlprocxml
blob: 94f0e29df05eb4308569a880b742562d73e93de1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?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>