.OPF文件剖析
OPF文档是epub电子书的核心文件,且是一个标准的XML文件,依据OPF规范,主要由五个部分组成:
1、<metadata>,元数据信息,由两个子元素组成:
- <dc-metadata>,其元素构成采用dubline core(DC)的15项核心元素,包括:
- <title>:题名
- <creator>:责任者
- <subject>:主题词或关键词
- <description>:内容描述
- <contributor>:贡献者或其它次要责任者
- <date>:日期
- <type>:类型
- <format>:格式
- <identifier>:标识符
- <source>:来源
- <language>:语种
- <relation>:相关信息
- <coverage>:履盖范围
- <rights>:权限描述
- <x-metadata>,即扩展元素。如果有些信息在上述元素中无法描述,则在此元素中进行扩展。
2、<menifest>,文件列表,由于列出OEBPS文档及相关的文档,有一个子元素构成,
- <item id="" href="" media-type="">,该元素由三个属性构成:
- id:表示文件的ID号
- href:文件的相对路径
- media-type:文件的媒体类型
- 例如:<item id="page01" href="page01.xhtml" media-type="application/xhtml+xml"/>
- <item id="img000"href="001.png"media-type="image/png" />
- <item id="img001"href="002.jpg"media-type="image/jpeg" />
3、<spine toc="ncx">,脊骨,其主要功能是提供书籍的线性阅读次序。由一个子元素构成:
- <itemref idref="">,由一个属性构成:
- idref:即参照menifest列出的ID
- 例如:<itemref idref="page01"/>
4、<guide>,指南,依次列出电子书的特定页面, 例如封面、目录、序言等, 属性值指向文件保存地址。一般情况下,epub电子书可以不用该元素。
5、<tour>,导读。可以根据不同的读者水平或者阅读目的, 按一定次序, 选择电子书中的部分页面组成导读。一般情况下,epub电子书可以不用该元素。
content.opf实例
<?xml version="1.0"encoding="utf-8"?>
<!DOCTYPE package PUBLIC "+//ISBN 978-7-308-05831-5//DTD OEB 1.2 Package//EN""http://openebook.org/dtds/oeb-1.2/oebpkg12.dtd">
<package unique-identifier="bookid"xmlnspf="http://www.idpf.org/2007/opf"xmlns="http://www.idpf.org/2007/opf"version="2.0">
<metadata>
<dc-metadata xmlns:dc="http://purl.org/dc/elements/1.1/"xmlns:dcterms="http://purl.org/dc/terms/"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<dc:title>数字档案馆理论与技术研究</dc:title>
<dc:creator>金更达</dc:creator>
<dc:subject>数字档案馆</dc:subject>
<dc:subject>电子文件管理</dc:subject>
<dc:subject>元数据</dc:subject>
<dc:subject>数字化</dc:subject>
<dc:subject>档案化</dc:subject>
<dc:description>当……<dc:description>
<dc:publisher>机械工业出版社</dc:publisher>
<dc:contributor/>
<dc:date>2007-09</dc:date>
<dc:type>普通图书</dc:type>
<dc:format>Text/html(.html,.htm)</dc:format>
<dc:identifier id="bookid"opf:scheme="ISBN">isbn:978-7-111-04961-6</dc:identifier>
<dc:source/>
<dc:language>chi</dc:language>
<dc:relation/>
<dc:coverage/>
<dc:rights>机械工业出版社版权所有</dc:rights>
</dc-metadata>
<x-metadata/>
</metadata>
<manifest>
<item id="ncx"href="toc.ncx"media-type="application/x-dtbncx+xml"/>
<item id="style"href="style.css"media-type="text/css"/>
<item id="cover"href="cover.htm"media-type="text/html"/>
<item id="tableofc"href="toc.xhtml"media-type="application/xhtml+xml"/>
<item id="forword"href="forword.xhtml"media-type="application/xhtml+xml"/>
<item id="chap01"href="chap01.xhtml"media-type="application/xhtml+xml"/>
<item id="chap02"href="chap02.xhtml"media-type="application/xhtml+xml"/>
<item id="chap03"href="chap03.xhtml"media-type="application/xhtml+xml"/>
<item id="chap04"href="chap04.xhtml"media-type="application/xhtml+xml"/>
<item id="chap05"href="chap05.xhtml"media-type="application/xhtml+xml"/>
<item id="chap06"href="chap06.xhtml"media-type="application/xhtml+xml"/>
<item id="chap07"href="chap07.xhtml"media-type="application/xhtml+xml"/>
<item id="chap08"href="chap08.xhtml"media-type="application/xhtml+xml"/>
<item id="chap09"href="chap09.xhtml"media-type="application/xhtml+xml"/>
<item id="chap10"href="chap10.xhtml"media-type="application/xhtml+xml"/>
<item id="reference"href="reference.xhtml"media-type="application/xhtml+xml"/>
</manifest>
<spine toc="ncx">
<itemref idref="cover"/>
<itemref idref="tableofc"/>
<itemref idref="forword"/>
<itemref idref="chap01"/>
<itemref idref="chap02"/>
<itemref idref="chap03"/>
<itemref idref="chap04"/>
<itemref idref="chap05"/>
<itemref idref="chap06"/>
<itemref idref="chap07"/>
<itemref idref="chap08"/>
<itemref idref="chap09"/>
<itemref idref="chap10"/>
<itemref idref="reference"/>
</spine>
<guide/>
</package>
.OPF文件剖析的更多相关文章
- inittab文件剖析[CentOS 5.X](第二版)
inittab文件剖析[CentOS 5.X] grep -v "^#" /etc/inittab | more #过滤掉以#开头的行 inittab文件格式 id:runleve ...
- 架构师成长之路2.4-Kickstart文件剖析
点击返回架构师成长之路 架构师成长之路2.4-Kickstart文件剖析 kickstart文件是一个简单的文本文件,它包含了一个项目列表,每个项目由一个关键字来识别. 创建kickstart文件注意 ...
- Linux下的压缩文件剖析 (tar/gzip的区别)
Linux下的压缩文件剖析 对于刚刚接触Linux的人来说,一定会给Linux下一大堆各式各样的文件名给搞晕.别个不说,单单就压缩文件为例,我们知道在Windows下最常见的压缩文件就只有两种,一是, ...
- 「2.0」一个人开发一个App,小程序从0到1,文件剖析
不知你是不是见到“文件剖析”这4个大字,才点进来看一看的?如果真是的话,那我可以坦诚.真心.负责任地告诉你:你上当了,你上了贼船啦,如果你现在想跳的话,还来得及,反正茫茫大海中,鲨鱼正缺搞程序的人.说 ...
- mk文件剖析
一个Android.mk file用来向编译系统描述你的源代码.具体来说:该文件是GNU Makefile的一小部分,会被编译系统解析一次或多次.你可以在每一个Android.mk file中定义一个 ...
- 003.android资源文件剖析(Resources)
android的资源文件使用的重要性,不言而喻.让我们从潜到深逐渐来了解吧. 一:android的基本资源: 1.字符串资源 android的资源文件保存在:res\values\ 2.布局资源 an ...
- Maven setting.xml 文件剖析
全局配置: ${M2_HOME}/conf/settings.xml (配置环境变量 新建 M2_HOME 安装目录到版本名那里(D:\apache-maven-3.0.2) 编辑path 环 ...
- Android SAX、DOM、Pull解析xml文件剖析与案例讲解
XML介绍 XML(Extensible Markup Language) 即可扩展标记语言,与HTML一样,都是SGML(Standard Generalized Markup Language,标 ...
- .ncx文件剖析
ncx文件是epub电子书的又一个核心文件,用于制作电子书的目录,其文件的命名通常为toc.ncx. ncx文件是一个XML文件,该标准由DAISY Consortium发布(参见http://www ...
随机推荐
- 为什么我们选择parquet
说明:此方案已经我们已经运行1年. 1.场景描述: 我们对客户登录日志做了数据仓库,但实际业务使用中有一些个共同点, A 需要关联维度表 B 最终仅取某个产品一段时间内的数据 C 只关注其中极少的 ...
- [Vue]组件——通过$emit为组件自定义事件
1.在定义组件时调用内建的 $emit 方法并传入事件的名字,来向父级组件触发一个事件enlarge-text: Vue.component('blog-post', { props: ['post' ...
- wordcount程序出现map 100% reduce 0%问题的解决方法
运行wordcount程序一直停在map 100% reduce 0%, input文件夹的内容: 其中: f1.txt中的内容为:hello hadoop f2.txt中的内容为:hello had ...
- watch和computed的用法区别是什么?
在模板中绑定表达式是非常便利的,但是它们实际上只用于简单的操作.模板是为了描述视图的结构.在模板中放入太多的逻辑会让模板过重且难以维护.这就是为什么 Vue.js 将绑定表达式限制为一个表达式.如果需 ...
- Spring入门6事务管理2 基于Annotation方式的声明式事务管理机制
Spring入门6事务管理2 基于Annotation方式的声明式事务管理机制 201311.27 代码下载 链接: http://pan.baidu.com/s/1kYc6c 密码: 233t 前言 ...
- 【前端工具】 在 Windows 下安装 GruntJS——教程(译)
在你安装 Grunt.js 之前你需要先安装 Node.js.对于本教程而言,我已经安装好了 node.js v0.10.0. 我将要安装 Grunt.js v0.4.1.警告:如果你已经安装了 Gr ...
- ping命令知识 Ping命令工作原理详解
在网络应用中,ping网速与IP地址等都是非常常用的命令,但大家知道ping命令的工作原理吗?要知道这其中的奥秘,我们有必要来看看Ping命令的工作过程到底是怎么样的.下面介绍下ping命令的详细知识 ...
- QT帮助文档 英文
http://doc.qt.io/archives/qtquick-components-symbian-1.1/qml-button.html
- 通过ssh证书远程登录
在渗透中,经常会发现某管理员主机上保存了大量机器的公私钥用于ssh证书登录.这个时候可以通过这个证书进行远程登录. 先回顾下证书登录通常的配置方法 一.生成不带passphrase的公私钥证书实现免密 ...
- C# OPC UA服务器 OPC UA网关 三菱 西门子 欧姆龙 Modbus转OPC UA 服务器 可配置的OPC UA服务器网关 HslSharp软件文档
前言 本文将使用一个基于开源项目HslCommunication创建的OPC UA网关,方便通过配置创建一个OPC UA的网关中心.具体的操作及支持的设备信息项目参照下面: 开源项目HslCommun ...