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

index 1e76185538ab736e6813a0676c7960ba47c67428..77afd35021b1a0d132e55f9a1f823261ef11a5c3 100644 (file)
@@ -196,6 +196,8 @@ MLBHRFreqXML.dtd
 MLBIntWalksXML.dtd
 .IP \[bu]
 MLBKORateXML.dtd
+.IP \[bu]
+mlbonbasepctxml.dtd
 .RE
 .P
 The GameInfo and SportInfo types do not have their own top-level
diff --git a/schema/mlbonbasepctxml.dtd b/schema/mlbonbasepctxml.dtd
new file mode 100644 (file)
index 0000000..ace2c25
--- /dev/null
@@ -0,0 +1,32 @@
+<!ELEMENT message  (XML_File_ID, heading , category , sport , title , listing+ , 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 listing  (rank , name , onbase , average , runs , hits , walks , hitbypitch )>\r
+\r
+<!ELEMENT rank  (#PCDATA )>\r
+\r
+<!ELEMENT name  (#PCDATA )>\r
+\r
+<!ELEMENT onbase  (#PCDATA )>\r
+\r
+<!ELEMENT average  (#PCDATA )>\r
+\r
+<!ELEMENT runs  (#PCDATA )>\r
+\r
+<!ELEMENT hits  (#PCDATA )>\r
+\r
+<!ELEMENT walks  (#PCDATA )>\r
+\r
+<!ELEMENT hitbypitch  (#PCDATA )>\r
+\r
+<!ELEMENT time_stamp  (#PCDATA )>\r
+\r
diff --git a/schemagen/mlbonbasepctxml/mlbonbasepctxml.xml b/schemagen/mlbonbasepctxml/mlbonbasepctxml.xml
new file mode 100644 (file)
index 0000000..0d291f4
--- /dev/null
@@ -0,0 +1,410 @@
+<?xml version="1.0" standalone="no" ?>\r
+<!DOCTYPE message PUBLIC "-//TSN//DTD Statistics 1.0/EN" "mlbonbasepctxml.dtd">\r
+<message>\r
+<XML_File_ID>21024217</XML_File_ID>\r
+<heading>AAX%AL-ONBASEPCT-LEADERS</heading>\r
+<category>Statistics</category>\r
+<sport>MLB</sport>\r
+<title>2001 AL On Base Percentage Leaders</title>\r
+<listing>\r
+<rank>1</rank>\r
+<name>Jason Giambi, OAK</name>\r
+<onbase>.481</onbase>\r
+<average>.337</average>\r
+<runs>46</runs>\r
+<hits>90</hits>\r
+<walks>71</walks>\r
+<hitbypitch>8</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>2</rank>\r
+<name>Edgar Martinez, SEA</name>\r
+<onbase>.437</onbase>\r
+<average>.303</average>\r
+<runs>48</runs>\r
+<hits>81</hits>\r
+<walks>62</walks>\r
+<hitbypitch>5</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>3</rank>\r
+<name>Manny Ramirez, BOS</name>\r
+<onbase>.429</onbase>\r
+<average>.331</average>\r
+<runs>55</runs>\r
+<hits>101</hits>\r
+<walks>49</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>4</rank>\r
+<name>John Olerud, SEA</name>\r
+<onbase>.427</onbase>\r
+<average>.317</average>\r
+<runs>52</runs>\r
+<hits>91</hits>\r
+<walks>55</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>5</rank>\r
+<name>Roberto Alomar, CLE</name>\r
+<onbase>.426</onbase>\r
+<average>.354</average>\r
+<runs>54</runs>\r
+<hits>103</hits>\r
+<walks>40</walks>\r
+<hitbypitch>2</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>6</rank>\r
+<name>Matt Lawton, MIN</name>\r
+<onbase>.410</onbase>\r
+<average>.299</average>\r
+<runs>56</runs>\r
+<hits>87</hits>\r
+<walks>55</walks>\r
+<hitbypitch>1</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>7</rank>\r
+<name>Bernie Williams, NYY</name>\r
+<onbase>.409</onbase>\r
+<average>.324</average>\r
+<runs>53</runs>\r
+<hits>80</hits>\r
+<walks>35</walks>\r
+<hitbypitch>4</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>8</rank>\r
+<name>Jeff Conine, BAL</name>\r
+<onbase>.402</onbase>\r
+<average>.326</average>\r
+<runs>35</runs>\r
+<hits>76</hits>\r
+<walks>28</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>9</rank>\r
+<name>Jorge Posada, NYY</name>\r
+<onbase>.402</onbase>\r
+<average>.310</average>\r
+<runs>33</runs>\r
+<hits>76</hits>\r
+<walks>36</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>10</rank>\r
+<name>Alex Rodriguez, TEX</name>\r
+<onbase>.401</onbase>\r
+<average>.315</average>\r
+<runs>70</runs>\r
+<hits>100</hits>\r
+<walks>42</walks>\r
+<hitbypitch>6</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>11</rank>\r
+<name>Bobby Higginson, DET</name>\r
+<onbase>.400</onbase>\r
+<average>.291</average>\r
+<runs>41</runs>\r
+<hits>68</hits>\r
+<walks>46</walks>\r
+<hitbypitch>0</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>12</rank>\r
+<name>Fred McGriff, TB</name>\r
+<onbase>.398</onbase>\r
+<average>.332</average>\r
+<runs>33</runs>\r
+<hits>90</hits>\r
+<walks>31</walks>\r
+<hitbypitch>0</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>13</rank>\r
+<name>Jim Thome, CLE</name>\r
+<onbase>.397</onbase>\r
+<average>.276</average>\r
+<runs>47</runs>\r
+<hits>69</hits>\r
+<walks>49</walks>\r
+<hitbypitch>2</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>14</rank>\r
+<name>Mike Sweeney, KC</name>\r
+<onbase>.395</onbase>\r
+<average>.335</average>\r
+<runs>68</runs>\r
+<hits>106</hits>\r
+<walks>34</walks>\r
+<hitbypitch>0</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>15</rank>\r
+<name>Carlos Delgado, TOR</name>\r
+<onbase>.393</onbase>\r
+<average>.250</average>\r
+<runs>49</runs>\r
+<hits>72</hits>\r
+<walks>61</walks>\r
+<hitbypitch>8</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>16</rank>\r
+<name>Frank Menechino, OAK</name>\r
+<onbase>.392</onbase>\r
+<average>.283</average>\r
+<runs>46</runs>\r
+<hits>73</hits>\r
+<walks>38</walks>\r
+<hitbypitch>10</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>17</rank>\r
+<name>Magglio Ordonez, SOX</name>\r
+<onbase>.386</onbase>\r
+<average>.304</average>\r
+<runs>48</runs>\r
+<hits>87</hits>\r
+<walks>36</walks>\r
+<hitbypitch>2</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>18</rank>\r
+<name>Shannon Stewart, TOR</name>\r
+<onbase>.385</onbase>\r
+<average>.323</average>\r
+<runs>58</runs>\r
+<hits>109</hits>\r
+<walks>30</walks>\r
+<hitbypitch>4</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>19</rank>\r
+<name>Doug Mientkiewicz, MIN</name>\r
+<onbase>.383</onbase>\r
+<average>.312</average>\r
+<runs>43</runs>\r
+<hits>89</hits>\r
+<walks>29</walks>\r
+<hitbypitch>5</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>20</rank>\r
+<name>Tony Clark, DET</name>\r
+<onbase>.379</onbase>\r
+<average>.300</average>\r
+<runs>44</runs>\r
+<hits>74</hits>\r
+<walks>33</walks>\r
+<hitbypitch>1</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>21</rank>\r
+<name>Juan Gonzalez, CLE</name>\r
+<onbase>.378</onbase>\r
+<average>.341</average>\r
+<runs>57</runs>\r
+<hits>101</hits>\r
+<walks>21</walks>\r
+<hitbypitch>2</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>22</rank>\r
+<name>Ichiro Suzuki, SEA</name>\r
+<onbase>.378</onbase>\r
+<average>.349</average>\r
+<runs>71</runs>\r
+<hits>126</hits>\r
+<walks>14</walks>\r
+<hitbypitch>4</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>23</rank>\r
+<name>Trot Nixon, BOS</name>\r
+<onbase>.377</onbase>\r
+<average>.263</average>\r
+<runs>46</runs>\r
+<hits>63</hits>\r
+<walks>41</walks>\r
+<hitbypitch>6</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>24</rank>\r
+<name>Raul Mondesi, TOR</name>\r
+<onbase>.375</onbase>\r
+<average>.283</average>\r
+<runs>57</runs>\r
+<hits>89</hits>\r
+<walks>44</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>25</rank>\r
+<name>Rafael Palmeiro, TEX</name>\r
+<onbase>.371</onbase>\r
+<average>.262</average>\r
+<runs>43</runs>\r
+<hits>78</hits>\r
+<walks>52</walks>\r
+<hitbypitch>1</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>26</rank>\r
+<name>Melvin Mora, BAL</name>\r
+<onbase>.371</onbase>\r
+<average>.292</average>\r
+<runs>30</runs>\r
+<hits>70</hits>\r
+<walks>23</walks>\r
+<hitbypitch>9</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>27</rank>\r
+<name>Ellis Burks, CLE</name>\r
+<onbase>.371</onbase>\r
+<average>.295</average>\r
+<runs>53</runs>\r
+<hits>77</hits>\r
+<walks>33</walks>\r
+<hitbypitch>2</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>28</rank>\r
+<name>Derek Jeter, NYY</name>\r
+<onbase>.367</onbase>\r
+<average>.288</average>\r
+<runs>52</runs>\r
+<hits>91</hits>\r
+<walks>37</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>29</rank>\r
+<name>Adam Kennedy, ANA</name>\r
+<onbase>.366</onbase>\r
+<average>.303</average>\r
+<runs>29</runs>\r
+<hits>73</hits>\r
+<walks>20</walks>\r
+<hitbypitch>5</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>30</rank>\r
+<name>David Eckstein, ANA</name>\r
+<onbase>.363</onbase>\r
+<average>.283</average>\r
+<runs>41</runs>\r
+<hits>82</hits>\r
+<walks>25</walks>\r
+<hitbypitch>12</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>31</rank>\r
+<name>Tim Salmon, ANA</name>\r
+<onbase>.363</onbase>\r
+<average>.206</average>\r
+<runs>33</runs>\r
+<hits>52</hits>\r
+<walks>58</walks>\r
+<hitbypitch>5</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>32</rank>\r
+<name>Damion Easley, DET</name>\r
+<onbase>.362</onbase>\r
+<average>.285</average>\r
+<runs>33</runs>\r
+<hits>78</hits>\r
+<walks>28</walks>\r
+<hitbypitch>6</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>33</rank>\r
+<name>Bret Boone, SEA</name>\r
+<onbase>.362</onbase>\r
+<average>.326</average>\r
+<runs>60</runs>\r
+<hits>103</hits>\r
+<walks>20</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>34</rank>\r
+<name>Troy Glaus, ANA</name>\r
+<onbase>.362</onbase>\r
+<average>.250</average>\r
+<runs>48</runs>\r
+<hits>74</hits>\r
+<walks>52</walks>\r
+<hitbypitch>2</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>35</rank>\r
+<name>Scott Brosius, NYY</name>\r
+<onbase>.359</onbase>\r
+<average>.290</average>\r
+<runs>43</runs>\r
+<hits>81</hits>\r
+<walks>30</walks>\r
+<hitbypitch>1</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>36</rank>\r
+<name>Corey Koskie, MIN</name>\r
+<onbase>.355</onbase>\r
+<average>.262</average>\r
+<runs>48</runs>\r
+<hits>72</hits>\r
+<walks>36</walks>\r
+<hitbypitch>6</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>37</rank>\r
+<name>Mike Cameron, SEA</name>\r
+<onbase>.355</onbase>\r
+<average>.270</average>\r
+<runs>56</runs>\r
+<hits>73</hits>\r
+<walks>35</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>38</rank>\r
+<name>Paul Konerko, SOX</name>\r
+<onbase>.353</onbase>\r
+<average>.277</average>\r
+<runs>48</runs>\r
+<hits>76</hits>\r
+<walks>27</walks>\r
+<hitbypitch>6</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>39</rank>\r
+<name>Ben Grieve, TB</name>\r
+<onbase>.352</onbase>\r
+<average>.245</average>\r
+<runs>32</runs>\r
+<hits>69</hits>\r
+<walks>44</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>40</rank>\r
+<name>Darin Erstad, ANA</name>\r
+<onbase>.349</onbase>\r
+<average>.283</average>\r
+<runs>47</runs>\r
+<hits>91</hits>\r
+<walks>28</walks>\r
+<hitbypitch>6</hitbypitch>\r
+</listing>\r
+<time_stamp> July 3, 2001, at 12:36 PM ET </time_stamp>\r
+</message>\r
index 6a3612363e9d9bdae0e4dee8ca30f46570c4fe75..44688317fa9b04414d2bfa16d9546a4f9392f817 100644 (file)
@@ -115,7 +115,7 @@ dtds =
     "MLBHRFreqXML.dtd",
     "MLBIntWalksXML.dtd",
     "MLBKORateXML.dtd",
-    "mlbonbasepctxml.dtd", -- no dtd
+    "mlbonbasepctxml.dtd",
     "MLBOPSXML.dtd", -- no dtd
     "MLBPlateAppsXML.dtd", -- no dtd
     "mlbrbisxml.dtd", -- no dtd
@@ -359,7 +359,8 @@ sport_info_test_files =
     "mlbhomerunsxml.xml",
     "MLBHRFreqXML.xml",
     "MLBIntWalksXML.xml",
-    "MLBKORateXML.xml"
+    "MLBKORateXML.xml",
+    "mlbonbasepctxml.xml"
   ]
 
 
diff --git a/test/xml/sportinfo/mlbonbasepctxml.dtd b/test/xml/sportinfo/mlbonbasepctxml.dtd
new file mode 100644 (file)
index 0000000..ace2c25
--- /dev/null
@@ -0,0 +1,32 @@
+<!ELEMENT message  (XML_File_ID, heading , category , sport , title , listing+ , 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 listing  (rank , name , onbase , average , runs , hits , walks , hitbypitch )>\r
+\r
+<!ELEMENT rank  (#PCDATA )>\r
+\r
+<!ELEMENT name  (#PCDATA )>\r
+\r
+<!ELEMENT onbase  (#PCDATA )>\r
+\r
+<!ELEMENT average  (#PCDATA )>\r
+\r
+<!ELEMENT runs  (#PCDATA )>\r
+\r
+<!ELEMENT hits  (#PCDATA )>\r
+\r
+<!ELEMENT walks  (#PCDATA )>\r
+\r
+<!ELEMENT hitbypitch  (#PCDATA )>\r
+\r
+<!ELEMENT time_stamp  (#PCDATA )>\r
+\r
diff --git a/test/xml/sportinfo/mlbonbasepctxml.xml b/test/xml/sportinfo/mlbonbasepctxml.xml
new file mode 100644 (file)
index 0000000..0d291f4
--- /dev/null
@@ -0,0 +1,410 @@
+<?xml version="1.0" standalone="no" ?>\r
+<!DOCTYPE message PUBLIC "-//TSN//DTD Statistics 1.0/EN" "mlbonbasepctxml.dtd">\r
+<message>\r
+<XML_File_ID>21024217</XML_File_ID>\r
+<heading>AAX%AL-ONBASEPCT-LEADERS</heading>\r
+<category>Statistics</category>\r
+<sport>MLB</sport>\r
+<title>2001 AL On Base Percentage Leaders</title>\r
+<listing>\r
+<rank>1</rank>\r
+<name>Jason Giambi, OAK</name>\r
+<onbase>.481</onbase>\r
+<average>.337</average>\r
+<runs>46</runs>\r
+<hits>90</hits>\r
+<walks>71</walks>\r
+<hitbypitch>8</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>2</rank>\r
+<name>Edgar Martinez, SEA</name>\r
+<onbase>.437</onbase>\r
+<average>.303</average>\r
+<runs>48</runs>\r
+<hits>81</hits>\r
+<walks>62</walks>\r
+<hitbypitch>5</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>3</rank>\r
+<name>Manny Ramirez, BOS</name>\r
+<onbase>.429</onbase>\r
+<average>.331</average>\r
+<runs>55</runs>\r
+<hits>101</hits>\r
+<walks>49</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>4</rank>\r
+<name>John Olerud, SEA</name>\r
+<onbase>.427</onbase>\r
+<average>.317</average>\r
+<runs>52</runs>\r
+<hits>91</hits>\r
+<walks>55</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>5</rank>\r
+<name>Roberto Alomar, CLE</name>\r
+<onbase>.426</onbase>\r
+<average>.354</average>\r
+<runs>54</runs>\r
+<hits>103</hits>\r
+<walks>40</walks>\r
+<hitbypitch>2</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>6</rank>\r
+<name>Matt Lawton, MIN</name>\r
+<onbase>.410</onbase>\r
+<average>.299</average>\r
+<runs>56</runs>\r
+<hits>87</hits>\r
+<walks>55</walks>\r
+<hitbypitch>1</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>7</rank>\r
+<name>Bernie Williams, NYY</name>\r
+<onbase>.409</onbase>\r
+<average>.324</average>\r
+<runs>53</runs>\r
+<hits>80</hits>\r
+<walks>35</walks>\r
+<hitbypitch>4</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>8</rank>\r
+<name>Jeff Conine, BAL</name>\r
+<onbase>.402</onbase>\r
+<average>.326</average>\r
+<runs>35</runs>\r
+<hits>76</hits>\r
+<walks>28</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>9</rank>\r
+<name>Jorge Posada, NYY</name>\r
+<onbase>.402</onbase>\r
+<average>.310</average>\r
+<runs>33</runs>\r
+<hits>76</hits>\r
+<walks>36</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>10</rank>\r
+<name>Alex Rodriguez, TEX</name>\r
+<onbase>.401</onbase>\r
+<average>.315</average>\r
+<runs>70</runs>\r
+<hits>100</hits>\r
+<walks>42</walks>\r
+<hitbypitch>6</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>11</rank>\r
+<name>Bobby Higginson, DET</name>\r
+<onbase>.400</onbase>\r
+<average>.291</average>\r
+<runs>41</runs>\r
+<hits>68</hits>\r
+<walks>46</walks>\r
+<hitbypitch>0</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>12</rank>\r
+<name>Fred McGriff, TB</name>\r
+<onbase>.398</onbase>\r
+<average>.332</average>\r
+<runs>33</runs>\r
+<hits>90</hits>\r
+<walks>31</walks>\r
+<hitbypitch>0</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>13</rank>\r
+<name>Jim Thome, CLE</name>\r
+<onbase>.397</onbase>\r
+<average>.276</average>\r
+<runs>47</runs>\r
+<hits>69</hits>\r
+<walks>49</walks>\r
+<hitbypitch>2</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>14</rank>\r
+<name>Mike Sweeney, KC</name>\r
+<onbase>.395</onbase>\r
+<average>.335</average>\r
+<runs>68</runs>\r
+<hits>106</hits>\r
+<walks>34</walks>\r
+<hitbypitch>0</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>15</rank>\r
+<name>Carlos Delgado, TOR</name>\r
+<onbase>.393</onbase>\r
+<average>.250</average>\r
+<runs>49</runs>\r
+<hits>72</hits>\r
+<walks>61</walks>\r
+<hitbypitch>8</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>16</rank>\r
+<name>Frank Menechino, OAK</name>\r
+<onbase>.392</onbase>\r
+<average>.283</average>\r
+<runs>46</runs>\r
+<hits>73</hits>\r
+<walks>38</walks>\r
+<hitbypitch>10</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>17</rank>\r
+<name>Magglio Ordonez, SOX</name>\r
+<onbase>.386</onbase>\r
+<average>.304</average>\r
+<runs>48</runs>\r
+<hits>87</hits>\r
+<walks>36</walks>\r
+<hitbypitch>2</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>18</rank>\r
+<name>Shannon Stewart, TOR</name>\r
+<onbase>.385</onbase>\r
+<average>.323</average>\r
+<runs>58</runs>\r
+<hits>109</hits>\r
+<walks>30</walks>\r
+<hitbypitch>4</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>19</rank>\r
+<name>Doug Mientkiewicz, MIN</name>\r
+<onbase>.383</onbase>\r
+<average>.312</average>\r
+<runs>43</runs>\r
+<hits>89</hits>\r
+<walks>29</walks>\r
+<hitbypitch>5</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>20</rank>\r
+<name>Tony Clark, DET</name>\r
+<onbase>.379</onbase>\r
+<average>.300</average>\r
+<runs>44</runs>\r
+<hits>74</hits>\r
+<walks>33</walks>\r
+<hitbypitch>1</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>21</rank>\r
+<name>Juan Gonzalez, CLE</name>\r
+<onbase>.378</onbase>\r
+<average>.341</average>\r
+<runs>57</runs>\r
+<hits>101</hits>\r
+<walks>21</walks>\r
+<hitbypitch>2</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>22</rank>\r
+<name>Ichiro Suzuki, SEA</name>\r
+<onbase>.378</onbase>\r
+<average>.349</average>\r
+<runs>71</runs>\r
+<hits>126</hits>\r
+<walks>14</walks>\r
+<hitbypitch>4</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>23</rank>\r
+<name>Trot Nixon, BOS</name>\r
+<onbase>.377</onbase>\r
+<average>.263</average>\r
+<runs>46</runs>\r
+<hits>63</hits>\r
+<walks>41</walks>\r
+<hitbypitch>6</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>24</rank>\r
+<name>Raul Mondesi, TOR</name>\r
+<onbase>.375</onbase>\r
+<average>.283</average>\r
+<runs>57</runs>\r
+<hits>89</hits>\r
+<walks>44</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>25</rank>\r
+<name>Rafael Palmeiro, TEX</name>\r
+<onbase>.371</onbase>\r
+<average>.262</average>\r
+<runs>43</runs>\r
+<hits>78</hits>\r
+<walks>52</walks>\r
+<hitbypitch>1</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>26</rank>\r
+<name>Melvin Mora, BAL</name>\r
+<onbase>.371</onbase>\r
+<average>.292</average>\r
+<runs>30</runs>\r
+<hits>70</hits>\r
+<walks>23</walks>\r
+<hitbypitch>9</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>27</rank>\r
+<name>Ellis Burks, CLE</name>\r
+<onbase>.371</onbase>\r
+<average>.295</average>\r
+<runs>53</runs>\r
+<hits>77</hits>\r
+<walks>33</walks>\r
+<hitbypitch>2</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>28</rank>\r
+<name>Derek Jeter, NYY</name>\r
+<onbase>.367</onbase>\r
+<average>.288</average>\r
+<runs>52</runs>\r
+<hits>91</hits>\r
+<walks>37</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>29</rank>\r
+<name>Adam Kennedy, ANA</name>\r
+<onbase>.366</onbase>\r
+<average>.303</average>\r
+<runs>29</runs>\r
+<hits>73</hits>\r
+<walks>20</walks>\r
+<hitbypitch>5</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>30</rank>\r
+<name>David Eckstein, ANA</name>\r
+<onbase>.363</onbase>\r
+<average>.283</average>\r
+<runs>41</runs>\r
+<hits>82</hits>\r
+<walks>25</walks>\r
+<hitbypitch>12</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>31</rank>\r
+<name>Tim Salmon, ANA</name>\r
+<onbase>.363</onbase>\r
+<average>.206</average>\r
+<runs>33</runs>\r
+<hits>52</hits>\r
+<walks>58</walks>\r
+<hitbypitch>5</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>32</rank>\r
+<name>Damion Easley, DET</name>\r
+<onbase>.362</onbase>\r
+<average>.285</average>\r
+<runs>33</runs>\r
+<hits>78</hits>\r
+<walks>28</walks>\r
+<hitbypitch>6</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>33</rank>\r
+<name>Bret Boone, SEA</name>\r
+<onbase>.362</onbase>\r
+<average>.326</average>\r
+<runs>60</runs>\r
+<hits>103</hits>\r
+<walks>20</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>34</rank>\r
+<name>Troy Glaus, ANA</name>\r
+<onbase>.362</onbase>\r
+<average>.250</average>\r
+<runs>48</runs>\r
+<hits>74</hits>\r
+<walks>52</walks>\r
+<hitbypitch>2</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>35</rank>\r
+<name>Scott Brosius, NYY</name>\r
+<onbase>.359</onbase>\r
+<average>.290</average>\r
+<runs>43</runs>\r
+<hits>81</hits>\r
+<walks>30</walks>\r
+<hitbypitch>1</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>36</rank>\r
+<name>Corey Koskie, MIN</name>\r
+<onbase>.355</onbase>\r
+<average>.262</average>\r
+<runs>48</runs>\r
+<hits>72</hits>\r
+<walks>36</walks>\r
+<hitbypitch>6</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>37</rank>\r
+<name>Mike Cameron, SEA</name>\r
+<onbase>.355</onbase>\r
+<average>.270</average>\r
+<runs>56</runs>\r
+<hits>73</hits>\r
+<walks>35</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>38</rank>\r
+<name>Paul Konerko, SOX</name>\r
+<onbase>.353</onbase>\r
+<average>.277</average>\r
+<runs>48</runs>\r
+<hits>76</hits>\r
+<walks>27</walks>\r
+<hitbypitch>6</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>39</rank>\r
+<name>Ben Grieve, TB</name>\r
+<onbase>.352</onbase>\r
+<average>.245</average>\r
+<runs>32</runs>\r
+<hits>69</hits>\r
+<walks>44</walks>\r
+<hitbypitch>3</hitbypitch>\r
+</listing>\r
+<listing>\r
+<rank>40</rank>\r
+<name>Darin Erstad, ANA</name>\r
+<onbase>.349</onbase>\r
+<average>.283</average>\r
+<runs>47</runs>\r
+<hits>91</hits>\r
+<walks>28</walks>\r
+<hitbypitch>6</hitbypitch>\r
+</listing>\r
+<time_stamp> July 3, 2001, at 12:36 PM ET </time_stamp>\r
+</message>\r