Você está na página 1de 60

Disciplina:

Banco de Dados Não Relacional


Aula 4 – XML, CSV e JSON
Curso: DSM | Desenvolvimento de Software Multiplataforma
Turma: 3o ciclo – 2024 | Terça feira – Noturno

Professor: Jeferson - Email: jeferson.dias5@fatec.sp.gov.br


2
XML, CSV E JSON

3
XML, CSV E JSON

► Temos alguns tipos de arquivos que tem a função de fazer a


transferência de dados entre os sistemas.
► Esse método e algo mais comum do que imaginamos.

SISTEMA A SISTEMA B

4
XML

5
XML

► Desenvolvido pelo consórcio W3C, com base em linguagens


web, como a SGML (Standard Generalized Markup
Language) e a HTML (Linguagem de Marcação de
Hipertexto).

O World Wide Web Consortium (W3C) é a principal organização


de padronização da World Wide Web

6
XML

► É o modelo de dados semiestruturados mais bem sucedido.


► É um padrão para a publicação, combinação e troca de
dados na web.

7
XML

► Por ser uma linguagem de marcação, XML lida com


instruções embutidas no corpo dos documentos, chamadas
de tags (marcas), que permitem a descrição de dados.

8
XML

► A diferença principal entre a HTML (Hypertext Markup


Language) e a XML (Extensible Markup Languag) é que na
HTML o conjunto de tags é fixo (body, table, p, etc.),
enquanto na XML pode-se usar quaisquer marcas que se
queira.

9
XML

<!DOCTYPE html>
<html>
<head>
<title>Title</title>
</head>
<body>

<h1>DSM – FATEC ZL</h1>


<p>Banco de Dados Não Relacional</p>

</body>
</html>

Exemplo de um arquivo HTML

10
XML

<?xml version="1.0" encoding="ISO-8859-1"?>


<receita nome="pão" tempo_de_preparo="5 minutos" tempo_de_cozimento="1 hora">
<titulo>Pão simples</titulo>
<ingredientes>
<ingrediente quantidade="3" unidade="xícaras">Farinha de Trigo</ingrediente>
<ingrediente quantidade="7" unidade="gramas">Fermento</ingrediente>
<ingrediente quantidade="1.5" unidade="xícaras" estado="morna">Água</ingrediente>
<ingrediente quantidade="1" unidade="colheres de chá">Sal</ingrediente>
</ingredientes>
<instrucoes>
<passo>Misture todos os ingredientes, e dissolva bem.</passo>
<passo>Cubra com um pano e deixe por uma hora em um local morno.</passo>
<passo>Misture novamente, coloque numa bandeja e asse num forno.</passo>
</instrucoes>
</receita>

Exemplo de um arquivo XML


11
XML

► XML tem flexibilidade de representação, o que permite que


ela seja usada no desenvolvimento de aplicações em
diversos contextos.

12
XML

► Um documento XML bem formado é constituído basicamente


por uma sequência de elementos que englobam valores de
texto e outros elementos.

13
XML

► Exemplo:

<raiz>
<filho1>
<filho2>
</filho2>
</filho1>
</raiz>

14
XML

► Tudo o que aparece entre essas duas marcas é o conteúdo


do elemento.

15
XML

16
XML

<?xml version="1.0" encoding="UTF-8"?>


<assunto>
<para>Jose</para>
<de>Maria</de>
<heading>Importante:</heading>
<mensagem>Qual a próxima empresa que Elon Munk vai comprar?</mensagem>
</assunto>

Este é o preâmbulo opcional de XML. version="1.0" significa que


este é o padrão XML com o qual este arquivo está em
conformidade encoding="utf-8" significa que o arquivo é
codificado usando a codificação UTF-8 Unicode

17
XML

<?xml version="1.0" encoding="UTF-8"?>


<alunos>
<aluno id=“1”>
<nome>Pedro</nome>
<RA>14752</RA>
<notas>
<nota id=“Banco”>2</nota>
<nota id=“Python”>4</nota>
</notas>
</aluno>
<aluno id=“2”>
<nome>João</nome>
<RA>14772</RA>
<notas>
<nota id=“Banco”>1</nota>
<nota id=“Python”>3</nota>
</notas>
</aluno>
</alunos>

18
XML

► Utilizado nas notas fiscais eletrônicas, padrão usado em todo


território Brasileiro.

19
CSV

20
CSV

► Os arquivos Comma Separated Values, também conhecido


como CSV, são arquivos de texto, que faz uma ordenação de
bytes ou um formato de terminador de linha, separando
valores com vírgulas.

21
CSV

► Com um arquivo CSV o usuário pode salvar os dados em


formato de tabela, que ajuda para quem precisa gerenciar
bancos de dados extensos.
► Para criar o arquivo, você pode usar o Microsoft Excel, o
OpenOffice Calc, o Planilhas Google, o Bloco de Notas etc.
► Lembrando que algumas ferramentas são limitadas na sua
dimensão.

22
CSV

► Exemplo:

23
CSV

► Exemplo:
► Esses dados poderiam ser lidos em um arquivo CSV
separados por vírgulas e por um espaçamento de linha,
como no exemplo a seguir:

João,2018,Belo Horizonte
Maria,2019,Rio de Janeiro

Não tem espaço entre os dados ou informações.

24
QUANDO USAR O PADRÃO CSV

25
QUANDO USAR O PADRÃO CSV

► A grande vantagem de um arquivo CSV é o fato de ele


possibilitar a importação e exportação arquivos de uma
linguagem que vários aplicativos podem ler.

26
QUANDO USAR O PADRÃO CSV

► Esta situação de uso mais comum do CSV é quando você


