为什么需要?OPDS电子目录如何工作?

在GT上,我们已经讨论了电子书格式DjVuFB2和他的“弟弟” FB3的历史和工作原理。 今天,我们决定讨论有助于这些书传播的标准。 我们将告诉您为什么需要OPDS电子目录以及如何“安排”它们。


/ Flickr / Gael Varoquaux / CC

什么是OPDS?


OPDS(开放出版物分发系统)是电子出版物的联合格式。 其目的是为应用程序和阅读设备的用户提供从电子图书馆查看和下载书籍的能力。

该项目于2009年4月开始开发。 参加该活动的有多家组织和公司,包括Internet Archive ,Feedbooks,O'Reilly和Lexcycle, 后者从事阅读电子文学软件开发。 该标准基于HTTP( RFC2616 )和Atom( RFC4287技术

Atom是基于 XML的另一种联合格式。 它允许您描述Web资源集:新闻提要,博客文章公告等。 从本质上讲,它类似于RSS并且解决了相同的问题,但是它没有很多缺点,特别是它具有更好的标准化(不同版本的RSS之间的关系非常混乱-它们可能彼此不兼容 )。 今天,Atom在许多项目(例如Feedburner)中都为Google提供支持。

什么是OPDS目录“内部”


OPDS目录借鉴了Atom格式的提要和条目概念。 本质上,提要是用于记录的容器, 分为两类:导航(导航提要)和引导(获取提要)。 前者定义了内容搜索的层次结构,后者包含带有可用出版物信息的记录列表。 每个条目都包含元数据:电子书格式,书名,收据方法等。

列表中的条目是将用户定向到另一个提要或使他能够下载出版物的链接。 在OPDS所基于的Atom中,链接是带有rel (关系)属性的标记。 这种关系是指获取方法和提供文献的规则。 支持以下选项:

  • 无限制开放访问;
  • 这本书是花钱买的(价格反映在链接中);
  • 订阅期刊;
  • 出版物的片段(例如,本书的第一章)以供审核。

在OPDS项目的官方网站上给出了以下这样的链接设计示例:

<link rel="http://opds-spec.org/acquisition" type="video/mp4v-es" href="/content/free/4561.mp4"/> 

如果一个出版物有几种格式可用,则它们由一条记录中的一组链接表示:

 <link rel="http://opds-spec.org/acquisition/borrow" href="/content/borrow/4561.mobi" type="application/x-mobipocket-ebook"/> <link rel="http://opds-spec.org/acquisition/borrow" href="/content/borrow/4561.epub" type="application/epub+zip"/> 

有时,链接不会直接引至书籍。 如果出版物被打包在多个文件位于的zip存档中(例如,同一本书的副本具有不同格式),则会发生这种情况。 为了描述这种组件的“内部”,使用了opds:indirectAcquisition元素,其中type是media元素格式:

 <link type="application/zip" rel="http://opds-spec.org/acquisition/open-access" href="/item/1111/buy/"> <opds:indirectAcquisition type="application/epub+zip" /> <opds:indirectAcquisition type="application/pdf" /> <opds:indirectAcquisition type="application/x-mobipocket-ebook" /> </link> 

这是为出版物付费的情况设计链接的示例。 currencycode属性定义货币:

 <link rel="http://opds-spec.org/acquisition/buy" href="/product/song1.mp3" type="audio/mpeg"> <opds:price currencycode="USD">1.99</opds:price> </link> 

在哪里可以找到OPDS目录以及如何使用它们?


出版商和图书馆是最早使用OPDS的国家之一。 后来电子阅读器应用程序的开发人员和电子书的销售商加入了社区。 通常,他们是OPDS目录的创建者。 可以 OPDS 规范网站上找到最受欢迎的目录列表。

例如,有些Feedbook每月分发超过300万本电子书。 Internet档案馆藏近200万种出版物,O'Reilly Media 提供了数千种技术文献。 您还可以突出显示The Pragmatic ProgrammersRevues.org的目录。

通常,网络可以找到许多使用不同语言的OPDS目录。 同时,用户有机会创建自己的目录,以便组织从任何设备对其图书库的访问。 甚至还有一些特殊的程序可以帮助您。 例如,FBReader 提供了这样的实用程序-它基于代码books.fbreader.org

其他阅读器也支持OPDS,特别是Cool Reader,Bluefire Reader,QuickReader,AlReader和OReader。 后者是AlReader专门针对ONYX-BOOX阅读器的改编,并由原始应用程序的创建者进行了修改。 阅读器收到一个单一的界面菜单和系统使用的内置元数据扫描程序。 回到OReader中,添加了对SNOW Field技术的支持,该技术在AlReader中不起作用。 SNOW Field使用电子墨水改善了屏幕上页面 “重绘”,减少了翻转时的伪影数量(并消除了显示器频繁出现的“填充”黑色)。

请注意,某些应用程序虽然与OPDS一起使用,但不支持多媒体内容。 程序在支持的电子文献格式数量上有所不同。

通常,要使用OPDS,需要连接所需的网络库。 您可以在我们网站上的材料之一中找到如何在ONYX阅读器上执行此操作的方法。 之后,您可以开始基于提要和帖子列表查看出版物。

注意,用户不仅可以使用提要,还可以使用搜索功能找到必要的书。 OPDS搜索基于开放搜索格式。 在这种情况下,将创建一个单独的XML文件,其中包含搜索参数的描述-OpenSearch描述。 这是从GitHub上的Open Search存储库填充此类文件的示例

 <?xml version="1.0" encoding="UTF-8"?> <OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"> <ShortName>Web Search</ShortName> <Description>Use Example.com to search the Web.</Description> <Tags>example web</Tags> <Contact>admin@example.com</Contact> <Url type="application/rss+xml" template="http://example.com/?q={searchTerms}&pw={startPage?}&format=rss"/> </OpenSearchDescription> 

它通常称为OpenSearch.xml,位于目录的根目录。


/ Flickr / 戴夫·科利 / cc

生态系统发展


迄今为止,已经发布了几种OPDS规范:这是OPDS Catalog 0.9(2010),OPDS Catalog 1.0(2010)和OPDS Catalog 1.1(2011)的最新版本。 但是,存在该标准的新版本1.2的草稿版本。 应该其中出现一个功能,使您可以租书,即在一定时间内将书分发出去。 此外,还将添加媒体内容类型的新属性,指示书的评级和下载量的元素以及用户的OPDS配置文件。

同时,以电子文学的卖方,OPDS工作组和其他行业参与者为代表的社区正在研究ODL(开放分发图书馆)规范和OPDS认证机制,以实现图书馆和商业服务销售书籍之间的“横向”集成。 。

电子文献发行商已经使用 ODL格式将许可证信息发送到图书馆( 例如 ,在Feedbooks中)。 至于新版本的OPDS 1.2,到目前为止,其规范仅以草稿格式存在 ,并且标准的完全发布日期仍然未知。



附言:我们为您提供ONYX BOOX读者的三则评论:

Source: https://habr.com/ru/post/zh-CN412355/


All Articles