Document Type Definition

DTD (Document Type Definition, česky Definice typu dokumentu) je jazyk pro popis struktury XML případně SGML dokumentu. Omezuje množinu přípustných dokumentů spadajících do daného typu nebo třídy. DTD tak například vymezuje jazyky HTMLXHTML.

Struktura třídy nebo typu dokumentu je v DTD popsána pomocí popisu jednotlivých značek (nebo též elementů) a atributů. Popisuje, jak mohou být značky navzájem uspořádány a vnořeny. Vymezuje atributy pro každou značku a typ těchto atributů.

DTD je poměrně starý a málo expresivní jazyk. Jeho další nevýhoda je, že DTD samotný není XML soubor.

Silnější jazyky pro popis XML dokumentů jsou například XML Schema, RELAX NG, Schematron nebo DSD, které jsou již samy o sobě ve formátu XML.

Příklad DTD dokumentu

Příklad velmi jednoduchého DTD dokumentu (priklad.dtd):

 <!ELEMENT clovek (jmeno, adresa*)>
 <!ELEMENT jmeno  (#PCDATA)>
 <!ELEMENT adresa (ulice?, cislo?, mesto)>
 <!ELEMENT ulice  (#PCDATA)>
 <!ELEMENT cislo  (#PCDATA)>
 <!ELEMENT mesto  (#PCDATA)>

Tento DTD dokument definuje třídu XML dokumentů, které mají kořenovou značku <clovek>, obsahující právě jednu značku <jmeno> a žádnou nebo více značek <adresa> a tak dále. Proto například tento XML dokument patří do takto vymezené třídy XML dokumentů (říkáme také, že je validní proti výše uvedenému DTD):

 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE clovek SYSTEM "priklad.dtd">
 <clovek>
   <jmeno>Tomáš</jmeno>
   <adresa>
     <ulice>Nesmrtelná</ulice>
     <cislo>99</cislo>
     <mesto>Brno</mesto>
   </adresa>
 </clovek>

Bezpečnostní

XML DTD lze použít k vytvoření útoku DoS (Denial of Service) definováním vnořených entit, které se exponenciálně rozšiřují, nebo odesláním analyzátoru XML do externího zdroje, který se nikdy nevrací.

Z tohoto důvodu poskytuje .NET Framework vlastnost, která umožňuje zakázat nebo přeskočit analýzu DTD[10] a nejnovější verze aplikací Microsoft Office (Microsoft Office 2010 a vyšší) odmítají otevřít soubory XML, které obsahují deklarace DTD.

Odkazy

Související články


Zdroj datcs.wikipedia.org
Originálcs.wikipedia.org/wiki/Document_Type_Definition
Zobrazit sloupec 

Kalkulačka - Výpočet

Výpočet čisté mzdy

Důchodová kalkulačka

Přídavky na dítě

Příspěvek na bydlení

Rodičovský příspěvek

Životní minimum

Hypoteční kalkulačka

Povinné ručení

Banky a Bankomaty

Úrokové sazby, Hypotéky

Směnárny - Euro, Dolar

Práce - Volná místa

Úřad práce, Mzda, Platy

Dávky a příspěvky

Nemocenská, Porodné

Podpora v nezaměstnanosti

Důchody

Investice

Burza - ČEZ

Dluhopisy, Podílové fondy

Ekonomika - HDP, Mzdy

Kryptoměny - Bitcoin, Ethereum

Drahé kovy

Zlato, Investiční zlato, Stříbro

Ropa - PHM, Benzín, Nafta, Nafta v Evropě

Podnikání

Města a obce, PSČ

Katastr nemovitostí

Katastrální úřady

Ochranné známky

Občanský zákoník

Zákoník práce

Stavební zákon

Daně, formuláře

Další odkazy

Auto - Cena, Spolehlivost

Registr vozidel - Technický průkaz, eTechničák

Finanční katalog

Volby, Mapa webu

English version

Czech currency

Prague stock exchange


Ochrana dat, Cookies

 

Copyright © 2000 - 2024

Kurzy.cz, spol. s r.o., AliaWeb, spol. s r.o.