¿Diferencia entre xs y xsd en el archivo de esquema XML?


83

¿Cuál es la diferencia entre los prefijos xsy xsden los archivos de esquema XML?


6
es solo un prefijo de espacio de nombres XML para los espacios de nombres del esquema XML, que básicamente puede elegir como desee; xs y xsd son solo los más utilizados
marc_s

Respuestas:


106

De la especificación XSD 1.0 en w3.org :

La representación XML de los componentes del esquema utiliza un vocabulario identificado por el nombre del espacio de nombres http://www.w3.org/2001/XMLSchema . Para mayor brevedad, el texto y los ejemplos de esta especificación utilizan el prefijo xs: para representar este espacio de nombres; en la práctica, se puede utilizar cualquier prefijo.

al final xs o xsd son solo prefijos. XSD se usa más, por ejemplo, en esquemas de Microsoft.

Lo importante es cómo declaras el espacio de nombres.

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  ...
</xs:schema>

o

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  ...
</xsd:schema>

debería ser equivalente.


7
Entonces, la respuesta corta es, ¿no hay diferencia?
Koray Tugay

¡no! Me tomó un tiempo resolver esto, no solo xs/ xsd, sino en general cómo funcionan los esquemas XML. Además, conocí la diferencia entre DTD y XSD.
ARK


8

Los xs:y xsd:se denominan prefijos de espacio de nombres. Se declaran usandoxmlns elementos en el elemento raíz.

Por convención, la gente tiende a elegir entre xs:o xsd:y mapear eso http://www.w3.org/2001/XMLSchema. Tener ambos en un solo documento es confuso y debe evitarse.

Verifique sus xmlnsdeclaraciones para determinar cuáles son los espacios de nombres.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.