July 2006 Archives

M. David Peterson

AddThis Social Bookmark Button

akjak.com � VADER SESSIONS

VADER SESSIONS

Torn by good & evil and an incestuous love affair, a lonely and depraved Darth Vader has a nervous breakdown.

This is by far the FUNNIEST thing ever made this side of the Milky Way! It was created entirely by using the true voice of Vader, Mr. James Earl Jones HIMSELF!

NOTE: Nothing was stolen, no money was lost, and in fact my guess is that Skywalker Sound, Industrial Light and Magic, and George Lucas himself stand to gain even more exposure than they already have** from the making of this film.

In other words, the word “Free” should not be confused with the word “free“.

Thanks for watching.

NOTE: For a greater understanding of what a truly Free Culture stands to gain from being just that — a Free Culture — please download, read, or listen to either the looped stream, or the on demand streams linked below.

Oh, and please share.

Thanks!

Rick Jelliffe

AddThis Social Bookmark Button

Anyone making a desktop application in Swing and several other platforms will be struck by the absense of a framework for the basic user interaction.

Spurred on by the recent discussions on XML-DEV about a common platform for XML applications, by the current work at Sun on their Swing application framework, and by the need to brainstorm user interface ideas at Topologi, I’ve made up spec for office desktop application user interfaces called Doxology (Download PDF file). Documents and Topologi, geddit. It addresses a fairly basic functionality that is missing from current Swing APIs, for example. Feel free to adopt or adapt it, as part of your designs, if you need something like this. I don’t intend to provide code, its not that level.

I’ve also submitted Doxology as an input into JSR 296; the note to Sun’s Hans Muller follows.
[Note: the link above is to the most recent version of Doxology. The link below is the version I sent Hans.]



M. David Peterson

AddThis Social Bookmark Button

An ABSOLUTE GEM (Ruby? ;)) of a presentation that MUST NOT be missed comes from none other than Dave Johnson,

TriXML2006-BeyondBlogging.pdf (application/pdf Object)

Enjoy!

Hari K. Gottipati

AddThis Social Bookmark Button

According to the Burton Group’s research, Prototype is the most used framework for Ajax development. In the survey of 488 Ajax developers conducted by Burton Group, the most popular libraries and frameworks ranked as follows:

Prototype 26.6%

script.aculo.us 19.5%

DWR 14.8%

Dojo 11.1%

Ruby on Rails 10.0%

Rico 6.8%

Ajax.NET 6.8%

Sajax 5.7%

xajax 3.3%

Prototype is leading with 26.6% share and it is used by script.aculo.us and Rico frameworks. Again, Ruby on Rails uses script.aculo.us which is based on Prototype. So together Prototype share is more than 70%. Currently I am using Dojo framework and its market share is way below the Prototype share. Dojo’s packaging system, UI widgets(like Rich Text editor) and its event system makes Dojo as a well engineered framework. I also like its IFrame workaround for back button support. Having these unique features why Dojo is behind the others? Is it because of its heaviness or complexity? Or some thing else?

Also whats the best Ajax framework/toolkit in your perspective? Share your thoughts!!!

M. David Peterson

AddThis Social Bookmark Button

Russ has pulled together a FANTASTIC comparison overview of Blip Messaging and Email,

// @author RussMiles.com - Home - Got email? I’d rather have a BLIP…

At the heart of LLUP is the BLIP. The BLIP is a piece of content, declared in a standard way using XML, that specifies four main things:

* A reference
A pointer to the content that the BLIP describes.
* A lifetime
How long the BLIP will be relevant for.
* Relevancy
Listed as keywords by a defined or undefined vocabulary. Can also include a signature or signatures of those who should receive the BLIP.
* Signature
A means of signing the message by the message sender.

There’s more at the above linked reference.

Thanks Russ!

David A. Chappell

AddThis Social Bookmark Button

We have been meeting with the SCA folks for a while and staying in close touch with its progression. We have finally made it official however and joined in the SCA effort. The list of companies collaborating in the development of SCA is now up to 17 - BEA, Cape Clear, IBM, Interface21, IONA, Oracle, Primeton Technologies, Progress Software (formerly Sonic Software), Red Hat, Rogue Wave Software, SAP AG, Software AG, Sun, Sybase, TIBCO, Xcalia, and Zend. These 17 organizations span SOA and applications companies to infrastructure and open source providers….

Rick Jelliffe

AddThis Social Bookmark Button

As several commentators point out, there is quite a large size and complexity difference between the different office formats of the simple examples given in my previous blog Comparing Office Document Formats. But it is useful not to jump to conclusions. Don’t be scared of wrapper elements: HTML has too few and is popular but impoverished because of it.

