+ BEGIN_XMLOBJECTVALIDATOR(SAML_DLLLOCAL,RequestAbstractType);
+ XMLOBJECTVALIDATOR_REQUIRE(RequestAbstractType,ID);
+ XMLOBJECTVALIDATOR_REQUIRE(RequestAbstractType,Version);
+ XMLOBJECTVALIDATOR_REQUIRE(RequestAbstractType,IssueInstant);
+ if (!XMLString::equals(samlconstants::SAML20_VERSION, ptr->getVersion()))
+ throw ValidationException("Request has wrong SAML Version.");
+ END_XMLOBJECTVALIDATOR;
+
+ BEGIN_XMLOBJECTVALIDATOR_SUB(SAML_DLLLOCAL,SubjectQuery,RequestAbstractType);
+ RequestAbstractTypeSchemaValidator::validate(xmlObject);
+ XMLOBJECTVALIDATOR_REQUIRE(SubjectQuery,Subject);
+ END_XMLOBJECTVALIDATOR;
+
+ BEGIN_XMLOBJECTVALIDATOR(SAML_DLLLOCAL,StatusResponseType);
+ XMLOBJECTVALIDATOR_REQUIRE(StatusResponseType,ID);
+ XMLOBJECTVALIDATOR_REQUIRE(StatusResponseType,Version);
+ XMLOBJECTVALIDATOR_REQUIRE(StatusResponseType,IssueInstant);
+ XMLOBJECTVALIDATOR_REQUIRE(StatusResponseType,Status);
+ if (!XMLString::equals(samlconstants::SAML20_VERSION, ptr->getVersion()))
+ throw ValidationException("StatusResponse has wrong SAML Version.");
+ END_XMLOBJECTVALIDATOR;
+