Saltar al contenido principal

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>