HTML validation with parametre_url

Hello,

I used the W3 validator to check a multi-lingual SPIP website that uses <multi> in the rubriques. It validates with warnings. I'm not too concerned, as I've used Transitional, and that's adequate for now.

But the warnings that came back are curious.
They tell me that the URLs generated by SPIP are non-conformant:

----------------
Warning Line 111 column 36: reference not terminated by REFC delimiter.

<h2><a href="spip.php?rubrique1&lang=fr">Link Title</a></h2>

If you meant to include an entity that starts with "&", then you should terminate it with ";". Another reason for this error message is that you inadvertently created an entity by failing to escape an "&" character just before this text.

----------------

This was generated by the following SPIP code:

<a href="[(#URL_RUBRIQUE|parametre_url{'lang',#ENV{lang}})]"[ class="(#EXPOSE)"]><span>#TITRE</span></a>

The same problem occurs with #LANG instead, so it's not the #ENV{lang} causing the warning.

It's interesting that the "source code" of the page shows this:

<a href="spip.php?rubrique1&amp;lang=fr">Link Title</a>

That's correct, like the Validator suggests, but it's processed somewhere before hitting the validator.

So it looks like the "generic" syntax of an SPIP-generated URL with the ampersand such as:

http://www.website.com/spip.php?rubrique14&lang=fr

is non-conformant.

Anyone have any experience/views/resolutions to this ?
Does it matter ? :slight_smile:

Best regards,

Mark

I used the W3 validator to check a multi-lingual SPIP website that uses <multi> in the >rubriques. It validates with warnings.

In HTML-Generation <mulit> is resolved to the correct languange. By the way, you can even use Multi in php-code:-)

The ampersand-problem ist tricky, I guess it can only be resolved, when changing the server-configuration. But If you have access to server/php-Definitions there is a solution für perfectionists:-)
I found a description of this problem in the web. It's a know problem with CMS.

regards
Patrick

But the warnings that came back are curious.
They tell me that the URLs generated by SPIP are non-conformant:

----------------
Warning Line 111 column 36: reference not terminated by REFC delimiter.

<h2><a href="spip.php?rubrique1&lang=fr">Link Title</a></h2>

If you meant to include an entity that starts with "&", then you should terminate it with ";". Another reason for this error message is that you inadvertently created an entity by failing to escape an "&" character just before this text.

----------------

This was generated by the following SPIP code:

<a href="[(#URL_RUBRIQUE|parametre_url{'lang',#ENV{lang}})]"[ class="(#EXPOSE)"]><span>#TITRE</span></a>

The same problem occurs with #LANG instead, so it's not the #ENV{lang} causing the warning.

It's interesting that the "source code" of the page shows this:

<a href="spip.php?rubrique1&amp;lang=fr">Link Title</a>

That's correct, like the Validator suggests, but it's processed somewhere before hitting the validator.

So it looks like the "generic" syntax of an SPIP-generated URL with the ampersand such as:

http://www.website.com/spip.php?rubrique14&lang=fr

is non-conformant.

Anyone have any experience/views/resolutions to this ?
Does it matter ? :slight_smile:

Best regards,

Mark

_______________________________________________
spip-en@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-en