public static Attribute unmarshalFrom(GeometryElement element) throws ConversionFailedException {
    AttributeImpl attribute = null;
    GML311ToJTSGeometryConverter converter = new GML311ToJTSGeometryConverter();
    WKTWriter wktWriter = new WKTWriter();

    for (Value xmlValue : element.getValue()) {
      JAXBElement<AbstractGeometryType> xmlGeometry = xmlValue.getGeometry();
      Geometry geometry =
          converter.createGeometry(new DefaultRootObjectLocator(xmlValue), xmlGeometry.getValue());
      String wkt = wktWriter.write(geometry);

      if (attribute == null) {
        attribute = new AttributeImpl(element.getName(), wkt);
      } else {
        attribute.addValue(wkt);
      }
    }
    return attribute;
  }