YOUR FEEDBACK
Working at Google vs. Working at Microsoft
Ray the Barbarian wrote: I worked at Microsoft Research, and I had an in p...
SOA World Conference
Virtualization Conference
$50 Savings Expire June 24, 2008... – Register Today!


2007 West
GOLD SPONSORS:
Active Endpoints
Your SOA Needs BPEL for Orchestration
BEA
Virtualized SOA: Adaptive Infrastructure for Demanding Applications
Nexaweb
Overcoming Bandwidth Challenges with Nexaweb
TIBCO
What is Service Virtualization?
SILVER SPONSORS:
WSO2
Using Web Services Technologies and FOSS Solutions
Click For 2007 East
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts
SOA World Editorial - Discovering Dr. Dolittle
From the title, you might be thinking that I'm about to start this month's editorial with a reference to talking to animals and somehow tie that into SOA. Instead, what I actually would like to talk about is the pushmi-pullyu (I got the spelling from Wikipedia; I always thought it was 'push-me pull
SYS-CON.TV
TODAY'S TOP SOA & WEBSERVICES LINKS


Stylus Studio XML IDE
Providing tools to work efficiently with XML

Digg This!

Extensible Markup Language, more popularly known as XML, has found its uses in many areas of software products. Though XML offers a lot of features and uses, it's hard to develop with and maintain without good tools. This review discusses such a tool that would help XML and Java developers use XML efficiently.

Introduction
Stylus Studio is not only an XML tool but is also an Integrated Development Environment (IDE). It provides the developer with various tools to work efficiently with XML and related applications.
It can be downloaded from the site listed in the References section.

Once you download it, it is a simple install. During installation, it will ask the usual questions about the directory location but you can choose the defaults that it provides. Once it's installed and you have launched it, it will ask for the license key and some registration info. Doing all that will bring up the first screen as shown in Figure 1.

Document Creation
There are a variety of documents that can be created using Stylus Studio, some of which are:

  1. DTD Schema
  2. XML Schema
  3. XML Document
  4. XQuery File
  5. WSDL
  6. XSLT Stylesheet
The creation process is very simple and intuitive. Moreover, there are lots of converters and wizards that Stylus Studio provides; for instance, there are many occasions when you have an XML file and want to generate an XSD from it. With Stylus Studio it's just a few clicks away. It provides a converter just for doing that. There is also a custom converter with which a user can convert files to XML format.

There are many more wizards that the Stylus Studio provides such as converting an XSD to XML document, and DTD to XSD. See Figure 2 for a snapshot of the wizard.

XML Editing
Stylus Studio provides a variety of views and tools to edit and create XML files. A user can open an XML file in Stylus Studio and it's ready for editing. The XML can be formatted so that all the tags are aligned to provide more readability just with a click of a button. The elements and attributes are easily identifiable with distinct colors that can also be customized by the user.

Stylus Studio automatically provides multiple views of an XML file in different tabs. Three types of views are provided: text, tree, and grid. These views are helpful during development. Figure 3 and Figure 4 show the tree and grid views. The actual XML file is presented in Listing 1.

An XML schema or a DTD can be easily attached to an XML document and the document can then be validated by clicking the validation button. As soon as a document is attached to an XSD or DTD, the document is validated immediately and the user is made aware of any violations present in the document. This makes it very easy for the user to detect errors and correct them at runtime as they are creating or viewing the XML document.

XML Schema
As mentioned above, it's very easy to create an XML schema from an already existing XML document. As an illustration, I have converted the books.xml document to an XSD as shown in Listing 2.

In Figure 5, the editor shows an accurate graphical view of the XSD, making it very easy to edit and debug. Apart from the presented view of the XSD, Stylus Studio also provides a tree view. A really smooth feature of Stylus Studio is the documentation of the XSD. Any developer would know how tedious and frustrating it is to document an XSD. With Stylus Studio, it's easy and it generates the entire basic XSD document.

The XSD can be attached to any XML document and then validated by clicking on the validation button. Any errors the XML might have are clearly displayed.

XQuery and XPath
XQuery is a programming language that leverages XPath for XML document navigation. As with other languages, having the right tool can greatly simplify the application development process, and this is where Stylus Studio shines. Its intuitive, integrated debugger and XPath expression evaluator allow you to quickly and easily debug XQuery. Debugging is supported for XSLT and Java as well as XQuery. This is where Stylus Studio shines. It has a friendly debugger so the XPath/XQuery expressions can be debugged easily.

Here is an example XQuery:

for $c in //books/book
where $c/authors/author="Tyler Jewell"
return $c/subject

This query is on the books.xml in Listing 1 and returns the subject of the book by author "Tyler Jewell"; the result of this query is shown in Figure 6. Figure 6 also shows Stylus Studio's various panes. As seen in the left-hand side of the Preview pane there are various views and execution buttons. Also, note that the execution of this query is for a particular scenario that is Scenario 1. Stylus Studio allows you to define multiple scenarios so you can evaluate different factors that might influence query performance, such as the source XML file and XQuery processors. Stylus Studio supports numerous XQuery processors, including DataDirect XQuery, which is specially optimized to execute XQuery against relational data. In this example, I used the Saxon 8.9.0.3, another popular XQuery processor supported by Stylus Studio.

The XPath/XQuery debugger is accessible to the user by clicking the "bug" button. Breakpoints can be easily scattered over a query by toggling them and the user can start debugging.

The Java code for the example XQuery can be generated by Stylus Studio, which can be used as a standalone program or in any other application. Listing 3 shows the Java file generated by Stylus Studio, with appropriate comments in the code about the JARs it needs. As a bonus, Stylus Studio can compile and execute the Java code it generated. Also, users can use the debugger provided by Stylus Studio to debug the Java code.

Summary
Overall I found Stylus Studio very useful and it can save you tons of time and effort while fine-tuning XML applications. This tool can increase developer productivity and the quality of your applications. It performed fairly well compared to similar tools in the market. It was fast to start and restart. Also, it was pretty responsive to view the files and switch between various views.

Stylus Studio is very easy and intuitive to use as the Java IDEs. If you are a Java developer and use Eclipse or other IDEs, using Stylus Studio will come naturally to you

Test Environment
Operating System: Win XP Pro
CPU: 2Ghz
Mem: 1G

References
•  Stylus Studio: www.stylusstudio.com/ !

About Vijay Phagura
Vijay Phagura, a professional Java/J2EE consultant has over twelve years of experience in software architecture and development. Vijay currently consults with companies; he specializes in architecture and development of software using J2EE and other Java technologies, like JDMK.

SOA WORLD LATEST STORIES
Web 2.0 Journal Case Study: Transcending E-mail as a Platform for Multi-Person Collaboration
E-mail is extremely easy to adopt and use, and lends itself very well to certain types of collaboration. When two people are attempting to collaborate asynchronously, e-mail is usually the best solution. It's certainly far less frustrating than phone tag. But once more people are invol
Adobe's Kevin Lynch and Microsoft's Scott Guthrie to Keynote AJAX World RIA Conference & Expo
Two of the biggest launches in Rich Internet Application history took place in 2007/2008 when Adobe launched AIR 1.0 in February '08 and Microsoft launched Silverlight (September '07). At the 6th International AJAXWorld RIA Conference & Expo in October SYS-CON Events is delighted to be
SYS-CON's Virtualization Expo Attracts More Delegates Than Gartner
Virtualization has quickly become a staple new concept for enterprise IT. At SYS-CON's 3rd International Virtualization Conference & Expo, held at the Roosevelt Hotel in New York City, June 23-24, we had exceptional speakers with high-quality use cases not only of how virtualization ma
Elixir Technology (Represented by JNet Direct) Nominated for SYS-CON's "SOA World Magazine Readers' Choice Awards"
Elixir Technology provides Integrated Business Intelligence with Elixir Repertoire - a product for Dashboard, Reporting, Data ETL and Scheduling. Supporting 'Web 2.0' with RESTful Web Services architectural approach on SOA, Elixir Repertoire aims to power the new generation enterprise
Seagull Software Nominated for SYS-CON's "SOA World Magazine Readers' Choice Awards"
Legacy systems typically contain the most critical information in an enterprise, and many organizations have more than one type of legacy platform. LegaSuite Integration is a middleware tool to simplify and accelerate integration of all types legacy data, business logic and screens wit
AmberPoint Launches SOA Partner Program
AmberPoint announced a new program to recruit and support leading systems integrators. The AmberPoint Systems Integrator Alliance Program provides the tools systems integrators need in order to implement reliable and manageable SOA-enabled systems with AmberPoint's runtime SOA governan
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON FEATURED WHITEPAPERS


ADS BY GOOGLE