
On Sep 01, Andreas Savva modulated:
... The question I have if you change the argument type to a string is then why do you need multiple argument elements?
The arguments to a POSIX command are a vector of strings. The strings may have any character in them, be empty strings, etc. You cannot trivially talk about encoding this vector in a string unless you assume a bunch of "quoting" conventions. Don't mix up a shell programming language with the underlying command execution enviroment. The shell parses the string command-line into an array of strings according to its shell language rules, but the underlying commands receive a vector. The JSDL implementation should map this vector into whatever form it requires, e.g. a properly escaped Bourne shell command if it is cooking up some "run script" for a scheduler. Things go horribly wrong if you start assuming a particular back-end parser or not escaping/quoting everything correctly. You must avoid having users work around implementation bugs by embedding implementation+platform specific quoting syntax inside their argument data! That said, Donal's point about string encoding is important to remember. To do it right, the implementation needs to translate the XML info set string (unicode I think, right?) to the locale in which the program will run. This might not be possible, unless we can assume that the implementation can select an appropriately locale for the characters being used. karl -- Karl Czajkowski karlcz@univa.com