XML Word List Parser

Here's the script I used to generate the previous page.

class WordParser { 
 
   var $insideitem = false; 
   var $tag = ""; 
   var $title = ""; 
   var $description = ""; 
   var $link = ""; 
 
   function startElement($parser, $tagName, $attrs) { 
       if ($this->insideitem) { 
           $this->tag = $tagName; 
       } elseif ($tagName == "TBLWORDS") { 
           $this->insideitem = true; 
       } 
   } 
 
   function endElement($parser, $tagName) { 
       if ($tagName == "TBLWORDS") { 
       		 print "<tr>";
       		 print "<td>" . $this->word . "</td>";
       		 print "<td>" . $this->definition . "</td>";
       		 print "</tr>";
 
 
           $this->ID = "";
           $this->word = ""; 
           $this->definition = ""; 
           $this->enterDate = "";
           $this->insideitem = false; 
       } 
   } 
 
   function characterData($parser, $data) { 
       if ($this->insideitem) { 
           switch ($this->tag) { 
               case "WORD": 
                   $this->word .= $data; 
               break; 
               case "DEFINITION": 
                   $this->definition .= $data; 
               break; 
 
           } 
       } 
   } 
} 
 
$xml_parser = xml_parser_create(); 
$word_parser = new WordParser(); 
xml_set_object($xml_parser,&$word_parser); 
xml_set_element_handler($xml_parser, "startElement", "endElement"); 
xml_set_character_data_handler($xml_parser, "characterData"); 
$fp = fopen("YOUR_XML FILE.xml","r") or die("Error reading XML data."); 
 
print" <table class=\"inline\">";
print"	<tr>";
print"		<th>Word</th>";
print"		<th>Definition</th>";
print"	</tr>";
 
while ($data = fread($fp, 4096)) 
	#print $data;
   xml_parse($xml_parser, $data, feof($fp)) 
       or die(sprintf("XML error: %s at line %d",  
           xml_error_string(xml_get_error_code($xml_parser)),  
           xml_get_current_line_number($xml_parser))); 
fclose($fp); 
xml_parser_free($xml_parser);
 
 
print "</table>";