Project Gutenberg

Open Metadata Exchange (OME) plugin

An OME plugin defines how to import and publish metadata from an Open Education Resources system.

plugin.py provides the class that enables OME to understand Project Gutenberg metadata.

This plugin defines one or more:

  • mimetypes so that Project Gutenberg json data can be stored as enclosures in InterNetNews (INN) articles.

  • newsgroups so Project Gutenberg metadata can be published to and subscribed from those INN newsgroups.

The plugin is composed of at least three code files.

  • plugin.py: Defines mimetypes, newsgroups, and a make_metadata_card() function that translates Project Gutenberg data into an OME EducationalResource.

  • gutenberg_models.py: Generated by Pydantic tools to make it fast and reliable to import Project Gutenberg metadata.

  • bulk_import.py: Utilities to convert data directly from the Project Gutenberg API into OME EducationalResources.

[!NOTE]

Please do NOT edit this line and below because when the docs are rebuilt, these lines will be overwritten by scripts/sync_plugin_docs.py.

MIMETYPES:

  1. application/vnd.gutenberg.book+json

NEWSGROUPS:

{‘ome.project_gutenberg’: ‘Metadata from Project Gutenberg free e-books https://www.gutenberg.org’}

server/plugins/project_gutenberg
├── __init__.py
├── bulk_import.py
├── gutenberg_item.json
├── gutenberg_models.py
├── gutenberg_search.json
├── plugin.py
└── README.md

1 directory, 7 files