Below is an "XML schema" file that maps columns in the "Second Survey" spreadsheet format to XML columns.
So what? This lets users translate freely between Excel and XML, which means data transfer is standardized to the survey fields.
The process is
1. make sure each cell in the header row isn't empty. i think this is important.
2. load up the 2nd survey file in Excel
3. under the "Data" menu, select "XML..." -> "XML Source".
4. the right side of Excel should have a "XML Source" window now.
5. on the new window, push the "XML Maps..." button.
6. a dialog will open up. Push "Add...".
7. select the schema (.xsd) file
8. click "ok"
the XML Source window should be populated with a huge structure now.
9. Drag the top-level XML element onto the first column of the header row (i.e. drop it onto the cell named "Sophonts" at appx cell A10).
10. Wait awhile. A dialog will probably pop up with formatting concerns. Click "Use Existing Formatting", and wait some more.
After a few minutes, the table will be mapped to XML, which can be saved as XML data like so:
"File... Save As".
Select "XML Data".
If a dialog pops up, select "Continue".
Done.
So what? This lets users translate freely between Excel and XML, which means data transfer is standardized to the survey fields.
The process is
1. make sure each cell in the header row isn't empty. i think this is important.
2. load up the 2nd survey file in Excel
3. under the "Data" menu, select "XML..." -> "XML Source".
4. the right side of Excel should have a "XML Source" window now.
5. on the new window, push the "XML Maps..." button.
6. a dialog will open up. Push "Add...".
7. select the schema (.xsd) file
8. click "ok"
the XML Source window should be populated with a huge structure now.
9. Drag the top-level XML element onto the first column of the header row (i.e. drop it onto the cell named "Sophonts" at appx cell A10).
10. Wait awhile. A dialog will probably pop up with formatting concerns. Click "Use Existing Formatting", and wait some more.
After a few minutes, the table will be mapped to XML, which can be saved as XML data like so:
"File... Save As".
Select "XML Data".
If a dialog pops up, select "Continue".
Done.
Code:
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema targetNamespace="survey_schema.xsd" elementFormDefault="qualified"
xmlns="survey_schema.xsd"
xmlns:mstns="survey_schema.xsd"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="Row">
<xs:sequence>
<xs:element name="Sophonts" type="xs:string" />
<xs:element name="Sector" type="xs:string" />
<xs:element name="Hex" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="UWP" type="xs:string" />
<xs:element name="TC" type="xs:string" />
<xs:element name="Remarks" type="xs:string" />
<xs:element name="Ex" type="xs:string" />
<xs:element name="Cx" type="xs:string" />
<xs:element name="Nobility" type="xs:string" />
<xs:element name="PBG" type="xs:string" />
<xs:element name="numWorlds" type="xs:string" />
<xs:element name="Allegiance" type="xs:string" />
<xs:element name="Stars" type="xs:string" />
<xs:element name="null1" type="xs:string" />
<xs:element name="null2" type="xs:string" />
<xs:element name="Starport" type="xs:string" />
<xs:element name="Size" type="xs:string" />
<xs:element name="Atmosphere" type="xs:string" />
<xs:element name="Hydrographics" type="xs:string" />
<xs:element name="Popdigit" type="xs:string" />
<xs:element name="Government" type="xs:string" />
<xs:element name="Lawlevel" type="xs:string" />
<xs:element name="Techlevel" type="xs:string" />
<xs:element name="Popmult" type="xs:string" />
<xs:element name="Belts" type="xs:string" />
<xs:element name="GGs" type="xs:string" />
<xs:element name="St2" type="xs:string" />
<xs:element name="null3" type="xs:string" />
<xs:element name="Ag" type="xs:string" />
<xs:element name="As" type="xs:string" />
<xs:element name="Ba" type="xs:string" />
<xs:element name="De" type="xs:string" />
<xs:element name="Fl" type="xs:string" />
<xs:element name="Hi" type="xs:string" />
<xs:element name="Ic" type="xs:string" />
<xs:element name="In" type="xs:string" />
<xs:element name="Lo" type="xs:string" />
<xs:element name="Na" type="xs:string" />
<xs:element name="Ni" type="xs:string" />
<xs:element name="Po" type="xs:string" />
<xs:element name="Ri" type="xs:string" />
<xs:element name="Va" type="xs:string" />
<xs:element name="Tp" type="xs:string" />
<xs:element name="Tn" type="xs:string" />
<xs:element name="Wa" type="xs:string" />
<xs:element name="Pa" type="xs:string" />
<xs:element name="Pi" type="xs:string" />
<xs:element name="Pr" type="xs:string" />
<xs:element name="Ph" type="xs:string" />
<xs:element name="An" type="xs:string" />
<xs:element name="Cp" type="xs:string" />
<xs:element name="Ci" type="xs:string" />
<xs:element name="Di" type="xs:string" />
<xs:element name="Fo" type="xs:string" />
<xs:element name="Qu" type="xs:string" />
<xs:element name="Ux" type="xs:string" />
<xs:element name="null4" type="xs:string" />
<xs:element name="B" type="xs:string" />
<xs:element name="c" type="xs:string" />
<xs:element name="C" type="xs:string" />
<xs:element name="D" type="xs:string" />
<xs:element name="e" type="xs:string" />
<xs:element name="E" type="xs:string" />
<xs:element name="F" type="xs:string" />
<xs:element name="G" type="xs:string" />
<xs:element name="Loc" type="xs:string" />
<xs:element name="ScoutID" type="xs:string" />
<xs:element name="Stellar" type="xs:string" />
<xs:element name="M1000" type="xs:string" />
<xs:element name="M0" type="xs:string" />
<xs:element name="RoM" type="xs:string" />
<xs:element name="ZS" type="xs:string" />
<xs:element name="null5" type="xs:string" />
<xs:element name="Res" type="xs:string" />
<xs:element name="Lab" type="xs:string" />
<xs:element name="Inf" type="xs:string" />
<xs:element name="Bar" type="xs:string" />
<xs:element name="null6" type="xs:string" />
<xs:element name="Core" type="xs:string" />
<xs:element name="Group" type="xs:string" />
<xs:element name="Ethics" type="xs:string" />
<xs:element name="Symbols" type="xs:string" />
<xs:element name="null7" type="xs:string" />
<xs:element name="Population" type="xs:string" />
<xs:element name="isHuman" type="xs:string" />
<xs:element name="isAlien" type="xs:string" />
<xs:element name="Human-population" type="xs:string" />
<xs:element name="Non-Human-population" type="xs:string" />
<xs:element name="Human" type="xs:string" />
<xs:element name="Minor" type="xs:string" />
<xs:element name="Travel-Index" type="xs:string" />
<xs:element name="isHub" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:element name="Survey_Data">
<xs:complexType>
<xs:sequence>
<xs:element name="data" type="Row" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>