RDF (Resource Description Framework) RDFS (Resource Description Framework Schema)

Tamanho: px
Começar a partir da página:

Download "RDF (Resource Description Framework) RDFS (Resource Description Framework Schema)"

Transcrição

1 RDF (Resource Description Framework) RDFS (Resource Description Framework Schema) Tópicos Especiais em Engenharia de Software I (Introdução à Engenharia de Ontologias) Curso: Engenharia de Computação Prof. Maria das Graças da Silva Teixeira DECOM / CEUNES / UFES Semestre: Considerações RDF é uma recomendação do W3C para padronizar a definição e utilização de metadados (título, autor, data de criação,...) de descrição de recursos da web. É uma linguagem para representar informações sobre recursos da Web; É adequado para representar dados e proporciona uma forma simples de expressar afirmações sobre os recursos; Tenta trazer interoperabilidade ante a multiplicidade de formatos incompatíveis existentes na web; A linguagem XML é utilizada para representar os componentes do RDF, sendo portanto processável por máquina. 1

2 Considerações RDF também pode ser usada para representar informações sobre coisas que podem ser identificadas na WEB, mesmo que elas não possam ser recuperadas diretamente na WEB. Exemplos: informações sobre itens disponíveis para compras online, ou a descrição das preferências de um usuário da Web. Conceito Fundamental: Tripla Componentes: Sujeito predicado/propriedade objeto; Sujeito: recurso, coisas, tais como pessoas e páginas Web aquilo do qual se quer falar; Predicado: atributo (propriedades) ou aspecto do recurso, tais como is sister of, is author of descrevem relacionamentos entre os recursos; Objeto: valor do atributo ou objeto da relação, pode ser um URI ou um literal; Formatos possíveis: Grafo; Propriedade (sujeito, objeto). 2

3 Conceito Fundamental: Tripla Exemplo: A página é mantida por Maria das Graças mantidapor( Maria das Graças) sujeito Tem-se um RECURSO, uma PROPRIEDADE desse recurso e um VALOR para essa propriedade. mantidapor (predicado) Maria das Graças objeto Conceito Fundamental: Tripla Em RDF, o sujeito e o objeto podem mudar de posição, dependendo da tripla. Exemplo: mantidapor( Maria das Graças) cargo(maria das Graças, professora assistente) OBS.: Apenas URIs podem passar por tal processo, pois literais podem ser apenas Objetos. 3

4 Conceitos Básicos RDF se utiliza dos seguintes conceitos: Grafo de Modelo de Dados; Vocabulário baseado em URIs; Tipos de Dados; Literais; Sintaxe de Serialização XML; Expressão de Fatos Simples; Vinculação. Grafo de Modelo de Dados O grafo é um resultado visual do conjunto de triplas da expressão RDF que está se desenvolvendo para representar um determinado modelo de dados; Cada tripla representa uma ligação nó-aresta-nó; Exemplo: Texto sobre Eric Miller. Existe uma Pessoa identificada por cujo nome é Eric Miller, cujo é em@w3.org e cujo título é Doutor. 4

5 Grafo de Modelo de Dados Grafo de Modelo de Dados Notação em tripla do grafo exemplo. < < < < < "Eric Miller". < < < < "Dr.". 5

6 Grafo de Modelo de Dados Notação em XML do grafo exemplo. <?xml version="1.0"?> <rdf:rdf xmlns:rdf=" xmlns:contact=" <contact:person rdf:about=" <contact:fullname>eric Miller</contact:fullName> <contact:mailbox <contact:personaltitle>dr.</contact:personaltitle> </contact:person> </rdf:rdf> Vocabulário baseado em URIs Cada nó do grafo RDF pode ser uma URI, um literal ou estar em branco (não sendo identificado); Os predicados são identificados por URIs e também podem ser nós do grafo; Uma URI ou literal usada como um nó identifica o que aquele nó representa; Uma URI usada como predicado identifica um relacionamento entre as coisas representadas pelos nós que ele conecta; 6

7 Tipos de Dados São usados em RDF para representação de valores, tais como números (inteiros, reais), datas; Consiste de um espaço léxico, um espaço de valores e um mapeamento léxico-para-valor; É identificado por uma, ou mais, URI; Por recomendação do W3C espera-se que os tipos de dados definidos no XMLSchema sejam utilizados; O RDF não provê nenhum mecanimos para definição de novos dataypes. Os datatypes do XML Schema provêem um framework extensível adequado para definição de novos datatypes para uso em RDF. Tipos de Dados Exemplo: O mapeamento léxico-para-valor do tipo de dado xsd:boolean do XMLSchema, onde cada membro do espaço de valores (T, F) possui duas representações léxicas é como: Espaço de valores {T, F} Espaço léxico { 0, 1, true, false } Mapeamento léxico-para-valores {< true, T>, < 1,T>, < false, F>, < 0, F>} 7

8 Literais São usados para identificar valores como números e datas por meio de uma representação léxica; Qualquer coisa representada como uma literal também pode ser representada através de uma URI, mas literais são mais intuitivas; Podem ser objeto em uma declaração RDF, mas não sujeito ou predicado; Podem ser: Simples (plain) strings combinadas com tags opcionais da linguagem; Typed (tipados) - strings combinadas com alguma URI de tipo de dados. Exemplo: <xsd:boolean, true > Literais Exemplo: Typed Literal Lexical-to-Value Mapping Value <xsd:boolean, "true"> <"true", T> T <xsd:boolean, "1"> <"1", T> T <xsd:boolean, "false"> <"false", F> F <xsd:boolean, "0"> <"0", F> F 8

9 Sintaxe de serialização de XML Existe uma forma recomendada de serialização de RDF em XML de forma a facilitar a troca de modelos RDF entre aplicações; Expressão de Fatos Simples Indicam um relacionamento entre duas entidades; Podem ser representados como um tripla RDF na qual o predicado nomeia o relacionamento e o sujeito e o objeto as duas entidades; São como uma linha numa tabela relacional, onde as colunas são o sujeito e o objeto, e o nome da tabela representa o predicado; Também podem ser vistos como um predicado com dois argumentos da lógica de predicados; 9

10 Expressão de Fatos Simples Exemplo: Sujeito mantidapor Objeto Maria das Graças mantidapor( Maria das Graças) Expressão de Fatos Simples Tanto bancos de dados relacionais, como lógica de 1ª. Ordem permitem relações ou predicados com mais de duas entidades; Para representar algo assim em RDF é preciso decompor a tripla RDF; Uma forma simples de fazer essa decomposição é introduzir um nó em branco no grafo correspondente à linha (BD), e uma nova tripla para cada célula da linha; O sujeito da tripla é o nó em branco, o predicado é dado pelo nome da coluna, o objeto corresponde ao valor da célula. 10

11 Expressão de Fatos Simples Exemplo: Vinculação Uma expressão RDF A é dita que vincula outra expressão RDF B se todo possível estado das coisas do mundo que tornam A verdadeiro também tornam B verdadeiro; Ou seja, se a verdade de A é presumida ou demonstrada, então a verdade de B pode ser inferida. 11

12 Sintaxe RDF/XML Sintaxe recomendada pelo W3C. Outro exemplo de notação: N3; De acordo com RDF/XML, um documento RDF é uma lista de descrições de recursos em XML; Cada descrição corresponde a um recurso (sujeito) e contém as propriedades que o definem; Cada descrição é representada por um elemento XML do tipo <rdf:description>, com um dos seguintes atributos: <rdf:about> ou <rdf:id> ou anônimo. Tal atributo indica o sujeito da tripla; Os valores das propriedades podem conter literais, outros recursos (URI) ou uma descrição de outro recurso. Sintaxe RDF/XML Descrição de propriedade com valor contendo literal: <rdf:description rdf:about= " <mantidapor>maria das Graças</mantidaPor> Descrição de propriedade com valor contendo outro recurso: <rdf:description rdf:about= " "> <mantidapor rdf:resource= "mailto:mariateixeira@ceunes.ufes.br"/> 12

