summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/WebIDL/valid/xml/interface-inherits.widlprocxml
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/WebIDL/valid/xml/interface-inherits.widlprocxml')
-rw-r--r--testing/web-platform/tests/WebIDL/valid/xml/interface-inherits.widlprocxml48
1 files changed, 48 insertions, 0 deletions
diff --git a/testing/web-platform/tests/WebIDL/valid/xml/interface-inherits.widlprocxml b/testing/web-platform/tests/WebIDL/valid/xml/interface-inherits.widlprocxml
new file mode 100644
index 000000000..94f0e29df
--- /dev/null
+++ b/testing/web-platform/tests/WebIDL/valid/xml/interface-inherits.widlprocxml
@@ -0,0 +1,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>