public override object GenerateInstance(Type modelType, IValueProvider valueProvider)
		{
			if (modelType == typeof(PersonModel))
			{
				var id = valueProvider.Extract<int>("ModelObject.Id");
				if (id == 0)
				{
					return new PersonModel(this.PersonFactory.Create());
				}
				else
				{
					return new PersonModel(this.PersonFactory.Fetch(id));
				}
			}

			return base.GenerateInstance(modelType, valueProvider);
		}