Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]1154[/thread]

VXML validieren



<< >> 5 Einträge, 1 Seite
bo
 2007-03-16 11:54
#11545 #11545
User since
2006-05-09
76 Artikel
BenutzerIn
[default_avatar]
hallo community,

ich soll eine funktion schreiben, in der ein teilbaum einer vxml-datei auf validität überprüft werden soll. der vxml-code selbst ist valide. das problem ist, dass mittels ECMAScript zur laufzeit der sprachanwendung ungültiges vxml entstehen kann.
aus folgendem (gültigen) vxml-code
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE vxml PUBLIC "-//W3C//DTD VOICEXML 2.1//EN" "http://www.w3.org/TR/voicexml21/vxml.dtd">
<vxml xml:lang="de-DE" version="2.1">
<var name="audio_var" />
<script>
<![CDATA[
function init()
{
audio_var='<audio src="$(SWISBSDK)/sounds/asrerror.wav" >';
}
]]>
</script>
<form>
<block>
<value expr="init()"/>
<prompt>
<value expr="audio_var" />
<audio src="$(SWISBSDK)/sounds/standard/closed_extro_1_bm.wav">Die Datei fehlt!</audio>
</prompt>
</block>
</form>
</vxml>

erzeugt der voice browser den folgenden (ungültigen) code (als string)
Code: (dl )
<audio src="$(SWISBSDK)/sounds/asrerror.wav" ><audio src="$(SWISBSDK)/sounds/standard/closed_extro_1_bm.wav" fetchtimeout="7s" fetchhint="prefetch">Alternativtext TTS, wenn die Datei fehlt!</audio>

...und dieser soll nun validiert werden
Code: (dl )
1
2
3
4
5
6
7
8
bool isValidXML(const std::string & xmlstring)
{
bool isValid = true;

// ??

return isValid;
}


wie würdet ihr das angehen? ???
esskar
 2007-03-16 12:37
#11546 #11546
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
betriebssystem?
bo
 2007-03-16 13:15
#11547 #11547
User since
2006-05-09
76 Artikel
BenutzerIn
[default_avatar]
winxp
esskar
 2007-03-16 13:35
#11548 #11548
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
dann kämpf dich doch mal durch MSXML
bo
 2007-03-16 13:49
#11549 #11549
User since
2006-05-09
76 Artikel
BenutzerIn
[default_avatar]
oha, dann schon lieber xerces, da wird vom voice browser (OpenVXI) verwendet und ist im projekt mit drin...
weiss jemand, ob man dem SAXParser auch nen string übergeben kann oder nur dateien? und wie schreibt man hierfür eine DTD oder ein Schema? ???
<< >> 5 Einträge, 1 Seite



View all threads created 2007-03-16 11:54.