- From: McGlashan, Scott <scott.mcglashan@hp.com>
- Date: Wed, 19 Nov 2003 20:33:18 +0100
- To: <avallee@telisma.com>
- Cc: <www-voice@w3.org>
The Voice Browser Working Group (VBWG) is now completing its resolution of issues raised during the review of the Candidate Recommendation version of VoiceXML 2.0 [1]. Our apologies that it has taken so long to respond. Following the process described in [2] for advancement to Proposed Recommendation, this is the VBWG's formal response to the issues you raised. Please indicate before 26 November 2003 whether you are satisfied with the VBWG's resolutions, whether you think there has been a misunderstanding, or whether you wish to register an objection. If you do not think you can respond before 26 November, please let me know. The Director will appreciate a response whether you agree with the resolutions or not. However, if we do not hear from you at all by 26 November 2003, we will assume that you accept our resolutions. Below you will find a summary of the VBWG's responses to each of your issues. Please use the issue identifiers when responding. Thank you, Scott McGlashan Co-chair, Voice Browser Working Group [1] http://www.w3.org/TR/2003/CR-voicexml20-20030220/ [2] http://www.w3.org/2003/06/Process-20030618/ ----------------------------------------------- Issues you raised and VBWG responses ----------------------------------------------- Issues: http://lists.w3.org/Archives/Public/www-voice/2003JanMar/0003.html CR1-1 http://lists.w3.org/Archives/Public/www-voice/2003JanMar/0011.html CR2-1 http://lists.w3.org/Archives/Public/www-voice/2003JanMar/0021.html CR3-1 http://lists.w3.org/Archives/Public/www-voice/2003JanMar/0045.html CR4-1 Issue CR1-1 I have a question about where the error.badfetch is thrown and caught when a called document has non existent root document. Take the following scenario. The document 1 makes a transition to document 2 whose root document does not exist. document 1 and document 2 have error.badfetch handler at the document level. Where is the error supposed to be caught? I think the question could be the same for the following assertion: If a document's application attribute refers to a document that also has an application attribute specified, an error.semantic event is thrown. As i did not get any anwer to the message, i post my query one more time. The issue is as follows: In a document named doc1.vxml, which is a root document (do not specify an application attribute in the vxml tag), we transition to a document doc2.vxml. doc2.vxml refers to a non existing root document (i.e., application attribute set to doc2-root-unexisting.vxml). As the spec says (chap 1.5.2), " If a document refers to a non-existent application root document, an error.badfetch event is thrown ", an error.badfetch is thrown in this case. The question: where is the error thrown, or in other way, where do i put the error.badfetch handler to catch the error? I see 2 possibilities: - in doc1.vxml, which means that if a document refers to a non existing root document, it is a badfecth to try to get this document. - in doc2.vxml, which means that current document has to be initialized before getting and initializing the root document. I think this is the same issue with the following assertion in chapter 1.5.2: "If a document's application attribute refers to a document that also has an application attribute specified, an error.semantic event is thrown. " except that, in this case, the error.semantic could also be catched in the first root document. CR1-1 Resolution: rejected The specification allows the error.badfetch event to be thrown in either the referring document or the referred document. To guarantee that the error is caught, catch handlers need to be specified in both documents. This error handling pattern is illustrated in numerous tests in our implementation report. -------------------------------------------------------------- Issue CR2-1 I need some clarification on this point: 2.3.7.1 Blind Transfer With a blind transfer, an attempt is made to connect the original caller with the callee. Any prompts preceeding the <transfer>, as well as prompts within the <transfer>, are queued and played before the transfer attempt begins; bargein properties apply as normal. As the transfer is modal, a bargein can happen only if we define a grammar under transfer. But what is the consequence of matching the grammar with a recognition result while the prompt are played? What will be the value of the transfer item variable? Analysis: [Teemu Tingander] As you said that transfer is always modal the grammars that are inside <transfer> element are field item grammars and as such they should filled the field item specified by name tag. But cause this is a transfer and the specification says that match in grammar of transfer should terminate the transfer, my opinnion is that the field should be filled with 'near_end_diconnect' and put the shadow variables as they should be f$.duration=0.0,f$.utterance=<what-was-recognized>,f$.inputmode=inputmod e.. You have the point in here taht specification really does make difference with the cases The possible outcomes for a bridge transfer before the connection to the callee is established are: and The possible outcomes for a bridge transfer after the connection to the callee is established are: And it is not clearly said what should be done if bargein happens. This case should be defined in the first one of those cases. This same issue raises with blind as well as bridgerd transfer, and i used 'near_end_diconnect' to indicate that the caller has requested to cancel or disconnect the call. And what comes in tagging of those grammars, if someone really finds some reason for that, could explain it more deeply. [Ken Rehor] Your summary is correct. The result should be 'near_end_disconnect' if a caller cancels a transfer by barging in on a prompt, for both blind and bridge transfers. This is because prompts are queued and played to completion before the call transfer begins in either case. The shadow variables would be filled as you describe. This will be clarified in a future revision of the specification. CR2-1 Resolution: accepted Following the thread responses by Teema Tingander and Ken Rehor, the specification will be modified to indicate that the transfer item variable will have the value 'near_end_disconnect' if a caller cancels a transfer by barging in on a prompt, for both blind and bridge transfers and the shadow variables will be filled as described above. -------------------------------------------------------------- Issue CR3-1 chapter 2.4 of the VoiceXML (24 April 2002) Attributes of filled are: mode Either all (the default), or any. If any, this action is executed when any of the specified input items is filled by the last user input. If all, this action is executed when all of the mentioned input items are filled, and at least one has been filled by the last user input. A <filled> element in an input item cannot specify a mode. namelist The input items to trigger on. For a <filled> in a form, namelist defaults to the names (explicit and implicit) of the form's input items. A <filled> element in an input item cannot specify a namelist; the namelist in this case is the input item name. Note that control items are not permitted in this list. As i understand these attributes are not permitted in filled elements which are child of input item. But the spec do not say what happens in this case: - ignore those attributes? - throw an error (semantic)? Furthermore, control items items are not permitted in namelist. I suppose any other ECMA variable are not permitted neither. But how a voice browser should handle that case? Ignore the non-input variable elements or throw an error (semantic)? CR3-1 Resolution: accepted with modifications The specification will be modified so that upon encountering a document containing a <filled> element specifying either a 'mode' or 'namelist' attribute as a child of an input item, then an error.badfetch is thrown by the platform. In addition, the specification will also make clear that an error.badfetch is thrown when the document contains a <filled> element with a namelist attribute referencing a control item variable. -------------------------------------------------------------- Issue CR4-1 The bargeintype propery is defined as follows: "speech: The prompt will be stopped as soon as speech or DTMF input is detected. The prompt is stopped irrespective of whether or not the input matches a grammar. " Would this mean that even if no dtmf grammar is active and the user enter a dtmf, the prompt should be stopped? CR4-1 Resolution: accepted with modifications Yes. If bargeintype is speech then the prompt will be stopped as soon as speech or DTMF input is detected regardless of if it is a match or not. Having dtmf grammars active or not does not effect this. Setting the inputmodes to voice should prevent the DTMF from barging in on the prompts (although some platforms may have difficulty separating in-band DTMF from speech). The specification will be clarified as follows: addition of the words "and irrespective of which grammars are active." to the end of the sentence "The prompt is stopped irrespective of whether or not the input matches a grammar" from table 38.
Received on Wednesday, 19 November 2003 14:33:24 UTC