The bottom line of data formats is “is the information extractable?” not “is the markup pretty?” Complexity is certainly undesirable, but the choices are not simple: for example, if you decide to have really simple elements that only serve one signalling prupose each, or favour elements over attributes, you will probably end up with deeper nesting that may scare the horses: people will be perturbed. Yet in a sense you are uncomplexifying: at least you are increasing cohesion and decreasing coupling.

Dan Zambonini

AddThis Social Bookmark Button

Hot on the heels of our clickdensity heat-map software, we’ve taken on yet more developers to create our fourth and fifth products. Although the fifth product is ‘top secret’ (read: still a bit ambiguous), the requirements behind it have raised an interesting question about tagging.

Most — if not all — tags are currently used to record the subject-matter of an object. For example, “this is a photo of the Chrysler Building” or “this is a blog entry about Lebanon“.

Could we update this flexible system to allow us to describe more than subject matter, without affecting the simplicity?

Kurt Cagle

AddThis Social Bookmark Button

I have a class I’m preparing for tomorrow at the 2006 GeoWeb conference on the use of SVG in GIS. I’ll be posting those notes tomorrow, but tonight, as I’m basically doing my damndest NOT to work on the class for tomorrow (serious procrastination issues here) I thought I’d just make a couple of quick notes about PHP5.

I have to admit it, I have more than a little bit of a bias toward the underdog, especially when that underdog isn’t just one big mega-corp going after another big mega-corp. I think that’s part of the reason I’ve always found myself cheering for PHP, even when I could readily admit that there were problems with the language. There were - PHP3 was, while not exactly slow, hardly known for its speed-demon like characteristics. It didn’t really have much in the way of oomph when it came to object-oriented programming, which, while I personally believe OOP to have an upper boundary to the level of complexity it can handle, I still think that most contemporary languages should be able to support OOP as a matter of course.

Yet my biggest pet peeve with PHP, something that kept me from adopting it in any meaningful way, was Sablotron, PHP’s erstwhile XSLT library. With Sablotron you had to install it directly, rather than as part of the normal install for PHP, which meant that for hosted sites, you were out of luck even getting it in many cases. The transformer was slow and buggy and non-standard, and while it has improved over the years, it was always something of an also ran within the XSLT world.

M. David Peterson

AddThis Social Bookmark Button

mikechampion’s weblog

Feel the power of the functional programming style, Luuuke. In DOM you can use XSL, and in XLinq you can use either XSLT or functional construction to transform from one tree to another without imperative manipulation. That will avoid the problem. Or you could use non-lazy tree navigation (no NodeLists in DOM or IEnumerables in XLinq) to locate data to modify.

I tell ya… Everytime I read another article, blog entry, or watch a Channel 9 flick on LINQ, the more excited I become. To see such a distinct effort for LINQ to “buddy up” with XSLT just makes my little XMLHacker heart go “pitter patter, pitter patter.”

NOTE: Don’t bother… As soon as I’m done writing this I’m taking myself out back and kickin’ my own a$$ for that one. ;)

Okay then, so lets add a little more fun to the mix, shall we?

Kurt Cagle

AddThis Social Bookmark Button

One of the things that I so enjoy about watching the Mozilla Firefox development process is that they are not shy in pushing forward with technologies that many would have thought solid and immutable. JavaScript is a case in point. JavaScript had largely stagnated as a language from about 1998 on, until AJAX (spurred largely by renewed interest in the Mozilla platform) suddenly came out of nowhere. Accessors (getters and setters), more sophisticated array handling, E4X and other innovations have come out of the development process.

With the release of Firefox 2.0 beta 1, there are several new features that have been dropped into the language, features which are likely to be used sparingly at first but which offer a significant set of capabilities that will likely become welcome tools in any AJAX developer’s toolbox.

Rick Jelliffe

AddThis Social Bookmark Button

I’ve just gone dual screen, and after two weeks I cannot imagine going back. Fantastic! Open Office always open on the right screen, Firefox/Thunderbird/Eclipse/Topologi/command shells in the left. This configuration makes it much easier to do research (cutting) in the left and writing (pasting) in the right: it seems to improve the rythm and sponentaity.

I feel noticeably more productive: I think there is some mental effort involved in switching contexts that brings on fatigue early. Plus the writing screen is there always, so if I am working on, say, a seminar and doing my email when a BRILLIANT IDEA strikes me, I can directly ornament the seminar notes then directly continue the email without changing the top application or switching desktops or anything else that requires memory.

