Código Natural/Identificação taxonômica: mudanças entre as edições
Sem resumo de edição |
|||
Linha 18: | Linha 18: | ||
No exemplo acima as laranjas fizeram uso de um prefixo de apenas 1 bit e as maçãs uso de um prefixo de 2 bits. | No exemplo acima as laranjas fizeram uso de um prefixo de apenas 1 bit e as maçãs uso de um prefixo de 2 bits. | ||
Se a taxonomia é sujeita a modificações, podemos reservar mais bits para cada um dos grupos taxonômicos (''taxons''). No exemplo poderíamos no futuro distinguir laranjas, entre comuns e avermelhadas. Todas elas com prefixo <code>1</code> mas reservando mais bits | Se a taxonomia é sujeita a modificações, podemos '''reservar mais bits para cada um dos grupos taxonômicos''' (''taxons''). | ||
No exemplo poderíamos no futuro '''distinguir laranjas''', entre ''comuns'' e ''avermelhadas''. Todas elas com prefixo <code>1</code> mas reservando mais bits para futuras diferenciações: duas estratégias são possíveis: | |||
* Se as existentes são comuns, batizamos elas de <code>10</code> e reservamos <code>11</code> para as avermelhadas. Não fica nenhuma reserva de segurança. | * Se as existentes são comuns, batizamos elas de <code>10</code> e reservamos <code>11</code> para as avermelhadas. Não fica nenhuma reserva de segurança. |
Edição das 12h56min de 16 de julho de 2023
Identificadores únicos, tais como contadores sequenciais em bases de dados, são fundamentais para a indexação e controle de registros. O ideal, todavia, é que esse identificador traga embutida alguma informação relativa à taxonomia da entidade identificada. Isso porque os identificadores de grupos taxonômicos também precisam ser únicos e padronizados.
A ilustração do conjunto de frutas nos ajuda
Taxonomias bit a bit
A cada prefixo pode-se expressar uma regra. Por exemplo:
- Primeiro bit do ID: define se é laranja (1) ou maçã (0).
Os conjuntos L dos identificadores de laranjas e M das maçãs da ilustração ao lado são definidos por: e .
- Primeiro bit do ID de maçã: define se é vermelha (0) ou verde (1). Portanto IDs com prefixos 00 e 01.
Os conjuntos R dos identificadores de maçãs "red" e G das maçãs "green" da ilustração ao lado são definidos por: e . Ambos subconjuntos de M, estabelecendo portanto uma hierarquia taxonômica entre as maçãs.
Os identificadores de frutas são livres, podem ter qualquer quantidade de bits, podem ter tamanho fixo ou variável, e não precisam percorrer uma sequência especial. A taxonomia só impõe a existência de prefixos e regras de interpretação para esses prefixos.
A sintaxe geral da cadeia de bits é simples: "$prefixo$contador
". Com as variáveis prefixo e contador, tendo apenas o prefixo um tamanho definido pelas regras taxonômicas.
Reserva de bits para o prefixo do contador
No exemplo acima as laranjas fizeram uso de um prefixo de apenas 1 bit e as maçãs uso de um prefixo de 2 bits.
Se a taxonomia é sujeita a modificações, podemos reservar mais bits para cada um dos grupos taxonômicos (taxons).
No exemplo poderíamos no futuro distinguir laranjas, entre comuns e avermelhadas. Todas elas com prefixo 1
mas reservando mais bits para futuras diferenciações: duas estratégias são possíveis:
- Se as existentes são comuns, batizamos elas de
10
e reservamos11
para as avermelhadas. Não fica nenhuma reserva de segurança.
- Se as existentes são misturadas, batizamos a mistura de
100
e reservamos101
para as identificadas como comuns e110
para as avermelhadas; ficando ainda a reserva111
para outra eventual variedade de laranja.
Contadores numéricos
...
Contadores lexicográficos
...
Taxonomias Base N
Ver fig em https://github.com/osm-codes/NaturalCodes/wiki/Illustrating-the-order-as-taxonomy-blocks