hi,
I've been trying to expand the rss protocol to allow sharing music metadata. The missing features where multiples artists and nested objects support (albums), more details here https://dev.funkwhale.audio/funkwhale/funkwhale/-/issues/2428.
My conclusion was to use musicbrainz mmd : https://github.com/metabrainz/mmd-schema/blob/master/schema/musicbrainz_mmd-2.0.rng which allows to build very complex nested metadata. But feedparser do not know about it.
Example :
<mmd:release-list>
<mmd:release>
<mmd:title>loilol</mmd:title>
<mmd:tag-list>
<mmd:tag>
<mmd:name>Espagne</mmd:name>
</mmd:tag>
</mmd:tag-list>
</mmd:release>
</mmd:release-list>
I tried to implement a mmd namespace but the sax event approach makes it very hard to build the custom functions for the mmd namespace (the difficulties lies in accessing the parent object, get context inside a single event).
So maybe we could add a lxml parser, that is triggered if we found the mmd namespace in the feed ?
the flow would be : StrictFeedParser or LooseFeedParser return a parsed feed -> Lxml parser concatenate complex nested object inside the feed entries.
hi,
I've been trying to expand the rss protocol to allow sharing music metadata. The missing features where multiples artists and nested objects support (albums), more details here https://dev.funkwhale.audio/funkwhale/funkwhale/-/issues/2428.
My conclusion was to use musicbrainz mmd : https://github.com/metabrainz/mmd-schema/blob/master/schema/musicbrainz_mmd-2.0.rng which allows to build very complex nested metadata. But feedparser do not know about it.
Example :
I tried to implement a mmd namespace but the sax event approach makes it very hard to build the custom functions for the mmd namespace (the difficulties lies in accessing the parent object, get context inside a single event).
So maybe we could add a lxml parser, that is triggered if we found the mmd namespace in the feed ?
the flow would be : StrictFeedParser or LooseFeedParser return a parsed feed -> Lxml parser concatenate complex nested object inside the feed entries.