public Property readProperty(String xml) throws Exception {
   try {
     return readProperty(new StringReader(xml));
   } catch (IOException e) {
     IllegalStateException ex = new IllegalStateException(e);
     ex.initCause(e);
     throw ex;
   }
 }
 public Requirement readRequirement(String xml) throws Exception {
   try {
     return readRequirement(new StringReader(xml));
   } catch (IOException e) {
     IllegalStateException ex = new IllegalStateException(e);
     ex.initCause(e);
     throw ex;
   }
 }
 public String writeProperty(Property property) {
   try {
     StringWriter sw = new StringWriter();
     writeProperty(property, sw);
     return sw.toString();
   } catch (IOException e) {
     IllegalStateException ex = new IllegalStateException(e);
     ex.initCause(e);
     throw ex;
   }
 }
 public String writeRequirement(Requirement requirement) {
   try {
     StringWriter sw = new StringWriter();
     writeRequirement(requirement, sw);
     return sw.toString();
   } catch (IOException e) {
     IllegalStateException ex = new IllegalStateException(e);
     ex.initCause(e);
     throw ex;
   }
 }
 public String writeResource(Resource resource) {
   try {
     StringWriter sw = new StringWriter();
     writeResource(resource, sw);
     return sw.toString();
   } catch (IOException e) {
     IllegalStateException ex = new IllegalStateException(e);
     ex.initCause(e);
     throw ex;
   }
 }
 public String writeRepository(Repository repository) {
   try {
     StringWriter sw = new StringWriter();
     writeRepository(repository, sw);
     return sw.toString();
   } catch (IOException e) {
     IllegalStateException ex = new IllegalStateException(e);
     ex.initCause(e);
     throw ex;
   }
 }