Deserializacja xml z simplexml w java

Próbuję deserializować ciąg xml przy pomocy SimpleXML, przyjrzałem się ich przykładom, ale nie jestem pewien, czy pojmę tę koncepcję, czy nie.

Przykładowy XML (sprawdza poprawność):

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<Response xmlns="http://localhost/webservices/">
<Result>
<Item><ID>0</ID><language /><price>168</price></Item>
<Item><ID>1</ID><language /><price>178</price></Item>
<Item><ID>2</ID><language /><price>195</price></Item>
<Item><ID>3</ID><language /><price>169</price></Item>
<Item><ID>4</ID><language /><price>178</price></Item>
<Item><ID>5</ID><language /><price>178</price></Item>
<Item><ID>6</ID><language /><price>149</price></Item>
<Item><ID>7</ID><language /><price>178</price></Item>
<Item><ID>8</ID><language /><price>168</price></Item>
<Item><ID>9</ID><language /><price>179</price></Item>
<Item><ID>10</ID><language /><price>147</price></Item>
<Item><ID>11</ID><language /><price>165</price></Item>
<Item><ID>12</ID><language /><price>192</price></Item>
<Item><ID>13</ID><language /><price>218</price></Item>
<Item><ID>14</ID><language /><price>144</price></Item>
<Item><ID>15</ID><language /><price>141</price></Item>
</Result>
</Response>
</soap:Body></soap:Envelope>

I kod java:

    @Root(name="Result",strict=false)
public class ItemList {

    @ElementList(entry="Item")
    private List<Item> _list;

    public List<Book> GetItemList() 
    {
        return _list;
    }

    public void SetItemList(List<Item> value) 
    {
        this._list = value; 
    }
}

@Root(strict=false)
public class Item {
    @Element(name="ID")
    private String _ID;
    @Element(name="price")
    private String _price;


    public String GetPrice()
    {
        return _price;
    }

    public void SetPrice(String value)
    {
        this._price = value;
    }

    public String GetID()
    {
        return _ID;
    }

    public void SetID(String value) 
    {
        this._ID = value;
    }

    public Item(String ID,
                String price) 
    {
        this._ID = ID;
        this._price = price;
    }
}

Każda pomoc jest doceniana.

questionAnswers(2)

yourAnswerToTheQuestion