5568 sujets

Sémantique web et HTML

Bonsoir les Alsaciens et les Alsaciennes,

Vous est-il déjà arrivé d’avoir à utiliser un code de langue signifiant «non-applicable» ou «non-défini» dans un document HTML ? Si oui, comment vous y êtes-vous pris ?

Je rencontre ce cas actuellement, et à défaut, je remplace par "en" (déjà pas gentil pour eux), fautes de pouvoir faire autrement. Mais cette solution ne me plais pas du tout (parce que déjà pas sémantique pour deux sous).

De tels codes existent avec ISO 639-2, comme par exemple und pour Undefined.

Mais HTML requière d’utiliser ISO 639-1, et les validateurs ne semblent effectivement pas aimer l’ISO 639-2.

J’avais lu quelque part (j’ai perdu le lien) qu’il était possible d’obtenir ce résultat en utilisant simplement un attribut "lang" vide. Mais les valdateurs n’aiment pas plus cette manière que la précédente.

Est-ce sans solution comme je le crains ?

Si ça l’est, ben tant-pis, je continuerai à insulter l’Anglais par l’usage que je fais de son code de langue. Dans le cas contraire, qu’elle est cette solution ?

Marchi beaucoup
Modifié par hibou57 (28 Apr 2010 - 20:11)
Florent V. a écrit :
Tu n'utilises pas d'attribut lang, tout simplement.

C’est une solution, mais qui ne peut s’appliquer qu’à tout un document entier.

J’ai oublié de le préciser, mais le problème se pose dans le cas où le document a un attribut lang et contient des sous-éléments qui ne doivent pas hériter de cet attribut.

Redéfinir l’attribut pour lui donner une autre langue ne pose pas de problème, mais justement, je n’ai pas trouvé de référence qui me dise comment il est possible au moins d’annuler l’attribut pour un sous-élément.

En même temps, je ne vais pas en faire un plat si ce n’est pas possible, c’est surtout que j’aurais trouvé plus propre de pouvoir le faire. Si ça ne l’est pas, c’est quand-même dommage tout de même.
Modifié par hibou57 (28 Apr 2010 - 21:27)
Je m'excuse de poser cette question peut-être idiote, mais quel est l'intérêt d'indiquer un passage comme ayant une langue indéfinie ?
J'ai une autre question idiote : Comment une langue peut être indéfinie ?

Est-ce que c'est une langue inventée ? Dans ce cas, ne pas annoncer de changement de langue reste la meilleure solution (les lecteur d'écran rendront peut-être un truc horrible, mais le lecteur lira peut-être aussi mal la chose)
QuentinC a écrit :
Je m'excuse de poser cette question peut-être idiote,

Il n’y a pas de questions bêtes, ce qui est bête c’est de ne pas s’en poser

QuentinC a écrit :
mais quel est l'intérêt d'indiquer un passage comme ayant une langue indéfinie ?

Quand un contenu ne correspond à aucune langue. Par exemple des tables numérique, des extraits de protocoles en action, des codes purement informatiques et pas vraiment humainement lisiblse, des dumps de données hexadécimal, des translittérations phonétiques d’une langue à partir d’un autre, etc.

Je ne sais pas dans quel mesure les moteurs de recherche interprètent les codes de langues (ils utilisent probablement aussi le contenu lui-même pour déterminer la langue), et donc je ne sais pas à quel niveau c’est pertinent de le faire.

Mais j’y pensais aussi pour les éléments qui ont l’attribut ContentEditable fixé, et qui passent sous la moulinette du correcteur orthographique d’un navigateur (c’est plus sympa si on peut dire au navigateur que sur tel ou tel élément, ce n’est pas la peine de s’énerver sur la quantité de fautes).
Modifié par hibou57 (29 Apr 2010 - 08:31)
Oops, les messages se sont croisés, je répondais à quelqu’un d’autre dans le même temps.

Laurie-Anne a écrit :
J'ai une autre question idiote : Comment une langue peut être indéfinie ?

Est-ce que c'est une langue inventée ? Dans ce cas, ne pas annoncer de changement de langue reste la meilleure solution (les lecteur d'écran rendront peut-être un truc horrible, mais le lecteur lira peut-être aussi mal la chose)

Ah oui, je n’y avais pas pensé aux lecteurs d’écrans Smiley sweatdrop
C’est une très bonne raison de plus ça.

Laurie-Anne a écrit :
Est-ce que c'est une langue inventée

Si on passe sur le cas de ce qui ressemble plus à des données, il existe effectivement des choses qui peuvent ressembler à des langues inventées, même si c’est rares dans l’absolu, c’est commun sur certains sites : je pense surtout à ce que l’on appel les translittérations.

