You are on page 1of 5

Universidade Federal do Mato Grosso UFMT

Campus universitrio do Araguaia


Docente: Thiago P. da Silva
Discentes: Antonio Gean, Murilo Campos, Jos Renato


Linguagens para representao de Ontologias DAML



Histria.
Na ltima dcada foram confeccionadas uma srie de linguagens baseadas em
inteligncia artificial, na maior parte com lgica de primeira ordem, essas linguagens foram e
so utilizadas para representar ontologias, apesar de no ter sido esse o propsito de sua
criao.
RDF e RDF-SCHEMA so as bases para Web semntica. E ao longo do tempo foram
propostas algumas linguagens para ontologias baseadas em RDF e principalmente em XML,
DAML (DARPA agente Markup language) surge dessa proposta. Desenvolvida pela entidade
americana DARPA em conjunto com o consrcio W3C, a DAML-ONT, surge atravs do RDF com
objetivo de acrescentar representaes mais expressivas. O objetivo facilitar a interao de
agentes de software autnomos da Web, foi desenvolvida para ter maior capacidade que XML,
descrever e melhorar a interoperabilidade entre objetos
OIL e DAML foram desenvolvidos na mesma poca. O projeto teve incio sendo
gerenciado por James Hendle, e depois gerenciado por Murray Burke, Mark Greaves e
Michaels Pagel.
DAML era focado em representaes de mquina que pudessem ser usados para
melhor compreenso na Web. O consrcio W3C publicou a linguagem como padro de
representao de Web de contedo para web semntica.


Uso.
O agente DAML pode ser embutido no cdigo e manter a conscincia de uso, ou seja
ele tem a noo do ambiente em que vai ser usado, de uso dirigido, mas consegue se
comportar de forma autnoma. Conseguem aprender com a experincia de uso, ou seja, ao
longo do tempo os agentes DAML vo melhorando o seu comportamento baseado no seu uso.
H uma gama de agentes DAML, agentes de informao de controle de ventos, segurana e
etc. necessrio que o agente obtenha um grande conhecimento semntico para poder
processar uma grande quantidade de dados, e claro ser capaz de processar e procurar uma
grande quantidade de dados em diversos meios e relat-los. DAML contm um tipo de
linguagem de consulta especializada em encontrar e processar informaes relevantes.
O Padro DAML, capaz de dar resposta novas, baseando-se apenas no seu prprio
padro, por ser um melhoramento de XML ele consegue prover melhor as pessoas com
resposta, indo alm do que era feito em XML. DAML d um grau extra de autonomia que pode
ajudar na tarefa de fazer um trabalho mais til para as pessoas, o objetivo sempre dar uma
resposta alm das normas as pessoas.
Um conjunto de declaraes em DAML pode por si mesmo concluir outras declaraes,
explicitamente, que o contrrio do que ocorre com XML que precisa de vrios conjuntos
implementados de cdigo processual para poder concluir algo.
Supondo a seguinte declarao paternidade uma relao mais geral do que
maternidade e usando isso em conformidade com DAML para concluir que Maria me de
Joo, assim quando for preguntando em um sistema de busca quem so os pais de joo? ,o
sistema responderia que Maria um dos pais de Joo, mas isso no est sendo indicado em
lugar algum, mas o sistema DAML consegue discernir e obter essa resposta.
DAML tem uma srie de propriedades padro, equivalncia por exemplo, possvel
pesquisar o mesmo termo em vrias lnguas.
DAML fornece uma infraestrutura bsica que permite a uma mquina fazer os mesmos
tipos de inferncias simples que os seres humanos fazem. apenas um comeo, mas um
fundamento essencial para uma rede de informaes que as mquinas podem recorrer.

Sintaxe.
A DAMLA:Class contm parte da definio de uma classe de objeto. A classe refere-se
a um nome de classe utilizando rdf:about ou rdf:id de identificao, e contm:

-zero ou mais rdfs:subClassOf propriedades (contendo, cada um, uma classe de
expresso).

-zero ou mais daml:disjointWith propriedades (contendo, cada um, uma classe de
expresso).

-zero ou mais daml:disjointUnionOf propriedades (cada um contendo uma lista de
classes de expresso).

-zero ou mais daml:sameClassAs propriedades (cada um contendo uma classe de
expresso).

-zero ou mais daml:equivalentTo propriedades (cada um contendo um classe de
expresso).

-zero ou mais combinaes booleana de uma classe de expresso, ou seja, quaisquer
combinaes de daml:unionOf, daml:intersectionOf, daml:complementOf.

-zero ou mais enumeraes de propriedades daml:oneOf.

A classe-expresso o nome usado neste documento para tanto:

-um nome de classe (a URI) identificado usando o atributo rdf:resource ou

-Uma enumerao, fechado em <daml:Class> ... </ DAML: Classe> marcas, ou

-uma propriedade de restrio, definido com o daml:class restrio ou

-uma combinao booleana de classe-expresses, dentro de <dfs:Class> ... </ rdfs:
Classe> marcas





Cdigos de exemplo.

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


<!Declarao de entidades (atalhos) -->
<!DOCTYPE rdf:RDF [
<!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>
<!ENTITY rdfs 'http://www.w3.org/TR/WD-rdf-schema#'>
<!ENTITY xsd 'http://www.w3.org/2001/XMLSchema#'>
<!ENTITY daml 'http://www.daml.org/2001/03/daml+oil#'>
]>


