<?xml version="1.0" encoding="UTF-8"?>

<!-- can have many movies-->
<!ELEMENT myCollection (Movies+)>

<!-- movie has a name and distributor if known-->
<!-- can have lots of lead actors any number of times-->
<!--Can have one or more movie reviews-->
<!--movie rating is optional not all have rating-->

<!ELEMENT Movies (name, distributor?, Lead_Actors*, Movie_Reviews+,Movie_Rating?, 
  Cinema_Choices)>
                   

<!--all can have PCDATA-->
<!ELEMENT name (#PCDATA)>
<!ATTLIST name id ID #REQUIRED>
<!ATTLIST Other_Movies href IDREF #IMPLIED>

<!ELEMENT distributor (#PCDATA)>

<!--one more actors repeatable as there has to be
  an actor in the movie with a first and surname #REQUIRED-->

<!ELEMENT Lead_Actors (fname,lname,Other_Movies)+>
<!ELEMENT fname (#PCDATA)>
<!ELEMENT lname (#PCDATA)>

<!-- Other movies HREF-->
<!ELEMENT Other_Movies EMPTY>


<!--can have one or more #REQUIRED reviews-->
<!--each Movie_Review #REQUIRES its sub element-->
<!ELEMENT Movie_Reviews (Rev_Name,Star_Rating,Text)+>
<!ELEMENT Rev_Name (#PCDATA)>
<!ELEMENT Star_Rating (#PCDATA)>
<!ELEMENT Text (#PCDATA)>


<!--The rating of the movie-->
<!ELEMENT Movie_Rating (#PCDATA)>

<!--Cinemas the movie is being shown at-->
<!ELEMENT Cinema_Choices (Cinema_Name, Location)*>
<!ELEMENT Cinema_Name (#PCDATA)>
<!ELEMENT Location (#PCDATA)>
