Есть ли какая-либо определенная XML-схема синдикации атома? Есть ли какая-либо определенная схема XML-синдикации XML? RFC 4287 содержит только компактную схему Relax NG в приложении B. Ответ 1 http://www.kbcafe.com/rss/atom.xsd.xml (версия веб-архива, поскольку оригинал больше не доступен) Ответ 2 Что не работает http://www.kbcafe.com/rss/atom.xsd.xml не следует использовать, поскольку он даже не обнаруживает теги <id>. https://tools.oasis-open.org/version-control/browse/wsvn/cmis/trunk/SchemaProject/schema/ATOM.xsd не работает, xmllint сообщает об ошибке при его использовании: сложный тип "atomPersonConstruct": модель контента не является детерминированной. Что работает RFC содержит компактную спецификацию: https://validator.w3.org/feed/docs/rfc4287.html#rfc.section.B С помощью trang файл .rnc может быть преобразован из компактного формата в файл .rng на основе XML. Это, в свою очередь, можно использовать с xmllint: $ xmllint --noout --relaxng atom.rng feed.atom feed.atom:4: element feed: Relax-NG validity error : Expecting an element updated, got nothing feed.atom:16: element entry: Relax-NG validity error : Invalid sequence in interleave feed.atom:16: element entry: Relax-NG validity error : Element feed failed to validate content feed.atom fails to validate
Ответ 1 http://www.kbcafe.com/rss/atom.xsd.xml (версия веб-архива, поскольку оригинал больше не доступен)
Ответ 2 Что не работает http://www.kbcafe.com/rss/atom.xsd.xml не следует использовать, поскольку он даже не обнаруживает теги <id>. https://tools.oasis-open.org/version-control/browse/wsvn/cmis/trunk/SchemaProject/schema/ATOM.xsd не работает, xmllint сообщает об ошибке при его использовании: сложный тип "atomPersonConstruct": модель контента не является детерминированной. Что работает RFC содержит компактную спецификацию: https://validator.w3.org/feed/docs/rfc4287.html#rfc.section.B С помощью trang файл .rnc может быть преобразован из компактного формата в файл .rng на основе XML. Это, в свою очередь, можно использовать с xmllint: $ xmllint --noout --relaxng atom.rng feed.atom feed.atom:4: element feed: Relax-NG validity error : Expecting an element updated, got nothing feed.atom:16: element entry: Relax-NG validity error : Invalid sequence in interleave feed.atom:16: element entry: Relax-NG validity error : Element feed failed to validate content feed.atom fails to validate