fix: corrige idioma do resumo de sub-article traduzido (#1329) - #1334
Open
Rossi-Luciano wants to merge 3 commits into
Open
fix: corrige idioma do resumo de sub-article traduzido (#1329)#1334Rossi-Luciano wants to merge 3 commits into
Rossi-Luciano wants to merge 3 commits into
Conversation
get_abstracts() buscava abstract/trans-abstract em todo o documento via .//, misturando os do sub-article com os do artigo principal. Quando o <abstract> do sub-article não tinha xml:lang próprio (o idioma fica no <sub-article xml:lang="..."> pai), o código caía no fallback self.lang, que é o idioma do artigo principal, não o do sub-article. Agora o método separa a busca em dois ramos: um para o artigo principal (excluindo qualquer coisa dentro de sub-article) e outro para abstracts de sub-article, resolvendo o lang a partir do próprio nó ou do sub-article que o contém, nunca do artigo principal.
…icle (scieloorg#1329) Cobre o caso relatado na issue: abstract de sub-article sem xml:lang próprio deve usar o idioma do sub-article que o contém, não o do artigo principal. Inclui um caso com múltiplos sub-articles (fixture existente en/pt/es) e uma checagem de que XMLAbstractsValidation continua funcionando com abstracts de sub-article presentes.
16 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
O que esse PR faz?
Corrige
XMLAbstracts.get_abstracts()(packtools/sps/validation/models/abstract.py), que rotulava incorretamente o idioma do resumo (<abstract>) de um<sub-article>traduzido — o resumo saía com o idioma do artigo principal em vez do idioma do sub-article. Isso corrompia o campolanguageconsumido pelo Upload/scms-upload na página de TOC do fascículo, fazendo dois resumos em idiomas diferentes aparecerem com a mesma etiqueta de idioma.Onde a revisão poderia começar?
packtools/sps/validation/models/abstract.py, métodoXMLAbstracts.get_abstracts(). O xpath original usava.//sobre o documento inteiro, misturando abstracts desub-articlecom os do artigo principal; e quando o<abstract>do sub-article não tinhaxml:langpróprio, caía no fallbackself.lang(o idioma do artigo principal, não o do sub-article).Como este poderia ser testado manualmente?
Reproduzido e verificado localmente contra o XML real citado na issue (
1518-8787-rsp-56-9.xml, descieloorg/scms-upload): antes do fix, os dois resumos saíam comoen/en; depois do fix, saem comoen/pt.Algum cenário de contexto que queira dar?
Relatado pela Roberta Takenaka em #1329: ao reprocessar o fascículo v56 da RSP no Upload, o resumo em português de um artigo apareceu marcado como inglês na página de TOC. O problema só ocorre com artigos vindos de XML com
<sub-article>de tradução (não ocorre com artigos HTML, que passam por outro caminho de código).Como efeito colateral positivo, o fix também corrige
kwdsvazios em resumos de sub-article (a busca dekwd-groupusa o mesmolangque estava incorreto).Fora do escopo deste PR:
packtools/sps/models/article_abstract.py::ArticleAbstract.get_sub_article_abstracttem bugs semelhantes e independentes, mas não está no caminho de código exercitado por esta issue — ficará para uma issue de follow-up.Screenshots
Não aplicável (mudança de lógica interna, sem interface visual no packtools).
Quais são os tickets relevantes?
Closes #1329
Referências
migration/fixtures/classic_website/bases/xml/rsp/v56/1518-8787-rsp-56-9.xml(reposcieloorg/scms-upload)Segurança da informação (NSI.04)
Este PR manipula dados sensíveis ou pessoais (LGPD)?
Este PR altera autenticação, autorização, controle de acesso ou gerenciamento de sessão?
Este PR introduz, atualiza ou remove dependências de terceiros?
Este PR foi validado pelo pipeline de segurança (SonarQube / Trivy)?
Este PR concatena, monta ou executa comandos SQL, HTML ou JavaScript a partir de entrada externa?
Este PR expõe novos endpoints, telas ou serviços?
Algum segredo, senha, chave ou token está sendo adicionado ao código-fonte?