<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT wine-catalog (cat-wine*) >

<!ELEMENT cat-wine (properties, origin,
                    (tasting-note?,food-pairing?,comment?)*,
                    price,year) >
    <!ATTLIST cat-wine name CDATA #REQUIRED >
    <!ATTLIST cat-wine appellation CDATA #IMPLIED >
    <!ATTLIST cat-wine classification CDATA #IMPLIED >
    <!ATTLIST cat-wine format (375ml | 750ml | 1l | magnum 
                       | jeroboam | rehoboam | mathusalem | salmanazar 
                       | balthazar | nabuchodonosor) #REQUIRED >
    <!ATTLIST cat-wine code ID #REQUIRED>
    <!ELEMENT properties (color,alcoholic-strength,nature?) >
        <!ELEMENT color (#PCDATA) >
        <!ELEMENT alcoholic-strength (#PCDATA) >
        <!ELEMENT nature (#PCDATA) >
    <!ELEMENT origin (country,region,producer) >
        <!ELEMENT country (#PCDATA) >
        <!ELEMENT region (#PCDATA) >
        <!ELEMENT producer (#PCDATA) >
        
    <!ENTITY % Comment "(#PCDATA | emph | bold)*" >
    <!ELEMENT emph (#PCDATA) >
    <!ELEMENT bold (#PCDATA) >
    
    <!ELEMENT comment %Comment; >
    <!ELEMENT tasting-note %Comment; >
    <!ELEMENT food-pairing %Comment; >
    
    <!ELEMENT price (#PCDATA) >
    <!ELEMENT year (#PCDATA) >
    