elementProperty = getProperty(elementType, elementPropertyExpression, false, owningProperty);
} else {
throw new IllegalArgumentException("'" + p + "' is not a valid element property for " + type);
}
return new NestedElementProperty(owningProperty, elementProperty, this);
}