code: function(sPath, oProperties, sTarget, oSchema) {
  		var iPos = sPath.indexOf("/");
  		if (iPos > -1) {
  			var sPropertyName = sPath.substr(0, iPos);
  			var mNavProperty = AnnotationParser.findNavProperty(sTarget, sPropertyName);
  
  			if (mNavProperty) {
  				var mToEntityType = AnnotationParser._parserData.metadataInstance._getEntityTypeByNavPropertyObject(mNavProperty);
  
  				if (mToEntityType) {
  					sTarget = mToEntityType.entityType;
  					sPath = sPath.substr(iPos + 1);
  				}
  			}
  		}
  
  		if ((sPath.charAt(0) === "@") && (sPath.indexOf(oSchema.Alias) === 1)) {
  			sPath = sPath.slice(oSchema.Alias.length + 2);
  		}
  		if (sPath.indexOf("/") >= 0) {
  			if (oProperties[sPath.slice(0, sPath.indexOf("/"))]) {
  				sTarget = sPath.slice(0, sPath.indexOf("/"));
  				sPath = sPath.slice(sPath.indexOf("/") + 1);
  			}
  		}
  		return oProperties[sTarget] && oProperties[sTarget][sPath];
  	}
docs: /*
  @static
  @private