Melhor algoritmo de compressão para XML?

Eu mal conheço nada sobre compressão, então tenha paciência comigo (essa é provavelmente uma pergunta estúpida e dolorosamente óbvia).

Então digamos que eu tenha um arquivo XML com algumas tags.

<verylongtagnumberone>
  <verylongtagnumbertwo>
    text
  </verylongtagnumbertwo>
</verylongtagnumberone>

Agora vamos dizer que eu tenho um monte dessas tags muito longas com muitos atributos em meus vários arquivos XML. Eu preciso comprimi-los para o menor tamanho possível. A melhor maneira seria usar um algoritmo específico de XML que atribui pseudônimos de tags individuais como vlt1 ou vlt2. No entanto, isso não seria tão "aberto" como estou tentando, e eu quero usar um algoritmo comum como DEFLATE ou LZ. Também ajuda se o arquivo for um arquivo .zip.

Desde que eu estou lidando com texto simples (sem arquivos binários como imagens), eu gostaria de um algoritmo que se adapte a texto simples. Qual deles produz o menor tamanho de arquivo (os algoritmos sem perdas são preferidos)?

A propósito, o cenário é este: estou criando um padrão para documentos, como ODF ou MS Office XML, que contêm arquivos XML, compactados em um .zip.

EDIT: A coisa 'criptografia' foi um erro de digitação; Deve ser ben 'compressão'.

questionAnswers(8)

yourAnswerToTheQuestion