Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Dernière révision Les deux révisions suivantes | ||
scrutaridata:impl:mediawiki [2009/06/02 19:35] vincent |
scrutaridata:impl:mediawiki [2009/12/17 11:27] 127.0.0.1 modification externe |
||
---|---|---|---|
Ligne 3: | Ligne 3: | ||
L'exportation des données de MediaWiki vers le format ScrutariData a été fait pour le [[http://fr.coredem.info/wiki|Wikicoredem]]. Dans l'état actuel, il est assez simpliste, la base générée ne comprend qu'un seul corpus. Cette exportation se fait à l'aide d'une classe php !!MediawikiScrutariDataWriter!! qui utilise une classe utilitaire !!UtilXmlWriter!!. Les points à savoir pour comprendre le code sont les suivants : | L'exportation des données de MediaWiki vers le format ScrutariData a été fait pour le [[http://fr.coredem.info/wiki|Wikicoredem]]. Dans l'état actuel, il est assez simpliste, la base générée ne comprend qu'un seul corpus. Cette exportation se fait à l'aide d'une classe php !!MediawikiScrutariDataWriter!! qui utilise une classe utilitaire !!UtilXmlWriter!!. Les points à savoir pour comprendre le code sont les suivants : | ||
- | *La question de la connexion à la base de données n'est pas traitée, on considère qu'elle est établie préalablement (de là le simple appel //$resultat = mysql_query($requete);//) | + | *La question de la connexion à la base de données n'est pas traitée, on considère qu'elle est établie préalablement (de là le simple appel //$resultat = mysql_query($requete);//) |
- | *Les premières méthodes de //MediawikiScrutariDataWriter// qui commencent par **set** sont des méthodes de définition des différents paramètres utilisés dans la méthode principale //writeScrutariData()// | + | *Les premières méthodes de //MediawikiScrutariDataWriter// qui commencent par **set** sont des méthodes de définition des différents paramètres utilisés dans la méthode principale //writeScrutariData()// |
- | *L'argument //$file// de la méthode //writeScrutariData()// correspond à un pointeur vers un fichier, s'il est omis, le XML sera écrit en sortie (fonction **echo**) | + | *L'argument //$file// de la méthode //writeScrutariData()// correspond à un pointeur vers un fichier, s'il est omis, le XML sera écrit en sortie (fonction **echo**) |
- | *Seules les pages de l'espace de nom principal sont extraites. Pour affiner la requête, il faut modifier la ligne //$requete = "SELECT page_id,page_title FROM page WHERE page_namespace=0 ORDER BY page_id";//. | + | *Seules les pages de l'espace de nom principal sont extraites et les pages de redirection sont ignorées. Pour affiner la requête, il faut modifier la ligne //$requete = "SELECT page_id,page_title FROM page WHERE page_namespace=0 AND page_is_redirect != 1 ORDER BY page_id";//. |
+ | |||
+ | Le résultat est accessible ici : http://scrutari.coredem.info/infos/php/coredem.scrutari-data.php?lang=fr. | ||
===== class-MediawikiScrutariDataWriter.php ===== | ===== class-MediawikiScrutariDataWriter.php ===== | ||
Ligne 99: | Ligne 101: | ||
$xmlWriter->closeTag("corpus-metadata"); | $xmlWriter->closeTag("corpus-metadata"); | ||
- | $requete = "SELECT page_id,page_title FROM page WHERE page_namespace=0 ORDER BY page_id"; | + | $requete = "SELECT page_id,page_title FROM page WHERE page_namespace=0 AND page_is_redirect != 1 ORDER BY page_id"; |
$resultat = mysql_query($requete); | $resultat = mysql_query($requete); |