Leer en inglés

Compartir a través de


Nodos Grupos de elecciones

En el Editor de BizTalk, puede insertar un nodo Grupo de opciones para contener otros nodos (o subárboles completos de nodos), solo uno de los cuales puede aparecer en un mensaje de instancia. Un determinado mensaje de instancia, si es válido, solo tendrá presente una de las elecciones. Los nodos contenidos deben ser nodos que se correspondan con elementos XML, pero no pueden ser nodos que se correspondan con atributos XML.

Nota

En el Editor de BizTalk, el nodo Grupo de opciones se representa con la cadena <Choice> en la vista de árbol de esquema. Si establece una referencia a un nodo Grupo de opciones, como x, se representa como <Group:x> en la vista de árbol de esquema.

Representación XSD

Cuando se inserta un nodo Grupo de opciones en un nodo Record , se inserta al final de cualquier otro nodo secundario dentro de la secuencia, elección o todo el elemento del nodo Record . En el ejemplo siguiente se muestra, en negrita, cómo se representa un nuevo nodo Grupo de opciones en el lenguaje de definición de esquema XML (XSD) como elemento de elección insertado al final del elemento de secuencia en un nodo Record (con nodos denominados para aclarar su identidad).

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

De forma predeterminada, el elemento choice recibe un valor de atributo minOccurs de cero (0), lo que indica que no se necesita ninguna de las opciones. Puede cambiar este valor en el ventana Propiedades de Visual Studio cuando se selecciona el nodo Grupo de opciones en la vista de árbol de esquema.

En el ejemplo siguiente se muestra el mismo elemento de elección con los elementos del elemento XSD correspondientes a dos nodos record subordinados.

<xs:element name="ContainingRecord">  
    <xs:complexType>  
        <xs:sequence>  
            <xs:element name="ExistingFieldElement" type="xs:string" />  
            <xs:choice minOccurs="1" maxOccurs="1">  
                <xs:element name="usAddress">  
                    <xs:complexType>  
                        <xs:sequence>  
                        </xs:sequence>  
                    </xs:complexType>  
                </xs:element>  
                <xs:element name="foreignAddress">  
                    <xs:complexType>  
                        <xs:sequence>  
                        </xs:sequence>  
                    </xs:complexType>  
                </xs:element>  
            </xs:choice>  
        </xs:sequence>  
    </xs:complexType>  
</xs:element>  

En este ejemplo, se usan dos nodos record del mismo nivel para describir el hecho de que un mensaje de instancia tendrá un registro con Estados Unidos información de dirección en él o un registro con información de dirección en todo el mundo. Además, las propiedades minOccurs y maxOccurs del nodo Grupo de opciones se han establecido en una (1) en el ventana Propiedades de Visual Studio, lo que da como resultado los atributos minOccurs y maxOccurs del elemento de elección que se establece en uno (1) en la representación XSD.

Consulte también