# ERIC ## 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 ERIC metadata. This plugin defines one or more: * `mimetypes` so that ERIC json data can be stored as enclosures in InterNetNews (INN) articles. * `newsgroups` so ERIC 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 ERIC data into an OME EducationalResource. * `eric_models.py`: Generated by Pydantic tools to make it fast and reliable to import ERIC metadata. * `bulk_import.py`: Utilities to convert data directly from the ERIC API into OME EducationalResources. * `fetch_eric_open_records.py`: Downloads ERIC open records from the ERIC API. * `load_eric_open_records_to_nntp.py`: Loads ERIC records into the default NNTP server. > [!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.eric.eric+json **NEWSGROUPS:** {'ome.eric': "Metadata from US DoE's Education Resources Information Center (ERIC) https://eric.ed.gov"} ```text server/plugins/eric ├── __init__.py ├── bulk_import.py ├── convert_eric_csv_to_json.py ├── eric_article.eml ├── eric_bulk.json ├── eric_item.json ├── eric_models.py ├── eric_ome_item.json ├── eric_ome_metadata.json ├── ERIC_open_records.csv ├── ERIC_open_records.json ├── eric.json ├── fetch_eric_open_records.py ├── fetched_ERIC_open_records.json ├── load_eric_open_records_to_nntp.py ├── old_eric_models.py ├── plugin.py └── README.md 1 directory, 18 files ```