]> gitweb.michael.orlitzky.com - dead/htsn-import.git/commitdiff
Add SportInfo support for MLB_Pitching_Starts_Leaders.dtd.
authorMichael Orlitzky <michael@orlitzky.com>
Sun, 22 Jun 2014 17:04:56 +0000 (13:04 -0400)
committerMichael Orlitzky <michael@orlitzky.com>
Sun, 22 Jun 2014 17:04:56 +0000 (13:04 -0400)
doc/man1/htsn-import.1
schema/MLB_Pitching_Starts_Leaders.dtd [new file with mode: 0644]
schemagen/MLB_Pitching_Starts_Leaders/MLB_Pitching_Starts_Leaders.xml [new file with mode: 0644]
src/TSN/XML/SportInfo.hs
test/xml/sportinfo/MLB_Pitching_Starts_Leaders.dtd [new file with mode: 0644]
test/xml/sportinfo/MLB_Pitching_Starts_Leaders.xml [new file with mode: 0644]

index 259762a8c69efe32fc0b466dae3b62fb4994179e..77be2d88f47923509ca7d5dfe4e3fa26443c72d1 100644 (file)
@@ -254,6 +254,8 @@ MLB_Pitching_Runs_Allowed_Leaders.dtd
 MLB_Pitching_Saves_Leaders.dtd
 .IP \[bu]
 MLB_Pitching_Shut_Outs_Leaders.dtd
+.IP \[bu]
+MLB_Pitching_Starts_Leaders.dtd
 .RE
 .P
 The GameInfo and SportInfo types do not have their own top-level
