Schema
Een schema is een overzicht, diagram of model. In de informatica worden schema's vaak gebruikt om de structuur van verschillende soorten gegevens te beschrijven. Twee veelvoorkomende voorbeelden zijn databaseschema's en XML-schema's.
1. Databaseschema
Een databaseschema beschrijft de tabellen en bijbehorende velden in een database. Het kan worden weergegeven als een lijst met tabellen die elk een sublijst met velden bevatten, samen met het bijbehorende gegevenstype. Vaker worden databaseschema's echter weergegeven als visuele diagrammen. Vakken stellen afzonderlijke tabellen voor en lijnen tonen hoe de tabellen met elkaar verbonden zijn. In sommige gevallen bevatten deze lijnen pijlen om de gegevensstroom aan te geven. Databaseschema's kunnen ook opmerkingen bevatten die het doel van elke tabel en afzonderlijke velden beschrijven.
2. XML-schema
Een XML-schema definieert de elementen die een XML-bestand mag bevatten. Het biedt een specifieke structuur voor XML-gegevens, wat belangrijk is bij het delen van XML-bestanden tussen meerdere systemen. Door een XML-schema te definiëren, wordt ervoor gezorgd dat een XML-document of -feed geen onbekende waarden bevat, die parseerfouten kunnen veroorzaken. Hieronder staat een voorbeeld van een XML-schema, oftewel een XML-schemadefinitie (XSD).
<?xml version="1.0"?>
<xs:schema xmlns:xs="[url of a webpage that describes the schema]">
<xs:element name="email">
<xs:complexType>,
<xs:sequence>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="subject" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Schema's worden meestal gebruikt om databases en XML-bestanden te beschrijven, maar ze kunnen ook worden gebruikt om andere soorten gegevens te beschrijven. Een gameontwikkelaar kan bijvoorbeeld een schema definiëren om 3D-objecten te beschrijven die in een videogame worden gebruikt. Een softwareontwikkelaar kan een schema gebruiken om de structuur te beschrijven van een bestandsindeling die door een toepassing wordt gebruikt.
Test je kennis