/**
  * set the category of this property
  *
  * @param category The value to set
  * @throws BadFieldValueException if category value not 'internal' or 'external'
  */
 public void setCategoryValue(String category) throws BadFieldValueException {
   if (category.equals("external") || category.equals("internal")) {
     content.addProperty(new TextType(metadata, PDFAPROPPREFIX, CATEGORY, category));
   } else {
     throw new BadFieldValueException(
         "Unexpected value '"
             + category
             + "' for property category (only values 'internal' or 'external' are allowed)");
   }
 }
 /**
  * Get a property from its qualified name as a TextType object
  *
  * @param qualifiedName the Name of property wanted
  * @return the property wanted
  */
 private TextType getProperty(String qualifiedName) {
   Iterator<AbstractField> it = content.getAllProperties().iterator();
   AbstractField tmp;
   while (it.hasNext()) {
     tmp = it.next();
     if (tmp.getQualifiedName().equals(qualifiedName)) {
       return (TextType) tmp;
     }
   }
   return null;
 }
 /**
  * set the value type of this property
  *
  * @param type The value to set
  */
 public void setValueTypeValue(String type) {
   content.addProperty(new TextType(metadata, PDFAPROPPREFIX, VALUETYPE, type));
 }
 /**
  * set the name of this property
  *
  * @param name The value to set
  */
 public void setNameValue(String name) {
   content.addProperty(new TextType(metadata, PDFAPROPPREFIX, NAME, name));
 }
 /**
  * Build a new property description
  *
  * @param metadata The metadata to attach this schema
  */
 public PDFAPropertyDescription(XMPMetadata metadata) {
   this.metadata = metadata;
   content = new ComplexPropertyContainer(metadata, "rdf", "li");
   content.setAttribute(new Attribute(null, "rdf", "parseType", "Resource"));
 }
 /**
  * Get Dom Element for xml/rdf serialization
  *
  * @return the DOM Element
  */
 public Element getElement() {
   return content.getElement();
 }
 /**
  * set the description of this property
  *
  * @param desc The value to set
  */
 public void setDescriptionValue(String desc) {
   content.addProperty(new TextType(metadata, PDFAPROPPREFIX, DESCRIPTION, desc));
 }