code: @SuppressWarnings("unchecked") // Checked with instanceof
      public void set(String name, Object obj) throws IOException {
          if (name.equalsIgnoreCase(ID)) {
              if (obj instanceof CertificatePolicyId)
                  policyIdentifier = (CertificatePolicyId)obj;
              else
                  throw new IOException("Attribute value must be instance " +
                      "of CertificatePolicyId.");
          } else if (name.equalsIgnoreCase(QUALIFIERS)) {
              if (policyIdentifier == null) {
                  throw new IOException("Attribute must have a " +
                      "CertificatePolicyIdentifier value before " +
                      "PolicyQualifierInfo can be set.");
              }
              if (obj instanceof Set) {
                  Iterator<?> i = ((Set<?>)obj).iterator();
                  while (i.hasNext()) {
                      Object obj1 = i.next();
                      if (!(obj1 instanceof PolicyQualifierInfo)) {
                          throw new IOException("Attribute value must be a" +
                                      "Set of PolicyQualifierInfo objects.");
                      }
                  }
                  policyQualifiers = (Set<PolicyQualifierInfo>) obj;
              } else {
                  throw new IOException("Attribute value must be of type Set.");
              }
          } else {
              throw new IOException("Attribute name [" + name +
                  "] not recognized by PolicyInformation");
          }
      }
docs: Set the attribute value.