/// <summary>
		/// Compares two properties for sorting
		/// </summary>
		/// <param name="y">Right operand</param>
		/// <returns></returns>
		public int CompareTo(PropertySerializationInfo y)
		{
			int result = this.Version.CompareTo(y.Version);

			if (result == 0)
			{
				result = this.attribute.Order.CompareTo(y.attribute.Order);

				if (result == 0)
				{
					result = string.Compare(this.Name, y.Name, true);
				}
			}

			return result;
		}
		/// <summary>
		/// Compares two properties for sorting
		/// </summary>
		/// <param name="y">Right operand</param>
		/// <returns></returns>
		public int CompareTo(PropertySerializationInfo y)
		{
			int result = this.Version.CompareTo(y.Version);

			if (result == 0)
			{
				result = this.attribute.Order.CompareTo(y.attribute.Order);

				if (result == 0)
				{
					result = string.Compare(this.Name, y.Name, true);
				}
			}

			return result;
		}