code: protected String getMappingString() {
          StringBuilder sb = new StringBuilder();
          final int schemaSize = uriMap.size();
          final int domainSize = patternMap.size();
          int s = 0, d = 0;
          for (String schema: uriMap.keySet()) {
              if (s > 0) sb.append(", ");
              sb.append(schema);
              s++;
              if (s > 2 && schemaSize > 3) {
                  sb.append(", ");
                  sb.append(schemaSize - s);
                  sb.append(" more");
                  break;
              }
          }
          if (schemaSize > 0 && domainSize > 0) sb.append("; ");
          for (Pattern domain: patternMap.keySet()) {
              if (d > 0) sb.append(", ");
              sb.append(domain.pattern());
              d++;
              if (d > 2 && domainSize > 3) {
                  sb.append(", ");
                  sb.append(domainSize - s);
                  sb.append(" more");
                  break;
              }
          }
          return sb.toString();
      }
docs: string representation for debugging purposes