/**
         * Opens the writer for a memory target
         */
        public bool openMemory(Env env)
        {
            StringValue s = env.createUnicodeBuilder();

            _s = new MemoryXMLWriterStream(s);

            _nsMap.clear();
            _elementStack.clear();
            _nsStack.clear();

            _state = WriterState.TOP;

            return(true);
        }
        /**
         * Opens the writer for a uri target
         */
        public bool openURI(Env env, string path)
        {
            try {
                WriteStream @out = path.openWrite();

                _s = new PathXMLWriterStream(out);

                _nsMap.clear();
                _elementStack.clear();
                _nsStack.clear();

                _state = WriterState.TOP;
            } catch (IOException e) {
                log.log(Level.WARNING, e.ToString(), e);
            }

            return(true);
        }