/**
  * Build the policy request object.
  *
  * @param string $subjectId
  * @param string $idp
  * @param string $sp
  * @param array $responseAttributes
  * @return Pdp_PolicyRequest
  */
 private function buildPolicyRequest($subjectId, $idp, $sp, array $responseAttributes)
 {
     $policy_request = new Pdp_PolicyRequest();
     $policy_request->addResourceAttribute('SPentityID', $sp);
     $policy_request->addResourceAttribute('IDPentityID', $idp);
     $policy_request->addAccessSubject('urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified', $subjectId);
     foreach ($responseAttributes as $id => $values) {
         foreach ($values as $value) {
             $policy_request->addAccessSubject($id, $value);
         }
     }
     return $policy_request;
 }