diff --git a/org.fortiss.tooling.kernel/trunk/schema/constraintVerifier.exsd b/org.fortiss.tooling.kernel/trunk/schema/constraintVerifier.exsd
index b927dcd921c7b9d9571b0f5af0396a40eb83a5ac..2d10f8ae5f0a71fc6ac2c3dae89ff8669cd0b127 100644
--- a/org.fortiss.tooling.kernel/trunk/schema/constraintVerifier.exsd
+++ b/org.fortiss.tooling.kernel/trunk/schema/constraintVerifier.exsd
@@ -1,12 +1,12 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <!-- Schema file written by PDE -->
-<schema targetNamespace="org.fortiss.af3.verification" xmlns="http://www.w3.org/2001/XMLSchema">
+<schema targetNamespace="org.fortiss.tooling.kernel" xmlns="http://www.w3.org/2001/XMLSchema">
 <annotation>
       <appinfo>
          <meta.schema plugin="org.fortiss.tooling.kernel" id="constraintVerifier" name="Constraint Verifier"/>
       </appinfo>
       <documentation>
-         [Enter description of this extension point.]
+         DEPRECATED use IConstraintVerificationService.registerConstraintVerifier() instead.
       </documentation>
    </annotation>
 
diff --git a/org.fortiss.tooling.kernel/trunk/schema/eclipseResourcePostLoadProvider.exsd b/org.fortiss.tooling.kernel/trunk/schema/eclipseResourcePostLoadProvider.exsd
index 387cb579a2907909f2445c13233635d6fb924c87..1a0bc0fd3c00e4d6d1e34db3039b4b644cbc621a 100644
--- a/org.fortiss.tooling.kernel/trunk/schema/eclipseResourcePostLoadProvider.exsd
+++ b/org.fortiss.tooling.kernel/trunk/schema/eclipseResourcePostLoadProvider.exsd
@@ -6,7 +6,7 @@
          <meta.schema plugin="org.fortiss.tooling.kernel" id="eclipseResourcePostLoadProvider" name="Eclipse Resource Post Load Provider"/>
       </appinfo>
       <documentation>
-         Registers a location provider for Eclipse resource based storage.
+         DEPRECATED use IPersistencyService instead.
       </documentation>
    </annotation>
 
diff --git a/org.fortiss.tooling.kernel/trunk/schema/eclipseResourceStorageLocationProvider.exsd b/org.fortiss.tooling.kernel/trunk/schema/eclipseResourceStorageLocationProvider.exsd
index 0eb2cb9fb6c12213bab38797493c42b9df884b9d..ef3faf5667471191b3283549c5ec8aae28763244 100644
--- a/org.fortiss.tooling.kernel/trunk/schema/eclipseResourceStorageLocationProvider.exsd
+++ b/org.fortiss.tooling.kernel/trunk/schema/eclipseResourceStorageLocationProvider.exsd
@@ -6,7 +6,7 @@
          <meta.schema plugin="org.fortiss.tooling.kernel" id="eclipseResourceStorageLocationProvider" name="Eclipse Resource Storage Location Provider"/>
       </appinfo>
       <documentation>
-         Registers a location provider for Eclipse resource based storage.
+         DEPRECATED use IPersistencyService instead.
       </documentation>
    </annotation>
 
diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/extension/IEclipseResourcePostLoadProvider.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/extension/IEclipseResourcePostLoadProvider.java
index accf20eed601f2b8d387be1426fd2163563b6969..40c0713160e71f6c6c514c4d3a796ee76fe710f7 100644
--- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/extension/IEclipseResourcePostLoadProvider.java
+++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/extension/IEclipseResourcePostLoadProvider.java
@@ -29,6 +29,8 @@ import org.fortiss.tooling.kernel.extension.data.ITopLevelElement;
  * @version $Rev$
  * @ConQAT.Rating GREEN Hash: 9D7025FE2AE6D9B3CAE8A20352705445
  */
+@Deprecated
+// FIXME: move to IPersistencyService
 public interface IEclipseResourcePostLoadProvider {
 
 	/**
diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/ConstraintVerificationService.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/ConstraintVerificationService.java
index a9f84a4386c51ba4b3e94e85f97880bdb5afba3b..0c8d259f8f8bcf3c758f70bc0a0fdae0f0cca834 100644
--- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/ConstraintVerificationService.java
+++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/ConstraintVerificationService.java
@@ -55,6 +55,14 @@ public final class ConstraintVerificationService extends
 		KernelIntrospectionSystemService.getInstance().registerService(this);
 	}
 
+	/** {@inheritDoc} */
+	@SuppressWarnings("unchecked")
+	@Override
+	public <T extends IConstraint> void registerConstraintVerifier(IConstraintVerifier<T> verifier,
+			Class<T> constraintElementClass) {
+		addHandler(constraintElementClass, (IConstraintVerifier<IConstraint>)verifier);
+	}
+
 	/** {@inheritDoc} */
 	@Override
 	public String getIntrospectionDescription() {
diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/service/IConstraintVerificationService.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/service/IConstraintVerificationService.java
index bf43a788a3607ffe293122e394ad22c9a535c9f8..eec848ec2247ed322b81b367cc1b93f1532ccc63 100644
--- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/service/IConstraintVerificationService.java
+++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/service/IConstraintVerificationService.java
@@ -3,6 +3,7 @@ package org.fortiss.tooling.kernel.service;
 import java.util.List;
 import java.util.function.Consumer;
 
+import org.fortiss.tooling.kernel.extension.IConstraintVerifier;
 import org.fortiss.tooling.kernel.internal.ConstraintVerificationService;
 import org.fortiss.tooling.kernel.model.constraints.IConstrained;
 import org.fortiss.tooling.kernel.model.constraints.IConstraint;
@@ -34,26 +35,30 @@ public interface IConstraintVerificationService {
 		return INSTANCE;
 	}
 
+	/** Registers the given verifier with the service. */
+	<T extends IConstraint> void registerConstraintVerifier(IConstraintVerifier<T> verifier,
+			Class<T> constraintElementClass);
+
 	/**
 	 * @param constraint
 	 *            Verifies <code>constraint</code>. The framework always runs the verification in a
 	 *            command. Should not yield any "useless" change because verification should always
 	 *            update the constraint status and the checksums anyways.
 	 */
-	public void verify(IConstraint constraint);
+	void verify(IConstraint constraint);
 
 	/**
 	 * @param constraint
 	 * @return <code>true</code> if <code>constraint</code> is up to date.
 	 */
-	public boolean isUpToDate(IConstraint constraint);
+	boolean isUpToDate(IConstraint constraint);
 
 	/**
 	 * @param status
 	 * @return A list of possible automatic fixes for the (constraint of) <code>status</code>.
 	 *         A status should be candidate to fixing if it is anything but successful or outdated.
 	 */
-	public List<IFix> fixes(IConstraintVerificationStatus status);
+	List<IFix> fixes(IConstraintVerificationStatus status);
 
 	/** Interface for a "fix". */
 	public interface IFix {
@@ -61,13 +66,13 @@ public interface IConstraintVerificationService {
 		 * Description of the fix. Useful to allow the user distinguish the fix in case there are
 		 * several.
 		 */
-		public String getDescription();
+		String getDescription();
 
 		/**
 		 * @param status
 		 *            Fixes (the constraint of) <code>status</code>.
 		 */
-		public void runFix(IConstraintVerificationStatus status);
+		void runFix(IConstraintVerificationStatus status);
 	}
 
 	/** Utils. We store them to avoid having again thousands of different classes for one topic. */