<!Configurando os DAML Namespaces -->
<rdf:RDF
xmlns:rdf="&rdf;"
xmlns:rdfs="&rdfs;"
xmlns:daml="&daml;"
xmlns:xsd="&xsd;">

<!Informaes sobre a ontologia sendo criada -->
<daml:Ontology rdf:about="">
<daml:versionInfo>
$Id: daml+oil-ex.daml,v 1.4 2001/01/11 20:33:52 mdean Exp
$
</daml:versionInfo>
<rdfs:comment>
An ontology created by OntoEdit
</rdfs:comment>
<!Importando uma ontologia -->
<daml:imports
rdf:resource="http://www.daml.org/2000/12/daml+oil"/>
</daml:Ontology>


<!DAML usa classes RDF -->
<rdfs:Class rdf:ID="Staff">
<rdfs:subClassOf>
<!No mnimo 1 email requerido (minCardinality) -->
<daml:Restriction daml:minCardinalityQ="1">
<daml:onProperty rdf:resource="#EMail"/>
<daml:toClass rdf:resource="&xsd;String"/>
</daml:Restriction>
</rdfs:subClassOf>

<! Restringindo a cardinalidade da propriedade (localmente) -
->
<rdfs:subClassOf>
<daml:Restriction daml:cardinality="1">
<daml:onProperty rdf:resource="#FName"/>
</daml:Restriction>
</rdfs:subClassOf>
</rdfs:Class>


<rdfs:Class rdf:ID="Admin">
<!Usando subClassOf do RDFSchema -->
<rdfs:subClassOf rdf:resource="#Staff"/>
</rdfs:Class>

<!Coordinator subclasse de Admin -->
<rdfs:Class rdf:ID="Coordinator">
<rdfs:subClassOf rdf:resource="#Admin"/>
</rdfs:Class>
<!ProjAssistant subclasse de Admin -->
<rdfs:Class rdf:ID="ProjAssistant">
<rdfs:subClassOf rdf:resource="#Admin"/>
</rdfs:Class>
<!Researcher subclasse de Staff -->
<rdfs:Class rdf:ID="Researcher">
<rdfs:subClassOf rdf:resource="#Staff"/>
</rdfs:Class>



Comparativo com outras linguagens.


Dimen
so
XML (Schema) RDF (Schema) DAML
Conte
xto
Namespace padro: xmlns
Declaring others: xmlns:<label>

XMLSchema Namespace
(Tipicamente marcado como
xsd)
Xmlns:xsd=http://www.w3.org/
2001/XMLSchema[Recomenda
do pelo W3C]

targetNamespace se refere ao
namespace definido pelo
arquivo atual.

Note: Namespaces no
precisam apontar para nada na
especificao de XML
Namespaces.
<xsi:schemaLocation> informa
a localizao do schema.
RDF usa XML
Namespaces.

Sintaxe do RDF
Namespace
Xmlns:rdf=http://ww
w.w3.org/1999/02/22
-rdf-syntax-ns#

RDF Schema
Namespace
Xmlns:rdfs=http://ww
w.w3.org/2000/01/rd
f-schema#

Nota: Em RDF, a URI
do namespace
referencia e tambm
identifica a
localizao do
schema.
DAML tambm usa XML
Namespaces.

Utiliza elementos do RDF e
RDF Schema ao
referenciar seus
respectivos Namespaces.

O mais atual DAML
Namespace
Xmlns:daml=http://www.
daml.org/2001/03/daml+o
il#

Em DAML, temos que
importar ontologias para
usar as clases definidas na
ontologia.
Classe
s e
Propri
edade
s do
Objet
o
No h conceito de classes e
propriedades, apenas
elementos de certos tipos. Um
tipo pode ser um simpleType
(tipo simples) ou um
complexType (tipo complexo).
Possui Classes,
Propriedade e uma
Hierarquia de Classes.
Resource a classe
de nvel mais alto
(http://www.w3.org/
2001/01/rdf-
schema#Resource)
DAML Tambm possui
Classes e Propriedades.

Dois tipos de propriedades
so definidas:
ObjectProperties
(Relacionam um objeto a
um outro objeto o valor

Ciclos na hierarquia
de classes no eram
permitidos at pouco
tempo atrs. As
ultimas revises nas
especificaes do RDF
permitem isto.
da propriedade tambm
um objeto)
E
DatatypeProperties(Relaci
ona um objeto a um tipo
de dado primitivo o
valor da propriedade
tambm um tipo de
dado primitivo)

Ciclos na hierarquia de
classes so permitidos.
Hierar
quia
Como no h Classes, no h
conceito de hierarquia.

Entretanto, tipos podem ser
extended (extentidos) ou
restricted (restritos), assim
definindo subTypes( subTipos)
Uma classe pode ser
uma subClassOf de
outras classes
(herana mltipla
permitida)

Propriedades
tambm podem ser
subPropertyOf de
outras propriedades.
Mesma que no RDF.
Lista
Ligada
No possvel especificar. No possvel
especificar.
Pode-se usar a tag
<daml:collection>
Nega
o
No possvel. No presente. Possvel com a tag
<daml:complementOf..>


Ferramentas.

- LinkFactory
- OILEd
- OntoEdit (Free e Professional)
- Protg

Protg:
open-source;
Ferramenta de edio feita em java;
Ferramenta para criar e gerenciar ontologias;
Baseada no paradigma de Frameworks;
Permite desenvolver plugins para adicionar novas funes (Mais de 50 plugins
disponveis no endereo http://protege.stanford.edu/plugins.html)
Possui uma biblioteca de ontologias com 55 ontologias