1

特定の桁数を入力する必要があるが、入力がすべてゼロではないことも必要とする VXML 文法を構築する方法を探しています。

これの使用例は銀行番号です。たとえば、ルーティング番号に 9 桁の入力 (音声または DTMF は関係ありません) を強制したいのですが、すべての桁がゼロである必要はありません。(モジュラス チェックは今のところ無視してください。ここでは気にしません)。

と の文法構造を考える<one-of><item>、この質問の最後にあるルールなどのすべての可能性を列挙することで、これが可能であることがわかります。しかし、これはばかげているようです。私がまだ出会っていないより良い方法はありますか?どんな助けでも大歓迎です。

<rule>
    <one-of>
        <item>
            <item repeat="1">
                <item>1</item>
                <item>2</item>
                <item>3</item>
                <item>4</item>
                <item>5</item>
                <item>6</item>
                <item>7</item>
                <item>8</item>
                <item>9</item>
            </item>
            <item repeat="8">
                <item>0</item>
                <item>1</item>
                <item>2</item>
                <item>3</item>
                <item>4</item>
                <item>5</item>
                <item>6</item>
                <item>7</item>
                <item>8</item>
                <item>9</item>
            </item>
        </item>
        <item>
            <item repeat="1">
                <item>0</item>
                <item>1</item>
                <item>2</item>
                <item>3</item>
                <item>4</item>
                <item>5</item>
                <item>6</item>
                <item>7</item>
                <item>8</item>
                <item>9</item>
            </item>
            <item repeat="1">
                <item>1</item>
                <item>2</item>
                <item>3</item>
                <item>4</item>
                <item>5</item>
                <item>6</item>
                <item>7</item>
                <item>8</item>
                <item>9</item>
            </item>
            <item repeat="7">
                <item>0</item>
                <item>1</item>
                <item>2</item>
                <item>3</item>
                <item>4</item>
                <item>5</item>
                <item>6</item>
                <item>7</item>
                <item>8</item>
                <item>9</item>
            </item>
        </item>
        <item>
            <item repeat="2">
                <item>0</item>
                <item>1</item>
                <item>2</item>
                <item>3</item>
                <item>4</item>
                <item>5</item>
                <item>6</item>
                <item>7</item>
                <item>8</item>
                <item>9</item>
            </item>
            <item repeat="1">
                <item>1</item>
                <item>2</item>
                <item>3</item>
                <item>4</item>
                <item>5</item>
                <item>6</item>
                <item>7</item>
                <item>8</item>
                <item>9</item>
            </item>
            <item repeat="6">
                <item>0</item>
                <item>1</item>
                <item>2</item>
                <item>3</item>
                <item>4</item>
                <item>5</item>
                <item>6</item>
                <item>7</item>
                <item>8</item>
                <item>9</item>
            </item>
        </item>
                    etc....
    </one-of>
</rule>
4

1 に答える 1

1

このようなものはどうですか

<rule id="zero">
  <oneof>
    <item>0</item>
  </oneof>
</rule>

<rule id="nonzero">
  <oneof>
    <item>1</item>
    <item>2</item>
    <item>3</item>
    <item>4</item>
    <item>5</item>
    <item>6</item>
    <item>7</item>
    <item>8</item>
    <item>9</item>
  </oneof>
</rule>

<rule id="alldigits">
  <oneof>
    <item>
      <ruleref uri="#zero"/>
    </item>
    <item>
      <ruleref uri="#nonzero"/>
    </item>
  </oneof>
</rule>

<rule id="account-num">
  <oneof>
    <item>
      <item repeat="7">
       <ruleref uri="#alldigits"/>
      </item>
      <item repeat="1">
         <ruleref uri="#nonzero"/>
      </item>
    </item>
  </oneof>
</rule>

ルール account-num は、少なくとも 1 つの数値がゼロであってはならないことを指定します。

于 2013-01-30T21:44:37.640 に答える