I've encounter an issue with the XML object creation. I can't affect any value to my object, here's some detail :
First, I created the following XML mapping in C# :
[XmlRoot(ElementName = "pertinentLocation")]
public class PertinentLocation
{
    [XmlElement(ElementName = "predefinedLocationReference")]
    public string PredefinedLocationReference { get; set; }
    [XmlAttribute(AttributeName = "type")]
    public string Type { get; set; }
}
[XmlRoot(ElementName = "travelTime")]
public class TravelTime
{
    [XmlElement(ElementName = "duration")]
    public string Duration { get; set; }
}
[XmlRoot(ElementName = "freeFlowTravelTime")]
public class FreeFlowTravelTime
{
    [XmlElement(ElementName = "duration")]
    public string Duration { get; set; }
}
[XmlRoot(ElementName = "freeFlowSpeed")]
public class FreeFlowSpeed
{
    [XmlElement(ElementName = "speed")]
    public string Speed { get; set; }
}
[XmlRoot(ElementName = "travelTimeDataExtended")]
public class TravelTimeDataExtended
{
    [XmlElement(ElementName = "reliability")]
    public string Reliability { get; set; }
}
[XmlRoot(ElementName = "travelTimeDataExtension")]
public class TravelTimeDataExtension
{
    [XmlElement(ElementName = "travelTimeDataExtended")]
    public TravelTimeDataExtended TravelTimeDataExtended { get; set; }
}
[XmlRoot(ElementName = "basicData")]
public class BasicData
{
    [XmlElement(ElementName = "measurementOrCalculatedTimePrecision")]
    public string MeasurementOrCalculatedTimePrecision { get; set; }
    [XmlElement(ElementName = "measurementOrCalculationPeriod")]
    public string MeasurementOrCalculationPeriod { get; set; }
    [XmlElement(ElementName = "measurementOrCalculationTime")]
    public string MeasurementOrCalculationTime { get; set; }
    [XmlElement(ElementName = "pertinentLocation")]
    public PertinentLocation PertinentLocation { get; set; }
    [XmlElement(ElementName = "travelTimeTrendType")]
    public string TravelTimeTrendType { get; set; }
    [XmlElement(ElementName = "travelTime")]
    public TravelTime TravelTime { get; set; }
    [XmlElement(ElementName = "freeFlowTravelTime")]
    public FreeFlowTravelTime FreeFlowTravelTime { get; set; }
    [XmlElement(ElementName = "freeFlowSpeed")]
    public FreeFlowSpeed FreeFlowSpeed { get; set; }
    [XmlElement(ElementName = "travelTimeDataExtension")]
    public TravelTimeDataExtension TravelTimeDataExtension { get; set; }
    [XmlAttribute(AttributeName = "type")]
    public string Type { get; set; }
}
[XmlRoot(ElementName = "elaboratedData")]
public class ElaboratedData
{
    [XmlElement(ElementName = "basicData")]
    public BasicData BasicData { get; set; }
    [XmlAttribute(AttributeName = "id")]
    public string Id { get; set; }
}
Then i've initiate it:
ElaboratedData objXml = new ElaboratedData(); 
But the problem is here :
objXml.BasicData.Type = "TravelTime";
When i try to affect a value to something in obj.Xml it say :
ElaboratedData.BasicData.get has return null.
I've discover XML in C# today, im kinda lost right now
