We're missing information about percent value resolution in the constraint space. Perhaps something like: interface ConstraintSpace { attribute double? width; attribute double? height; attribute double? widthPercentConstraint; attribute double? heightPercentConstraint; . . . }