I wonder whether there is an accessibility aspect to this: older people have poorer memories and are more confusable, as a stereotype. At least, that is how I feel. Larger screen space, such as multiple screens, reduces the number of things that are active yet hidden.

David A. Chappell

AddThis Social Bookmark Button

Sonic ESB(R) has been ranked first worldwide in the Enterprise Service Bus (ESB) segment of Gartner Dataquest’s latest report on the worldwide application integration and middleware (AIM) market. The report, “Market Share: AIM and Portal Software, Worldwide, 2005,” published June 9, 2006, provides market share results for the AIM market in seven worldwide regions. Not only was Sonic ranked #1 in worldwide marketshare, but we also grew at a rate of 113% over the previous year.

Overall, the Gartner Dataquest report noted that the ESB market expanded more significantly in 2005 than any other AIM segment with 160.7 percent revenue growth.

According to the report, “The introduction of Web services and the resulting popularization of SOA caused a major upheaval in this market. Before 2002, integration backbones were largely proprietary, and many application developers were unknowledgeable about SOA and event-driven design. During 2002 through 2004, a new type of middleware, ESBs, came to market to exploit Web-services standards and the growing interest in SOA.”

If you’re a Gartner client, you should get the report and have a look.
Dave

Dan Zambonini

AddThis Social Bookmark Button

Disclaimer: This blog is not about Linux or Apple, but rather the sensationalist nature of blogging that encourages low-value content. The irony, eh?

Rick Jelliffe

AddThis Social Bookmark Button

InfoWorld is carrying an article Incremental Open-Sourcing Java interviewing a Sun software CTO that says Expect the open-sourcing of the Java programming language to be done in incremental steps, with some pieces available by next June — but not the entire platform.

M. David Peterson

AddThis Social Bookmark Button

You’re winning…

Microsoft executive lauds open source | InfoWorld | News | 2006-07-19 | By Paul Krill

[NOTE: I learned of this from Robin Cover’s daily newslink email, and like his summary best. Below is a copy of his summary.]

David Kaefer, director of Business Development, Intellectual Property
and Licensing at Microsoft, said open source had bolstered innovation
in a distributed fashion, and he called the open source software
movement a “very powerful force in the industry.” Microsoft has
partnered with the open source community, linking up with companies
such as JBoss, SugarCRM and XenSource, Kaefer said. And it is leveraging
open source in its Open XML Translator project, which will enable its
Office suite to support the OpenDocument Format standard. Emphasizing
Microsoft’s intention to be more open, Kaefer said, the company is
doing more to open up its protocols and license formats, such as its
Office format. The company’s Shared Source program, for its part,
allows access to its code. Microsoft itself is bolstering its efforts
in IP (intellectual property) licensing. The company is trying to
understand how it can create technologies and find homes for some of
those outside the company; the company is exploring inbound IP
acquisitions. The company this week announced it has licensed 3-D
technology codenamed TouchLight to Eon Reality.

David A. Chappell

AddThis Social Bookmark Button

There’s quite a lively discussion heating up over on InfoQ on the subject of ESB’s–Concensus on the definition of an ESB, and ESB use cases are two of the forum topics that are going on over there at the moment. InfoQ is a web site that has recently been launched by some ex-ServerSide.com guys. Go have a look.
Dave

David A. Chappell

AddThis Social Bookmark Button

I was recently interviewed by Vance McCarthy of Integration Developer News, where he asked me a number of questions about what Progress and Sonic have been doing with new advancements in ESB technology -
Here’s how Vance describes the Interview -

“This lively discussion provides IT execs and architects business and technical insights for how ESBs are being used in an Architectural and Lifecycle point-of-view.. “

It goes for 17 minutes. I must have been feeling chatty that day. There’s a lot to talk about, primarily how an ESB can provide an implementation of advanced web services specs such WS-ReliableMessaging, WS-Addressing, WS-Policy, and WS-Security. Also how an Eclipse based IDE can become an Integrated Services Environment (ISE) for modeling processes, configuring services, and distributed debugging -
http://www.idevnews.com/Program_Code.asp?ProgramID=7
Dave

M. David Peterson

AddThis Social Bookmark Button

via Peter Saint-André, I discovered,

MicroID - Small Decentralized Verifiable Identity

MicroID is a new Identity layer to the web and Microformats that allows anyone to simply claim verifiable ownership over their own pages and content hosted anywhere. The technology is radically simple and capable of empowering new and unique meta services with only minor effort.

It’s so simple (the process) it will make you wonder why you didn’t think of it first.

