Eine Funktion, die JSON_OCLC heißt und dann
XML verarbeitet ist auch so haarscharf an Mind-Explosion!
Warum nutzt du nicht den
XML-Binding-Wizard?
In Delphi Sydney ein neues
VCL-Projekt öffnen und dann nochmal über File | New | Other | Delphi | Web |
XML Data Binding auswählen.
Dann dem Dialog eine Beispiel-
XML vorwerfen.
Delphi-Quellcode:
uses
works,
Xml.XMLDoc;
const
Dummy_String = '
' +
'
<?xml version="1.0" encoding="UTF-8" standalone="no"?>' +
'
<classify xmlns="http://classify.oclc.org">' +
'
<response code="4"/>' +
'
<!--Classify is a product of OCLC Online Computer Library Center: http://classify.oclc.org-->' +
'
<workCount>5</workCount>' +
'
<start>0</start>' +
'
<maxRecs>25</maxRecs>' +
'
<orderBy>thold desc</orderBy>' +
'
<input type="title">Rabenpresse</input>' +
'
<works>' +
'
<work author="Liersch, Hendrik" hyr="2007" lyr="2007" title="Die fast vollständige Geschichte der Rabenpresse : aus Anlaß der Ausstellung im Foyer der Universitätsbibliothek" wi="175651286"/>' +
'
<work author="Fuchs, Günter Bruno [Contributor; Editor]" hyr="1969" lyr="1968" title="Berlin-Buch der Neuen Rabenpresse : mit einem Calendarium auf das Jahr 1969" wi="43039960"/>' +
'
<work author="Hantzsch, Friedrich Georg" editions="3" format="Book" holdings="3" hyr="2012" itemtype="itemtype-book" lyr="2012" owi="1203218774" schemes="LCC" title="Die Rabenpresse selig" wi="824666518"/>' +
'
<work author="(Hrsg.), Hermann Schladt" hyr="2014" lyr="2014" title="Edition Rabenpresse 1: Romanzero" wi="943835587"/>' +
'
<work editions="1" hyr="2007" lyr="2007" title="Die fast vollständige Geschichte der Rabenpresse : aus Anlass der Ausstellung "/>' +
'
</works>' +
'
</classify>';
procedure TForm3.FormCreate(Sender: TObject);
var
Classify: IXMLClassifyType;
Works: IXMLWorksType;
Work: IXMLWorkType;
I: Integer;
begin
Classify := Getclassify(
Xml.XMLDoc.LoadXMLData(Dummy_String));
Works := Classify.Works;
for I := 0
to Works.Count - 1
do
begin
Work := Works.Work[I];
ShowMessage(Work.Author);
end;
end;