Vad är XML Prolog?

Extensible Markup Language (XML) prolog är den del av varje XML-system som finns före systemets rotelement. Detta är den del av XML-systemet där information om XML-programmeringen definieras. Det finns ingen standard för XML-prolog, men den kommer vanligtvis att ha några av samma egenskaper från ett system till ett annat. I vissa fall kan det till och med vara tomt eftersom användaren inte vill deklarera någon prologinformation. Även om den är tom, finns den fortfarande i alla XML-system.

XML-prologen kallas ibland för XML-deklarationen. Den finns i alla system, men dess användning är valfri. När den används innehåller den vanligtvis versionsinformation, bearbetningsinstruktioner, eventuella kommentarer från författaren och ett fält för dokumenttypsdefinitioner, vanligtvis kallad doctype. Det kommer ibland också att innehålla vidarebefordran till HyperText Markup Language (HTML) om användaren vill slå samman XML och HTML.

XML-prolog kommer alltid att förekomma i den första delen av filen. Den kommer aldrig att följa efter en annan sektion. Det enda undantaget är att ett byteordningsmärke kan föregå XML-prologen när vissa typer av teckenkodningar används. Om så är fallet deklarerar byteordningen vilken typ av teckenkodning som användes i XML-systemet, vanligtvis med Unicode-transformationsformat (UTF). Det finns en rad teckenkodningar tillgängliga, men UTF-8 och UTF-16 är de vanligaste och mest rekommenderade kodningarna; om inget byteordningsmärke anges, kommer datorer att läsa systemet som antingen UTF-8 eller UTF-16, standardkodningarna.

Bearbetningsinstruktionerna definierar hur applikationen kommer att behandla informationen inom XML-prologen och systemet. Bearbetningsinstruktioner kan visas var som helst i ett XML-system. Endast bearbetningsinstruktioner i XML-prologen kommer att anses vara en del av XML-deklarationen.

Kommentarer, liksom bearbetningsinformationen, kan hittas var som helst i XML-systemet, och endast kommentarer i prologen anses vara en del av XML-prologen. Kommentarer är fritextdatauppsättningar som inte har något inflytande på skriptet i systemet och är vanligtvis till för att hjälpa programmeraren att komma ihåg något eller för att berätta något för andra programmerare. De innehåller ofta information om författaren, versionsnummer eller annan information som författaren vill förmedla till andra manusredigerare. Slutligen kommer vissa författare att inkludera doctype. Detta rekommenderas men fortfarande inte vanligt bland författare.