13 Sintaxe RDF/XML Descrição de propriedade com valor contendo outra descrição: <rdf:description rdf:about= " <mantidapor> <rdf:description <TrabalhaCom </mantidapor> Sintaxe RDF/XML Tags/Atributos rdf:rdf Dentro de um documento XML identifica o bloco de declarações RDF. A tag de abertura pode conter as declarações de namespaces; rdf:description Dentro do bloco rdf:rdf, identifica a declaração de um recurso. rdf:about Utilizada como atributo da tag de abertura de rdf:description, identifica a URIref do sujeito a ser tratado, caso esse já exista; Propriedades Aninhados entre os tags de rdf:description, descrevem cada propriedade e o objeto correspondente. No caso do objeto ser um recurso, será identificado na própria tag da propriedade, através do atributo rdf:resource. 13

14 Sintaxe RDF/XML Tags/Atributos rdf:id Indica a criação de um Fragment Identifier no documento RDF sendo construído. Exemplo: Supor que se esteja criando o documento RDF armazenado em (URI base). <?xml version="1.0"?> <rdf:rdf xmlns:rdf=" xmlns:exterms=" <rdf:description rdf:id="item10245"> <exterms:model>overnighter</exterms:model> <exterms:sleeps>2</exterms:sleeps> <exterms:weight>2.4</exterms:weight> <exterms:packedsize>784</exterms:packedsize>...other product descriptions... </rdf:rdf> Fragment Identifier: item10245 URIref equivalente: Sintaxe RDF/XML Tags/Atributos rdf:type Propriedade que indica que um recurso é instância de um outro recurso. Valor/Objeto recurso que representa uma categoria/classe; Sujeito instância da categoria/classe; Exemplo: <?xml version="1.0"?> <rdf:rdf xmlns:rdf=" xmlns:exterms=" xml:base=" <rdf:description rdf:id="item10245"> <rdf:type rdf:resource=" <exterms:model>overnighter</exterms:model> <exterms:sleeps>2</exterms:sleeps> <exterms:weight>2.4</exterms:weight> <exterms:packedsize>784</exterms:packedsize>...other product descriptions... </rdf:rdf> 14

15 Sintaxe RDF/XML Tags/Atributos rdf:type. Exemplo (notação alternativa, simplificada): <?xml version="1.0"?> <rdf:rdf xmlns:rdf=" xmlns:exterms=" xml:base=" <exterms:tent rdf:id="item10245"> <exterms:model>overnighter</exterms:model> <exterms:sleeps>2</exterms:sleeps> <exterms:weight>2.4</exterms:weight> <exterms:packedsize>784</exterms:packedsize> </exterms:tent>...other product descriptions... </rdf:rdf> Sintaxe RDF/XML XML base A URI base do documento RDF é a URI do documento que contém as afirmações em RDF; A URI base pode ser explicitamente indicada no documento, através do atributo xml:base, nos namespaces do documento; Exemplo: <?xml version="1.0"?> <rdf:rdf xmlns:rdf=" xmlns:exterms=" xml:base=" <rdf:description rdf:id="item10245"> <exterms:model>overnighter</exterms:model> <exterms:sleeps>2</exterms:sleeps> <exterms:weight >2.4</exterms:weight> <exterms:packedsize >784</exterms:packedSize>...other product descriptions... </rdf:rdf> 15

