Não to sabendo modelar tabela

Boa tarde a todos,

Tenho a seguinte tabela anexa:

SituacaoTributaria
-Id
-Codigo
-Descricao
-Tabela  
Nota: A=ORIGEM_MERCADORIAS, B=ICMS, I=IPI, C=COFINS

Qual a melhor forma de modelar essa tabela no hibernate?

Nota: Eu tinha pensado +/- assim:

public Class SituacaoTributaria{
  private Integer id;
  private Tributacao tributacao;

  //gets, sets, equals, hashcode, toString ....
}

public interface Tributacao{
  Integer getCodigo();
  void setCodigo(Integer codigo);
  String getDescricao();
  void setDescricao(String descricao);
}

public class TributacaoPorIcms implements Tributacao{
 //...
}

public class TributacaoPorIpi implements Tributacao{
 //...
}

public class TributacaoPorCofins implements Tributacao{
 //...
}

Mais e a origem da mercadoria como ficaria? e como mapear essa essas classes?

Obrigado.