@Override
	public int compareTo(PropertyInfo property) {
		if (!beanClass.equals(property.beanClass)) {
			return beanClass.getName().compareTo(property.beanClass.getName());			
		} else {
			if (ordinal >= 0) {
				if (property.ordinal >= 0) {
					if (ordinal > property.ordinal) {
						return 1;
					} else if (ordinal < property.ordinal) {
						return -1;
					}
				} else {
					return -1;
				}
			} else if (property.ordinal >= 0) {
				return 1;
			}
			
			return name.compareTo(property.name);
		}
	}