Operador +
El operador +
permite indicar que un elemento aparece una o más veces, es decir, por lo menos tiene que aparecer una vez.
La cardinalidad sería 1-n (uno o más).
Un elemento
El operador +
a un elemento se aplica de la siguiente manera:
<!ELEMENT provincia (nombre, municipio+)>
En el caso anterior, se está definiendo que:
- El elemento
<nombre>
debe aparecer una vez. - El elemento
<municipio>
debe aparecer una o varias veces y después de<nombre>
.
Serían válidos los siguientes XML:
<provincia>
<nombre>Pontevedra</nombre>
<municipio>Vigo</municipio>
</provincia>
<provincia>
<nombre>Pontevedra</nombre>
<municipio>Marín</municipio>
<municipio>Vigo</municipio>
<municipio>Pontevedra</municipio>
<municipio>Vilagarcía de Arousa</municipio>
<municipio>Tui</municipio>
</provincia>
El siguiente XML no sería válido:
<provincia>
<nombre>Pontevedra</nombre>
</provincia>
Varios elementos
El operador +
aplicado a un grupo de elementos se realizaría de la siguiente forma:
<!ELEMENT provincia (nombre, (cp, municipio)+)>
En el caso anterior, se está definiendo que:
- El elemento
<nombre>
debe aparecer una vez. - Los elementos
<cp>
y<municipio>
deben aparecer una o varias veces (juntos) y después de<nombre>
.
Serían válidos los siguientes XML:
<provincia>
<nombre>Pontevedra</nombre>
<cp>36500</cp>
<municipio>Lalín</municipio>
</provincia>
<provincia>
<nombre>Pontevedra</nombre>
<cp>36980</cp>
<municipio>O Grove</municipio>
<cp>36500</cp>
<municipio>Lalín</municipio>
</provincia>
Los siguientes XML no serían válidos:
<provincia>
<nombre>Pontevedra</nombre>
</provincia>
<provincia>
<nombre>Pontevedra</nombre>
<municipio>O Grove</municipio>
<municipio>Lalín</municipio>
</provincia>
<provincia>
<nombre>Pontevedra</nombre>
<municipio>O Grove</municipio>
<cp>36500</cp>
<municipio>Lalín</municipio>
</provincia>