QUBES

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 QUBES metadata.

This plugin defines one or more:

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

  • newsgroups so QUBES 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 the Open Education Resources system’s data into an OME EducationalResource.

  • qubes_models.py: generated by Pydantic tools to make it fast and reliable to import QUBES metadata.

  • load_qubes_records_to_nntp.py: Convert qubes_records.json into OME EducationalResources and load them into the default NNTP server.

  • convert_qubes_xml_to_json.py: Data utility that can probably be dropped by adding the dependency pydantic-xml.

[!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.qubes+json

NEWSGROUPS:

{‘ome.qubes’: ‘Metadata from QUBES https://qubeshub.org’}

server/plugins/qubes
├── __init__.py
├── bulk_import.py
├── convert_qubes_xml_to_json.py
├── course_source.json
├── load_qubes_records_to_nntp.py
├── plugin.py
├── qubes_article.eml
├── qubes_item.json
├── qubes_models.py
├── qubes_ome_item.json
├── qubes_records.json
├── qubes_records.xml
├── README.md
├── utils.py
└── was_qubes_models.py

1 directory, 15 files