Opensource web publishing with XML - PowerPoint PPT Presentation

1 / 21
About This Presentation
Title:

Opensource web publishing with XML

Description:

For foreseeable future, Web publishing will be in (X)HTML. DTDs. Roll your own. DocBook ... The store knows the structure of an XML document ... – PowerPoint PPT presentation

Number of Views:107
Avg rating:3.0/5.0
Slides: 22
Provided by: edddu
Category:

less

Transcript and Presenter's Notes

Title: Opensource web publishing with XML


1
Open-source web publishing with XML
  • Edd Dumbill
  • edd_at_xml.com
  • WWW9 Developers Day 2000

2
Overview
  • Editing XML
  • tools
  • DTDs
  • Publishing with XML
  • Command line
  • Scripting
  • Application servers

3
TMTOWTDI
  • XML is so flexible, and there are so many tools,
    theres often no right way
  • This presentation covers my experiences in
    creating XML-based web sites

4
Editing XML
  • You dont use vi?
  • text editor validator
  • XEmacs / Emacs psgml mode
  • http//www.lysator.liu.se/projects/about_psgml.htm
    l
  • understands the DTD
  • interfaces with command-line parser
  • XEmacs ports for Win32 Mac!
  • see http//www.xemacs.org/

5
Browsing XML
  • See XML.coms comparison at http//xml.com/2000/05
    /03/browserchart/
  • Only practical in
  • Mozilla (XMLCSS)
  • MSIE (XMLMS XSLT)
  • For foreseeable future, Web publishing will be in
    (X)HTML

6
DTDs
  • Roll your own
  • DocBook
  • XHTML
  • You may want to use multiple DTDs

7
XML has open source infrastructure
  • Expat
  • XT
  • Apache XML Project
  • Xerces
  • Xalan
  • Cocoon

8
Support for XML publishing at all levels
  • Command line
  • XT, SAXON, make
  • Scripting
  • PHP, Perl, Python
  • Application server
  • Zope, Cocoon

9
Command line approaches
  • XML stored in file system
  • XSLT used to generate target HTML
  • Make and FTP
  • XSLT processors
  • XT
  • SAXON
  • Instant Saxon

10
Scripting
  • Most scripting environments wrap expat
  • PHP, Perl
  • Common approach is dynamic XML transformation
  • Caching mechanisms required for high volume sites

11
PHP
  • Wraps expat
  • Theres a lot to do for yourself
  • sample code http//xmlrpc.usefulinc.com/demo/xmlrp
    c.inc
  • switch approach
  • A prototype tree library
  • http//downloads.dyomedea.com/php3/generic/xml/
  • Allows XPath-like manipulation of the XML

12
Perl
  • Basic approach would be to use XMLParser
  • Perl has better XSLT support, XMLXSLT
  • Matt Sergeants AxKit handles caching and
    multiple stylesheets
  • http//xml.sergeant.org/axkit/

13
Application Servers
  • Typically provide common services for web sites
    (authentication, sessions, document management)
  • Two most common
  • Zope
  • Apache Group Turbine, Cocoon Jetspeed
  • I use the term loosely!

14
Apache Cocoon
  • XML XSLT engine
  • XML -gt DOM -gt-gt DOM -gt HTML
  • Cocoon 1 experimental
  • Cocoon 2 redesign will be faster
  • XML server pages

15
Apache Jetspeed
  • Built on top of Turbine Cocoon
  • Portal server
  • Integrates RSS Cocoon applications

16
Zope
  • Python-based application/web server
  • You dont need to be a Python wizard
  • Supports drop-in Products
  • User others code easily!
  • Good and improving XML support
  • XMLDocument
  • XMLWidget
  • DocBook

17
Zope XMLDocument
  • Zope is based on an object database
  • The store knows the structure of an XML document
  • So it can be accessed via the DOM, and used
    non-atomically
  • Rendering methods can be written via the DOM

18
Zope XMLWidgets
  • You can think of an XML document as a
    user-interface description
  • Each XMLWidget defines behavior for a part of an
    XML document
  • Exciting possibilities
  • could re-use the idea in other scenarioshttp//ww
    w.xml.org/archives/xml-dev/2000/05/0174.html
  • similar to behaviors introduced in CSS3

19
Zope DocbookDocument
  • A large example of XMLWidgets
  • Slow, sadly!
  • Ideas collaborative editing of a book online

20
Zope RSS
  • SiteSummary product
  • Publish your RSS
  • Import others
  • Integrate the content into your site

21
Endnotes
  • Read XML.com!
  • Email me at edd_at_xml.com or post to my weblog
    discussion group http//weblogs.oreillynet.com/ed
    d/
  • You can find these slides athttp//usefulinc.com
    /pres/www9/
Write a Comment
User Comments (0)
About PowerShow.com