[OSM-dev-fr] [OSM-talk-fr] Osmose et les tags wikipedia
Clément Cunin
clement.cunin at gmail.com
Lun 7 Jan 21:36:08 GMT 2013
Pour la liste des langues, j'ai hard-codé la liste se tous les Wikipedia de
plus 100 000 articles. Si quelqu'un trouve une page plus précise sur un
élément dans un Wikipedia de moins de 100 000 pages, il sera encore temps
de l'ajouter.
Pour les remarques sur les tags Name:lang elles sont hors sujet de mon
patch qui ne s'interresse qu'au tag Wikipedia
Cdt
Black Myst
Le 7 janv. 2013 17:49, "Philippe Verdy" <verdy_p at wanadoo.fr> a écrit :
> Déjà un tag comme "wikipedia:name" ne devrait pas pouvoir être
> interprété comme contenant un code langue valide ("name" n'est pas un
> code langue ISO 639 ou même BCP47 valide).
> Pour tous tags traduits comme "<tag>:<lang>=*" une chose à faire avant
> est de vérifier qu'il s'agit bien d'un code langue valide.
>
> Note : pour Wikipedia, les codes langue ne sont pas tout à fait
> conformes à BCP 47, puisque ce sont en fait des labels de
> sous-domaines dans le domaine wikipedia.org. Normalement maintenant
> tous les codes langues Wikipedia devraient être conformes à BCP 47
> (préférablement un code ISO 639-1, sinon ISO 639-2T, sinon ISO 639-3;
> mais on a parfois des extensions à ces codes, qui devraient être
> conformes à BCP 47 pour indiquer une écriture ISO 15924, une région
> ISO 3166-1 ou UN-M.49, ou un code variante enregistré dans la base
> IANA pour BCP47). Cependant il persiste encore quelques codes langues
> utilisés sur Wikipédia qui ne sont pas conformes à BCP47
> - par exemple "nrm" pour le normand, qui n'a pas de code dans BCP 47
> ni dans ISO 639, mais est utilisé pourtant pour coder le jériais ou le
> guernésiais qui sont considérés comme des langues avec un statut
> officiel à Jersey et Guernesey ; ces langues sont en fait des variétés
> dialectales du normand, lequel est encore considéré comme une variante
> du français, ce qui ferais du jériais ou du guernésiais des variantes
> du français, ce que réfute les Etats de ces îles ; malheureusement au
> lieu d'utiliser un code privé sur Wikipédia, le normand a été codé
> "nrm" et est en conflit avec une autre langue codée dans ISO 639-3 et
> dans BCP 47.
> - autres exemples avec le serbo-croate, qui a été déprécié dans ISO
> 639, persiste encore n'est plus recommandé dans BCP47, mais y est
> conservé et encore utilisé pour Wikipédia. Techniquement ce n'est pas
> incompatible et ne crée pas de conflit.
>
> Bref le code langue à mettre dans "wikipedia:lang=*" doit être un
> label de sous-domaine existant dans Wikipedia. Il serait bon qu'Osmose
> en maintienne une liste exhaustive (ce n'est pas une longue liste).
>
> Mais tous les autres codes langue des autres tags (par exemple
> "name:lang=*") doivent être conformes à BCP 47, si possible non
> dépréciés (utiliser le code recommandé dans la base IANA, qu'Osmose
> devrait apprendre à lire et décoder correctement), mais on accepte les
> aussi les codes de macrolangues (comme "zh" pour le chinois, sans
> préciser la langue individuelle), et les extensions pour mentionner
> d'autres écritures (par exemple "zh-Bpmf" pour une translitération en
> alphabet Bopomofo, ou "zh-Latn" utilisé pour une romanisation à priori
> en "pinyin" en Rép. Pop. de Chine, ou "ja-Kana" pour mentionner une
> translitération dans les syllabaires Hiragana/Katakana, de noms
> préférablement écrits en sinogrammes Kanji, ou "ja-Hani" pour
> mentionner une orthographe traditionnelle en sinogrammes Kanjis de
> noms aujourd'hui plutôt écrit en Hiragan/Katakana voir romanisés).
>
> Mais pour qu'Osmose vérifie les codes langues de ces derniers tags
> (sauf wikipedia:lang=*) il lui télécharger et utiliser la base IANA
> pour BCP 47, afin que d'une part il les décode correctement (selon RFC
> 5446) pour en vérifier d'abord la syntaxe (sinon ce n'est pas un code
> langue valide), puis pour vérifier dans la base IANA les codes
> inexistants (à signaler), et les codes dépréciés à remplacer par ceux
> indiqués dans la base IANA (attention tous les codes langues
> dépréciés, y compris les anciens codes n'ont pas toujours un code de
> remplacement comme "jw"->"jv" ou "iw"->"'he", car le remplacement est
> ambigu entre plusieurs codes candidats). Osmose devrait aussi signaler
> les codes langues d'usage spécial (comme "mul" ou "und") ou privés
> ("x-*") dont on n'a pas défini de règle d'usage sur OSM. Il devrait
> aussi signaler les codes de familles/collections de langues (dans ISO
> 639-2 la plupart, plus un seul dans ISO 639-1) qui ne sont PAS des
> "macro-langues" (par exemple le code pour "apache" n'est pas assez
> précis).
>
> Les codes qui n'ont pas de traduction claire dans BCP 47, bien que
> partiellement conformes, mais qui ont un usage défini dans Wikipédia
> (tels que "roa-rup" pour le francique ripuaire) devraient aussi être
> remplacés par le code préféré et standard dans BCP 47 pour tous les
> tags AUTRES que "wikipedia:lang=*".
>
> Petit à petit, Wikipédia met à jour ses codes pour les mettre en
> conformité avec BCP 47 (pour ne pas casser les liens externes, il
> transforme ces anciens codes en alias CNAME sur ses noms de domaines,
> et il met à jour sa liste de préfixes interwikis pour traduire les
> alias ; cela fonctionne pendant un certain temps, jusqu'à ce qu'il n'y
> ait pratiquement plus d'accès visible de l'ancien domaine sur ses
> serveurs Squid, et jusqu'à ce que les bots aient traduits tous les
> codes langue qui trainent encore dans les articles et modèles ; la
> transition peut être assez longue avant que le support de l'ancien
> usage non conforme soit supprimé, mais cela va plus vite sur les codes
> langues peu utilisés).
>
> Osmose pourrait apprendre ces règles et donc faire un meilleur
> travail. J'ai bien peut que le seul patch n'ai concerné que
> l'exception "name" (non conforme BCP 47, mais réservé, et il aurait
> mieux valu utiliser "wikipedia::name=*" et "wikipedia::name:lang=*"
> pour que la chaine vide entre les deux ":" soit bien identifié comme
> purement local et incompatible avec un code langue, et "name" soit
> alors bien interprété comme un nom de tag OSM. Ou encore
> "wikipedia_name=*" et "wikipedia_name:lang=*" (bien que je préférais
> plutôt "name_wikipedia=*" et "name_wikipedia:lang=*") afin d'éviter
> toute confusion avec un article Wikipédia traitant de l'objet
> géographique nommé dans "name=*" ou "name:lang=*".
>
> Le but étant aussi de fournir un autre lien donnant des informations
> associées (relatives mais mais directement liées à l'objet
> géographique), je pense même que ces tags destinés à fournir des liens
> additionnels vers d'autres infos (de type "Voir aussi", "related" en
> anglais) devraient être à part dans une série de tags "related:*" (ou
> "see_also:*=*. Par exemple "related:website=*",
> "related:website:name=*", "related:website:name:lang=*" ;
> "related:wikipedia=lang:article", "related:wikipedia:lang=article".
>
> Le 6 janvier 2013 15:37, Black Myst <Black.myst at free.fr> a écrit :
> > Le 2 janvier 2013 16:25, Christian Quest <cquest at openstreetmap.fr> a
> écrit :
> >
> >> Je te confirme que c'est du faux positif...
> >>
> >> J'ai signalé le problème à freed... et je suis un peu à l'origine du
> >> problème avec mes tags wikipedia:name que je n'ai qu'ajouté à la liste
> >> de ceux déjà proposés sur le wiki.
> >
> >
> > Je viens de faire un patch osmose pour supprimer ces faux-positifs.
> > Vue la complexité du code, j'ai rajouté une bonne couche de test
> unitaires.
> >
> > Pour ceux qui voudrait jeter un oeil, les tests sont à la fin du fichier.
> >
> https://gitorious.org/~blackmyst/osmose/blackmyst-osmose-backend/blobs/4c0d06ae1bc6c8073645cc8010662994dec00834/plugins/TagFix_Wikipedia.py
> >
> >
> > Lien vers le commit:
> >
> https://gitorious.org/~blackmyst/osmose/blackmyst-osmose-backend/commit/4c0d06ae1bc6c8073645cc8010662994dec00834
> > Dites moi si vous préférez un push request.
> >
> > ++
> > BlackMyst
> >
> > _______________________________________________
> > dev-fr mailing list
> > dev-fr at openstreetmap.org
> > http://lists.openstreetmap.org/listinfo/dev-fr
> >
>
> _______________________________________________
> dev-fr mailing list
> dev-fr at openstreetmap.org
> http://lists.openstreetmap.org/listinfo/dev-fr
>
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://lists.openstreetmap.org/pipermail/dev-fr/attachments/20130107/c197e8ee/attachment.html>
Plus d'informations sur la liste de diffusion dev-fr