Organising data, the raw text that goes into a digital system, eﬀectively and eﬃciently is important for all aspects of publishing. It provides the digital building blocks from which both print and digital products can be produced. Imposing a structure on data allows it to be used ﬂexibly depending on what you want to do with it. This structure needs to be used consistently and be read by diﬀerent machines for diﬀerent purposes, so various systems and protocols have developed to ensure this takes place. This chapter will not cover all the various systems and languages that have developed but provides a brief overview of those that are most central to publishing activity.