› Foros › PC › Software libre
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE universidad[
<!ELEMENT universidad (alumno)*>
<!ELEMENT alumno ((dni|pasaporte,pais_procedencia),nombre,apellidos,fecha_nacimiento,direccion_postal*,telefono*,cuentas_correo*)>
<!ELEMENT dni (#PCDATA)>
<!ELEMENT pasaporte (#PCDATA)>
<!ELEMENT nombre (#PCDATA)>
<!ELEMENT apellidos (#PCDATA)>
<!ELEMENT fecha_nacimiento (#PCDATA)>
<!ELEMENT direccion_postal (#PCDATA)>
<!ELEMENT telefono (#PCDATA)>
<!ELEMENT cuentas_correo (#PCDATA)>
]>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE universidad[
<!ELEMENT universidad (alumno)*>
<!ELEMENT alumno ((dni|pasaporte),nombre,apellidos,fecha_nacimiento,direccion_postal*,telefono*,cuentas_correo*)>
<!ELEMENT dni (#PCDATA)>
<!ELEMENT pasaporte (numero,pais)>
<!ELEMENT numero (#PCDATA)>
<!ELEMENT pais (#PCDATA)>
<!ELEMENT nombre (#PCDATA)>
<!ELEMENT apellidos (#PCDATA)>
<!ELEMENT fecha_nacimiento (#PCDATA)>
<!ELEMENT direccion_postal (#PCDATA)>
<!ELEMENT telefono (#PCDATA)>
<!ELEMENT cuentas_correo (#PCDATA)>
]>
<?xml version="1.0" encoding="UTF-8"?>
<supermercado xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
xs:noNamespaceSchemaLocation="siete.xsd">
<articulo id="1">
<descripcion>Leche desnatada</descripcion>
<marca>Pascual</marca>
<medida>1 L</medida>
<seccion>Leche y batidos</seccion>
</articulo>
<articulo id="2">
<descripcion>Leche entera</descripcion>
<marca>Puleva</marca>
<medida>1,5 L</medida>
<seccion>Leche y batidos</seccion>
<oferta>Lote descuento</oferta>
<oferta>Dos por uno</oferta>
<perecedero>
<fabricacion>Enero 2010</fabricacion>
</perecedero>
</articulo>
<articulo id="3">
<descripcion>Tomate</descripcion>
<medida>1 Kg </medida>
<seccion>Frutas y verduras</seccion>
<perecedero>
<caducidad>Febrero 2010</caducidad>
</perecedero>
</articulo>
</supermercado>
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" version="0.1" xml:lang="es">
<xs:element name="supermercado">
<xs:complexType>
<xs:sequence>
<xs:element name="articulo" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="descripcion" type="xs:string"/>
<xs:element name="marca" type="xs:string" minOccurs="0"/>
<xs:element name="medida" type="xs:string"/>
<xs:element name="seccion" type="xs:string"/>
<xs:element name="oferta" type="xs:string" minOccurs="0"/>
<xs:element name="perecedero" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="fabricacion" type="xs:string" minOccurs="0"/>
<xs:element name="caducidad" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="id" type="xs:integer"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
xexio escribió:Como se puede observar en el documento 2, hay 2 ofertas. El problema esta ahi, si quito una me valida. Es decir con una sola oferta si que me valida, pero tal y como esta ahora no. No comprendo donde puede estar el problema porque se supone que si le añado el minOccurs="0" establece que puede o que no puede aparecer tambien tendria que poner el, maxOccurs?