Outils pour utilisateurs

Outils du site


besson_sylvain:economist_jurist

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
besson_sylvain:economist_jurist [2021/03/25 19:06]
Sylvain Besson
besson_sylvain:economist_jurist [2021/03/29 18:37]
Sylvain Besson
Ligne 8: Ligne 8:
  
 Nous utiliserons pour cela le langage SPARQL. Nous utiliserons pour cela le langage SPARQL.
 +
 +----
  
 =====Documentation===== =====Documentation=====
Ligne 15: Ligne 17:
 Accès à notre [[https://​github.com/​Semantic-Data-for-Humanities/​Economists_Lawyers|dépôt Github]] sur lequel nous mettons nos différents carnets Python. Accès à notre [[https://​github.com/​Semantic-Data-for-Humanities/​Economists_Lawyers|dépôt Github]] sur lequel nous mettons nos différents carnets Python.
  
 +----
 +
 +=====Délimitation du sujet=====
 +
 +Afin d'​avoir une population claire à étudier, il faut pour cela délimiter notre sujet et ainsi discriminer les personnes qui rentrent ou non dans la définition d'​économiste ou de juriste. ​
 +
 +Dans cette section, vous retrouverez la [[economiste_juriste_delimitation|délimitation du sujet]] qui est le point de départ de notre recherche.
 +
 +
 +----
 +
 +=====Sondage des données=====
  
 La première étape est de connaître l'​état des jeux de données de DBpedia et BnF Data afin de voir le nombre de personnes dont on peut considérer qu'​elles font parties de la "​population"​ des Économistes et des juristes. La première étape est de connaître l'​état des jeux de données de DBpedia et BnF Data afin de voir le nombre de personnes dont on peut considérer qu'​elles font parties de la "​population"​ des Économistes et des juristes.
Ligne 22: Ligne 36:
 Il est ensuite possible de rajouter des critères optionnels comme le nom (toutes les personnes n'ont pas systématiquement un nom inscrit), la nationalité,​ etc.  Il est ensuite possible de rajouter des critères optionnels comme le nom (toutes les personnes n'ont pas systématiquement un nom inscrit), la nationalité,​ etc. 
  
-Il est aussi parfois essentiel de conserver le résumé/la biographie de la personne, car c'est cet élément qui l'​identifie en tant qu'​économiste ou juriste. Il est possible dans le langage SPARQL d'​aller chercher des chaînes de caractères avec la clause REGEX. C'est avec cette dernière que nous pouvons aller chercher les biographies et les résumées les mentions d'​économistes,​ professeur d'​économie,​ //lawyer//, etc. +Il est aussi parfois essentiel de conserver le résumé/la biographie de la personne, car c'est cet élément qui l'​identifie en tant qu'​économiste ou juriste. Il est possible dans le langage SPARQL d'​aller chercher des chaînes de caractères avec la clause REGEX. C'est avec cette dernière que nous pouvons aller chercher ​dans les biographies et les résumées les mentions d'​économistes,​ professeur d'​économie,​ //lawyer//, etc. 
-Pour la BnF, il y n'​a ​besoins ​de chercher ​ses chaînes de caractère qu'en français, car toutes les biographies sont écrites en français. Par contre, pour DBpedia, il faut avant tout les faire en anglais, c'​est ​car la langue qui est privilégiée.+Pour la BnF, il y n'​a ​besoin ​de chercher ​ces chaînes de caractère qu'en français, car toutes les biographies sont écrites en français. Par contre, pour DBpedia, il faut avant tout les faire en anglais, ​car c'est la langue qui est privilégiée
 + 
 +Voici un exemple d'​interrogation possible pour obtenir les économistes sur la base BnF Data: 
 + 
 +<code sparql>​ 
 +PREFIX ​ egr:  <​http://​rdvocab.info/​ElementsGr2/>​ 
 +PREFIX ​ owl:  <​http://​www.w3.org/​2002/​07/​owl#>​ 
 +PREFIX ​ dbr:  <​http://​dbpedia.org/​resource/>​ 
 +PREFIX ​ xsd:  <​http://​www.w3.org/​2001/​XMLSchema#>​ 
 +PREFIX ​ skos: <​http://​www.w3.org/​2004/​02/​skos/​core#>​ 
 +PREFIX ​ foaf: <​http://​xmlns.com/​foaf/​0.1/>​ 
 + 
 +SELECT DISTINCT ​ ?s ?name ?sName ?uri ?year ?bio 
 +WHERE 
 +  {   { ?s  egr:​biographicalInformation ​ ?bio ;  
 +            egr:​dateOfBirth ​      ?bd 
 +        BIND(strbefore(strafter(str(?​bd),​ "​http://​data.bnf.fr/​date/"​),​ "/"​) AS ?year)  
 +        # La clause "​BIND"​ est utilisé afin de ne garder dans l'URL que la date. 
 +        FILTER ( ( regex(?bio, "​juriste",​ "​i"​) || regex(?bio, "​professeur de droit",​ "​i"​) ) || regex(?bio, "​docteur en droit",​ "​i"​) ) 
 +        # Ce filtre est nécessaire pour obtenir la population que nous avons défini. 
 +        OPTIONAL 
 +          { ?s  foaf:​name ​ ?name } 
 +        OPTIONAL 
 +          { ?s  skos:​prefLabel ​ ?sName } 
 +        OPTIONAL 
 +          { ?s  owl:​sameAs ​ ?uri 
 +            FILTER regex(?uri, "​viaf.org",​ "​i"​) 
 +            # Ce filtre est utilisé pour fusionner les données issues de  
 +            # BnF Data et de DBpedia by l'URI VIAF. 
 +          } 
 +      } 
 +    UNION 
 +      { ?s  egr:​biographicalInformation ​ ?bio ; 
 +            egr:​dateOfBirth ​      ?bd 
 +        BIND(strbefore(strafter(str(?​bd),​ "​http://​data.bnf.fr/​date/"​),​ "/"​) AS ?year) 
 +        FILTER ( ?year > "​1800"​ ) 
 +        FILTER ( ( ( regex(?bio, "​économiste"​) || regex(?bio, "​Economiste"​) ) || regex(?bio, "​professeur d'​économie",​ "​i"​) ) || regex(?bio, "​docteur en économie",​ "​i"​) ) 
 +        OPTIONAL 
 +          { ?s  foaf:​name ​ ?name } 
 +        OPTIONAL 
 +          { ?s  skos:​prefLabel ​ ?sName } 
 +        OPTIONAL 
 +          { ?s  owl:​sameAs ​ ?uri 
 +            FILTER regex(?uri, "​viaf.org",​ "​i"​) 
 +          } 
 +      } 
 +  } 
 +ORDER BY DESC(?​uri) 
 +</​code>​ 
 + 
 +Cette requête est exécuté sur python est permet d'​aller chercher à la fois les économistes et à la fois les juristes BnF data.  (cf. [[projets_individuels:​economiste_juriste_documentation|Documentation SPARQL]] pour comprendre davantage comment se construit la requête).  
 + 
 +Nous ajoutons de façon optionnelle les personnes qui aurait un URI VIAF. Il est important, car il nous permet de faire une jointure entre les données BnF Data et DBpedia pour les personnes qui ont le même URI VIAF sur les bases de données
besson_sylvain/economist_jurist.txt · Dernière modification: 2021/07/22 19:05 par Sylvain Besson