Une translittérations, c’est l’écriture, parfois approximative, d’une langue, dans l’alphabet d’une autre langue (typiquement avec les lettres de l’alphabet latin, mais il en existe d’autres). Il est possible par exemple d’avoir du Japonais, de l’Hébreu ou de l’Arabe, écrits en alphabet Latin.
Modifié par hibou57 (29 Apr 2010 - 08:28)
OK.

Alors, dans le cas de données numériques, pas de changement de langue (les chiffres doivent êtres lus dans la langue de la page).

Dans le cas de codes informatique, il existe <code>

Pour les protocole : on indique la langue dans laquelle ils sont rédigés

Pour les langues étrangère rédigées en alphabet romain on utilise le code qui les désigne (du japonais en kana ou romaji, ça reste du japonais).

Pour tout le reste je n'indiquerais pas de changement de langue.
Laurie-Anne a écrit :
OK.

Alors, dans le cas de données numériques, pas de changement de langue (les chiffres doivent êtres lus dans la langue de la page).

Oui, pour les chiffres.

Laurie-Anne a écrit :
Dans le cas de codes informatique, il existe <code>

Au moins Opera fait la vérification orthographique même sur ces éléments CODE. Je viens de vérifier dans la référence HTML pour être sûr, et l’attribut "lang" est aussi défini pour CODE. Ce n’est pas un élément sans langue.

Laurie-Anne a écrit :
Pour les protocole : on indique la langue dans laquelle ils sont rédigés

Ou la lange dont ils sont inspirés, ça peut aller pour certains, mais d’autres sont plus cabalistiques (comme ceux des consoles).

Laurie-Anne a écrit :
Pour les langues étrangère rédigées en alphabet romain on utilise le code qui les désigne (du japonais en kana ou romaji, ça reste du japonais).

Ça n’est une translittération ça. Ce sont deux alphabets reconnus pour le Japonais, même si l’un des deux (je ne sais plus lequel) est effectivement plus phonétique que l’autre.

Laurie-Anne a écrit :
Pour tout le reste je n'indiquerais pas de changement de langue.

Oui, de toute façon, pas le choix apparemment. C’est juste que j’aurais aimé que ça le soit, mais comme je disais, si ça ne l’est pas tant-pis, ce n’est pas si grave non-plus.

Merci quand-même pour les suggestions
Modifié par hibou57 (29 Apr 2010 - 08:50)
hibou57 a écrit :
Ça n’est une translittération ça. Ce sont deux alphabets reconnus pour le Japonais, même si l’un des deux (je ne sais plus lequel) est effectivement plus phonétique que l’autre.
romaji = alphabet romain en japonais (c'est juste moins long à taper).
a écrit :
Quand un contenu ne correspond à aucune langue. Par exemple des tables numérique, des extraits de protocoles en action, des codes purement informatiques
et pas vraiment humainement lisiblse, des dumps de données hexadécimal, des translittérations phonétiques d’une langue à partir d’un autre, etc.


Pour les chiffres et les tableaux de données, je rejoins ce qui a été dit : pas d'indication de langue, les chiffres sont lus dans la langue courante. Ce serait très désagréable qu'un lecteur d'écran lise le texte en français, voie un chiffre et paf, switche en anglais pour le lire, et ensuite reviendrait en français. Si tu me fais ce coup-là, c'est sûr, je me sauve en courant.

Pour ce qui est de l'informatique, je ne mettrais pas de langue non plus. Bien que les mots-clés de tous les langages sont en anglais, je ne le préciserais pas. Ce n'est pas du véritable anglais, c'est tout au plus vaguement ressemblant.
A ce propos, j'ai déjà eu l'occasion d'apercevoir lang="html", lang="php", lang="java", lang="cpp" et j'en passe en combinaison avec l'élément code ou pre. C'est faux, complètement faux. On ne confond pas les langages informatiques et les langues écrites/parlées, ça n'a rien à voir. Même remarque pour les commandes écrites en console, j'ai aussi déjà vu <code lang="console">

En ce qui concerne l'hexadécimal, il faut se rappeler que l'hexadécimal n'est rien de plus qu'un système numérique, et à ce titre, la première remarque s'applique.

Au niveau des trucs comme le japonais écrit en alphabet latin, je pense qu'il y a un code spécifique prévu pour, du genre jp-XX. Ce serait logique puisque les japonais ont au moins 3 alphabets différents, peut-être plus, je ne sais pas exactement. (Ceci dit les deux lettres majuscules sont normalement censé représenter un pays, donc c'est peut-être codé sous forme de variante, genre jp-JP-XXXXX)

Pour l'alphabet phonétique aussi il doit y avoir un code, puisque c'est aussi quelque chose de normalisé par l'ISO.

EDIT : Ben non, perdu, il n'y a apparament pas. cf. List of ISO639-1 codes
Modifié par QuentinC (29 Apr 2010 - 14:36)