* @return The parsed, storable property value.
* @throws PropertyException For an invalid property value.
*/
private PropertyValue createPropertyValue(final FObj fobj,
final String value) throws PropertyException {
final PropertyValue pv = standardParse(fobj, value);
if (pv.canEvalKeyword()) {
return pv;
}
if (pv.canEvalPercentage()) {
return pv;
}
if (pv.canEvalNumeric()) {
final double number = pv.evalNumeric();
if (pv.getUnitPower() == Expr.UNIT_POWER_NUMERIC
&& number >= 0
&& number <= WKConstants.PERCENT_CONVERSION) {
return pv;
}
throw unexpectedValue(value, fobj);