<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Um Ambiente para Integração de Dados Abertos relativos à Despesa Pública</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Gustavo C. Britto</string-name>
          <email>gustavocbritto@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Fabiano B. Ruy</string-name>
          <email>fabianoruy@ifes.edu.br</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Carlos L. B. Azevedo</string-name>
          <email>carlos.azevedo@ifes.edu.br</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Coordenadoria de Informática, Instituto Federal do Espírito Santo - Campus Serra ES-010 Km-6</institution>
          ,
          <addr-line>5 - Manguinhos, Serra - ES -</addr-line>
          <country country="BR">Brasil</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>In recent years Brazil has assumed a set of commitments for improving its transparency, especially on the Public Budget. The resulting actions led to the availability of a large amount of public data from the federation, states and municipalities. However, there are still many challenges to deal with all this data in a unified way, seeking for more valuable information. This paper proposes an environment able to capture data from different government entities and store them in a common repository, based on a Public Expense Ontology, for providing uniform queries, regardless of the original data sources. Resumo. O Brasil assumiu nos últimos anos uma série de compromissos visando melhorar sua transparência, especialmente em relação ao Orçamento Público. As medidas decorrentes levaram à disponibilização de um grande volume de dados públicos pela federação, estados e municípios. Entretanto, ainda há muitos desafios para lidar com esses dados de maneira conjunta, buscando obter informações mais relevantes. Este artigo propõe um ambiente capaz de capturar dados de diferentes entidades governamentais e armazená-los em um repositório comum, baseado em uma Ontologia de Despesa Pública, provendo consultas uniformes, independentemente das fontes de dados originais.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introdução</title>
      <p>
        O Brasil é membro da parceria internacional Open Government Partnership (OGP), em
que, por meio de um plano de ação, firmam-se compromissos frente aos desafios que
envolvem um governo mais transparente, participativo e colaborativo. No país, a Lei de
Acesso à Informação (Lei 12.527/2011) regulamenta a gestão de dados pelas entidades
governamentais, bem como sua disponibilização para o público em geral. Atualmente, o
Governo Brasileiro está em seu quarto plano de ação [
        <xref ref-type="bibr" rid="ref2">Brasil 2020</xref>
        a], em que define um
conjunto de princípios e compromissos de transparência. Dentre os quais, vale destacar a
melhoria na disponibilização de dados abertos, o incentivo a estados e municípios a
implementar ações de governo aberto e a geração de um ecossistema de dados mais
suscetível a participação social e que possa ser bem utilizado pela comunidade científica.
      </p>
      <p>
        Desde a entrada da lei em vigor, em 2011, um grande volume de dados de interesse
público tem sido provido pelas entidades governamentais, sobretudo em seus Portais de
Transparência. Entretanto, são muitos os desafios até que essas entidades sejam capazes
de disponibilizar seus dados publicamente em conformidade com os compromissos
estabelecidos legalmente e em seus planos de ação. Neste contexto, em uma revisão
sistemática sobre dados abertos governamentais (OGD – Open Government Data),
        <xref ref-type="bibr" rid="ref6 ref7">De
Oliveira et al. (2018</xref>
        ) destacam: (i) a heterogeneidade na organização dos dados
Copyright © 2020 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
disponibilizados; (ii) a dificuldade em obtê-los, principalmente atualizados e, ainda; (iii)
a viabilidade de processamento dos dados nos formatos em que são liberados.
      </p>
      <p>Parte desse problema decorre do fato de cada entidade do Governo, nas diferentes
esferas Federal, Estadual e Municipal, ser responsável por publicar seus próprios dados,
como, por exemplo, determina a Lei Complementar 131/2009, relativa ao Orçamento
Público. Isso leva a ambientes geralmente independentes, com variações na organização,
formato, meio de acesso, além do escopo dos dados publicados em cada portal. Quando
há necessidade de trabalhar com os dados de diferentes entidades conjuntamente, seja
para rastreamento, busca por inconsistências, indícios de fraude, ou mesmo comparações,
é preciso lidar com um problema de interoperabilidade. Dessa maneira, uma importante
questão a ser tratada é possibilitar a utilização conjunta desses dados, favorecendo uma
interpretação mais coerente, o que perpassa desde uma representação consistente dos
dados até meios de consulta uniformes, independentemente da fonte.</p>
      <p>
        Uma abordagem que tem obtido sucesso em relação à representação, é o uso de
Ontologias para criar um modelo comum para os dados [
        <xref ref-type="bibr" rid="ref18">Santos et al. 2018</xref>
        ] [
        <xref ref-type="bibr" rid="ref6 ref7">De Giacomo
et al. 2018</xref>
        ] [
        <xref ref-type="bibr" rid="ref5">Cruz e Xiao 2005</xref>
        ]. Ontologias podem representar consistentemente o
conhecimento de um domínio, por meio de seus conceitos e relações, indicando a
interpretação desejada ao domínio, independentemente das aplicações específicas
pretendidas. Neste contexto, uma importante aplicação é seu uso como referência
semântica para a integração de dados [
        <xref ref-type="bibr" rid="ref5">Cruz e Xiao 2005</xref>
        ] [
        <xref ref-type="bibr" rid="ref10">Gruber 1991</xref>
        ], promovendo a
interoperabilidade de dados a partir de uma base comum para interpretação e redução de
inconsistências conceituais [
        <xref ref-type="bibr" rid="ref4">Campos, 2019</xref>
        ] [
        <xref ref-type="bibr" rid="ref11">Guarino, 1998</xref>
        ]. De fato, uma ontologia no
