Tumbled Logic

Jun 29 2009

Thoughts on broadcast metadata XML

I’ve been looking at various schemata for delivering metadata about broadcasters, channels and productions in some form that’s both easy for software to consume and relatively easy to translate into a human-readable form.

There are two major sets of specifications: TV-Anytime, and the BBC’s Programmes Ontology.

TV-Anytime is—or rather, was—relatively comprehensive, but hasn’t been updated in four years, which is approximately forever in real terms. It also has the further downsides of being entrenched in a standards process which is comparatively opaque, smacks of “design by committee”, and doesn’t necessarily have a focus which meshes well with my own.

The BBC’s offering looks to be the successor-in-interest to TV-Anytime. Parts of it have the advantage of being in use right now on the BBC’s website, but it has its own downsides: it’s a work in progress, with much of the specification about entities at the top of the chain (i.e., broadcasters themselves, channels, and broadcast outlets) being fairly unspecified; it’s designed to be an application of RDF, and is true to form in this respect: with high-level tools (such as a SPARQL query engine), it’s easy to work with—but if you lack a high-level entity-modelling infrastructure and want a reliable transport for this kind of information, you’re not going to be served well by it.

What I’m looking for is something lightweight but flexible, and something that doesn’t require much knowledge on the part of a developer beyond how to use an XML parsing engine. I don’t have an issue with pulling in parts of other specifications where appropriate (how many title elements which do precisely the same thing do we really need, after all?), but I don’t need the sheer flexibility (and associated potential complexity) of a modelling framework in this context.

What I’m looking for is a suitable structure for an XML document which will be delivered to hardware devices and software applications, possibly upon request, possibly as part of a broadcast stream, and will describe a broadcaster’s services: whether it’s on-demand, analogue terrestrial, DVB-S, whatever. The schema should support conveying details of everything from logos, regional variations to transmitter frequencies and polarities, power output levels and coordinates. This shouldn’t be difficult—conceptually it certainly isn’t, but it’s easy to get lost in vocabularies and schemata.

Iit should be possible to have a single file which tells you everything: for example, it would tell you that the Black Hill transmitter carries BBC One Scotland as part of DTT Multiplex 1 on Channel 41 (630-638 MHz +166.67kHz), that the transmitter is broadcasting DTT at 20 kW ERP, is situated at 55°51′41.94″N, 003°52′24.00″W, has an aerial height of 556m, and the base DVB URL is dvb://233a.1004.1044, and the Freeview EPG channel number is 1.

I’m looking for feedback from interested parties on this—I’m looking to publish a draft specification within the course of the next couple of weeks, as well as a reference implementation (likely written in C, atop libxml2) for fetching and parsing the result.


blog comments powered by Disqus
Page 1 of 1