För att ett XML-dokument ska validera måste det överensstämma med en DTD. Trots att en DTD är frivillig är den ändå en mycket viktigt del i XML-resonemang. DTDns struktur som den är idag saknar den perfektion som XML-dokument strävar efter. Den saknar bl a möjligheten att skapa hierarkiska definitioner som tycks vara de mest lämpade för den hierarkiska uppbyggnaden av XMLs datagrammatik. Sådana definitioner skulle möjliggöra uppbyggnaden av mer detaljerade förekomststrukturer, t ex förekomstmönster eller göra det möjligt att till exempel göra begränsningar i attributvärden.
För att kunna åstadkomma detta började man utveckla andra metoder för att definiera dokumentens grammatik. Många förslag togs till diskussion. Det mest kända av dem är XML-schema. I slutet av februari 2000 publicerade man andra utkastet till förslaget. Det innehåller tre delar: 0. primer (http://www.w3.org/TR/xmlschema-0/), 1. struktur (http://www.w3.org/TR/xmlschema-1/) och 2. datatyper (http://www.w3.org/TR/xmlschema-2/). Förslaget förväntas bli en rekommendation. Men om och när det kommer att ske får framtiden utvisa.
XML-schema skrivs som ett vanligt XML-dokument och har stöd för namnrymder som beskrivs nedan och datatyper - allt det som DTD saknar. Å andra sidan är de flesta dokumenttyper redan definierade i DTDer och dess användning samt applikationernas stöd är utbrett. Allt detta saknar XML-schema - än så länge. Därför är det, i dagens läge, bättre att använda DTDer.