Tuesday, October 26, 2004

DocBook Dinner at XML 2004

Norm Walsh has already extended this invite, but just in case any DocBook interested parties haven't read his blog (yeah, right), here are the details:

Hope to see you there!

See also:

Monday, October 25, 2004

Boogie Down!

I was listening to the radio in the car last night, and "Let's Groove Tonight" by Earth, Wind and Fire started playing.

I had to laugh, because a few years ago when my oldest son, Connor, was three or four, we heard the song, and after hearing the robotic "Boogie Down" line, he asked what it meant in the song.

I told him it was a kind of dancing, and he replied, "Daddy, I have a dance in my nose?!?"

That still cracks me up!

See also:

Friday, October 22, 2004

Generate documentation with dtddoc

I've just found another useful tool, for those dealing with schemas and documentation...

Lars Marius Garshol has had this tool out there since 2001, but I just ran across it trying to search for Content Model documentation.

dtddoc is a DTD documentation generator which can read a DTD and associated documentation written in XML and generate nicely formatted HTML documentation or, experimentally, DocBook RefEntry documentation.

It can create HTML, DocBook, and XML Topic Map (XTM) documentation, as well as read a DTD and generate a skeleton documentation file.

It's available at: http://www.garshol.priv.no/download/software/dtddoc/. Lars also has a cool list of XML tools available at: http://www.garshol.priv.no/download/xmltools/cat_ix.html

From Lars' tools page, the following DTD documentation tools are listed:

DTD documenters

dtddocLars Marius GarsholPython
DTDDocStefan ChampaillerJava
DTDParseNorman WalshPerl
LiveDTDRobert StaytonPerl
perlSGMLEarl HoodPerl

UPDATE: There's an informative article on this subject at: http://builder.com.com/5100-6315-1051811.html

I would think there are similar tools for documenting XSD and RNG schemas. If you know of any, please send in your comments!

UPDATE: Kal Ahmed has produced some tools for RelaxNG documentation at: http://www.techquila.com/rng-tools.html. I've also found a for-$$ XSD/WSDL documenter at: http://www.bluetetra.com/

See also:

Thursday, October 21, 2004

New DocBook Candidate Releases!

I'm please to report two new Candidate Releases for DocBook today!

Norm Walsh has released Simplified DocBook 1.1 CR2 and DocBook 4.4 CR2 on docbook.org.

I've been doing a fair amount of testing and customization layers around Simplified DocBook 1.1. If you find any problems, please let Norm or I know.

For my customization layers, I've been using Tatu Saloranta's dtdflatten to create a flattened version, validating the DTD with Kohsuke Kawaguchi's msv (multischema validator), and then compiling it for use in Arbortext Epic (use the compile_doctype in the editor's command-line interface).

I'm also having fun trying to create my customization layer in Relax NG, based on the Simplified DocBookNG "Bourbon" release.

If schemas are making you work too hard, you need to be RelaxNG! :-)

See also:

Tuesday, October 19, 2004

Congratulations, Dad! (Retired)

My dad officially retired from the USDA Farm Service Agency on October 3, but we held his retirement party this weekend at the Flying W Ranch.

Dad graduated from Colorado State University with a Bachelor's degree in Biology and became a school teacher at Trinidad High School.He commuted about 120 miles/day to Trinidad from our ranch in Trinchera, Colorado every day for 10 years!

Dad then moved to the Agricultural Stabilization and Conservation Service (ASCS) later named the Farm Service Agency (FSA), where he has been the County Executive Director for El Paso, Park and Teller counties for 28 years.

