diff --git a/Markup/Sniffs/Usage/NamespaceOverwrittenSniff.php b/Markup/Sniffs/Usage/NamespaceOverwrittenSniff.php
new file mode 100644
index 0000000..8152a79
--- /dev/null
+++ b/Markup/Sniffs/Usage/NamespaceOverwrittenSniff.php
@@ -0,0 +1,52 @@
+ 'Knp\\DoctrineBehaviors\\Model\\Timestampable\\Timestampable',
+ 'require_use' => 'Phoenix\\Common\\Database\\Doctrine\\Entity\\Timestampable',
+ ],
+ ];
+
+ /**
+ * @return mixed[]
+ */
+ public function register()
+ {
+ return [
+ T_OPEN_TAG,
+ ];
+ }
+
+ /**
+ * @param \PHP_CodeSniffer\Files\File $phpcsFile
+ * @param int $openTagPointer
+ */
+ public function process(File $phpcsFile, $openTagPointer)
+ {
+ $useStatements = UseStatementHelper::getUseStatements($phpcsFile, $openTagPointer);
+
+ foreach ($useStatements as $useStatement) {
+ foreach (self::BLACKLIST_NAMESPACES as $namespace) {
+ if (stripos($useStatement->getFullyQualifiedTypeName(), $namespace['namespace']) !== false) {
+ $phpcsFile->addError(
+ sprintf(
+ "Class %s is overwritten, use %s instead",
+ $useStatement->getFullyQualifiedTypeName(),
+ $namespace['require_use']
+ ),
+ $useStatement->getPointer(),
+ 'BlacklistedNamespace'
+ );
+ }
+ }
+ }
+ }
+}
diff --git a/Markup/ruleset.xml b/Markup/ruleset.xml
index e58a50b..79a92dc 100644
--- a/Markup/ruleset.xml
+++ b/Markup/ruleset.xml
@@ -38,6 +38,9 @@
+
+ error
+