Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Disponibiliza o campo doi_prefix na API Journal #830

Merged
merged 11 commits into from
Oct 1, 2024

Conversation

samuelveigarangel
Copy link
Collaborator

O que esse PR faz?

Disponibiliza o campo doi_prefix na API Journal

Onde a revisão poderia começar?

pelos commits

Como este poderia ser testado manualmente?

Acessa: http://0.0.0.0:8009/api/v1/journal/

Algum cenário de contexto que queira dar?

N/A

Screenshots

N/A

Quais são tickets relevantes?

#829

Referências

N/A

@samuelveigarangel
Copy link
Collaborator Author

@robertatakenaka, Eu adiciono um filtro pelo campo doi_prefix para retornar todos os periódicos que possuem um valor para doi_prefix?

Comment on lines 13 to 18
def get_queryset(self):
queryset = models.Article.objects.all()
doi_prefix = self.request.query_params.get('doi_prefix', None)
if doi_prefix is not None:
queryset = queryset.filter(journal__doi_prefix=doi_prefix)
return queryset
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@samuelveigarangel qual é o propósito?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Filtar os artigos pelo o prefixo do doi. Não há necessidade?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@samuelveigarangel ok, mas não acho que há este caso de uso... mas se houver a consulta é diretamente no Article, não seria necessário o filter ser pelo journal, está esquisito. Que tal:

def get_queryset(self):
        doi_prefix = self.request.query_params.get('doi_prefix', None)
        if doi_prefix is not None:
            return models.Article.objects.filter(doi__value__startswith=doi_prefix)
        return models.Article.objects.all()

O tamanho 50 para o prefixo está muito grande. O tamanho total indicado para o DOI está como 100.
Consulte: https://www.crossref.org/documentation/member-setup/constructing-your-dois/

@@ -570,6 +570,7 @@ class Journal(CommonControlField, ClusterableModel):
blank=True,
verbose_name=_("DigitalPreservationAgency"),
)
doi_prefix = models.CharField(max_length=50, blank=True, null=True)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@samuelveigarangel
O tamanho 50 para o prefixo está muito grande. O tamanho total indicado para o DOI está como 100.
Consulte: https://www.crossref.org/documentation/member-setup/constructing-your-dois/

@@ -13,6 +13,6 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name="journal",
name="doi_prefix",
field=models.CharField(blank=True, max_length=50, null=True),
field=models.CharField(blank=True, max_length=100, null=True),
Copy link
Member

@robertatakenaka robertatakenaka Aug 14, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@samuelveigarangel O meu comentário anterior diz que 50 para doi_prefix é muito, então 100, é demais. Tinha adicionado a documentação. Segue a imagem. Sugiro no máximo 20 e no mínimo 15

image

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Entendi seu comentário de forma errada e pensei que era para aumentar o tamanho. Pesquisei sobre o limite do tamanho do DOI e a única fonte que encontrei relacionada a isso foi: https://www.doi.org/resources/DOI_article_ELIS3.pdf. Na seção 'syntax', é informado que não há um limite definido para o tamanho do DOI, prefixo ou sufixo.

Copy link
Member

@robertatakenaka robertatakenaka left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@samuelveigarangel Realizar correções

@samuelveigarangel samuelveigarangel merged commit 3f3f0be into scieloorg:main Oct 1, 2024
2 of 4 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.

2 participants