Whats REALLY COOL, yet purely coincidental, is that this same general area (although the above is even more simple, and therefore, better) can be directly applied to the idea I blogged about a few months ago in regards to adding a layer of simple, short-term, data contract-based security to the mix.

In related news, Did anybody else just feel that?

Don’t worry… you will ;)

Hari K. Gottipati

AddThis Social Bookmark Button

Alex Iskold described the Concurrent Document pattern here which explains how to load XML documents concurrently and how to know when all of them are loaded by having a loader that keeps track of what has been loaded and invokes a callback once all the documents have been fetched.

Its useful and reduces the initialization time when you need to load multiple configuration/bootstrap settings during application startup. Its like loading web application’s property settings, log settings, configuration settings etc., with different threads via init servlet in J2EE environment during the server startup.

Can you think of any alternative approaches to load the settings during the application startup?

M. David Peterson

AddThis Social Bookmark Button

ChannelXML Community Blogs | M. David Peterson : eXplorations, Episode #5: XML, Open Source, and The Bottom Line

So Kurt has already provided an introduction short story novel that covers the content of this podcast quite nicely, no need to add to or take away from what already exists. :)

This time around we have ~ 23 minutes of the spoken word, ~ 1 minute of intro music, and ~ 1 minute of follow-up music thats adds a bit to both ends of the commentary. As usual, eXplorations can be enjoyed in MP3 and WMA format. This time around, however, we are also including a version in Ogg Vorbis (OGG) which, as crazy at it might seem, sounds as good as the MP3 and pretty close to the WMA, yet weights in at only 7,528k compared to 17,247KB for the MP3, and 11,642 for the WMA.

Not too shabby for a patent free, freely usable, open source, open standard, DRG free media format (that doesn’t cost anything either);)

Enjoy! :)

[ MP3 Format ] [ WMA Format ] [ OGG Format ]

eXplorations is Copyright 2006, Kurt Cagle and M. David Peterson, and is licensed under a Creative Commons Attribution 2.5 license.


[ Podcast Data Feed ]

Rick Jelliffe

AddThis Social Bookmark Button

I’m teaching a course this week where the attendees requested some basic information on office file formats. People want to know how easy it is to convert from the kind of XML they generate into other purposes. So I loaded a simple HTML file with headings, paragraph, table and list and converted it to various office XML(ish) formats: HTML (through Word 2000), WordML (through Word 2003), pre-standard ODF (SWT, through Open Office 2.0.2), ODF (through Open Office 2.0.2), as XML from the Office 2007 beta, and to XSL-FO using HTML2FO.

The document is a simple one that looks like this (the original has no formatting: the following example may inherit styles not intended):



A heading

A paragraph

A subheading

A B
1 2
  • a
  • bullet
  • list

Some of the file formats save as ZIP, in which case I extracted the content file and left any style files or metadata files (Some of the MS files have embedded metadata). Most of the formats just spew out data onto one line, so I reformatted the XML in Topologi Markup Editor using “Publishing Style” in the Foreman, and XML delimiting.

The WordML file contained a few odd characters like U+FOA7 (Topologi replaces them with a PI in the examples below to mark them out) which is a character in the Private Use Area of Unicode: I’m not completely sure what the purpose of this is, but I suspect they have mapped Wingdings font to the PUA area. I don’t know why they don’t just use the real Unicode characters there; perhaps the same mechanism is used for accessing user-defined fonts (as used in East Asia) with non-standard characters.

Word 2007 gives two options for saving as XML. If you just save it as a word document it is saved as a ZIP file, and the XML contents are in “word/document.xml”. You can also save it direct to XML, which compiles all the parts in the same file: that’s what I used below, with the extra parts removed.

As for sizes, this is a tiny example but it shows

 512 eg.html
4.0K eg-word.htm  (Word 2000)
4.5K eg-fo.xml (HTML2FO)
4.5K eg-word2007.docx/word/document.xml  (Word 2007)
8.0K eg.stw    (ZIP file)
8.5K eg.odt    (ZIP file)
9.5K content-swt.xml  (extracted contents)
 10K content-odt.xml  (extracted contents)
 10K eg.rtf     (Word 2000)
 11K eg-word2007.xml   (Word 2003)
 12K eg.word2007.docx(Word 2007)
 40K eg-word2007.xml (Word 2007)
Hari K. Gottipati

AddThis Social Bookmark Button

An interesting approach to reduce the response time while dealing with 3rd party data can be found here as a W AJAX pattern.

