moel@86: <?xml version="1.0" encoding="utf-8"?> moel@86: <root> moel@86: <!-- moel@86: Microsoft ResX Schema moel@86: moel@86: Version 2.0 moel@86: moel@86: The primary goals of this format is to allow a simple XML format moel@86: that is mostly human readable. The generation and parsing of the moel@86: various data types are done through the TypeConverter classes moel@86: associated with the data types. moel@86: moel@86: Example: moel@86: moel@86: ... ado.net/XML headers & schema ... moel@86: <resheader name="resmimetype">text/microsoft-resx</resheader> moel@86: <resheader name="version">2.0</resheader> moel@86: <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> moel@86: <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> moel@86: <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> moel@86: <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> moel@86: <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> moel@86: <value>[base64 mime encoded serialized .NET Framework object]</value> moel@86: </data> moel@86: <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> moel@86: <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> moel@86: <comment>This is a comment</comment> moel@86: </data> moel@86: moel@86: There are any number of "resheader" rows that contain simple moel@86: name/value pairs. moel@86: moel@86: Each data row contains a name, and value. The row also contains a moel@86: type or mimetype. Type corresponds to a .NET class that support moel@86: text/value conversion through the TypeConverter architecture. moel@86: Classes that don't support this are serialized and stored with the moel@86: mimetype set. moel@86: moel@86: The mimetype is used for serialized objects, and tells the moel@86: ResXResourceReader how to depersist the object. This is currently not moel@86: extensible. For a given mimetype the value must be set accordingly: moel@86: moel@86: Note - application/x-microsoft.net.object.binary.base64 is the format moel@86: that the ResXResourceWriter will generate, however the reader can moel@86: read any of the formats listed below. moel@86: moel@86: mimetype: application/x-microsoft.net.object.binary.base64 moel@86: value : The object must be serialized with moel@86: : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter moel@86: : and then encoded with base64 encoding. moel@86: moel@86: mimetype: application/x-microsoft.net.object.soap.base64 moel@86: value : The object must be serialized with moel@86: : System.Runtime.Serialization.Formatters.Soap.SoapFormatter moel@86: : and then encoded with base64 encoding. moel@86: moel@86: mimetype: application/x-microsoft.net.object.bytearray.base64 moel@86: value : The object must be serialized into a byte array moel@86: : using a System.ComponentModel.TypeConverter moel@86: : and then encoded with base64 encoding. moel@86: --> moel@86: <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> moel@86: <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> moel@86: <xsd:element name="root" msdata:IsDataSet="true"> moel@86: <xsd:complexType> moel@86: <xsd:choice maxOccurs="unbounded"> moel@86: <xsd:element name="metadata"> moel@86: <xsd:complexType> moel@86: <xsd:sequence> moel@86: <xsd:element name="value" type="xsd:string" minOccurs="0" /> moel@86: </xsd:sequence> moel@86: <xsd:attribute name="name" use="required" type="xsd:string" /> moel@86: <xsd:attribute name="type" type="xsd:string" /> moel@86: <xsd:attribute name="mimetype" type="xsd:string" /> moel@86: <xsd:attribute ref="xml:space" /> moel@86: </xsd:complexType> moel@86: </xsd:element> moel@86: <xsd:element name="assembly"> moel@86: <xsd:complexType> moel@86: <xsd:attribute name="alias" type="xsd:string" /> moel@86: <xsd:attribute name="name" type="xsd:string" /> moel@86: </xsd:complexType> moel@86: </xsd:element> moel@86: <xsd:element name="data"> moel@86: <xsd:complexType> moel@86: <xsd:sequence> moel@86: <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> moel@86: <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> moel@86: </xsd:sequence> moel@86: <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> moel@86: <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> moel@86: <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> moel@86: <xsd:attribute ref="xml:space" /> moel@86: </xsd:complexType> moel@86: </xsd:element> moel@86: <xsd:element name="resheader"> moel@86: <xsd:complexType> moel@86: <xsd:sequence> moel@86: <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> moel@86: </xsd:sequence> moel@86: <xsd:attribute name="name" type="xsd:string" use="required" /> moel@86: </xsd:complexType> moel@86: </xsd:element> moel@86: </xsd:choice> moel@86: </xsd:complexType> moel@86: </xsd:element> moel@86: </xsd:schema> moel@86: <resheader name="resmimetype"> moel@86: <value>text/microsoft-resx</value> moel@86: </resheader> moel@86: <resheader name="version"> moel@86: <value>2.0</value> moel@86: </resheader> moel@86: <resheader name="reader"> moel@86: <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> moel@86: </resheader> moel@86: <resheader name="writer"> moel@86: <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> moel@86: </resheader> moel@86: </root>