Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

XHR et responseXML (avec MathML)

22 réponses
Avatar
unbewusst.sein
à la page <http://thoraval.yvon.free.fr/Fixed_layout/import_nodes.xhtml>
(testé uniquement sous MacOS X avec FF 2 et Safari 3)

quand on clique sous "Actions" (menu à doite) en choisissant "Import
SVG", pas de pb, le svg s'affiche MAIS, si je suis la même procédure
avec "Import MathML", firefox me dit :
Erreur : req.responseXML has no properties

pourtant le fichier bernoulli.nml est bien là (sinon de toutes façons
j'aurai du avoir un message d'erreur...)

autres questions :
- 1 - dans ma fonction "importHandler" (lignes 43/52) avant, au lieu de
req.xxx j'avais mis this.xxx ça a très bien marché (avec le svg) sur
Safari 3.1.1 mais pas du tout avec FF 2 ??? c'est un gag spécifique à ff
? je veux dire ; sur une image, si je fais :
mon_image.onload=onloadHandler;
dans onloadHandler je peux me référer à this et ainsi avoir, par ex :
var onloadHandler=function(){alert(this.src)};
normalement dans ce cas this est bien le "récepteur" ???

- 2 - bon, quand, ça roule et que j'ai bien un "req.responseXML" pour
importer le noeud root je dois faire :
req.responseXML.getElementsByTagName(<nom du noeud root>)[0]

y a-t'il un moyen de l'avoir directement ce "noeud" root, ce qui me gène
est que je suis obligé de le passer en paramètre ?

--
Une Bévue

10 réponses

1 2 3
Avatar
Mickaël Wolff

à moins que ça puisse se mettre dans une directive serveur, côté
utilisateur...


Dans le .htaccess, tu dois pouvoir ajouter une directive Apache :

# si tu inclus du mathml dans un namespace de xhtml
AddType application/xhtml+xml .xhtml
# sinon
AddType application/mathml+xml .nml

Sauf si c'est interdit par Free.
--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org

Avatar
unbewusst.sein
Mickaël Wolff wrote:


Dans le .htaccess, tu dois pouvoir ajouter une directive Apache :

# si tu inclus du mathml dans un namespace de xhtml
AddType application/xhtml+xml .xhtml


ça, ça doit exister chez free (au niveau global du serveur) car je ne
rencontre pas de pb avec mes fichiers xhtml déclarés en
'application/xhtml+xml'

# sinon
AddType application/mathml+xml .nml


j'essaierai, pour voir (sur free), en tout cas, ça marche sans directive
mais avec l'extension xml pour le fichier MathML.


Sauf si c'est interdit par Free.


pourquoi interdiraient'ils ce genre de directive ?

--
Une Bévue

Avatar
Mickaël Wolff

Sauf si c'est interdit par Free.


pourquoi interdiraient'ils ce genre de directive ?


Parce qu'en sécurité informatique, on interdit tout sauf ce qu'on
autorise :)

--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org


Avatar
unbewusst.sein
Mickaël Wolff wrote:


Parce qu'en sécurité informatique, on interdit tout sauf ce qu'on
autorise :)


je vois ;-)

--
Une Bévue

Avatar
unbewusst.sein
Mickaël Wolff wrote:

AddType application/mathml+xml .nml

Sauf si c'est interdit par Free.


d'après <http://httpd.apache.org/docs/2.0/mod/mod_mime.html#addhandler>,

ce serait plutôt AddHandler :
Description: Maps the filename extensions to the specified handler
Syntax: AddHandler handler-name extension [extension] ...
Context: server config, virtual host, directory, .htaccess

donc dans le dossier concerné j'ai ajouté un .htaccess de contenu :
AddHandler application/mathml+xml .mml

(au passage l'extension pour mathml c'est mml et non pas ce que j'avais
écrit nml...)

mais bon, sur free ça donne rien de + ...


--
Une Bévue

Avatar
Mickaël Wolff
donc dans le dossier concerné j'ai ajouté un .htaccess de contenu :
AddHandler application/mathml+xml .mml


