Boa tarde, tudo bem? Eu me chamo Vinícius e hoje vou te mostrar como é que funciona o Base X, quais são as suas aplicações, para que serve, o que quer esse tal de base? Então vamos lá.
O basex ele é um banco de dados nativo para XML, arquivos no formato pon XML. Ele é projetado nativamente para isso, especificamente para armazenar, consultar, gerenciar dados XML diretamente e sem necessidade de converter nada. Ele é criado em Java, multiplataforma e é de código aberto.
Facilita muito também. de código aberto é de graça. Ideal para situações onde XML é o formato central dos dados, onde o banco de dados central vai ser XML, você vai usar o base X.
Tem integração de sistemas, bibliotecas digitais, serviços web, um slidezinho você consegue ver melhor como é que funciona, né? É adequado para integração de sistemas e bibliotecas, bancos de dados nativos XML implementado em Java e de código aberto. Tudo isso aqui contempla o base X, beleza?
Bom, não podemos falar de XML, de base X, sem falar de X Carry, que no caso é onde você refere suas consultas dentro do base X, beleza? Ou seja, XML vai ser o formato nativo do banco de dados, da estrutura dos seus dados. O XML, o que significa XML?
Significa extensible, Mercup, linguagem. É basicamente é arquivo de texto, né? XML é como se fosse um banco de dados orientado a texto, podemos dizer assim.
O XC é a linguagem padrão W3C consulta e manipula documentos XML, ou seja, a gente precisa do do Xcry XY para manipular os documentos XML. Ele é semelhante ao SKL, porém é especializado para XML. Ele é essencial no Basex para recuperar informações específicas em grandes coleções, né?
Você conseg consultar informações que você quer baseado em texto. Ou seja, XML estrutura e troca os dados e o XCY consulta e manipula os dados. Quais são os principais recursos do base X?
Eh, consultas eficientes, né, através de índices, mecanismos internos que aceleram as buscas em dados, garantindo autodesempenho. Também contém a interface gráfica, né, o GI, que é um ambiente visual para criar e gerenciar bancos. Você coloca lá o bancado vocêquer, executar as consultas, visualizar os resultados, tudo isso aí é no ambiente, é no interface gráfica.
também possui o cliente servidor, né? Permite acesso remoto, simultâneo, facilitando aplicações web e multiusuário. E o XCry update é uma extensão para modificar os dados XML diretamente.
É um crud. O X, o X carry update é um crud, ele insere, atualiza e elementos. Ou seja, o Cry update é o crud do base X.
O que é crud? Crud é justamente isso, é se inserir, atualizar, excluir elementos, tá? Por quando escolheu o base X?
Você vai escolher o base X para usar quando as suas aplicações, o XML é o formato primário e constante, é o que mais tem nas suas na sua aplicação atual. O projeto exige consulta complexa e rápida em documentos XML. eh sistemas de integração com diferentes fontes de dados XML, como plataformas científicas, plataformas de contabilidade, documentos e também necessita de aderência total aos padrões abertos, que é o Xcarry, o Xpet e o esquema XML, né, que é esquema XML universal.
Isso aqui também está, o que eu falei agora, está nesse formato slide para ficar facilitar mais na compreensão. Bom, agora eu vou te mostrar como instala o base X, tá bom? Agora eu vou te mostrar como é que a gente faz o download do Base X.
a instalação. Beleza? Bom, você vai aqui no baseex.
org, que é o dxml framework, que falam aqui tem um textinho falando como é de código aberto. É de graça, é fácil de super fácil de instalar como se fosse sair de uma caixa, que esse é o logo esquema deles, né? Você vem aqui em download base, vai abrir essa outra página, você vai escolher baseado no seu sistema operacional.
Aqui tem vários, né? Como o meu é o Windows, eu vou escolher esse daqui que é o para Windows, né? Pronto.
Vou já deixar aqui, né? Eu já tenho ele aqui, né? Eu já baixei, então não vou baixar de novo.
E primeiro, antes de tu prosseguir com a instalação, tu baixou aqui o instalador, né? Mas antes de tu prosseguir com a instalação, vem aqui, abre o prompt de comando como administrador ou o Power Shell, você que sabe. Bota Java version e verifica se tem a última versão do Java instalado, tá?
Se não, instala o Java. Beleza? É bem facinho.
Só faz a instalação do Java antes para seguir com base X, tá? Pronto, baixou aqui o base X, você tem ele, você vai executá-lo. Cadê?
Você vem aqui, executa, next. I accept. Next.
Next. Aqui no caso você vai botar e o password pro usuário admin padrão. Uso, tipo, eu por exemplo botei admin, o password também botei admin, tá?
Vai deixar tudo isso aqui marcado. Vai criar um shortcut no desktop, né? que é criar no menu de start aqui, né?
Botar também o XCry aos arquivos XML. Muito importante esses dois aqui também tá preenchidos, tá? Aí você vai dar install.
Eu não vou dar instal porque eu já instalei, mas basicamente é isso. Aí você já tem um base instalado na sua máquina. Vamos para o próximo passo.
Bom, o próximo passo agora seria você ter uma base de dados XML para testar e validar a aplicação. No caso, eu utilizei esse Demonia ou Database e pesquise aí no Google Demon ou Database, você vai chegar até essa página. Aqui tá o link caso precise.
Bom, o que nos interessa para testar essa aplicação são o arquivo XML. Beleza? Aqui tem explicando, tem vários tipos de formatos desse database em específico.
Eu vou aqui no XML, tá? É demondial database XML Demondel. Bom, vou clicar aqui XML file para poder ter acessar ao arquivo XML.
Vai abrir isso aqui, essa página. Ignora isso aqui, tá? Só espera, aguarda um pouquinho.
Pronto, aqui carregou. Tá vendo? Carregou o XML aqui todinho, ó.
Enorme. Enorme. Você vai vir aqui, ó, salvar.
Como eu já salvei, então não vou salvar de novo. Por isso que apareceu um aqui, porque ass vez eu salvo é o ponto XML e formato XML. Bom, agora eu vou te mostrar como é que a gente vai importar aquele dataset que a gente baixou XML aqui dentro do base X.
Bom, eu já fiz isso, como você pode ver, tá aqui o dataset mundial. XML, tava até fazendo as constru aqui, ó. Mas para importar você vai vir em database, vai apertar em new.
vai abrir esse espaço aqui, create database aqui, input file diretório vai ser o arquivo do database que você vai colocar. Beleza? Você vai aqui em browser, você vai onde o arquivo tá, que no meu caso tá na área de trabalho.
Mundial. XML open. Bom, tá aqui.
Como eu acho que já tenho esse arquivo aqui é upado, ele não vai deixar abrir upar o mesmo arquivo. Você vai botar aqui, apertar open. Aí, beleza, ele vai selecionar o mundial Bom XML.
Ó, como já tá aqui selecionado, eu não podia selecionar de novo porque eu já tenho ele aqui. O nome do database eu botei mundial mesmo, o formato XML, OK? Você vai dar OK, ele vai e executar, né, esse banco de dados e vai aparecer aqui para vocês, beleza?
Sobre você upar o arquivo do Basex, é isso. Agora que a gente tem o arquivo pronto para começar a fazer as consultas, eu vou te mostrar como é que a gente vai pra parte das consultas, OK? Show.
Eu preparei esse documento aqui, ó. Deixa eu organizar aqui. Pronto.
Vou explicar primeiro como é que funciona as consultas dentro do BX X, né, o XC. Bom, o XML ele é estruturado em nós, ele é formado por elementos, que são as tags, atributos, suas informações dentro das tags e os textos que são os valores. OK?
As consultas são feitas usando XCry. Como é que eu faço consulta usando XCry? vai vir assim, ó, de padrão, o big, o basex, vai vir assim, ó, find.
Você vai vir aqui e botar em X carry, OK? Aí você vai começar com suas consultas, ó, vou te dar um exemplo, tá bem bonito com SQL, eh, for, é, isso daqui é padrão do base X, tá? O arquivo é o arquivo que eu de tá sendo executado.
For encoun que é o país. Heron name que é o texto. Se eu pegar essa consulta aqui, colar aqui, beleza?
For and in counting retur name test. Esse essa consulta aqui, ela é para retornar todos os países, todas as regiões, né? Todas as countries dentro desse dataset.
Beleza? Eu navego diretamente pelo elemento que é o CP dentro do XML. Para cada país, eu vou retornar o name que é o nome do país.
É básico para destrutura de dados. Ó, eu vou executar aqui para você ver, ó. Pera aí.
Pronto. No caso, como já tinha executador antes, já tava o resultado aqui, né? Por isso que não apareceu o resultado aparecendo, mas esse aqui é o resultado dessa consulta.
Tá retornando o nome da C dentro do dataset, Albânia, Grécia, como você pode ver. Bom, vamos agora para a próxima consulta. Vou apagar essa daqui.
Ah, Vinícius, se eu botar várias consultas aqui e dá para executar igual SKL selecionando? Não dá. Se você botar outra consulta aqui na frente e tentar selecionar para executar, não vai funcionar, tá bom?
Agora eu quero uma consulta com uma condição. Bom, quais países fazem parte da Europa? Já tem a consulta que mostra os países do dataset.
Agora nós vamos para uma consulta que mostra somente os países da Europa. Como você pode ver, esse compass de continente igual a Europa é uma chave valor. No caso, você tá dando valor de Europa em cima de uma condição, OK?
Ele vai retornar o name baseado em counter da mesma forma que consulta, porém com a condição de ser dentro da Europa, né? Rop. E gente, como o dataset tá todo em inglês, é um dataset fora do Brasil também, os atributs aqui, a forma que eu tô fazendo as consultas também são em inglês, tá?
Vou até executar aqui para você ver, ó. Pronto. Agora ele só trouxe 56 resultados.
Na última consulta, na primeira consulta, ele tava dando mais de 200 resultados, porque agora nós botamos o filtro para virar somalmente países da Europa. Aqui está os países, Albânia, Espanha, França, Montenegro, Mônaco, Vaticano, beleza? Ou seja, o elemento em compass dentro de Counter tem um atributo continente.
Eu eu filtrei apenas onde o continente é igual a Europa. Mostra como usar os filtros atributos. É similar a o do SQL, tá?
Show. Vamos agora para a terceira consulta. Cidades da Albânia.
No caso aqui é o texto de uma forma diferente. No lugar de eu botar Europe ou Albânia, literalmente, eu vou botar a sigla, que significa, tá? Vamos ver aqui.
Cidades da Albânia. Aqui agora são cidades, beleza? são cidades e não não países.
Pronto. Aqui agora, qual foi a diferença? A tag agora usada foi a city, que é a cidade.
Possui também um alimento country, mas no caso a gente quer o apenas a cidade dentro de Albânia. A gente usou o código, o código de área, né, que é o AL. Código de área que eu digo é o código do país.
AL para Albânia. E eu fi todas as cidades da Albânia. Ou seja, Tirana, Tirane.
Vamos ver se essas cidades aqui realmente são da Albânia, capital da Albânia. Ó, realmente são cidades da Albânia, como você pode ver. Show.
Deixa eu botar aqui de novo. Bom, agora vamos procurar o país com a maior população. Aqui a gente já pode usar filtro de cálculo, né?
No caso, MAX, por exemplo. Deixa eu pegar aqui o código, a consulta, né? O código da consulta.
E vou explicar aqui passo a passo. Resultado, China é realmente acertou em cheio. China é o com a maior população, que é um um bilhão 1 bilhão de pessoas, 41 milhões população.
Resultado. Bom, vou te explicar qual como é que essa essa consulta aqui tá funcionando. A nomenclatura para poder utilizar a consulta aqui dentro do base max.
É isso aqui. Tipo assim, a lógica de trás das consultas são muito parecidas com a do SQL. O que muda é a sintaxe da linguagem, né?
No caso aqui do base do base X, que no caso é let max pop. Aí bota aqui. É um pouco mais difícil, né, assim, a sintaxe em si, mas a lógica mantém a mesma.
Utilizou um max, aí puxou como atributos country population, não tem como você fazer um max população sem a population, né? E integrou os dois, ó. Isso daqui é para integrar os dois, mas toda essa sintaxe aí pegou na encry onde a população máxima, no caso max population integrado com max pop que é a população, ele tá integrando a country com população junto com filtro de Max, ou seja, ele vai pegar eh o continente, vai pegar a população de cada continente e vai utilizar o Max para saber qual é a maior de todas.
Foi por isso que trouxe a China e vai retornar o result. O resultado vai ter que ser o nome. No caso, se não tivesse o nome, ia trazer tudo isso aqui, mas não ia trazer o nome da China.
Por isso tem que ter o nome, beleza? E a população para poder saber a quantidade e fazer um filtro lógico corretamente, OK? Usa a função max, pegar população entre os países, busca qual tem o valor máximo e se faz para demonstrar funções agregadas.
M.