基本情報暗記無料で始める

DTDとは?でぃーてぃーでぃー

DTD(Document Type Definition:文書型定義)は、XMLやSGML(XMLの元になったマーク付け言語)の文書について、使ってよい要素(タグで囲んだ部分)と属性、要素を書く順序や回数を定めた決まり。例えば「<!ELEMENT 学生 (学籍番号, 氏名, 学部?)>」は、要素「学生」の中に学籍番号と氏名をこの順で1回ずつ、学部を0回か1回書くことを表す(? は0回か1回、* は0回以上、+ は1回以上)。文書の先頭の <!DOCTYPE …> で、使うDTDを指定するか、DTDをそこに直接書き込む。DTDに合っている文書を「妥当な(valid)」文書という。DTDはSGMLから引き継いだ独自の書き方で書き、値のデータ型(整数・日付など)はほとんど決められないため、XMLではその点を補うXMLスキーマ(XML Schema)も使われる。

最終更新:2026-10-10

試験情報

基本情報技術者試験の過去問では1回出題されています。

基本情報技術者試験の頻出用語/テクノロジ系

別名:文書型定義、Document Type Definition

この語が出る過去問を解く →

背景

SGMLは、マニュアルや公文書のような大量の文書を、見た目ではなく「章・節・段落」といった構造で書き表すために作られた。構造で書くなら、どんな構造が許されるかを先に決めておかないと、書き手ごとにばらばらになる。その決まりを書く仕組みがDTDで、SGMLを簡単にして作られたXMLにも引き継がれた。

具体例

HTML 4.01で書かれたWebページの先頭には「<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" …>」と書かれ、W3C(Webの標準を決める団体)が公開するHTML 4.01のDTDに従っていることを示していた。HTML5では先頭が「<!DOCTYPE html>」だけになり、DTDを参照しなくなった。研究室の論文リストをXMLで管理するなら、「<!ELEMENT 論文 (題名, 著者+, 発表年)>」と書いておけば、著者が1人もいない論文や、題名より前に発表年を書いた論文は、DTDに合わない文書として検査で見つかる。

試験での引っ掛け

DTDに書くのは文書の構造(使える要素・属性と、その順序・回数)であり、文字の大きさや色などの表示形式でも、データの中身そのものでもない。文字コード(UTF-8など)の指定も、DTDではなく文書の先頭のXML宣言「<?xml version="1.0" encoding="UTF-8"?>」で行う。また、DTDはXMLの書き方で書かれていない。XMLの書き方で書き、データ型も指定できるのはXML Schemaである。

関連用語

出た過去問

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

この語が出る過去問を解く →

試験での特徴
  • 試験では1回出題
  • 分野:テクノロジ系
  • DTDに書くのは文書の構造(使える要素・属性と、その順序・回数)であり、文字の大きさや色などの表示形式でも、データの中身そのものでもない。