Open fititnt opened 3 years ago
Eu tô super orgulhoso da gambiarra decisão técnica que essa escolha traz. ❤️
Se usar atributos hxl como indicação do que a informação seria já não ajuda na questão de não precisar criar um dicionário separado como TITLE, LICENSE... ele ao menos permite coisas como isto aqui:
SIIIIM! Mesmo sem ter alguma API que traduzisse para português o que '#meta+name' significativa em uma planilha #meta, na própria planilha da para usar regex simples para apenas traduzir para Inglês o que já não está em inglês. Ou seja usar essa abordagem não apenas permitiu ter respostas em diferentes idiomas para mesma informação como permite processamento rápido na própria planilha.
=IF(REGEXMATCH(A3, "i_pt"), GOOGLETRANSLATE(B3, "pt", "en"),B3)
Potencialmente pertinente: HXLStandard/libhxl-python: Function to return type given HXL tag #95.
A ideia que o David mencionou em 2017 (que no caso era mais focada em tipo de dados):
I like this. It implies that we create a new tab in the core schema for hashtag+attribute datatypes.
talvez mesmo que não usemos "tipos de dados" podemos criar uma planilha informal que explique que, por exemplo, "#meta +name +i_pt" quando usado significa numa planilha que representa metadados de toda planilha, seria "Nome da planilha".
Humm....
=CONCATENATE(C6, " ", D6, E6, F6)
Ok. O local onde podemos documentar o que seriam as hashtags pode passar a ser informalmente a planilha v_zz_hxl
. Se no futuro houver interesse da até mesmo para gerar planilhas com versões em outros idiomas em vez de dar acesso a planilha de fato.
Contexto do problema
No tópico Padrões/convenções mínimos do HXL-CPLP de como uma planilha HXL deveria ter #26 um dos pontos chaves era que, em especial por nós não termos um local como HDX para publicar o resultado final com uma URL que não mudaria, nós definitivamente precisaríamos ter alguma outra estratégia para armazenar a informação. E no fim das contas, o próprio Google Drive pode ser um caminho em especial quando a informação pode ficar completamente publica.
A planilha "README" / Leia-me / "Meta" (atualmente: #meta)
Conforme o #26, um dos mínimos ideias seria que a planilha que explicaria as demais planilhas no mínimo deveria ser um documento HXL válido. Isso na verdade não é difícil fazer (e até poderíamos ocultar alguns campos.
Como o numero campos da planilha Meta (atualmente #meta) poderia ser completamente variável, no fim a ideia de por
#meta+id | #description+label
poderia servir para por qualquer informação arbitrária. Aqui um exemplo curtoTabela sem +v_zz_hxl`
#meta +id
#description+label
Essa abordagem, embora melhor do que nada, tinha alguns problemas
Potencial nova abordagem
Nessa nova abordagem, (embora tecnicamente o cabeçalho poderia continuar sendo
#meta +id
), com uso de#meta +id +v_zz_hxl
deixamos mais explicito que a coluna inteira teria um significado de uma HXL hashtag + atributo que estaria definida por https://hxlstandard.org/standard/1-1final/dictionary/. O exemplo anterior poderia ser re-escrito como istoTabela com +v_zz_hxl`
#meta +id +v_zz_hxl
#description+label
Por que de usar
+v_zz_hxl
(e nãoou+v_hxl
)+hxl
Em primeiro lugar, não use
(como em+hxl
) porque mesmo se você não se importasse de criar atributos customizados, caso não tenha lido o padrão, vocabulários em que quer relacional precisam iniciar com#meta +id +hxl
+v_
.O uso de
(como em+v_hxl
) estaria valido pela especificação. Mas nem mesmo para uso interno vamos manter nas nossas planilhas do HXL-CPLP: primeiro porque, do ponto de vista de grupo de usuários de uma tecnologia, isso poderia gerar confusão. Segundo porque conteúdo antigo poderia ficar na internet e confundir pessoas. Terceiro porque, se vamos começar usar isso, a gente necessariamente teria que documentar em algum lugar, logo algum termo vocabulário teria que ser usado.#meta +id +v_hxl
O prefixo
+v_zz_
A escolha de "ZZ" como prefixo é baseada no fato de que "ZZ" (assim como alguns outros exemplos, como "XX"), já é usado internacionalmente como um código para elementos definidos por usuário e que estão garantidos que não serão usados para definir um país. Talvez a gente possa usar esse prefixo para outros vocabulários que nem mesmo acreditamos que haveria concordância ou que seria interessante ter nome curto.
Prefixo
+v_xx_
O prefixo
+v_xx_
("XX") também é listado no ISO_3166-1alpha-2. Esse seria uma alternativa (e que de certa forma faria sentido com a especificação 1.1final, que sugere (quando não é para atributos+termo
, mas para#hastags
) iniciar hashtags reservadas com `#x. **A escolha de
+v_zz_hxlem vez de
+v_xx_hxlé meramente opinativa.** Outro ponto é que faria sentido ter mais prefixos no caso de vocabulários definidos por usuários e, se fossemos seguir a lógica dessa página da wikipedia _The following alpha-2 codes can be user-assigned: AA, QM to QZ, XA to XZ, and ZZ._ até mesmo
+vaa` poderia ser um prefixo pela logica do ISO_3166-1_alpha-2.Note que a especificação não fala muito sobre como criar os próprios vocabulários, então tudo que é citado neste issue aqui é mais uma padronização interna.