Windows Media Center Guide Listings Format

 

Microsoft Corporation

July 2009

 

Applies to: Windows® Media Center is included in Windows® 7 Home Premium, Windows® 7 Professional, Windows® 7 Ultimate, and Windows® 7 Enterprise.

 

Summary: This document describes how to import program data into the Electronic Program Guide data store for Windows Media Center on a Windows 7 computer. The main audience for this document is developers who want to build applications to import external Guide data into Windows Media Center and are familiar with Guide and MXF file format.

Contents

Introduction

Program Data Disclaimer

LoadMXF

Format of the Guide Data File

   MXF File Structure

   MXF Elements and Attributes

   Sample MXF File

Reindexing Guide Data

Recovering a Corrupted Guide Data Store

For More Information

Introduction

This document describes how to use LoadMXF.exe, a tool released as part of Windows Media Center, to load program data in MXF format into an existing Electronic Program Guide data store for Windows Media Center. This document describes how to use this tool with the MXF file format to author Guide data. A detailed example is also provided.

Program Data Disclaimer

Microsoft makes no representations regarding and will not be responsible for any liability, failure, or inaccuracies in this document that relate to or result from:

  • Importation of external program data with a third-party application.
  • Utilization of any external program data.
  • Upgrading imported program data from Windows 7 to future Windows releases.

LoadMXF

The LoadMXF.exe tool loads data from an MXF file into a Windows Media Center Guide data store. LoadMXF.exe is located in the in %windir%\ehome folder of a Windows Media Center PC.

Syntax

LoadMXF [-s storeFilename] -i inputFilename

Parameters

-s storeFilename

The filename of the data store. If this is not specified, the default data store is used.

-i inputFilename

The name of the MXF file to load.

Example

The following command loads the data from the sample.mxf file into the default Guide data store:

LoadMXF –i sample.mxf

Format of the Guide Data File

The listings file is in XML format.

The following table provides an overview of the main element types in the Guide data file.

Element Description Example
Program A movie or episode. An episode of Lost, titled "The others strike".
SeriesInfo A series of a particular program. Lost
Season A season of a particular program. Lost Season 1
Service A content provider. KOMO
Affiliate Identifies who the service is affiliated to, if anyone. ABC
ScheduleEntry Defines when a program will be broadcast on a service. Lost "The others strike" will air on KOMO at 8pm to 9pm on 2008/04/01.
Channel The number used to tune to a particular service. Channel 4 tunes to KOMO.
Lineup Defines a collection of channels.  
Person A name of a person associated with the program. Joe Blogs
ActorRole

WriterRole

GuestActorRole

HostRole

ProducerRole

DirectorRole

Defines the person's role with the program (actor, writer, guest star, host, producer, or director). Joe Blogs is an actor in Lost "The others strike".
Keyword A named attribute that a program can be tagged with. Keywords are displayed in the details for a program and used in the Search By Category functionality. Drama
KeywordGroup A set, or group, of keywords. The keyword group has a primary keyword name that identifies the group and is used to define the hierarchy in the Search By Category functionality. A KeywordGroup might have a Keyword name of Movies, and group the following keywords: Comedy, Drama, Horror, and Sci-Fi.
Provider Provides information and copyright about who provided the listing data.  
GuideImage Specifies an image to be displayed in the Guide. A channel logo or program image.

MXF File Structure

The following XML shows the general structure of the MXF file:

<?xml version="1.0" encoding="UTF-8"?>
<MXF>
  <Assembly name="mcepg"/>
  <Assembly name="mcstore" />
  <Providers>
    <Provider id="1" name="FooListings" displayName="Foo Listings" copyright="© 2008 Foo Corporation. All Rights Reserved." />
  </Providers>
  <With provider="1">
    <Keywords />
    <KeywordGroups />
    <GuideImages />
    <People />
    <SeriesInfos />
    <Seasons />
    <Programs />
    <Affiliates />
    <Services />
    <ScheduleEntries />
    <Lineups />
  </With>
</MXF>

