code: def _get_namespace_filter(
              taxon_filter: Optional[int]=None,
              category_filter: Optional[str]=None) -> Union[None, str]:
          
          namespace_filter = None
          taxon_category_default = {
              10090: 'gene',
              9606:  'disease',
              7227:  'gene',
              6239:  'gene',
              7955:  'gene'
          }
          if category_filter is not None and taxon_filter is None:
              raise ValueError("Must provide taxon filter along with category")
          elif category_filter is None and taxon_filter is not None:
              category_filter = taxon_category_default[taxon_filter]
          else:
              return namespace_filter
  
          return OwlSim2Api.TAX_TO_NS[taxon_filter][category_filter.lower()]
docs: Given either a taxon and/or category, return the correct namespace
          :raises ValueError: If category is provided without a taxon