code: protected Parameter convert(Parameter orig) {
          if (orig.getNamespace() == null) {
              return orig;
          }
          // determine domain of parameter namespace
          NamespaceDomain domain = nsDomains.get(orig.getNamespace().getPrefix());
          if (domain == null) {
              return orig;
          }
  
          // iterate appropriate collection to find equiv
          List<Namespace> coll;
          switch (domain) {
          case BiologicalProcess:
              coll = bpNamespaces;
              break;
          case Chemical:
              coll = chemNamespaces;
              break;
          case Gene:
              coll = geneNamespaces;
              break;
          default:
              throw new UnsupportedOperationException("Unknown domain: " + domain);
          }
  
          try {
              SkinnyUUID uuid = equivalencer.getUUID(
                      getNamespace(orig.getNamespace()), orig.getValue());
              if (uuid == null) {
                  // no equivalents anywhere
                  return orig;
              }
              // find first equivalent in list of desired
              for (Namespace ns : coll) {
                  String v = equivalencer.equivalence(uuid, ns);
                  if (v != null) {
                      return removeNamespacePrefix ? new Parameter(null, v)
                              : new Parameter(ns, v);
                  }
              }
          } catch (EquivalencerException e) {
              // TODO exception
              return null;
          }
  
          // if no equiv, use param as-is
          return orig;
      }
docs: Convert a parameter to the preferred namespaces.
  
  @param orig
  @return the converted {@link Parameter} or the original parameter if no
  conversion was possible