When the MXF file is loaded into Windows Media Center, the file is loaded into an internal database. Generally speaking, each XML element is transformed into a record row in a table in the database. The element name (for example, <Program>) describes the table in which to load the record.

Note the following attributes:

  • id identifies the element, but only within the document. This identifier (ID) is unique within the XML document and is referenced by other elements when defining references to this element in the document. The id value is not loaded into the database.
  • uid is a universal ID that is persisted in the database. The uid allows the document to be loaded many times and allows the document to update an existing record in the database (rather than creating a new one each time). If the element has specified a uid, the loader first attempts to find the record in the database with this uid. If found, the record is updated with the values from the XML document. If not found, a new record row is created in the database, tagged with the uid and given the element's values.

Note   Everything in the file is case sensitive. When lists of IDs are specified, spaces are not allowed—only the comma (,) delimiter is allowed. Boolean values can either be "true" or "false", or "1" or "0".

MXF Elements and Attributes

This section describes each element in detail, including the following information about each attribute:

  • Attribute: The name of the attribute
  • Type: The type of value expected for the attribute.
  • Default value: The value to use if the attribute is not specified. If the database record is updated, the corresponding value is not changed.
  • Description: A description of the attribute.
  • Notes: Additional comments about the attribute.

ActorRole

An ActorRole element is defined within a Program element and defines a relationship between a Person element and the surrounding Program element (whether the person is an actor).

The ActorRole element and has the following attributes:

Attribute Type Default value Description Notes
person string "" A reference to the id value of the Person element.  
rank integer 0 Used to sort the names that are displayed. Lower numbers are displayed first.

Affiliate

The Affiliate element defines a network (such as BBC, ABC, or MSNBC).

The Affiliate element has the following attributes:

Attribute Type Default value Description Notes
name string "" The display name of the network.  
uid string "" An ID that uniquely identifies the affiliate. This value should take the form "!Affiliate!name", where name is the value of the name attribute.
logoImage string "" Specifies a network logo to display. This value contains a GuideImage id attribute.

Assembly

The Assembly element and its nested elements are standard header elements of the document and do not change.

Channel

A Channel element defines how to access a service (the channel number the user enters to tune to the service).

The Channel element has the following attributes:

Name Type Default Description Notes
uid string   A unique ID that is consistent between loads. This value should take the form "!Channel!uniqueLineupName!number_subNumber", where uniqueLineupName is the Lineup element's uid, and number and subNumber are the values from the number and subNumber attribute.
lineup string "" A reference to the Lineup element. This value should always be "l1".
service string "" The service to reference. This value should be the Service id attribute.
matchName string "" Used to automatically map this channel of listings onto the scanned channel. If not specified, the value of the Service element's callSign attribute is used as the default value.

If matchName is specified, it should take the following format according to the signal type:

  • PAL/NTSC: The call sign
  • DVB-T: The call sign, or a string of format "DVBT:onid:tsid:sid"
  • DVB-S: A string of format "DVBS:sat:freq:onid:tsid:sid"

Where:

  • onid is the originating network ID.
  • tsid is the transport stream ID.
  • sid is the service ID.
  • sat is the satellite position.
  • freq is the frequency, in MHz.

Note   All of these values are expressed as decimal integer numbers.

number integer -1 The number used to access the service. Do not specify this value if you want Windows Media Center to assign the channel number.
subNumber integer 0 The subnumber used to access the service.  

DirectorRole

An DirectorRole element is defined within a Program element and defines a relationship between a Person element and the surrounding Program element (whether the person is a director).

The DirectorRole element and has the following attributes:

Attribute Type Default value Description Notes
person string "" A reference to the id value of the Person element.  
rank integer 0 Used to sort the names that are displayed. Lower numbers are displayed first.

GuestActorRole

An GuestActorRole element is defined within a Program element and defines a relationship between a Person element and the surrounding Program element (whether the person is a guest actor).

The GuestActorRole element and has the following attributes:

Attribute Type Default value Description Notes
person string "" A reference to the id value of the Person element.  
rank integer 0 Used to sort the names that are displayed. Lower numbers are displayed first.