This reminds me the Multi-Stage_Download pattern which quickly downloads the page structure with a standard request, then populate it with further requests. But Multi-stage Download pattern deals with the huge data(not necessarily from 3rd party data) and displays them in chunks. W AJAX pattern deals with the 3rd party data where your web server talks to the 3rd party server to get the data. In this pattern you make the non-blocking request to your web server which opens the thread to the 3rd party server for the data and returns the web page without waiting for the 3rd party data. Browser sends further request asynchronously to the web server for the 3rd party data and then renders that in the web page.

The only difference between these two patterns is making the initial request for the chunk of data and the further request for the next chunk vs. making the initial request for whole data but return the first chunk after opening a thread in the background to fetch the next chunk and then present next chunk in further request. In second case you are reducing the processing time for next chunk as it is already in process in background since the first request made.

I think this definitely reduces the response time compared to Multi-stage download approach. What do you think? Share in comments.

Kurt Cagle

AddThis Social Bookmark Button

M. David Peterson and I host a regular podcast, eXplorations, and most recently spent sometime discussing the open source movement and the underlying “business case” for open source. Mark (the M. side of his name) usually tends to argue the proprietary source side of things, while I tend to argue the open source side, and while things can get fairly intense in our discussions - as for any two people on different sides of a contentious issue, the rhetoric can get heated - we do this largely to discuss some of the deeper aspects of the programming world that we (and our audience, hopefully) occupies.

Mark most recently brought up one of the core questions that anyone asks of open source, and one of those that is perhaps most relevant to any of us with mortgages and kids to feed: “Where is the value proposition in open source for the programmer? Where’s the business model for actually making this work pay?”

Simon St. Laurent

AddThis Social Bookmark Button

For years, the most frequent question people asked at conferences when I described myself as O’Reilly’s XML editor was “when are you going to have an XQuery book?” My usual answer was “when it’s cooked.” XQuery isn’t completely cooked yet, but we’ve found a way to share what we’re publishing on it while we’re waiting for completion.

We’ve made Priscilla Walmsley’s upcoming XQuery available as a Rough Cut. About half of the book is posted today, with more to come over the next few weeks. It’s a solid introduction to a complex but powerful specification.

O’Reilly is already using XQuery internally for a number of projects, just one example of how even though the specification hasn’t been signed and sealed, it’s getting used. It’s a bit unusual for us to publish a book in Rough Cuts so long before print publication, but if you’re one of the early adopters, hopefully you’ll find it useful.

Rick Jelliffe

AddThis Social Bookmark Button

I’ve updated again my 1999 diagram Family Tree of Schema Languages for Markup Languages to include the innovation coming from OASIS, ISO, W3C and other places since XSD came out.

I put ASL in, but left out things like ISO Topic Map Constraint Language, OASIS CAM and some of the little toy languages that have fed into ISO DSDL. It’s also rearranged to clarify where all the parts of DSDL fit. There is also activity at the next level up: RDF and business rules, that don’t fit here but are good. The diagram was quite popular when it came out, I think largely so that people could figure out which abbreviations and acronyms to ignore.

Hari K. Gottipati

AddThis Social Bookmark Button

eWeek is running an article titled “Developers Working to Overcome AJAX Accessibility Issues“. Finally people realized the disadvantages of Ajax and they are trying to overcome them. The main disadvantage of Ajax is a Web page is not required to reload to change, many screen readers or other assistive technologies used by sight-impaired or otherwise disabled users may not be aware of the dynamic changes. Particularly this is the major hurdle for federal sector because all federal government web sites/applications has to meet the Section 508 of the Rehabilitation Act.

From the article, Bindows development framework for building AJAX and Web 2.0 applications developed by MB Technologies now features Section 508 accessibility compliance. But they didn’t talk about how they overcome the accessibility issue and how they let know the screen readers about the dynamic changes caused by JavaScript/Ajax. Will it generate the standard website(non Ajax site) based on Ajax site to work with Screen readers/JavaScript disabled browsers/Non XMLHttpRequest compliance browsers? Details yet to be known.

The question is, is it possible to be 100% accessible(Check the accessibility issues) with any framework? Its very very hard to be 100% accessible as Ajax is dependant on lot of things including JavaScript, XMLHttpRequest etc., and it updates the page with out reloading, also it makes the request to server without user interaction. Even if its not 100% possible(?) at least lot of companies including Google, Microsoft, IBM, TIBCO etc are working to overcome the accessibility issues and I am sure they will make significant improvement.

I think Ajax may not be adopted by every one without addressing the accessibility issues, because no body wants to develop Ajax/Non-Ajax versions of the application. If we fail to overcome this issue, we will see the Ajax implementations just to say “ooh look at me I’m web 2.0 too!” or to target the users who enabled JavaScript and using the particular versions of the browsers(by ignoring the blind people). Since majority of users has the latest browsers with Ajax/JavaScript support(90% of browsers have JavaScript enabled), do you think Accessibility is not going to be an issue?

