1*16467b97STreehugger Robot<?xml version="1.0" encoding="utf-8"?> 2*16467b97STreehugger Robot<root> 3*16467b97STreehugger Robot <!-- 4*16467b97STreehugger Robot Microsoft ResX Schema 5*16467b97STreehugger Robot 6*16467b97STreehugger Robot Version 1.3 7*16467b97STreehugger Robot 8*16467b97STreehugger Robot The primary goals of this format is to allow a simple XML format 9*16467b97STreehugger Robot that is mostly human readable. The generation and parsing of the 10*16467b97STreehugger Robot various data types are done through the TypeConverter classes 11*16467b97STreehugger Robot associated with the data types. 12*16467b97STreehugger Robot 13*16467b97STreehugger Robot Example: 14*16467b97STreehugger Robot 15*16467b97STreehugger Robot ... ado.net/XML headers & schema ... 16*16467b97STreehugger Robot <resheader name="resmimetype">text/microsoft-resx</resheader> 17*16467b97STreehugger Robot <resheader name="version">1.3</resheader> 18*16467b97STreehugger Robot <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> 19*16467b97STreehugger Robot <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> 20*16467b97STreehugger Robot <data name="Name1">this is my long string</data> 21*16467b97STreehugger Robot <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> 22*16467b97STreehugger Robot <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> 23*16467b97STreehugger Robot [base64 mime encoded serialized .NET Framework object] 24*16467b97STreehugger Robot </data> 25*16467b97STreehugger Robot <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> 26*16467b97STreehugger Robot [base64 mime encoded string representing a byte array form of the .NET Framework object] 27*16467b97STreehugger Robot </data> 28*16467b97STreehugger Robot 29*16467b97STreehugger Robot There are any number of "resheader" rows that contain simple 30*16467b97STreehugger Robot name/value pairs. 31*16467b97STreehugger Robot 32*16467b97STreehugger Robot Each data row contains a name, and value. The row also contains a 33*16467b97STreehugger Robot type or mimetype. Type corresponds to a .NET class that support 34*16467b97STreehugger Robot text/value conversion through the TypeConverter architecture. 35*16467b97STreehugger Robot Classes that don't support this are serialized and stored with the 36*16467b97STreehugger Robot mimetype set. 37*16467b97STreehugger Robot 38*16467b97STreehugger Robot The mimetype is used for serialized objects, and tells the 39*16467b97STreehugger Robot ResXResourceReader how to depersist the object. This is currently not 40*16467b97STreehugger Robot extensible. For a given mimetype the value must be set accordingly: 41*16467b97STreehugger Robot 42*16467b97STreehugger Robot Note - application/x-microsoft.net.object.binary.base64 is the format 43*16467b97STreehugger Robot that the ResXResourceWriter will generate, however the reader can 44*16467b97STreehugger Robot read any of the formats listed below. 45*16467b97STreehugger Robot 46*16467b97STreehugger Robot mimetype: application/x-microsoft.net.object.binary.base64 47*16467b97STreehugger Robot value : The object must be serialized with 48*16467b97STreehugger Robot : System.Serialization.Formatters.Binary.BinaryFormatter 49*16467b97STreehugger Robot : and then encoded with base64 encoding. 50*16467b97STreehugger Robot 51*16467b97STreehugger Robot mimetype: application/x-microsoft.net.object.soap.base64 52*16467b97STreehugger Robot value : The object must be serialized with 53*16467b97STreehugger Robot : System.Runtime.Serialization.Formatters.Soap.SoapFormatter 54*16467b97STreehugger Robot : and then encoded with base64 encoding. 55*16467b97STreehugger Robot 56*16467b97STreehugger Robot mimetype: application/x-microsoft.net.object.bytearray.base64 57*16467b97STreehugger Robot value : The object must be serialized into a byte array 58*16467b97STreehugger Robot : using a System.ComponentModel.TypeConverter 59*16467b97STreehugger Robot : and then encoded with base64 encoding. 60*16467b97STreehugger Robot --> 61*16467b97STreehugger Robot 62*16467b97STreehugger Robot <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> 63*16467b97STreehugger Robot <xsd:element name="root" msdata:IsDataSet="true"> 64*16467b97STreehugger Robot <xsd:complexType> 65*16467b97STreehugger Robot <xsd:choice maxOccurs="unbounded"> 66*16467b97STreehugger Robot <xsd:element name="data"> 67*16467b97STreehugger Robot <xsd:complexType> 68*16467b97STreehugger Robot <xsd:sequence> 69*16467b97STreehugger Robot <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> 70*16467b97STreehugger Robot <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> 71*16467b97STreehugger Robot </xsd:sequence> 72*16467b97STreehugger Robot <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" /> 73*16467b97STreehugger Robot <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> 74*16467b97STreehugger Robot <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> 75*16467b97STreehugger Robot </xsd:complexType> 76*16467b97STreehugger Robot </xsd:element> 77*16467b97STreehugger Robot <xsd:element name="resheader"> 78*16467b97STreehugger Robot <xsd:complexType> 79*16467b97STreehugger Robot <xsd:sequence> 80*16467b97STreehugger Robot <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> 81*16467b97STreehugger Robot </xsd:sequence> 82*16467b97STreehugger Robot <xsd:attribute name="name" type="xsd:string" use="required" /> 83*16467b97STreehugger Robot </xsd:complexType> 84*16467b97STreehugger Robot </xsd:element> 85*16467b97STreehugger Robot </xsd:choice> 86*16467b97STreehugger Robot </xsd:complexType> 87*16467b97STreehugger Robot </xsd:element> 88*16467b97STreehugger Robot </xsd:schema> 89*16467b97STreehugger Robot <resheader name="resmimetype"> 90*16467b97STreehugger Robot <value>text/microsoft-resx</value> 91*16467b97STreehugger Robot </resheader> 92*16467b97STreehugger Robot <resheader name="version"> 93*16467b97STreehugger Robot <value>1.3</value> 94*16467b97STreehugger Robot </resheader> 95*16467b97STreehugger Robot <resheader name="reader"> 96*16467b97STreehugger Robot <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> 97*16467b97STreehugger Robot </resheader> 98*16467b97STreehugger Robot <resheader name="writer"> 99*16467b97STreehugger Robot <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> 100*16467b97STreehugger Robot </resheader> 101*16467b97STreehugger Robot</root>