Je persiste, AddType. AddHandler est là pour rajouter une façon de
manipuler un fichier en fonction de son extension. AddType permet
d'associer un type de fichier à un suffixe. Le premier paramètre de
AddHandler permet de spécifier le nom du handler du fichier (par
exemple, un CGI ou un module). Le nom du handler peut être un type mime,
mais ça risque d'entraîner des confusion.

AddType <http://httpd.apache.org/docs/1.3/mod/mod_mime.html#addtype>

(au passage l'extension pour mathml c'est mml et non pas ce que j'avais
écrit nml...)


Je m'en doutais, mais j'ai repris ce que tu avais écrit :) Et puis,
les extensions, finalement, on s'en cogne. Sous unix ce n'est pas
fondamental, dans BeOS complètement inutile, sous MS Windows parfois un
trou de sécurité.

--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org

Avatar
unbewusst.sein
Mickaël Wolff wrote:


AddType <http://httpd.apache.org/docs/1.3/mod/mod_mime.html#addtype>


OK, mais ça ne change rien chez free, le .htaccess étant dans le seul
(sous)-répertoire ayant un fichier .mml

pas mieux chez moi, mais bon, mon fichier .htaccess est + complexe

d'ailleurs je m'aperçois que l'apache de ma bécanne (.htaccess au root
de mon site) sert le xhtml en text/html, je ne sais plus du tout où j'ai
trouvé ça :
~/Sites%> cat .htaccess
AddType text/html .xhtml
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_ACCEPT} application/xhtml+xml
RewriteCond %{HTTP_ACCEPT}&nbsp;!application/xhtml+xmls*;s*q=0
RewriteCond %{REQUEST_URI} .xhtml$
RewriteCond %{THE_REQUEST} HTTP/1.1
RewriteRule .* - [T=application/xhtml+xml]

(au passage l'extension pour mathml c'est mml et non pas ce que j'avais
écrit nml...)


Je m'en doutais, mais j'ai repris ce que tu avais écrit :) Et puis,
les extensions, finalement, on s'en cogne. Sous unix ce n'est pas
fondamental, dans BeOS complètement inutile, sous MS Windows parfois un
trou de sécurité.


euh, mac os x est un unix, mais je pense que les extensions sont utiles,
sinon, comment le système connaitrait le type du fichier, par une info,
non visible, attachée au fichier ? et Apache se fie aux extensions non ?

sur mac os x il y a la notion de Type Identifier qui me donne pour le
xhtml : dyn.age81u4dyrzOa mais je ne sais d'où ça sort...

le html donnant public.html

--
Une Bévue


Avatar
Mickaël Wolff

OK, mais ça ne change rien chez free, le .htaccess étant dans le seul
(sous)-répertoire ayant un fichier .mml


C'est amusant, parce qu'en fait le serveur web devrait faire une
erreur 500 suite à l'analyse du .htaccess

d'ailleurs je m'aperçois que l'apache de ma bécanne (.htaccess au root
de mon site) sert le xhtml en text/html, je ne sais plus du tout où j'ai
trouvé ça :


Peut-être parce que MSIE ne comprend pas le type mime normalisé ?


comment le système connaitrait le type du fichier, par une info,


<http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man1/file.1.html>
:) Le problème est qu'il n'y a pas d'autorité répertoriant les suffixes,
et que trois lettres... c'est vraiment trop peut !

non visible, attachée au fichier ? et Apache se fie aux extensions non ?


Pas forcément <http://httpd.apache.org/docs/1.3/mod/mod_mime_magic.html>.

sur mac os x il y a la notion de Type Identifier qui me donne pour le
xhtml : dyn.age81u4dyrzOa mais je ne sais d'où ça sort...


Propriétaire certainement.

(Certes MacOSX a un sous-système graphique, mais la surcouche
graphique réutilises malheureusement les mauvaises recettes importées du
monde MS Windows. Mais bon, sous Linux aussi on a ce genre de problèmes.
Tant qu'« ils » ne cachent pas les suffixes, ça ira.

--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org

Avatar
unbewusst.sein
Mickaël Wolff wrote:


C'est amusant, parce qu'en fait le serveur web devrait faire une
erreur 500 suite à l'analyse du .htaccess


euh, attends là, tu veux dire que mon .htacces (celui sur free) avec :

AddType application/mathml+xml .mml

n'est pas compréhensible ?


d'ailleurs je m'aperçois que l'apache de ma bécanne (.htaccess au root
de mon site) sert le xhtml en text/html, je ne sais plus du tout où j'ai
trouvé ça :


