Análise da Semântica Denotacional do XPath
|
|
- Mauro Sequeira
- 5 Há anos
- Visualizações:
Transcrição
1 Análise da Semântica Denotacional do XPath Carlos Ramisch Sandra Kniphoff Soraya Hossain Baseado no artigo de Philip Wadler Two semantics for XPath
2 Objetivos Breve explanação sobre XML e XPath Apresentação parcial da sintaxe do XPath Análise de uma semântica denotacional para XPath
3 Introdução ao XML Regulamentado pelo W3C Resolve limitações do HTML Modularidade Legibilidade Flexibilidade Troca de informações Bases de dados XML
4 Exemplo de código XML <receitas> <receita tipo="salgado"> <nome>pizza de Calabresa</nome> <tempo>30 minutos</tempo> <ingredientes> <ing qtd= 30 rodelas >linguiça calabresa</ing> <ing qtd= 1 >massa para pizza</ing> <ing qtd= 100g >queijo mussarela</ing> <ing qtd= 1 lata >extrato de tomate</ing> </ingredientes> </receita> <receita tipo="doce"> <nome>brigadeiro</nome> <tempo>25 minutos</tempo> <ingredientes> <ing qtd= 1 lata >leite condensado</ing> <ing qtd= 1 xícara >achocolatado em pó</ing> <ing qtd= 2 colheres >manteiga</ing> </ingredientes> </receita> <receita tipo="doce"> <nome>bolo de Chocolate</nome> <tempo>50 minutos</tempo> <ingredientes> <ing qtd= 3 xícaras >farinha</ing> <ing qtd= 2 xícaras >açúcar</ing> <ing qtd= 1 xícara >chocolate em pó</ing> <ing qtd= 1 xícara >azeite</ing> <ing qtd= 2 >ovos</ing> <ing qtd= 1 colher >fermento</ing> <ing qtd= 2 xícaras >leite</ing> </ingredientes> </receita> </receitas>
5 Introdução ao XPath Linguagem de consulta Endereçar partes de documentos XML Caminhamento em árvores Semelhante a diretórios Permite sintaxe estendida ou abreviada
6 Exemplos de consultas XPath /receitas/receita todas as receitas /receitas/receita[ tipo= SALGADO ] - todas as receitas cujo tipo é SALGADO /child::receitas/child::receita[attribute::tipo= SALGADO ] - o mesmo que anterior /receitas/receita/ingredientes/ing[ qtd= 1 xícara ] - todos os ingredientes de todas as receitas cuja quantidade é 1 xícara /child::receitas/child::node()[position() = 2 ] - segunda receita
7 Exemplo de código XML <receitas> <receita tipo="salgado"> <nome>pizza de Calabresa</nome> <tempo>30 minutos</tempo> <ingredientes> <ing qtd= 30 rodelas >linguiça calabresa</ing> <ing qtd= 1 >massa para pizza</ing> <ing qtd= 100g >queijo mussarela</ing> <ing qtd= 1 lata >extrato de tomate</ing> </ingredientes> </receita> <receita tipo="doce"> <nome>brigadeiro</nome> <tempo>25 minutos</tempo> <ingredientes> <ing qtd= 1 lata >leite condensado</ing> <ing qtd= 1 xícara >achocolatado em pó</ing> <ing qtd= 2 colheres >manteiga</ing> </ingredientes> </receita> <receita tipo="doce"> <nome>bolo de Chocolate</nome> <tempo>50 minutos</tempo> <ingredientes> <ing qtd= 3 xícaras >farinha</ing> <ing qtd= 2 xícaras >açúcar</ing> <ing qtd= 1 xícara >chocolate em pó</ing> <ing qtd= 1 xícara >azeite</ing> <ing qtd= 2 >ovos</ing> <ing qtd= 1 colher >fermento</ing> <ing qtd= 2 xícaras >leite</ing> </ingredientes> </receita> </receitas>
8 Conjunto Completo das [1] LocationPath::= RelativeLocationPath AbsoluteLocationPath [2] AbsoluteLocationPath::= '/' RelativeLocationPath? AbbreviatedAbsoluteLocationPath [3] RelativeLocationPath::= Step RelativeLocationPath '/' Step AbbreviatedRelativeLocationPath [4] Step ::= AxisSpecifier NodeTest Predicate* AbbreviatedStep [5] AxisSpecifier ::= AxisName '::' AbbreviatedAxisSpecifier [6] AxisName::= 'ancestor' 'ancestor-or-self' 'attribute' 'child' 'descendant' 'descendant-or-self' 'following' 'following-sibling' 'namespace' 'parent' 'preceding' 'preceding-sibling' 'self' [7] NodeTest ::= NameTest NodeType '(' ')' 'processing-instruction' '(' Literal ')' [8] Predicate::= '[' PredicateExpr ']' [9] PredicateExpr::= Expr [10] AbbreviatedAbsoluteLocationPath::= '//' RelativeLocationPath [11] AbbreviatedRelativeLocationPath::= RelativeLocationPath '//' Step [12] AbbreviatedStep::= '.' '..' [13] AbbreviatedAxisSpecifier::= [14] Expr ::= OrExpr [15] PrimaryExpr ::= VariableReference '(' Expr ')' Literal Number FunctionCall [16] FunctionCall ::= FunctionName '(' ( Argument ( ',' Argument )* )? ')' [17] Argument ::= Expr [18] UnionExpr ::= PathExpr UnionExpr ' ' PathExpr [19] PathExpr ::= LocationPath FilterExpr FilterExpr '/' RelativeLocationPath FilterExpr '//' RelativeLocationPath Regras de Sintaxe [20] FilterExpr ::= PrimaryExpr FilterExpr Predicate [21] OrExpr ::= AndExpr OrExpr 'or' AndExpr [22] AndExpr ::= EqualityExpr AndExpr 'and' EqualityExpr [23] EqualityExpr ::= RelationalExpr EqualityExpr '=' RelationalExpr EqualityExpr '!=' RelationalExpr [24] RelationalExpr ::= AdditiveExpr RelationalExpr '<' AdditiveExpr RelationalExpr '>' AdditiveExpr RelationalExpr '<=' AdditiveExpr RelationalExpr '>=' AdditiveExpr [25] AdditiveExpr ::= MultiplicativeExpr AdditiveExpr '+' MultiplicativeExpr AdditiveExpr '-' MultiplicativeExpr [26] MultiplicativeExpr ::= UnaryExpr MultiplicativeExpr MultiplyOperator UnaryExpr MultiplicativeExpr 'div' UnaryExpr MultiplicativeExpr 'mod' UnaryExpr [27] UnaryExpr ::= UnionExpr '-' UnaryExpr [28] ExprToken::= '(' ')' '[' ']' '.' '..' '@' ',' '::' NameTest NodeType Operator FunctionName AxisName Literal Number VariableReference [29] Literal::= '"' [^"]* '"' "'" [^']* "'" [30] Number::= Digits ('.' Digits?)? '.' Digits [31] Digits::= [0-9]+ [32] Operator::= OperatorName MultiplyOperator '/' '//' ' ' '+' '-' '=' '!=' '<' '<=' '>' '>=' [33] OperatorName::='and' 'or' 'mod' 'div' [34] MultiplyOperator::= '*' [35] FunctionName::= QName - NodeType [36] VariableReference::= '$' QName [37] NameTest::= '*' NCName ':' '*' QName [38] NodeType::= 'comment' 'text' 'processing-instruction' 'node' [39] ExprWhitespace::= S
9 Sintaxe Simplificada AxisName ::= 'ancestor' 'ancestor-orself' 'attribute' 'child' 'descendant' 'descendant-or-self' 'following' 'following-sibling' 'namespace' 'parent' 'preceding' 'preceding-sibling' 'self' NodeTest ::= NameTest NodeType '(' ')' Predicate ::= '[' PredicateExpr ']' PredicateExpr ::= Expr
10 Sintaxe Simplificada (cont.) Step ::= AxisSpecifier NodeTest Predicate* AxisSpecifier ::= AxisName '::' LocationPath ::= RelativeLocationPath AbsoluteLocationPath AbsoluteLocationPath ::= '/' RelativeLocationPath? RelativeLocationPath ::= Step RelativeLocationPath '/' Step
11 Semântica Denotacional Auxiliar Avaliação de Eixos A : Axis Node Set(Node) A[[child]]x = children(x) A[[parent]]x = parent(x) A[[descendant]]x = children + (x) A[[ancestor]]x = parent + (x) A[[self]]x = { x } A[[attribute]]x = attributes(x) A[[namespace]]x = namespaces(x)
12 Semântica Denotacional Auxiliar Tipos de Nodos P : Axis Nodetype P[[child]] = Element P[[parent]] = Element P[[descendant]] = Element P[[ancestor]] = Element P[[self]] = Element P[[attribute]] = Attribute P[[namespace]] = Namespace
13 Semântica Denotacional Auxiliar Direção dos Eixos D : Axis Direction D[[child]] = forward D[[parent]] = reverse D[[descendant]] = forward D[[ancestor]] = reverse D[[self]] = forward D[[attribute]] = forward D[[namespace]] = forward
14 Semântica Denotacional Expressões Numéricas E : Axis Expr (Node, Set(Node)) Number Ea[[e1 + e2]](x, S) = Ea[[e1]](x, S) + Ea[[e2]](x, S) Ea[[e1 * e2]](x, S) = Ea[[e1]](x, S) Ea[[e2]](x, S) Ea[[i]](x, S) = i Ea[[position()]](x, S) = let j = size({ x1 x1 S, x1 doc x }) in if D[[a]] = forward then j else size(s) + 1 j Ea[[last()]](x, S) = size(s)
15 Semântica Denotacional Expressões Booleanas Q : Axis Qualifier (Node, Set(Node)) Boolean Qa[[q1 and q2]](x, S) = Qa[[q1]](x, S) Qa[[q2]](x, S) Qa[[q1 or q2]](x, S) = Qa[[q1]](x, S) Qa[[q2]](x, S) Qa[[not(q)]](x, S) = Qa[[q]](x, S) Qa[[e1=e2]](x, S) = Ea[[e1]](x, S) = Ea[[e2]](x, S) Qa[[p]](x, S) = Sa[[p]](x, S)
16 Semântica Denotacional Caminhos S : Axis Pattern (Node, Set(Node)) Set(Node) Sa[[p1 p2]](x, S) = Sa[[p1]](x, S) [ Sa[[p2]](x, S) Sa[[/p]](x, S) = Sa[[p]](root(x), { x }) Sa[[p1/p2]](x, S) = let S1 = Sa[[p1]](x, S) in { x2 x1 S1, x2 Sa[[p2]](x1, S1) } Sa[[a1::p1]](x, S) = Sa1 [[p1]](x, S) Sa[[n]](x, S) = { x1 x1 A[[a]]x, nodetype(x1) = P[[a]], name(x1) = n }
17 Semântica Denotacional Caminhos (cont.) Sa[[*]](x, S) = { x1 x1 A[[a]]x, nodetype(x1) = P[[a]] } Sa[[text()]](x, S) = { x1 x1 A[[a]]x, nodetype(x1) = Text } Sa[[p[q]]](x, S) = let S1 = Sa[[p]](x, S) in { x1 x1 S1, Qa[[q]](x1, S1) }
18 Considerações Finais Visão geral e introdutória Outras propostas possíveis Obrigado! Dúvidas?
GERÊNCIA DE DADOS SEMI ESTRUTURADOS - XPATH. Prof. Angelo Augusto Frozza, M.Sc.
GERÊNCIA DE DADOS SEMI ESTRUTURADOS - XPATH Prof. Angelo Augusto Frozza, M.Sc. XPATH (XML PATH LANGUAGE) Linguagem para navegação na estrutura de um documento XML semelhante a navegação em diretórios DOS
Leia maisXML: uma introdução prática X100. Helder da Rocha
XML: uma introdução prática X100 Helder da Rocha (helder@argonavis.com.br) Atualizado em outubro de 2005 1 O que é XPath XPath é uma linguagem usada para localizar informações em um documento XML Serve
Leia maisMotivação. XPath. O Modelo de Dados do XPath. Introdução. Exemplo: nodo raiz. Exemplo: instância do poema
Motivação XPath Processamento Estruturado de Documentos 2002 By jcr Todos os processos de transformação/formatação de documentos XML começam por construir uma árvore: a árvore documental abstracta O XPath
Leia maisGerência de Dados da Web
Sumário Gerência de Dados da Web - DCC922 - Linguagens de Consulta para Dados XML: XPath e Xquery Alberto H. F. Laender 2014 XPath Modelo de dados Expressões simples e atalhos Funções Expressões complexas
Leia maisGerência de Dados da Web
Sumário Gerência de Dados da Web - DCC922 - Linguagens de Consulta para Dados XML: XPath e Xquery Alberto H. F. Laender 2015 XPath Modelo de dados Expressões simples e atalhos Funções Expressões complexas
Leia maisLinguagens de interrogação de dados XML - XPath. Gestão e Tratamento de Informação DEI IST
Linguagens de interrogação de dados XML - XPath Gestão e Tratamento de Informação DEI IST Agenda Introdução Expressões de caminho (path expressions) XPath Porquê uma linguagem de interrogação para dados
Leia maisLinguagens e Programação XPATH / XSLT. Paulo Proença
Linguagens e Programação XPATH / XSLT XSL XSL - Extensible Stylesheet Language Linguagem para transformação e formatação de um documento XML XSL deu origem a 3 normas: XPath que define um modo de navegação
Leia maisGERÊNCIA DE DADOS SEMI ESTRUTURADOS - XQUERY. Prof. Angelo Augusto Frozza
GERÊNCIA DE DADOS SEMI ESTRUTURADOS - XQUERY Prof. Angelo Augusto Frozza XQUERY (XML QUERY LANGUAGE) XQuery é para XML o que o SQL é para Banco de Dados. XQUERY (XML QUERY LANGUAGE) XQuery é uma linguagem
Leia maisPlano das aulas. Aula 3 Documentos em XML Estruturas lógicas Estruturas físicas Modelos e DTDs Construção de modelos. Exemplos
Plano das aulas Aula 3 Documentos em XML Estruturas lógicas Estruturas físicas Modelos e DTDs Construção de modelos. Exemplos Aula 5 Processamento de XML Analisadores sintácticos e o SAX DOM Xpath XSL
Leia maisDOM (Document Object Model)
DOM (Document Object Model) Modelo de dados para XML estrutura hierárquica (árvore) métodos de acesso (API DOM) principais classes de objetos document, node, nodelist e element execução de consultas e
Leia maisXSL - extemsible Stylesheet Language. Prof. Antonio Almeida de Barros Jr.
XSL - extemsible Stylesheet Language Prof. Antonio Almeida de Barros Jr. Agenda Conceitos XSLT - XSL Transformations Iteração e Classificação Processamento Condicional Copiando Nodos Variáveis Estude de
Leia maisPROCESSAMENTO ESTRUTURADO DE DOCUMENTOS. Departamento de Documentação Curso de Arquivologia
PROCESSAMENTO ESTRUTURADO DE DOCUMENTOS Departamento de Documentação Curso de Arquivologia - extensible Markup Language Definida pela W3C - World Wide Web Consortium Activity Grupos de trabalho que desenvolvem,
Leia maisNotas sobre XSLT. O modo correcto para declarar um documento xsl é:
Notas sobre XSLT XSLT é a abreviatura de extensible Stylesheet Language Tansformations. É uma linguagem para transformação de documentos xml. Permite transformar um documento xml noutro documento xml,
Leia maisLinguagens de Programação. Marco A L Barbosa
Expressões e sentença de atribuição Linguagens de Programação Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional. http://github.com/malbarbo/na-lp-copl
Leia maisProcessamento de Documentos Estruturados
Processamento de Documentos Estruturados José Paulo Leal, Rita P. Ribeiro Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto 2015/2016 Programa 1. Essencial sobre XML
Leia maisGERÊNCIA DE DADOS SEMI ESTRUTURADOS
Lista de Exercícios - XQuery 1 Descreva pelo menos 3 (três) diferenças entre XPath e XQuery. RESPOSTAS: - XQuery é uma linguagem com maior poder de expressão do que XPath - XQuery usa XPath para construir
Leia maisLinguagens de Programação
Linguagens de Programação de Linguagens de Programação Bruno Lopes Bruno Lopes Linguagens de Programação 1 / 11 Propriedades desejáveis Legibilidade: A leitura do programa é facilmente compreendida? Redigibilidade:
Leia maisIntrodução e motivação SGBD XML Nativo Consultas em SGBDs XML Prática. Bancos de dados XML. Conceitos e linguagens de consulta
Bancos de dados XML Conceitos e linguagens de consulta Sidney Roberto de Sousa MC536 - Bancos de Dados: Teoria e prática Material base: W3Schools XPath and XQuery Tutorial http://www.w3schools.com/xpath/
Leia maisExpressões e sentença de atribuição
Expressões e sentença de atribuição Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
Leia maisClique AQUI Para Conhecer Mais do Curso Brigadeiro Gourmet Profissional
Brigadeiro de Bis Esta receita de Brigadeiro de Bis é ótima. Nossa dica é misturar bis preto e branco para dar aquela aparência bonita! Tempo de preparo: 5 minutos Tempo de cozimento: 15 minutos Tempo
Leia maisComputação I (MAB120) DCC/UFRJ
Computação I (MAB120) DCC/UFRJ Aula 3: conceitos e operações elementares da programação 18 de março de 2019 Objetivos dessa aula Apresentar o conceito de variável em C: declaração, inicialização, atribuição
Leia maisFEUP Faculdade de Engenharia da Universidade do Porto XSL. Porto, Maio de 2002. Gabriel David gtd@fe.up.pt. FEUP, Maio 2002 XML/XSL
1 FEUP Faculdade de Engenharia da Universidade do Porto XSL Porto, Maio de 2002 Gabriel David gtd@fe.up.pt Estilo vs Conteúdo 2 Reutilização de fragmentos de dados: o mesmo conteúdo pode ter um aspecto
Leia maisGERÊNCIA DE DADOS SEMIESTRUTURADOS - XSLT. Prof. Angelo Augusto Frozza, M.Sc.
GERÊNCIA DE DADOS SEMIESTRUTURADOS - XSLT Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza INTRODUÇÃO XSLT é para XML o que o CSS é para HTML. INTRODUÇÃO XSLT XSL Transformation XSLT é a linguagem
Leia maisModularidade. Objetivos: Introduzir noções básicas de modularidade. Funções e procedimentos
Modularidade Objetivos: Introduzir noções básicas de modularidade Funções e procedimentos Motivação É muito difícil manter um código quando ele tende a ser grande (com muitas linhas) É preciso organizar
Leia maisXSLT e recursividade estrutural. Gestão e Tratamento de Informação DEI IST
XSLT e recursividade estrutural Gestão e Tratamento de Informação DEI IST Agenda Recursividade estrutural XSLT Agenda Recursividade estrutural XSLT Recursividade estrutural: um paradigma diferente Dados
Leia maisXML. Prof. Júlio Machado
XML Prof. Júlio Machado julio.machado@pucrs.br INTRODUÇÃO O que é XML? É a sigla de Extensible Markup Language Linguagem de especificação para descrever dados Padrão aberto e largamente usado Definido
Leia maisPage Content: 10 Receitas de bolos simples e fáceis Ana Luiza Tudisco Todos os direitos reservados.
Page Content: 10 Receitas de bolos simples e fáceis Ana Luiza Tudisco Todos os direitos reservados. Page Content: Bolo de 1 Fubá 2 Chocolate 3 Cenoura 4 Laranja 5 Trigo 6 Banana 7 Mandioca 8 Maçã 9 Caneca
Leia maisLaboratório de Linguagens de Programação Prof. Andrei Rimsa Álvares. Trabalho Prático I
. Objetivo Trabalho Prático I O objetivo desse trabalho é desenvolver um interpretador para uma linguagem de programação fictícia chamada MiniLambda. Essa linguagem é capaz de executar operações sobre
Leia maisGrupo: Rodrigo Pescador Lucas Silveira Renê Rodrigues Eduardo Dellandrea Thiago Bonetti. BANCOS DE DADOS II Bancos de Dados Semi-Estruturados e XML
Bancos de Dados Semi-Estruturados e XML Grupo: Rodrigo Pescador Lucas Silveira Renê Rodrigues Eduardo Dellandrea Thiago Bonetti O que é XML: iniciando XML - Extensible Markup Language (Linguagem de Marcação
Leia maisUNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO. Estruturas de condição. Prof. Alex Camargo
UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO Estruturas de condição Prof. Alex Camargo alexcamargoweb@gmail.com Estruturas de condição Estrutura condicional simples: Utilização da
Leia maisSintaxe do Pascal Simplificado Estendido de 12 novas construções em Notação EBNF (BNF estendida)
Sintaxe do Pascal Simplificado Estendido de 12 novas construções em Notação EBNF (BNF estendida) Não-terminais são nomes mnemônicos colocados entre parênteses angulares. Vocabulário terminal formado por
Leia maisParadigmas de Linguagens de Programação. Descrevendo a Sintaxe e a Semântica
Descrevendo a Sintaxe e a Semântica Cristiano Lehrer Introdução Descrição, compreensível, de uma linguagem de programação é difícil e essencial. Capacidade de determinar como as expressões, instruções
Leia maisLinguagem Pascal. Prof. Antonio Almeida de Barros Junior
Linguagem Pascal Prof. Antonio Almeida de Barros Junior 1 Linguagem Pascal Criada para ser uma ferramenta educacional (Década de 70); Prof. Niklaus Wirth (Universidade de Zurique); Blaise Pascal (Matemático
Leia maisCONTEÚDO PROGRAMÁTICO
CONTEÚDO PROGRAMÁTICO XML e XSLT Completo Carga horária: 40 horas TreinaWeb Tecnologia LTDA CNPJ: 06.156.637/0001-58 Av. Paulista, 1765 - Conj 71 e 72 São Paulo - SP CONTEÚDO PROGRAMÁTICO Ementa do curso
Leia maishttp://rogerioaraujo.wordpress.com Série Rações Semanais Xpath e XSLT Rogério Araújo
http://rogerioaraujo.wordpress.com Série Rações Semanais Xpath e XSLT Rogério Araújo http://rogerioaraujo.wordpress.com Série Rações Semanais Xpath e XSLT Rogério Araújo Questões A persistência é o menor
Leia maisLinguagem Pascal. Prof. Sérgio Rodrigues. É a descrição, de forma lógica, dos passos a serem executados no cumprimento de determinada tarefa;
Linguagem Pascal Prof. Sérgio Rodrigues Introdução Algoritmo É a descrição, de forma lógica, dos passos a serem executados no cumprimento de determinada tarefa; Programa é a formalização de um algoritmo
Leia maisTipo de argumentos. valor. argumentos
Operação Numero de argumentos Tipo de argumentos valor (+ ) 2 ou + Numérico Soma ( ) 2 ou + Numérico Subtração ( ) 1 Numérico Simétrico (/ ...) 2 ou + Numérico Divisão (cos
Leia maisO W3C e a Web Semântica. Reunião de coordenação da e-ping, março/2009
O W3C e a Web Semântica Reunião de coordenação da e-ping, março/2009 Web, W3C e Web Semântica 2 Tim Berners-Lee criou / propôs a Web em 1989 (há 20 anos) http://www.w3.org/history/1989/proposal.html (URI
Leia maisLaboratório!de!Linguagens!de!Programação! Prof.!Andrei!Rimsa!Álvares! Trabalho(Prático(I(
LaboratóriodeLinguagensdeProgramação Prof.AndreiRimsaÁlvares 1.(Objetivo( Trabalho(Prático(I( O objetivo desse trabalho é desenvolver um interpretador para uma linguagemdeprogramaçãofictíciachamadaminilab.essalinguagemécapazde
Leia maisComparação de desempenho de ferramentas para processamento de XML em SGBDs
Comparação de desempenho de ferramentas para processamento de XML em SGBDs Alessander Finger & Carlos Eduardo Ramisch Projeto de Banco de Dados Instituto de Informática - UFRGS Av. Bento Gonçalves, 9500
Leia maisFolhas de estilo. Jomi Fred Hübner jomi@inf.furb.br. (XSL e XPath) FURB / DSC
Folhas de estilo (XSL e XPath) Jomi Fred Hübner jomi@inf.furb.br FURB / DSC Fevereiro, 2004 XML Stylesheet Language (XSL) XSL é uma linguagem para descrever folhas de estilo para documentos XML. Transformer
Leia maisLinguagem Haskell. Universidade Estadual Santa Cruz Conceitos de Linguagens de Programação. Tiago Carneiro 19 Agosto 2013
Linguagem Haskell Universidade Estadual Santa Cruz Conceitos de Linguagens de Programação Tiago Carneiro 19 Agosto 2013 1 1 Linguagem Haskell Linguagem de programação funcional É um paradigma de programação
Leia maisIntrodução à Ciência da Computação
Introdução à Ciência da Computação Variáveis Conceitos Básicos Variáveis x Constantes a = x + 5 a, x e 5 são variáveis ou constantes? Variáveis As variáveis são recipientes de valores É um espaço reservado
Leia maisParadigmas de Linguagens de Programação. Expressões e Instruções de Atribuição
Expressões e Instruções de Atribuição Cristiano Lehrer Introdução Expressões são o meio fundamental de especificar computações em uma linguagem de programação: Familiarização com as ordens de avaliação
Leia maisTópicos. Apresentando a família XML HTML HTML. XML extesible Markup Language. Problemas com o HTML
Tópicos Apresentando a família XML Prof.Tiago Lopes Telecken telecken@gmail.com IFRS Rio Grande HTML XML A família de tecnologias XML (DTD, XML Schemas, XHTML, SVG, MathML, MusicML, XMI, CSS, XSLT, XLINK,
Leia maisAnálise Semântica e Tratamento de Erros Dependentes de Contexto
Análise Semântica e Tratamento de Erros Dependentes de Contexto O componente Semântico de uma LP Tarefas da Análise Semântica Implementação da Tabelas de Símbolos Ações Semânticas em Compiladores Dirigidos
Leia maisFundamentos 1. Lógica de Predicados
Fundamentos 1 Lógica de Predicados Predicados e Quantificadores Estudamos até agora a lógica proposicional Predicados e Quantificadores Estudamos até agora a lógica proposicional A lógica proposicional
Leia maisXPath. Resumo Descrever um esquema específico XML (XPath) para identificar subestruturas
XPath Resumo Descrever um esquema específico XML (XPath) para identificar subestruturas de documentos Xpath É uma linguagem para referenciar partes de um documento XML Projetada para ser usada por XSLT
Leia maisExemplo Árvore Binária
Árvores Rohit Gheyi Para entradas realmente grandes, o acesso linear O(n) de listas é proibi9vo Estrutura de dados não linear, cujas operações tem custos em geral O(log n) 1 2 Exemplo Como seria pesquisar
Leia maisFormas de Gerência de Dados XML
Bancos de Dados XML Formas de Gerência de Dados XML SGBDRs estendidos com suporte à XML adequados a dados XML fortemente estruturados ( documentos orientados a registros ) beira-mar104apto
Leia maisParadigmas de Programação
Paradigmas de Programação Fabrício Olivetti de França 14 de Junho de 2018 1 λ-cálculo 2 Computabilidade Computabilidade é uma área de estudo central da Ciência da Computação. Ela estuda a possibilidade
Leia maisMaterial Didático Proposto
Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Comissão para Coordenação das Atividades Pedagógicas da Disciplina BCC701 CAP-BCC701 www.decom.ufop.br/bcc701 2014-1 Material
Leia maisProgramação Estruturada Comandos Condicionais (Decisão) Operadores Relacionais
Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Comissão para Coordenação das Atividades Pedagógicas da Disciplina BCC701 CAP-BCC701 www.decom.ufop.br/bcc701 2014-1 Material
Leia maisAcadêmica: Giselle Mafra Schlosser Orientador: Everaldo Artur Grahl
AVALIAÇÃO DA QUALIDADE DO CÓDIGO FONTE ESCRITO EM PL/SQL Acadêmica: Giselle Mafra Schlosser Orientador: Everaldo Artur Grahl Roteiro Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento
Leia maisXML (extensible Markup Language)
Sumário 1 Aplicações Não-Convencionais 2 Revisão e Dicas de Modelagem Conceitual 3 BD Orientado a Objetos e Objeto- Relacional 4 BD Temporal 5 BD Geográfico 6 BD XML XML (extensible Markup Language) Tecnologia
Leia maisINF Semântica Formal - Prova II /1
INF05516 - Semântica Formal - Prova II - 2009/1 Nome: Número: Instruções: Todas as questões são relativas a linguagem L3 sem subtipos, exceto quando explicitamente mencionado. A duração da prova é de 100
Leia maisCompiladores. Bruno Lopes. Bruno Lopes Compiladores 1 / 31. Instituto de C
ompiladores Análise Léxica Bruno Lopes Bruno Lopes ompiladores 1 / 31 Front-end Lida com a linguagem de entrada Teste de pertinência: código fonte linguagem fonte? Programa está bem formado? Sintaticamente?
Leia maisSumário. 1 Aplicações Não-Convencionais 2 BD Orientado a Objetos e Objeto- Relacional 3 BD Temporal 4 BD Geográfico 5 BDs XML
Sumário 1 Aplicações Não-Convencionais 2 BD Orientado a Objetos e Objeto- Relacional 3 BD Temporal 4 BD Geográfico 5 BDs XML XML (extensible Markup Language) Tecnologia desenvolvida pela W3C W3C: World
Leia maisXPath. Vanessa Braganholo. Curso baseado em mini-cursos apresentados no SBBD. Autores: Carlos Heuser, Carina Dorneles e Vanessa Braganholo
XPath Vanessa Braganholo Curso baseado em mini-cursos apresentados no SBBD. Autores: Carlos Heuser, Carina Dorneles e Vanessa Braganholo XPath Especificação: http://www.w3.org/tr/xpath Uma expressão XPath
Leia maisSintaxe e Semântica. George Darmiton da Cunha Cavalcanti.
Sintaxe e Semântica George Darmiton da Cunha Cavalcanti (gdcc@cin.ufpe.br) Tópicos Introdução O problema de descrever a sintaxe Métodos formais para descrever a sintaxe Gramáticas de atributos Descrevendo
Leia maisV.2 Especificação Sintática de Linguagens de Programação
V.2 Especificação Sintática de Linguagens de Programação Deve ser baseada: No planejamento da Linguagem / Compilador Objetivos, Filosofia, Potencialidades,... Nos critérios de projeto/avaliação Legibilidade,
Leia maisNotas sobre TinyXML (TP2)
Notas sobre TinyXML (TP2) Laboratório de Aplicações com Interface Gráfica Gáfi MIEIC Rui Rodrigues rui.rodrigues@fe.up.ptrodrigues@fe up pt 1 XML XML extensible Markup Language Formato textual de dados
Leia maisParadigmas de Programação
Paradigmas de Programação Sintaxe e semântica Aula 4 Prof.: Edilberto M. Silva http://www.edilms.eti.br Prof. Edilberto Silva / edilms.eti.br Sintaxe A sintaxe de uma linguagem de programação é a forma
Leia maisPizza rápida de liquidificador
Pizza rápida de liquidificador Ingredientes da massa: 1 xícara de leite 1 xícara de farinha de trigo 1 colher de sopa de óleo 1 colher de sopa de fermento em pó 2 ovos Manteiga e farinha de trigo para
Leia maisCascading Style Sheets
Cascading Style Sheets PROF. ME. HÉLIO ESPERIDIÃO CSS Cascading Style Sheets (CSS) é uma linguagem de folhas de estilo utilizada para definir a apresentação de documentos escritos em uma linguagem de marcação,
Leia maisCOLÉGIO CASSIANO RICARDO
Índice CURSO DE CULINÁRIA COLÉGIO CASSIANO RICARDO 1º semestre - 2013 Receitas 1 Arroz doce cremoso 2 Frango cremoso 3 Bolo de laranja simples 4 Mousse de maracujá fácil 5 Escondidinho de carne moída 6
Leia maisFolha 4.2 Análise sintática ascendente
Folha 4.2 Análise sintática ascendente 1. Considere a gramática G = (S, T, P, S) que representa o cabeçalho de métodos na linguagem Java (sem os modificadores de acesso), onde T = {S, Type, Param, Exception,
Leia maisProgramas em L1 pertencem ao conjunto de árvores de sintaxe abstrata definido pela gramática abstrata abaixo:
1 Semântica Operacional e Sistemas de Tipos Vamos definir a semântica operacional de uma série de linguagens no estilo conhecido por semântica operacional estrutural chamado também de semântica operacional
Leia maisProva. t ::= t t. t 1 t 4 t 2 t 3 (t 1 t 2 ) (t 3 t 4 ) (t 2 t 1 ) (t 4 t 3 )
Sistema de Tipos - II/UFRGS 1 1. Marque verdadeiro ou falso: Prova ( ) A relação de avaliação small-step deve ser determinística (ou seja para qualquer termo deve existir somente uma maneira para ele progredir
Leia maisEstruturas de dados. Pedro Vasconcelos. 3 de Março de 2014
Estruturas de dados Pedro Vasconcelos 3 de Março de 2014 Estruturas de dados Nesta aula vamos extender a linguagem FUN com estruturas de dados: pares e tuplos; variantes; records. Bibliografia: Capítulo
Leia maisSemântica Axiomática
Semântica Axiomática O estilo axiomático presta-se particularmente à prova e raciocínio sobre propriedades dos programas, e à sua verificação, i.e. à prova de correcção dos programas face às suas especificações.
Leia maisE X C L U S I V A S BOLOS & RECHEIOS GUIA DA CONFEITEIRA - APOSTILA GRÁTUITA
E X C L U S I V A S D E BOLOS & RECHEIOS - APOSTILA GRÁTUITA 2019 Bolo de Nozes 5 ovos; 2 xícaras de (chá) de açúcar refinado; 1 xícara de (chá) de leite; 2 xícaras de (chá) de farinha de trigo; 1 colher
Leia mais6) ESTRUTURA DE UM PROGRAMA
Página 1 de 16 6) ESTRUTURA DE UM PROGRAMA = = program ; = uses
Leia maisFolha 4.1 Análise sintática descendente
1. Dada a seguinte gramática G = (Σ, T, P, S), onde : Σ = { S, A, B } T = { a, b, c } S a b A c A A a S b S c B B a B b S b) Verifique que G é do tipo LL(1). c) Construa a tabela sintática predicativa
Leia maisAula 8 Comandos de Seleção
Aula 8 Comandos de Seleção Algoritmos e Programação de Computadores Profs: Ronaldo Castro de Oliveira ronaldo.co@ufu.br Anilton Joaquim da Silva anilton@ufu.br 1 Introdução Até agora não aprendemos a dizer
Leia maisCourse Review for Midterm Exam 1. Cpt S 223 Fall 2010
Course Review for Midterm Exam 1 Cpt S 223 Fall 2010 1 Midterm Exam 1 When: Friday (10/15) 10:10-11am Where: in class Closed book, closed notes Comprehensive Material for preparation: Lecture slides &
Leia maisESTRUTURAS DE DADOS E ALGORITMOS ÁRVORE BINÁRIA
ESTRUTURAS DE DADOS E ALGORITMOS 1 ÁRVORE BINÁRIA Adalberto Cajueiro Departamento de Sistemas e Computação Universidade Federal de Campina Grande ÁRVORE (EXEMPLO) Como seria pesquisar a localização de
Leia maisIntrodução a Sistemas Abertos. Shell Script
Introdução a Sistemas Abertos Shell Script Introdução O que é shell? É o programa que permite ao usuário interagir com o sistema operacional através da linha de comando. O shell possui estruturas de linguagem
Leia maisUm algoritmo deve conter passos não ambíguos, executáveis e que sejam terminados quando seguidos.
Programação Um programa é uma sequência de instruções de uma linguagem de programação (VB no nosso caso). Cada instrução representa uma qualquer acção que nós pretendemos ver executada. Programar consiste
Leia maisLaboratório!de!Linguagens!de!Programação! Prof.!Andrei!Rimsa!Álvares! Trabalho(Prático(I(
LaboratóriodeLinguagensdeProgramação Prof.AndreiRimsaÁlvares Trabalho(Prático(I( 1.(Objetivo( O objetivo desse trabalho é desenvolver um interpretador para uma linguagem de programação fictícia chamada
Leia maisLinguagens de Programação
Linguagens de Programação Celso Olivete Júnior olivete@fct.unesp.br Na aula passada Expressões Precedência e associatividade de operador Sobrecarga de operador Expressões de modo misto Várias formas de
Leia maisINE5416 Paradigmas de Programação. Ricardo Azambuja Silveira INE CTC UFSC E Mail: URL:
INE5416 Paradigmas de Programação Ricardo Azambuja Silveira INE CTC UFSC E Mail: silveira@inf.ufsc.br URL: www.inf.ufsc.br/~silveira Conceitos Léxica estudo dos símbolos que compõem uma linguagem Sintaxe
Leia maisINE BDNC. Bancos de Dados XML
INE 661300 - BDNC Bancos de Dados XML Formas de Gerência de Dados XML SGBDRs estendidos com suporte à XML adequados a dados XML fortemente estruturados ( documentos orientados a registros )
Leia maisExpressões Condicionais
Programação Funcional Capítulo 4 Expressões Condicionais José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2013.1 1/38 1 Combinando funções 2 Expressão condicional 3
Leia maisValor do Vale Cultura R$ 50,00 ( cinqüenta reais) mensais
Sistema Folha de Pagamento PEGASUS versão 2.0 Rotina Vale Cultura Ação Procedimentos para configuração do sistema Build 2.0.0.1261 ou superior Data 09/10/2013 Sobre o Vale Cultura Instuído pela Lei nº
Leia maisExercícios sobre o Capítulo III
A Linguagem Pascal Exercícios 1 Exercícios sobre o Capítulo III Problema: Dado um número inteiro e positivo, representando segundos, convertê-lo em horas, minutos e segundos. O resultado deve ser dado
Leia mais//conteúdo do arquivo pacote.h
//conteúdo do arquivo pacote.h #ifndef PACOTE_H #define PACOTE_H #include #include class Pacote friend istream &operator>> (istream &, Pacote &); friend ostream &operator
Leia maisReceitas Práticas. Oficina de Pães do Projeto Educacional para Jovens e Adultos
Receitas Práticas Oficina de Pães do Projeto Educacional para Jovens e Adultos Nº2/2007 APRESENTAÇÃO O Instituto de Desenvolvimento Ambiental Sustentável é uma ONG que tem como missão promover a proteção
Leia maisMacarrão com linguiça, couve e grão de bico
Macarrão com linguiça, couve e grão de bico Quer sair do óbvio e fazer um macarrão diferente? Confira a receita de macarrão com linguiça, couve e grão de bico. A receita de hoje é uma delícia e perfeita
Leia maisXML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA
XML e Banco de Dados DCC/IM/UFBA Banco de Dados na Web Armazenamento de dados na Web HTML muito utilizada para formatar e estruturar documentos na Web Não é adequada para especificar dados estruturados
Leia maisCompiladores. Árvore de derivação anotada. Geração de TAC para as principais construções. tradução em código TAC de expressões
Compiladores Geração de código intermediário (2) Geração de TAC para as principais construções xpressões xpressões booleanas tradução em código TAC de expressões S := 1 + 2 1 * 2 ( 1 ) : A := X + Y * Z
Leia maisExpressões e Instruções de Atribuição. George Darmiton da Cunha Cavalcanti
Expressões e Instruções de Atribuição George Darmiton da Cunha Cavalcanti (gdcc@cin.ufpe.br) Tópicos Introdução Expressões Aritméticas Operadores Sobrecarregados Conversões de Tipo Expressões Relacionais
Leia maisIntrodução ao Java. Marco A L Barbosa malbarbo.pro.br. Departamento de Informática Universidade Estadual de Maringá
Introdução ao Java Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
Leia maisProcessamento da Informação Estruturas de seleção simples e composta
Processamento da Informação Estruturas de seleção simples e composta Prof. Jesús P. Mena-Chalco CMCC/UFABC Q1/2017 1 Expressões Booleanas 2 Fonte: http://pt.wikipedia.org/wiki/george_boole Expressões Booleanas
Leia maisSintaxe e Semântica. Fases da Compilação. programa fonte
Sintaxe e Semântica mleal@inf.puc-rio.br Fases da Compilação programa fonte tokens parse tree árvore anotada ou outra forma intermediária código intermediário código objeto código objeto otimizado scanner
Leia maisEngenharia Civil. Introdução à Programação
Engenharia Civil Introdução à Programação Retomada Computador: é uma máquina capaz de coletar, manipular e fornecer os resultados da manipulação de informações para um ou mais objetivos Hardware é a parte
Leia maisIntrodução à Programação
Introdução à Programação Linguagens de Programação: sintaxe e semântica de linguagens de programação e conceitos de linguagens interpretadas e compiladas Engenharia da Computação Professor: Críston Pereira
Leia mais03. [Sebesta, 2000] Descreva a operação de um gerador de linguagem geral.
01. [Sebesta, 2000] Defina sintaxe e semântica. 02. [Sebesta, 2000] A quem se destinam as descrições de linguagem? 03. [Sebesta, 2000] Descreva a operação de um gerador de linguagem geral. 04. [Sebesta,
Leia mais= = = = = = = = = = = = = = = =
Página 1 de 7 A Linguagem PASCAL = = = = = = = = = = = = = = = = 1) ALFABETO: são os símbolos (ié, caracteres ) permitidos na linguagem. São as letras (maiúsculas e minúsculas), os algarismos (ou dígitos)
Leia mais