Me pregunto cómo maneja la especificación del esquema XML estos casos:
<xsd:element minOccurs="1" name="asdf"/>
No se da maxOccurs -> ¿Es esta la cardinalidad [1..1]?
<xsd:element minOccurs="5" maxOccurs="2" name="asdf"/>
Supongo que esto es simplemente inválido?
<xsd:element maxOccurs="2" name="asdf"/>
¿Es esta la cardinalidad [0..2] o [1..2]?
¿Existe una definición "oficial" sobre cómo la especificación del Esquema XML maneja estos casos?
Nueva respuesta ampliada a una vieja pregunta común ...
Valores predeterminados
minOccurs
ymaxOccurs
valor predeterminado para1
.Casos comunes explicados
significa
A
es obligatorios y deben aparecer exactamente una vez .significa
A
es opcional y puede aparecer como máximo una vez .significa
A
es requiereny pueden repetirse un número ilimitado de veces .medio
A
es opcional y puede repetirse un número ilimitado de veces .Ver también
Esquema XML W3C Parte 0: Manual
Esquema XML W3C Parte 1: Estructuras Segunda edición
fuente
Respuesta corta:
Como está escrito en xsd:
Si proporciona un atributo con número, entonces el número es límite. De lo contrario, el atributo debería aparecer exactamente una vez .
fuente
ejemplo:
XML
XSD:
XSL:
Resultado:
fuente