public void XmlManyToOne()
		{
			ISession s = OpenSession();
			ITransaction t = s.BeginTransaction();

			var carType = new CarType {TypeName = "Type 1"};
			s.Save(carType);

			var car1 = new Car {CarType = carType, Model = "Model 1"};
			s.Save(car1);

			var car2 = new Car {CarType = carType, Model = "Model 2"};
			s.Save(car2);

			t.Commit();
			s.Close();

			s = OpenSession();
			ISession xmlSession = s.GetSession(EntityMode.Xml);
			t = s.BeginTransaction();

			IList list = xmlSession.CreateQuery("from Car c join fetch c.carType order by c.model asc").List();

			var expectedResults = new[]
			                      	{
			                      		"<car id=\"" + car1.Id + "\"><model>Model 1</model><carType id=\"" + carType.Id
			                      		+ "\"><typeName>Type 1</typeName></carType></car>",
			                      		"<car id=\"" + car2.Id + "\"><model>Model 2</model><carType id=\"" + carType.Id
			                      		+ "\"><typeName>Type 1</typeName></carType></car>"
			                      	};

			for (int i = 0; i < list.Count; i++)
			{
				var element = (XmlElement) list[i];

				//print(element);
				Assert.That(element.InnerXml.Equals(expectedResults[i]));
			}

			s.Delete("from CarType");
			s.Delete("from Car");

			t.Commit();
			s.Close();
		}
		public void XmlOneToMany()
		{
			ISession s = OpenSession();
			ITransaction t = s.BeginTransaction();

			var carType = new CarType {TypeName = "Type 1"};
			s.Save(carType);

			var car = new Car {CarType = carType, Model = "Model 1"};
			s.Save(car);

			var carPart1 = new CarPart {PartName = "chassis"};
			car.CarParts.Add(carPart1);

			t.Commit();
			s.Close();

			s = OpenSession();
			ISession xmlSession = s.GetSession(EntityMode.Xml);
			t = s.BeginTransaction();

			var element = (XmlElement) xmlSession.CreateQuery("from Car c join fetch c.carParts").UniqueResult();

			string expectedResult = "<car id=\"" + car.Id + "\"><carPart>" + carPart1.Id
			                        + "</carPart><model>Model 1</model><carType id=\"" + carType.Id
			                        + "\"><typeName>Type 1</typeName></carType></car>";

			//print(element);
			Assert.That(element.InnerXml.Equals(expectedResult));

			s.Delete("from CarPart");
			s.Delete("from CarType");
			s.Delete("from Car");

			t.Commit();
			s.Close();
		}