Princess Sofia, 34, donned a traditional folk costume, featuring an embroidered pinafore in the country's national colours, as she appeared outside the Royal Palace in Stockholm with her husband.