Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Jan 27, 2026

O que esse PR faz?

Adiciona a chave text no dicionário retornado por Abstract.data, contendo o texto plano concatenado do abstract:

  • Com sections: concatena title e p de cada seção
  • Sem sections: concatena apenas os elementos p

Também corrige bug no property kwds que falhava quando o abstract não possui parent node.

Onde a revisão poderia começar?

packtools/sps/models/v2/abstract.py - linhas 167-190 (novo property text) e linha 208 (adição da chave no dicionário data).

Como este poderia ser testado manualmente?

from lxml import etree
from packtools.sps.models.v2.abstract import Abstract

# Com sections
xml = """
<abstract xml:lang="en">
    <sec>
        <title>Objective</title>
        <p>To examine effectiveness.</p>
    </sec>
</abstract>
"""
node = etree.fromstring(xml)
abstract = Abstract(node, lang="en", tags_to_keep=None, 
                   tags_to_keep_with_content=None,
                   tags_to_remove_with_content=None, 
                   tags_to_convert_to_html=None)
print(abstract.data['text'])
# Output: "Objective To examine effectiveness."

Execute os testes: pytest tests/sps/models/v2/test_abstract.py -v

Algum cenário de contexto que queira dar?

O property text verifica a presença de sections via node.xpath("sec") antes de iterar, evitando conversão desnecessária do generator self.sections para lista. Os generators self.sections e self.p continuam sendo consumidos apenas uma vez no property data.

Screenshots

N/A - mudanças em API de dados.

Quais são tickets relevantes?

Issue #[número será vinculado automaticamente]

Referências

  • Estrutura existente de BaseTextNode para extração de plain_text
  • Padrão de implementação em packtools/sps/models/v2/article_xref.py (uso da chave text)
Original prompt

This section details on the original issue you should resolve

<issue_title>Adicionar em Abstract.data a chave text</issue_title>
<issue_description>### Descrição da tarefa
Complete o modelo Abstract de packtools/sps/models/v2/abstract.py, adicionando em property data a chave text, cujo conteúdo deve ser:

  • com sections: o conteúdo de title e p de cada seção
  • sem sections: o conteúdo de p</issue_description>

Comments on the Issue (you are @copilot in this section)


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copilot AI and others added 2 commits January 27, 2026 11:55
…port

Co-authored-by: robertatakenaka <505143+robertatakenaka@users.noreply.github.com>
Co-authored-by: robertatakenaka <505143+robertatakenaka@users.noreply.github.com>
Copilot AI changed the title [WIP] Add text key to Abstract.data property Adicionar chave text em Abstract.data Jan 27, 2026
Copilot AI requested a review from robertatakenaka January 27, 2026 11:58
@robertatakenaka robertatakenaka marked this pull request as ready for review January 27, 2026 12:27
Copilot AI review requested due to automatic review settings January 27, 2026 12:27
@robertatakenaka robertatakenaka merged commit bb3f0a2 into master Jan 27, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Adicionar em Abstract.data a chave text

2 participants