code: public void startExtension(Map<String, String> attributes) throws IOException {
          startChangesIfNecessary();
          ResponseWriter writer = getWrapped();
          writer.startElement("extension", null);
          if (attributes != null && !attributes.isEmpty()) {
              for (Map.Entry<String, String> entry : attributes.entrySet()) {
                  writer.writeAttribute(entry.getKey(), entry.getValue(), null);
              }
          }
      }
docs: <p class="changed_added_2_0">Write the start of an extension operation.</p>
  
  @param attributes String name/value pairs for extension element attributes
  @throws IOException if an input/output error occurs
  @since 2.0