<!ELEMENT article ( articlenumber, description, producer, quantity, rebate, picture, price, articledata, delivery, legal ) >
<!ATTLIST article id NMTOKEN #REQUIRED >

<!ELEMENT articledata ( #PCDATA ) >

<!ELEMENT articlenumber ( #PCDATA ) >

<!ELEMENT articleref EMPTY >

<!ELEMENT articles ( article* ) >

<!ELEMENT catalog ( tableofcontent, articles, orderform, index ) >
<!ATTLIST catalog ablaufdatum NMTOKEN #REQUIRED >

<!ELEMENT contact ( #PCDATA ) >

<!ELEMENT delivery ( #PCDATA ) >

<!ELEMENT description ( #PCDATA ) >

<!ELEMENT index ( term, pagenumbers ) >

<!ELEMENT legal ( #PCDATA ) >

<!ELEMENT location ( #PCDATA ) >

<!ELEMENT logo ( #PCDATA ) >

<!ELEMENT name ( #PCDATA ) >

<!ELEMENT orderform ( articleref ) >

<!ELEMENT pagenumbers EMPTY >

<!ELEMENT phone ( #PCDATA ) >

<!ELEMENT picture ( #PCDATA ) >

<!ELEMENT price ( #PCDATA ) >

<!ELEMENT producer ( phone, name, location, contact, logo ) >

<!ELEMENT quantity ( #PCDATA ) >

<!ELEMENT rebate ( #PCDATA ) >

<!ELEMENT tableofcontent EMPTY >

<!ELEMENT term EMPTY >

