/************************************************************/
/* quotes */
/************************************************************/
/* :SUMMARY: double quotes in data and names and queries
:PRIORITY: 2
:STATUS: ok
:FEATURE:
the double quote " is escaped using backslash \ in .ace data and queries
:HISTORY:
:MODEL:
?Author full_name ?Text
generic_properties #Generic_properties
?Generic_properties aux ?Text Text REPEAT
:DATA:
Author : "quo_wolf2"
last_name "test \\\\n \\n \n \""
generic_properties aux "1a" "2" "3"
generic_properties aux "\"1b" "2" "\"3"
generic_properties aux "\""1c" "2" "\""3"
Author "quo\"ed"
last_name "missing
:RESULT:
1. load the data (except object names)
works in: ace35b the data is correctly parsed and written out:
\ escapes ", and a trailing " is not required
generic_properties aux "\"" "1c\"" "2" "\"" "3\""
works in: ace950716, ace950829a4
3. load and write object names containing "
fails in: ace35b -- in the output the " is not esacped in the output
Author : "quo"ed"
works in: ace950716, ace950829a4
3. query for object names containing "
fails in: ace35b -- the query yields:
!! Unbalanced double quote : >?Author IS "quo\"ed"
fails in: ace950716 -- same as ace35b
fails in: ace950829a4 -- same as ace35b
fails in: ace951109 -- same as ace35b
:SCRIPT: */
quotes: dbinit wspec.igd-fred // double quotes
tace
parse: do pparse $data/igd.quotes.ace // has some hairy quoting
find: do Query >?Author quo*
show // also the tree display should match
write
find2: do Query >?Author IS "quo\"ed"
exit