/* * Copyright (c) 2001 World Wide Web Consortium, * (Massachusetts Institute of Technology, Institut National de * Recherche en Informatique et en Automatique, Keio University). All * Rights Reserved. This program is distributed under the W3C's Software * Intellectual Property License. This program is distributed in the * hope that it will be useful, but WITHOUT ANY WARRANTY; without even * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. * See W3C License http://www.w3.org/Consortium/Legal/ for more details. */ // File: http://www.w3.org/TR/2001/WD-DOM-Level-3-ASLS-20011025/ls.idl #ifndef _LS_IDL_ #define _LS_IDL_ #include "dom.idl" #include "events.idl" #include "traversal.idl" #pragma prefix "dom.w3c.org" module ls { typedef dom::DOMErrorHandler DOMErrorHandler; typedef dom::DOMString DOMString; typedef dom::Node Node; typedef dom::Document Document; typedef dom::DOMOutputStream DOMOutputStream; typedef dom::DOMReader DOMReader; typedef dom::DOMError DOMError; interface DOMBuilder; interface DOMWriter; interface DOMInputSource; interface DOMEntityResolver; interface DOMBuilderFilter; interface DOMImplementationLS { // DOMIMplementationLSMode const unsigned short MODE_SYNCHRONOUS = 1; const unsigned short MODE_ASYNCHRONOUS = 2; DOMBuilder createDOMBuilder(in unsigned short mode) raises(dom::DOMException); DOMWriter createDOMWriter(); DOMInputSource createDOMInputSource(); }; interface DOMBuilder { attribute DOMEntityResolver entityResolver; attribute DOMErrorHandler errorHandler; attribute DOMBuilderFilter filter; void setFeature(in DOMString name, in boolean state) raises(dom::DOMException); boolean canSetFeature(in DOMString name, in boolean state); boolean getFeature(in DOMString name) raises(dom::DOMException); Document parseURI(in DOMString uri) raises(dom::DOMSystemException); Document parse(in DOMInputSource is) raises(dom::DOMSystemException); // ACTION_TYPES const unsigned short ACTION_REPLACE = 1; const unsigned short ACTION_APPEND = 2; const unsigned short ACTION_INSERT_AFTER = 3; const unsigned short ACTION_INSERT_BEFORE = 4; void parseWithContext(in DOMInputSource is, in Node cnode, in unsigned short action) raises(dom::DOMException); }; interface DOMWriter { void setFeature(in DOMString name, in boolean state) raises(dom::DOMException); boolean canSetFeature(in DOMString name, in boolean state); boolean getFeature(in DOMString name) raises(dom::DOMException); attribute DOMString encoding; readonly attribute DOMString lastEncoding; attribute DOMString newLine; attribute DOMErrorHandler errorHandler; boolean writeNode(in DOMOutputStream destination, in Node wnode) raises(dom::DOMSystemException); DOMString writeToString(in Node wnode) raises(dom::DOMException); }; interface DOMInputSource { attribute DOMInputSource byteStream; attribute DOMReader characterStream; attribute DOMString stringData; attribute DOMString encoding; attribute DOMString publicId; attribute DOMString systemId; attribute DOMString baseURI; }; interface DOMEntityResolver { DOMInputSource resolveEntity(in DOMString publicId, in DOMString systemId, in DOMString baseURI) raises(dom::DOMSystemException); }; interface DOMBuilderFilter { unsigned long startNode(in Node snode); unsigned long endNode(in Node enode); readonly attribute unsigned long whatToShow; }; interface DocumentLS { attribute boolean async; void abort(); boolean load(in DOMString uri); boolean loadXML(in DOMString source); DOMString saveXML(in Node snode) raises(dom::DOMException); }; interface LSLoadEvent : events::Event { readonly attribute Document newDocument; readonly attribute DOMInputSource inputSource; }; interface LSProgressEvent : events::Event { readonly attribute DOMInputSource inputSource; readonly attribute unsigned long position; readonly attribute unsigned long totalSize; }; interface DOMWriterFilter : traversal::NodeFilter { readonly attribute unsigned long whatToShow; }; interface ParseErrorEvent : events::Event { readonly attribute DOMError error; }; }; #endif // _LS_IDL_