# Edufeed: AMB-NIP ## Abstract This NIP defines how to handle the metadata profile ["Allgemeines Metadatenprofil für Bildugnsressourcen" (AMB)](https://dini-ag-kim.github.io/amb/latest/) in nostr: - How to convert AMB metadata to an AMB nostr event - How to convert an AMB nostr-event to AMB metadata - How to query for AMB nostr-events in supporting relays ## Event Kind This NIP defines `kind:30142` as an AMB Metadata Event. This means this is a replacable event, that can be adressed using `kind:pubkey:d-tag`. ## How to convert AMB metadata *to* an AMB nostr event The transformation is quite straightforward. For the attributes of the AMB we use tags. For attributes expecting values of controlled vocabularies, we use this scheme: `[, , , ]` For properties that expect arrays, each value is represented as a separate tag with the same key. This is how we convert each property of the AMB: General: - `id`: `["d", ]` (we use nostr's `d`-tag here as identifier) - `type`: `["type", , , ...]` - `name`: `["name", ]` - `description`: `["description", , ]` (language optional, not specified in AMB) - `about`: `["about", , , ,]` - `keywords`: `["keywords", , , ...]` - `inLanguage`: `["inLanguage", , , ...]` - `image`: `["image", ]` - `trailer`: `["image", , , , , , , ]` Provenience: - `creator`: `["creator", , , , , , ]` - `contributor`: `["contributor", , , , , , ]` - `dateCreated`: `["dateCreated", ]` - `datePublished`: `["datePublished", ]` - `dateModified`: `["dateModified", ]` - `publisher`: `["publisher", , , ]` - `funder`: `["funder", , , ]` Costs And Rights: - `isAccessibleForFree`: `["isAccessibleForFree", ]` - `license`: `["license", , ]` (`license_shortName` optional, not specified in AMB) - `conditionsOfAccess`: `["conditionsOfAccess", , ,, ]` Educational: - `learningResourceType`: `["learningResourceType", ,