diff --git a/composer.json b/composer.json index 778e2e8..1b34500 100644 --- a/composer.json +++ b/composer.json @@ -13,11 +13,11 @@ "php": "^8.2", "ext-dom": "*", - "simplesamlphp/assert": "~1.9.1", - "simplesamlphp/xml-common": "~2.3.1" + "simplesamlphp/assert": "~1.9", + "simplesamlphp/xml-common": "~2.4" }, "require-dev": { - "simplesamlphp/simplesamlphp-test-framework": "~1.10.3" + "simplesamlphp/simplesamlphp-test-framework": "~1.10" }, "autoload": { "psr-4": { diff --git a/src/CAS/Utils/XPath.php b/src/CAS/Utils/XPath.php index 7ef91cc..9e9c560 100644 --- a/src/CAS/Utils/XPath.php +++ b/src/CAS/Utils/XPath.php @@ -19,13 +19,15 @@ class XPath extends \SimpleSAML\XPath\XPath * Get a DOMXPath object that can be used to search for CAS elements. * * @param \DOMNode $node The document to associate to the DOMXPath object. + * @param bool $autoregister Whether to auto-register all namespaces used in the document * * @return \DOMXPath A DOMXPath object ready to use in the given document, with several * cas-related namespaces already registered. */ - public static function getXPath(DOMNode $node): DOMXPath + public static function getXPath(DOMNode $node, bool $autoregister = false): DOMXPath { - $xp = parent::getXPath($node); + $xp = parent::getXPath($node, $autoregister); + $xp->registerNamespace('cas', C::NS_CAS); return $xp;