src/sap.ui.core/src/sap/ui/performance/trace/Interaction.js
function createOwnerComponentInfo(oSrcElement) {
		var sId, sVersion;
		if (oSrcElement) {
			var Component, oComponent;
			Component = sap.ui.require("sap/ui/core/Component");
			while (Component && oSrcElement && oSrcElement.getParent) {
				oComponent = Component.getOwnerComponentFor(oSrcElement);
				if (oComponent || oSrcElement instanceof Component) {
					oComponent = oComponent || oSrcElement;
					var oApp = oComponent.getManifestEntry("sap.app");
					// get app id or module name for FESR
					sId = oApp && oApp.id || oComponent.getMetadata().getName();
					sVersion = oApp && oApp.applicationVersion && oApp.applicationVersion.version;
				}
				oSrcElement = oSrcElement.getParent();
			}
		}
		return {
			id: sId ? sId : "undetermined",
			version: sVersion ? sVersion : ""
		};
	}
function createOwnerComponentInfo(oSrcElement) {
		var sId, sVersion;
		if (oSrcElement) {
			var Component, oComponent;
			Component = sap.ui.require("sap/ui/core/Component");
			while (Component && oSrcElement && oSrcElement.getParent) {
				oComponent = Component.getOwnerComponentFor(oSrcElement);
				if (oComponent || oSrcElement instanceof Component) {
					oComponent = oComponent || oSrcElement;
					var oApp = oComponent.getManifestEntry("sap.app");
					// get app id or module name for FESR
					sId = oApp && oApp.id || oComponent.getMetadata().getName();
					sVersion = oApp && oApp.applicationVersion && oApp.applicationVersion.version;
				}
				oSrcElement = oSrcElement.getParent();
			}
		}
		return {
			id: sId ? sId : "undetermined",
			version: sVersion ? sVersion : ""
		};
	}
function createOwnerComponentInfo ( oSrcElement ) { var sId , sVersion ; if ( oSrcElement ) { var Component , oComponent ; Component = sap . ui . require ( "sap/ui/core/Component" ) ; while ( Component && oSrcElement && oSrcElement . getParent ) { oComponent = Component . getOwnerComponentFor ( oSrcElement ) ; if ( oComponent || oSrcElement instanceof Component ) { oComponent = oComponent || oSrcElement ; var oApp = oComponent . getManifestEntry ( "sap.app" ) ; // get app id or module name for FESR sId = oApp && oApp . id || oComponent . getMetadata ( ) . getName ( ) ; sVersion = oApp && oApp . applicationVersion && oApp . applicationVersion . version ; } oSrcElement = oSrcElement . getParent ( ) ; } } return { id : sId ? sId : "undetermined" , version : sVersion ? sVersion : "" } ; }
component determination - heuristic
component determination - heuristic