16 URI Reference RDF é baseada na ideia de identificar coisas (qualquer componente da tripla) usando identificadores Web (URI); Uma URI reference (ou URIref) é uma URI junto com um fragment identifier opcional no final; Exemplo: a URI reference consiste na URI e (separado pelo caracter # ) do fragment identifier Section2. RDF URIrefs podem conter caracteres Unicode, permitindo que muitas linguagens sejam refletidas em URIrefs. URI Reference 16

17 URI Reference URIrefs podem ser utilizados para identificar: Indivíduos, por ex., Eric Miller, identificado por Tipos das coisas, por ex., Person, identificado por Propriedades das coisas, por ex., mailbox, identificado por Valores das propriedades, por ex., que é um valor para a propriedade mailbox. RDF também utiliza caracteres strings, tal como "Eric Miller", e valores de outros dataypes, tal como inteiros e datas, como valores de propriedades. Qualified Name A notação de tripla completa requer que a URIref seja escrita completamente dentro dos brackets, o que pode resultar em linhas muito longas em um documento RDF/XML; Por conveniência, foi estabelecida uma forma abreviada de se referenciar a um XML Qualified Name (QName), através da abreviação de URIref; QName prefix: uma abreviação para um URI namespace; Exemplo: Seja o QName prefix -foo associado ao namespace do URI Então foo:bar é uma abreviação para o URIref 17

18 Qualified Name Alguns QName prefix comuns: QName Prefix rdf: rdfs: dc: owl: ex: xsd: URI Namespace Qualified Name Exemplo: <?xml version= 1.0?> <rdf:rdf xmlns:rdf = xmlns:contact = > <rdf:description rdf:about= > <rdf:type rdf:resource=contact:person /> <contact:fullname>eric Miller</contact:fullName> <contact:mailbox rdf:resource = mailto:em@w3.org /> <contact:personaltitle>dr.</contact:personaltitle> </rdf:rdf> 18

19 Recursos Anônimos / Blank Nodes Algumas informações são mais complexas de serem representadas, e requerem alguma estruturação. Por exemplo: exstaff:85740 exterms:address "1501 Grant Avenue, Bedford, Massachusetts 01730". Supor que o endereço deva ser representado de forma estruturada (rua, cidade,...) ao invés de como uma string. Informação estruturada pode ser representada em RDF considerando a coisa a ser descrita (por exemplo, o endereço) como um recurso, e então construindo comandos sobre aquele novo recurso. Recursos Anônimos / Blank Nodes Exemplo (grafo): 19

20 Recursos Anônimos / Blank Nodes Exemplo (formato de triplas): exstaff:85740 exterms:address exaddressid: exaddressid:85740 exterms:street "1501 Grant Avenue". exaddressid:85740 exterms:city "Bedford". exaddressid:85740 exterms:state "Massachusetts". exaddressid:85740 exterms:postalcode "01730". Esta forma de representar uma informação estruturada pode envolver a geração de várias URIrefs intermediárias (tal como exaddressid:85740) para representar conceitos agregados. Tais conceitos podem nunca ser referenciados diretamente de fora do documento RDF original, não requerendo assim um identificador universal. Para resolver tal situação pode-se trabalhar com um recurso anônimo (um blank node no grafo), que pode ser representado, mas não requer um URI. Recursos Anônimos / Blank Nodes Exemplo (grafo): 20

21 Recursos Anônimos / Blank Nodes Exemplo (formato de triplas): exstaff:85740 exterms:address???.??? exterms:street "1501 Grant Avenue".??? exterms:city "Bedford".??? exterms:state "Massachusetts".??? exterms:postalcode "01730". Considerando que um grafo RDF pode ter mais de um blank node, para representar informações mais complexas, é necessário ter uma forma de identificar um recurso anônimo (destacado no código acima como??? ). Identificação de blank node: _:name Recursos Anônimos / Blank Nodes Exemplo (formato de triplas): exstaff:85740 exterms:address _:johnaddress. _:johnaddress exterms:street "1501 Grant Avenue". _:johnaddress exterms:city "Bedford". _:johnaddress exterms:state "Massachusetts". _:johnaddress exterms:postalcode "01730". 21

22 Literais Além de URIs, o objeto de uma tripla RDF pode ser também um valor constante (literal); Tipos de literais: Plain (simples / não-tipados) composto apenas por caracteres. O literal é interpretado como string, mesmo se contiver números ou datas. Exemplo: _:johnaddress exterms:city "Bedford". Typed (tipados) Capacita a interpretação do tipo de dado representado pelo literal, isto é, que o valor seja associado a um datatype. Exemplo: exstaff:85740 exterms:age "27"^^xsd:integer. Literais Os datatypes comumente interpretados em um documento RDF são aqueles do XML Schema Datatype; Formas de representação de uma literal tipada (com exemplo): Em um grafo: 22

23 Literais Formas de representação de uma literal tipada (com exemplo, cont): Representação de tripla: < < "27"^^< Usando Qname prefix: exstaff:85740 exterms:age "27"^^xsd:integer. Notação XML/RDF: <?xml version= 1.0?> <rdf:rdf xmlns:rdf = xmlns:exterms = > <rdf:description rdf:about= > <exterms:age rdf:datatype= >27</exterms:age> </rdf:rdf> Outras capacidades RDF/XML - Containers Às vezes é necessário trabalhar ou declarar fatos sobre um conjunto de entidades. RDF/XML oferece um vocabulário de recursos para tal. Tais recursos são chamados containers; Um container é um recurso que contém objetos, denominados membros; Os membros podem ser recursos ou literais; 23

24 Outras capacidades RDF/XML - Containers Tipos pré-definidos: rdf:bag representa um grupo de recursos / literais, possivelmente com membros duplicados, onde não é relevante a ordem dos membros; rdf:seq representa um grupo de recursos / literais, possivelmente com membros duplicados, onde a ordem dos membros é relevante; rdf:alt representa um grupo de recursos / literiis que são alternativas (tipicamente para um único valor de uma propriedade). Outras capacidades RDF/XML - Containers Para descrever um recurso como sendo um container, o recurso é colocado como tendo uma propriedade rdf:type, cujo valor é um dos tipos rdf:bag, rdf:seq, rdf:alt; O recurso do container (que pode ser um blank node ou um recurso com URIref) denota o grupo como um todo; Os membros do container podem ser descritos definindo-se uma propriedade membership container para cada membro, com o recurso do container como sujeito e o membro como objeto; As propriedades membership container tem nomes no formato rdf:_n, onde n é um inteiro maior do que zero; Recursos container também podem ter outras propriedades que descrevem o container. 24

25 Outras capacidades RDF/XML - Containers Outras capacidades RDF/XML - Containers Exemplo: <?xml version="1.0"?> <rdf:rdf xmlns:rdf=" xmlns:s=" <rdf:description rdf:about=" <s:students> <rdf:bag> <rdf:li rdf:resource=" <rdf:li rdf:resource=" <rdf:li rdf:resource=" <rdf:li rdf:resource=" <rdf:li rdf:resource=" </rdf:bag> </s:students> </rdf:rdf> RDF/XML provê rdf:li como uma forma de evitar de indicar um número para cada propriedade membership. Os números necessários são gerados a partir de tal propriedade. 25

26 Outras capacidades RDF/XML - Collections Uma limitação dos containers é não poder fechá-los, isto é, indicar que outros membros não existem; Um Collection em RDF é um grupo de entidades representadas como uma estrutura de listas no grafo RDF; A estrutura é montada usando o vocabulário de Collection, que consiste em: O tipo lista rdf:list A propriedade primeiro rdf:first A propriedade resto rdf:rest O recurso nulo rdf:nil Outras capacidades RDF/XML - Collections 26

27 Outras capacidades RDF/XML - Collections Exemplo: <?xml version="1.0"?> <rdf:rdf xmlns:rdf=" xmlns:s=" <rdf:description rdf:about=" <s:students rdf:nodeid="sch1"/> <rdf:description rdf:nodeid="sch1"> <rdf:first rdf:resource=" <rdf:rest rdf:nodeid="sch2"/> <rdf:description rdf:nodeid="sch2"> <rdf:first rdf:resource=" <rdf:rest rdf:nodeid="sch3"/> <rdf:description rdf:nodeid="sch3"> <rdf:first rdf:resource=" <rdf:rest rdf:resource=" </rdf:rdf> Outras capacidades RDF/XML - Collections Exemplo (usando notação simplificada): <?xml version="1.0"?> <rdf:rdf xmlns:rdf=" xmlns:s=" <rdf:description rdf:about=" <s:students rdf:parsetype="collection"> <rdf:description rdf:about=" <rdf:description rdf:about=" <rdf:description rdf:about=" </s:students> </rdf:rdf> 27

28 Outras capacidades RDF/XML - Reification Aplicações RDF algumas vezes precisam descrever outras afirmações RDF usando RDF, para registrar informação, por exemplo, sobre quem fez o comando,quando ele foi feito, etc; RDF provê um vocabulário próprio para descrever afirmações RDF. Uma descrição de afirmação é denominada uma reificação da afirmação; Sintaxe: rdf:statement indica que a afirmação é sobre outra afirmação; rdf:subject indica o sujeito da afirmação; rdf:predicate indica o predicado da afirmação; rdf:object indica o objeto da afirmação. Outras capacidades RDF/XML - Reification Seja a tripla: exproducts:item10245 exterms:weight "2.4"^^xsd:decimal. Uma descrição da afirmação (uma reificação), usando uma URIref (neste caso exproducts:triple12345): exproducts:triple12345 rdf:type rdf:statement. exproducts:triple12345 rdf:subject exproducts:item exproducts:triple12345 rdf:predicate exterms:weight. exproducts:triple12345 rdf:object "2.4"^^xsd:decimal. Uma vez descrita a afirmação dessa forma, informações adicionais a tais triplas podem ser feitas, como por exemplo: exproducts:triple12345 dc:creator exstaff:

29 Outras capacidades RDF/XML - Reification Prosseguindo no exemplo: a afirmação original, junto com a reificação e a identificação do criador, forma o grafo RDF abaixo. Introduz primitivas básicas que permitem falar de classe, subclasse, domínio e restrições de valores das propriedades, em contexto da web; Permitem aos desenvolvedores definir um vocabulário básico para dados RDF e especificar o tipo de objeto aos quais se aplicam tais atributos; Proporciona um mecanismo de tipagem básica para modelos RDF, utilizando termos definidos, tais como: Class, subpropertyof, subclassof; Os objetos RDF podem ser definidos como instâncias de uma ou mais classes, usando a propriedade type. 29

30 Provê um conjunto de recursos e propriedades: Com significado bem definido; Utilizado para descrever classes e propriedades de uma aplicação; Forma um vocabulário reservado (de RDF Schema) estendendo o vocabulário RDF. rdfs:resource Todas as coisas descritas por RDF são recursos, e portanto instâncias da classe rdfs:resource. É a classe raiz de todas as outras (suas subclasses); rdfs:class É a classe dos recursos que são classes RDF. rdfs:literal Classe dos valores literais para propriedades, tais como strings e números inteiros. É uma instância de rdfs:class, e portanto uma subclasse de rdfs:resource; Podem ser tipados ou não. Os valores tipados são instâncias da classe datatype. 30

31 rdfs:property É a classe das propriedades herdadas de RDF. Instância de rdfs:class; rdfs:subclassof Usada para declarar que todas as instâncias de uma classe são instâncias de outra classe. Instância de rdfs:property; É uma propriedade transitiva; Definição de classe. Sujeito: identificação de classe; Predicado: rdf:type; Objeto: rdfs:class; Exemplo: xml:base ex Tripla: ex:motorvehicle rdf:type rdfs:class RDF/XML: <?xml version= 1.0?> <rdf:rdf xmlns:rdf= > <rdf:description rdf:id= MotorVehicle > <rdf:type rdf:resource= /> </rdf:rdf> 31

32 Definição de subclasse. Sujeito: identificação da subclasse; Predicado: rdfs:subclassof; Objeto: identificação da superclasse; Exemplo: xml:base ex Tripla: ex:van rdf:type rdfs:class ex:van rdfs:subclassof ex:motorvehicle Exemplo: 32

33 <rdf:rdf xmlns:rdf=" xmlns:rdfs=" xml:base=" <rdf:description rdf:id="motorvehicle"> <rdf:type rdf:resource=" <rdf:description rdf:id="passengervehicle"> <rdf:type rdf:resource=" <rdfs:subclassof rdf:resource="#motorvehicle"/> <rdf:description rdf:id="truck"> <rdf:type rdf:resource=" <rdfs:subclassof rdf:resource="#motorvehicle"/> <rdf:description rdf:id="van"> <rdf:type rdf:resource=" <rdfs:subclassof rdf:resource="#motorvehicle"/> <rdf:description rdf:id="minivan"> <rdf:type rdf:resource=" <rdfs:subclassof rdf:resource="#van"/> <rdfs:subclassof rdf:resource="#passengervehicle"/> </rdf:rdf> Definição de instância de classe. Sujeito: recurso identificando a instância da classe; Predicado: rdfs:type; Objeto: recurso identificando a classe; 33

34 Exemplo: xml:base ex Tripla: ex:companycar rdf:type ex:motorvehicle RDF/XML: <rdf:rdf xmlns:rdf= xmlns:ex= > <rdf:description rdf:id= companycar > <rdf:type rdf:resource= /> </rdf:rdf> Formatos alternativos: <rdf:type rdf:resource= ex:#motorvehicle /> <rdf:type rdf:resource= #MotorVehicle /> Definição de propriedade. Sujeito: recurso identificando o nome da propriedade; Predicado: rdfs:type; Objeto: rdf:property; Exemplo: exterms:weightinkg rdf:type rdf:property 34

35 Definição de domínio de uma propriedade. Sujeito: recurso identificando o nome da propriedade; Predicado: rdfs:domain; Objeto: recurso identificando o nome de uma classe; Exemplo: ex:book rdf:type rdfs:class ex:author rdf:type rdf:property ex:author rdfs:domain ex:book Definição de range (contradomínio) de uma propriedade. Sujeito: recurso identificando o nome da propriedade; Predicado: rdfs:range; Objeto: recurso identificando o nome de uma classe ou o nome de um XSD dataype; Exemplo: ex:person rdf:type rdfs:class ex:author rdf:type rdf:property ex:author rdfs:range ex:person ex:age rdf:type rdf:property ex:age rdfs:range xsd:integer xsd:integer rdf:type rdfs:datatype 35

36 Exemplo: <rdf:description rdf:id="registeredto"> <rdf:type rdf:resource=" <rdfs:domain rdf:resource="#motorvehicle"/> <rdfs:range rdf:resource="#person"/> <rdf:description rdf:id="rearseatlegroom"> <rdf:type rdf:resource=" <rdfs:domain rdf:resource="#passengervehicle"/> <rdfs:range rdf:resource=" <rdf:description rdf:id="person"> <rdf:type rdf:resource=" <rdf:description rdf:about=" <rdf:type rdf:resource=" Exemplo (formato alternativo): <rdf:property rdf:id="registeredto"> <rdfs:domain rdf:resource="#motorvehicle"/> <rdfs:range rdf:resource="#person"/> </rdf:property> <rdf:property rdf:id="rearseatlegroom"> <rdfs:domain rdf:resource="#passengervehicle"/> <rdfs:range rdf:resource="&xsd;integer"/> </rdf:property> <rdfs:class rdf:id="person"/> <rdfs:datatype rdf:about="&xsd;integer"/> 36

37 Definição de sub-propriedade. Sujeito: recurso identificando o nome da sub-propriedade; Predicado: rdfs:subpropertyof; Objeto: recurso identificando o nome da super-propriedade; Exemplo: ex:driver rdf:type rdf:property ex:primarydriver rdf:type rdf:property ex:primarydriver rdfs:subpropertyof ex:driver <rdf:property rdf:id="driver"> <rdfs:domain rdf:resource="#motorvehicle"/> </rdf:property> <rdf:property rdf:id="primarydriver"> <rdfs:subpropertyof rdf:resource="#driver"/> </rdf:property> Exemplo, dois formatos XML/RDF: <rdf:property rdf:id="driver"> <rdfs:domain rdf:resource="#motorvehicle"/> </rdf:property> <rdf:property rdf:id="primarydriver"> <rdfs:subpropertyof rdf:resource="#driver"/> </rdf:property> <rdf:description rdf:id="driver"> <rdf:type rdf:resource=" <rdfs:domain rdf:resource="#motorvehicle"/> <rdf:description rdf:id="primarydriver"> <rdf:type rdf:resource=" <rdfs:subpropertyof rdf:resource="#driver"/> 37

38 Definição de instância de propriedade. Sujeito: recurso identificando uma instância de alguma classe; Predicado: nome da propriedade; Objeto: recurso identificando uma instância de alguma classe, ou literal indicando o valor da propriedade; Exemplo: ex:johnsmithscar ex:registeredto ex:85740 Exemplo, formato 1 em XML/RDF: <rdf:rdf xmlns:rdf=" xmlns:ex=" xml:base=" <ex:passengervehicle rdf:id="johnsmithscar"> <ex:registeredto rdf:resource=" <ex:rearseatlegroom rdf:datatype="&xsd;integer">127</ex:rearseatlegroom> <ex:primarydriver rdf:resource=" </ex:passengervehicle> </rdf:rdf> 38

39 Exemplo, formato 2 em XML/RDF: <rdf:rdf xmlns:rdf=" xmlns:ex=" <rdf:description rdf:id="johnsmithscar"> <rdf:type rdf:resource=" <ex:registeredto rdf:resource=" <ex:rearseatlegroom rdf:datatype=" 127</ex:rearSeatLegRoom> <ex:primarydriver rdf:resource=" </rdf:rdf> Pode ser vista como uma linguagem para descrever conhecimento muito simples; Porém existe muito tipo de conhecimento que não pode ser expresso em tal linguagem. Exemplo: afirmar que cada livro tem um único título e pelo menos um autor; afirmar que um livro tem que ter capa dura ou capa normal ; Para expressar o conhecimento necessário ao desenvolvimento de uma web semântica se faz necessário desenvolver uma linguagem mais expressiva, o que é feito na próxima camada: Vocabulário para Ontologia. 39

40 Referências Bibliográficas BREITMAN, K. Web semântica a internet do Futuro. LTC, ISBN Capítulo 4 Como representar? Linguagens para representação de Ontologias. WWW Consortium RDF e RDFS e Destaque para: e Seminário: Semantic Web Applications. Disponível em: STAAB, S., STUDER, R. (editors). Handbook on Ontology. Springer, Part 1 Ontology Representation Languages Resource Description Framework. 40

Módulo 2b - Ontologias - RDF

Módulo 2b - Ontologias - RDF Tecnologias de Banco de Dados para a Web Semântica Módulo 2b - Ontologias - RDF Marco A. Casanova 7/3/2005 (c) Marco A. Casanova - PUC-Rio 1 Tópicos Introdução URIref e Qname RDF Básica RDF/XML Outros

Leia mais

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica Ernesto F. Veiga, Márcio V. Oliveira Sena, Renato de F. Bulcão Neto ernestofonseca@inf.ufg.br marciovinicius@inf.ufg.br

Leia mais

D2R EDITOR: HABILITANDO A PUBLICAÇÃO AUTOMÁTICA DE ANOTAÇÕES SEMÂNTICAS DE SITES DINÂMICOS

D2R EDITOR: HABILITANDO A PUBLICAÇÃO AUTOMÁTICA DE ANOTAÇÕES SEMÂNTICAS DE SITES DINÂMICOS UNIVERSIDADE FEDERAL DE SANTA CATARINA PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO André Guerreiro Cantarelli D2R EDITOR: HABILITANDO A PUBLICAÇÃO AUTOMÁTICA DE ANOTAÇÕES SEMÂNTICAS DE SITES DINÂMICOS

Leia mais

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica Ernesto F. Veiga, Márcio V. Oliveira Sena, Renato de F. Bulcão Neto ernestofonseca@inf.ufg.br marciovinicius@inf.ufg.br

Leia mais

L A C Laboratory for Advanced Collaboration

L A C Laboratory for Advanced Collaboration Publicação de Dados Governamentais no Padrão Linked Data 2.2 O Padrão RDF Karin Breitman José Viterbo Edgard Marx Percy Salas L A C Laboratory for Advanced Collaboration Objetivo deste módulo 1.Apresentar

Leia mais

OWL-DL Propriedades. Tópicos Especiais em Ontologias UTFPR/CPGEI/Prof. Tacla

OWL-DL Propriedades. Tópicos Especiais em Ontologias UTFPR/CPGEI/Prof. Tacla OWL-DL Propriedades Tópicos Especiais em Ontologias UTFPR/CPGEI/Prof. Tacla PROPRIEDADES Propriedades são relações entre dois indivíduos. Tipos de propriedades em OWL Object properties: liga um indivíduos

Leia mais

Introdução 17. 1 Introdução

Introdução 17. 1 Introdução Introdução 17 1 Introdução O volume de informações que gerenciamos tem crescido a cada dia. Realizamos milhões de pesquisas na Web, postamos mensagens em blogs, enviamos mensagens de correio eletrônico,

Leia mais

RDF e RDF Schema na representação de páginas do portal CEULP/ULBRA

RDF e RDF Schema na representação de páginas do portal CEULP/ULBRA RDF e RDF Schema na representação de páginas do portal CEULP/ULBRA Danilo de Abreu Noleto 1, Parcilene Fernandes de Brito 1 1 Curso de Sistemas de Informação Centro Universitário Luterano de Palmas (CEULP/ULBRA)

Leia mais

MAPEAMENTO DE CONSULTAS SQL EM XML ENTRE SISTEMAS GERENCIADORES DE BANCO DE DADOS RELACIONAIS

MAPEAMENTO DE CONSULTAS SQL EM XML ENTRE SISTEMAS GERENCIADORES DE BANCO DE DADOS RELACIONAIS Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Sistemas de Informação RENATO SULZBACH MAPEAMENTO DE CONSULTAS SQL EM XML ENTRE SISTEMAS GERENCIADORES

Leia mais

extensible Markup Language (XML) XML é uma linguagem de anotação. XML utiliza tags para descrever informação.

extensible Markup Language (XML) XML é uma linguagem de anotação. XML utiliza tags para descrever informação. extensible Markup Language (XML) XML é uma linguagem de anotação. XML utiliza tags para descrever informação. Em XML, os tags não são pré-definidos. Temos de definir os nossos tags. XML utiliza um Document

Leia mais

Web semântica aplicada ao serviço da Consultadoria jurídica - Lei de arrendamento

Web semântica aplicada ao serviço da Consultadoria jurídica - Lei de arrendamento Nelson Rodrigues Web semântica aplicada ao serviço da Consultadoria jurídica - Lei de arrendamento Engenharia Informática Setembro 2010 Web semântica aplicada ao serviço da Consultadoria jurídica - Lei

Leia mais

JONATHAN SCHNEIDER CRIAÇÃO E CONSUMO DE DADOS NOS PADRÕES DA WEB SEMÂNTICA, UTILIZANDO RDF E JENA

JONATHAN SCHNEIDER CRIAÇÃO E CONSUMO DE DADOS NOS PADRÕES DA WEB SEMÂNTICA, UTILIZANDO RDF E JENA FUNDAÇÃO DE ENSINO EURÍPIDES SOARES DA ROCHA CENTRO UNIVERSITÁRIO EURÍPIDES DE MARÍLIA UNIVEM CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO JONATHAN SCHNEIDER CRIAÇÃO E CONSUMO DE DADOS NOS PADRÕES DA

Leia mais

Metadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados

Metadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados 1. Introdução O governo é um dos maiores detentores de recursos da informação. Consequentemente, tem sido o responsável por assegurar que tais recursos estejam agregando valor para os cidadãos, as empresas,

Leia mais

O padrão RDF na descrição de imagens

O padrão RDF na descrição de imagens O padrão RDF na descrição de imagens Edeilson Milhomem da Silva 1, Parcilene Fernandes de Brito 1 1 Sistemas de Informação Centro Universitário Luterano de Palmas (CEULP/ULBRA) Cx. Postal 160 77054-970

Leia mais

3.1 Definições Uma classe é a descrição de um tipo de objeto.

3.1 Definições Uma classe é a descrição de um tipo de objeto. Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Classes Autoria:Aristófanes Corrêa Silva Adaptação:

Leia mais

XML Básico. Murillo Vasconcelos Henriques B. Castro. 17 de maio de 2011

XML Básico. Murillo Vasconcelos Henriques B. Castro. 17 de maio de 2011 XML Básico Murillo Vasconcelos Henriques B. Castro 17 de maio de 2011 O QUE É? Sigla para extensible Markable Language É uma linguagem de marcação, assim como HTML Desenvolvida para ser auto explicativa

Leia mais

Web de hoje (2.0) Porquê WEB 2.0?

Web de hoje (2.0) Porquê WEB 2.0? WEB 2.0 Conceitos O termo Web 2.0 refere-se a mudança para uma Internet como plataforma e um entendimento das regras para obter sucesso nesta nova plataforma. Segundo Tim O'Reilly, um dos criadores do

Leia mais

Web Semântica. Web Semântica. uma introdução @yaso

Web Semântica. Web Semântica. uma introdução @yaso Web Semântica uma introdução @yaso O que é SEMÂNTICA Semântica é o estudo do signifcado. Incide sobre a relação entre signifcantes, tais como palavras, frases, sinais e símbolos, e o que eles representam,

Leia mais

Base de dados I. Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade

Base de dados I. Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade Base de dados I O que é? Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade Para que serve? Serve para gerir vastos conjuntos de informação de

Leia mais

Uma expressão básica em SQL consiste em três cláusulas: select, from e where.

Uma expressão básica em SQL consiste em três cláusulas: select, from e where. Introdução a Banco de Dados O.K. Takai; I.C.Italiano; J.E. Ferreira. 67 8 A Linguagem SQL A linguagem SQL é um padrão de linguagem de consulta comercial que usa uma combinação de construtores em Álgebra

Leia mais

5 - Vetores e Matrizes Linguagem C CAPÍTULO 5 VETORES E MATRIZES

5 - Vetores e Matrizes Linguagem C CAPÍTULO 5 VETORES E MATRIZES CAPÍTULO 5 5 VETORES E MATRIZES 5.1 Vetores Um vetor armazena uma determinada quantidade de dados de mesmo tipo. Vamos supor o problema de encontrar a média de idade de 4 pessoas. O programa poderia ser:

Leia mais

3 Um Modelo de Operações para a web semântica 3.1. Modelo de Operações

3 Um Modelo de Operações para a web semântica 3.1. Modelo de Operações 34 3 Um Modelo de Operações para a web semântica 3.1. Modelo de Operações As classes do Modelo de Operações representam a definição de como deve ser uma operação em uma aplicação, ou seja, quais os valores

Leia mais

XML (extensible Markup Language) por. Rafael Port da Rocha. (Notas de Aula)

XML (extensible Markup Language) por. Rafael Port da Rocha. (Notas de Aula) XML (extensible Markup Language) por Rafael Port da Rocha (Notas de Aula) 2007 Introcução Componentes de um Documento Eletrônico Digital Conteúdo: formado pelas informações que o documento transmite aos

Leia mais

Protégé Desenvolvimento de contologias

Protégé Desenvolvimento de contologias Protégé Desenvolvimento de contologias Joel Luis Carbonera jlcarbonera@inf.ufrgs.br Protégé Desenvolvimento de contologias Ontologias Ontologias Termo do domínio da Filosofia A disciplina filosófica preocupada

Leia mais

XML XML. XML extensible Markup Language HTML. Motivação. W3C: World Wide Web Consortium XML 1.0. Mário Meireles Teixeira DEINF-UFMA

XML XML. XML extensible Markup Language HTML. Motivação. W3C: World Wide Web Consortium XML 1.0. Mário Meireles Teixeira DEINF-UFMA Mário Meireles Teixeira DEINF-UFMA Motivação extensible Markup Language W3C: World Wide Web Consortium http://www.w3.org 1.0 W3C Recommendation, 10/Fev/1998 (inicial) W3C Recommendation, 04/Fev/2004, 3

Leia mais

Serviços Web Semânticos

Serviços Web Semânticos Serviços Web Semânticos Paulo Vitor Antonini Orlandin paulovitor_e@hotmail.com Resumo O grande crescimento na utilização de Serviços Web torna imprescindível o desenvolvimento de uma forma de melhoria

Leia mais

Aula de JavaScript 05/03/10

Aula de JavaScript 05/03/10 Objetos Sabe-se que variável são contêiners que podem armazenar um número, uma string de texto ou outro valor. O JavaScript também suporta objetos. Objetos são contêiners que podem armazenar dados e inclusive

Leia mais

Armazienamento de Dados

Armazienamento de Dados Armazienamento de Dados Bernade'e Farias Lóscio bfl@cin.ufpe.br Agenda Dados x metadados Fontes de dados: de onde os dados podem ser extraídos? Dados abertos: em qual formato publicar? A importância dos

Leia mais

Resolução da lista de exercícios de casos de uso

Resolução da lista de exercícios de casos de uso Resolução da lista de exercícios de casos de uso 1. Explique quando são criados e utilizados os diagramas de casos de uso no processo de desenvolvimento incremental e iterativo. Na fase de concepção se

Leia mais

UNIDADE 6 - PROGRAMAÇÃO MODULAR

UNIDADE 6 - PROGRAMAÇÃO MODULAR UNIDADE 6 - PROGRAMAÇÃO MODULAR Até o momento as estruturas de controle (seqüência, seleção e repetição) de um algoritmo definia-o como um bloco lógico (início e fim). À medida que os problemas a serem

Leia mais

2 Ferramentas Utilizadas

2 Ferramentas Utilizadas 2 Ferramentas Utilizadas Esta dissertação utiliza vários outros trabalhos para implementar os mecanismos de adaptação abordados. Essas ferramentas são descritas nas seções seguintes. 2.1 Lua Lua [7, 8]

Leia mais

Introdução ao Paradigma Orientado a Objetos. Principais conceitos

Introdução ao Paradigma Orientado a Objetos. Principais conceitos Introdução ao Paradigma Orientado a Objetos Principais conceitos Paradigmas de Programação PROGRAMAÇÃO ESTRUTURADA X PROGRAMAÇÃO ORIENTADA A OBJETOS Paradigma Programação estruturada Na programação estrutura

Leia mais

Introdução à Tecnologia Web HTML HyperText Markup Language XHTML extensible HyperText Markup Language Estrutura Básica do Documento HTML

Introdução à Tecnologia Web HTML HyperText Markup Language XHTML extensible HyperText Markup Language Estrutura Básica do Documento HTML IntroduçãoàTecnologiaWeb HTML HyperTextMarkupLanguage XHTML extensiblehypertextmarkuplanguage EstruturaBásicadoDocumentoHTML ProfªMSc.ElizabeteMunzlinger www.elizabete.com.br ProfªMSc.ElizabeteMunzlinger

Leia mais

Modelo Relacional. 2. Modelo Relacional (Lógico)

Modelo Relacional. 2. Modelo Relacional (Lógico) Modelo Relacional 2. Modelo Relacional (Lógico) Derivado do modelo conceitual; Depende do SGBD escolhido; Independe dos dispositivos de armazenamento; Primitivas: tabelas, linhas e colunas; Transformação

Leia mais

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior Prof. Antonio Almeida de Barros Jr. Introdução Dados Informações Banco de Dados Conceitos Básicos em Bancos de Dados Definição BD - Banco de Dados SGBD - Sistema de Gerenciamento de BD Programa de Aplicação

Leia mais

Internet. Gabriela Trevisan Bacharel em Sistemas de Infomação

Internet. Gabriela Trevisan Bacharel em Sistemas de Infomação Internet Gabriela Trevisan Bacharel em Sistemas de Infomação Histórico da Web World Wide Web o nosso www é o meio de comunicação mais utilizado no mundo atualmente. Através da WWW qualquer usuário conectado

Leia mais

Guia de publicação de imóveis

Guia de publicação de imóveis Guia de publicação de imóveis Como disponibilizar seus imóveis facilmente no Tá Tri Imóveis Porto Alegre, 01 de junho de 2011 imoveis@tatri.com.br http://www.tatri.com.br Índice Introdução...3 Sobre...3

Leia mais

INTRODUÇÃO À LINGUAGEM C++

INTRODUÇÃO À LINGUAGEM C++ INTRODUÇÃO À LINGUAGEM C++ 1 - VARIÁVEIS Variáveis espaço de memória reservado para armazenar tipos de dados, com um nome para referenciar seu conteúdo. Observações importantes Todas as variáveis devem

Leia mais

Linked Data Management. Capítulo 1: Linked Data & the Semantic Web Standards

Linked Data Management. Capítulo 1: Linked Data & the Semantic Web Standards Linked Data Management Capítulo 1: Linked Data & the Semantic Web Standards Carmem Hara 18 de outubro de 2016 Dados na Web Processamento automático de dados da Web: dados com sintaxe e semântica bem definidas

Leia mais

Especificação do Trabalho

Especificação do Trabalho Especificação do Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação, ligação,

Leia mais

Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos

Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos Lógica Aula 2 Técnicas de Programação Criando algoritmos Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos Criando

Leia mais

L A C Laboratory for Advanced Collaboration

L A C Laboratory for Advanced Collaboration Publicação de Dados Governamentais no Padrão Linked Data 2.3 Web Ontology Language (OWL) Karin Breitman José Viterbo Edgard Marx Percy Salas L A C Laboratory for Advanced Collaboration Objetivo deste módulo

Leia mais

Web Semântica: Conceitos, Tecnologias e Aplicações

Web Semântica: Conceitos, Tecnologias e Aplicações Web Semântica: Conceitos, Tecnologias e Aplicações Paulo Vitor Antonini Orlandin paulovitor_e@hotmail.com Resumo Com o crescente número de usuários da Internet, consequentemente o número de informações

Leia mais

Desenvolvimento em Ambiente Web. HTML - Introdução

Desenvolvimento em Ambiente Web. HTML - Introdução Desenvolvimento em Ambiente Web HTML - Introdução O que é HTML? HTML é uma linguagem para descrever a estrutura de uma página WEB. Ela permite: Publicar documentos online com cabeçalhos, texto, tabelas,

Leia mais

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL Aula 06: Introdução Linguagem HTML

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL Aula 06: Introdução Linguagem HTML PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL Aula 06: Introdução Linguagem HTML O Desenvolvimento Web O desenvolvimento web é o termo utilizado para descrever atividade relacionada

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Introdução Esse não é um curso de Java! O objetivo é aprender os conceitos da programação orientada a objetos,

Leia mais

Resource Description Framework (RDF) Instituto de Informática Universidade Federal de Goiás

Resource Description Framework (RDF) Instituto de Informática Universidade Federal de Goiás Resource Description Framework (RDF) Júnio César de Lima Cedric Luiz de Carvalho Technical Report - RT-INF_003-05 - Relatório Técnico June - 2005 - Junho The contents of this document are the sole responsibility

Leia mais

Protégé-OWL Tutorial. Adriano Melo André Chagas Fred Freitas. Sistemas Inteligentes http://www.cin.ufpe.br/~if684

Protégé-OWL Tutorial. Adriano Melo André Chagas Fred Freitas. Sistemas Inteligentes http://www.cin.ufpe.br/~if684 Protégé-OWL Tutorial Adriano Melo André Chagas Fred Freitas Sistemas Inteligentes http://www.cin.ufpe.br/~if684 Instalação Download do Protégé public de astm stanford.edu (site oficial) Protégé 3.4.4 OWL

Leia mais

Aula 2: Listas e Links

Aula 2: Listas e Links Aula 2: Listas e Links Nesta segunda aula, você aprenderá a utilizar listas numeradas ou não, a entender o que são listas de definições e como fazer referências a outros documentos. Vamos entender a diferença

Leia mais

Análise e Projeto Orientados a Objeto

Análise e Projeto Orientados a Objeto Análise e Projeto Orientados a Objeto Objetivos Comparar e contrastar Análise e Projeto Definir O que vamos fazer na disciplina? Saber uma linguagem de programação orientada a objeto (OO) não é suficiente

Leia mais

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica Ernesto F. Veiga, Márcio V. Oliveira Sena, Renato de F. Bulcão Neto ernestofonseca@inf.ufg.br marciovinicius@inf.ufg.br

Leia mais

DESENVOLVIMENTO DE SOFTWARE

DESENVOLVIMENTO DE SOFTWARE VARIAÁ VEL Antes de iniciarmos os comandos referentes a Banco de Dados, precisamos de uma breve descrição técnica sobre Variáveis que serão uma constante em programação seja qual for sua forma de leitura.

Leia mais

2. Conceitos e Arquitetura de Bancos de Dados

2. Conceitos e Arquitetura de Bancos de Dados Bancos de Dados 2. Conceitos e Arquitetura de Bancos de Dados 1 Arquitetura Moderna de SGBD SGBD antigos eram monolíticos e rígidos, voltados para funcionamento em ambientes centralizados (mainframes e

Leia mais

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO Santa Maria, 01 de Novembro de 2013. Revisão aula passada Projeto de Arquitetura Decisões de projeto de Arquitetura

Leia mais

XML para transferência de dados Estrutura hierárquica do XML DTDs e XML Schema Consultas de documentos XML: XPath e XQuery Transformação de

XML para transferência de dados Estrutura hierárquica do XML DTDs e XML Schema Consultas de documentos XML: XPath e XQuery Transformação de Capítulo 9: XML XML para transferência de dados Estrutura hierárquica do XML DTDs e XML Schema Consultas de documentos XML: XPath e XQuery Transformação de documentos XML: XSLT Mapeamento entre documentos

Leia mais

Microsoft Access INTRODUÇÃO. Sumário INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO. O que é Banco de Dados?

Microsoft Access INTRODUÇÃO. Sumário INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO. O que é Banco de Dados? Microsoft Access Sumário 1. 2. ABRINDO UM BANCO DE DADOS PRONTO 3. ASSISTENTE DE BANCO DE DADOS 4. NAVEGANDO PELO BANCO DE DADOS 5. CRIANDO UM BANCO DE DADOS DESDE O INÍCIO 6. CRIANDO COSULTAS 7. CRIANDO

Leia mais

MANUAL DE PADRONIZAÇÃO DE CODIFICAÇÃO PHP CODING STANDARDS

MANUAL DE PADRONIZAÇÃO DE CODIFICAÇÃO PHP CODING STANDARDS MANUAL DE PADRONIZAÇÃO DE CODIFICAÇÃO PHP CODING STANDARDS versão 1.0 W7BR Soluções e Tecnologia contato@w7br.com Sumário INTRODUÇÃO... 3 Observação... 3 FORMATO DO ARQUIVO PHP... 4 Identação... 4 Codificação

Leia mais

Projeto da Disciplina Parte1: Estudo de Viabilidade. Um Estudo de Viabilidade

Projeto da Disciplina Parte1: Estudo de Viabilidade. Um Estudo de Viabilidade Projeto da Disciplina Parte1: Estudo de Viabilidade ENTREGA: 09/04/09 Professor: Carlos José Maria Olguin Um Estudo de Viabilidade Você deve fazer um estudo de viabilidade para um projeto de sistema de

Leia mais

Introdução a Web Services

Introdução a Web Services Introdução a Web Services Mário Meireles Teixeira DEINF/UFMA O que é um Web Service? Web Service / Serviço Web É uma aplicação, identificada por um URI, cujas interfaces podem ser definidas, descritas

Leia mais

Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre

Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre Cap. 02 Fundamentos de Linguagens Sumário : Linguagem, alfabeto e gramática

Leia mais

CURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

CURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS CURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008/1 4º PERÍODO 7º MÓDULO AVALIAÇÃO A3 DATA 15/10/2009 ENGENHARIA DE SOFTWARE 2009/2 GABARITO COMENTADO QUESTÃO 1: Analise as afirmações

Leia mais

RDF e RDFS na Infra-estrutura de Suporte à Web Semântica

RDF e RDFS na Infra-estrutura de Suporte à Web Semântica RDF e RDFS na Infra-estrutura de Suporte à Web Semântica GEIZA CRISTINA DA SILVA, TARCÍSIO DE SOUZA LIMA (ORIENTADOR) Departamento de Ciência da Computação Instituto de Ciências Exatas Universidade Federal

Leia mais

Intercâmbio de informações operativas relativas ao Sistema de Medição para Faturamento SMF

Intercâmbio de informações operativas relativas ao Sistema de Medição para Faturamento SMF SCDE Sistema De Coleta De Dados De Energia FATQEE Base Histórica de Faturamento e Qualidade de Energia Anexo IV ao Acordo Operacional entre o ONS e CCEE Intercâmbio de informações operativas relativas

Leia mais

Disciplina Técnicas de Modelagem

Disciplina Técnicas de Modelagem T É C N I C A 3 MODELAGEM CONCEITUAL GENERALIZAÇÃO/ESPECIALIZAÇÃO, AGREGAÇÃO E COMPOSIÇÃO Generalização/Especialização Herança é o termo em orientação a objetos que se refere à criação de novas classes

Leia mais

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi XML e Banco de Dados de Internet Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi Motivação Diversas aplicações Web utilizam Fontes de Dados (BD); Arquitetura Cliente-Servidor (2

Leia mais

LÓGICA DE PROGRAMAÇÃO. Vitor Valerio de Souza Campos

LÓGICA DE PROGRAMAÇÃO. Vitor Valerio de Souza Campos LÓGICA DE PROGRAMAÇÃO Vitor Valerio de Souza Campos Exemplos de algoritmos Faça um algoritmo para mostrar o resultado da multiplicação de dois números. Algoritmo em descrição narrativa Passo 1 Receber

Leia mais

SISTEMAS DE INFORMAÇÃO GERENCIAIS

SISTEMAS DE INFORMAÇÃO GERENCIAIS SISTEMAS DE INFORMAÇÃO GERENCIAIS Aluno: Luiza Cavalcanti Marques Orientador: Silvio Hamacher Introdução A modelagem e a utilização de bancos de dados em atividades gerenciais têm sofrido um aumento significativo

Leia mais

MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO

MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO UTILIZANDO O HIBERNATE Rafael Laurino GUERRA, Dra. Luciana Aparecida Martinez ZAINA Faculdade de Tecnologia de Indaiatuba FATEC-ID 1 RESUMO Este artigo apresenta

Leia mais

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias Departamento de Engenharia Rural Centro de Ciências Agrárias Programação I Prof. Bruno Vilela Oliveira bruno@cca.ufes.br http://www.brunovilela.webnode.com.br Aulas 2-3-4-5-6-7-8 Lógica Algoritmos Portugol

Leia mais

Semântica na Web RDF. Carlos Bazilio. Depto de Computação Instituto de Ciência e Tecnologia Universidade Federal Fluminense

Semântica na Web RDF. Carlos Bazilio. Depto de Computação Instituto de Ciência e Tecnologia Universidade Federal Fluminense Semântica na Web RDF Carlos Bazilio Depto de Computação Instituto de Ciência e Tecnologia Universidade Federal Fluminense 1 Contexto... 2 Contexto (2) 3 Problemas na Web Atual Pouca integração de informações

Leia mais

AMOSTRAGEM ESTATÍSTICA EM AUDITORIA PARTE ll

AMOSTRAGEM ESTATÍSTICA EM AUDITORIA PARTE ll AMOSTRAGEM ESTATÍSTICA EM AUDITORIA PARTE ll! Os parâmetros para decisão do auditor.! Tipos de planos de amostragem estatística em auditoria. Francisco Cavalcante(f_c_a@uol.com.br) Administrador de Empresas

Leia mais

2 Engenharia de Software

2 Engenharia de Software 20 2 Engenharia de Software 2.1 Design de Sistemas Orientados a Objetos Os Sistemas Orientados a Objetos não são mais novidade hoje em dia já estando há muitos anos no mercado. A orientação a objetos permite

Leia mais

UML: Diagrama de Casos de Uso, Diagrama de Classes

UML: Diagrama de Casos de Uso, Diagrama de Classes UML: Diagrama de Casos de Uso, Diagrama de Classes Diagrama de Casos de Uso O modelo de casos de uso visa responder a pergunta: Que usos (funcionalidades) o sistema terá? ou Para que aplicações o sistema

Leia mais

Agência Nacional de Energia Elétrica ANEEL

Agência Nacional de Energia Elétrica ANEEL Agência Nacional de Energia Elétrica ANEEL Superintendência de Gestão Técnica da Informação SGI Superintendência de Fiscalização Econômica e Financeira SFF MANUAL DE INSTRUÇÃO PARA ELABORAÇÃO E ENVIO DE

Leia mais

GeoBR: intercâmbio sintático e semântico de dados espaciais

GeoBR: intercâmbio sintático e semântico de dados espaciais Informática Pública vol. 4 (2): 251-281, 2002 GeoBR: intercâmbio sintático e semântico de dados espaciais PAULO DE OLIVEIRA LIMA JÚNIOR¹ GILBERTO CÂMARA² (recebido em 18/10/2002; aprovado em 26/11/2002)

Leia mais

Armazenamento e Pesquisa de Topic Maps em Banco de Dados Relacional

Armazenamento e Pesquisa de Topic Maps em Banco de Dados Relacional Armazenamento e Pesquisa de Topic Maps em Banco de Dados Relacional Lucas Indrusiak, Renato Azevedo, Giovani R. Librelotto UNIFRA Centro Universitário Franciscano Rua dos Andradas, 1614 97.010-032 Santa

Leia mais

Sistemas de Representação e Raciocínio

Sistemas de Representação e Raciocínio Sistemas de Representação e Raciocínio Introdução à Inteligência Artificial Profa. Josiane Baseado no material de David Poole, Alan Mackworth e Randy Goebel Abril/2007 Inteligência Artificial Objetivo

Leia mais

Chaves. Chaves. O modelo relacional implementa dois conhecidos conceitos de chaves, como veremos a seguir:

Chaves. Chaves. O modelo relacional implementa dois conhecidos conceitos de chaves, como veremos a seguir: Chaves 1 Chaves CONCEITO DE CHAVE: determina o conceito de item de busca, ou seja, um dado que será empregado nas consultas à base de dados. É um conceito lógico da aplicação (chave primária e chave estrangeira).

Leia mais

Disciplina: Unidade III: Prof.: E-mail: Período:

Disciplina: Unidade III: Prof.: E-mail: Período: Encontro 08 Disciplina: Sistemas de Banco de Dados Unidade III: Modelagem Lógico de Dados Prof.: Mario Filho E-mail: pro@mariofilho.com.br Período: 5º. SIG - ADM Relembrando... Necessidade de Dados Projeto

Leia mais

Aula II Introdução ao Modelo de Entidade-Relacionamento

Aula II Introdução ao Modelo de Entidade-Relacionamento Aula II Introdução ao Modelo de Entidade-Relacionamento Referência bibliográfica ANGELOTTI, E S. Banco de Dados. Ed. Livro Técnico Introdução É um modelo conceitual e deve estar o mais próximo possível

Leia mais

E/S CPU. Memória (Instruções e dados) 2 PARADIGMA IMPERATIVO. Instruções e dados. Resultados das operações. Unidade lógica e aritmética

E/S CPU. Memória (Instruções e dados) 2 PARADIGMA IMPERATIVO. Instruções e dados. Resultados das operações. Unidade lógica e aritmética 2 PARADIGMA IMPERATIVO 2.1 CONCEITO As linguagens que pertencem ao paradigma imperativo tomam por base a perspectiva da máquina. Ou seja, no modo como o computador executa programas em linguagem de máquina.

Leia mais

c. Técnica de Estrutura de Controle Teste do Caminho Básico

c. Técnica de Estrutura de Controle Teste do Caminho Básico 1) Defina: a. Fluxo de controle A análise de fluxo de controle é a técnica estática em que o fluxo de controle através de um programa é analisado, quer com um gráfico, quer com uma ferramenta de fluxo

Leia mais

Instruções para preenchimento do formulário Plano de Ação do Projeto. Secretaria - Escreva o nome da secretaria coordenadora do projeto.

Instruções para preenchimento do formulário Plano de Ação do Projeto. Secretaria - Escreva o nome da secretaria coordenadora do projeto. Capa Secretaria - Escreva o nome da secretaria coordenadora do projeto. Órgão / Empresa - Escreva o nome do órgão ou empresa coordenadora do projeto. Plano de Ação do Projeto Escreva o nome do projeto.

Leia mais

TÉCNICAS DE PROGRAMAÇÃO

TÉCNICAS DE PROGRAMAÇÃO TÉCNICAS DE PROGRAMAÇÃO (Adaptado do texto do prof. Adair Santa Catarina) ALGORITMOS COM QUALIDADE MÁXIMAS DE PROGRAMAÇÃO 1) Algoritmos devem ser feitos para serem lidos por seres humanos: Tenha em mente

Leia mais

É importante que nos atenhamos a alguns aspectos importantes sobre banco de dados:

É importante que nos atenhamos a alguns aspectos importantes sobre banco de dados: Módulo 16 CONCEITOS DE BANCO DE DADOS Quando nos referimos a um computador como máquina, observamos as suas características em armazenar e gerenciar informações, além dessas características, existem outras

Leia mais

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 16 PROFª BRUNO CALEGARO

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 16 PROFª BRUNO CALEGARO UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 16 PROFª BRUNO CALEGARO Santa Maria, 12 de Novembro de 2013. Revisão aula anterior Modelagem orientada a objetos com UML Software: Astah Community

Leia mais

O modelo Entidade-Relacionamento. Agenda: -Modelagem de dados utilizando O Modelo Entidade-Relacionamento

O modelo Entidade-Relacionamento. Agenda: -Modelagem de dados utilizando O Modelo Entidade-Relacionamento O modelo Entidade-Relacionamento Agenda: -Modelagem de dados utilizando O Modelo Entidade-Relacionamento 1 Antes de começarmos: A modelagem conceitual é uma fase muito importante no plamejamento de um

Leia mais

5 Tecnologias estudadas

5 Tecnologias estudadas 5 Tecnologias estudadas Esse capítulo descreve as principais linguagens existentes para o desenvolvimento de ontologias para uso na Web. Essas linguagens são vistas como a infra-estrutura básica para o

Leia mais

Banco de Dados. Profª. Ana Leda

Banco de Dados. Profª. Ana Leda Banco de Dados Profª. Ana Leda Introdução 1 DADO PROCESSAMENTO INFORMAÇÃO 2 Dados x Informação DADO = REPRESENTAÇÃO DE UM FATO, OBJETO, EVENTO, PESSOA, ETC. ENTIDADE = FATO, OBJETO, EVENTO, PESSOA, ETC,

Leia mais

CAPÍTULO 2. Grafos e Redes

CAPÍTULO 2. Grafos e Redes CAPÍTULO 2 1. Introdução Um grafo é uma representação visual de um determinado conjunto de dados e da ligação existente entre alguns dos elementos desse conjunto. Desta forma, em muitos dos problemas que

Leia mais

Conceitos básicos da linguagem C

Conceitos básicos da linguagem C Conceitos básicos da linguagem C 2 Em 1969 Ken Thompson cria o Unix. O C nasceu logo depois, na década de 70. Dennis Ritchie, implementou-o pela primeira vez usando o sistema operacional UNIX criado por

Leia mais

JavaScript (ou JScript)

JavaScript (ou JScript) 1. Introdução JavaScript (ou JScript) Uma linguagem como o JavaScript permite criar interfaces interativas na web (permite a interação do usuário). Para desenvolver web sites interativos precisamos de

Leia mais

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica Ernesto F. Veiga, Márcio V. Oliveira Sena, Renato de F. Bulcão Neto ernestofonseca@inf.ufg.br marciovinicius@inf.ufg.br

Leia mais

Unidade 5: Sistemas de Representação

Unidade 5: Sistemas de Representação Arquitetura e Organização de Computadores Atualização: 9/8/ Unidade 5: Sistemas de Representação Números de Ponto Flutuante IEEE 754/8 e Caracteres ASCII Prof. Daniel Caetano Objetivo: Compreender a representação

Leia mais

18º Congresso de Iniciação Científica IMPLEMENTAÇÃO DE UM MODELO DE TESTE DE APLICAÇÕES WEB

18º Congresso de Iniciação Científica IMPLEMENTAÇÃO DE UM MODELO DE TESTE DE APLICAÇÕES WEB 18º Congresso de Iniciação Científica IMPLEMENTAÇÃO DE UM MODELO DE TESTE DE APLICAÇÕES WEB Autor(es) HARLEI MIGUEL DE ARRUDA LEITE Orientador(es) PLÍNIO ROBERTO SOUZA VILELA Apoio Financeiro PIBIC/CNPQ

Leia mais

Serviços Web: Arquitetura

Serviços Web: Arquitetura Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta aula

Leia mais

ALGORITMOS MEMÓRIA, VARIÁVEIS E CONSTANTES, OPERADORES Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

ALGORITMOS MEMÓRIA, VARIÁVEIS E CONSTANTES, OPERADORES Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ALGORITMOS MEMÓRIA, VARIÁVEIS E CONSTANTES, OPERADORES Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO Memória Variáveis e constantes Tipos primitivos de dados Operadores Comandos

Leia mais

5.1 Sistemas de Arquivos

5.1 Sistemas de Arquivos Capítulo 5 Os Sistemas de Arquivos 5.1 Sistemas de Arquivos Neste capítulo nós iremos examinar, a partir da visão do usuário, as estruturas que possibilitam o armazenamento persistente de informações no

Leia mais

III. Projeto Conceitual de Banco de Dados. Pg. 1 Parte III (Projeto Conceitual de Banco de Dados)

III. Projeto Conceitual de Banco de Dados. Pg. 1 Parte III (Projeto Conceitual de Banco de Dados) III Projeto Conceitual de Banco de Dados 16 páginas INTRODUÇÃO CONCEITOS BÁSICOS ENTIDADES E TIPOS DE ENTIDADES RELACIONAMENTOS E TIPOS DE RELACIONAMENTOS ATRIBUTOS E TIPOS DE ATRIBUTOS ABSTRAÇÕES DE DADOS

Leia mais