diff --git a/schema/MLB_Pitching_Starts_Leaders.dtd b/schema/MLB_Pitching_Starts_Leaders.dtd
new file mode 100644 (file)
index 0000000..f8edbbc
--- /dev/null
@@ -0,0 +1,36 @@
+<!ELEMENT message  (XML_File_ID, heading , category , sport , Title , Top_Starts_Leaders , time_stamp )>\r
+\r
+<!ELEMENT XML_File_ID  (#PCDATA )>\r
+\r
+<!ELEMENT heading  (#PCDATA )>\r
+\r
+<!ELEMENT category  (#PCDATA )>\r
+\r
+<!ELEMENT sport  (#PCDATA )>\r
+\r
+<!ELEMENT Title  (#PCDATA )>\r
+\r
+<!ELEMENT Top_Starts_Leaders  (Listing+ )>\r
+\r
+<!ELEMENT Listing  (Rank , Player_Team , Game_Starts , Innings_Pitched , Complete_Games , Shut_Outs , Wins , Losses , ERA )>\r
+\r
+<!ELEMENT Rank  (#PCDATA )>\r
+\r
+<!ELEMENT Player_Team  (#PCDATA )>\r
+\r
+<!ELEMENT Game_Starts  (#PCDATA )>\r
+\r
+<!ELEMENT Innings_Pitched  (#PCDATA )>\r
+\r
+<!ELEMENT Complete_Games  (#PCDATA )>\r
+\r
+<!ELEMENT Shut_Outs  (#PCDATA )>\r
+\r
+<!ELEMENT Wins  (#PCDATA )>\r
+\r
+<!ELEMENT Losses  (#PCDATA )>\r
+\r
+<!ELEMENT ERA  (#PCDATA )>\r
+\r
+<!ELEMENT time_stamp  (#PCDATA )>\r
+\r
diff --git a/schemagen/MLB_Pitching_Starts_Leaders/MLB_Pitching_Starts_Leaders.xml b/schemagen/MLB_Pitching_Starts_Leaders/MLB_Pitching_Starts_Leaders.xml
new file mode 100644 (file)
index 0000000..b5a4269
--- /dev/null
@@ -0,0 +1,452 @@
+<?xml version="1.0" standalone="no" ?>\r
+<!DOCTYPE message PUBLIC "-//TSN//DTD Statistics 1.0/EN" "MLB_Pitching_Starts_Leaders.dtd">\r
+<message>\r
+<XML_File_ID>98018117</XML_File_ID>\r
+<heading>AAX%AL-GAMESSTARTED-LEADERS</heading>\r
+<category>Statistics</category>\r
+<sport>MLB</sport>\r
+<Title>2002 AL Games Started Leaders</Title>\r
+<Top_Starts_Leaders>\r
+<Listing>\r
+<Rank>1</Rank>\r
+<Player_Team>Freddy Garcia, SEA</Player_Team>\r
+<Game_Starts>17</Game_Starts>\r
+<Innings_Pitched>113.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>10</Wins>\r
+<Losses>5</Losses>\r
+<ERA>3.73</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank>2</Rank>\r
+<Player_Team>Mike Mussina, NYY</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>103.2</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>10</Wins>\r
+<Losses>3</Losses>\r
+<ERA>4.51</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Roy Halladay, TOR</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>113.0</Innings_Pitched>\r
+<Complete_Games>2</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>9</Wins>\r
+<Losses>3</Losses>\r
+<ERA>3.19</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Barry Zito, OAK</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>102.2</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>10</Wins>\r
+<Losses>2</Losses>\r
+<ERA>3.07</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Danny Wright, SOX</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>92.0</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>8</Losses>\r
+<ERA>5.48</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Eric Milton, MIN</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>94.0</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>8</Wins>\r
+<Losses>5</Losses>\r
+<ERA>5.27</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Jamie Moyer, SEA</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>106.1</Innings_Pitched>\r
+<Complete_Games>2</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>7</Wins>\r
+<Losses>3</Losses>\r
+<ERA>3.47</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Todd Ritchie, SOX</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>93.1</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>4</Wins>\r
+<Losses>9</Losses>\r
+<ERA>5.11</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Tim Hudson, OAK</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>108.2</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>6</Losses>\r
+<ERA>3.73</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Kenny Rogers, TEX</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>102.2</Innings_Pitched>\r
+<Complete_Games>2</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>8</Wins>\r
+<Losses>4</Losses>\r
+<ERA>3.24</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Jeff Weaver, DET</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>114.0</Innings_Pitched>\r
+<Complete_Games>3</Complete_Games>\r
+<Shut_Outs>3</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>8</Losses>\r
+<ERA>3.32</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Mark Buehrle, SOX</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>110.0</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>10</Wins>\r
+<Losses>5</Losses>\r
+<ERA>2.86</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Jeff Suppan, KC</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>100.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>6</Losses>\r
+<ERA>4.66</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Scott Erickson, BAL</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>96.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>3</Wins>\r
+<Losses>6</Losses>\r
+<ERA>4.76</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Roger Clemens, NYY</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>103.0</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>8</Wins>\r
+<Losses>3</Losses>\r
+<ERA>3.76</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Jon Garland, SOX</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>91.2</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>6</Wins>\r
+<Losses>5</Losses>\r
+<ERA>4.42</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Bartolo Colon, CLE</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>116.1</Innings_Pitched>\r
+<Complete_Games>4</Complete_Games>\r
+<Shut_Outs>2</Shut_Outs>\r
+<Wins>10</Wins>\r
+<Losses>4</Losses>\r
+<ERA>2.55</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank>18</Rank>\r
+<Player_Team>Sidney Ponson, BAL</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>95.0</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>3</Wins>\r
+<Losses>4</Losses>\r
+<ERA>4.07</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Dave Burba, TEX</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>90.0</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>4</Wins>\r
+<Losses>4</Losses>\r
+<ERA>5.10</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Aaron Sele, ANA</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>89.1</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>6</Wins>\r
+<Losses>5</Losses>\r
+<ERA>5.54</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>David Wells, NYY</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>99.2</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>7</Wins>\r
+<Losses>5</Losses>\r
+<ERA>3.61</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Kevin Appier, ANA</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>82.1</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>6</Wins>\r
+<Losses>6</Losses>\r
+<ERA>4.26</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>C.C. Sabathia, CLE</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>90.0</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>6</Losses>\r
+<ERA>5.00</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Tanyon Sturtze, TB</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>97.1</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>0</Wins>\r
+<Losses>8</Losses>\r
+<ERA>5.09</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Pedro Martinez, BOS</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>95.2</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>8</Wins>\r
+<Losses>2</Losses>\r
+<ERA>2.92</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Kyle Lohse, MIN</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>81.2</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>6</Wins>\r
+<Losses>5</Losses>\r
+<ERA>5.40</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Jarrod Washburn, ANA</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>92.2</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>7</Wins>\r
+<Losses>2</Losses>\r
+<ERA>3.59</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Chuck Finley, CLE</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>89.0</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>4</Wins>\r
+<Losses>9</Losses>\r
+<ERA>3.84</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Paul Byrd, KC</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>97.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>9</Wins>\r
+<Losses>5</Losses>\r
+<ERA>4.25</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Rick Reed, MIN</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>82.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>6</Wins>\r
+<Losses>3</Losses>\r
+<ERA>4.48</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Derek Lowe, BOS</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>104.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>11</Wins>\r
+<Losses>3</Losses>\r
+<ERA>2.16</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Mark Redman, DET</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>105.2</Innings_Pitched>\r
+<Complete_Games>2</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>3</Wins>\r
+<Losses>7</Losses>\r
+<ERA>3.66</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Joe Kennedy, TB</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>101.1</Innings_Pitched>\r
+<Complete_Games>3</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>6</Losses>\r
+<ERA>4.26</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank>34</Rank>\r
+<Player_Team>Ramon Ortiz, ANA</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>102.1</Innings_Pitched>\r
+<Complete_Games>3</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>8</Wins>\r
+<Losses>5</Losses>\r
+<ERA>3.34</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Frank Castillo, BOS</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>83.0</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>7</Losses>\r
+<ERA>4.55</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Ryan Rupe, TB</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>87.2</Innings_Pitched>\r
+<Complete_Games>2</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>9</Losses>\r
+<ERA>5.54</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Ryan Drese, CLE</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>80.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>7</Wins>\r
+<Losses>5</Losses>\r
+<ERA>5.49</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Paul Wilson, TB</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>95.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>2</Wins>\r
+<Losses>6</Losses>\r
+<ERA>4.06</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Steve Sparks, DET</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>86.1</Innings_Pitched>\r
+<Complete_Games>2</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>3</Wins>\r
+<Losses>7</Losses>\r
+<ERA>5.94</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>James Baldwin, SEA</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>84.0</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>6</Losses>\r
+<ERA>4.93</ERA>\r
+</Listing>\r
+</Top_Starts_Leaders>\r
+<time_stamp> June 25, 2002, at 11:23 AM ET </time_stamp>\r
+</message>\r
index e93922bce1d38f5ab3da004d469e7799478f3d8b..90d0a70560c7241b2fb1fcd498063a31099c26b7 100644 (file)
@@ -145,7 +145,7 @@ dtds =
     "MLB_Pitching_Runs_Allowed_Leaders.dtd",
     "MLB_Pitching_Saves_Leaders.dtd",
     "MLB_Pitching_Shut_Outs_Leaders.dtd",
-    "MLB_Pitching_Starts_Leaders.dtd", -- no dtd
+    "MLB_Pitching_Starts_Leaders.dtd",
     "MLB_Pitching_Strike_Outs_Leaders.dtd", -- no dtd
     "MLB_Pitching_Walks_Leaders.dtd", -- no dtd
     "MLB_Pitching_WHIP_Leaders.dtd", -- no dtd
@@ -388,7 +388,8 @@ sport_info_test_files =
     "MLB_Pitching_IP_Leaders.xml",
     "MLB_Pitching_Runs_Allowed_Leaders.xml",
     "MLB_Pitching_Saves_Leaders.xml",
-    "MLB_Pitching_Shut_Outs_Leaders.xml"
+    "MLB_Pitching_Shut_Outs_Leaders.xml",
+    "MLB_Pitching_Starts_Leaders.xml"
   ]
 
 
diff --git a/test/xml/sportinfo/MLB_Pitching_Starts_Leaders.dtd b/test/xml/sportinfo/MLB_Pitching_Starts_Leaders.dtd
new file mode 100644 (file)
index 0000000..f8edbbc
--- /dev/null
@@ -0,0 +1,36 @@
+<!ELEMENT message  (XML_File_ID, heading , category , sport , Title , Top_Starts_Leaders , time_stamp )>\r
+\r
+<!ELEMENT XML_File_ID  (#PCDATA )>\r
+\r
+<!ELEMENT heading  (#PCDATA )>\r
+\r
+<!ELEMENT category  (#PCDATA )>\r
+\r
+<!ELEMENT sport  (#PCDATA )>\r
+\r
+<!ELEMENT Title  (#PCDATA )>\r
+\r
+<!ELEMENT Top_Starts_Leaders  (Listing+ )>\r
+\r
+<!ELEMENT Listing  (Rank , Player_Team , Game_Starts , Innings_Pitched , Complete_Games , Shut_Outs , Wins , Losses , ERA )>\r
+\r
+<!ELEMENT Rank  (#PCDATA )>\r
+\r
+<!ELEMENT Player_Team  (#PCDATA )>\r
+\r
+<!ELEMENT Game_Starts  (#PCDATA )>\r
+\r
+<!ELEMENT Innings_Pitched  (#PCDATA )>\r
+\r
+<!ELEMENT Complete_Games  (#PCDATA )>\r
+\r
+<!ELEMENT Shut_Outs  (#PCDATA )>\r
+\r
+<!ELEMENT Wins  (#PCDATA )>\r
+\r
+<!ELEMENT Losses  (#PCDATA )>\r
+\r
+<!ELEMENT ERA  (#PCDATA )>\r
+\r
+<!ELEMENT time_stamp  (#PCDATA )>\r
+\r
diff --git a/test/xml/sportinfo/MLB_Pitching_Starts_Leaders.xml b/test/xml/sportinfo/MLB_Pitching_Starts_Leaders.xml
new file mode 100644 (file)
index 0000000..b5a4269
--- /dev/null
@@ -0,0 +1,452 @@
+<?xml version="1.0" standalone="no" ?>\r
+<!DOCTYPE message PUBLIC "-//TSN//DTD Statistics 1.0/EN" "MLB_Pitching_Starts_Leaders.dtd">\r
+<message>\r
+<XML_File_ID>98018117</XML_File_ID>\r
+<heading>AAX%AL-GAMESSTARTED-LEADERS</heading>\r
+<category>Statistics</category>\r
+<sport>MLB</sport>\r
+<Title>2002 AL Games Started Leaders</Title>\r
+<Top_Starts_Leaders>\r
+<Listing>\r
+<Rank>1</Rank>\r
+<Player_Team>Freddy Garcia, SEA</Player_Team>\r
+<Game_Starts>17</Game_Starts>\r
+<Innings_Pitched>113.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>10</Wins>\r
+<Losses>5</Losses>\r
+<ERA>3.73</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank>2</Rank>\r
+<Player_Team>Mike Mussina, NYY</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>103.2</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>10</Wins>\r
+<Losses>3</Losses>\r
+<ERA>4.51</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Roy Halladay, TOR</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>113.0</Innings_Pitched>\r
+<Complete_Games>2</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>9</Wins>\r
+<Losses>3</Losses>\r
+<ERA>3.19</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Barry Zito, OAK</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>102.2</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>10</Wins>\r
+<Losses>2</Losses>\r
+<ERA>3.07</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Danny Wright, SOX</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>92.0</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>8</Losses>\r
+<ERA>5.48</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Eric Milton, MIN</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>94.0</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>8</Wins>\r
+<Losses>5</Losses>\r
+<ERA>5.27</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Jamie Moyer, SEA</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>106.1</Innings_Pitched>\r
+<Complete_Games>2</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>7</Wins>\r
+<Losses>3</Losses>\r
+<ERA>3.47</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Todd Ritchie, SOX</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>93.1</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>4</Wins>\r
+<Losses>9</Losses>\r
+<ERA>5.11</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Tim Hudson, OAK</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>108.2</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>6</Losses>\r
+<ERA>3.73</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Kenny Rogers, TEX</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>102.2</Innings_Pitched>\r
+<Complete_Games>2</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>8</Wins>\r
+<Losses>4</Losses>\r
+<ERA>3.24</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Jeff Weaver, DET</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>114.0</Innings_Pitched>\r
+<Complete_Games>3</Complete_Games>\r
+<Shut_Outs>3</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>8</Losses>\r
+<ERA>3.32</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Mark Buehrle, SOX</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>110.0</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>10</Wins>\r
+<Losses>5</Losses>\r
+<ERA>2.86</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Jeff Suppan, KC</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>100.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>6</Losses>\r
+<ERA>4.66</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Scott Erickson, BAL</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>96.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>3</Wins>\r
+<Losses>6</Losses>\r
+<ERA>4.76</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Roger Clemens, NYY</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>103.0</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>8</Wins>\r
+<Losses>3</Losses>\r
+<ERA>3.76</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Jon Garland, SOX</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>91.2</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>6</Wins>\r
+<Losses>5</Losses>\r
+<ERA>4.42</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Bartolo Colon, CLE</Player_Team>\r
+<Game_Starts>16</Game_Starts>\r
+<Innings_Pitched>116.1</Innings_Pitched>\r
+<Complete_Games>4</Complete_Games>\r
+<Shut_Outs>2</Shut_Outs>\r
+<Wins>10</Wins>\r
+<Losses>4</Losses>\r
+<ERA>2.55</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank>18</Rank>\r
+<Player_Team>Sidney Ponson, BAL</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>95.0</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>3</Wins>\r
+<Losses>4</Losses>\r
+<ERA>4.07</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Dave Burba, TEX</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>90.0</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>4</Wins>\r
+<Losses>4</Losses>\r
+<ERA>5.10</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Aaron Sele, ANA</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>89.1</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>6</Wins>\r
+<Losses>5</Losses>\r
+<ERA>5.54</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>David Wells, NYY</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>99.2</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>7</Wins>\r
+<Losses>5</Losses>\r
+<ERA>3.61</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Kevin Appier, ANA</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>82.1</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>6</Wins>\r
+<Losses>6</Losses>\r
+<ERA>4.26</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>C.C. Sabathia, CLE</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>90.0</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>6</Losses>\r
+<ERA>5.00</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Tanyon Sturtze, TB</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>97.1</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>0</Wins>\r
+<Losses>8</Losses>\r
+<ERA>5.09</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Pedro Martinez, BOS</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>95.2</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>8</Wins>\r
+<Losses>2</Losses>\r
+<ERA>2.92</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Kyle Lohse, MIN</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>81.2</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>6</Wins>\r
+<Losses>5</Losses>\r
+<ERA>5.40</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Jarrod Washburn, ANA</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>92.2</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>7</Wins>\r
+<Losses>2</Losses>\r
+<ERA>3.59</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Chuck Finley, CLE</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>89.0</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>4</Wins>\r
+<Losses>9</Losses>\r
+<ERA>3.84</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Paul Byrd, KC</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>97.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>9</Wins>\r
+<Losses>5</Losses>\r
+<ERA>4.25</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Rick Reed, MIN</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>82.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>6</Wins>\r
+<Losses>3</Losses>\r
+<ERA>4.48</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Derek Lowe, BOS</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>104.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>11</Wins>\r
+<Losses>3</Losses>\r
+<ERA>2.16</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Mark Redman, DET</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>105.2</Innings_Pitched>\r
+<Complete_Games>2</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>3</Wins>\r
+<Losses>7</Losses>\r
+<ERA>3.66</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Joe Kennedy, TB</Player_Team>\r
+<Game_Starts>15</Game_Starts>\r
+<Innings_Pitched>101.1</Innings_Pitched>\r
+<Complete_Games>3</Complete_Games>\r
+<Shut_Outs>1</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>6</Losses>\r
+<ERA>4.26</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank>34</Rank>\r
+<Player_Team>Ramon Ortiz, ANA</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>102.1</Innings_Pitched>\r
+<Complete_Games>3</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>8</Wins>\r
+<Losses>5</Losses>\r
+<ERA>3.34</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Frank Castillo, BOS</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>83.0</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>7</Losses>\r
+<ERA>4.55</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Ryan Rupe, TB</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>87.2</Innings_Pitched>\r
+<Complete_Games>2</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>9</Losses>\r
+<ERA>5.54</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Ryan Drese, CLE</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>80.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>7</Wins>\r
+<Losses>5</Losses>\r
+<ERA>5.49</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Paul Wilson, TB</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>95.1</Innings_Pitched>\r
+<Complete_Games>1</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>2</Wins>\r
+<Losses>6</Losses>\r
+<ERA>4.06</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>Steve Sparks, DET</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>86.1</Innings_Pitched>\r
+<Complete_Games>2</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>3</Wins>\r
+<Losses>7</Losses>\r
+<ERA>5.94</ERA>\r
+</Listing>\r
+<Listing>\r
+<Rank />\r
+<Player_Team>James Baldwin, SEA</Player_Team>\r
+<Game_Starts>14</Game_Starts>\r
+<Innings_Pitched>84.0</Innings_Pitched>\r
+<Complete_Games>0</Complete_Games>\r
+<Shut_Outs>0</Shut_Outs>\r
+<Wins>5</Wins>\r
+<Losses>6</Losses>\r
+<ERA>4.93</ERA>\r
+</Listing>\r
+</Top_Starts_Leaders>\r
+<time_stamp> June 25, 2002, at 11:23 AM ET </time_stamp>\r
+</message>\r