• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Rui Carlos

Encoding recomendado

13 mensagens neste tópico

Alguém me sabe dizer se existe algum encoding recomendado para usar no XML?

Por norma, opto pelo UTF8, pois tenho a ideia que é o melhor suportado nos vários SOs, e o que se adapta às várias línguas.

Mas existe alguma recomendação oficial (por exemplo, da W3C) para utilizar UTF8 (ou outro encoding)?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu uso também UTF8 com UTF8 até chinês consegues codificar :) também podes usar ISO mas por norma todos os XML que vejo são UTF8 até os gerados por API como o Java.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Estive a ler já não sei onde sobre a forma como o unicode funciona e parece que o unicode cobre praticamente todas as linguas faladas actualmente e mais algumas linguas que caíram em desuso.

Posto isto, é necessária uma tabela de conversão entre valores numéricos que são os que são armazenados num ficheiro e o respectivo simbolo do unicode. É aqui que entra o UTF-8. Agora não me lembro ao certo, mas lembro-me que cobre todos os caracteres extra das linguas que todas que usam os alfabetos latino ou cirílico ( é assim que se chama?? ) e ainda as linguas asiáticas, pelo menos japones, coreano e mandarim tenho a certeza.

Pode não interessar muito para um dataset novo, mas tambem tem a vantagem de o ascii ser compativel com ele ( UTF-8 ).

Moral da historia, se usares unicode estás seguro, quanto à tabela a escolher o UTF-8 terá tambem tudo o que precisares, e mesmo que no futuro apareçam outros caracteres como aconteceu com o do euro, podes sempre actualizar isso de UTF-8 para outro mapeamento unicode que aparecer sem quaisquer erros pois o encoding continua a ser unicode.

Quanto às entidades xml, até o ascii as suporta por isso nem aí há perigo de quebra da estrutura do xml.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mas há alguma recomendação "oficial" para a utilização do UTF8?

A minha questão já não é qual o encoding devo usar. Eu usei UTF8 devido ao amplo suporte de caracteres que possui. Mas gostava de ter um argumento mais forte para justificar esta opção. A existência de recomendações ajudava bastante.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O facto de o UTF-8 ser o formato por omissão do XML de acordo com a especificação do W3C, faz com que isso seja uma recomendação para usar UTF-8, a não ser que tenhas que fazer algo que ele não consegue fazer.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Tens a vantagem de ser um encoding cujo alvo é o unicode que neste momento é o projecto mais arrojado no que toca a caracteres.

Não há grandes recomendações oficiais uma vez que ninguem manda no que cada um faz com o seu computador.

Mas penso que é consensual que o projecto unicode se está a afirmar como o caminho a seguir.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Realmente também não consegui encontrar uma recomendação para a escrita de ficheiros XML, existe sim uma obrigação para que os processadores de XML suportem UTF-8 e UTF-16, UTF-32 não é obrigatório. Quanto ao enconding que o autor usa, não encontrei informação.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

A codificação a usares no XML depende do conteúdo que o mesmo possui.

Por exemplo, se o XML tiver informação na língua portuguesa, deves usar uma codificação ISO latina: ISO-8859-1, se usares apenas caracteres ASCII da parte da tabela comum, basta o UTF-8.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O meu problema é que eu não sabia à partida qual ia ser a língua/encoding do ficheiros que ia ter que transformar com a stylesheet que estava a fazer. Os exemplos que tinha estava em português/latin1, mas podia ter que transformar ficheiros noutros encodings.

Como o encoding não estava disponível no ficheiro XML (o que me pareceu uma falha na especificação do mesmo), tinha que escolher um, e optei pelo utf8.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Nesse caso talvez o UTF-16 fosse o mais indicado, dado que suporta mais do que o UTF-8.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Nesse caso talvez o UTF-16 fosse o mais indicado, dado que suporta mais do que o UTF-8.

Suportam o mesmo, ambos combrem por completo todos os codepoints do unicode, a diferença é a forma como é feito o mapeamento.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Por exemplo, se o XML tiver informação na língua portuguesa, deves usar uma codificação ISO latina: ISO-8859-1, se usares apenas caracteres ASCII da parte da tabela comum, basta o UTF-8.

ISO-8859-1 está desactualizado, não suporta o Euro... Para isso utilizaria ISO-8859-15, que suporta o Euro. E ainda assim eu preferia utilizar Unicode, mesmo que documento fosse em Português, pois poderia por exemplo introduzir mais simbolos matemáticos.

Nesse caso talvez o UTF-16 fosse o mais indicado, dado que suporta mais do que o UTF-8.

No XML, se omitires o enconding, então por omissão ele é UTF-8, por isso esse seria mais adequado.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora