Есть ли определенная схема синдикации синдикации атома?
RFC 4287 содержит только компактную схему Relax NG в приложении B.
http://www.kbcafe.com/rss/atom.xsd.xml (версия веб-архива, поскольку оригинал больше недоступен)
http://www.kbcafe.com/rss/atom.xsd.xml не следует использовать, поскольку он даже не обнаруживает отсутствующие теги <id>.
<id>
https://tools.oasis -open.org / version-control / browse / wsvn / cmis / trunk / SchemaProject / schema / ATOM.xsd сломан, xmllint сообщает об ошибке при его использовании:
xmllint
сложный тип 'atomPersonConstruct': модель содержимого не является детерминированной.
RFC содержит компактную спецификацию расслабления: https://validator.w3.org/feed/docs/rfc4287.html#rfc.section.B
С помощью trang этот файл .rnc можно преобразовать из компактного формата в файл .rng на основе XML. Это в свою очередь может использоваться с xmllint:
trang
.rnc
.rng
$ 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