wip
diff --git a/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/ecore/EcoreASResourceImpl.java b/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/ecore/EcoreASResourceImpl.java
index 021fedc..6f54e4e 100644
--- a/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/ecore/EcoreASResourceImpl.java
+++ b/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/ecore/EcoreASResourceImpl.java
@@ -23,6 +23,9 @@
 {
 	public EcoreASResourceImpl(@NonNull URI uri, @NonNull ASResourceFactory asResourceFactory) {
 		super(uri, asResourceFactory);
+		if (uri.toString().contains("Pivot")) {
+			getClass();
+		}
 	//	setSaveable(false);		-- FIXME change to require explicit srtSaveable(true) policy
 	}
 
diff --git a/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/ecore/es2as/Ecore2AS.java b/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/ecore/es2as/Ecore2AS.java
index e459c58..289a4d1 100644
--- a/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/ecore/es2as/Ecore2AS.java
+++ b/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/ecore/es2as/Ecore2AS.java
@@ -348,6 +348,9 @@
 		Model pivotModel2 = pivotModel;
 		if (pivotModel2 == null) {
 			loadImports(ecoreResource);
+			if ((ecoreURI != null) && ecoreURI.toString().contains("QVTtemplate")) {
+				getClass();
+			}
 			pivotModel2 = pivotModel = importObjects(ClassUtil.nonNullEMF(ecoreResource.getContents()), createPivotURI());
 			installImports();
 		}
@@ -914,6 +917,9 @@
 	 * Define the loadableURI to be used to form the AS URI that is then used as part of the serialized XMI.
 	 */
 	public void setEcoreURI(URI ecoreURI) {
+		if ((ecoreURI != null) && ecoreURI.toString().contains("QVTtemplate")) {
+			getClass();
+		}
 		this.ecoreURI = ecoreURI;
 	}
 
diff --git a/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/manager/PivotMetamodelManager.java b/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/manager/PivotMetamodelManager.java
index f023ae6..0f9f59e 100644
--- a/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/manager/PivotMetamodelManager.java
+++ b/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/manager/PivotMetamodelManager.java
@@ -119,6 +119,8 @@
 import org.eclipse.ocl.pivot.model.OCLmetamodel;
 import org.eclipse.ocl.pivot.model.OCLstdlib;
 import org.eclipse.ocl.pivot.resource.ASResource;
+import org.eclipse.ocl.pivot.resource.ProjectManager.IPackageDescriptor;
+import org.eclipse.ocl.pivot.resource.ProjectManager.IResourceDescriptor;
 import org.eclipse.ocl.pivot.util.PivotPlugin;
 import org.eclipse.ocl.pivot.utilities.ClassUtil;
 import org.eclipse.ocl.pivot.utilities.FeatureFilter;
@@ -2030,6 +2032,9 @@
 
 	@Override
 	public @Nullable Element loadResource(@NonNull URI uri, String zzalias, @Nullable ResourceSet resourceSet) throws ParserException {
+		if (uri.toString().contains("Pivot")) {
+			getClass();
+		}
 		// FIXME alias not used
 		URI resourceURI = uri.trimFragment();
 		if (PivotUtilInternal.isASURI(resourceURI)) {
@@ -2046,6 +2051,18 @@
 			}
 			return asElement;
 		}
+		URI normalizedURI = environmentFactory.getResourceSet().getURIConverter().normalize(resourceURI);
+		URI nsURI = null;
+		IResourceDescriptor resourceDescriptor = environmentFactory.getProjectManager().getResourceDescriptor(resourceURI);
+		if  (resourceDescriptor != null) {
+			for (IPackageDescriptor packageDescriptor : resourceDescriptor.getPackageDescriptors()) {
+				nsURI = packageDescriptor.getNsURI();
+			//	resourceURI = nsURI;
+				break;
+			}
+		}
+		IPackageDescriptor packageDescriptor1 = environmentFactory.getProjectManager().getPackageDescriptor(resourceURI);
+		IPackageDescriptor packageDescriptor2 = environmentFactory.getProjectManager().getPackageDescriptor(normalizedURI);
 		// if (EPackage.Registry.INSTANCE.containsKey(resourceOrNsURI))
 		// return EPackage.Registry.INSTANCE.getEPackage(resourceOrNsURI);
 		ResourceSet externalResourceSet = resourceSet != null ? resourceSet : environmentFactory.getResourceSet();
diff --git a/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/resource/StandaloneProjectMap.java b/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/resource/StandaloneProjectMap.java
index 7580a94..35ebe11 100644
--- a/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/resource/StandaloneProjectMap.java
+++ b/plugins/org.eclipse.ocl.pivot/src/org/eclipse/ocl/pivot/internal/resource/StandaloneProjectMap.java
@@ -1257,9 +1257,19 @@
 			return eObject;
 		}
 
+		@Override
+		public EList<Diagnostic> getErrors() {
+			return eResource != null ? eResource.getErrors() : super.getErrors();
+		}
+
 		public @NonNull Resource getResource() {
 			return eResource != null ? eResource : this;
 		}
+
+		@Override
+		public EList<Diagnostic> getWarnings() {
+			return eResource != null ? eResource.getWarnings() : super.getWarnings();
+		}
 	}
 
 	public static class MultiplePackageResourceLoadStatus extends AbstractResourceLoadStatus