diff --git a/lib/svg-sanitizer/composer.json b/lib/svg-sanitizer/composer.json
index ed475560e3850871e2f2005621e759c1aa4044d8..8253fdcfb665234ac10c971b739c7b68f8b38368 100644
--- a/lib/svg-sanitizer/composer.json
+++ b/lib/svg-sanitizer/composer.json
@@ -8,6 +8,9 @@
             "email": "daryll@enshrined.co.uk"
         }
     ],
+    "scripts": {
+        "test": "phpunit --no-coverage"
+    },
     "autoload": {
         "psr-4": {
             "enshrined\\svgSanitize\\": "src"
@@ -18,13 +21,13 @@
             "enshrined\\svgSanitize\\Tests\\": "tests"
         }
     },
-    "minimum-stability": "stable",
     "require": {
         "ext-dom": "*",
-        "ext-libxml": "*"
+        "ext-libxml": "*",
+        "php": "^7.0 || ^8.0"
     },
     "require-dev": {
-        "phpunit/phpunit": "^6",
+        "phpunit/phpunit": "^6.5 || ^8.5",
         "codeclimate/php-test-reporter": "^0.1.2"
     }
 }
diff --git a/lib/svg-sanitizer/src/Sanitizer.php b/lib/svg-sanitizer/src/Sanitizer.php
index 34f56d7c87a105b35f25bd30fe00437aeea2b46b..58c8111848d4dd4cb1770c2afe54ce814faef490 100644
--- a/lib/svg-sanitizer/src/Sanitizer.php
+++ b/lib/svg-sanitizer/src/Sanitizer.php
@@ -208,8 +208,6 @@ class Sanitizer
             return false;
         }
 
-        $this->removeDoctype();
-
         // Pre-process all identified elements
         $xPath = new XPath($this->xmlDocument);
         $this->elementReferenceResolver = new Resolver($xPath, $this->useNestingLimit);
@@ -219,6 +217,8 @@ class Sanitizer
         // Grab all the elements
         $allElements = $this->xmlDocument->getElementsByTagName("*");
 
+        // remove doctype after node elements have been analyzed
+        $this->removeDoctype();
         // Start the cleaning proccess
         $this->startClean($allElements, $elementsToRemove);
 
diff --git a/lib/svg-sanitizer/src/svg-scanner.php b/lib/svg-sanitizer/src/svg-scanner.php
index 0da242f8c7c2f0b88835b81ec13643741a6ff8ef..e5007713c660b82656168036069dad800e1259d6 100644
--- a/lib/svg-sanitizer/src/svg-scanner.php
+++ b/lib/svg-sanitizer/src/svg-scanner.php
@@ -12,9 +12,14 @@ require_once( __DIR__ . '/data/AttributeInterface.php' );
 require_once( __DIR__ . '/data/TagInterface.php' );
 require_once( __DIR__ . '/data/AllowedAttributes.php' );
 require_once( __DIR__ . '/data/AllowedTags.php' );
+require_once( __DIR__ . '/data/XPath.php' );
+require_once( __DIR__ . '/ElementReference/Resolver.php' );
+require_once( __DIR__ . '/ElementReference/Subject.php' );
+require_once( __DIR__ . '/ElementReference/Usage.php' );
+require_once( __DIR__ . '/Exceptions/NestingException.php' );
+require_once( __DIR__ . '/Helper.php' );
 require_once( __DIR__ . '/Sanitizer.php' );
 
-
 /*
  * Print array as JSON and then
  * exit program with a particular