<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Document_Structure_Description</id>
	<title>Document Structure Description - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Document_Structure_Description"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Document_Structure_Description&amp;action=history"/>
	<updated>2026-05-21T11:42:43Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Document_Structure_Description&amp;diff=900160&amp;oldid=prev</id>
		<title>imported&gt;InternetArchiveBot: InternetArchiveBot hat 1 Archivlink(s) ergänzt und 0 Link(s) als defekt/tot markiert.) #IABot (v2.0.9.5</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Document_Structure_Description&amp;diff=900160&amp;oldid=prev"/>
		<updated>2023-12-13T14:05:23Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;/index.php?title=Benutzer:InternetArchiveBot&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Benutzer:InternetArchiveBot (Seite nicht vorhanden)&quot;&gt;InternetArchiveBot&lt;/a&gt; hat 1 Archivlink(s) ergänzt und 0 Link(s) als defekt/tot markiert.) #IABot (v2.0.9.5&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Document Structure Description&amp;#039;&amp;#039;&amp;#039; oder &amp;#039;&amp;#039;&amp;#039;DSD&amp;#039;&amp;#039;&amp;#039; ist eine [[Schemasprache (XML)|Schemasprache]], die dazu dient, Klassen von [[Extensible Markup Language|XML]]-Dokumenten zu beschreiben, die alle dieselben syntaktischen Anforderungen bezüglich ihrer Struktur und ihres Inhalts haben. DSD wurde in Kooperation mit BRICS und [[AT&amp;amp;T]] Labs Research entwickelt.&lt;br /&gt;
&lt;br /&gt;
== Entwicklungsziele ==&lt;br /&gt;
Die Entwicklungsziele von DSD waren:&amp;lt;ref&amp;gt;Anders Moller, Michael I. Schartzbach: &amp;#039;&amp;#039;{{Webarchiv|url=http://www.brics.dk/~amoeller/XML/schemas/dsd-overview.html |wayback=20070305182416 |text=Document Structure Description 2.0 |archiv-bot=2023-12-13 14:05:23 InternetArchiveBot }}&amp;#039;&amp;#039;. BRICS, 2003 (englisch)&amp;lt;/ref&amp;gt;&lt;br /&gt;
* wenige und einfach zu verstehende Sprachbestandteile (auf [[Boolesche Algebra|boolescher Logik]] und [[Regulärer Ausdruck|regulären Ausdrücken]] basierend) und zu enthalten&lt;br /&gt;
* auch für Nicht-XML-Experten einfach zu verstehen sein&lt;br /&gt;
* Für die meisten praktischen Einsatzzwecke ausdrucksstärker als andere Dokumenttyp-Definitionssprachen zu sein&lt;br /&gt;
&lt;br /&gt;
== Konzepte ==&lt;br /&gt;
Das zentrale Konzept von DSD ist, dass jedes DSD-[[Schema (Informatik)|Schema]] aus einer Liste von Regeln besteht. Ein validierender XML-[[Parser]] muss für alle Elemente eines XML-Dokuments alle Regeln verarbeiten. Die Regeln enthalten dabei &amp;#039;&amp;#039;declare&amp;#039;&amp;#039;- und &amp;#039;&amp;#039;require&amp;#039;&amp;#039;-Abschnitte. Declare-Abschnitte definieren, welchen Inhalt (Subelemente und Zeichendaten) und welche Attribute für das Element zulässig sind. Require-Abschnitte definieren erweiterte Einschränkungen auf Inhalte und Attribute. Dabei werden Regelbedingungen und erweiterte Einschränkungen durch boolesche Logik beschrieben, während die Werte der Attribute und der Inhalt der Elemente durch reguläre Ausdrücke beschrieben werden.&lt;br /&gt;
&lt;br /&gt;
== Beispiel ==&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel für eine DSD ist:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;dsd xmlns=&amp;quot;http://www.brics.dk/DSD/2.0&amp;quot;&lt;br /&gt;
 xmlns:my=&amp;quot;http://example.com&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;if&amp;gt;&amp;lt;element name=&amp;quot;my:foo&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;declare&amp;gt;&lt;br /&gt;
   &amp;lt;attribute name=&amp;quot;first&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;attribute name=&amp;quot;second&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;contents&amp;gt;&lt;br /&gt;
    &amp;lt;element name=&amp;quot;my:bar&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;/contents&amp;gt;&lt;br /&gt;
  &amp;lt;/declare&amp;gt;&lt;br /&gt;
 &amp;lt;/if&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;if&amp;gt;&amp;lt;element name=&amp;quot;my:bar&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;declare&amp;gt;&lt;br /&gt;
   &amp;lt;contents&amp;gt;&lt;br /&gt;
   &amp;lt;/contents&amp;gt;&lt;br /&gt;
  &amp;lt;/declare&amp;gt;&lt;br /&gt;
 &amp;lt;/if&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/dsd&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Element &amp;quot;foo&amp;quot; im [[Namensraum (XML)|XML-Namensraum]] &amp;quot;&amp;lt;nowiki&amp;gt;http://example.com&amp;lt;/nowiki&amp;gt;&amp;quot; kann die beiden Attribute &amp;quot;first&amp;quot; und &amp;quot;second&amp;quot; haben. Der Inhalt des &amp;quot;foo&amp;quot;-Elements kann ausschließlich aus dem &amp;quot;bar&amp;quot;-Element bestehen, welches es enthalten muss. Das &amp;quot;bar&amp;quot;-Element wiederum darf weder Attribute, Text noch weitere Subelemente enthalten, muss also leer sein.&lt;br /&gt;
&lt;br /&gt;
Ein XML-Dokument das bezüglich oben aufgeführter DSD-Spezifikation valide wäre, wäre z.&amp;amp;nbsp;B.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;foo xmlns=&amp;quot;http://example.com&amp;quot; second=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;bar/&amp;gt;&lt;br /&gt;
&amp;lt;/foo&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.brics.dk/DSD/dsd2.html Document Structure Description 2.0 Spezifikation] (englisch)&lt;br /&gt;
* [http://www.brics.dk/~amoeller/XML/schemas/ DSD 2.0 von den Autoren erklärt] (englisch)&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:XML-basierte Sprache]]&lt;/div&gt;</summary>
		<author><name>imported&gt;InternetArchiveBot</name></author>
	</entry>
</feed>