Closed Bug 270861 Opened 20 years ago Closed 20 years ago

X+V web pages are displaying the VoiceXML content on the page

Categories

(Core :: DOM: HTML Parser, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: whitemar, Unassigned)

References

()

Details

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0

When viewing an X+V web page, the VoiceXML content should not be displayed on the
page. Even though Firebird does not support X+V, it should suppress the VoiceXML
content which is enclosed in a namspace.

The multimodal pizza example (which I wrote) shows this problem:
  <http://www-306.ibm.com/software/pervasive/multimodal/pizza/>

At the top of the page you can see the content of the <prompt>, <block> and 
<grammar> tags. This is content that should be passed to a VoiceXML interpreter
and not displayed. The idea of multimodal access is that in the absence of a
VoiceXML interpreter, the user should be able to interact with the page without
voice.

Reproducible: Always
Steps to Reproduce:
1. http://www-306.ibm.com/software/pervasive/multimodal/pizza/

Actual Results:  
The VoiceXML content is visible on the page.

Expected Results:  
The VoiceXML content should not be visible on the page.
parser
Assignee: nobody → parser
Component: Layout → HTML: Parser
QA Contact: core.layout → mrbkap
This is INVALID. You're sending your XML content as text/html, so we send it
through our HTML parser which doesn't respect namespaces (and thus ignores your
(unknown) tags). You need to send XML content as application/xml or one of its
variants.
Status: UNCONFIRMED → RESOLVED
Closed: 20 years ago
Resolution: --- → INVALID
The reason we send it as text/html is to allow non multimodal browsers to
display the html content without having to worry about rendering the voice
content. X+V enabled browsers like Opera and Netfront can extract the VoiceXML
and send it to our interpreter.
Except that by sending your document as text/html you're telling the browser to
run it through its HTML parser (any browser which doesn't is violating the HTTP
specification) so the results you see for Mozilla should be consistent across
browsers (IE violates the specs in this regard). Even browsers that understand
X+V shouldn't extract this content since it doesn't exist in HTML.

What you need to be doing is sending your page as application/xml (etc.) and use
CSS styles on the vxml tags to tell browsers that don't understand them to not
display them at all.
Interesting. I thought that using a namespace should be enough to tell the
browser not to display the content if it does not know how to handle the namespace. 

We use application/x-xhtml+voice+xml to identify X+V pages, but this causes non
X+V enabled browsers to fail to display just the HTML. 

I will look into your suggestion. Thanks!
You need to log in before you can comment on or make changes to this bug.