1. Livres et vidéos
  2. Web sémantique et modélisation ontologique (avec G-OWL) - Guide du développeur Java sous Eclipse

Web sémantique et modélisation ontologique (avec G-OWL) Guide du développeur Java sous Eclipse

  • Accès illimité 24h/24, 7J/7
  • Tous les livres en ligne, les vidéos et les cours enregistrés ENI
  • Plus de 10 nouveautés livres et vidéos chaque mois
  • Les nouveautés disponibles le jour de leur sortie
  • Accès 100% en ligne
  • En stock
  • Expédié en 24h00
  • Livraison à partir de 0,01 €
  • Version en ligne offerte
  • 1 h d'accès gratuit à tous nos livres et vidéos pour chaque commande
  • Accessible immédiatement
  • Version HTML
  • Accès illimité 24h/24, 7J/7

Présentation

Ce livre s'adresse à l'informaticien et développeur qui souhaite construire des applications Java pour le web sémantique. Le web sémantique est un écosystème complexe qui intègre un ensemble de dispositifs logiciels nécessaires à la modélisation, à la diffusion et à l'exploitation des connaissances entreposées dans une ontologie. En tant qu'environnement de développent intégré, l'IDE Eclipse met à disposition du développeur Java un ensemble de fonctionnalités destinées à cimenter cet écosystème dans la perspective de construire un environnement de développement d'applications sémantiques. L'auteur commence par donner un aperçu des principaux usages du web sémantique ainsi que des notions associées à la représentation des connaissances et à l'ontologie. Dans une perspective pragmatique, l'auteur présente ensuite une procédure détaillée d'intégration des dispositifs nécessaires au développement d'applications sémantiques en Java ainsi que l'encapsulation en plug-in Eclipse : du Java OWL-API pour la manipulation et la sérialisation d'ontologies, de l'API de Pellet pour assurer le raisonnement logique de l'ontologie, de l'intégration de Protégé pour l'édition d'ontologies. Il décrit la configuration à mettre en place pour définir Eclipse comme serveur de développement web d'ontologies.

Respectant la séquence de présentation du W3C OWL-2 Primer, chaque élément d'expressivité de la modélisation ontologique est repris, expliqué et schématisé dans le langage G-OWL avant d'être défini en Java dans la syntaxe du Java OWL-API. Une démonstration de raisonnement logique complémente la discussion concernant l'expressivité. En tant que fichier informatique, le document ontologique possède des caractéristiques de traitement qui lui sont propres ; une section du livre est consacrée à la manipulation Java du document ontologique ainsi qu'à la manipulation Java des paramètres du raisonneur.

L'auteur conclut son livre en réalisant un projet de synthèse, en Java, sur l'implantation d'un arbre de décisions à base d'ontologies.

Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.


Les chapitres du livre :
Avant-propos – Écosystème et architecture du Web sémantique – Représentation des connaissances et ontologie – Écosystème de développement – Structure documentaire d'une ontologie – Raisonneur et la logique des descriptions – Fondamentaux de la modélisation ontologique – Expressivités avancées d'OWL – Propriétés associées à un type de données – Information documentaire et annotation – Projet : l'arbre de décision Onto-DeTal – Conclusion

