EntidadesNumericas

De Wiki REDDES

Tabla de contenidos

Entidades Numéricas

Introdução

Esse texto relata alguns experimentos realizados com entidades numéricas em hexadecimal, considerando as tabelas de representação de caracteres Unicode disponíveis em http://www.unicode.org/charts/ e problemas enfrentados em como tratar caracteres Unicode quando a origem dos dados não são representados nesse charset.

Problema

Ter um conjunto de documentos que deveriam ser representados em Unicode, porém estão representados com entidades numéricas em decimal ou utilizando recurso de font-family em textos com ISO-8859-1.

Relato da Experiência

Algumas premissas foram consideradas para o exercício do experimento:

  1. Todos os fragmentos de texto que contêm caracteres em entidades numéricas em decimal ou utilizando recurso de font-family, foram convertidos para entidade numérica hexadecimal;
  2. O encoding ISO-8859-1 foi mantido para o documento;
  3. Uso de base de dados ISIS para armazenamento dos textos;
  4. O browser do cliente tem instalado a fonte adequada para visualização dos caracteres.

Considerando as premissas citadas, observou-se que o seguinte processo poderia ser utilizado para armazenamento, geração de índice de recuperação e recuperação propriamente dita:

  1. Armazenar caracteres UNICODE com representação numérica hexadecimal
  2. Ajustar tabelas de caracteres do ISIS para reconhecer palavras contendo &#; permitindo a extração dessas palavras no índice
  3. Ao mostrar o fragmento de texto utilizando entidades numéricas em hexadecimal, o browser automaticamente as reconhece, transformando-as na respectiva grafia esperada. Isso vale para o texto XHTML da página e todos os seus componentes (textarea, listbox, selectbox, etc.).
  4. Observou-se que o uso de diacríticos são permitidos com as entidades, combinando-as em pares.
  5. Observou-se que a ordem da grafia oriental é respeitada automaticamente, utilizando as entidades.
  6. O browser do índice por palavras pode conter as entidades e serão visualizadas corretamente no browser. Ao se escolher uma palavra para realizar a busca, o ISIS receberá internamente as palavras em entidades e estando-as invertidas, poderá realizar a recuperação.
  7. Para interface de recuperação (busca livre), utilizar teclado virtual por idioma (o tratamento interno do teclado virtual seria em entidade numérica hexadecimal)

Limitações

  1. Há algumas limitações do uso de entidades em elementos HTML, por exemplo, no atributo "alt" de imagens.
  2. Há limitação no tamanho da chave do ISIS (16/60), considerando que cada caracter representado por uma entidade terá no mínimo 7 caracteres. (ࡧ)
  3. Volume de dados armazenados pelo mesmo motivo do item anterior

Conclusões

Pode ser uma alternativa em casos que não há suporte 100% UNICODE na origem dos dados e no seu armazenamento.

Herramientas personales