GuideImage

The GuideImage element defines an image to be displayed and has the following attributes:

Attribute Type Default value Description Notes
id string   An ID that is unique to the document and defines this element. Use IDs such as i1, i2, i3, and so forth.
GuideImage elements are referenced by the Series, SeriesInfo, Program, Affiliate, and Channel elements.
imageUrl string "" The URL of the image. This value can be in the form of file://URL.

HostRole

An HostRole element is defined within a Program element and defines a relationship between a Person element and the surrounding Program element (whether the person is a host).

The HostRole element and has the following attributes:

Attribute Type Default value Description Notes
person string "" A reference to the id value of the Person element.  
rank integer 0 Used to sort the names that are displayed. Lower numbers are displayed first.

Keyword

A Keyword is a named attribute that a Program element can be tagged with. These keywords are displayed in the details for a program and used in the Search By Category functionality.

The Keyword element has the following attributes:

Attribute Type Default value Description Notes
id string   An ID that is unique to the document and defines this element. The top level keywords use IDs such as k1, k2, k3, and so forth. The second-level keywords have IDs in the corresponding 100s, such as k100 and k101.
Keywords are referenced by Program and KeywordGroup elements.
word string "" The keyword name that is displayed. The maximum length is 64 characters.

KeywordGroup

A KeywordGroup element defines a set of keywords. It has a primary Keyword that identifies the name of the group. This is used to define the hierarchy in the Search By Category functionality.

The KeywordGroup has the following attributes:

Attribute Type Default value Description Notes
groupName string "" The value of a Keyword id attribute, and defines the name of the KeywordGroup. Each KeywordGroup name is displayed as the top-level words in the Search By Category page.
uid string "" A unique ID that will remain consistent between multiple versions of this document. This uid should start with "!KeywordGroup!".
keywords string "" A comma-delimited ordered list of keyword IDs. This defines the keywords in this group. Used in the Search By Category page to display the list of keywords in the KeywordGroup element.
The first keyword in this list should always be the "All" keyword. Programs should not be tagged with this keyword because it is a special placeholder to provide the localized value of "All".

Lineup

A Lineup element defines a collection of Channel elements and has the following attributes:

Attribute Type Default value Description Notes
id string   An ID that is unique to the document and defines this element. Use the value l1.
uid string "" An ID that uniquely identifies the lineup. The uid value should be in the form "!Lineup!uniqueLineupName", where uniqueLineupName is a unique ID for this lineup across all Lineup elements.
name string "" The name of the lineup.  
primaryProvider string "" The primary provider. This value should always be set to "!MCLineup!MainLineup".

MXF

The MXF element is the main document element of the XML file.

Person

The Person element defines the name of a person and has the following attributes:

Attribute Type Default value Description Notes
id string   An ID that is unique to the document and defines this element. Use IDs such as p1, p2, and p3.
Person elements are referenced by the ActorRole, GuestActorRole, HostRole, WriterRole, ProducerRole, and DirectorRole elements.
name string "" The name of the person. The maximum length is 160 characters.
uid string "" A unique ID that will remain consistent between multiple versions of this document. This uid should take the form "!Person!name", where name is the value of the name attribute.

ProducerRole

An ProducerRole element is defined within a Program element and defines a relationship between a Person element and the surrounding Program element (whether the person is a producer).

The ProducerRole element and has the following attributes:

Attribute Type Default value Description Notes
person string "" A reference to the id value of the Person element.  
rank integer 0 Used to sort the names that are displayed. Lower numbers are displayed first.

Program

A Program element defines a unique episode or movie. For instance, Program can refer to a particular episode of a TV series.

The Program element is one of the main elements in the listings file and has the following attributes:

Attribute Type Default value Description Notes
id string   An ID that is unique to the document and defines this element. This value should be an integer without a letter prefix.

Program elements are referenced by ScheduleEntry elements.

