<?xml version=“1.0” encoding=“UTF-8”?> <xs:schema targetNamespace=“www.w3schools.com/map.xsd”
elementFormDefault="qualified" xmlns="http://www.w3schools.com/map.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name=“pointType”>
<xs:sequence> <xs:element name="x" type="xs:integer"/> <xs:element name="y" type="xs:integer"/> <xs:element name="z" type="xs:integer"/> </xs:sequence>
</xs:complexType>
<xs:complexType name=“entityType”>
<xs:sequence> <xs:element name="type" minOccurs="1" maxOccurs="1"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="[A-Z]([a-z])*"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="nametag" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence>
</xs:complexType>
<xs:complexType name=“dungeonType”>
<xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="description" type="xs:string"/> <xs:element name="entity" type="entityType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence>
</xs:complexType>
<xs:element name=“map”>
<xs:complexType> <xs:sequence> <xs:element name="node" minOccurs="2" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="point" type="pointType" minOccurs="1" maxOccurs="1"/> <xs:element name="dungeon" type="dungeonType" minOccurs="1" maxOccurs="1"/> <xs:element name="adjacent" minOccurs="1" maxOccurs="1"> <xs:complexType> <xs:sequence> <xs:element name="point" type="pointType" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType>
</xs:element>
</xs:schema>