diff --git a/daffodil-lib/src/main/scala/org/apache/daffodil/lib/xml/DaffodilXMLLoader.scala b/daffodil-lib/src/main/scala/org/apache/daffodil/lib/xml/DaffodilXMLLoader.scala index c184866cd9..fff37ef448 100644 --- a/daffodil-lib/src/main/scala/org/apache/daffodil/lib/xml/DaffodilXMLLoader.scala +++ b/daffodil-lib/src/main/scala/org/apache/daffodil/lib/xml/DaffodilXMLLoader.scala @@ -216,12 +216,40 @@ class DFDLCatalogResolver private () // because the nsURI will resolve to the including schema file. // This will cause the including schema to be repeatedly parsed resulting in a stack overflow. + lazy val systemIdUri = if (systemId != null) { + new URI(systemId) + } else { + null + } + /** + * Xerces has a bug where it aboslutizes systemId. i.e the user supplies + * {{{ + *