<?xml version="1.0" encoding="UTF-8"?> <package xmlns="http://www.idpf.org/2007/opf" unique-identifier="bookid" version="3.0"> <metadata xmlns:dc="http://purl.org/dc/elements/1.1/"> <dc:title>The Great Adventure</dc:title> <dc:creator>John Smith</dc:creator> <dc:language>en</dc:language> <dc:identifier id="bookid">urn:uuid:12345678-1234-5678-1234-567812345678</dc:identifier> <!-- Additional metadata goes here --> </metadata> <manifest> <item id="html" href="content.html" media-type="application/xhtml+xml" /> <item id="css" href="stylesheet.css" media-type="text/css" /> <item id="toc" href="toc.ncx" media-type="application/x-dtbncx+xml" /> <!-- Add any additional items, such as images or fonts, with their respective media types and file paths --> </manifest> <spine toc="toc"> <itemref idref="html" /> <!-- Add any additional itemref elements to specify the reading order of the content --> </spine> </package> |
Okay so lets break down what we actually need to fill out:
unique-identifier | ||
dc:title | ||
dc:creator | ||
dc:language | ||
dc:identifier (same as unique-identifier) | ||
example:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ncx PUBLIC "-//NISO//DTD ncx 2005-1//EN" "http://www.daisy.org/z3986/2005/ncx-2005-1.dtd"> <ncx xmlns="http://www.daisy.org/z3986/2005/ncx/" version="2005-1"> <head> <meta name="dtb:uid" content="urn:uuid:12345678-1234-5678-1234-567812345678" /> <meta name="dtb:depth" content="1" /> <meta name="dtb:totalPageCount" content="0" /> <meta name="dtb:maxPageNumber" content="0" /> </head> <docTitle> <text>The Great Adventure</text> </docTitle> <navMap> <navPoint id="navPoint-1" playOrder="1"> <navLabel> <text>Chapter 1</text> </navLabel> <content src="chapter1.html" /> </navPoint> <navPoint id="navPoint-2" playOrder="2"> <navLabel> <text>Chapter 2</text> </navLabel> <content src="chapter2.html" /> </navPoint> <!-- Additional navPoint elements for more chapters or sections --> </navMap> </ncx> |
A developer’s journey
Turns out that the meta tags are not the primary place for metadata, but the content.opf is. As for keywords they are entered separately during the publishing process.
name | content |
author | |
description | |
keywords |
KDP Help page here
Kindle Previewer here