diff --git a/lib/SAML2/Message.php b/lib/SAML2/Message.php
index 09d9a7d4e38f1d34ba1a5e9871a02ffdf2bc5064..735b9ac65acbd8226b84875767cd3f697fff0932 100644
--- a/lib/SAML2/Message.php
+++ b/lib/SAML2/Message.php
@@ -461,6 +461,8 @@ abstract class SAML2_Message implements SAML2_SignedElement {
 		}
 
 		switch ($xml->localName) {
+		case 'AttributeQuery':
+			return new SAML2_AttributeQuery($xml);
 		case 'AuthnRequest':
 			return new SAML2_AuthnRequest($xml);
 		case 'LogoutResponse':