2009-08-19 10 views
2

Sind verschachtelte "if" -Anweisungen zulässig? ex:Sind verschachtelte 'if' Anweisungen in vxml erlaubt?

<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> 

Ich weiß, ich könnte diese Bedingung umschreiben mit einer ‚&&‘ Aussage, aber die Logik, die ich wäre chaotisch zu tun versuchen, in der Kette der Wiederholung zu halten, wenn elseifs, dass es sein müßte .

Antwort

3

Ja, entsprechend der gefundenen Schemadefinition here. Ein if ist ein executable.content Element, das eine Sequenz von null oder mehr executable.content Elemente enthalten darf.

+0

Die Spezifikation tut sagen viel darüber. Gut, dass Sie auf die Schemadefinition verwiesen haben. – Anupam

0

zum @ Hinzufügen von John Antwort (seit Kommentare ein Wort Grenze haben):

Dies bleibt wahr für VXML 2.1 auch: 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>