function fnInitViewSettings() {
			that._oTemplate = document.createElement("div");

			if (typeof vHTML === "string") {
				that._oTemplate.innerHTML = vHTML;
			} else {
				var oNodeList = vHTML;
				var oFragment = document.createDocumentFragment();
				for (var i = 0; i < oNodeList.length;i++) {
					oFragment.appendChild(oNodeList.item(i));
				}
				that._oTemplate.appendChild(oFragment);
			}

			var oMetaElement = that._oTemplate.getElementsByTagName("template")[0];
			var oProperties = that.getMetadata().getAllProperties();

			if (oMetaElement) {
				var aAttributes = oMetaElement.getAttributeNames();
				for (var j = 0; j < aAttributes.length; j++) {
					var sAttributeName = aAttributes[j];
					var sSettingName = DeclarativeSupport.convertAttributeToSettingName(sAttributeName, that.getId());
					var sValue = oMetaElement.getAttribute(sAttributeName);
					var oProperty = oProperties[sSettingName];
					if (!mSettings[sSettingName]) {
						if (oProperty) {
							mSettings[sSettingName] = DeclarativeSupport.convertValueToType(DeclarativeSupport.getPropertyDataType(oProperty),sValue);
						} else if (HTMLView._mAllowedSettings[sSettingName]) {
							mSettings[sSettingName] = sValue;
						}
					}
				}
				that._oTemplate = oMetaElement;
			}

			// that is a fix for browsers that support web components
			if (that._oTemplate.content) {
				var oFragment = that._oTemplate.content;
				// Create a new template, as innerHTML would be empty for TemplateElements when the fragment is appended directly
				that._oTemplate = document.createElement("div");
				// Make the shadow DOM available in the DOM
				that._oTemplate.appendChild(oFragment);
			}

			if (mSettings.controllerName) {
				that._controllerName = mSettings.controllerName;
			}
			if ((mSettings.resourceBundleName || mSettings.resourceBundleUrl) && (!mSettings.models || !mSettings.models[mSettings.resourceBundleAlias])) {
				var oModel = new ResourceModel({
					bundleName: mSettings.resourceBundleName,
					bundleUrl: mSettings.resourceBundleUrl,
					bundleLocale: mSettings.resourceBundleLocale,
					async: mSettings.async
				});
				var vBundle = oModel.getResourceBundle();
				// if ResourceBundle was created with async flag vBundle will be a Promise
				if (vBundle instanceof Promise) {
					return vBundle.then(function() {
						that.setModel(oModel, mSettings.resourceBundleAlias);
					});
				}
				that.setModel(oModel, mSettings.resourceBundleAlias);
			}
		}
Abstract method implementation.

@see sap.ui.core.mvc.View#initViewSettings

@private