Table des matières

  • Avant-propos
    • 1. Introduction
    • 2. Public cible
    • 3. Structure didactique du livre
    • 4. Organisation du livre
    • 5. Code source
    • 6. Convention
    • 7. Remerciements
  • Écosystème et architecture du Web sémantique
    • 1. Introduction
    • 2. Usages du web sémantique, architectures logicielles et ontologie
      • 2.1 Modèle architectural à trois couches (3-tiers)
      • 2.2 Intégration de données
      • 2.3 Découverte et classification de ressources
      • 2.4 Agent logiciel intelligent
      • 2.5 Gestion des connaissances
    • 3. Pile technologique du web sémantique
    • 4. Écosystème du web sémantique
      • 4.1 Édition d’ontologie
      • 4.2 Outils de diffusion d’une ontologie
      • 4.3 Raisonneur et moteur d’inférence
      • 4.4 API Java
    • 5. Récapitulatif
  • Représentation des connaissances et ontologie
    • 1. Introduction
    • 2. Usages d’un modèle
    • 3. Concept de représentation
      • 3.1 Monde des idées de Platon
      • 3.2 Représentation dans un système d'information
      • 3.3 Triangle sémiotique
      • 3.4 Modèle sémiotique de l’ontologie
    • 4. Niveaux d’abstraction
      • 4.1 Niveau factuel, niveau conceptuel et niveau du rôle
      • 4.2 Relation de généralisation et relation d’instance
      • 4.3 Métamodèle
      • 4.4 Espace de modélisation
      • 4.5 Division du domaine du discours et intelligence artificielle
    • 5. Système de représentation des connaissances
      • 5.1 Système de représentation entité-relation
      • 5.2 Système de représentation sujet/prédicat/objet
      • 5.3 Système de représentation de graphe
      • 5.4 Système de représentation ontologique
    • 6. Sérialisation XML
      • 6.1 Ressources du web sémantique
      • 6.2 Structure d’un URI, IRI
      • 6.3 Espace de nommage, URI et IRI
      • 6.4 Qname
      • 6.5 Ressource anonyme (blank node)
    • 7. Notations ontologiques
      • 7.1 Syntaxe Turtle
      • 7.2 Syntaxe fonctionnelle
    • 8. Syntaxe graphique Graphical Web Ontology Language (G-OWL)
      • 8.1 Sémantique des entités de G-OWL
      • 8.2 Sémantique des relations de G-OWL
    • 9. Expressivité d’OWL 2
      • 9.1 Dialecte OWL Full et OWL DL
      • 9.2 Profils
        • 9.2.1 OWL 2 EL
        • 9.2.2 OWL 2 QL
        • 9.2.3 OWL 2 RL
    • 10. Spécification officielle d’OWL 2 Web Ontology Language
    • 11. Récapitulatif
  • Écosystème de développement
    • 1. Introduction
    • 2. Créer un projet de travail
    • 3. Télécharger les outils
      • 3.1 Télécharger Eclipse
      • 3.2 Télécharger le Java OWL-API
      • 3.3 Télécharger l’éditeur d’ontologie Protégé
      • 3.4 Télécharger Pellet
      • 3.5 Télécharger pizza.owl
      • 3.6 Bilan des téléchargements
    • 4. Installer Protégé
    • 5. Installer Eclipse
      • 5.1 Configurer l’IDE pour le français
      • 5.2 Configurer la perspective Java
      • 5.3 Naviguer entre les perspectives et les vues
      • 5.4 Quelques commandes de vues et de perspectives utiles
        • 5.4.1 Réinitialiser la perspective
        • 5.4.2 Ouvrir une nouvelle perspective
        • 5.4.3 Ajouter des vues
        • 5.4.4 Personnaliser une perspective
    • 6. Encapsuler le Java OWL-API dans Eclipse
      • 6.1 Créer le plug-in du Java OWL-API
      • 6.2 Importer le code source du Java OWL-API
      • 6.3 Importer la javadoc du Java OWL-API
      • 6.4 Configurer le plug-in du Java OWL-API pour exporter les paquetages
      • 6.5 Vérifier l’installation du Java OWL-API
    • 7. Encapsuler le raisonneur Pellet
      • 7.1 Créer le plug-in de Pellet
      • 7.2 Intégrer les fichiers jar de Pellet dans le répertoire lib
      • 7.3 Compléter la configuration du plug-in
      • 7.4 Connecter le plug-in de Pellet au Java OWL-API (com.java-ws.owlapi)
      • 7.5 Vérifier l’installation du plug-in com.java-ws.pellet
    • 8. Configurer l’environnement web
      • 8.1 Créer un projet web
      • 8.2 Configurer le lancement de l’éditeur Protégé à partir d’Eclipse
        • 8.2.1 Associer le type de fichier .owl à Protégé
        • 8.2.2 Vérifier le fonctionnement de l’association
        • 8.2.3 Rafraîchir le projet après l’édition d’une ontologie
      • 8.3 Configurer le serveur web interne
        • 8.3.1 Activer le serveur interne
        • 8.3.2 Contrôler le serveur
        • 8.3.3 Modifier la configuration du serveur pour une diffusion sur le port 80
    • 9. Récapitulatif
  • Structure documentaire d’une ontologie
    • 1. Introduction
    • 2. Structure d’un document ontologique
      • 2.1 En-tête du document ontologique
      • 2.2 Corps du document ontologique
      • 2.3 Pied du document ontologique
    • 3. Créer une IRI
    • 4. Gérer le document ontologique
    • 5. Instancier une ontologie (OWLOntology)
      • 5.1 Créer une ontologie
      • 5.2 Charger une ontologie
        • 5.2.1 Charger une ontologie située sur le système local
        • 5.2.2 Charger une ontologie située sur le web
      • 5.3 Charger la ressource locale correspondant à l'IRI web
    • 6. Imprimer le contenu d’une ontologie
      • 6.1 Format Turtle
      • 6.2 Format fonctionnel
      • 6.3 Format Manchester
      • 6.4 Format RDF/XML
      • 6.5 Format XML/Ontology
    • 7. Charger une ontologie d’un document ontologique (OWLOntologyDocumentSource)
    • 8. Créer des entités dans une ontologie
    • 9. Manipuler l’en-tête du document ontologique
      • 9.1 Importer une ontologie externe
        • 9.1.1 Indiquer le nom et les IRI des ontologies
        • 9.1.2 Associer l’IRI web à une ontologie locale
        • 9.1.3 Créer l’ontologie factuelle et importer l’ontologie conceptuelle
        • 9.1.4 Créer les entités dans l’ontologie factuelle
        • 9.1.5 Analyse du résultat partiel
        • 9.1.6 Ajuster les préfixes
      • 9.2 Versionner une ontologie
    • 10. Manipuler le corps du document ontologique
    • 11. Créer l’ontologie et ses éléments
      • 11.1 Phase d’initialisation de l’ontologie
      • 11.2 Phase de création des entités ontologiques
      • 11.3 Phase de création et d’ajout des axiomes dans l’ontologie
      • 11.4 Phase de suppression de l’entité ontologique dans l’ontologie
      • 11.5 Analyse du résultat de l’exécution du programme
    • 12. Récapitulatif
  • Raisonneur et la logique des descriptions
    • 1. Introduction
    • 2. Structure des classes Java OWL-API impliquées dans la manipulation du raisonneur
    • 3. OWL en condensé
      • 3.1 Entités d'OWL
      • 3.2 Expressions d’OWL
      • 3.3 Axiomes d’OWL
    • 4. Scénario de référence
    • 5. Contrôle de l’inférence d’une ontologie
      • 5.1 Inférer une ontologie
      • 5.2 Suivre la progression de l’inférence
      • 5.3 Synchroniser l’amorce du raisonnement à la manipulation de l’ontologie
    • 6. Valider une ontologie
      • 6.1 Valider la cohérence et expliquer l’incohérence
      • 6.2 Éprouver la vérifiabilité
    • 7. Hypothèse du monde ouvert et hypothèse du monde clos
      • 7.1 Évaluer une condition nécessaire selon l’OWA
      • 7.2 Évaluer une condition nécessaire et suffisante selon l’OWA
    • 8. Récapitulatif
  • Fondamentaux de la modélisation ontologique
    • 1. Introduction
    • 2. Notions de la modélisation ontologique
      • 2.1 Sémantique
      • 2.2 Expressivité
      • 2.3 Démonstration
        • 2.3.1 Structure de la démonstration
        • 2.3.2 Structure du programme Java de la démonstration
    • 3. Entité et axiome ontologiques
    • 4. Classe (OWLClass) et individu (OWLIndividual)
      • 4.1 Assertion de classe (OWLClassAssertionAxiom)
    • 5. Hiérarchie de classes
      • 5.1 Sous-classe de (OWLSubClassOfAxiom)
      • 5.2 Équivalence de classes (OWLEquivalentClassesAxiom)
      • 5.3 Classe mutuellement exclusive (OWLDisjointClassesAxiom)
      • 5.4 Démonstration
        • 5.4.1 Modèle du domaine de la famille de Mary, John et Jim
        • 5.4.2 Description dans le Java OWL-API du modèle de la famille Mary, John et Jim
        • 5.4.3 Ontologie descriptive du modèle de la famille Mary, John et Jim
        • 5.4.4 Ontologie inférée du modèle de la famille Mary, John et Jim
    • 6. Propriété d’objet
      • 6.1 Assertion de propriétés (OWLObjectPropertyAssertionAxiom)
      • 6.2 Négation de propriété (OWLNegativeObjectPropertyAssertionAxiom)
      • 6.3 Hiérarchie de propriétés (OWLSubObjectPropertyOfAxiom)
      • 6.4 Restriction de domaine et de codomaine (OWLObjectPropertyDomainAxiom et OWLObjectPropertyRangeAxiom)
      • 6.5 Démonstration
        • 6.5.1 Modèle du domaine de John hasWife Mary
        • 6.5.2 Description dans le Java OWL-API du modèle John hasWife Mary
        • 6.5.3 Ontologie déclarative du modèle John hasWife Mary
        • 6.5.4 Ontologie inférée du modèle John hasWife Mary
    • 7. Différence et similitude d’individus
      • 7.1 Déclaration d’entités distinctes (OWLDifferentIndividualsAxiom)
      • 7.2 Similitude (OWLSameIndividualAxiom)
    • 8. Propriété associée à un type de donnée (OWLDataProperty)
      • 8.1 Assertion de propriété associée à un type de donnée (OWLDataPropertyAssertionAxiom)
      • 8.2 Assertion d’exclusion de données (OWLNegativeDataPropertyAssertionAxiom)
      • 8.3 Domaine et codomaine d’une propriété associée à un type de donnée (OWLDataPropertyDomainAxiom et OWLDataPropertyRangeAxiom)
      • 8.4 Démonstration
        • 8.4.1 Modèle du domaine de John hasAge 51
        • 8.4.2 Description dans le Java OWL-API
        • 8.4.3 Ontologie déclarative du modèle John hasAge 51 et Jack not hasAge 53
        • 8.4.4 Ontologie inférée du modèle John hasAge 51 et Jack not hasAge 53
    • 9. Récapitulatif
  • Expressivités avancées d’OWL
    • 1. Introduction
    • 2. Expression de classes complexes
      • 2.1 Intersection d’objets (OWLObjectIntersectionOf)
      • 2.2 Union d’objets (OWLObjectUnionOf)
      • 2.3 Complément d’objets (OWLObjectComplementOf)
      • 2.4 Intersection et sous-classes d’objets (OWLSubClassOfAxiom avec OWLObjectIntersectionOf)
      • 2.5 Assertion de classes en conjonction avec le complément d’objets (OWLObjectComplementOf avec OWLClassAssertionAxiom)
      • 2.6 Démonstration de l’usage de classes complexes
        • 2.6.1 Modèle du domaine de la famille de « Steve »
        • 2.6.2 Description dans le Java OWL-API du modèle de « Steve »
        • 2.6.3 Ontologie descriptive du modèle de « Steve »
        • 2.6.4 Ontologie inférée du modèle de « Steve »
    • 3. Restriction de propriété
      • 3.1 Restriction existentielle sur la propriété d’objets (OWLObjectSomeValuesFrom)
        • 3.1.1 Patron d’inférence de la restriction existentielle
        • 3.1.2 Démonstration : l’ensemble des individus pour lesquels il existe des valeurs associées à une propriété
      • 3.2 Restriction universelle sur la propriété d’objets (OWLObjectAllValuesFrom)
        • 3.2.1 Patron d’inférence de la restriction universelle
        • 3.2.2 Démonstration : l’ensemble des individus pour toutes les valeurs associées à une propriété
      • 3.3 Principe de fermeture
        • 3.3.1 Conjonction de la restriction existentielle avec la restriction universelle
        • 3.3.2 Démonstration de l’inférence que « John » est un « HappyParent »
      • 3.4 Restriction de la valeur associée à un objet (OWLObjectHasValue)
      • 3.5 Restriction sur soi-même (OWLObjectHasSelf)
      • 3.6 Démonstration de la restriction de valeur et de la restriction sur soi-même
        • 3.6.1 Modèle de domaine de « Paul » est un « JohnsChildren » et une « NarcisticPerson »
        • 3.6.2 Description dans la syntaxe Java OWL-API du modèle de « Paul » est un « JohnsChildren » et une « NarcisticPerson »
        • 3.6.3 Ontologie descriptive de « Paul » est un « JohnsChildren » et une « NarcisticPerson »
        • 3.6.4 Ontologie inférée de « Paul » est un « JohnsChildren » et une « NarcisticPerson »
    • 4. Énumération d’individus (OWLObjectOneOf)
    • 5. Restriction de cardinalité (OWLObjectCardinalityRestriction)
      • 5.1 Cardinalité maximale (OWLObjectMaxCardinality)
      • 5.2 Cardinalité minimale (OWLObjectMinCardinality)
      • 5.3 Cardinalité exacte (OWLObjectExactCardinality)
      • 5.4 Démonstration : aiguillonner une décision
        • 5.4.1 Modèle du choix du taux d’imposition
        • 5.4.2 Description du choix du taux d’imposition en Java OWL-API
        • 5.4.3 Ontologie déclarative du choix du taux d’imposition
        • 5.4.4 Ontologie inférée du choix du taux d’imposition
    • 6. Utilisation avancée de la propriété
      • 6.1 Propriété inverse (OWLInverseObjectPropertiesAxiom)
      • 6.2 Inverse de (OWLObjectInverseOf)
      • 6.3 Réciprocité et symétrie (OWLSymmetricObjectPropertyAxiom)
      • 6.4 Non réciproque, directionnel, antisymétrique (OWLAsymmetricObjectPropertyAxiom)
      • 6.5 Propriétés mutuellement exclusives (OWLDisjointObjectPropertiesAxiom)
      • 6.6 Propriété réflexive (OWLReflexiveObjectPropertyAxiom)
      • 6.7 Propriété antiréflexive (OWLIrreflexiveObjectPropertyAxiom)
      • 6.8 Propriété fonctionnelle (OWLFunctionalObjectPropertyAxiom)
      • 6.9 Propriété de fonctionnalité inverse (OWLInverseFunctionalObjectPropertyAxiom)
      • 6.10 Transitivité de propriété (OWLTransitiveObjectPropertyAxiom)
    • 7. Enchaînement de propriétés (OWLSubPropertyChainOfAxiom)
    • 8. Association par clé (OWLHasKeyAxiom)
    • 9. Récapitulatif
  • Propriété associée à un type de donnée
    • 1. Introduction
    • 2. Restriction de type de données (OWLDatatypeRestriction)
    • 3. Intersection et complément de données (OWLDataIntersectionOf et OWLDataComplementOf)
    • 4. Énumération de données (OWLDataOneOf)
    • 5. Propriété fonctionnelle de données (OWLFunctionalDataPropertyAxiom)
    • 6. Restriction existentielle sur le type de données (OWLDataSomeValuesFrom)
    • 7. Démonstration : raisonner sur les types de données pour classifier
      • 7.1 Cadre conceptuel de l’ontologie des âges
        • 7.1.1 Modèle du cadre conceptuel de l’ontologie des âges
        • 7.1.2 Code Java OWL-API du cadre conceptuel de l’ontologie des âges
      • 7.2 Première expérimentation : la classification d’individus selon l’âge et selon le paradigme du monde ouvert
        • 7.2.1 Modèle de la base de faits de l’ontologie des âges
        • 7.2.2 Code en Java OWL-API de la base de faits
        • 7.2.3 Ontologie déclarative de la base de faits
        • 7.2.4 Ontologie inférée de la base de faits
      • 7.3 Deuxième expérimentation : classification selon le paradigme du monde fermé
        • 7.3.1 Modèle de la base de faits d’oupsBody
        • 7.3.2 Ontologie déclarative d’oupsBody
        • 7.3.3 Conclusions du raisonneur
    • 8. Récapitulatif
  • Information documentaire et annotation
    • 1. Introduction
    • 2. Annotation d’ontologie (AddOntologyAnnotation)
    • 3. Axiomes d’annotation et assertions (OWLAnnotationAssertionAxiom)
    • 4. Recherche d’annotations
    • 5. Création d’une propriété d’annotation (SubAnnotationPropertyOf)
    • 6. Récapitulatif
  • Projet : l’arbre de décision Onto-DeTaI
    • 1. Introduction
    • 2. Mise en situation
    • 3. Structure de travail du projet
      • 3.1 Architecture logicielle du développement d’Onto-DeTaI
      • 3.2 Mise en place de l’environnement de développement
        • 3.2.1 Description de la situation de départ
        • 3.2.2 Description de l’environnement Protégé
        • 3.2.3 Interface utilisateur de Protégé
      • 3.3 Créer le document ontologique
    • 4. Ontologie de l’arbre de décision
      • 4.1 Créer un cas de test
      • 4.2 Déclarer les critères de décision dans l’ontologie
        • 4.2.1 Créer les classes
        • 4.2.2 Créer les types de données
        • 4.2.3 Observer le contenu de l’ontologie
        • 4.2.4 Créer les propriétés d’objets
        • 4.2.5 Créer les propriétés de données
      • 4.3 Implanter le cas de test
      • 4.4 Programmer les axiomes pour déterminer le type de revenu
        • 4.4.1 Créer l’axiome de revenu faible
        • 4.4.2 Créer l’axiome de revenu moyen
        • 4.4.3 Créer l’axiome de revenu élevé
        • 4.4.4 Exécuter le cas de test
      • 4.5 Programmer les axiomes pour déterminer le taux d’imposition
        • 4.5.1 Créer l’axiome du taux à 0 %
        • 4.5.2 Créer l’axiome du taux à 10 %
        • 4.5.3 Créer l’axiome du taux à 15 %
        • 4.5.4 Récapitulatif
      • 4.6 Tester l’ontologie
        • 4.6.1 Vérifier les attributs du raisonneur
        • 4.6.2 Exécuter le cas de test
        • 4.6.3 Supprimer le cas de test
    • 5. Couche métier d’Onto-DeTaI
      • 5.1 Situation de départ
      • 5.2 Construire et configurer le plug-in d’Onto-DeTaI
      • 5.3 Implanter les classes de la couche métier
        • 5.3.1 Créer la classe Contribuable
        • 5.3.2 Créer la classe CommandeFixerTauxImposition
        • 5.3.3 Créer la classe ContribuableTest
    • 6. Couche interface utilisateur d’Onto-DeTaI
      • 6.1 Importer les outils de conception d’interfaces graphiques dans Eclipse WTP
      • 6.2 Utiliser l’assistant de WindowBuilder pour concevoir l’interface
      • 6.3 Ajuster les champs de l’interface d’OntoDeTai.java
        • 6.3.1 Variables categorieDeRevenuText, tauxImpositionText
        • 6.3.2 Variable statut
        • 6.3.3 Variable salaire
        • 6.3.4 Bouton Évaluer taux
      • 6.4 Exécuter le programme Onto-DeTaI
        • 6.4.1 Exécuter Onto-DeTaI avec l’ontologie d’origine
        • 6.4.2 Exécuter Onto-DeTaI avec l’ontologie modifiée
    • 7. Récapitulatif
  • Conclusion
    • 1. Conclusion
  • Bibliographie
    • 1. Bibliographie
    • Index