domínio de Despesa Pública pode servir como base conceitual, dando suporte à criação
de um ambiente integrado com um repositório comum abrigando, de forma homogênea,
dados obtidos de diferentes fontes. Isso facilita a realização de consultas, provendo
uniformidade para a organização e recuperação dos dados ao indicar sua semântica.
      </p>
      <p>
        Além disso, ainda é preciso obter os dados dos diversos portais de transparência
para popular este ambiente.
        <xref ref-type="bibr" rid="ref6 ref7">De Oliveira et al. (2018</xref>
        ) apontam a escassez de estudos
abordando a obtenção automática dos dados diretamente da fonte, geralmente exigindo o
download para que sejam, então, trabalhados. Uma alternativa é a utilização de
mecanismos de captura, como os baseados em web scraping, para navegar
automaticamente pelos portais obtendo os dados de interesse. Outro desafio é, após
capturar os dados, classificá-los e armazená-los corretamente em um repositório comum.
      </p>
      <p>Este trabalho propõe um ambiente capaz de representar uniformemente as
informações relativas à Despesa Pública obtidas de diferentes portais de transparência
disponibilizados pelas entidades governamentais. O ambiente captura os dados de um
conjunto selecionado de entidades e, baseado em uma Ontologia de Despesa Pública (nas
versões de referência e operacional), os armazena em um repositório comum, provendo
serviços de consulta homogêneos, a partir de um mesmo local, facilitando análises e
comparações sobre os dados das fontes selecionadas.</p>
      <p>O artigo está assim organizado: a seção 2 descreve as principais noções do
domínio de Despesa Pública; a seção 3 apresenta o desenvolvimento do ambiente
proposto; a seção 4 discute os trabalhos correlatos; e a seção 5 as considerações finais.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Execução de Despesa no Orçamento Público</title>
      <p>No contexto de dados abertos governamentais (OGD), um aspecto relevante para a
promoção da transparência é o entendimento acerca dos gastos efetuados pelo governo,
envolvendo o Orçamento Público e, mais especificamente, execução da Despesa Pública.</p>
      <p>
        O Orçamento Público é o instrumento de planejamento feito pelo governo para
estimar a arrecadação no decorrer do ano subsequente e autoriza um limite a ser gasto
com esses recursos [
        <xref ref-type="bibr" rid="ref2">Brasil 2020</xref>
        a]. O processo orçamentário é constituído por quatro
etapas: (i) elaboração, (ii) aprovação, (iii) execução e (iv) controle. Este trabalho tem
interesse nos dados disponibilizados referentes a etapa (iii), de execução orçamentária.
Neste domínio há uma variedade de conceitos descritos no Manual Técnico Orçamentário
- MTO [
        <xref ref-type="bibr" rid="ref2">Brasil 2020</xref>
        b], que são apresentados resumidamente no Quadro 1.
      </p>
      <p>
        Quadro 1. Dicionário de Orçamento Público [
        <xref ref-type="bibr" rid="ref2">Brasil 2020</xref>
        b]
      </p>
      <p>
        Despesa Pública é definida por meio de um sistema de classificação estruturado
[
        <xref ref-type="bibr" rid="ref2">Brasil 2020</xref>
        b], que permite sua identificação quanto a importância e o monitoramento do
destino do dinheiro público. Ela pode ser dividida em blocos de classificação,
respondendo perguntas a respeito de uma determinada despesa, como mostra o Quadro 2.
      </p>
      <p>
        Quadro 2. Classificações - adaptado do MTO [
        <xref ref-type="bibr" rid="ref2">Brasil 2020</xref>
        b]
A Figura 1 apresenta um exemplo de uma despesa classificada, incluindo sua codificação.
      </p>
      <p>Figura 1. Exemplo estrutura (parcial) - Manual Técnico do Orçamento (2020)
De acordo com a Lei 4.320/64, a execução da despesa pública deve passar por três
estágios: empenho, liquidação e pagamento. No empenho, o governo assume o
compromisso de contratar e realizar o gasto reservando o dinheiro para tal. Nesta etapa é
criada uma nota de empenho, documento que indica o credor, a representação e a
importância da despesa. Na liquidação, será feita a verificação se o produto, serviço ou
obra cumpriu toda a obrigação descrita no empenho. No último estágio, o governo realiza,
enfim, o pagamento ao credor pelo serviço ou produto fornecido.</p>
      <p>Licitação é a forma com que a Administração Pública pode realizar compras e
vendas de produtos e serviços, conforme define a Lei 8.666/63. É lançado um edital
referente a uma licitação com o objeto bem definido, prazos e condições gerais de
participação. Os interessados enviam propostas e, ao final do processo, é feito o
julgamento e classificação, sendo declarado vencedor da licitação aquele que apresentar
proposta mais vantajosa; e, assim, é chamado para a assinatura do contrato.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Ambiente de Integração</title>
      <p>O ambiente proposto visa lidar com os dados de despesa pública, desde sua captura e
armazenamento até a disponibilização para consultas. A Figura 2 apresenta os principais
componentes de sua arquitetura: (A) um Modelo Comum capaz de representar
consistentemente os dados pretendidos, e dar origem ao repositório a ser populado;
(B) Mecanismos de Captura para obter os dados conforme são disponibilizados pelas
entidades governamentais e armazená-los no repositório comum; e (C) Meios de Consulta
para permitir acesso uniforme aos dados pelos usuários.</p>
      <p>O modelo comum foi criado com base em uma Ontologia de Referência no
