If the property value is defined by a procedure, then at the time of construction of the Element object, a trial evaluation of the procedure is done (and the result is discarded). This allows any error from a procedure defining the property value to be rethrown immediately at the time of construction of the Element object. Any error from a procedure defining the property uncertainty is rethrown when the Element object is evaluated with GetError.