docs: public void write(XMLStreamWriter writer, String xmlElementName, AttributeDefinition<?>... defs) throws XMLStreamException {
        boolean skip = true;
        for (AttributeDefinition def : defs) {
           skip = skip && !attribute(def).isModified();
        }
        if (!skip) {
           writer.writeStartElement(xmlElementName);
           for (AttributeDefinition def : defs) {
              Attribute attr = attribute(def);
              attr.write(writer, attr.getAttributeDefinition().xmlName());
           }
           writer.writeEndElement();
        }
     }