ThalisonRC
New Member
I'm trying to parse a MusicBraninz XML file in Delphi XE2 using the following code:\[code\]webquery := 'http://www.musicbrainz.org/ws/2/recording/?query='+escape(tracktitle)+'&artist:'+escape(ArtistTitle);Log('WebQuery: ' + webquery, 0);begin XMLDoc:= TXMLDocument.Create(nil); XMLDoc.FileName := webQuery; XMLDoc.Active := True; Log('Report: ' + XMLDoc.XML.Text, 0); StartItemNode := XMLDoc.DocumentElement.ChildNodes.First.ChildNodes.FindNode('release-list') ; ANode := StartItemNode; repeat Result.Album := ANode.ChildNodes['title'].Text; <-- Access Violation Result.Status:= ANode.ChildNodes['status'].Text; ANode := ANode.NextSibling; until ANode = nil;end;\[/code\]The XML file is fetched correctly and looks like what's below:\[code\]<metadata xmlns="http://musicbrainz.org/ns/mmd-2.0#" xmlns:ext="http://musicbrainz.org/ns/ext#-2.0"><recording-list offset="0" count="1"><recording ext:score="100" id="a399eec1-d45d-4505-b475-ead0da6cad17"><title>Mestec?ni?</title><length>359000</length><artist-credit><name-credit><artist id="8fb78a16-0cba-4175-8c92-d9645dfb007d"><name>Bucovina</name><sort-name>Bucovina</sort-name></artist></name-credit></artist-credit><release-list><release id="22b00afc-86ea-445a-8805-b6bfa33da74e"><title>Duh</title><status>Official</status><release-group type="EP" id="4e8fb87c-3760-48c1-a3d7-88e7a2c839fa"><primary-type>EP</primary-type></release-group><date>2010</date><country>RO</country><medium-list><track-count>5</track-count><medium><position>1</position><format>CD</format><track-list offset="3" count="5"><track><number>4</number><title>Mestec?ni?</title><length>359000</length></track></track-list></medium></medium-list></release></release-list></recording></recording-list></metadata>\[/code\]My question is: am I doing anything wrong here? All variables are declared and initialized OK.Thanks,