domínio de Despesa Pública. Tal ontologia tem o papel de representar consistentemente
os conceitos e relações do domínio, de forma a suportar os dados de despesa pública de
diferentes fontes, servindo como referência semântica do ambiente. Esta referência é
fundamental tanto para uma compreensão clara do domínio abordado como para orientar
e fornecer os termos e sentidos adequados para a captura, armazenamento dos dados e
realização das consultas. A partir da ontologia de referência, é derivada uma ontologia
operacional para guiar o armazenamento dos dados obtidos nos portais de transparência.
Além de viabilizar o armazenamento padronizado, independentemente da fonte, a
ontologia operacional dá origem ao repositório que pode ser computacionalmente
processado, permitindo consultas e inferências sobre os dados. Ver bloco A na Figura 2.</p>
      <p>Figura 2. Arquitetura do Ambiente</p>
      <p>Os mecanismos de captura são construídos para obter os dados dos portais de
transparência, fontes oficiais de divulgação, e armazená-los no repositório do ambiente.
Para cada portal pode ser elaborado um plugin que captura os dados usando técnicas de
web scraping. Esta atividade também pode ser feita por outros meios, tais como por APIs
ou download em formatos específicos (e.g. CSV), conforme provido pelos portais. Um
mapeamento dos tipos de dados disponíveis em cada portal para os conceitos da ontologia
favorece a compreensão dos dados e indica quais porções devem ser capturadas. Os dados
são armazenados temporariamente em formato JSON em um esquema similar ao de cada
fonte de dados. Em seguida, são tratados para limpeza e ajustes necessários, e
transformados em triplas RDF conforme o mapeamento com a ontologia. Assim, os dados
disponíveis em cada portal específico ganham uma nova representação, agora
padronizada, em um modelo comum, conforme a ontologia. As triplas geradas formam o
repositório comum do ambiente com os dados obtidos. Ver bloco B na Figura 2.</p>
      <p>Os meios de consulta são acessados por uma página web. Um usuário ou agente
externo pode acessar o repositório criado com a ontologia e o conjunto completo de triplas
(OWL+RDF) e realizar consultas específicas em SPARQL, ou acessar consultas
préestabelecidas navegando na página. Vale destacar que no ambiente as consultas possuem
o mesmo formato, independentemente da entidade governamental a ser pesquisada, sendo
possível, inclusive, obter e comparar dados de entidades distintas na mesma consulta. Ver
Bloco C na Figura 2. Detalhes dos componentes do ambiente são descritos a seguir.
3.1. Ontologia de Despesa Pública
A Ontologia de Despesa Pública constitui a base semântica do ambiente, atuando em duas
versões: de referência, buscando representar fielmente a conceituação do domínio de
despesa pública e prover a fundamentação ao ambiente como um todo; e operacional,
para permitir a população dos dados em um formato padronizado, uniformizando o
armazenamento, processamento e consultas.</p>
      <p>
        A Ontologia de Referência foi desenvolvida com base no método SABiO [
        <xref ref-type="bibr" rid="ref8">Falbo
2014</xref>
        ], tomando como fonte as Leis 4.320/64 (controle de orçamento) e 8.666/93
(licitações e contratos) e seus materiais derivados; ontologias relacionadas, tais como
[Bassetti et al. 2014] e [Araújo, et al. 2015]; e análises dos dados disponíveis nos portais
de transparência. O seu escopo priorizou os conceitos e relações mais frequentemente
usados nos portais pesquisados, para viabilizar consultas mais úteis e consistentes. Assim,
a versão da ontologia aqui apresentada não tem intenção de ser extensiva / completa, mas
sim de representar o universo de discurso necessário a este trabalho.
      </p>
      <p>
        A ontologia é fundamentada em UFO e modelada em OntoUML, visando maior
expressividade na representação do domínio e facilidades na transformação para a
ontologia operacional. UFO é uma ontologia de fundamentação que define distinções
úteis para compreender e representar um domínio. São providas distinções básicas tais
como sortais rígidos (kind) e antirrígidos (role, phase); mediadores em relações materiais
(relator), além de não sortais para generalizações (category, rolemixin). A linguagem
OntoUML captura essas distinções em uma extensão da UML, e tem sido usada na
construção de modelos conceit
        <xref ref-type="bibr" rid="ref20">uais em diversos domínios [DoD 2011</xref>
        ] [
        <xref ref-type="bibr" rid="ref15">Pergl et al. 2013</xref>
        ].
UFO e OntoUML são descritas em detalhes em [
        <xref ref-type="bibr" rid="ref13">Guizzardi 2005</xref>
        ] [
        <xref ref-type="bibr" rid="ref12">Guizzardi et al. 2018</xref>
        ].
      </p>
      <p>O modelo está organizado nas subontologias de Entidade Governamental,
Licitação e Contrato e Execução de Despesa. A Figura 3 mostra a subontologia de
Entidade Governamental, representando as entidades públicas simplificadamente. A
categoria Governo generaliza as três esferas da federação: Governo Federal, Governos
Estaduais e Governos Municipais. Estes são compostos por Órgãos que, por sua vez,
podem assumir o papel de Unidades Gestoras quando responsáveis por gerir os recursos
financeiros públicos por meio de Processos.</p>
      <p>Figura 3. Subontologia de Entidade Governamental</p>
      <p>Processos administrativos são abertos iniciar o procedimento de realização de
gastos públicos. Tipicamente, um Processo Licitatório, dá origem a uma licitação, ou
sua dispensa, para se estabelecer um contrato que contemple os gastos pretendidos. Pode
ocorrer ainda um Processo de Execução, que permite a realização de despesas
diretamente, sem contrato ou licitação, em casos de emergência ou calamidade pública,
serviços de baixo custo, e outros itens descritos nos Art. 24 e 62 da Lei 8.666/93.</p>
      <p>A Figura 4 descreve Licitações e Contratos. Uma Ação Licitatória ocorre com o
