I've a GML file from the Ordinance Survey which includes a Cartographic Text layer which I'd like to load and render in QGIS.

The layer has attributes which are intended to be use for the font size, font type, its orientation, etc but it doesn't appear to be in an immediately useful format. For example, orientation is in 1/10's of a degree and font is simply an number between 1 and 3.

Setting aside loading the GML into PostGIS and replacing the fields with ones that may be more readily interpreted, I was wondering if there's a way within the QML structure to support more than one label type - for example, each symbol links to its own label section?

2 Answers 2


While it is not possible to set up different label classes like you can do for symbols, it is possible to set up very powerful labeling styles using data-defined labels. Data-defined labels also support expressions so there is no need to replace fields since you can create rules which deal with what you have.

  • 1
    Thank you. I've been using expressions in styling but hadn't picked up that its possible in labels as well. A simple CASE statement will take a coded field and convert it to specific font sizes - when the OS field says font size 3, equate it to 12pt, 2 to 10 pt, else 8pt.
    – Adrian
    May 10, 2014 at 8:35

You might want to check out the work done by Jonathon Moules at Warwickshire County Council


He has created some style sheets/qml files that should work with OS MasterMap Topography data.

There may be a difference depending on how you translated the data.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.