Auteur

Michel HÉONEn savoir plus

Scientifique, informaticien et cogniticien, Michel HÉON cherche à mettre ses compétences au service de projets d'ingénierie et de gestion de connaissances impliquant l'utilisation de l'informatique. Compétent en ingénierie logicielle et en intelligence artificielle, il est le créateur du logiciel d'édition de carte de connaissances eLi, du logiciel de conception d'ontologies OntoCASE, il est le président fondateur de la Sté Cotechnoe (www.cotechnoe.com), spécialiste de la gestion et du transfert de connaissances et Professeur associé à la Télé-université du Québec. Régulièrement, Michel Héon dispense des formations, réalise du coaching et anime des séances de remue-méninge et de créativité. Toute cette expérience, autant technique que pédagogique, lui permet de fournir au lecteur un guide de référence pratique, complet et néanmoins abordable sur la programmation Java d'ontologies.

Revue de presse

Développez.com29/12/2014

Je n'ai pas grand-chose à dire sur ce livre, si ce n'est que c'est la meilleure référence française que j'aie pu lire sur le domaine des ontologies. Il aborde à la fois le côté théorique et pratique, le côté théorique n'est pas trop pompeux et détaille juste ce qu'il faut alors que le côté pratique est totalement bien orienté au niveau difficulté.

Caractéristiques

  • Niveau Confirmé à Expert
  • Nombre de pages 444 pages
  • Parution avril 2014
    • Livre (broché) - 17 x 21 cm
    • ISBN : 978-2-7460-0886-6
    • EAN : 9782746088696
    • Ref. ENI : EPJAWS
  • Niveau Expert
  • Parution avril 2014
    • HTML
    • ISBN : 978-2-7460-0895-6
    • EAN : 9782746089556
    • Ref. ENI : LNEPJAWS

Téléchargements

En complétant ce formulaire, vous acceptez d'être contacté afin de recevoir des informations sur nos produits et services ainsi que nos communications marketing. Vous aurez la possibilité de vous désabonner de nos communications à tout moment. Pour plus d'informations sur notre politique de protection des données, cliquez ici.
  • Des fichiers complémentaires (123 Ko)