uid string "" A unique ID that will remain consistent between multiple versions of this document. This uid should start with "!Program!".
title string "" The title of the program (for example, Lost). The maximum length is 512 characters.
episodeTitle string "" The episode title of the program (for example, The others attack). The maximum length is 512 characters.
description string "" The description of this program. The maximum length is 2048 characters.
shortDescription string "" A shorter form of the description attribute, if available. The maximum length is 512 characters. If a short description is not available, do not specify a value.
language string "" The language of the program.  
year integer 0 The year the program was created. If unknown, this value is 0.
seasonNumber integer 0 The season number of the program (for example, 1). If unknown, this value is 0.
episodeNumber integer 0 The episode number of the program in the season. If unknown, this value is 0.
originalAirdate dateTime "" The original air date (in local time) of the program. Use this value to determine whether this program is a repeat.  
keywords string "" A comma-delimited list of keyword IDs. This value specifies the Keyword attributes that this program has.  
season string "" The ID of the season that this program belongs to, if any. If this value is not known, do not specify a value.
series string "" The ID of the series that this program belongs to, if any. If this value is not known, do not specify a value.
halfStars integer 0 The star rating of the program. Each star equals two points. For example, a value of "3" is equal to 1.5 stars.
mpaaRating integer 0 The MPAA movie rating. Possible values are:

0 = Unknown

1 = G

2 = PG

3 = PG13

4 = R

5 = NC17

6 = X

7 = NR

8 = AO

isMovie bool false Indicates whether the program is a movie. This value determines whether the program appears in the Movies category of the Guide grid and in other movie-related locations.
isMiniseries bool false Indicates whether the program is a miniseries.  
isLimitedSeries bool false Indicates whether the program is a limited series.  
isPaidProgramming bool false Indicates whether the program is paid programming.  
isSerial bool false Indicates whether the program is a serial.  
isSeries bool false Indicates whether the program is part of a series.  
isShortFilm bool false Indicates whether the program is a short film.  
isSpecial bool false Indicates whether the program is a special. This value is used in the Guide's grid view categories.
isSports bool false Indicates whether the program is a sports program. This value is used in the Guide's grid view categories.
isNews bool false Indicates whether the program is a news show. This value is used in the Guide's grid view categories.
isKids bool false Indicates whether the program is for children. This value is used in the Guide's grid view categories.
isReality bool false Indicates whether the program is a reality show.  
hasAdult bool false This value indicates the reason for the MPAA rating.  
hasBriefNudity bool false This value indicates the reason for the MPAA rating.  
hasGraphicLanguage bool false This value indicates the reason for the MPAA rating.  
hasGraphicViolence bool false This value indicates the reason for the MPAA rating.  
hasLanguage bool false This value indicates the reason for the MPAA rating.  
hasMildViolence bool false This value indicates the reason for the MPAA rating.  
hasNudity bool false This value indicates the reason for the MPAA rating.  
hasRape bool false This value indicates the reason for the MPAA rating.  
hasStrongSexualContent bool false This value indicates the reason for the MPAA rating.  
hasViolence bool false This value indicates the reason for the MPAA rating.  
guideImage string "" This value contains an image to display for the program. Contains the value of a GuideImage id attribute.
When a program is selected in the UI, the Guide searches for an image to display. The search order is first the program, its season, then its series.

Provider

The Provider element provides information and copyright about who provided the listing data.

The Provider element has the following attributes:

Attribute Type Default value Description Notes
id string   An ID that is unique to the document and defines this element.  
name string "" The name of the supplier of the listings. The maximum length is 255 characters.
displayName string "" More information about the supplier of the listings. The maximum length is 255 characters.
copyright string "" The copyright notice from the supplier of the listings. The maximum length is 1024 characters.

ScheduleEntry

A ScheduleEntry element defines when a program will be broadcast on a service. ScheduleEntry elements are grouped by service and specified in increasing chronological order. The first ScheduleEntry element is specified with a start time and a duration. Subsequent ScheduleEntry elements in the group have only the duration attribute. If you need to specify a gap in the schedule, a new group for that Service element is defined.

Note   ScheduleEntry elements are never tagged with a uid attribute.

A ScheduleEntry has the following attributes:

Attribute Type Default value Description Notes
program string "" An ID of a Program element.  
startTime dateTime   Specifies the start time of the broadcast. The dateTime type is in UTC. This attribute is only specified for the first ScheduleEntry element in a group.
duration integer 0 The duration of the broadcast, in seconds.  
isCC bool false Indicates whether this broadcast is closed captioned.  
audioFormat integer 0 Indicates the audio format of the broadcast. Possible values are:

0 = Not specified

1 = Mono

2 = Stereo

3 = Dolby

4 = Dolby Digital

5 = THX

isLive bool false Indicates whether this is a live broadcast.  
isLiveSports bool false Indicates whether this is live sports event.  
isTape bool false Indicates whether this program has been taped and is being replayed (for example, a sports event).  
isDelay bool false Indicates whether this program is being broadcast delayed (for example, an award show such as the Academy Awards).  
isSubtitled bool false Indicates whether this program is subtitled.  
isPremiere bool false Indicates whether this program is a premiere.  
isFinale bool false Indicates whether this program is a finale.  
isInProgress bool false Indicates whether this program was joined in progress.  
isSap bool false Indicates whether this program has a secondary audio program broadcast at the same time.  
isBlackout bool false Indicates whether this program has been blacked out.  
isEnhanced bool false Indicates whether this program has been broadcast with an enhanced picture.  
is3D bool false Indicates whether this program is broadcast in 3D.  
isLetterbox bool false Indicates whether this program is broadcast in letterbox format.  
isHdtv bool false Indicates whether this program is broadcast in high definition (HD). Determines whether the HD icon is displayed.
isHdtvSimulCast bool false Indicates whether this program is broadcast simultaneously in HD.  
isDvs bool false Indicates whether this program is broadcast with Descriptive Video Service (DVS).  
part integer 0 Specifies the part number (for instance, if this is part 1 of 3, use "1").  
parts integer 0 Specifies the total number of parts (for instance, if this is part 1 of 3, use "3").  

Season

The Season element defines a season of a particular program, although it is not often specified because the season information may not be known. The Season element has the following attributes:

Attribute Type Default value Description Notes
id string   An ID that is unique to the document and defines this element. Use IDs such as sn1, sn2, and sn3.

Seasons are referenced by Program elements.

uid string "" A unique ID that will remain consistent between multiple versions of this document. This uid should start with "!Season!".
series string "" The series ID to which this season belongs. This value should be specified because it doesn't make sense for a season to not be part of a series.
title string "" The name of this season. The maximum length is 512 characters.
studio string "" The name of the studio that created this season. The maximum length is 512 characters.
year int 0 The year this season was aired.  
guideImage string "" An image to display for this season. This value contains the GuideImage id attribute.

SeriesInfo

The SeriesInfo element defines a series of a particular program (such as Lost) and has the following attributes:

Attribute Type Default value Description Notes
id string   An ID that is unique to the document and defines this element. Use IDs such as si1, si2, and si3.

SeriesInfo is referenced by the Program and Season elements.

uid string "" A unique ID that will remain consistent between multiple versions of this document. This value starts with "!Series!". Using the format "!Series!seriesName" is somewhat unique, but won't handle cases such as a remake of a series (for example, Knight Rider or Battlestar Galactica).
title string "" The title name of the series. The maximum length is 512 characters.
shortTitle string "" A shorter form of the title attribute (if available). The maximum length is 512 characters. If this value is not available, use the same value as the title attribute.
description string "" A description of the series. The maximum length is 512 characters.
shortDescription string "" A shorter form of the description attribute, if available. The maximum length is 512 characters. If this value is not available, use the same value as the description attribute.
startAirdate XMLTime "" The date the series was first aired.  
endAirdate XMLTime "" The date the series ended.  
guideImage string "" An image to show for the series. This value contains the GuideImage id attribute.

Service

A Service element defines a content provider and has the following attributes:

Attribute Type Default value Description Notes
id string   An ID that is unique to the document and defines this element. Use IDs such as s1, s2, s3, and so forth.
uid string "" An ID that uniquely identifies the service. Should be of the form "!Service!name", where name is the value of the name attribute.
name string "" The display name of the service.  
callSign string "" The call sign of the service. For example, "BBC1".
affiliate string "" The ID of an Affiliate element that to which this service is affiliated.  
logoImage string "" Specifies a logo image to display. This value contains a GuideImage id attribute. When searching for a logo to display, the service is searched first, and then its affiliate.

WriterRole

An WriterRole element is defined within a Program element and defines a relationship between a Person element and the surrounding Program element (whether the person is a writer).

The WriterRole element and has the following attributes:

Attribute Type Default value Description Notes
person string "" A reference to the id value of the Person element.  
rank integer 0 Used to sort the names that are displayed. Lower numbers are displayed first.

Sample MXF File

The following shows an example of how these elements are used in an MXF file.

<?xml version="1.0" encoding="UTF-8"?>
<MXF xmlns:sql="urn:schemas-microsoft-com:XML-sql" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Assembly name="mcepg" version="6.0.6000.0" cultureInfo="" publicKey="0024000004800000940000000602000000240000525341310004000001000100B5FC90E7027F67871E773A8FDE8938C81DD402BA65B9201D60593E96C492651E889CC13F1415EBB53FAC1131AE0BD333C5EE6021672D9718EA31A8AEBD0DA0072F25D87DBA6FC90FFD598ED4DA35E44C398C454307E8E33B8426143DAEC9F596836F97C8F74750E5975C64E2189F45DEF46B2A2B1247ADC3652BF5C308055DA9">
    <NameSpace name="Microsoft.MediaCenter.Guide">
      <Type name="Lineup" />
      <Type name="Channel" parentFieldName="lineup" />
      <Type name="Service" />
      <Type name="ScheduleEntry" groupName="ScheduleEntries" />
      <Type name="Program" />
      <Type name="Keyword" />
      <Type name="KeywordGroup" />
      <Type name="Person" groupName="People" />
      <Type name="ActorRole" parentFieldName="program" />
      <Type name="DirectorRole" parentFieldName="program" />
      <Type name="WriterRole" parentFieldName="program" />
      <Type name="HostRole" parentFieldName="program" />
      <Type name="GuestActorRole" parentFieldName="program" />
      <Type name="ProducerRole" parentFieldName="program" />
      <Type name="GuideImage" />
      <Type name="Affiliate" />
      <Type name="SeriesInfo" />
      <Type name="Season" />
    </NameSpace>
  </Assembly>
  <Assembly name="mcstore" version="6.0.6000.0" cultureInfo="" publicKey="0024000004800000940000000602000000240000525341310004000001000100B5FC90E7027F67871E773A8FDE8938C81DD402BA65B9201D60593E96C492651E889CC13F1415EBB53FAC1131AE0BD333C5EE6021672D9718EA31A8AEBD0DA0072F25D87DBA6FC90FFD598ED4DA35E44C398C454307E8E33B8426143DAEC9F596836F97C8F74750E5975C64E2189F45DEF46B2A2B1247ADC3652BF5C308055DA9">
    <NameSpace name="Microsoft.MediaCenter.Store">
      <Type name="Provider" />
      <Type name="UId" parentFieldName="target" />
    </NameSpace>
  </Assembly>
  <Providers>
    <Provider id="provider1" name="GuideListingsInc" displayName="Guide Listings Inc" copyright="© 2008 Microsoft Corporation. All Rights Reserved." />
  </Providers>
  <With provider="provider1">
    <Keywords>
      <Keyword id="k1"   word="General" />
      <Keyword id="k100" word="All" />
      <Keyword id="k101" word="Action/Adventure" />
      <Keyword id="k102" word="Comedy" />
      <Keyword id="k103" word="Documentary/Bio" />
      <Keyword id="k104" word="Drama" />
      <Keyword id="k105" word="Educational" />
      <Keyword id="k106" word="Family/Children" />
      <Keyword id="k107" word="Movies" />
      <Keyword id="k108" word="Music" />
      <Keyword id="k109" word="News" />
      <Keyword id="k110" word="Sci-Fi/Fantasy" />
      <Keyword id="k111" word="Soap" />
      <Keyword id="k112" word="Sports" />
      <Keyword id="k113" word="Other" />

      <Keyword id="k2"   word="Educational" />
      <Keyword id="k200" word="All" />
      <Keyword id="k201" word="Arts" />
      <Keyword id="k202" word="Biography" />
      <Keyword id="k203" word="Documentary" />
      <Keyword id="k204" word="How-to" />
      <Keyword id="k205" word="Science" />
      <Keyword id="k206" word="Other" />
    </Keywords>
    <KeywordGroups>
      <KeywordGroup uid="!KeywordGroup!k1" groupName="k1" keywords="k100,k101,k102,k103,k104,k105,k106,k107,k108,k109,k110,k111,k112,k113" />
      <KeywordGroup uid="!KeywordGroup!k2" groupName="k2" keywords="k200,k201,k202,k203,k204,k205,k206" />
    </KeywordGroups>
    <GuideImages>
      <GuideImage id="i1" uid="!Image!JohnnyBoy" imageUrl="http://www.fakeurl.com/images/image1.jpg" />
      <GuideImage id="i2" uid="!Image!XYZNetworkLogo" imageUrl="http://www.fakeurl.com/images/image2.jpg" />
    </GuideImages>
    <People>
      <Person id="p1" name="Spring Chick" uid="!Person!Spring Chick" />
      <Person id="p2" name="Bruce Abbott" uid="!Person!Bruce Abbott" />
      <Person id="p3" name="John Producer" uid="!Person!John Producer" />
      <Person id="p4" name="David Director" uid="!Person!David Director" />
      <Person id="p5" name="Jimmy Writer" uid="!Person!Jimmy Writer" />
      <Person id="p6" name="Terry Talented" uid="!Person!Terry Talented" />
    </People>
    <SeriesInfos>
      <SeriesInfo id="si1" uid="!Series!CodeWars" title="Code Wars" shortTitle="Code Wars" description="Geeky children ponder mysteries of the universe." shortDescription="Kids ponder universal mysteries." startAirdate="2000-01-01T00:00:00" endAirdate="1900-01-01T00:00:00" guideImage="i1" />
    </SeriesInfos>
    <Seasons>
      <Season id="sn1" uid="!Season!164959780" series="si1" title="Code Wars: Season 01" year="2000" />
    </Seasons>
    <Programs>
      <Program id="1" uid="!Program!1" title="Code Wars" description="The kids ponder whether 1 was unfairly declared non-prime." shortDescription="Should 1 be prime?" episodeTitle="Divisible by one and itself" language="en-us" episodeNumber="1" originalAirdate="2001-09-10T00:00:00" keywords="k1,k2,k105,k106,k205" series="si1" isSeries="1" isKids="1">
        <ActorRole person="p1" rank="1" />
        <ActorRole person="p6" rank="2" />
      </Program>
      <Program id="2" uid="!Program!2" title="Code Wars" description="The kids drink tea all day long."  episodeTitle="Cup of Tea" language="en-us" episodeNumber="1" originalAirdate="2001-09-10T00:00:00" keywords="k1,k2,k105,k106,k205" series="si1" isSeries="1" isKids="1">
        <ActorRole person="p1" rank="1" />
        <ActorRole person="p6" rank="2" />
        <GuestActorRole person="p2" rank="1" />
        <DirectorRole person="p4" rank="1" />
        <ProducerRole person="p3" rank="1" />
        <WriterRole person="p5" rank="1" />
        <WriterRole person="p6" rank="2" />
      </Program>
      <Program id="3" uid="!Program!3" title="Spit the dummy" description="Jim-Bob starts a business but throws a wobbly." episodeTitle="The business" language="en-us" episodeNumber="167" originalAirdate="1985-11-22T00:00:00" keywords="k1,k105,k2,k204" >
        <ActorRole person="p1" rank="1" />
        <ActorRole person="p6" rank="2" />
        <GuestActorRole person="p2" rank="1" />
        <DirectorRole person="p4" rank="1" />
        <ProducerRole person="p3" rank="1" />
        <WriterRole person="p5" rank="1" />
        <WriterRole person="p6" rank="2" />
      </Program>
    </Programs>
    <Affiliates>
      <Affiliate name="ABC Affiliate" uid="!Affiliate!ABC Affiliate" logoImage="i2" />
    </Affiliates>
    <Services>
      <Service id="s1" uid="!Service!EducationChannel" name="Education Channel" callSign="EDUC"  />
      <Service id="s2" uid="!Service!Spike" name="Spike TV" callSign="SPIKE" affiliate="!Affiliate!ABC Affiliate" />
    </Services>
    <ScheduleEntries service="s1">
      <ScheduleEntry program="1" startTime="2008-09-27T00:00:00" duration="1800" isCC="1" isStereo="1" />
      <ScheduleEntry program="2" duration="1800" isCC="1" audioFormat="2" />
      <ScheduleEntry program="2" duration="1800" isCC="1" audioFormat="2" />
      <ScheduleEntry program="1" duration="1800" isCC="1" audioFormat="2" />
      <ScheduleEntry program="2" duration="7200" />
      <ScheduleEntry program="3" duration="7200" audioFormat="2" />
    </ScheduleEntries>
    <ScheduleEntries service="s2">
      <ScheduleEntry program="1" startTime="2008-09-27T00:00:00" duration="1800" />
      <ScheduleEntry program="1" duration="1800" isCC="1" />
      <ScheduleEntry program="1" duration="1800" isCC="1" />
      <ScheduleEntry program="1" duration="1800" isCC="1" />
      <ScheduleEntry program="1" duration="1800" />
      <ScheduleEntry program="1" duration="1800" />
    </ScheduleEntries>

    <Lineups>
      <Lineup id="l1" uid="!Lineup!OuterLimits" name="OuterLimits, Kansas" primaryProvider="!MCLineup!MainLineup" >
        <channels>
          <Channel uid="!Channel!OuterLimits!1" lineup="l1" service="s1" number="1" />
          <Channel uid="!Channel!OuterLimits!2" lineup="l1" service="s2" number="2" />
        </channels>
      </Lineup>
    </Lineups>
  </With>
</MXF>

Reindexing Guide Data

After loading guide data, the data can be reindexed by running a Windows Media Center task from Task Scheduler. Reindexing makes the data searchable.

  1. Close Windows Media Center.

  2. Open Task Scheduler (go to Control Panel > System and Security > Administrative Tools > Schedule Tasks).

  3. In the console tree under Task Scheduler (Local), expand Task Scheduler Library > Microsoft > Windows > Media Center.

  4. In the console window under Name, right-click ReindexSearchRoot, and then click Run.

    The Task Scheduler

Recovering a Corrupted Guide Data Store

The user can recover a corrupted Guide data store back to the last known good state by running a Windows Media Center task from Task Scheduler.

  1. Close Windows Media Center.

  2. Open Task Scheduler (go to Control Panel > System and Security > Administrative Tools > Schedule Tasks).

  3. In the console tree under Task Scheduler (Local), expand Task Scheduler Library > Microsoft > Windows > Media Center.

  4. In the console window under Name, right-click ObjectStoreRecoveryTask, and then click Run.

    The Task Scheduler

    The task may take several minutes to download the new Guide data to the recovered data store when the Microsoft Guide data service is available. Then, the user must reload the custom listings into the recovered Guide data store by running LoadMXF.exe.

The first time the user opens Windows Media Center, the following message is displayed:

Windows Media Center has corrected a problem with your recording data and will download the Guide again. You should review your recordings to verify they are still scheduled correctly.

For More Information

Web addresses can change, so you might be unable to connect to the Web site or sites mentioned here.