Compartir a través de


Derivación de tipo simple mediante el mecanismo de unión

Al derivar un nuevo tipo simple a partir de un tipo simple existente con el mecanismo de unión, se especifica que el valor de este atributo o elemento puede ser de más de un tipo, según una lista de tipos que proporcione. Por ejemplo, puede especificar que un valor de atributo o elemento es una fecha, una hora o un valor de fecha y hora.

Para obtener información completa acerca de cómo derivar nuevos tipos simples mediante el mecanismo de unión, consulte el sitio Web de W3C. Para obtener varios vínculos a este y otros sitios web, consulte Recursos XSD en la Web.

Para derivar un tipo simple como unión de varios tipos posibles, seleccione el nodo Elemento de campo correspondiente o el nodo Atributo de campo en el árbol de esquema y, a continuación, en el ventana Propiedades, seleccione un tipo simple en la lista desplegable de la propiedad Tipo de datos base. En cuanto haya seleccionado un valor para esta propiedad, la propiedad Derived By cambia automáticamente de su valor predeterminado a Restriction, que actúa como valor predeterminado para la derivación de tipos. Debe cambiar la propiedad Derived By de Restricción a Unión, lo que hace que se cambie el nombre de la propiedad Tipo de datos base como la propiedad Member Types (incidentalmente, la propiedad cuyo nombre se mueve a una posición diferente en la lista de propiedades debido a la ordenación alfabética de las propiedades).

Por último, puede usar las casillas de la lista de comprobación desplegable Tipos de miembros para seleccionar tipos adicionales para permitir los valores correspondientes en los mensajes de instancia.

Cuando cambie por primera vez un nodo Elemento de campo o un nodo Atributo de campo de tener un tipo de datos base (iniciando así el proceso de derivación de tipo simple) y, a continuación, establezca la propiedad Derived By en Union, puede observar el siguiente cambio en el fragmento correspondiente en la vista XSD.

  • Antes, con un nodo Elemento de campo recién insertado denominado DatesAndOrTimes.

    <xs:element name="ContainingRecord">  
        <xs:complexType>  
            <xs:sequence>  
    
            </xs:sequence>  
        </xs:complexType>  
    </xs:element>  
    
    
  • Después de establecer la propiedad Tipo de datos base en xs:date y establecer la propiedad Derived By en Union (después de la cual se cambia el nombre de la propiedad Tipo de datos base para que sea la propiedad Member Types ) y, a continuación, seleccione xs:datetime y xs:time como tipos permitidos adicionales en la lista desplegable Tipos de miembros .

    <xs:element name="ContainingRecord">  
        <xs:complexType>  
            <xs:sequence>  
    
            </xs:sequence>  
        </xs:complexType>  
    </xs:element>  
    
    

Consulte también

Derivación de tipos simples