deseja exportar informações de uma ferramenta e transferir
para outra.
► Exemplo: Software CRM (Customer Relationship
Management) para uma planilha do Excel ou vice-versa.

27
QUANDO USAR O PADRÃO CSV

► A criação mais fácil e comum de arquivos neste formato é


feita por meio de softwares de planilha, como o Microsoft
Excel, Google Sheets e Libreoffice.

28
JSON

29
JSON

► JSON (JavaScript Object Notation - Notação de Objetos


JavaScript) é uma formatação leve de troca de dados.

30
JSON

► JSON tem o formato de texto e completamente independente


de linguagem, pois usa convenções que são familiares às
linguagens C e familiares, incluindo C++, C#, Java,
JavaScript, Perl, Python e muitas outras.
► Estas propriedades fazem com que JSON seja um formato
ideal de troca de dados.

31
JSON

► Precisa trocar dados entre sistemas, usa o JSON.


► Trabalha com o formato atributo-valor.

32
JSON

► JSON está constituído em duas estruturas:


 Uma coleção de pares nome/valor. Em várias linguagens,
isto é caracterizado como um objeto, record, estrutura,
dicionário, hash table, key list ou arrays associativas.
 Uma lista ordenada de valores. Na maioria das
linguagens, isto é caracterizado como uma array, vetor,
lista ou sequência.

33
JSON

► São estruturas de dados universais.


► Virtualmente todas as linguagens de programação modernas
as suportam, de uma forma ou de outra.
► Aceito em formato de troca de dados que seja independente
de linguagem de programação.

34
JSON

► Uma string é uma coleção de nenhum ou mais caracteres


Unicode, envolvido entre aspas duplas usando barras
invertidas como caractere de escape.
► Um caractere está representando como um simples caractere
de string.
► Uma cadeia de caracteres é parecida com uma cadeia de
caracteres em C ou Java.

35
JSON

Chave Valor
► Exemplo de string:

{
"PrimeiroNome" : "José ",
"SobreNome" : "Silva"
}

Atributo Valor

36
JSON

► Um objeto é um conjunto desordenado de pares nome/valor.


► Um objeto começa com “ { “ chave de abertura e termina com
“ } “ chave de fechamento.
► Cada nome é seguido por “ : “ dois pontos e os pares
nome/valor são seguidos por “ , “ vírgula.

37
JSON

► Diagrama:

38
JSON

► Exemplo de objeto: Chave

{ Valor
"Carro": {
"Marca": "GM",
"Modelo": "Onix",
Objeto "Cor": "Azul",
"Ano/Fab": "21/22"
}
}

Atributo Valor
39
JSON

► Mesmo exemplo de objeto:

{
"Carro": {
"Marca": "GM",
"Modelo": "Onix",
"Cor": "Azul",
"Ano/Fab": "21/22"
}
}

40
JSON

► Uma array é uma coleção de valores ordenados.


► O array começa com “ [ “ colchete de abertura e termina com
“ ] “ colchete de fechamento.
► Os valores são separados por “ , “ vírgula.

41
JSON

► Diagrama:

42
JSON
► Exemplo de array simples

{ Array
"Empregados": [{
"PrimeiroNome": "João",
"Sobrenome": "Silva"
}, {
"PrimeiroNome": "Pedro",
"Sobrenome": "Souza"
}, {
"PrimeiroNome": "Tiago",
"Sobrenome": "Santos"
}]
43
}
JSON

► Exemplo de array com dois valores:


{
"Veículo": [{
"Marca": "Ford",
"Modelo": "Fusion",
"Cor": ["Prata", "Preto", "Azul"]
},
{
"Marca": "FIAT",
"Modelo": "Pulse",
"Cor": ["Branco", "Perola", "Laranja"]
}
]
A

} 44
JSON

► Mesmo exemplo de array com dois valores:


{
"Veículo": [{
"Marca": "Ford",
"Modelo": "Fusion",
"Cor": ["Prata", "Preto", "Azul"]
},
{
"Marca": "FIAT",
"Modelo": "Pulse",
"Cor": ["Branco", "Perola", "Laranja"]
}
]
} 45
VALIDADOR DO JSON

46
VALIDADOR DO JSON

► Validador do JSON:
► Temos um site aonde podemos validar se JSON está correto

https://jsonlint.com/

47
VALIDADOR DO JSON

48
VALIDADOR DO JSON

► Prática, qual o erro?

{
"nome": "Pedro",
"idade": 30,
"estado": "São Paulo",
"RA": 1234,
"CEP": 04545-000,
}

49
VSCODE E JSON

50
VSCODE E JSON

51
VSCODE E JSON

52
VSCODE E JSON

53
VSCODE E JSON

► Prática,

54
VSCODE E JSON

55
VSCODE E JSON
{
"nome": "Vanessa",
► Prática, "CPF": 1234,
"CEP": 56789,
"Moradia": [
{
"Casa": "própria",
"Apartamento": "alugado",
"Sitio": "alugado",
"Quartos": ["Suíte", "Simples", "com internet"]
},
{
"Cidade": "São Paulo",
"Garagem": "2 vagas",
"Banheiro": ["Pequeno", "Médio", "Grande"]
}
]
}
56
VSCODE E JSON
{
► Prática,
"ConcursoAprovados": [
true,
true,
false,
false,
false,
true
]
}

57
VSCODE E JSON

► No Teams, tem um arquivo Pokemon.json, salve em


dowloads e através do Vscode, faça a sua visualização.

58
Esta Foto de Autor Desconhecido está licenciado em CC BY-NC-ND

59
Obrigado
Qualquer dúvida entrar em contato via e-mail:

E-mail jeferson.dias5@fatec.sp.gov.br

60

Você também pode gostar