docs: static VaultConfig readVaultElement_3_0(XMLExtendedStreamReader reader, Namespace expectedNs) throws XMLStreamException {
          final VaultConfig config = new VaultConfig();
  
          final int count = reader.getAttributeCount();
          for (int i = 0; i < count; i++) {
              final String value = reader.getAttributeValue(i);
              String name = reader.getAttributeLocalName(i);
              if (name.equals(CODE)){
                  config.code = value;
              } else if (name.equals(MODULE)){
                  config.module = value;
              } else {
                  unexpectedVaultAttribute(reader.getAttributeLocalName(i), reader);
              }
          }
          if (config.code == null && config.module != null){
              throw new XMLStreamException("Attribute 'module' was specified without an attribute"
                      + " 'code' for element '" + VAULT + "' at " + reader.getLocation());
          }
          readVaultOptions(reader, config);
          return config;
      }