code: function (oPathValue) {
  			var oModel = oPathValue.model,
  				oPromise;
  
  			Basics.expectType(oPathValue, "string");
  			oPromise = oModel.fetchObject(oPathValue.path + "/$");
  			if (oPromise.isPending() && !oPathValue.$$valueAsPromise) {
  				oPromise.caught();
  				oPromise = SyncPromise.resolve();
  			}
  
  			return oPromise.then(function (oProperty) {
  				var mConstraints,
  					oCurrencyOrUnitPromise,
  					sType = oProperty && oProperty.$Type;
  
  				if (oProperty && oPathValue.complexBinding) {
  					mConstraints = oModel.getConstraints(oProperty, oPathValue.path);
  					oCurrencyOrUnitPromise
  						= Expression.fetchCurrencyOrUnit(oPathValue, sType, mConstraints);
  				}
  				return oCurrencyOrUnitPromise || {
  					constraints : mConstraints,
  					result : "binding",
  					type : sType,
  					value : oPathValue.prefix + oPathValue.value
  				};
  			});
  		}
docs: Handling of "14.5.12 Expression edm:Path" and "14.5.13 Expression edm:PropertyPath".
  If <code>oPathValue.path</code> references a property which has an
  <code>Org.OData.Measures.V1.ISOCurrency</code> annotation, a composite result object for
  a <code>sap.ui.model.odata.type.Currency</code> type with the currency, the currency code
  and the currency customizing as parts is returned.
  If <code>oPathValue.path</code> references a property which has an
  <code>Org.OData.Measures.V1.Unit</code> annotation, a composite result object for a
  <code>sap.ui.model.odata.type.Unit</code> type with the measures, the unit and the unit
  customizing as parts is returned.
  
  @param {object} oPathValue
  model, path and value information pointing to the path (see Expression object)
  @returns {sap.ui.base.SyncPromise}
  a sync promise which resolves with the result object or is rejected with an error