I have some XML with an element like this:
<hour base_forecast="12" datim="29/0" />
And am receiving the error:
Unexpected node type Element. ReadElementString method can only be 
called on elements with simple or empty content.
I am guessing this is because the element has no value. I don't control this XML so I can't change it. How would I deserialize this?
** EDIT **
One of the attributes' values is ">6" .... could this be the culprit? If so, how do I handle that?
** Update **
Found some data that wasn't returning a > in a value of the attribute. Same error is occurring.
** Edit #3 * Created an XSD for the XML I am receiving, then generated classes for them with the xsd tool. Adding to the bottom of this post.
Here is the Deserialization code:
        HttpWebRequest req = (HttpWebRequest)WebRequest.Create("xxx");
        HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
        WeatherData Result = new WeatherData();
        using (Stream st = resp.GetResponseStream())
        {
            XmlRootAttribute xRoot = new XmlRootAttribute();
            xRoot.ElementName = "model_data";
            xRoot.IsNullable = true;
            Result = new XmlSerializer(typeof(WeatherData), xRoot).Deserialize(st) as WeatherData;  ** Error here
Xml returned:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE observation SYSTEM "http://private.com/hithere.dtd">
<model_data>
     <site a="28/12" b="KXXX">
         <hour x="-9999" y="-9999" z="-9999"/>
     </site>
</model_data>
Data object
[Serializable, XmlRoot("model_data")]
public class WeatherData
{
    [XmlElement("site")]
    public string City { get; set; }
    [XmlAttribute]
    public string a { get; set; }
    [XmlAttribute]
    public string b { get; set; }
    [XmlElement(ElementName="hour", IsNullable=true)]
    public string Hour { get; set; }
    [XmlAttribute]
    public string x { get; set; }
    [XmlAttribute]
    public string y { get; set; }
    [XmlAttribute]
    public string z { get; set; }
}
XSD Tool generated classes
**Removed generated classes, but they are similar to what Hugo posted **