objetivo de se estabelecer um Contrato da Unidade Gestora com um Credor. Tal ação
pode ser uma Licitação, ou uma Dispensa de Licitação, conforme os casos previstos em
lei, dando origem aos respectivos Contratos. Uma vez estabelecido o Contrato com um
Credor (seja uma Pessoa ou Empresa), as despesas podem ser executadas. Como
exemplo, a Licitação 20/2018, estabelecida pelo Processo 15525/2018 gerido pela
Prefeitura da Serra, dá origem ao Contrato 111/2018, relacionando os Empenhos
73/2020 e 183/2019, cujo Credor é a empresa Cac Comercial Ltda. As etapas do processo
licitatório foram omitidas no diagrama, pois o foco não é o fluxo do processo, mas o seu
resultado, capaz de gerar despesa, tal qual está disponível nos portais de transparência.</p>
      <p>Figura 4. Subontologia de Licitação e Contrato</p>
      <p>Os atos de Empenho, Liquidação e Pagamento de uma Despesa, generalizados
como Execução Despesa, são registrados mediante um Contrato (ou Processo de
Execução, nas exceções mencionadas) da Unidade Gestora, beneficiando um Credor,
conforme mostra a Figura 5.</p>
      <p>Figura 5. Subontologia de Execução de Despesa</p>
      <p>
        Cada registro dos atos de Empenho, Liquidação ou Pagamento eventualmente
altera a classificação da Despesa (para Despesa Empenhada, Despesa Liquidada e/ou
Despesa Paga), que pode estar desempenhando um, dois ou os três papeis ao mesmo
tempo. Por exemplo, quando uma dada despesa está empenhada, mas já foi parcialmente
liquidada e paga
        <xref ref-type="bibr" rid="ref1">(no exemplo anterior, no Empenho 73/2020, dos R$ 4.482,00
empenhados, apenas R$ 1.892,40 foram liquidados e pagos até maio/2020)</xref>
        . Assim, toda
Despesa é criada como uma Despesa Empenhada, mas pode assumir também as demais
classificações conforme os atos de Liquidação e de Pagamento são registrados. Além
disso, a Despesa pode ser classificada com diversas informações: quanto à Ação, que faz
parte de um Programa, SubFunção, que faz parte de uma Função, Subtítulo, e
Natureza de Despesa, que é composta por Categoria Econômica, Grupo de Natureza
e Modalidade de Aplicação, conforme descritos na Seção 2. Por exemplo, o Empenho
73/2020, está associado à Ação 1284 - Serra Mais Você, Programa 70 - Serra Mais
Participativa, SubFunção 122 - Administração Geral, Função 4 - Administração,
Categoria Econômica 3.0.00.00 - Despesas Correntes, Grupo de Natureza 3.3.00.00
Outras Despesas Correntes, Modalidade de Aplicação 3.3.90.00 - Aplicações Diretas.
      </p>
      <p>A Ontologia Operacional é derivada a partir da ontologia de referência,
realizando-se algumas tarefas de projeto (design) para adequar o modelo para a
implementação e uso pretendidos. A linguagem de destino definida é OWL, por permitir
maior diversidade de ferramentas e facilidades de consulta. Assim, o modelo, em
OntoUML, passa por simplificações, como a redução de algumas classes e
relacionamentos, para possibilitar melhor correspondência com os dados obtidos, além
de otimizar as consultas. Por exemplo, foram criadas relações derivadas (e.g. Processo
estabelece Execução Despesa) e as hierarquias referentes a Processo, Licitação,
Contrato e Credor foram reduzidas a uma classe cada, com atributos para determinar
seus tipos. Tal simplificação, no entanto, não foi aplicada às hierarquias referentes a
Execução de Despesa e Despesa, pois implicaria na redução da capacidade de
representar informações relevantes. Esse processo tende a causar perdas semânticas em
relação à ontologia de referência, que visa representar fielmente o domínio do problema.
Entretanto, a ontologia operacional resultante está mais focada em garantir que os dados
tipicamente disponíveis nos portais sejam adequadamente representados e processados.</p>
      <p>
        A partir do modelo adaptado (design), a Ontologia Operacional foi gerada como
