Thank you for the guidance, Weedpacket. This is all very new to me and I'm trying to learn as much as possible from various online tutorials and a couple of books I have. xpath seems like the way to go for my intended use and I appreciate you bringing this function to my attention.
I'm still struggling with the syntax and am wondering if you could look at a more complete xml doc and perhaps get me pointed in the right direction? I have tried the following:
$xml->xpath("//controlfield[@tag='001']");
$xml->xpath("//controlfield/@tag='001'");
$xml->xpath("//controlfield/[@tag='001']");
None of these work and there's nothing in my error logs that sheds any light. BTW -- I'm using PHP 5.0.4. Here's a more complete xml document:
<?xml version="1.0" encoding="UTF-8" ?>
- <record xmlns="http://www.loc.gov/MARC21/slim">
<leader>01001cam a2200313 a 4500</leader>
<controlfield tag="001">102514</controlfield>
<controlfield tag="005">20050830103940.0</controlfield>
<controlfield tag="008">030315s1990 nyua j 000 0 eng d</controlfield>
- <datafield tag="010" ind1="" ind2="">
<subfield code="a">94127114</subfield>
</datafield>
- <datafield tag="035" ind1="" ind2="">
<subfield code="a">(OCoLC)ocm22462806</subfield>
</datafield>
- <datafield tag="040" ind1="" ind2="">
<subfield code="a">KyHhN</subfield>
<subfield code="c">DLC</subfield>
<subfield code="d">PQA</subfield>
</datafield>
- <datafield tag="020" ind1="" ind2="">
<subfield code="a">0941355020</subfield>
</datafield>
- <datafield tag="042" ind1="" ind2="">
<subfield code="a">lccopycat</subfield>
<subfield code="a">lcac</subfield>
</datafield>
- <datafield tag="050" ind1="0" ind2="0">
<subfield code="a">QA95</subfield>
<subfield code="b">.B83 1990</subfield>
</datafield>
- <datafield tag="082" ind1="0" ind2="0">
<subfield code="a">793.7/4</subfield>
<subfield code="2">20</subfield>
</datafield>
- <datafield tag="099" ind1="" ind2="">
<subfield code="a">J</subfield>
<subfield code="a">793.74</subfield>
<subfield code="a">B96</subfield>
</datafield>
- <datafield tag="049" ind1="" ind2="">
<subfield code="a">PQA$</subfield>
</datafield>
- <datafield tag="100" ind1="1" ind2="">
<subfield code="a">Burns, Marilyn,</subfield>
<subfield code="d">1941-</subfield>
</datafield>
- <datafield tag="245" ind1="1" ind2="4">
<subfield code="a">The $1.00 word riddle book /</subfield>
<subfield code="c">riddles by Marilyn Burns ; pictures by Martha Weston.</subfield>
</datafield>
- <datafield tag="260" ind1="" ind2="">
<subfield code="a">[New York?] :</subfield>
<subfield code="b">Math Solutions Publications ;</subfield>
<subfield code="a">White Plains, N.Y. :</subfield>
<subfield code="b">Distributed by Cuisenaire Co. of America,</subfield>
<subfield code="c">c1990.</subfield>
</datafield>
- <datafield tag="300" ind1="" ind2="">
<subfield code="a">48 p. :</subfield>
<subfield code="b">ill. ;</subfield>
<subfield code="c">21 cm.</subfield>
</datafield>
- <datafield tag="650" ind1="" ind2="0">
<subfield code="a">Mathematical recreations.</subfield>
</datafield>
- <datafield tag="650" ind1="" ind2="0">
<subfield code="a">Riddles.</subfield>
</datafield>
- <datafield tag="650" ind1="" ind2="1">
<subfield code="a">Mathematical recreations.</subfield>
</datafield>
- <datafield tag="650" ind1="" ind2="1">
<subfield code="a">Riddles.</subfield>
</datafield>
- <datafield tag="700" ind1="1" ind2="">
<subfield code="a">Weston, Martha,</subfield>
<subfield code="e">ill.</subfield>
</datafield>
- <datafield tag="740" ind1="0" ind2="">
<subfield code="a">One dollar word riddle book.</subfield>
</datafield>
- <datafield tag="948" ind1="" ind2="0">
<subfield code="s">2002-2003 Elementary Education $7.46</subfield>
</datafield>
- <datafield tag="994" ind1="" ind2="">
<subfield code="a">X0</subfield>
<subfield code="b">PQA</subfield>
</datafield>
</record>