readium / r2-shared-js

Shared models for Readium Desktop
BSD 3-Clause "New" or "Revised" License
11 stars 11 forks source link

extensibility #11

Open danielweck opened 5 years ago

danielweck commented 5 years ago

Metadata

Via new JSON-LD contexts Via properties defined by full URIs Implementation: currently unknown metadata are lost. To make them available would let users of the SDK (i.e. apps, e.g. education) to get them easily without modifying the SDK. Example: Calibre metadata -> https://readium.org/readium-css/docs/CSS21-epub_compat.html#metadata An "otherMetadata" array will contain items with property name + value, extracted from the EPUB meta element.

Collections

Expressed as new roles. If part of our extensions, they are in registries If not they are full URIs. An "otherCollections" array will contain items with a role + subCollection.

Links

Extensibility for properties, should be similar to metadata children and alternate should be part of the core model, not generic extension point

danielweck commented 5 years ago

See https://docs.google.com/document/d/1mHMwJJq3Lypi36bzm3_6LM4wQX8iygdbTTy-S8fya5o/

danielweck commented 5 years ago

See Swift implementation as approved exemplar model: https://github.com/readium/r2-shared-swift/tree/develop/r2-shared-swift/Publication/Web%20Publication