docs: @Pure
  	public DoubleProperty minXProperty() {
  		if (this.minX == null) {
  			this.minX = new SimpleDoubleProperty(this, MathFXAttributeNames.MINIMUM_X) {
  				@Override
  				protected void invalidated() {
  					final double currentMin = get();
  					final double currentMax = getMaxX();
  					if (currentMin > currentMax) {
  						// min-max constrain is broken
  						maxXProperty().set(currentMin);
  					}
  				}
  			};
  		}
  		return this.minX;
  	}