1. représentez (graphiquement puis en FL) les relations sous-type et exclusion
qui existent entre RDF, RDFS, RDF/XML, RDFa, Turtle,
N3, SPARQL et
les supertypes communs de ces types;
2. expliquez pourquoi le modèle RDF est différent du modèle XML,
et
donnez un moyen de voir si un modèle/langage
est plus souple et puissant qu'un autre ?
//1) solution (étendue) en FL
// (non sujette à interrogation dans le CC, ni le CT ni l'examen de rattrapage) :
KRL_element
\. e{ (Language_ontology
\. (OWL \. (OWL-Full part: 1..* OWL-DL)
(OWL-DL part: 1..* OWL-Lite, logic: SHOIN)
(OWL-Lite part: 1..* RDFS, logic: SHIF)
(OWL_2 logic: SROIQ)
(RDFS part of: 1..* OWL-Lite)
)
(Data_model \. RDF)
(KRL_syntax \. e{ RDF/XML RDFa
(N3 part of: 0..* SPARQL)
(SPARQL part: 1..* Turtle)
(Turtle part of: 0..* SPARQL 0..* N3)
} )
(Logic \. (Description_logic
instance: SROIQ SHOIN SHIF,
part of: First-order_logic
),
instance: First-order_logic
)
};
//2) solution
// (contenu possiblement sujet à interrogation dans le CC, CT ou examen de rattrapage) :
Le modèle de XML (ou des BdDs, ou des approches orientées objet) est un
modèle d'arbre dont les noeuds sont implicitement reliés par des relations
de type "part" et peuvent être typés ou avoir des attributs. Il y a donc
seulement 3 types de relations possibles : partie, type, attribut).
Ainsi, le modèle de XML
- oblige ses utilisateurs à effectuer des choix arbitraires (e.g.,
mettre la classe d'objet Employee dans Employer, ou inversement),
- n'encourage pas (et donc aussi, ne force pas) la représentation
explicite (i.e., comme des entités du 1er ordre) des relations
entre objets; un utilisateur peut néanmmoins employer XML (ou une
approche orientée objet) pour définir et utiliser un modèle de
graphe, i.e., pour définir et n'utiliser que des classes d'objets
comme Concept et Relation.
RDF est un modèle de graphe qui permet de créer des relations typées entre
des individus ou types de concepts. En effet, il déclare des types d'objets
tels que "ConceptNode" et "RelationNode".
Ainsi, il force ses utilisateurs à les utiliser et donc à représenter
des informations de manière plus précise et flexible qu'avec XML.
E.g., tout autre utilisateur peut, à tout moment, ajouter de nouveaux types
de concept/relation et les utiliser conjointement avec/sur les objets déjà
existants; il n'y a pas de schémas de données fixe/prédéfini.
Un modèle/langage est plus souple et puissant qu'un autre s'il inclut plus de
composants ou si ses composants permettent de définir les composants de l'autre.