É válido ter mais de um ponto de interrogação em um URL?

Eu me deparei com o seguinte URL hoje:

http://www.sfgate.com/cgi-bin/blogs/inmarin/detail??blogid=122&entry_id=64497 

Observe o ponto de interrogação duplicado no início da string de consulta:

 ??blogid=122&entry_id=64497 

Meu navegador não parece ter nenhum problema com ele e está executando um bookmarklet rápido:

 javascript:alert(document.location.search); 

acabou de me dar a string de consulta mostrada acima.

Este é um URL válido? A razão pela qual estou sendo tão pedante (supondo que sou) é porque preciso analisar URLs como essa para parâmetros de consulta, e o suporte a pontos de interrogação duplicados exigiria algumas alterações em meu código. Obviamente, se eles estão em estado selvagem, eu preciso apoiá-los; Estou curioso principalmente se for minha culpa por não aderir exatamente aos padrões de URL ou se, na verdade, é um URL não padrão.

Sim, é válido. Apenas o primeiro ? em um URL tem significado, qualquer depois que ele é tratado como pontos de interrogação literais:

O componente de consulta é indicado pelo primeiro caractere de interrogação (“?”) E terminado por um caractere de sinal numérico (“#”) ou pelo final do URI.

Os caracteres barra (“/”) e ponto de interrogação (“?”) Podem representar dados dentro do componente de consulta. Tenha em atenção que algumas implementações erradas mais antigas podem não gerir correctamente esses dados quando são utilizados como URI de base para referências relativas (Secção 5.1), aparentemente porque não distinguem dados de consulta dos dados do caminho quando procuram separadores hierárquicos. No entanto, como os componentes de consulta costumam ser usados ​​para transportar informações de identificação na forma de pares “chave = valor” e um valor usado frequentemente é uma referência a outro URI, às vezes é melhor para a usabilidade evitar a codificação percentual desses caracteres.

http://tools.ietf.org/html/rfc3986#section-3.4

Como uma resposta tangencialmente relacionada, foo?spam=1?&eggs=3 dá ao parâmetro spam o valor 1?