| By Vijay Phagura | Article Rating: |
|
| October 10, 2007 02:45 PM EDT | Reads: |
10,599 |
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:
- DTD Schema
- XML Schema
- XML Document
- XQuery File
- WSDL
- XSLT Stylesheet
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/ !
Published October 10, 2007 Reads 10,599
Copyright © 2007 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By 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.
- The Top 150 Players in Cloud Computing
- SYS-CON.TV: Cloud Computing Expo Power Panel
- Why IBM’s Server Chief Got Busted
- SOA World Power Panel on SYS-CON.TV
- 1st Annual GovIT Expo: Letter from the Technical Chair
- Deputy CIO of the CIA to Keynote 1st Annual GovIT Expo
- Stock in Focus: Dragon Capital
- 1st Annual Government IT Conference & Expo: Themes & Topics
- CIA was Headed to an Enterprise Cloud All Along: Jill Tummler Singer
- Cloud Computing Expo: Exclusive Q&A with Yahoo! SVP Cloud Computing
- The Top 150 Players in Cloud Computing
- SOA in the Cloud - Monitoring and Management for Reliability
- How to Diagnose Java Resource Starvation
- SYS-CON.TV: Cloud Computing Expo Power Panel
- Software AG Named "Gold Sponsor" of SOA World Conference & Expo 2009 East
- Why IBM’s Server Chief Got Busted
- IBM & Cloud Computing: How "SOA in the Cloud" Can Produce Real Change
- SYS-CON's Cloud Expo Adds Two New Tracks
- SOA World Power Panel on SYS-CON.TV
- 1st Annual GovIT Expo: Letter from the Technical Chair
- The i-Technology Right Stuff
- Who Are The All-Time Heroes of i-Technology?
- Get the Message
- Where Are RIA Technologies Headed in 2008?
- Success, Arrogance, Rise and Fall
- i-Technology Viewpoint: Is Web 2.0 the Global SOA?
- i-Technology Viewpoint: Thinking Outside the VC Box
- ESB Myth Busters: 10 Enterprise Service Bus Myths Debunked
- i-Technology Viewpoint: When to Leave Your First IT Job
- SOA Web Services Edge Conference Coverage on SYS-CON.TV









The new widgetry features multi-cluster suppo...
























