Por que precisamos e como os catálogos eletrônicos OPDS funcionam?

Na GT, já conversamos sobre a história e os princípios do trabalho dos formatos de livros eletrônicos DjVu , FB2 e seu "irmão mais novo" FB3 . Hoje decidimos falar sobre o padrão que ajuda a espalhar esses livros. Vamos explicar por que os catálogos eletrônicos OPDS são necessários e como eles são "organizados".


/ Flickr / gael varoquaux / cc

O que é OPDS?


OPDS (Open Publication Distribution System) é um formato de organização para publicações eletrônicas. Seu objetivo é fornecer aos usuários de aplicativos e dispositivos de leitura a capacidade de visualizar e baixar livros de bibliotecas eletrônicas.

O projeto começou a ser desenvolvido em abril de 2009. Estiveram presentes várias organizações e empresas, incluindo Internet Archive , Feedbooks, O'Reilly e Lexcycle, que vem desenvolvendo software para leitura de literatura eletrônica. O padrão é baseado nas tecnologias HTTP ( RFC2616 ) e Atom ( RFC4287 ).

Atom é um formato de organização diferente baseado em XML. Ele permite que você descreva conjuntos de recursos da Web: feeds de notícias, anúncios de postagem em blogs e assim por diante. Na sua essência, é semelhante ao RSS e resolve os mesmos problemas; no entanto, não possui várias deficiências, em particular, é mais padronizada (as relações entre diferentes versões do RSS são bastante confusas - podem ser incompatíveis entre si). Hoje, o Atom suporta o Google em muitos de seus projetos, como o Feedburner .

O que é "dentro" do diretório OPDS


Os diretórios do OPDS pegaram emprestado o conceito de feeds e entradas do formato Atom. Em essência, os feeds são contêineres para gravações e são divididos em duas categorias: navegação (feeds de navegação) e inicialização (feeds de aquisição). O primeiro define uma hierarquia para a pesquisa de conteúdo e o segundo contém listas de registros com informações sobre as publicações disponíveis. Cada entrada contém metadados: formato de livro eletrônico, título, método de recebimento, etc.

As entradas da lista são links que direcionam o usuário para outro feed ou fornecem a capacidade de baixar a publicação. No Atom, no qual o OPDS se baseia, um link é uma tag com o atributo rel (relacionamento). Essa relação refere-se ao método de aquisição e às regras para o fornecimento de literatura. As seguintes opções são suportadas:

  • acesso aberto sem restrições;
  • o livro é comprado por dinheiro (o preço é refletido no link);
  • assinatura de um periódico;
  • fragmento da publicação (por exemplo, o primeiro capítulo do livro) para revisão.

O exemplo a seguir do design de um link é fornecido no site oficial do projeto OPDS:

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

Se uma publicação estiver disponível em vários formatos, eles serão representados por um grupo de links em um registro:

 <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"/> 

Às vezes, um link não leva diretamente a um livro. Isso acontece se a publicação estiver compactada em um arquivo zip onde estão localizados vários arquivos (por exemplo, as mesmas cópias do livro em diferentes formatos). Para descrever o "interior" de um componente, o elemento opds: indirectAcquisition é usado, em que o tipo é o formato do elemento de mídia :

 <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> 

E aqui está um exemplo de design de link para uma situação em que a publicação é paga. O atributo currencycode define a moeda:

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

Onde encontrar os diretórios OPDS e como trabalhar com eles?


Editores e bibliotecas foram os primeiros a usar o OPDS. Mais tarde , desenvolvedores de aplicativos e-reader e vendedores de e-books se juntaram à comunidade. Na maioria das vezes, eles são os criadores dos catálogos OPDS. Uma lista dos diretórios mais populares pode ser encontrada no site de especificações do OPDS.

Por exemplo, existem Feedbooks que distribuem mais de 3 milhões de e-books todos os meses. A coleção Internet Archive contém quase 2 milhões de publicações e a O'Reilly Media oferece milhares de cópias da literatura técnica. Você também pode destacar os catálogos de The Pragmatic Programmers e Revues.org .

Em geral, a rede pode encontrar muitos diretórios OPDS em diferentes idiomas. Ao mesmo tempo, os usuários têm a oportunidade de criar seu próprio catálogo para organizar o acesso à sua biblioteca de livros a partir de qualquer dispositivo. Existem até programas especiais que podem ajudar com isso. Por exemplo, esse utilitário é oferecido pelo FBReader - ele é baseado no código books.fbreader.org .

Outros leitores também suportam OPDS, em particular, Cool Reader, Bluefire Reader, QuickReader, AlReader e OReader. Esta última é uma adaptação do AlReader especificamente para os leitores ONYX-BOOX, que foi modificada pelo criador do aplicativo original. O leitor recebeu um menu de interface única e um scanner de metadados interno usado pelo sistema. De volta ao OReader, foi adicionado suporte à tecnologia SNOW Field, que não funciona no AlReader. O campo NEVE melhora o "redesenho" da página na tela com tinta eletrônica, reduzindo o número de artefatos ao virar (e elimina os "preenchimentos" freqüentes da tela com preto).

Observe que alguns aplicativos, embora funcionem com o OPDS, não oferecem suporte a conteúdo multimídia. Os programas diferem no número de formatos suportados de literatura eletrônica.

Em geral, para trabalhar com o OPDS, você precisa conectar as bibliotecas de rede de seu interesse. Você pode descobrir como fazer isso nos leitores ONYX em um dos materiais em nosso site. Depois disso, você pode começar a visualizar publicações com base em feeds e listas de postagens.

Observe que o usuário pode encontrar os livros necessários não apenas usando feeds, mas também usando a função de pesquisa. A pesquisa OPDS é baseada no formato Open Search . Nesse caso, um arquivo XML separado é criado com uma descrição dos parâmetros de pesquisa - Descrição do OpenSearch. Aqui está um exemplo de preenchimento desse arquivo no repositório Open Search no GitHub:

 <?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> 

Geralmente, é chamado OpenSearch.xml e fica na raiz do diretório.


/ Flickr / dave collie / cc

Desenvolvimento de ecossistemas


Até o momento, várias especificações do OPDS foram liberadas: são versões do Catálogo OPDS 0.9 (2010), Catálogo 1.0 OPDS (2010) e Catálogo 1.1 OPDS (2011), que é a mais recente versão lançada até o momento. No entanto, existe uma versão preliminar da nova versão do padrão - 1.2. Um funcional deve aparecer nele, o que lhe permitirá alugar livros, ou seja, distribuí-los por um determinado período de tempo. Além disso, novos atributos para tipos de conteúdo de mídia, elementos para indicar a classificação e o número de downloads do livro, além de perfis OPDS para usuários, serão adicionados.

Ao mesmo tempo, a comunidade, representada por vendedores de literatura eletrônica, o grupo de trabalho do OPDS e outros participantes do setor, está trabalhando na especificação do ODL (Open Distribution Libraries) e nos mecanismos de autenticação do OPDS para permitir a integração "horizontal" de bibliotecas e serviços comerciais que vendem livros entre si. .

O formato ODL já é usado pelos distribuidores de literatura eletrônica para enviar informações de licença às bibliotecas ( por exemplo , nos Feedbooks). Quanto à nova versão do OPDS 1.2, até o momento sua especificação existe apenas no formato de rascunho, e a data de lançamento completo do padrão permanece desconhecida.



PS: Oferecemos três opiniões dos leitores do ONYX BOOX:

Source: https://habr.com/ru/post/pt412355/


All Articles