Share your thoughts in comments.

Rick Jelliffe

AddThis Social Bookmark Button

A tale of two tipping points.

Microsoft’s Chris Capossela has published on MSDN an explanation of MS’s position on XML formats that is, I think, really important and useful.

M. David Peterson

AddThis Social Bookmark Button

Update: Sylvain has just posted a FANTASTIC overview of LLUP, looking at things from the view point of the importance of its transport protocol independence, and some of the problems we have specifically set-out to help solve in regards to reducing the use of network resources, allowing for those same resources to process more information, in less time. I would encourage you to stop by for a visit just as soon as you have a chance.

Thanks Sylvain!


[Original Post]
Just got a ping from Russ regarding an article he just finished up that implements an LLUP subscription web service that communicates between Ruby on Rails and the .NET platform via a SOAP-based Blip Messaging service,

SOA Ranch - Articles - SOA and Rails, Part 1

This article, the first in a series of three from Russ Miles, will cover how to get started with a simple web service in Rails. We’re going to create a web service and then test for interoperability with a simple C# application.

Now some most every last one of ya might be asking,

“Huh?”

in which I would respond,

Excellent question… Thanks for asking. :)

[From the above linked post from Russ]

M. David Peterson

AddThis Social Bookmark Button

From the latest weekly release of Opera (v 9.01 apparently) we discover,

8518,3466,383 - Desktop Team - by Desktop Team

Added support for exls:node-set in XSLT

NOTE: I can only hope that by exls:nose-set, they mean exsl:node-set. If no, then this could does present a problem, but an easily fixed problem, which is always a good thing.

Of course, the ability to combine the document function with the EXSLT node-set() function can be a powerful tool, as this allows the ability to access data that is outside the current context document being processed, to then dice and splice this data into variouses pieces, processing dynamically generated XML fragments via the exsl:node-set function. None-the-less, this (exsl:node-set) is still an EXTREMELY nice addition in which I am truly grateful to the folks at Opera for adding to the XSLT mix.

That said,

M. David Peterson

AddThis Social Bookmark Button

Why am I not surprised to hear claims of vaporware (not true, < I've built it and tested it myself), or comments such as,

Well, ODF was designed for people who use spreadsheets, word processors, and presentations. Open XML was designed for people who use Microsoft spreadsheets, word processors and presentations.

which should more correctly read,

M. David Peterson

AddThis Social Bookmark Button

Earlier this morning (MDT) on XSL-List, Andrew Welch, an XML/XSLT/Java etc… hacker extraordinaire [1] announced the availability of Kernow 1.4,

Kernow can be downloaded from:

http://sourceforge.net/projects/kernowforsaxon/

Kernow is a graphical front end for Saxon written in Java 1.5. It’s
intended for anyone who currently uses Saxon to process directories of
XML and would benefit from the caching, or who uses Saxon from the
command line and gets fed up typing in paths each day :) Although it
started life purely as a utility for running transforms, it can run
XQueries too and now perform directory validation using XSD or RNG.

- Added optional caching URI and entity resolvers (including an entity
resolver for documents referenced through the collection() function)
- Added directory validation using SaxonSA, Xerces or JAXP (choice of
XSD or RNG where possible).
- Added the ability to run schema aware XQueries
- Added default, lax and strict validation for schema aware transforms
and queries
- Added the ability to choose the type of files to process in a
directory (eg, xml, xhtml, or well-formed html)
- Fixed a number of small bugs

cheers
andrew

[1] - If you find you have interest, you can often find Andrew attempting to challenge none other than Dimitre Novatchev in “coding competitions“, posting each attempt to XSL-List, or dueling back and forth on Andrew’s blog.

He doesn’t always win.

But then again, he doesn’t always lose either. ;)

Good times, good times…

On a related note, have I mentioned I’m a geek? Probably didn’t have to, huh?

… Nope! ;)

Kurt Cagle

AddThis Social Bookmark Button

Some very interesting ice thawing out there, and I’m not talking about the arctic tundra (though that’s melting too at a rather disturbing rate …). Gerald Bauer, a friend and noted expert in the XUL space twigged my attention to a recently deployed Source Forge project to develop an Open Office ODF plugin for Microsoft Word 2007 (http://odf-converter.sourceforge.net/). While there are a number of participants involved, what I find most interesting is this entry:

Microsoft (Funding, Architectural & Technical Guidance and Project co-coordination)

While this may be simply a tacit recognition of the writing on the wall, I find it fascinating nonetheless that this is being done 1) as a source-forge project, 2) with both funding and apparent blessing from Microsoft, and 3) that it seems to be a very real effort to reach out to the OSS community in a meaningful way on a technology that could be seen as directly competitive.