um arquivo OWL utilizando a ferramenta Menthor
(https://github.com/MenthorTools/menthoreditor). Assim, a operacionalização ocorre, permitindo a criação das instâncias segundo a
ontologia desenvolvida, mantendo as relações definidas entre os conceitos, e podendo ser
interpretada por agentes computacionais e sofrer consultas.
3.2.Obtenção de Dados
Antes de capturar os dados providos pelas entidades governamentais, é preciso
compreender as informações disponíveis e como serão organizadas no repositório
comum. Inicialmente é necessária uma análise do site ou arquivo disponível para
compreender sua estrutura. Em seguida, técnicas de mapeamento vertical [
        <xref ref-type="bibr" rid="ref3">Calhau e Falbo
2010</xref>
        ] [
        <xref ref-type="bibr" rid="ref17">Ruy 2017</xref>
        ] são aplicadas para associar os tipos de dados da fonte aos conceitos da
ontologia. Dessa forma, o mapeamento é feito observando-se a semântica dos dados (e
não apenas os termos utilizados) para identificar a quais classes as instâncias serão
atribuídas posteriormente no repositório. Assim, além de atribuir ao dado a semântica
definida pela ontologia de domínio, o mapeamento também facilita a criação dos
algoritmos de busca e transformação dos dados.
      </p>
      <p>O Quadro 3 demonstra o mapeamento realizado para quatro entidades
governamentais. Foram escolhidas entidades de diferentes esferas para experimentar uma
maior variação dos tipos de dados. Além do Brasil, na esfera federal, foi escolhido o
estado do Espírito Santo por ser avaliado com bom grau de transparência1, e dois
1 Open Knowledge Brasil: https://transparenciacovid19.ok.org.br/
municípios de sua região metropolitana: Serra e a capital, Vitória. As entidades
selecionadas possuem portais de transparência em efetivo funcionamento, provendo os
dados necessários para lidar com despesa pública neste trabalho.</p>
      <p>Quadro 3. Mapeamento dos Tipos de Dados para a Ontologia de Despesa Pública</p>
      <p>
        A partir do mapeamento e da compreensão da estrutura de cada portal almejado,
foram construídos plugins de captura de dados aplicando web scraping. Esta técnica usa
agentes computacionais para navegar em páginas web e coletar dados, mantendo sua
estrutura [
        <xref ref-type="bibr" rid="ref16">Reitz e Schlusser 2016</xref>
        ], e é comumente utilizada quando os dados são
disponibilizados em formatos pouco ou não estruturados. A cada adição de nova fonte de
dados um plugin é criado, desenvolvendo uma parte específica dos scripts de captura e
reutilizando uma parte genérica parametrizável, com base em princípios de navegação e
na semântica e mapeamentos com a ontologia. Quando há portais de entidades distintas
utilizando o mesmo sistema de disponibilização de dados, plugins podem ser reutilizados.
Vale mencionar que nos portais utilizados como exemplo neste trabalho, as outras opções
disponíveis de obtenção dos dados (por download ou API) não forneciam os mesmos
dados que estão acessíveis na página do portal, deixando de fora informações relevantes
(como números de notas de empenho, liquidação e pagamento das despesas). Assim, é
importante selecionar o modo de extração que forneça o conjunto de dados mais
apropriado para popular o repositório.
      </p>
      <p>O mecanismo de captura armazena temporariamente os dados em formato JSON
seguindo uma estrutura similar à do site de origem, para, então, convertê-los em triplas
RDF com um script que usa a biblioteca RDFLIB (https://rdflib.readthedocs.io/). O script
implementa o mapeamento para garantir que os dados a serem instanciados nas triplas
respeitem o esquema estabelecido em OWL, sendo, assim, reflexo da ontologia. Os dados
em formato de triplas RDF podem, então, ser consumidos por agentes computacionais.
A Figura 6 mostra, como exemplo, o mesmo dado da classe Execução de Despesa
representado, primeiro, em JSON e, então, transformado em triplas RDF.</p>
      <p>Figura 6. Exemplo de Transformação de Dado JSON para RDF</p>
      <p>Ao final de cada atividade de captura, o repositório é populado com os dados do
portal selecionado. À medida que mais portais são selecionados, o repositório cresce em
volume de dados e possibilidades de consultas, formando o repositório comum almejado.
Uma vez criado o plugin de captura para determinado portal, este pode ser executado
sempre que for conveniente ou de forma agendada, atualizando os dados no repositório.
3.3. Consultas
As consultas ao repositório ficam acessíveis por meio de uma página web, de duas formas
principais. A primeira, voltada ao cidadão comum, oferece consultas já preparadas,
respondendo a questões típicas, pré-estabelecidas. O repositório também pode ser
acessado por um endpoint, para que especialistas, com conhecimento em SPARQL,
possam explorar o conjunto de dados de forma livre. Os dados de diferentes entidades
governamentais estão representados da mesma forma no repositório, possibilitando
aplicar a mesma consulta (query) para quaisquer entidades da base. Além disso, uma
única consulta pode buscar informações de diferentes entidades públicas, o que facilita
comparações, evitando o esforço de buscar nos diversos portais e em variados formatos.</p>
      <p>Outra possibilidade é a realização de consultas mais elaboradas buscando nos
campos textuais (e.g. descrição da despesa), o que não é frequentemente disponibilizado
pelos portais de transparência. Por exemplo, considere o Empenho 1719/2020 da
Prefeitura de Vitória, referente a Cobrir despesas com aquisição de álcool gel. Com a
busca padrão oferecida no portal da prefeitura, só é possível filtrar os empenhos por
elemento de despesa do tipo Material de Consumo. Já no ambiente, realizando a consulta
pelo texto dos campos, pode-se filtrar os empenhos cuja descrição contenha, por exemplo,
expressões como “álcool gel”, “máscara” ou “respirador”. Além disso, é possível realizar
a busca por informações de todas as entidades governamentais presentes no repositório,
afim de fazer um comparativo de informações das despesas (como preço, unidades,
fornecedores etc.), facilitando uma análise sobre quais entidades estão investindo mais
em determinado produto ou serviço, ou pagando menos por esses itens.</p>
      <p>Como exemplo, o código SPARQL a seguir realiza uma consulta agrupando
despesas, no ano de 2020, que contenham “álcool” em sua descrição. A Figura 7 apresenta
o resultado, considerando três entidades governamentais. O ambiente é flexível para
consultas, permitindo, por exemplo, comparações entre diferentes entidades, com anos
anteriores, ou verificando a relação do gasto com a quantidade de habitantes. De fato, a
partir da captura e representação uniforme dos dados no repositório, as possibilidades de
busca por meio das consultas são inúmeras.</p>
      <p>PREFIX ontoDesp: &lt;http://localhost/ontoDesp#&gt;
PREFIX xsd: &lt;http://www.w3.org/2001/XMLSchema#&gt;
PREFIX rdf: &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
select ?ano ?govName (sum(xsd:decimal(?valorEmpenho)) AS ?valorEmpenhado) where {
?gov rdfs:label ?govName .
?orgao ontoDesp:temGoverno ?gov .
?orgao ontoDesp:temUnidadeGestora ?ug .
?orgao rdfs:label ?orgaoDesc .
?ug ontoDesp:temProcesso ?processo .
?processo ontoDesp:temExecucao ?empenho .
?empenho ontoDesp:empenha ?desp .
?desp ontoDesp:temDescricao ?descricao .
?desp ontoDesp:temValorEmpenho ?valorEmpenho .
?desp ontoDesp:temAno ?ano .</p>
      <p>FILTER ( regex(?descricao, "alcool", "i") || regex(?descricao, "álcool", "i") )
} group by ?govName ?ano limit 1000</p>
      <p>Figura 7. Busca por Despesas específicas em Entidades distintas.</p>
    </sec>
    <sec id="sec-4">
      <title>4.Trabalhos Correlatos</title>
      <p>
        <xref ref-type="bibr" rid="ref6 ref7">De Oliveira et al. (2018</xref>
        ) relatam em seu mapeamento sistemático a dificuldade de
encontrar trabalhos contemplando todos os aspectos presentes no ambiente aqui proposto.
Em um trabalho com escopo semelhante,
        <xref ref-type="bibr" rid="ref19">Tosin et al. (2016)</xref>
        propõem “uma solução para
interligar bases de dados isoladas e disponibilizar estes dados de forma aberta e
conectada”. O trabalho almeja resolver o desafio de captura de dados abertos, incluindo
os governamentais, e sua disponibilização para consulta, em uma base unificada, usando
anotação semântica. A captura dos dados, realizada via APIs, embora tenha a vantagem
de demandar menos codificação, nem sempre é interessante para dados governamentais,
pois algumas entidades suprimem dados via API, deixando-os apenas nas páginas web.
O método usado no presente trabalho, adotando também web scraping, permite acesso
mais amplo aos dados, e resolve este problema de quantidade e qualidade diferente de
dados de acordo com o meio de acesso.
      </p>
      <p>
        Como modelo comum,
        <xref ref-type="bibr" rid="ref19">Tosin et al. (2016)</xref>
        adotam uma ontologia e a mapeiam
para um repositório de triplas para posterior consulta. Porém, tal ontologia é descrita
somente como uma anotação semântica, e o mapeamento é realizado majoritariamente
pela proximidade da nomenclatura, ansiando-se automatizar o processo com base na
similaridade dos nomes dos elementos. Tal solução poderia causar o problema do Falso
Acordo (False Agreement Problem), quando dados semanticamente diferentes, mas com
nomenclatura similar, são mapeados para o mesmo item semântico [
        <xref ref-type="bibr" rid="ref11">Guarino 1998</xref>
        ]. Isso
pode gerar interpretações diferentes da originalmente desejada nos dados consolidados.
No presente trabalho, foi aplicada uma ontologia de referência, e sua versão operacional,
com mapeamento focado na semântica dos dados, como forma de minimizar tal problema.
      </p>
      <p>
        Outro trabalho que se baseia em dados abertos governamentais, também com o
foco em disponibilizar uma consulta integrada é descrito em [
        <xref ref-type="bibr" rid="ref14">Monteiro e Gálvez 2012</xref>
        ],
abordando dados sobre vulnerabilidade social. Assim como em [Tosin et al. 2016],
utilizaram somente uma ontologia operacional para basear a integração de dados, com
menor foco em sua semântica. Tal escolha pode ser justificada pelo uso de poucas fontes
de dados e oriundas somente do governo federal. Porém, um tratamento semântico é
crucial, especialmente quando se busca integrar informações de fontes mais distintas,
como entidades governamentais em suas três esferas.
      </p>
      <p>Por fim, Bassetti et al. (2014) realizam um estudo de caso sobre a integração de
dados governamentais utilizando uma ontologia de organizações. Diferentemente dos
anteriores, este também utiliza uma ontologia de referência, realizando um mapeamento
para grafos em RDF e posterior possibilidade de consultas. Porém, os autores adotam um
escopo mais fechado, sem a intenção de prover um ambiente expansível, o que difere da
arquitetura aqui adotada, em que novas entidades governamentais podem ser adicionadas,
a depender da construção de novos plugins para os mecanismos de captura.</p>
    </sec>
    <sec id="sec-5">
      <title>5. Considerações Finais</title>
      <p>Dados governamentais sobre despesas públicas são frequentemente publicados de forma
não estruturada ou em formatos não padronizados. Como cada entidade do governo é
responsável individualmente por publicar seus dados, comumente as diferentes bases de
dados utilizam formatos distintos, havendo pouca padronização entre elas.</p>
      <p>Para abordar o problema de interoperabilidade gerado, este trabalho propõe um
ambiente pautado em três tópicos: captura, representação consistente e consultas aos
dados. A captura dos dados nas fontes diversas pode ser realizada de diferentes formas
(e.g. via web scraping, API ou download), conforme a que proporcionar maiores
benefícios em termos de acesso e qualidade do conteúdo obtido. Uma representação
consistente é obtida a partir da Ontologia de Despesa Pública (desenvolvida nas versões
de referência e operacional), para prover semântica ao ambiente, apoiando a captura,
armazenamento e consultas, além de orientar esforços na expansão do mesmo. O
mapeamento das fontes de dados para a ontologia favorece a compreensão dos dados e
guia os esforços de captura. Os dados são então armazenados em um repositório comum,
de maneira uniforme, independentemente de suas fontes. Finalmente, as consultas são
realizadas em um ambiente homogêneo, permitindo maior flexibilidade e poder de acesso
aos dados, incluindo o cruzamento das informações pretendidas.</p>
      <p>O ambiente tem arquitetura modular e é passível de extensão, inclusive por
esforços de terceiros. Seu núcleo (ontologia, repositório e estruturas de captura e
consultas) se mantém estável enquanto plugins para novas fontes de dados podem ser
adicionados. Como trabalhos futuros, pretende-se evoluir a ontologia; ampliar as
entidades governamentais alcançadas; disponibilizar o ambiente e adaptar a arquitetura
para facilitar a expansão por interessados; liberar o site com meios de consulta mais
intuitivos, como parametrização e seleção de campos de pesquisa; além de prover
resultados visuais mais elaborados, usando gráficos. Isso permitiria um uso mais amplo
pelo cidadão interessado sem conhecimentos técnicos de computação.</p>
      <p>Ademais, a arquitetura do ambiente poderia ser reutilizada em outros contextos
que demandem integração semântica de dados abertos disponibilizados por diferentes
fontes. Naturalmente, uma nova ontologia e adaptações para o domínio específico seriam
necessárias. Além dos dados governamentais, é possível observar demanda crescente por
integração de dados, por exemplo, nas áreas de saúde (e.g. durante a pandemia de
COVID-19) e financeira (para acompanhamento de índices e cotações de ativos diversos).
Araújo, L.S.O, Santos, M.T. and Silva, D.A. (2015) The Brazilian federal budget
ontology: a semantic web case of public open data. In Proceedings of the 7th
International Conference on Management of computational and collective intElligence
in Digital EcoSystems, pp. 85-89.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <string-name>
            <surname>Brasil</surname>
          </string-name>
          ,
          <article-title>Ministério da Transparência e Controladoria-Geral da União</article-title>
          , Secretaria de Transparência e Prevenção da Corrupção, Diretoria de Transparência e Controle Social, Coordenação Geral de Governo Aberto e Transparência, (
          <year>2020a</year>
          ), “4º Plano de Ação Nacional em Governo Aberto”, Disponível em: https://www.gov.br/cgu/ptbr/governo-aberto/noticias/2018/4o-plano
          <article-title>-de-acao-brasileiro-e-lancado-em-reuniaocom-coordenadores/4o-plano-de-acao-nacional_portugues</article-title>
          .pdf/view, Junho/
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>Brasil</surname>
          </string-name>
          , Ministério da Economia.
          <article-title>Secretaria Especial da Fazenda, Secretaria do Orçamento Federal (</article-title>
          <year>2020b</year>
          ).
          <source>Manual Técnico de Orçamento MTO. Versão</source>
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>Calhau</surname>
            ,
            <given-names>R.F.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Falbo</surname>
            ,
            <given-names>R.A.</given-names>
          </string-name>
          (
          <year>2010</year>
          )
          <article-title>An Ontology-based Approach for Semantic Integration</article-title>
          .
          <source>In: 14th IEEE International Enterprise Distributed Object Computing Conference</source>
          , Vitória. Los Alamitos: IEEE Computer Society, pp.
          <fpage>111</fpage>
          -
          <lpage>120</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <surname>Campos</surname>
            ,
            <given-names>P.M.C.</given-names>
          </string-name>
          (
          <year>2019</year>
          )
          <article-title>Designing a Network of Reference Ontologies for the Integration of Water Quality Data</article-title>
          .
          <source>Master Thesis</source>
          , Federal University of Espírito Santo.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <surname>Cruz</surname>
            ,
            <given-names>I.F.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Xiao</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          (
          <year>2005</year>
          )
          <article-title>The Role of Ontologies in Data Integration</article-title>
          .
          <source>Journal of Engineering Intelligent Systems</source>
          , vol.
          <volume>13</volume>
          , p.
          <fpage>245</fpage>
          -
          <lpage>252</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <surname>De Giacomo</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lembo</surname>
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lenzerini</surname>
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Poggi</surname>
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rosati</surname>
            <given-names>R.</given-names>
          </string-name>
          (
          <year>2018</year>
          )
          <article-title>Using Ontologies for Semantic Data Integration</article-title>
          . In: Flesca S.,
          <string-name>
            <surname>Greco</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Masciari</surname>
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Saccà</surname>
            <given-names>D</given-names>
          </string-name>
          .
          <article-title>(eds) A Comprehensive Guide Through the Italian Database Research Over the Last 25 Years</article-title>
          .
          <article-title>Studies in Big Data</article-title>
          , vol
          <volume>31</volume>
          . Springer, Cham.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <surname>De Oliveira</surname>
            ,
            <given-names>E.F.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Silveira</surname>
            ,
            <given-names>M.S.</given-names>
          </string-name>
          (
          <year>2018</year>
          )
          <article-title>Open government data in Brazil a systematic review of its uses and issues</article-title>
          .
          <source>Proceedings of the 19th Annual International Conference on Digital Government Research: Governance in the Data Age. ACM.</source>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <surname>Falbo</surname>
            ,
            <given-names>R.A.</given-names>
          </string-name>
          (
          <year>2014</year>
          )
          <article-title>SABiO: Systematic Approach for Building Ontologies</article-title>
          .
          <source>In Proceedings of the 1st Joint Workshop ONTO.COM / ODISE on Ontologies in Conceptual Modeling and Information Systems Engineering</source>
          , FOIS.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          <string-name>
            <surname>Fonseca</surname>
            ,
            <given-names>L.B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Azevedo</surname>
          </string-name>
          ,
          <string-name>
            <surname>C.L.B. e Almeida</surname>
            ,
            <given-names>J.P.A.</given-names>
          </string-name>
          (
          <year>2014</year>
          )
          <article-title>Mapeando Dados Governamentais com uma Ontologia de Organizações. LOD Brasil Linked Open Data</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <string-name>
            <surname>Gruber</surname>
            ,
            <given-names>T.R.</given-names>
          </string-name>
          (
          <year>1991</year>
          )
          <article-title>The Role of Common Ontology in Achieving Sharable, Reusable Knowledge Bases, in Principles of knowledge representation and reasoning</article-title>
          : Proceedings of the Second International Conference.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          <string-name>
            <surname>Guarino</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          (
          <year>1998</year>
          )
          <article-title>Formal Ontology and Information Systems</article-title>
          .
          <source>In Proceedings of the International Conference on Formal Ontology and Information Systems</source>
          , pp.
          <fpage>3</fpage>
          -
          <lpage>15</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          <string-name>
            <given-names>Guizzardi G.</given-names>
            ,
            <surname>Fonseca</surname>
          </string-name>
          <string-name>
            <given-names>C.M.</given-names>
            ,
            <surname>Benevides</surname>
          </string-name>
          <string-name>
            <given-names>A.B.</given-names>
            ,
            <surname>Almeida</surname>
          </string-name>
          <string-name>
            <given-names>J.P.A.</given-names>
            ,
            <surname>Porello</surname>
          </string-name>
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Sales</surname>
          </string-name>
          <string-name>
            <surname>T.P.</surname>
          </string-name>
          (
          <year>2018</year>
          )
          <article-title>Endurant Types in Ontology-Driven Conceptual Modeling: Towards OntoUML 2.0</article-title>
          . In: Trujillo J. et al. (
          <article-title>eds) Conceptual Modeling</article-title>
          .
          <source>ER 2018. Lecture Notes in Computer Science</source>
          , vol
          <volume>11157</volume>
          . Springer, Cham. https://doi.org/10.1007/978- 3-
          <fpage>030</fpage>
          -00847-5_
          <fpage>12</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          <string-name>
            <surname>Guizzardi</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          (
          <year>2005</year>
          )
          <article-title>Ontological Foundations for Structural Conceptual Model, CTIT - Centre for Telematics and</article-title>
          Information Technology, University of Twente, Doctoral Thesis.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          <string-name>
            <surname>Monteiro</surname>
            ,
            <given-names>A.C.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Gálvez</surname>
            <given-names>L.E.Z.</given-names>
          </string-name>
          (
          <year>2012</year>
          ).
          <article-title>Prospects and limitations in the context of knowledge discovery in database for manipulation of domains through ontologies to support the modeling of data warehouse - Case study in social databases</article-title>
          .
          <source>XXXVIII Conferencia Latinoamericana En Informatica (CLEI).</source>
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          <string-name>
            <surname>Pergl</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sales</surname>
            ,
            <given-names>T.P.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Rybola</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          (
          <year>2013</year>
          )
          <article-title>Towards OntoUML for software engineering: from domain ontology to implementation model</article-title>
          .
          <source>In International Conference on Model and Data Engineering</source>
          , pp.
          <fpage>249</fpage>
          -
          <lpage>263</lpage>
          . Springer, Berlin, Heidelberg.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          <string-name>
            <surname>Reitz</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Schlusser</surname>
            <given-names>T.</given-names>
          </string-name>
          (
          <year>2016</year>
          )
          <article-title>The Hitchhiker's Guide to Python: Best Practices for Development, O'Reilly Media, 1st edition</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          <string-name>
            <surname>Ruy</surname>
            ,
            <given-names>F.B.</given-names>
          </string-name>
          (
          <year>2017</year>
          )
          <article-title>Software Engineering Standards Harmonization: An Ontology-based Approach</article-title>
          .
          <source>PhD Thesis</source>
          , Federal University of Espírito Santo.
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          <string-name>
            <surname>Santos</surname>
            ,
            <given-names>L.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Miranda</surname>
            ,
            <given-names>G.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Campos</surname>
            ,
            <given-names>S.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Falbo</surname>
            ,
            <given-names>R.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barcellos</surname>
            ,
            <given-names>M.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Souza</surname>
            ,
            <given-names>V.E.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Almeida</surname>
            ,
            <given-names>J.P.</given-names>
          </string-name>
          (
          <year>2018</year>
          ).
          <article-title>Using an Ontology Network for Data Integration: A Case in the Public Security Domain</article-title>
          . Ontobras, São Paulo.
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          <string-name>
            <surname>Tosin</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rigo</surname>
            ,
            <given-names>S.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barbosa</surname>
            ,
            <given-names>J.L.V.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Rodrigues</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>2016</year>
          )
          <article-title>A model for data integration in open and linked databases with the use of ontologies</article-title>
          .
          <source>35th International Conference of the Chilean Computer Science Society (SCCC) Part F1262.</source>
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          <string-name>
            <surname>U.S</surname>
          </string-name>
          . Department of Defense - DoD (
          <year>2011</year>
          ),
          <article-title>Data Modeling Guide (DMG) For an Enterprise Logical Data Model</article-title>
          ,
          <year>V2</year>
          .
          <volume>3</volume>
          ,
          <issue>15</issue>
          <year>March 2011</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>