1. Help Center
  2. Supported formats

Qt Phrase Book

What is Qt Phrase Book and how does it differ from Qt Translation Source?

File Extensions .qph
API Extension qph
Import Yes
Export Yes
Pluralization supported? No
Descriptions supported? No


Qt Phrase Book is an XML-based file format used by Qt Linguist to populate pre-translated content. Its unit element is <phrase> with a nesting <source> and a <target> element. 

Note: Qt Phrase Book (QPH) is different from Qt Translation Source (TS) in that QPH is a glossary while TS is an exchange file format. In other words, TS is used by Qt applications to load localized content into the software, while QPH serves as a “Termbase” in Qt Linguist.

Code Sample

<!DOCTYPE QPH>
<QPH language="en-GB">
  <phrase>
    <source>boolean_key</source>
    <target>--- true
</target>
  </phrase>
  <phrase>
    <source>empty_string_translation</source>
    <target/>
  </phrase>
  <phrase>
    <source>key_with_description</source>
    <target>I'm a very important description for this key! (At least in some formats)</target>
  </phrase>
  <phrase>
    <source>key_with_line-break</source>
    <target>This translations contains
a line-break.</target>
  </phrase>
  <phrase>
    <source>nested.deeply.key</source>
    <target>Wow, this key is nested even deeper.</target>
  </phrase>
  <phrase>
    <source>nested.key</source>
    <target>This key is nested inside a namespace.</target>
  </phrase>
  <phrase>
    <source>null_translation</source>
    <target/>
  </phrase>
  <phrase>
    <source>pluralized_key_one</source>
    <target>Only one kitten found.</target>
  </phrase>
  <phrase>
    <source>pluralized_key_other</source>
    <target>Wow, you have %s kittens!</target>
  </phrase>
  <phrase>
    <source>pluralized_key_zero</source>
    <target>You have no kittens.</target>
  </phrase>
  <phrase>
    <source>sample_collection</source>
    <target>---
- first item
- second item
- third item
</target>
  </phrase>
  <phrase>
    <source>simple_key</source>
    <target>Simple key, simple message, so simple.</target>
  </phrase>
  <phrase>
    <source>unverified_key</source>
    <target>This translation is not yet verified and waits for it. (In some formats we also export this status)</target>
  </phrase>
</QPH>