[Zope-dev] ZDOM alpha release 2

Chimezie Thomas-Ogbuji cogbuji@fourthought.com
Tue, 30 May 2000 15:34:59 -0600


This is a multi-part message in MIME format.
--------------DBE0734DB5E388FF86B2C641
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

See release notes for changes (installation process simplified w/
release of 4DOM/4XSLT/4XPATH):

-- 
Chimezie Thomas-Ogbuji
Consultant
Fourthought Inc.
(303) 583 9900 ext 104
cogbuji@fourthought.com
--------------DBE0734DB5E388FF86B2C641
Content-Type: text/plain; charset=us-ascii;
 name="Readme.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="Readme.txt"

ZDOM is the result of a collaborative venture by Digital Creations and
Fourthought Inc. to integrate the W3C Document Object Model interface with
Zope, allowing effortless and familiar traversal of a Zope heirarchy.  
The current alpha release is based on Fourthought's 4DOM , which is one
component of Fourthought's 4Suite.
 
Fourthought provides custom technological solutions based on open
technologies.  4Suite is a powerful set of Python tools developed by
Fourthought for Web-based applications in areas such as Intranets,
E-Commerce and knowledge-management.  Elements of 4Suite have been adopted
as core XML technologies in Zope and in the Python XML distribution
 
The necessary files (which are all available on our ftp server:
ftp.fourthought.com) are
 
ftp://ftp.fourthought.com/pub/mirrors/python4linux/redhat/i386/python-xml-nodom-0.5.4-1.i386.rpm
(Py-XML w/out DOM)

ftp://ftp.fourthought.com/pub/mirrors/python4linux/redhat/i386/4DOM-0.10.0-1.noarch.rpm 
(4DOM core)

ftp://ftp.fourthought.com/pub/4Zope/ZDOM-dist.tgz
(ZDOM)
 
ftp://ftp.fourthought.com/pub/4Zope/Zope-ZDOM-Patch
(patch file for Zope 2.1.6) OR

http://www.zope.org/Members/anthony/patches/4ZDOM-vs-CVS-0512.patch
(patch file for CVS/alpha 2.2 Zope)     

Documentation:
 
ftp://ftp.fourthought.com/pub/4Zope/INSTALL.txt
(the installation instructions)
 
ftp://ftp.fourthought.com/pub/4Zope/Readme.txt
(short description of ZDOM)
 
ftp://ftp.fourthought.com/pub/4Zope/Release.txt
(release notes)                                       

links:

Fourthought: http://fourthought.com
4Suite: http://fourthought.com/4Suite/
DOM 2 Spec: http://www.w3.org/TR/2000/CR-DOM-Level-2-20000307/
Zope http://www.zope.org
 
contact:
consultants@fourthought.com
 


--------------DBE0734DB5E388FF86B2C641
Content-Type: text/plain; charset=us-ascii;
 name="INSTALL.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="INSTALL.txt"

Installing ZDOM
---------------

  This document describes installing ZDOM on Unix.

Important Notes

  ZDOM REQUIRES ZOPE AND PYTHON 1.5.2!
  Depending on which Zope version you wish to add ZDOM to, there
  are two patches to download

1) ftp://fourthought.com/pub/4Zope/Zope-ZDOM-Patch
 (patches Zope 2.1.6)
2) http://www.zope.org/Members/anthony/patches/4ZDOM-vs-CVS-0512.patch
 (Anthony Baxter's patch which works on the CVS source tree as of 5/16)


ftp://ftp.fourthought.com/pub/mirrors/python4linux/redhat/i386/4DOM-0.10.0-1.noarch.rpm 
(4DOM core)

ftp://ftp.fourthought.com/pub/4Zope/ZDOM-dist.tgz
(ZDOM)
 
ftp://ftp.fourthought.com/pub/4Zope/Zope-ZDOM-Patch
(patch file for Zope 2.1.6) OR

http://www.zope.org/Members/anthony/patches/4ZDOM-vs-CVS-0512.patch
(patch file for CVS/alpha 2.2 Zope)     


Installing

  First download these files from our FTP server:

    /pub/mirrors/python4linux/redhat/i386/python-xml-nodom-0.5.4-1.i386.rpm
    /pub/mirrors/python4linux/redhat/i386/4DOM-0.10.0-1.noarch.rpm 
    /pub/4Zope/ZDOM-dist.tgz
    
    /pub/4Zope/Zope-ZDOM-Patch OR
    http://www.zope.org/Members/anthony/patches/4ZDOM-vs-CVS-0512.patch

  Install the rpms and decompress ZDOM-dist.tgz somewherer in your PYTHONPATH

  Install and build Zope 2.1.6 if not already done.
  This is required for the components to work.

  The following will install the patches to Zope objects
  to allow manipulation of Zope object via the DOM
  interface:
    
    (the Zope2.1.6 patch assumes that the Zope src files reside in a 'Zope'
directory so a symbolic link is necessary)

    ln -s [Zope install dir] Zope
    cd (parent directory of Zope install dir)   -- if necessary
    patch -p0 < (location of dowloaded files)/Zope-ZDOM-Patch OR 4ZDOM-vs-CVS-0512.patch

  Then add '(zope install dir)/lib/python' to your PYTHONPATH.



--------------DBE0734DB5E388FF86B2C641
Content-Type: text/plain; charset=us-ascii;
 name="Release.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="Release.txt"

RELEASE NOTES
-------------
5/30/00

changed setAttributeNodeNS to check for aq_base and set to None if it doesn't
exist (since _setProperty expects aquisition to be set up -- but might not
be necessarily so since an element can be created and attributes can be
added WITHOUT it having a parent yet)

redirected computed attributes to instance methods so DOM interfaces can
be overode

added check for aq_base in setAttributeNodeNS (sets to None if it doesnt exist)

5/10/00

ZDOM alpha supports to complete DOM Level 2 Specification
(http://www.w3.org/TR/DOM-Level-2/)

ZDOM maps the DOM interface to Zope, like so:

					childNodes ->	objectValues()
mappable subset of DOM 2 Interface ->	attributes ->	propdict()
     					parentNode ->	self.aq_parent

Default implmentation of both objectValues() and propdict()
are provided on SImpleItem.Item for Zope Objects that do not
implement these interfaces. 

All Zope objects support the DOM Level 2 spec through the inheritence
of SimpleItem.Item from Element.

All objects (except as noted below) created by the use of the DOM
interface (i.e., NodeLists, NamedNodeMaps, childNodes for Attr) are
transient.

All Zope objects not defined in a namespace default to
"http://www.zope.org/ZNames/NullNamespace" with the prefix of "zope".

The cloneNode() interface is not supported on any objects.

All factory functions on the document create transient objects (not
Persistent), except createElement(NS) which creates Zope Folders.

At ZServer startup, a transient document is created and set as the
parent of the Application and ownerDocument of all Zope objects.

TODO
------
1. Fix alpha reported bugs.
2. Complete and test the document factory functions.
3. Implement and test cloneNode()
4. Complete unmapped/unimplemented DOM interface functins:
	nodeName
	nodeValue
	nodeType
	setParentNode

--------------DBE0734DB5E388FF86B2C641--