eSports
XML eSports
<?xml version="1.0" encoding="UTF-8"?>
<torneo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="01.xsd">
<infoGeneral>
<evento>LCK</evento>
<fechaInicio>2026-03-13</fechaInicio>
<premio>70000</premio>
<juego>
<plataforma>PC</plataforma>
</juego>
</infoGeneral>
<equipos>
<equipo>
<nombre>T1</nombre>
<pais>Corea del Sur</pais>
<entrenador>KkOma</entrenador>
<patrocinador marca="Red Bull" />
<jugadores>
<jugador idplayer="JUG-001">
<nickname>Doran</nickname>
<edad>25</edad>
<posicion>Top</posicion>
<rango>Challenger</rango>
</jugador>
<jugador idplayer="JUG-002">
<nickname>Oner</nickname>
<edad>27</edad>
<posicion>Jungle</posicion>
<rango>Challenger</rango>
</jugador>
<jugador idplayer="JUG-003">
<nickname>Faker</nickname>
<edad>29</edad>
<posicion>Mid</posicion>
<rango>Challenger</rango>
</jugador>
<jugador idplayer="JUG-004">
<nickname>Peyz</nickname>
<edad>22</edad>
<posicion>ADC</posicion>
<rango>Challenger</rango>
</jugador>
<jugador idplayer="JUG-005">
<nickname>Keria</nickname>
<edad>21</edad>
<posicion>Support</posicion>
<rango>Challenger</rango>
</jugador>
</jugadores>
</equipo>
<equipo>
<nombre>C9</nombre>
<pais>Estados unidos</pais>
<entrenador>ElMillor</entrenador>
<patrocinador marca="Monster" />
<jugadores>
<jugador idplayer="JUG-006">
<nickname>Thanatos</nickname>
<edad>26</edad>
<posicion>Top</posicion>
<rango>Challenger</rango>
</jugador>
<jugador idplayer="JUG-007">
<nickname>Blaber</nickname>
<edad>17</edad>
<posicion>Jungle</posicion>
<rango>Challenger</rango>
</jugador>
<jugador idplayer="JUG-008">
<nickname>APA</nickname>
<edad>28</edad>
<posicion>Mid</posicion>
<rango>Challenger</rango>
</jugador>
<jugador idplayer="JUG-009">
<nickname>Zven</nickname>
<edad>27</edad>
<posicion>ADC</posicion>
<rango>Challenger</rango>
</jugador>
<jugador idplayer="JUG-010">
<nickname>Vulcan</nickname>
<edad>31</edad>
<posicion>Support</posicion>
<rango>Challenger</rango>
</jugador>
</jugadores>
</equipo>
</equipos>
<partidas>
<partida>
<semana>2</semana>
<mvp>Faker</mvp>
<fase>
<semis>Semi-Finales</semis>
</fase>
</partida>
</partidas>
</torneo>
DTD eSports
<!ELEMENT torneo (infoGeneral,equipos,partidas)>
<!ATTLIST torneo xmlns:xsi CDATA #REQUIRED
xsi:noNamespaceSchemaLocation CDATA #REQUIRED>
<!ELEMENT infoGeneral (evento,fechaInicio,premio,juego)>
<!ELEMENT evento (#PCDATA)>
<!ELEMENT fechaInicio (#PCDATA)>
<!ELEMENT premio (#PCDATA)>
<!ELEMENT juego (plataforma)>
<!ELEMENT plataforma (#PCDATA)>
<!ELEMENT equipos (equipo+)>
<!ELEMENT equipo (nombre,pais,entrenador?,patrocinador,jugadores)>
<!ELEMENT nombre (#PCDATA)>
<!ELEMENT pais (#PCDATA)>
<!ELEMENT entrenador (#PCDATA)>
<!ELEMENT patrocinador EMPTY>
<!ATTLIST patrocinador
marca CDATA #REQUIRED
categoria CDATA #IMPLIED>
<!ELEMENT jugadores (jugador+)>
<!ELEMENT jugador (nickname,edad,posicion,rango)>
<!ATTLIST jugador idplayer ID #REQUIRED>
<!ELEMENT nickname (#PCDATA)>
<!ELEMENT edad (#PCDATA)>
<!ELEMENT posicion (#PCDATA)>
<!ELEMENT rango (#PCDATA)>
<!ELEMENT partidas (partida+)>
<!ELEMENT partida (semana,mvp,fase)>
<!ELEMENT semana (#PCDATA)>
<!ELEMENT mvp (#PCDATA)>
<!ELEMENT fase (elim | grupo | cuartos | semis | final)>
<!ELEMENT elim (#PCDATA)>
<!ELEMENT grupo (#PCDATA)>
<!ELEMENT cuartos (#PCDATA)>
<!ELEMENT semis (#PCDATA)>
<!ELEMENT final (#PCDATA)>
XSD eSports
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:annotation>
<xs:documentation>Esquema de validación para el torneo anual de eSports.</xs:documentation>
<xs:appinfo>https://lolesports.com/</xs:appinfo>
</xs:annotation>
<xs:element name="torneo">
<xs:complexType>
<xs:sequence>
<xs:element name="infoGeneral">
<xs:complexType>
<xs:all>
<xs:element name="evento" type="xs:string"/>
<xs:element name="fechaInicio" type="xs:date"/>
<xs:element name="premio" type="xs:decimal"/>
<xs:element name="juego">
<xs:complexType>
<xs:sequence>
<xs:element name="plataforma" type="xs:string" fixed="PC"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="equipos">
<xs:complexType>
<xs:sequence>
<xs:element name="equipo" minOccurs="2" maxOccurs="16">
<xs:complexType>
<xs:sequence>
<xs:element name="nombre" type="xs:string"/>
<xs:element name="pais" type="xs:string"/>
<xs:element name="entrenador" type="xs:string" minOccurs="0"/>
<xs:element name="patrocinador">
<xs:complexType>
<xs:attribute name="marca" type="xs:string" use="required"/>
<xs:attribute name="categoria" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="jugadores">
<xs:complexType>
<xs:sequence>
<xs:element name="jugador" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="nickname" type="xs:string"/>
<xs:element name="edad">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="16"/>
<xs:maxInclusive value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="posicion">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Top"/>
<xs:enumeration value="Mid"/>
<xs:enumeration value="Jungle"/>
<xs:enumeration value="ADC"/>
<xs:enumeration value="Support"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="rango" type="xs:string"/>
</xs:sequence>
<xs:attribute name="idplayer" use="required">
<xs:simpleType>
<xs:restriction base="xs:ID">
<xs:pattern value="JUG-\d{3}"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="partidas">
<xs:complexType>
<xs:sequence>
<xs:element name="partida" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="semana" type="xs:integer"/>
<xs:element name="mvp" type="xs:string"/>
<xs:element name="fase">
<xs:complexType>
<xs:choice>
<xs:element name="elim" type="xs:string"/>
<xs:element name="grupo" type="xs:string"/>
<xs:element name="cuartos" type="xs:string"/>
<xs:element name="semis" type="xs:string"/>
<xs:element name="final" type="xs:string"/>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="servidor" type="xs:string" default="Europa"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>