Watch that space closely - I sense that there are shifts and strains going on at the intermediate management level within Microsoft that may prove to be critical for the evolution of the company in the next several years, and this quiet little project may be simply the vanguard of this approach.

M. David Peterson

AddThis Social Bookmark Button

A while back (3 months ago?) I received contact from Peter Hale regarding a few things that related to some work that Kurt, Russ, and myself had been developing, and how they related to his PhD work in regards to User Driven Programming. I turned him on to the AspectXML project as something that might be of particular interest.

It seems he likes what he sees :D

Peter Hale PhD Research - User Driven Programming

Aspect Oriented Programming

AspectXML - This research is especially useful where software functions can’t be neatly attached to particilar objects or nodes in a hierarchy. These are known as cross-cutting concerns as they may affect several nodes.

These are useful links to an renowned researcher and writer on XML, XSLT, XUL, SVG, Java, and on the general direction of software and web research.

Kurt Cagle - Kurt Cagle - Web site

Kurt Cagle - Kurt Cagle - Article - Thoughts on Complexity

Russ Miles - O’Reilly Blog - AspectXML, AspectJ, Java.

Russ Miles - SOA Ranch - Service-oriented architecture.

Russ Miles - UML Ranch - Unified Modeling Language.

The AspectXML site is being developed by this team also including M. David Peterson, and Russel Miles

Explanation

AspectXML - Article - http://www.oreillynet.com/xml/blog/2005/09/part_3_assets_atom_feeds_and_a.html - [Part 3] Assets, Atom Feeds, and AspectXML - The Triple Threat of Web Development? - O’Reilly XML.com - M. David Peterson.

Community site

AspectXML - http://www.aspectxml.org/ - Community Open Source Project.

Thanks Peter! Let us know how we can help :)

Jim Alateras

AddThis Social Bookmark Button

The BPEL4People white paper contributed by IBM and SAP describes how to support People Activities within the scope of the existing BPEL standards. It does not introduce any new constructs but it does suggest that future versions of the BPEL standard may be extended to directly support these concepts. The paper introduces the principle of a manual task which is executed by a human participant. This task, which is part of a long-running business process, fundamentally suspends the process until it is completed by the corresponding participant. In addition the paper presents the notion of the task list that is used to hold tasks (or people activities) for a participant, which may represent a specific person, a group of people, a collection of roles etc.

People links are used to bind a group of people to a business process similar to the manner that partner links are used to bind web services to processes. The people links are resolved at runtime to select the specific person/group of people that can execute a particular people activity. It may result in some query on an organizational directory.

As mentioned previously when the business process engine encounters a person activity it will suspend the business process until the person completes the associated task. (not always the case as there maybe parallel paths in the business process but it will stall one thread of the business process). In order to resume the business process the user or ‘task list agent’ needs to notify the business process engine when it has successfully/unsuccessfully completed the task. The task list agent should support a number of others features including query available tasks, claim task, revoke task and fail task.

During my time at Intalio, many years ago, we developed a set of processes on top of our business process engine (in that time it was based on BPML but has now moved to support BPEL) to support exactly the principles outlined in this paper. These processes were distributed with the engine providing support for people activity out-of-the-box. Although, there is no need to extend the BPEL language to support people activity I can also see the advantage of having language support for these type of activities.

The BPEL4People paper also covers the user interface dimension but that will have to be the subject on another blog entry.

Hari K. Gottipati

AddThis Social Bookmark Button

Simile(Semantic Interoperability of Metadata and Information in unLike Environments), a joint project conducted by w3C and MIT Libraries, released a visualization tool for time-based information. From the project description, its a DHTML-based AJAXy widget for visualizing time-based events. Below is the screen shot of the JFK Assassination timeline - a minute by minute development when John F. Kennedy got shot on November 22nd, 1963 in Dallas.

M. David Peterson

AddThis Social Bookmark Button

There is something simply beautiful about a country who’s inhabitants, both native and foreign, can create something so diverse, and yet so native all at the same time.

NOTE TO ALL AMERICANS:

Wait, what? — Oh, no, not you… I’m speaking to each of our native American brothers and sisters, both South and North, and to our East and West of wherever each of us might be in this beautiful place we *ALL* call home. What, you think being born here makes you a native? If where we were born defines who we are, will become, and nothing else, we’d all still have 20 feet of water over our heads, and a life expectancy of about 3-5 years.

