Denis,
I see that example too, but I think it is
wrong. There are a lot of mistakes in the examples in the spec
(but that is all we have to go on). But if you read section 13.1, you
see:
You can leave out the
<prompt> ... </prompt> if:
* There is no need to specify
a prompt attribute (like bargein), and
* The prompt consists
entirely of PCDATA (contains no speech markups) or consists of just an
<audio> element.
But the <prompt> ...
</prompt> cannot be removed from this prompt due to the embedded speech
markups:
<prompt>Please <emp>say</emp> your
city.</prompt>
So I think the example is WRONG and that you need the
<prompt> tag when you do an
<enumerate>
I hate how we are
FORCED to program by example (can people tell it is a bad day here already,
just hoping not to offend anyone today).
The first sample of the "§ 7 MENUS" of the
specification has one...
Can you have a "naked" <enumerate>? I
thought the only thing you could have without the <prompt> tag was
an <audio> tag or plain text?
Denis
Froschauer écrivait ( Friday 8/24/01 03:48 PM ) dans le message
ci-dessous:
---
1.
I suggest
to modify enumerate_element() to recursively find a parent node of
type menu or field, like this :
OK ... good idea... it seems logical...
Prompt*
Prompt::enumerate_element(DOM_Node& prompt,
DOM_Node& en, ExeCont* exe){
int i;
int
choice_count = 1;
DOM_Node
par;
// XXX PATCH BEGIN
par = prompt;
while (1)
{
par =
par.getParentNode();
if(par == 0) return(NULL);
DOMString parname = par.getNodeName();
if(parname.equals("field")) break;
if(parname.equals("menu")) break;
}
// XXX PATCH END
Prompt* result = new
Prompt();
...
2. This solution work well, but only if I add a
<prompt> tag to embed the TTS
:
<noinput><prompt>Please say one of
<enumerate/></prompt></noinput>
Do you have an idea ?
Denis
yes... it's difficult, because enumerate_element take the
DOM_node adress of the parent prompt ...
-----Message d'origine-----
De :
vxi-discuss@metronomicon.com
[mailto:vxi-discuss@metronomicon.com]De
la part de Ken Smith
Envoyé : vendredi 24 août 2001 15:14
À :
'Jean-Michel Reghem'; vxi-discuss
Objet : RE: <enumerate/> in
<noinput/>
The "Prompt::enumerate_element()"
method insures that the parent node of the
<prompt> element
containing the <enumerate/> tag is a <field> or
<menu>
before performing the enumeration. Otherwise, it
just returns without doing
any
work.
-ken
-----Original Message-----
From:
Jean-Michel Reghem [mailto:jeanmichel.reghem@planetinternet.be]
Sent:
Friday, August 24, 2001 4:17 AM
To: vxi-discuss
Subject: bug:
<enumerate/> in <noinput/>
it seems that
<enumerate/> tag is not supported in noinput...
but, it's
specified in dtd ... and in §7 Menus of voiceXML specs...
is
someone knows why
???
CU
Jean-Michel
---