diff --git a/README.md b/README.md index ae90f20..bf500df 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,5 @@ [![Readium Logo](https://readium.org/assets/logos/readium-logo.png)](https://readium.org) - - # Readium Web Publication Manifest The Readium Web Publication Manifest is a JSON-based document meant to represent and distribute publications over HTTPS. @@ -363,3 +355,11 @@ In addition to the EPUB format, a Readium Web Publication may< A JSON Schema is available under version control at [https://github.com/readium/webpub-manifest/tree/master/schema](https://github.com/readium/webpub-manifest/tree/master/schema) For the purpose of validating a Readium Web Publication Manifest, use the following JSON Schema resource: [https://readium.org/webpub-manifest/schema/publication.schema.json](https://readium.org/webpub-manifest/schema/publication.schema.json) + + diff --git a/contexts/default/README.md b/contexts/default/README.md index 2bc9f08..b8f9d6a 100644 --- a/contexts/default/README.md +++ b/contexts/default/README.md @@ -1,11 +1,3 @@ - - # Default Context The Readium Web Publication Manifest defines a shared external context document hosted by the Readium Foundation and based primarily on schema.org and its extensions. @@ -398,4 +390,12 @@ If we use another example with more complex metadata expression and an extension In order to convert EPUB packages into a Readium Web Publication Manifest, we've documented how each metadata item listed in the default context is mapped to an equivalent in EPUB 2.x or 3.x. -This live document is available at: [https://readium.org/architecture/streamer/parser/metadata](https://readium.org/architecture/streamer/parser/metadata) \ No newline at end of file +This live document is available at: [https://readium.org/architecture/streamer/parser/metadata](https://readium.org/architecture/streamer/parser/metadata) + + \ No newline at end of file diff --git a/extensions/audiobook.md b/extensions/audiobook.md index 8f88723..3606361 100644 --- a/extensions/audiobook.md +++ b/extensions/audiobook.md @@ -1,13 +1,5 @@ [![Readium Logo](https://readium.org/assets/logos/readium-logo.png)](https://readium.org) - - # Audiobook Profile ## Example @@ -97,7 +89,7 @@ In addition, all Link Objects should also include the ` In order to support multiple variants of the same audiobook (using a different format or bitrate for instance), Link Objects in the `readingOrder` may rely on the `alternate` key: -``` +```json { "href": "http://example.org/part1.mp3", "type": "audio/mpeg", @@ -139,3 +131,11 @@ Over 10,000+ audiobooks are also available in this format through [the Internet ## Demo [A demo of the Flatland example is also available](https://player.cantookaudio.com/aHR0cHM6Ly9yZWFkaXVtLm9yZy93ZWJwdWItbWFuaWZlc3QvZXhhbXBsZXMvRmxhdGxhbmQvbWFuaWZlc3QuanNvbg==) through a Web App developed by [De Marque](https://www.demarque.com/). + + diff --git a/schema/metadata.schema.json b/schema/metadata.schema.json index f711666..3217045 100644 --- a/schema/metadata.schema.json +++ b/schema/metadata.schema.json @@ -117,6 +117,9 @@ "imprint": { "$ref": "contributor.schema.json" }, + "subject": { + "$ref": "subject.schema.json" + }, "readingProgression": { "type": "string", "enum": [ diff --git a/schema/subject-object.schema.json b/schema/subject-object.schema.json new file mode 100644 index 0000000..c71bc3b --- /dev/null +++ b/schema/subject-object.schema.json @@ -0,0 +1,45 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "$id": "https://readium.org/webpub-manifest/schema/subject-object.schema.json", + "title": "Subject Object", + "type": "object", + "properties": { + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "description": "The language in a language map must be a valid BCP 47 tag.", + "type": "object", + "patternProperties": { + "^((?(en-GB-oed|i-ami|i-bnn|i-default|i-enochian|i-hak|i-klingon|i-lux|i-mingo|i-navajo|i-pwn|i-tao|i-tay|i-tsu|sgn-BE-FR|sgn-BE-NL|sgn-CH-DE)|(art-lojban|cel-gaulish|no-bok|no-nyn|zh-guoyu|zh-hakka|zh-min|zh-min-nan|zh-xiang))|((?([A-Za-z]{2,3}(-(?[A-Za-z]{3}(-[A-Za-z]{3}){0,2}))?)|[A-Za-z]{4}|[A-Za-z]{5,8})(-(?