-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Only allow OPDS Publications in OPDS 2 Feeds #39
Comments
Note that the OPDS "publication" schema only imports the Readium "metadata" JSON Schema, and defines its own structure otherwise: drafts/schema/publication.schema.json Lines 7 to 9 in b7055e1
|
Besides the common "metadata" object definition, here are the OPDS vs. RWPM JSON Schemas to compare: drafts/schema/publication.schema.json Lines 10 to 81 in b7055e1
|
In https://drafts.opds.io/opds-2.0#12-publications it is written that the
publications
json array can contain either OPDS Publications or Readium Web Publication Manifests (RWPM).Note: The main difference between both structures is the presence of a
readingOrder
in the latter.I can understand that presenting a feed of RWPM can in some circumstances appear useful to avoid making an additional fetch to retrieve resources of a specific web publication. But ...
Doing so is cumbersome for reading apps which must take into account two different cases (RWPM included or RWPM fetched from an acquisition link in an OPDS Publication), which is not KISS compliant. Plus the fact that it is not easily possible to disambiguate between a RWPM and an OPDS Publication (both having almost the same structure).
More, it tightly ties the ODPS 2 spec to the RWPM spec, which is not good. Add the possibility to embed RWPM in OPDS 2 makes it non-interoperable with OPDS 1.
The proposal is therefore to remove from
1.2 Publications
the possibility to find RWPMs in thepublications
structure, and move the requirement to have animages
collection to4.1 OPDS Publication
, where it logically belongs.The text was updated successfully, but these errors were encountered: