Herramientas de usuario

Herramientas del sitio


schema

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
schema [2014/04/27 16:40]
schema [2016/01/05 17:15] (actual)
Línea 3: Línea 3:
 ''​XML Schema''​ es un [[wp>​lenguaje de esquema]] utilizado para describir la estructura y las restricciones de los contenidos de los documentos XML de una forma muy precisa, más allá de las normas sintácticas impuestas por el propio lenguaje [[XML]]. Se consigue así una percepción del tipo de documento con un nivel alto de abstracción. Fue desarrollado por el [[wp>​World Wide Web Consortium]] (W3C) y alcanzó el nivel de recomendación en mayo de 2001.  ''​XML Schema''​ es un [[wp>​lenguaje de esquema]] utilizado para describir la estructura y las restricciones de los contenidos de los documentos XML de una forma muy precisa, más allá de las normas sintácticas impuestas por el propio lenguaje [[XML]]. Se consigue así una percepción del tipo de documento con un nivel alto de abstracción. Fue desarrollado por el [[wp>​World Wide Web Consortium]] (W3C) y alcanzó el nivel de recomendación en mayo de 2001. 
  
-== Terminología ==+=== Terminología ​===
  
 El término "XML Schema"​ es utilizado con varios significados dentro del mismo contexto de descripción de documentos, y es importante tener en cuenta las siguientes consideraciones:​ El término "XML Schema"​ es utilizado con varios significados dentro del mismo contexto de descripción de documentos, y es importante tener en cuenta las siguientes consideraciones:​
  
-"XML Schema"​ (Esquema XML) es el nombre oficial otorgado a la recomendación del W3C, que elaboró el primer lenguaje de esquema separado de XML (la definición de tipo de documentos ([[wp>​DTD]]) forma parte de XML).  +  *"XML Schema"​ (Esquema XML) es el nombre oficial otorgado a la recomendación del W3C, que elaboró el primer lenguaje de esquema separado de XML (la definición de tipo de documentos ([[wp>​DTD]]) forma parte de XML).  
-Es habitual referirse a los esquemas como "XML schema"​ de forma genérica, pero se recomienda utilizar el término “documento esquema” (''​schema document''​) o "​definición de esquema"​(''​schema definition''​),​ y reservar “XML Schema” para la denominación de este lenguaje específico.+  ​* ​Es habitual referirse a los esquemas como "XML schema"​ de forma genérica, pero se recomienda utilizar el término “documento esquema” (''​schema document''​) o "​definición de esquema"​(''​schema definition''​),​ y reservar “XML Schema” para la denominación de este lenguaje específico.
  
  
-== W3C Schema XML ==+=== W3C Schema XML ===
  
 El ''​[[wp>​World Wide Web Consortium]] (W3C)''​ empezó a trabajar en XML Schema en 1998. La primera versión se convirtió en una recomendación oficial en mayo de 2001. Una segunda edición revisada está disponible desde octubre de 2004.  El ''​[[wp>​World Wide Web Consortium]] (W3C)''​ empezó a trabajar en XML Schema en 1998. La primera versión se convirtió en una recomendación oficial en mayo de 2001. Una segunda edición revisada está disponible desde octubre de 2004. 
Línea 21: Línea 21:
   * XML Schema Parte 2 Datatypes: complementa la Parte 1 con la definición de los tipos de datos incorporados en XML Schema y sus restricciones.   * XML Schema Parte 2 Datatypes: complementa la Parte 1 con la definición de los tipos de datos incorporados en XML Schema y sus restricciones.
  
-== Componentes ==+=== Componentes ​===
  
 XML Schema es un lenguaje de esquema escrito en XML, basado en la gramática y pensado para proporcionar una mayor potencia expresiva que las [[wp>​DTD]],​ menos capaces al describir los documentos a nivel formal. XML Schema es un lenguaje de esquema escrito en XML, basado en la gramática y pensado para proporcionar una mayor potencia expresiva que las [[wp>​DTD]],​ menos capaces al describir los documentos a nivel formal.
Línea 27: Línea 27:
 Los documentos esquema (usualmente con extensión .xsd de ''​XML Schema Definition''​ (XSD)) se concibieron como una alternativa a las DTD, más complejas, intentando superar sus puntos débiles y buscar nuevas capacidades a la hora de definir estructuras para documentos XML. El principal aporte de XML Schema es el gran número de [[wp>​tipos de datos]] que incorpora. De esta manera, XML Schema aumenta las posibilidades y funcionalidades de aplicaciones de procesado de datos, incluyendo tipos de datos complejos como fechas, números y strings. ​ Los documentos esquema (usualmente con extensión .xsd de ''​XML Schema Definition''​ (XSD)) se concibieron como una alternativa a las DTD, más complejas, intentando superar sus puntos débiles y buscar nuevas capacidades a la hora de definir estructuras para documentos XML. El principal aporte de XML Schema es el gran número de [[wp>​tipos de datos]] que incorpora. De esta manera, XML Schema aumenta las posibilidades y funcionalidades de aplicaciones de procesado de datos, incluyendo tipos de datos complejos como fechas, números y strings. ​
  
