2011-07-12 18 views

Respuesta

0

Como Jordan ha dicho que permite extender tipoCompuesto, por ejemplo:

<xsd:complexType name="SizeType"> 
     <xsd:simpleContent> 
     <xsd:extension base="xsd:integer"> 
      <xsd:attribute name="system" type="xsd:token"/> 
     </xsd:extension> 
     </xsd:simpleContent> 
    </xsd:complexType> 

Sugiero ver estos ejemplos, han sido muy útil a mí:

http://www.datypic.com/books/defxmlschema/examples.html

+0

Thx amigos para las respuestas, pero todavía no lo entiendo. Cuando tengo un tipo complejo, puedo hacer todo esto sin el simple contenido? – Gobliins

+0

Creo que depende del tipo de complexType que desee. Vea este ejemplo, está el xml que desea y el correspondiente xsd: http: //www.datypic.com/books/defxmlschema/chapter13.html Como puede ver, no hay ningún contenido simple aquí. – Shilaghae

+0

descubrí que el contenido simple se usa cuando se usa la extensión o la base de restricción. – Gobliins

1

Básicamente le permite extender un elemento complexType. Si tiene un complexType "decimal", puede ampliarlo con simpleContent para que sea de tipo "moneda" agregando un signo de moneda como $ o € y un código como USD o EUR. 4.75 como decimal se convertiría en algo así como $ 4.75 USD con esas extensiones.

el artículo de Microsoft es bueno para una comprensión básica: http://msdn.microsoft.com/en-us/library/ms256106.aspx

+0

Thx amigos para las respuestas, pero todavía no lo entiendo. Cuando tengo un tipo complejo, puedo hacer todo esto sin el simple contenido? – Gobliins

4

Si desea un elemento cuyo valor es una fecha, y que tiene atributos, como esto:

<event type="birthday">2011-07-17</event> 

entonces necesita un tipo complejo con contenido simple (CT-SC). Se define tomando el tipo de contenido - xs: date - y extendiéndolo con una definición de atributo para el atributo "tipo".

6

<xsd:simpleContent> se usa cuando tiene un elemento que puede contener marcas estructurales (= tipo complejo) y el elemento no puede contener elementos secundarios. En otras palabras, el tipo de contenido de los elementos solo permite atributos y contenido de texto. Ejemplo: <foo bar="baz">foobar</foo> es un elemento definido con <xsd:complexType> y <xsd:simpleContent>.

Es cierto que el uso de <xsd:simpleContent> implica la creación de un tipo, ya sea por restricción o por extensión, pero en realidad todos los tipos complejos son implícitamente restricciones o extensiones. La extensión o restricción simplemente no es necesaria explícitamente escrita en el código porque hay una sintaxis abreviada que permite dejarlas fuera.