4.2 Concepção do framework
4.2.1 Fonte de dados, processamento de arquivos e geração dos documentos
Como descrito na Seção
2.1, a Plataforma Lattes é um grande repositório de
grau de formação elevado, o que sugere uma boa fonte de dados de especialistas. Além disso,
o CNPQ possui anos de experiência no cadastro dessas informações, tendo padronizado o
formulário de cadastro, que é disponibilizado em um formato semi-estruturado (apesar
dos dados estarem disponíveis no formato XML, existem vários campos onde o texto é
livre, sem marcação específica). Por esses motivos, somados ainda à falta de trabalhos que
unem a busca de especialistas com essa base de dados tão relevante, ela foi escolhida para
este trabalho.
O primeiro passo a ser realizado é a leitura dos arquivos correspondentes aos
currículos e processamento no formato XML (Passo 1.a), bem como extração dos dados
(Passo 1.b), que consistem basicamente na leitura dos arquivos texto, análise da estrutura
e transformação em objetos XML (permitindo navegação e acesso aos dados). Em seguida,
inicia-se a transformação do objeto XML, em um formato que possa ser utilizado pelo
framework, gerando vários documentos (Passo 2) a partir da extração de informações
relevantes. O XML é composto por vários elementos que correspondem à produção do
pesquisador, incluindo artigos, projetos, orientações, atuações profissionais, formação
acadêmica, entre outros. Cada ocorrência de elemento que corresponde a uma produção
do pesquisador, com seus respectivos atributos, é usada na geração de documentos para
o framework. Por exemplo, para cada artigo cadastrado, um documento individual será
gerado a partir da transformação de um artigo, considerando seu título, nome do periódico,
palavras chave e descrição adicional. Uma outra abordagem seria gerar um documento para
o título, outro para o resumo e outro a concatenação de palavras chave. Um exemplo real é
discutido adiante, onde dois elementos XML, presentes nos Códigos
1e
2, são usados para
gerar dois documentos listados no Código
3. Dessa maneira, um currículo vai gerar uma
série de documentos, que nada mais são do que a transformação dos elementos do XML
original em um novo formato de dados, onde os atributos relevantes são concatenados.
Esse procedimento é usado para filtrar as informações dentro do currículo e também para
montar os documentos usados na análise dos algoritmos de expertise, deixando-os mais
completos (um documento gerado a partir de um artigo não será apenas o seu título, mas
a concatenação do seu título, título do periódico, palavras-chave e informações adicionais).
1 < ARTIGO - P U B L I C A D O S E Q U E N C I A - P R O D U C A O =" 1 3 6 4 " ORDEM - I M P O R T A N C I A =" 22 ">
2 < DADOS - BASICOS - DO - A R T I G O N A T U R E Z A =" C O M P L E T O " TITULO - DO - A R T I G O =" T R A T A M E N T O DE UM E F L U E N T E M O D E L O T E X T I L VIA R E A C A O DE F E N T O N " ANO - DO - A R T I G O =" 2 0 1 6 " PAIS - DE - P U B L I C A C A O =" " I D I O M A =" P o r t u g u e s " MEIO - DE - D I V U L G A C A O =" M E I O _ D I G I T A L " HOME - PAGE - DO - T R A B A L H O =" [ doi
: 1 0 . 1 5 6 2 8 / h o l o s . 2 0 1 6 . 2 2 5 0 ] " FLAG - R E L E V A N C I A =" NAO " DOI =" 1 0 . 1 5 6 2 8 / h o l o s . 2 0 1 6 . 2 2 5 0 " TITULO - DO - ARTIGO - I N G L E S =" T R A T A M E N T O DE UM
E F L U E N T E M O D E L O T E X T I L VIA R E A C A O DE F E N T O N " FLAG - D I V U L G A C A O - C I E N T I F I C A =" NAO "/ >
3 < D E T A L H A M E N T O - DO - A R T I G O TITULO - DO - P E R I O D I C O - OU - R E V I S T A =" H o l o s ( N a t a l . O n l i n e ) " I S S N =" 1 8 0 7 1 6 0 0 " V O L U M E =" 4 " F A S C I C U L O =" " S E R I E =" "
PAGINA - I N I C I A L =" 25 " PAGINA - F I N A L =" 35 " LOCAL - DE - P U B L I C A C A O =" "/ >
4 < A U T O R E S NOME - C O M P L E T O - DO - A U T O R =" K O S L O W S K I , L U C I A N O A N D R E D E I T O S "
NOME - PARA - C I T A C A O =" K O S L O W S K I , L U C I A N O A N D R E D E I T O S " ORDEM - DE - A U T O R I A =" 1 " NRO - ID - C N P Q =" "/ >
5 < A U T O R E S NOME - C O M P L E T O - DO - A U T O R =" L I C O D I E D O F F , S I L V A N A " NOME - PARA - C I T A C A O =" L I C O D I E D O F F , S I L V A N A " ORDEM - DE - A U T O R I A =" 2 " NRO - ID - C N P Q =" "/ >
6 < A U T O R E S NOME - C O M P L E T O - DO - A U T O R =" H u m b e r t o G r a c h e r R i e l l a " NOME - PARA - C I T A C A O =" RIELLA , H u m b e r t o G r a c h e r " ORDEM - DE - A U T O R I A =" 3 " NRO - ID - C N P Q =" "/ >
7 < P A L A V R A S - C H A V E PALAVRA - CHAVE -1=" r e a c a o f e n t o n " PALAVRA - CHAVE -2=" e f l u e n t e t e x t i l " PALAVRA - CHAVE -3=" " PALAVRA - CHAVE -4=" " PALAVRA - CHAVE -5=" " PALAVRA - CHAVE -6=" "/ >
8 < AREAS - DO - C O N H E C I M E N T O >
9 < AREA - DO - C O N H E C I M E N T O -1 NOME - GRANDE - AREA - DO - C O N H E C I M E N T O ="
E N G E N H A R I A S " NOME - DA - AREA - DO - C O N H E C I M E N T O =" " NOME - DA - SUB - AREA - DO - C O N H E C I M E N T O =" " NOME - DA - E S P E C I A L I D A D E =" "/ > 10 </ AREAS - DO - C O N H E C I M E N T O > 11 < SETORES - DE - A T I V I D A D E SETOR - DE - A T I V I D A D E -1=" P e s q u i s a e d e s e n v o l v i m e n t o c i e n t i f i c o " SETOR - DE - A T I V I D A D E -2=" " SETOR - DE - A T I V I D A D E -3=" "/ > 12 < I N F O R M A C O E S - A D I C I O N A I S D E S C R I C A O - I N F O R M A C O E S - A D I C I O N A I S =" O p r e s e n t e e s t u d o t e v e c o m o o b j e t i v o a v a l i a r a a p l i c a c a o de um P r o c e s s o O x i d a t i v o A v a n c a d o no t r a t a m e n t o de e f l u e n t e s texteis , d e n o m i n a d o p r o c e s s o o x i d a t i v o de F e n t o n . 13 Nos e s t u d o s r e a l i z a d o s , e n v o l v e n d o a d e g r a d a c a o dos c o r a n t e s A z u l [ . . . ] " / > 14 </ ARTIGO - P U B L I C A D O >
Código 1 – Exemplo de elemento que representa um artigo dentro do XML
1 < ARTIGO - P U B L I C A D O S E Q U E N C I A - P R O D U C A O =" 786 " ORDEM - I M P O R T A N C I A =" 104 ">
2 < DADOS - BASICOS - DO - A R T I G O N A T U R E Z A =" C O M P L E T O " TITULO - DO - A R T I G O =" O E S T A D O DA A R T E NA R E C I C L A G E M DE L A M P A D A S F L U O R E S C E N T E S NO B R A S I L :
P A R T E 1 " ANO - DO - A R T I G O =" 2 0 0 8 " PAIS - DE - P U B L I C A C A O =" " I D I O M A =" P o r t u g u e s " MEIO - DE - D I V U L G A C A O =" I M P R E S S O " HOME - PAGE - DO - T R A B A L H O =" "
FLAG - R E L E V A N C I A =" NAO " DOI =" " TITULO - DO - ARTIGO - I N G L E S =" O E S T A D O DA A R T E NA R E C I C L A G E M DE L A M P A D A S F L U O R E S C E N T E S NO B R A S I L : P A R T E 1 " FLAG - D I V U L G A C A O - C I E N T I F I C A =" NAO "/ >
3 < D E T A L H A M E N T O - DO - A R T I G O TITULO - DO - P E R I O D I C O - OU - R E V I S T A =" A c t a A m b i e n t a l C a t a r i n e n s e " I S S N =" 1 6 7 7 7 2 9 8 " V O L U M E =" 5 " F A S C I C U L O =" "
S E R I E =" 1 " PAGINA - I N I C I A L =" 43 " PAGINA - F I N A L =" 53 " LOCAL - DE - P U B L I C A C A O =" "/ >
4 < A U T O R E S NOME - C O M P L E T O - DO - A U T O R =" V e r a L u c i a M o m b a c h " NOME - PARA - C I T A C A O =" V e r a L u c i a M o m b a c h " ORDEM - DE - A U T O R I A =" 1 " NRO - ID - C N P Q =" 3 4 6 4 6 4 4 6 2 8 4 4 9 3 1 2 "/ >
5 < A U T O R E S NOME - C O M P L E T O - DO - A U T O R =" H u m b e r t o G r a c h e r R i e l l a " NOME - PARA - C I T A C A O =" RIELLA , H u m b e r t o G r a c h e r ; Riella , H . G .; Riella , H . G .; F I O R I JUNIOR , J .; RIELLA , H U M B E R T O G .; RIELLA , H U M B E R T O G .; G R A C H E R RIELLA , H U M B E R T O ; H . G . R i e l l a " ORDEM - DE - A U T O R I A =" 2 " NRO - ID - C N P Q =" 0 0 5 5 0 8 0 1 3 4 8 9 2 2 6 9 "/ >
6 < A U T O R E S NOME - C O M P L E T O - DO - A U T O R =" N i v a l d o C a b r a l K u h n e n " NOME - PARA - C I T A C A O =" KUHNEN , N i v a l d o C a b r a l " ORDEM - DE - A U T O R I A =" 3 " NRO - ID - C N P Q =" 7 9 9 6 3 8 0 8 1 5 4 5 4 6 2 3 "/ >
7 < P A L A V R A S - C H A V E PALAVRA - CHAVE -1=" l a m p a d a s f l u o r e s c e n t e s " PALAVRA - CHAVE -2=" R e c i c l a g e m " PALAVRA - CHAVE -3=" " PALAVRA - CHAVE -4=" "
PALAVRA - CHAVE -5=" " PALAVRA - CHAVE -6=" "/ >
8 < AREAS - DO - C O N H E C I M E N T O >
9 < AREA - DO - C O N H E C I M E N T O -1 NOME - GRANDE - AREA - DO - C O N H E C I M E N T O ="
E N G E N H A R I A S " NOME - DA - AREA - DO - C O N H E C I M E N T O =" " NOME - DA - SUB - AREA - DO - C O N H E C I M E N T O =" " NOME - DA - E S P E C I A L I D A D E =" "/ > 10 </ AREAS - DO - C O N H E C I M E N T O > 11 < SETORES - DE - A T I V I D A D E SETOR - DE - A T I V I D A D E -1=" I n d u s t r i a s de T r a n s f o r m a c a o " SETOR - DE - A T I V I D A D E -2=" " SETOR - DE - A T I V I D A D E -3=" "/ > 12 < I N F O R M A C O E S - A D I C I O N A I S D E S C R I C A O - I N F O R M A C O E S - A D I C I O N A I S =" As l a m p a d a s f l u o r e s c e n t e s sao um a r t i g o c o m u m na s o c i e d a d e a t u a l . No e n t a n t o sao a g e n t e s de c o n t a m i n a c a o a m b i e n t a l q u a n d o d e s c a r t a d a s i n a d e q u a d a m e n t e . A l g u m a s e m p r e s a s tem se d e d i c a d o ao d e s e n v o l v i m e n t o de t e c n o l o g i a s de d e s c o n t a m i n a c a o d e s t e m a t e r i a l [ . . . ] " / > 13 </ ARTIGO - P U B L I C A D O >
Código 2 – Outro elemento que representa um artigo, extraído do mesmo XML.
Fonte: Elaborado pelo autor
1 i n i c i o ; fim ; d o c u m e n t o 2 2 0 1 6 ; 2 0 1 6 ; T R A T A M E N T O DE UM E F L U E N T E M O D E L O T E X T I L VIA R E A C A O DE F E N T O N . H o l o s ( N a t a l . O n l i n e ) . r e a c a o f e n t o n . e f l u e n t e t e x t i l . O p r e s e n t e e s t u d o t e v e c o m o o b j e t i v o a v a l i a r a a p l i c a c a o de um P r o c e s s o O x i d a t i v o A v a n c a d o no t r a t a m e n t o de e f l u e n t e s texteis , d e n o m i n a d o p r o c e s s o o x i d a t i v o de F e n t o n . Nos e s t u d o s r e a l i z a d o s , e n v o l v e n d o a d e g r a d a c a o dos c o r a n t e s A z u l T u r q u e s a e V e r d e M a l a q u i t a , por m e i o de um p l a n e j a m e n t o f a t o r i a l , a n a l i s e s de a b s o r b a n c i a , DQO e pH , f i c o u e v i d e n c i a d a a e l e v a d a c a p a c i d a d e de d e g r a d a c a o da r e a c a o de F e n t o n . 3 4 5 2 0 0 8 ; 2 0 0 8 ; O E S T A D O DA A R T E NA R E C I C L A G E M DE L A M P A D A S F L U O R E S C E N T E S NO B R A S I L : P A R T E 1. A c t a A m b i e n t a l C a t a r i n e n s e . l a m p a d a s f l u o r e s c e n t e s . R e c i c l a g e m . As l a m p a d a s f l u o r e s c e n t e s sao um a r t i g o c o m u m na s o c i e d a d e a t u a l . No e n t a n t o sao a g e n t e s de c o n t a m i n a c a o a m b i e n t a l q u a n d o d e s c a r t a d a s i n a d e q u a d a m e n t e . A l g u m a s e m p r e s a s tem se d e d i c a d o ao d e s e n v o l v i m e n t o de t e c n o l o g i a s de d e s c o n t a m i n a c a o d e s t e m a t e r i a l [ . . . ]
Código 3 – Documentos gerados a partir dos artigos apresentados nos Códigos
1
e
2,
respectivamente.
A transformação dos documentos ocorreu da seguinte forma: com a ajuda do
DTD que define a estrutura do XML do Currículo Lattes (disponível no Anexo
A),
os principais elementos e atributos foram extraídos e agrupados. Essa seleção foi feita
de maneira empírica, a partir da análise de dados de currículos já preenchidos e do
julgamento dos dados que são relevantes. Por exemplo: o atributo NOME-GRANDE-
AREA-CONHECIMENTO, presente em vários tipos de produção (como nos artigos),
está sempre (ou quase sempre) preenchido com o valor ENGENHARIAS para os pesqui-
sadores das áreas da engenharia. Esta é uma informação que não agrega no momento
do recuperação da expertise (por ser genérica), diferente das palavras-chave, que di-
zem muito sobre uma produção (informação mais específica). Os dados considerados
relevantes para solidificação do modelo (i.e. que podem representar a expertise do pes-
quisador) foram relacionados no Apêndice
A, no formato JSON. Essa estrutura é a base
para a busca das informações dentro do XML. Nela foram adicionados registros com
expressões XML Path Language (XPath) capazes de selecionar informações dentro do
XML. Por exemplo, considerando que os artigos são importantes na determinação da
expertise do pesquisador, foi verificado no DTD que a expressão XPath que recupera
todos elementos que representam artigos é dada por <.//PRODUCAO-BIBLIOGRAFICA/
ARTIGOS-PUBLICADOS/ARTIGO-PUBLICADO>, sendo que o título de um artigo pode ser
acessado por <./DADOS-BASICOS-DO-ARTIGO/@TITULO-DO-ARTIGO> e o ano de publica-
ção por <./DADOS-BASICOS-DO-ARTIGO/@ANO-DO-ARTIGO>. Essas são as informações que
devem constar no JSON para identificar título e ano de cada artigo. Como existem outros
atributos interessantes para esse tipo de produção, outras expressões XPath também foram
adicionadas e podem ser conferidas no Código
4. Esse formato facilita a customização do
framework caso a estrutura do Currículo Lattes sofra alteração (sendo necessário alterar
apenas as expressões que recuperam as informações), ou ainda na troca da fonte de dados
(fazendo novas expressões para busca em uma estrutura XML completamente diferente).
1 {
2 " d e s c r i c a o " : " A r t i g o s p u b l i c a d o s ",
3 " tag " : " .// P R O D U C A O - B I B L I O G R A F I C A / ARTIGOS - P U B L I C A D O S / ARTIGO - P U B L I C A D O ",
4 " i n i c i o " : [" ./ DADOS - BASICOS - DO - A R T I G O / @ANO - DO - A R T I G O "] ,
5 " fim " : [" ./ DADOS - BASICOS - DO - A R T I G O / @ANO - DO - A R T I G O "] ,
6 " a t r i b u t o s " : [
7 " ./ DADOS - BASICOS - DO - A R T I G O / @TITULO - DO - A R T I G O ",
8 " ./ D E T A L H A M E N T O - DO - A R T I G O / @TITULO - DO - P E R I O D I C O - OU - R E V I S T A ", 9 " ./ P A L A V R A S - C H A V E / @ P A L A V R A - CHAVE -1 ", 10 " ./ P A L A V R A S - C H A V E / @ P A L A V R A - CHAVE -2 ", 11 " ./ P A L A V R A S - C H A V E / @ P A L A V R A - CHAVE -3 ", 12 " ./ P A L A V R A S - C H A V E / @ P A L A V R A - CHAVE -4 ", 13 " ./ P A L A V R A S - C H A V E / @ P A L A V R A - CHAVE -5 ", 14 " ./ P A L A V R A S - C H A V E / @ P A L A V R A - CHAVE -6 ", 15 " ./ I N F O R M A C O E S - A D I C I O N A I S / @ D E S C R I C A O - I N F O R M A C O E S - A D I C I O N A I S " 16 ] 17 }