The Flying W Ranch (http://www.flyingw.com)was a perfect place for his retirement party. The entertainment was spectacular, and surprisingly, dad had never been there. We presented him with a Cowboy bronze sculpture by Remington, and about 40 people were in attendance. Some folks traveled all the way from Lubbock and Seattle to see him off.

I know I'm selfish when I say this, but I have the best dad in the world. He has always been there for me and my family. His Godly character is exemplified every day.

I love you, Dad!

See also:

Monday, October 18, 2004

Neo/J and Frangelico releases

Busy day today! Norm Walsh has announced the sixth release of DocBook NG, dubbed "Frangelico" (see http://norman.walsh.name/2004/10/18/frangelico), and Tim Bray has a post about the new NeoOffice/J patch 3 release (see http://www.tbray.org/ongoing/When/200x/2004/10/17/NeoOfficePatch3)

It's interesting to see that Norm has included XLink and extendedLink in this version. I hope to get some testing in on this one. I think it's also time for another run at Simplified DocBook NG, which is still at the "Bourbon" release. Wish Norm could hire me to do that!

NeoOffice/J is amazingly cool. I tried using the X11 version of OpenOffice on the Mac, but it was slow and painful. NeoOffice/J has all of the functionality, and is fast. Check it out!

See also:

Tuesday, October 12, 2004

More famous celebrities...

My friend and colleague, Tatu Saloranta has made the headlines, too!

Elliotte Rusty Harold posted the following on his blog today...

Tatu Saloranta has posted WoodStox 1.0, a free-as-in-speech (LGPL) non-validating XML processor written in Java that implements StAX API. "StAX specifies interface for standard J2ME 'pull-parsers' (as opposed to "push parser" like SAX API ones); at high-level StAX specifies 2 types (iterator and event based) readers and writers that used to access and output XML documents." WoodStox supports XML 1.0 and 1.1.

It's really great! I use it to flatten DTDs (expand all entities), and it's fast!

Way to go, Tatu!

See also:

Meeting Trading Spaces celebrities!

My wife and our friend Maureen were shopping at Michael's (hobby/decorating store) yesterday, when they ran into:

Edward Walker
and Hildi Santo-Tomas

Looks like Trading Spaces has come to Rock Creek!

While Vern and Frank are probably her favorite designers on the show, meeting celebrities like Hildi and Edward is still pretty cool.

If you've never seen the Trading Spaces show, you should check it out on TLC (http://www.tradingspaces.com). Personally, I just end up working on more home projects as a result...

Speaking of celebrities, my wife and I also met Stephen King on our honeymoon in Estes Park. They were filming The Shining for TV Mini-Series at the Stanley Hotel. It was just a random event, but still, a celebrity.

Another celebrity I've met was Douglas Adams, author of my favorite Hitchhiker's Guide to the Galaxy book series. He spoke at an engineering conference at Sun about 4 months before he passed away.

Also in the techno world, I've met Sir Tim Berners-Lee (inventor of the internet, NOT Al Gore), Jon Bosak (inventor of XML), Tim Bray, Eve Maler, Norm Walsh (inventor of DocBook) and many more at the IDEAlliance XML conferences. You should probably just check out my LinkedIn profile...

See also:

Monday, October 11, 2004

Finding WOD on Greimblog

Okay, that was a pretty confusing title, but thanks for clicking anyways ;-)

Bravo, Greg! Just found his recent entry (http://blogs.sun.com/roller/page/greimer/20041008#tree_of_data_sea_of), where he discusses Webs of Data and Topic Maps. It's an interesting read, and now maybe Greg will be able to start experimenting with XTMs.

BTW, Greg and Lars, I'm still working on my Star Wars Topic Map. Perhaps it will be easier, now that I've found TSaxon to process the pages I need. Stay tuned...

See also:

Would you like soup with that?

John Cowan has just published TagSoup 1.0 Release Candidate 1. What in the world is TagSoup, you say? It's a SAX-compliant parser written in Java that parses the stew of HTML out there. Not a simple broth, mind you, but a complex amalgamation of tags, often not well-formed that make up the web today.

How did we get this mess? All those sloppy browsers, namely Internet Exploder, er Explorer and Netscape, that allowed non well-formed markup to be displayed, when they should have returned error messages. It encouraged sloppy HTML coding for the masses, who are difficult to re-train. Even the tools developers got sloppy. Most HTML editors are just as bad as sloppy humans. Macromedia's Dreamweaver is generally the exception to that rule and puts out decent HTML, but even it slips at times.

What's the big deal with sloppy HTML? It DRIVES US XML GUYS CRAZY! STOP IT! Actually, it is painful and tedious to have to clean up someone else's HTML so you can reuse, harvest or do other interesting things with XSL.Thankfully XHTML is at least well-formed, but hasn't gained quite the traction that plain, sloppy HTML has.

You can find out more about the TagSoup parser at http://mercury.ccil.org/~cowan/XML/tagsoup/. It's Open Source software, available under both GPL and AFL licenses.

John has also re-packaged Saxon 6.5.3 as TSaxon to include the TagSoup parser! Hopefully this can be upgraded to use Saxon 8.1.1 in the near future...

In an unrelated note, John has also done a very interesting presentation on RelaxNG called "RELAX NG: DTDs on Warp Drive" available at http://mercury.ccil.org/~cowan/relaxng.pdf

Good work, John!

See also:

Monday, October 04, 2004

Godspeed, Mr. Cooper

On this record-setting day for commercial astronautics, we have also lost one of the Original Seven.

Leroy Gordon "Gordo" Cooper, Jr. passed away today at the age of 77.

Here's his spacesuit from Mercury 9, worn aboard the Faith 7 capsule, now located at the Astronaut Hall of Fame near Kennedy Space Center, Florida.I took this photo on our recent anniversary trip with my wife. If you take the Kennedy Space Center tour, it's worth the extra amount to include the Astronaut Hall of Fame. I loved the G-Force trainer, and all of the exhibits!

Gordon Cooper's Mercury spacesuit

Gordo had The Right Stuff. When asked who was the greatest fighter pilot he ever saw, Cooper answered, "You're looking at him!"

Godspeed, Mr. Cooper.

See also:

October Tornadoes!

Colorado can be a very unique place, especially when it comes to weather!

October thunderstorm over Greeley

Take a look at today's weather:

440 PM MDT MON OCT 4 2004





Details on the storm are at: http://www.thedenverchannel.com/weather/3782575/detail.html

The NWS reported 11 tornadoes in Weld and Adams counties today!

This kind of weather always makes for beautiful sunsets, though too:

Sunset over Greeley

See also:

SpaceShipOne does it again

Fellow blogger Kirk has already documented this achievement, but I also would like to pass along my congratulations to the crew of SpaceShipOne on winning the X-Prize!

Full details available here: http://www.space.com/missionlaunches/xprize_full_coverage.html.

Not to belittle this great achievement, but they should've required at least one Earth orbit at that altitude to claim the prize. The craft was also not built with a docking ring to verify that it could ferry someone up to the ISS or some other space station.

Now someone needs to take the $50 million America's Space Prize challenge to truly bring tourism to space! The new prize stipulates bringing seven into space, as opposed to three.

See also:

Friday, October 01, 2004

DocBook XSL Configurator

Steve Whitlatch posted to the docbook-apps list on OASIS about a new tool he has developed for DocBook XSL support!

Here's the announcement in it's entirety:

Several months back, I had some discussion on this list about creating a Java GUI that would allow users a mostly point-and-click interface to creating customization layers for use with the DocBook XSL stylesheets. Well, I wrote the application and here it is.

Announcing the first public release of DocBook XSL Configurator! Actualy two releases, one for version 1.65.1 of the DocBook XSL stylesheets and one for version 1.66.1.

They are available for download from Sourceforge: http://sourceforge.net/projects/db-xsl-cfg

DocBook XSL Configurator versions 0.5.2_1651 and version 0.5.3_1661 are alpha, since they have not been widely tested, but I know of no bugs and consider the software fully operational.

You can get a good idea of what DocBook XSL Configurator is and what it does from the following:

DocBook XSL Configurator
 DocBook XSL Configurator is a Java application used to create 
 DocBook XSL FO customization layers. The application presents 
 users with a tabbed pane containing several tables. Each row 
 in each table contains several cells, one of which is editable 
 and contains the text of the default setting for a specific 
 DocBook XSL FO parameter. Users create projects containing paths 
 to DocBook XML, common-customization XSL, an external XSLT 
 processor, etc. Users then click through the tables, select 
 DocBook XSL FO parameters they want to include in a customization 
 layer, edit those parameters, include the customization layer in a 
 project, write out the customization layer as an XSL file, and 
 apply the XSL to the project's XML using the project's specified 
 XSLT processor.

   DocBook XSL Configurator version 0.5.3_1661 is an alpha release.
 It supports version 1.66.1 of the DocBook XSL FO parameter set. 
 It does not yet support the DocBook XSL HTML parameter set.

 Default FO parameter settings, help text, and guidelines for 
 attribute sets ("property sets") are taken from the DocBook 
 XSL package's FO documentation. Attribute set defaults are 
 just guidelines. 

 DocBook XSL Configurator also includes a "From the Wild" table 
 that provides users with nifty little snippets of XSL intended 
 to help with formatting not implemented in the DocBook XSL FO 
 parameter set. Currently, the number of these snippets is very 
 small; however, the "From the Wild" snippet collection has the 
 potential to grow very large and be very helpful.

Target Audience
 If you are a beginner with DocBook XSL, DocBook XSL Configurator 
 can help you a great deal by bringing all the DocBook XSL FO 
 parameters together, with help, in a GUI. You don't have to switch 
 windows seeking help, and you don't have to manually type out the 
 file containing the XSL FO customization layer. 

 If you are an expert with DocBook XSL, this application may still 
 be of use to you. You may benefit from the speed with which you 
 can create and edit customization layers; you may find that DocBook 
 XSL Configurator projects help you organize documentation sets; or, 
 you may find the application useful for saving customization layers 
 and associating them with specific DocBook XML instances.

Requirements and Use
 DocBook XSL Configurator should work with any Java runtime 
 environment compatible with Sun's Java Virtual Machine version 
 1.4.2 or later. However, each version of DocBook XSL Configurator 
 needs a specific version of the DocBook XSL stylesheets. For 
 example, DocBook XSL Configurator version 0.5.3_1661 needs DocBook 
 XSL stylesheet version 1.66.1. Running a version of DocBook XSL 
 Configurator with a version of the DocBook XSL stylesheets for 
 which it was not intended could produce errors. 

 Running DocBook XSL Configurator requires no adjustments to your 
 CLASSPATH, and the DocBookXSLConfigurator.jar file can be placed 
 anywhere in the file system. 

 To use DocBook XSL Configurator, you first build a project. The 
 project contains information DocBook XSL Configurator uses to 
 help create a PDF or PS file from a valid DocBook XML file. The 
 process would go something like this:

 1) Select New Project from the File menu.
  A New Project dialog appears.

 2) Navigate through the dialog, providing the following:
  - the name of an XSLT processor
  - the entire option string to be passed to the xslt processor
  - location of the DocBook XSL stylesheet to use
  - location of a common-customization XSL file
  - an FO processor command string 
  - a PDF viewer command string
  - a PS viewer command string

    DocBook XSL Configurator uses the information provided to 
    run the programs in your tool chain as external subprocesses.

 3) Click through the tables, selecting check boxes for the 
    parameters you want included in your XSL customization layer, 
    and edit the parameter settings as necessary.

 4) Save the project. 

 5) Select parameters and edit them as you like. Then, select Write XSL from
           the Execute menu. 
  DocBook XSL Configurator presents you with a dialog. Choose 
  a name and a location for the file to save. This is your 
  XSL customization layer. Make certain that the filename 
  and path match with those used when you created the project.
  Keep the same name and path of this file when you update it. 
  Whenever you wish to change this customization layer, adjust 
  your selections and edited parameters in the GUI, and then 
  overwrite this file by selecting Write XSL from the 
  Execute menu.

 6) Select Process XML from the Execute menu. 
  DocBook XSL Configurator runs the XSLT processor specified 
  in your project using the options supplied. You should 
  probably make certain that your XML is actually a valid DocBook 
  XML instance first. While the XSLT processor is running, you 
  can continue with your work. When it's finished, DocBook XSL 
  Configurator presents a dialog box containing any messages 
  produced by the XSLT processor. The dialog box is presented 
  regardless of errors detected.

 7) Select Process FO from the Execute menu. 
  DocBook XSL Configurator executes the entire FO processor 
  command string from your project settings. While the FO 
  processor is running, you can continue with your work. It 
  typically takes several minutes to complete. When it's 
  finished, DocBook XSL Configurator presents a dialog box 
  containing any messages produced by the FO processor.
  The dialog box is presented regardless of errors detected.

 8) Select 'Display PDF' or 'Display PS' from the View menu.
  As with 'Process XML' and 'Process FO', DocBook XSL 
  Configurator runs the project's command string as an 
  external subprocess. When running the PDF or PS viewer 
  command strings, DocBook XSL Configurator presents a 
  dialog box containing messages returned from the subprocess 
  only if it detects something went wrong.

 Alone, DocBook XSL Configurator will work only partially. To make 
 full use of it, you need the following:

 - a valid DocBook XML instance. If you are new to DocBook XML, 
   you should begin with Norman Walsh and Leonard Muellner's book, 
   DocBook: The Definitive Guide, available online at: 

 - the DocBook XML DTD package installed. You can download it from:

 - the DocBook XSL package installed. You can download it from:

 - some understanding of how the DocBook XSL package works with 
   DocBook XML. Bob Stayton's book, DocBook XSL: The Complete 
   Guide, available online at:
   is probably the best resources available for learning 
   DocBook XSL. 

 - an XSLT engine installed. DocBook XSL Configurator will work 
   with any XSLT engine. I use xsltproc, which is part of the 
   libxml2 package. You can download the libxml2 package from
   You can download precompiled libxml2 binaries for Windows at:

 - an FO processor installed

 - PDF and PostScript viewers installed

Nice work, Steve!

See also: