First a bit of background...
We use SSIS to move data from our OLAP production database to the Data Warehouse (DW) system. Out of the box, we have a number of packages that handle some of the basic tables, but not all of them, mostly the ones that have been identified by clients over the years as the ones that are important. Occasionally an "extension" (a new package) has to be written to include a custom table or a basic table that wasn't originally included. I may have the opportunity to develop a tool to make some of the mundane tasks that we do during the extension development less painful and many times faster. Part of that involves knowing when a field needs to be mapped to a related table in the DW. Like a foreign key. IF it's a foireign key in the OLAP, it's likely to be a foreign key in the DW. Where it gets complicated is that the OLAP table name isn't always the DW name, as some are DIM tables, some are FACT tables (and if you know about warehouse architecture, you know what that means, if you don't, well... suffice it to say, it means that a table could be preceeded by DIM_ or FACT_) and in other cases, some tables from OLAP are combined into a single table.

OK, so to help with this, I plan to have a mapping file so that when I encounter table X in OLAP, I know that it relates to DIM_X in the DW and can then automatically create the appropriate field definition and fkey descriptors.... and that's what I'm looking for some opinions on...

I plan to use an XML file to make it easy for sharing among developers... what I'm not sure I care about is the format, so I'm looking for some opinions.
Some thoughts I've had are:
Code:
<Mappings>
  <Table OLAP="SomeTable1" DW="Dim_SomeTable1" Field="SomeTable1DimID" />
  <Table OLAP="SomeTable2" DW="Dim_SomeTable2" Field="SomeTable2DimID" />
  <Table OLAP="SomeTable3" DW="Dim_SomeTable3" Field="SomeTable3DimID" />
</Mappings>
or

Code:
<Mappings>
  <Mapping>
    <OLAP>SomeTable1</OLAP>
    <DataWarehouse ID="SomeTable1DMID">SomeTable1DIM</DataWarehouse>
  </Mapping>
  <Mapping>
    <OLAP>SomeTable2</OLAP>
    <DataWarehouse ID="SomeTable2DMID">SomeTable2DIM</DataWarehouse>
  </Mapping>
</Mappings>
Mostly I'm looking for opinions on something simple and easily maintainable and usable. At the moment I don't have an opinion either way. The only requirement is that I need it easily parsable when I read it in code, I don't want to have to go through a lot of XML gymnastics to get the listing that I need, and it needs to be easily maintainable; both from the app side, and possible by hand from time to time.

-tg