I wouldn’t think too hard about that one… It’s much simpler than it probably sounds.

So anyway, back to my NOTE:

I just wanted to say thanks for sharing this beautiful country of yours with us. It’s a wonderful place to be! Especially when you look at images such as that below and think to yourself,

Oh, The Freedom Soaked Justice of Such Beautiful Poetic Irony.

TheFreedomSoakedJustice_of_BeautifulPoeticIrony.png

God, I love this country!

Thanks again for sharing it with me and the rest of my foreign friends :) It may not be said all that often, and there might even be some who disagree.

But thats part of what makes this such a fantastic country to live in.

Diversity is Simply Beautiful.

Thanks!

[NOTE: If you find yourself looking at the above image without even a single clue as to what I could possibly be refering to, I wouldn’t feel to bad… If this is the case, it just means you’re not a Super Geek Phreak like me. :D

If nothing else, there’s always that simple fact that should help bring a smile to your face when most needed ;)]

Kurt Cagle

AddThis Social Bookmark Button

I’ve been fighting a severe day of laziness today (or perhaps exhaustion - its been a fairly trying week all told), and after having started and stopped any number of projects today, I’ve finally decided to get back to the XForms series and concentrate on the next topic in my list - customization. However, before I begin, I wanted to make an announcement or two.

The first is one of those glass half empty type of things. I’ve been working for a while on a Firefox book, but between fairly trying times with a previous employer and a seemingly endless shifting focus on the part of Firefox, I’d really reached the point where progress was crawling there. I think, however, that there’s been another reason for my lack of progress as well - books are a great deal like bananas. If you hit the market too soon, they are green and hard and generally not terribly appetizing. Hit the sweet spot, and bananas are both very good (especially in a bowl of cereal) and yet have a reasonably firm consistency. Wait too long, or if the conditions are not quite right, and you end up with soft, brown, fairly disgusting messes.

Jim Alateras

AddThis Social Bookmark Button

The difference between orchestration and choreography boils down to *perspective*. This is best illustrated by the diagram below, which depicts three participants collaborating in a business process (i.e. purchase and ship a book).

Choreography is concerned with all the message exchanges between all the participants engaged in the process. It’s a birds-eye perspective of the process. Orchestration, on the other hand is only interested with the message changes from the perspective of a single participant. Therefore in the diagram below, we have the yellow circle which represents the birds-eye perspective and the red ovals, which represent each participant’s perspective.

choreo-orch.JPG

In the specification space WS-CDL could be used to specify the choreography and WS-BPEL the orchestration. In fact once we have a WS-CDL document of the process we should be able to generate the skeleton WS-BPEL documents for each participant.

Rick Jelliffe

AddThis Social Bookmark Button

Sydney fashion designer Nick Carr prompted this interesting (er, to me anyway) legal analogy for schema languages: well-formedness and grammars, such as XSD, DTD or RELAX NG, relate to a document’s merchantable quality, while Schematron relates more to a document’s fitness for purpose. *

I guess this fits into the idea that as XML design matures and moves away from ad hoc management and towards XML governance, validation practices will move from being “what is the minimum we can do to cobble together something that works” to “how can I measure my documents to prove that they align with business requirements?”

I’ll be giving a half day tutorial on Methods for XML Governance and a related 40 minute presentation XML Governance and Publishing in Sydney at the Open Publish conference in late July. I’m told the tutorial session has had more bookings than the other tutorials, so interested people probably should book ASAP.

M. David Peterson

AddThis Social Bookmark Button

I sometimes find myself in complete and total awe by how complicated people can make something that simply doesn’t need to be complicated by ANY stretch of the imagination. For example,

In regards to the understanding of “Man” and “Machine”, I’ve come to five ABSOLUTE “without a single, solitary, doubt in my mind” conclusions thus far in life…

1 - As the number of levers, control knobs, and bypass valves on or around a device increase, there is a proportionate increase in the level of “understanding” in regards to how something works by a similar proportionate of individuals who will claim they understand how something works.

2 - As the number of levers, control knobs, and bypass valves contained on or around a device decrease, there is a proportionate decrease in the level of understanding of how something works by a similar proportionate decrease in individuals who will claim they understand how something works.

3 - The fewer the levers, control knobs, and bypass valves; the easier something is to understand.

4 - The fewer the levers, control knobs, and bypass valves, generally speaking, the better something works, and even more so, the more reliable something tends to be.

5 - If you want to understand how a particular device works, ask the guy who invented the version with the fewest number of levers, control knobs, and bypass valves.

So, for example,

Advertisement