تعریف DTD خارجی در سند:
دو نوع DTD خارجی داریم:
۱-    سیستمی (system)
شناسه سیستم یک آدرس URL است که می توان از آن جهت دستیابی به  DTDاستفاده نمود. آدرس DTD می تواند به صورت مطلق یا نسبی مشخص شود.
مثال:
<!DOCTYPE class SYSTEM “class.dtd”>
۲-    عمومی (public)
برای تعریف DTD (تعریف نوع سند) به صورت عمومی از شناسه عمومی استفاده می کنیم.  یک شناسه عمومی دارای فرم زیر است:
reg.type//owner//DTD description//language//
reg.type  : اگر DTD استاندارد باشد و به ثبت رسیده باشد علامت + و اگر غیراستاندارد باشد علامت ~ می گذاریم.
owner : نام DTD یا نام شرکتی است که DTDرا به ثبت رسانده است.
description : یک توضیح متنی ساده در خصوص DTD است.
language : کد دو حرفی استاندارد زبانی است که DTD به آن زبان نوشته شده است.
مثال :
<!DOCTYPE  class  PUBLIC ” ~//class//DTD a sample dtd for a university classroom//FA//”>
در صورتیکه DTD عمومی یک DTDاستاندارد نباشد لازم است شناسه سیستمی هم در کنار شناسه عمومی ذکر شود.
<!DOCTYPE  class PUBLIC ” ~//class//DTD a sample dtd for a university classroom//FA//” “class.dtd”>

هنگام استفاده از شناسه عمومی در تعریف DTD در سند ، ویرایشگر به جستجوی نسخه عمومی در WEB
می پردازد و سعی می کند جدیدترین ویرایش از یک نسخه  DTD را تهیه نماید و. اگر نتوانست  DTD را از روی آدرس url مشخص شده برمی دارد.
نکته : درصورت استفاده از DTD خارجی در تعریف سند xml از صفت standalone=”no” استفاده می کنیم.
<?xml version=”1.0″ standalone=”no”?>