-=== Tipos de componentes ​===+== Tipos de componentes ==
 Los esquemas XML Schema superan muchas de las limitaciones y debilidades de las DTDs. Fue diseñado completamente alrededor de [[wp>#​Namespaces|namespaces]] y soporta tipos de datos típicos de los [[wp>​lenguajes de programación]],​ como también tipos personalizados simples y complejos. Un esquema se define pensando en su uso final. Los esquemas XML Schema superan muchas de las limitaciones y debilidades de las DTDs. Fue diseñado completamente alrededor de [[wp>#​Namespaces|namespaces]] y soporta tipos de datos típicos de los [[wp>​lenguajes de programación]],​ como también tipos personalizados simples y complejos. Un esquema se define pensando en su uso final.
  
-== Namespaces ​==+= Namespaces =
  
 La programación en Schema XML se basa en ''​namespaces''​ o [[wp>​espacio de nombres|espacios de nombres]] Podemos encontrar una analogía entre éstos y los llamados ''​packages''​ en [[wp>​Lenguaje de programación Java|Java]]. Cada namespace contiene elementos y atributos que están estrechamente relacionados con el namespace. Así, a la hora de definir un elemento o un atributo de un namespace, siempre se creará una conexión entre los diferentes campos de éste. Además, esta forma de trabajar nos permite relacionar elementos que no están en el mismo namespace. La programación en Schema XML se basa en ''​namespaces''​ o [[wp>​espacio de nombres|espacios de nombres]] Podemos encontrar una analogía entre éstos y los llamados ''​packages''​ en [[wp>​Lenguaje de programación Java|Java]]. Cada namespace contiene elementos y atributos que están estrechamente relacionados con el namespace. Así, a la hora de definir un elemento o un atributo de un namespace, siempre se creará una conexión entre los diferentes campos de éste. Además, esta forma de trabajar nos permite relacionar elementos que no están en el mismo namespace.
  
 Después de escribir un Schema XML se puede confirmar la correcta realización mediante la validación de esquemas XML. Después de escribir un Schema XML se puede confirmar la correcta realización mediante la validación de esquemas XML.
- 
-== Ejemplo == 
  
 Un ejemplo de la estructura de un documento esquema vacío sería el siguiente: Un ejemplo de la estructura de un documento esquema vacío sería el siguiente:
Línea 69: Línea 67:
 Esta definición de esquema dictamina que cualquier documento XML que esté en conformidad con él, deberá tener un elemento raíz que se llame “Libro” el cuál tendrá tres hijos (elementos anidados) y un atributo. Los hijos son “Título”,​ ”Editorial” que deben aparecer una vez y “Autores” que puede aparecer de una a diez veces. El hecho de que estén agrupados en una secuencia indica que los elementos deben aparecer en orden, es decir, primero el “Título”,​ luego los “Autores” y por último la “Editorial”. Los tres elementos son de tipo ''​string''​. El atributo de libro se llama “precio” y es de tipo ''​double''​. Esta definición de esquema dictamina que cualquier documento XML que esté en conformidad con él, deberá tener un elemento raíz que se llame “Libro” el cuál tendrá tres hijos (elementos anidados) y un atributo. Los hijos son “Título”,​ ”Editorial” que deben aparecer una vez y “Autores” que puede aparecer de una a diez veces. El hecho de que estén agrupados en una secuencia indica que los elementos deben aparecer en orden, es decir, primero el “Título”,​ luego los “Autores” y por último la “Editorial”. Los tres elementos son de tipo ''​string''​. El atributo de libro se llama “precio” y es de tipo ''​double''​.
  
-== Tutoriales ==+=== Tutoriales ​===
  
   * [[http://​www.xml.com/​pub/​a/​2000/​11/​29/​schemas/​part1.html Tutorial online con ejemplo]]   * [[http://​www.xml.com/​pub/​a/​2000/​11/​29/​schemas/​part1.html Tutorial online con ejemplo]]
Línea 75: Línea 73:
   * [[http://​www-128.ibm.com/​developerworks/​edu/​x-dw-xvalid-i.html?​S_TACT=105AGX59&​S_CMP=EDU-GR&​ca=dgr-wikiaXMLschema Validación de Schema XML]]   * [[http://​www-128.ibm.com/​developerworks/​edu/​x-dw-xvalid-i.html?​S_TACT=105AGX59&​S_CMP=EDU-GR&​ca=dgr-wikiaXMLschema Validación de Schema XML]]
  
-== Enlaces externos ==+=== Enlaces externos ​===
  
   * [[http://​www.w3.org/​XML/​Schema Esquemas en el sitio de World Wide Web Consortium]]   * [[http://​www.w3.org/​XML/​Schema Esquemas en el sitio de World Wide Web Consortium]]
schema.txt · Última modificación: 2016/01/05 17:15 (editor externo)