0 votos
521 visualizações

Estou notando o que parece ser uma diferença binária entre alguns IDs de termos que aparecem em Major Biblical Terms e aqueles usados nos arquivos de renderização do projeto. Os IDs de termos correspondentes parecem visualmente idênticos se você abrir o xml em um editor. Mas estou prototipando um plug-in e meu código notou a diferença. Talvez seja algo como composto vs. não composto, mas eu não conheço hebraico de forma alguma. Estou postando links para duas versões do ID do termo Shem. Um é do Major Biblical Terms. O outro é do TermRenderings.xml em um dos meus projetos. Ambos os IDs parecem iguais, mas um visualizador de arquivo binário mostra que eles são diferentes.
Obrigado por qualquer sugestão.
stevepence

Shem de um arquivo de Renderings
Shem de Major Terms

Tradução automática de English
Paratext por (127 pontos) | 521 visualizações

4 Respostas

0 votos
Melhor resposta

Isso provavelmente é mais detalhe do que você quer ter, mas aqui está minha opinião sobre os problemas de normalização em hebraico. O Unicode criou uma ordem canônica de diacríticos que não era ideal linguisticamente. Como a ordem dos diacríticos entre diacríticos não interativos pode ser arbitrária, eles decidiram não alterar a ordem quando solicitado. Mas há algumas situações em que a ordem é importante para diacríticos interativos em hebraico e essa ordem é perdida pela normalização. Para contornar isso, as pessoas usam o CGJ (U+034F) para permitir uma ordem diferente de diacríticos. Isso deve ser considerado parte da grafia da palavra.

Enquanto tudo isso estava sendo debatido, as fontes muitas vezes não eram projetadas para lidar com a ordem canônica do Unicode. Mas isso foi corrigido há muito tempo e as fontes podem lidar com texto ordenado canonicamente no Unicode sem problemas.

Tudo isso para dizer que não vejo motivo para que os dados não devam ser armazenados em qualquer forma normal Unicode (NFC, NFD, que acredito serem idênticas em hebraico), mas que, se você tiver alguns dados legados (dados Unicode antigos), deve-se ter cuidado na normalização. Em particular, verifique a palavra para Jerusalém (se não me engano, de minha memória nebulosa sobre palavras que contêm problemas de ordem de diacríticos), que deve conter um CGJ (ou examinada cuidadosamente com uma representação visual à sua frente).

Quanto ao exemplo de Lorna, não deve haver dificuldade com aqueles dois diacríticos, pois eles são não interativos (um acima, um abaixo).

Tradução automática de English
por (656 pontos)
0 votos

Para descobrir quais caracteres estão em uma string, você pode usar UniView 14. Cole seu texto na caixa onde diz “text area”, depois clique na seta para baixo logo abaixo da caixa de área de texto e você verá uma lista dos caracteres (forma do caractere, valor Unicode e descrição).

Se sua suspeita estiver correta e a diferença for devida à forma de normalização, você pode querer incluir uma etapa de normalização em seu plug-in.

Tradução automática de English
por (296 pontos)
0 votos

ShemFrompmcdblRendering.txt string de codificação: U+05E9 U+05B5 U+05C1 U+05DD
ShemFromMajorTerms.txt string de codificação: U+05E9 U+05C1 U+05B5 U+05DD

Se olharmos para as propriedades Unicode, acredito que a codificação de ShemFromMajorTerms.txt está incorreta e o documento Major Terms pode precisar de normalização.
Aviso: Sei que o hebraico tem alguns problemas de normalização Unicode e não estou atualizado sobre onde a normalização não deve ser seguida.

Tradução automática de English
por (329 pontos)

stevepence,
Eu suspeito que, à medida que mais organizações escrevem seus próprios plug-ins, outros podem se deparar com seu problema. Isso simplesmente não impactou um usuário do Paratext, mas aparentemente impacta você se você estiver escrevendo plug-ins. Se a lista Major Biblical terms não estiver usando as melhores práticas para codificação em hebraico, talvez você pudesse discutir suas necessidades com anon291708.

Tradução automática de English
0 votos

Obrigado a todos que responderam. A resposta de todos foi extremamente útil para entender essa questão. Estou muito grato!

Eu não presumiria comentar qual arquivo tem codificações “corretas” - certamente um tópico complexo. Minha preocupação muito limitada é poder usar os IDs de forma inequívoca como chaves para conjuntos de dados. Obviamente, a ferramenta Biblical Terms é capaz de vincular corretamente os IDs em diferentes arquivos, apesar das diferenças em suas representações binárias, presumivelmente por uma normalização em tempo real.

Como estou atualmente apenas prototipando, é o quanto preciso ir agora. Quando eu chegar a codificar o próprio plug-in, precisarei investigar os detalhes de como o PT faz o que faz nesta área.

Agora entendo o problema muito melhor. Obrigado a todos!

stevepence

Tradução automática de English
por (127 pontos)

No Paratext, todos os IDs de termos e IDs de renderização são normalizados para o formato NFC quando carregados para contornar esse problema. Na verdade, quase todos os dados são normalizados internamente ao comparar duas strings devido a esse problema. Eu considero isso um problema de design do Unicode, mas esse é um tópico diferente. :stuck_out_tongue_winking_eye:

EDIÇÃO: Além disso, se você estiver criando um plug-in do Paratext, deve usar IProject.GetBiblicalTermRenderings e IPluginHost.GetBiblicalTermList / IProject.BiblicalTermList para lidar com os Biblical Terms - o que deve evitar esse problema.

Tradução automática de English

Obrigado. Atualmente, ainda estou trabalhando em VBA finalizando um protótipo e obtendo feedback dos usuários. Eu não comecei a fazer trabalho real com a api. Estou certamente esperando que a api esconda todos esses detalhes, mas aprecio a ajuda de todos em entender as questões - mesmo que eu nunca precise ir até lá.

stevepence

Tradução automática de English

Perguntas relacionadas

0 votos
2 respostas 199 visualizações
When downloading Paratext 8, I'm told: The Online file is smaller and may be used if you are installing while connected to the ... to download that extra 85Mb, if I don't have to.
jeffh 1,4k perguntada Mar 23, 2017
0 votos
3 respostas 409 visualizações
We have a problem with language IDs not matching which prevents the Interlinearizer from working. The KPZ project was registered ... or how I can look at those changes. Iver+Larsen
Iver Larsen 869 perguntada Jan 24, 2020
0 votos
2 respostas 360 visualizações
In PT8 when I compare two project (of the same language) there were two arrows to go backwards or forwards to ... they do not work for difference between two different projects.
anon784407 105 perguntada Jan 13, 2020
0 votos
0 respostas 154 visualizações
Biblical Term rendering discussion not | Biblical Term rendering description e | The entire history leading to a deci ... Terms tool. See also: Introduction to Biblical Term notes
[Expert]
anon421222
735
perguntada Fev 23, 2017
0 votos
2 respostas 639 visualizações
Temos um usuário que possui várias renderizações associadas à lista NT Key Biblical Terms. Ele gostaria de começar ... em ordem alfabética para esse processo. Obrigado, james_post
[Moderator]
james_post
2,1k
perguntada Nov 10, 2021
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
All the believers were one in heart and mind. No one claimed that any of their possessions was their own, but they shared everything they had.
Acts 4:32
3,048 perguntas
6,007 respostas
5,672 comentários
2,028 usuários