Vous êtes sur la page 1sur 2

Ecole Supérieure en Informatique de Sidi Bel-Abbes

Département Second Cycle

Fiche TD 4 : Web Sémantique & Web de Données


3ème Année Second Cycle: 3ASC
Exercice 1
@prefix ex: <http://example.org/schemas/vehicles#> . ex:MiniVan rdf:type rdfs:Class .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . ex:PassengerVehicle rdfs:subClassOf ex:MotorVehicle .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. ex:Van rdfs:subClassOf ex:MotorVehicle .
ex:MotorVehicle rdf:type rdfs:Class . ex:Truck rdfs:subClassOf ex:MotorVehicle .
ex:PassengerVehicle rdf:type rdfs:Class . ex:MiniVan rdfs:subClassOf ex:Van .
ex:Van rdf:type rdfs:Class . ex:MiniVan rdfs:subClassOf ex:PassengerVehicle.
ex:Truck rdf:type rdfs:Class .

Exprimer en SPARQL les requêtes suivantes:


- Trouver les sous-classes de véhicules à moteur
- Trouver les sous-classes de MiniVan
- Trouver les superclasses de MiniVan

Exercice 2 :

@prefix ex: <http://example.org/data#> . ex:med ex:marriedTo ex:souad


@prefix vcard: <http://www.w3.org/2001/vcard-rdf/3.0#> . ex:souad vcard:FN “Souad Ali”
ex:med vcard:FN “Mohamed Ali” ex:souad vcard:N _:X2
ex:med vcard:N _:X1 _:X2 vcard:Given “Souad”
_:X1 vcard:Given “Mohamed ” _:X2 vcard:Family “Ali”
_:X1 vcard:Family “Ali” ex:souad ex:hasAge “29”
ex:med ex:hasAge “32”

Exprimer en SPARQL les requêtes suivantes:


- Donnez les noms complets de toutes les personnes dans le graphe
- Trouver la relation entre Mohamed et Souad
- Trouver le conjoint d'une personne du nom de Mohamed Ali
- Donner le nom et le prénom de toutes les personnes
Exercice 3 :

ex:MotorVehicle rdf:type rdfs:Class . ex:Truck rdfs:subClassOf ex:MotorVehicle .


ex:PassengerVehicle rdf:type rdfs:Class . ex:MiniVan rdfs:subClassOf ex:Van .
ex:Van rdf:type rdfs:Class . ex:MiniVan rdfs:subClassOf ex:PassengerVehicle .
ex:Truck rdf:type rdfs:Class . exthings:mv1 rdf:type ex:MiniVan .
ex:MiniVan rdf:type rdfs:Class . exthings:tr1 rdf:type ex:Truck .
ex:PassengerVehicle rdfs:subClassOf ex:MotorVehicle . exthings:pv1 rdf:type ex:PassengerVehicle .
ex:Van rdfs:subClassOf ex:MotorVehicle . exthings:v1 rdf:type ex:Van .

– Base de connaissances sur les véhicules :


• Recherchez les super-classes de MiniVan qui ne sont pas rdf: Resource.
• Trouver tous les véhicules à moteur
• Trouver tous les fourgons et véhicules de tourisme
- Base de connaissances sur les personnes :
• Renvoyer toutes les personnes de plus de 30 ans dans la base de connaissances

1
Ecole Supérieure en Informatique de Sidi Bel-Abbes
Département Second Cycle

Exercice 4 :
foaf:givenName "Ali“ .
_:b foaf:givenName "Kada" .
_:b ex:age “30"^^xsd:integer .
_:m foaf:givenName “Nabil" .
_:m ex:age “65"^^xsd:integer .
Exprimer en SPARQL : Trouvez les noms des personnes dont le nom n’exprime pas l’âge, ou l’âge < 60 ans.
Exercice 5 : Soit un document RDF qui regroupe des informations sur des compagnies aériennes, des avions et des
vols. Les données utilisent les classes suivantes dans fly: namespace:
Airport : un aéroport, qui peut être l'origine ou la cible d'une connexion.
Aircraft : un avion particulier.
Airline: une compagnie aérienne qui possède des avions et exploite des vols
Connection: une connexion entre deux aéroports ayant un «numéro de vol» et qui est habituellement volée
régulièrement, par ex. une fois par jour ou une fois par semaine.
Flight: un vol particulier, c'est-à-dire une liaison effectuée par un avion à une date donnée.
Et les propriétés suivantes :

rdfs:label lie les compagnies aériennes, les aéroports et fly:flightNr relie une connexion à son numéro de vol.
les avions à leurs noms. fly:distanceKm relie une connexion à la distance entre le
fly:airline relie des connections à la compagnie aérienne départ et l’arrivée, en km.
qui les exploite et les avions à la compagnie aérienne qui fly:type relie les avions à leur type, à savoir le producteur
les possède. et le modèle (au sens littéral de simplicité).
fly:origin relie une connexion à l'aéroport de départ. fly:connection relie un vol à la correspondance utilisée.
fly:plane relie un vol à l'avion utilisé.
fly:target relie une connexion à l'aéroport d’arrivée
fly:date relie un vol au jour de départ.

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . fly:flightNr "AH810";


@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . fly:distanceKm "500"^^xsd:double.
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> . fly:7T-VKB a fly:Aircraft;
@prefix fly: <http://example.org/fly#> . rdfs:label "7T-VKB";
fly:airline fly:AirAlgerie;
fly:AirAlgerie a fly:Airline; rdfs:label "AirAlgerie".
fly:type "Boeing 737-800P".
fly:ALG a fly:Airport; rdfs:label "Algiers, Houari Boumediene".
fly:ORN a fly:Airport; rdfs:label "Oran, Ahmed Benballa". _:1 a fly:Flight;
fly:AH810 a fly:Connection; fly:connection fly:AH810 ;
fly:airline fly:AirAlgerie; fly:plane fly:7T-VKB ;
fly:origin fly:ALG; fly:date "2018-12-27"^^xsd:date .
fly:target fly:ORN;

Supposons que nous ayons des données sur de nombreuses autres compagnies aériennes, aéroports, avions,
connexions et vols.
Exprimez en requêtes Sparql pour répondre aux questions suivantes :
1. Listez les numéros de vol de toutes les liaisons exploitées par une compagnie aérienne appelée «Lufthansa».
2. Donnez les noms de toutes les compagnies aériennes qui exploitent des liaisons avec une distance de 3000 km ou
plus.
3. Le même numéro de vol ne doit pas être utilisé deux fois le même jour. Trouvez un numéro de vol et une date tels
que deux vols différents portant ce numéro de vol partent à cette date.
2

Vous aimerez peut-être aussi