Peut-être parce que MSIE ne comprend pas le type mime normalisé ?


Ah bon, j'aurais donc ajouté ces trucs là dans le .htaccess de ma
bécanne pour MSIE, grand dieux !, je ne m'en souviens plus du tout, j'ai
du mettre ça il y a un ou deux ans...

comment le système connaitrait le type du fichier, par une info,


<http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man1/file.1.html>


c'est p'tet pas le même sur mac :
~/Sites/DOM%> file xpath_svg_help.xhtml
xpath_svg_help.xhtml: XML document text
~/Sites/Fixed_layout%> file bernoulli.mml
bernoulli.mml: XML document text
~/Sites/Fixed_layout%> file bernoulli.xml
bernoulli.xml: XML document text

:) Le problème est qu'il n'y a pas d'autorité répertoriant les suffixes,
et que trois lettres... c'est vraiment trop peut !


ouais, ça je m'en suis aperçu avec le "Type identifier" sur mac m'a
montré qu'avec une même extension je pouvais avoir des "Type
Identifiers" différents... oeuf corse ))

non visible, attachée au fichier ? et Apache se fie aux extensions non ?


Pas forcément <http://httpd.apache.org/docs/1.3/mod/mod_mime_magic.html>.


donc rien de "magic" là dedans :
Module mod_mime_magic
This module provides for determining the MIME type of a file by looking
at a few bytes of its contents.


sur mac os x il y a la notion de Type Identifier qui me donne pour le
xhtml : dyn.age81u4dyrzOa mais je ne sais d'où ça sort...


Propriétaire certainement.

(Certes MacOSX a un sous-système graphique, mais la surcouche
graphique réutilises malheureusement les mauvaises recettes importées du
monde MS Windows. Mais bon, sous Linux aussi on a ce genre de problèmes.
Tant qu'« ils » ne cachent pas les suffixes, ça ira.


ah bon apple importerait de MS Windows ???

ce qui me surprend sur mac os est la lourdeur de l'OS, un petit exemple
est l'enregistrement des bookmarks :

<dict>
<key>URIDictionary</key>
<dict>
<key></key>

<string>http://solutions.brother.com/Library/sol/printer/email_notificat
ion.html</string>
<key>title</key>
<string>BSC: e-mail Notification</string>
</dict>
<key>URLString</key>

<string>http://solutions.brother.com/Library/sol/printer/email_notificat
ion.html</string>
<key>WebBookmarkType</key>
<string>WebBookmarkTypeLeaf</string>
<key>WebBookmarkUUID</key>
<string>A9A44E3E-3A7F-4025-9273-848C75F50455</string>
</dict>


tout ce baratin pour enregistrer
"http://solutions.brother.com/Library/sol/printer/email_notification.htm
l"
...

pas étonnant que le système soit réputé pour être "stable"...
--
Une Bévue


Avatar
Mickaël Wolff
euh, attends là, tu veux dire que mon .htacces (celui sur free) avec :

AddType application/mathml+xml .mml

n'est pas compréhensible ?


Non, que cela doit générer une erreur si la redéfinition de l'option
n'est pas autorisée.

comment le système connaitrait le type du fichier, par une info,
<http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man1/file.1.html>



c'est p'tet pas le même sur mac :
~/Sites/DOM%> file xpath_svg_help.xhtml
xpath_svg_help.xhtml: XML document text
~/Sites/Fixed_layout%> file bernoulli.mml
bernoulli.mml: XML document text
~/Sites/Fixed_layout%> file bernoulli.xml
bernoulli.xml: XML document text


Sisi, regarde le man sous ton mac :)

ah bon apple importerait de MS Windows ???


Et vice-versa, mais bon, on dérive dans le troll :)

--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org



1 2 3