2009-08-19 8 views
2

Les instructions 'if' imbriquées sont-elles autorisées? ex:Les instructions 'if' imbriquées sont-elles autorisées dans vxml?

<if cond="1 == 1"> 
    <if cond="2 == 2"> 
     One is in fact equal to one and Two is in fact equal to two 
    <else/> 
     One is in fact equal to one but Two is never not equal to two 
    </if> 
<else/> 
    One is never not equal to one 
</if> 

Je me rends compte que je pouvais réécrire cette condition avec une déclaration « && », mais la logique que je suis en train de faire serait malpropre pour continuer à répéter dans la chaîne de si elseifs qu'il devraient être .

Répondre

3

Oui, selon la définition de schéma trouvée here. Un if est un élément executable.content, qui est autorisé à contenir une séquence de zéro ou plus éléments executable.content.

+0

Le doesnt spec dire beaucoup plus à ce sujet. Bon vous avez indiqué la définition du schéma. – Anupam

0

Ajouter au @ la réponse de John (car les commentaires ont une limite de mot):

Cela reste vrai pour VXML 2.1 ainsi: https://www.w3.org/TR/voicexml21/vxml.xsd

<xsd:element name="if"> 
<xsd:sequence> 
<xsd:group ref="executable.content" minOccurs="0" maxOccurs="unbounded"/> 
<xsd:sequence minOccurs="0" maxOccurs="unbounded"> 
<xsd:element ref="elseif"/> 
<xsd:group ref="executable.content" minOccurs="0" maxOccurs="unbounded"/> 
</xsd:sequence> 
<xsd:sequence minOccurs="0" maxOccurs="1"> 
<xsd:element ref="else"/> 
<xsd:group ref="executable.content" minOccurs="0" maxOccurs="unbounded"/> 
</xsd:sequence> 
</xsd:sequence> 
<xsd:attributeGroup ref="If.attribs"/> 
</xsd:complexType> 
</xsd:element> 
Questions connexes