
Update of /project/cxml/cvsroot/cxml/dom In directory clnet:/tmp/cvs-serv26638/dom Modified Files: dom-impl.lisp package.lisp Log Message: export the DOM interface CLOS classes --- /project/cxml/cvsroot/cxml/dom/dom-impl.lisp 2006/01/23 21:54:07 1.37 +++ /project/cxml/cvsroot/cxml/dom/dom-impl.lisp 2006/08/20 12:19:01 1.38 @@ -40,7 +40,7 @@ (dom-exception-string c) (dom-exception-arguments c))))) -(defclass node () +(defclass node (dom:node) ((parent :initarg :parent :initform nil) (children :initarg :children :initform (make-node-list)) (owner :initarg :owner :initform nil) @@ -63,18 +63,18 @@ (dom:namespace-uri node))) (setf (slot-value node 'prefix) newval)) -(defclass document (node) +(defclass document (node dom:document) ((doc-type :initarg :doc-type :reader dom:doctype) (dtd :initform nil :reader dtd) (entity-resolver :initform nil))) -(defclass document-fragment (node) +(defclass document-fragment (node dom:document-fragment) ()) -(defclass character-data (node) +(defclass character-data (node dom:character-data) ((value :initarg :data :reader dom:data))) -(defclass attribute (namespace-mixin node) +(defclass attribute (namespace-mixin node dom:attr) ((name :initarg :name :reader dom:name) (owner-element :initarg :owner-element :reader dom:owner-element) (specified-p :initarg :specified-p :reader dom:specified))) @@ -93,7 +93,7 @@ (rod-string (dom:name object)) (rod-string (dom:value object))))) -(defclass element (namespace-mixin node) +(defclass element (namespace-mixin node dom:element) ((tag-name :initarg :tag-name :reader dom:tag-name) (attributes :initarg :attributes :reader dom:attributes))) @@ -105,16 +105,16 @@ (print-unreadable-object (object stream :type t :identity t) (princ (rod-string (dom:tag-name object)) stream))) -(defclass text (character-data) +(defclass text (character-data dom:text) ()) -(defclass comment (character-data) +(defclass comment (character-data dom:comment) ()) -(defclass cdata-section (text) +(defclass cdata-section (text dom:cdata-section) ()) -(defclass document-type (node) +(defclass document-type (node dom:document-type) ((name :initarg :name :reader dom:name) (public-id :initarg :public-id :reader dom:public-id) (system-id :initarg :system-id :reader dom:system-id) @@ -122,25 +122,25 @@ (notations :initarg :notations :reader dom:notations) (dom::%internal-subset :accessor dom::%internal-subset))) -(defclass notation (node) +(defclass notation (node dom:notation) ((name :initarg :name :reader dom:name) (public-id :initarg :public-id :reader dom:public-id) (system-id :initarg :system-id :reader dom:system-id))) -(defclass entity (node) +(defclass entity (node dom:entity) ((name :initarg :name :reader dom:name) (public-id :initarg :public-id :reader dom:public-id) (system-id :initarg :system-id :reader dom:system-id) (notation-name :initarg :notation-name :reader dom:notation-name))) -(defclass entity-reference (node) +(defclass entity-reference (node dom:entity-reference) ((name :initarg :name :reader dom:name))) -(defclass processing-instruction (node) +(defclass processing-instruction (node dom:processing-instruction) ((target :initarg :target :reader dom:target) (data :initarg :data :reader dom:data))) -(defclass named-node-map () +(defclass named-node-map (dom:named-node-map) ((items :initarg :items :reader dom:items :initform nil) (owner :initarg :owner :reader dom:owner-document) --- /project/cxml/cvsroot/cxml/dom/package.lisp 2005/12/30 14:21:46 1.5 +++ /project/cxml/cvsroot/cxml/dom/package.lisp 2006/08/20 12:19:01 1.6 @@ -95,26 +95,26 @@ #:notation-name #:target #:code - - ;; not exported: -;;; ;; protocol classes + + ;; IDL interfaces, exported "inofficially" + #:node + #:document + #:document-fragment + #:character-data + #:attr + #:element + #:text + #:comment + #:cdata-section + #:document-type + #:notation + #:entity + #:entity-reference + #:processing-instruction + #:named-node-map + ;; no classes: ;;; #:dom-implementation -;;; #:document-fragment -;;; #:document -;;; #:node ;;; #:node-list -;;; #:named-node-map -;;; #:character-data -;;; #:attr -;;; #:element -;;; #:text -;;; #:comment -;;; #:cdata-section -;;; #:document-type -;;; #:notation -;;; #:entity -;;; #:entity-reference -;;; #:processing-instruction ;; #:items @@ -142,3 +142,20 @@ #:do-node-map #:create-document #:map-document)) + +(defclass dom:node () ()) +(defclass dom:document (dom:node) ()) +(defclass dom:document-fragment (dom:node) ()) +(defclass dom:character-data (dom:node) ()) +(defclass dom:attr (dom:node) ()) +(defclass dom:element (dom:node) ()) +(defclass dom:text (dom:character-data) ()) +(defclass dom:comment (dom:character-data) ()) +(defclass dom:cdata-section (dom:text) ()) +(defclass dom:document-type (dom:node) ()) +(defclass dom:notation (dom:node) ()) +(defclass dom:entity (dom:node) ()) +(defclass dom:entity-reference (dom:node) ()) +(defclass dom:processing-instruction (dom:node) ()) + +(defclass dom:named-node-map () ())