1. Help Center
  2. Supported formats

Windows Phone ResX

Get to know the basics of the Windows Phone ResX file format and how Phrase handles it for localization.

File Extensions .resx, .resw
API Extension resx_windowsphone
Import Yes
Export Yes
Pluralization supported? No
Descriptions supported? Yes


Windows Phone is a mobile operating system developed by Microsoft. Similar to other Microsoft platforms (e.g. .NET), Windows Phone supports localization and internationalization through its variation of ResX files

Windows Phone ResX files are XML-based. Translatable data are placed in the <value> elements nested under <data>. Note that <value> elements may also exist in the <resheader> elements. These <value> elements contain metadata associated with the app and, therefore, they should not be treated as translatable strings. Phrase has a ready-for-use filter to help you manage Windows Phone ResXs with great ease and efficiency.

Code Sample

<?xml version="1.0" encoding="UTF-8"?>
<root>
  <xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
    <xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
    <xsd:element name="root" msdata:IsDataSet="true">
      <xsd:complexType>
        <xsd:choice maxOccurs="unbounded"/>
        <xsd:element name="data">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
            </xsd:sequence>
            <xsd:attribute name="name" type="xsd:string"/>
            <xsd:attribute name="type" type="xsd:string"/>
            <xsd:attribute name="mimetype" type="xsd:string"/>
          </xsd:complexType>
        </xsd:element>
        <xsd:element name="resheader">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
            </xsd:sequence>
            <xsd:attribute name="name" type="xsd:string" use="required"/>
          </xsd:complexType>
        </xsd:element>
      </xsd:complexType>
    </xsd:element>
  </xsd:schema>
  <resheader name="resmimetype">
    <value>text/microsoft-resx</value>
  </resheader>
  <resheader name="version">
    <value>2.0</value>
  </resheader>
  <resheader name="reader">
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <resheader name="writer">
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <data name="boolean_key">
    <value>--- true
</value>
  </data>
  <data name="empty_string_translation">
    <value/>
  </data>
  <data name="key_with_description">
    <value>This key has a description! (At least in some formats)</value>
    <comment>I'm an important description for this key!</comment>
  </data>
  <data name="key_with_line-break">
    <value>This translations contains
a line-break.</value>
  </data>
  <data name="nested.deeply.key">
    <value>I'm a deeply nested key.</value>
  </data>
  <data name="nested.key">
    <value>This key is nested inside a namespace.</value>
  </data>
  <data name="null_translation">
    <value/>
  </data>
  <data name="pluralized_key">
    <value>You have no pluralization.</value>
  </data>
  <data name="sample_collection">
    <value>---
- first item
- second item
- third item
</value>
  </data>
  <data name="simple_key">
    <value>Simple key, simple message.</value>
  </data>
  <data name="unverified_key">
    <value>This translation is not yet verified and is waiting for it. (In some formats we also export this status)</value>
  </data>
</root>