¿Cuál es la diferencia entre xsd:include
y xsd:import
? ¿Cuándo usarías uno en lugar de otro y cuándo no importaría?¿Cuál es la diferencia entre xsd: include y xsd: import?
Respuesta
La diferencia fundamental entre include
y import
es que se debe utilizar import
para referirse a las declaraciones o definiciones que se encuentran en un diferente espacio de nombres objetivo y debe utilizar include
para referirse a las declaraciones o definiciones que son (o serán) en el mismo espacio de nombres de destino.
Fuente: https://web.archive.org/web/20070804031046/http://xsd.stylusstudio.com/2002Jun/post08016.htm
También estoy interesado en esto. La única explicación que he encontrado es que xsd:include
se usa para inclusiones dentro del espacio de nombres, mientras que xsd:import
es para la inclusión entre espacios de nombres.
cita directa de MSDN: <xsd:import> Element, Remarks section
La diferencia entre el incluyen elemento y el elemento importación es que importación elemento permite referencias a los componentes de esquema de documentos de esquema con diferentes espacios de nombres de destino y incluyen elemento agrega los componentes de esquema de otro esquema docum que tienen el mismo espacio de nombres de destino (o espacio de nombres de destino no especificado) para el esquema contenedor. En resumen, el elemento de importación le permite usar componentes de esquema desde cualquier esquema; el elemento include le permite agregar todos los componentes de un esquema incluido al esquema contenedor.
-1: ¿no es eso lo que [dijo] (http://stackoverflow.com/a/2357988/76337)? –
Uso xsd:include para traer un XSD de la misma o ningún espacio de nombres.
Uso xsd:import para traer un XSD de un espacio de nombres diferente.
Otra diferencia es que <import>
permite importar haciendo referencia a otro espacio de nombres. <include>
solo permite importar haciendo referencia a un URI del esquema de inclusión previsto. Esa es definitivamente otra diferencia que la importación de espacio de nombres entre intra.
Por ejemplo, el validador de esquema xml ya puede conocer las ubicaciones de todos los esquemas por el espacio de nombres ya. Especialmente teniendo en cuenta que hacer referencia a espacios de nombres XML por URI puede ser problemático en diferentes sistemas donde classpath: // no significa nada, o donde http: // no está permitido, o donde algunos URI no apuntan a lo mismo que lo hace en otro sistema
Ejemplo de código de importación válidos y no válidos e incluye:
Válido:
<xsd:import namespace="some/name/space"/>
<xsd:import schemaLocation="classpath://mine.xsd"/>
<xsd:include schemaLocation="classpath://mine.xsd"/>
no válido:
<xsd:include namespace="some/name/space"/>
"incluyen" Componente - Este componente trae todas las declaraciones y definiciones de un documento de esquema externo en el esquema actual. El documento de esquema externo debe tener el mismo espacio de nombres de destino como el esquema actual. Los componentes "incluir" se usan generalmente para construir un nuevo esquema extendiendo los documentos de esquema existentes.
"importación" Componente - Este componente ofrece las mismas funciones que el componente de "incluir" salvo que el documento de esquema incluido tiene un objetivo diferente espacio de nombres. Los componentes de "importación" se usan generalmente para construir un nuevo esquema tomando prestados declaraciones de elementos de documentos de esquema existentes desde otros espacios de nombres.
Usar xsd: include trae todas las declaraciones y definiciones de un documento de esquema externo en el esquema actual.
Uso xsd: import para traer un XSD de un espacio de nombres diferente y se utiliza para construir un nuevo esquema mediante la extensión de los documentos de esquema existentes ..
- 1. Diferencia entre xsd: key y xsd: unique
- 2. cuál es la diferencia entre XSD y WSDL
- 3. ¿Cuál es la diferencia entre IDREF e IDREFS en XSD?
- 4. Diferencia/similitudes entre xsd: cualquiera y xsd: anyType
- 5. ¿Cuál es la diferencia entre import modx y modx import *?
- 6. XSD: diferencia entre Elemento y Atributo
- 7. ¿Cuál es la diferencia entre la elección XSD y la enumeración?
- 8. ¿Cuál es la diferencia entre svn import y checkout?
- 9. iPhone SDK: ¿cuál es la diferencia entre #import y @class?
- 10. ¿Cuál es la diferencia entre @class y import
- 11. ¿Cuál es la diferencia entre include y require en Ruby?
- 12. Camino medio entre XSD todo y secuencia XSD
- 13. ¿Cuál es la diferencia entre import java.util. *; e importar java.util.Date; ?
- 14. Cuál es la diferencia entre Add-PsSnapIn e Import-Module
- 15. Xsd y la herencia
- 16. ¿Cuál es la diferencia entre require e include con php?
- 17. ¿Cuál es la diferencia entre PHP require e include?
- 18. Erlang: ¿cuál es la diferencia entre "include_lib" e "include"?
- 19. Cómo elegir entre DTD y XSD
- 20. ¿Cómo uso include en un xsd incrustado que hace referencia a otro xsd incrustado?
- 21. ¿Hay un XSD para XSD, un Meta-XSD?
- 22. XS vs tipos xsd
- 23. Diferencia entre @import y enlace en CSS
- 24. Ruby gem para consumir Webservices wsdl con xsd: import
- 25. ¿Cuál es la diferencia entre # import y @class, y cuándo debo usar uno sobre el otro?
- 26. HyperJaxb3 y xsd: anyType
- 27. Validar un esquema XSD usando XSD
- 28. diferencia de rendimiento entre <c: import url = "child.jsp" /> y <jsp: include ...>
- 29. ¿Cuál es la diferencia entre Add-PSSnapin y Import-Module en PowerShell?
- 30. Diferencia entre xs y xsd en el archivo de esquema XML?
me encontré con estas explicaciones útiles, así: http: //xsd.stylusstudio .com/2005Mar/post05007.htm http://msdn.microsoft.com/en-us/library/ms256480.aspx – Pops
La publicación de stylusstudio a la que se refiere @Pops está aquí: https://web.archive.org/ web/20140831005739/http: //xsd.stylusstudio.com/2005Mar/post05007.htm – tony19