Skip to content
This repository has been archived by the owner on Dec 1, 2020. It is now read-only.

Latest commit

 

History

History
26 lines (18 loc) · 3 KB

README.md

File metadata and controls

26 lines (18 loc) · 3 KB

online-radio-channels

This project offers schema for XML and JSON to describe channels for online radio stations. Note that the formats differ slightly. However, using these formats enables radio stations to automatically broadcast which channels and playlists in different formats an qualities they are offer. At the same time descriptions, artwork and metadata on last playing and number of listerers is being made available.

With approval from SomaFM, these schemas have been derived and fine tuned according to existing XML and JSON data that they already have in use. The schemas are loosly defined so that only the minimal number of parts are required, enabling for a relatively free usage of these schemas. Examples are https://api.somafm.com/channels.xml and https://api.somafm.com/channels.json respectively.

The schemata developed are channels.xsd and channels.json for which the XSD contains annotation and documentation in HTML and SVG can be found in the doc direcory. However these files cannot be browsed from within the GitHub website and must be downloaded first.

Showcases of projects using the content of channel.xsd files are the folling:

Tools that are practical to use in this context are http://jsoneditoronline.org and http://jsonviewer.stack.hu for JSON. At http://json-schema.org the definition of the JSON schema itself can be found. For XML the tool XML Copy Editor http://xml-copy-editor.sourceforge.net might come in handy.

When editing a channels.xml file manually, e.g. for debugging purposes, see http://unixtimestamp.com to get a current timestamp for the updated element in the XML.

This project also provides example XML and JSON files and scripts that validate them against their schema and report on their content. See the directory examples for more. Note that at the moment there are no examples with disassembled last playing information, only with assembled last playing information.

Note that the files .project and .pydevproject are toe be used with liclips.