Когда я использую xmlsitemap для создания карты сайта, я вижу такие записи:
<url><loc>{ok URL snipped}</loc><lastmod>2013-05-16T21:49Z</lastmod><changefreq>monthly</changefreq></url>
<url><loc>{different ok URL snipped}</loc><lastmod>2013-05-16T21:49Z</lastmod><changefreq>monthly</changefreq></url>
Когда я использую schemaValidate в моем примере, я получаю те же ошибки, что и вы.Это заставило меня задуматься, как эта схема определяет приемлемый lastmod.Отсюда: http://www.sitemaps.org/schemas/sitemap/0.9/ похоже, что объединение даты и даты и времени для tLastmod может стать ключом к проблеме.
Я нашел: http://www.w3.org/TR/xmlschema-2/ и пролистал, глядя, какэти встроенные типы данных были определены там.Я заметил, что примеры показывали секунды во времени.
Я вручную изменил значение sitemap.xml на:
<url><loc>{ok URL snipped}</loc><lastmod>2013-05-16T21:49:00Z</lastmod><changefreq>monthly</changefreq></url>
<url><loc>{different ok URL snipped}</loc><lastmod>2013-05-16T21:49:00Z</lastmod><changefreq>monthly</changefreq></url>
, и XML подтвердил.
Итак, мне интересно, пропущены ли секунды из dateTime в выводе изxmlsitemap вызывает проблемы при проверке по схеме?
Я вижу ценность в том, чтобы иметь возможность взять sitemap.xml сайта и убедиться, что он проверяется (программно на PHP в моем случае), прежде чем пытаться его проанализировать.
Я полагаю, что, возможно, существует более надежный REST-подобный сервис, которому можно было бы передать URL-адрес карты сайта или строку, представляющую его, и вернуть результат в отношении того, был ли он проверен, учитывая некоторую нечеткость в формате dataTime и т. Д., НоschemaValidate выглядело как многообещающий первый удар.
Редактировать:
Обсуждение вопросов проверки модуля можно получить по адресу:
https://drupal.org/project/issues/xmlsitemap?text=validation&status=All
С тех пор, как я опубликовал этот ответ, я обнаружил, что по крайней мере в версии модуля 7.x-2.0-rc2 + 0-dev, которую я использую (и, возможно, в более ранних версиях -Я просто не проверял) Я могу настроить Settings -> Advanced Settings -> Last modification date format -> Long
для изменения формата, в котором написаны даты модификации.
В результате получается карта сайта, которая проверяет небольшой набор примеров, которые я использовал.Я не уверен, что не бывает случаев, когда полученная карта сайта все еще может не проверяться.Например, см. Комментарий по адресу:
https://drupal.org/node/1096282
, который подсказывает мне, что могут быть и другие неподтверждающие ситуации.
Если проверка XML выполняется по схемедостаточно важен, возможно, он достоин "xmlsitemap_validate.test", но может не быть достаточного интереса к этой проверке, чтобы оправдать эту работу ...