Open heliolbs opened 4 months ago
@leoalenc , como devo entregar a nova função parseExampleHartt
?
@leoalenc , como devo entregar a nova função
parseExampleHartt
?
- Posto o código diretamente aqui como comentário?
- Faço o upload de um arquivo .py com a função dentro?
- Deixo disponível no repositório privado?
@heliolbs , por enquanto, pode colocar aqui como comentário, usando a marcação de código de markdown.
@leoalenc , foram testados três cenários diferentes no desenvolvimento dessa primeira versão da função parseExampleHartt
, todos cumprindo a exigência de quatro linhas de handleSentsHartt
:
Acredito que esse cenário 3 possa ser resolvido dentro da função handleSentsHartt
por meio de RegEx e replace
de string para remoção do comentário.
Segue abaixo o código sugerido para a função parseExampleHartt
:
def parseExampleHartt(example,page,copyboard=True,annotator=ANNOTATOR,check=True,outfile=False,overwrite=False,metadata={}, translate=False):
"""
Annotate an example from Hartt (1938) by:
- receiving a dictionary from handleSentsHartt;
- checking the third line of the example for the indication of cross reference with Avila (2021) to decide whether to insert the relevant metadata;
- insert the other metadata;
- invoking _parseExample
The examples below (40 and 91) were extracted as they were from "dominickmaia/hartt/frases.txt":
>>> input_string='''40 - ixé xamonó amú osú omopók nesuí nekamutí.
40 - Ixé xamunú amú usú umupuka ne suí ne kamutí.
40 - Ixé amundú amú usú umupuka ne suí ne kamutí. (Hartt, 322, adap.) - Eu mando outro ir quebrar-te o teu pote.
40 - mando um outro ir quebrar teu pote.
'''
>>> Yauti.parseExampleHartt(input_string,page=322)
>>> input_string='''91 - intí án sekyrimbá xasupir aráma mbaa iporéi reté aá (Ereré).
91 - Intí ã se kirimbá xasupiri arama maã i pusé reté waá.
91 - NA
91 - não tenho bastante força para aguentar uma coisa muito pesada.'''
>>> Yauti.parseExampleHartt(input_string,page=325)
"""
sents={}
person="Antônio Levy Melo Nogueira"
transcriber={'text_orig_transcriber': person,
'text_por_modernizer': person}
handled=handleSentsHartt(example)
metadata={}
# Checking the existence of cross reference
if handled['avila'] != 'NA':
sec=mkSecTextAvila(handled['avila'])
metadata.update(sec)
metadata.update(transcriber)
# Organizing main attributes
prefix="Hartt1928"
sent_nr=handled['index'][0]
sents['sent_id']=mkSentId(prefix,sentid=sent_nr)
sents['text']=handled['text']
sents['text_por']=handled['text_por']
sents['text_source']=f"p. {page}, No. {sent_nr}"
sents['text_orig']=handled['text_orig']
return _parseExample(sents,copyboard=copyboard,annotator=annotator,check=check,outfile=outfile, overwrite=overwrite,metadata=metadata,translate=translate)
@heliolbs , poderia preparar docstring dessa sua função com os dois tipos de situações que testou? Veja, por exemplo, as docstrings dessas funções mais recentes que implementei no módulo AnnotateConllu
. Por outro lado, seria interessante revisar os exemplos anotados para incluir logo no treebank. @dominickmaia ?
heliolbs , poderia preparar docstring dessa sua função com os dois tipos de situações que testou?
Posso sim, @leoalenc . Vou editar em breve meu último comentário acima inserindo a docstring.
Veja, por exemplo, as docstrings dessas funções mais recentes que implementei no módulo
AnnotateConllu
.
Vou seguir os exemplos das funções handleSentsHartt
, parseSingleLineExample
e parseExampleAmorim
para compor a docstring da nova função.
Por outro lado, seria interessante revisar os exemplos anotados para incluir logo no treebank. dominickmaia ?
Pode elaborar um pouco essa instrução, @leoalenc ? Não me aprofundei na anotação dos exemplos que usei no teste da função, pois os valores de teste PASSOU e FALHOU dependeram apenas dos metadados dos exemplos e da ausência de erro de execução da função.
@leoalenc , o meu penúltimo comentário foi editado com a inserção da docstring da função parseExampleHartt
.
Com base na sugestão deste comentário de @leoalenc na issue #424, uma função
parseExampleHartt
deve ser criada para facilitar a anotação de sentenças de Hartt (1938):HandleSentsHartt
deste comentário;handleSentsHartt
seguido demkSecTextAvila
e deparseExample
, exemplificado neste comentárioparseExample
e_parseExample
;handleSentsAmorim
eparseExampleAmorim
;handleSentsAmorim
ehandleSentsHartt
;parseExampleHartt
;parseExampleHartt
;