XML

Get Sharp!

Altova Software Version 2019 introduces over 20 new features to help you sharpen your  development game – starting with support for high-res and high-DPI monitors in both XMLSpy and UModel. There are also tools for working with new standards and database versions across the product line, the ability to map and convert data in Google Protocol Buffers format, and much more. Let’s take a look at the highlights.

v2019_blog.jpg

Support for High-PPI Monitors

As developers transition to 4K, UHD, and Retina displays, we’re working on revamping our UIs to be vivid and sharp on high-PPI screens of all sizes. Because XMLSpy and UModel are known for their graphical views, we’re rolling out support here first.

Both XMLSpy and UModel now take full advantage of the benefits of high-res screens and monitors to render graphics with more precision and detail, so the UIs of these products are now beautifully sharp on high-res monitors. The change will be most apparent in the graphical XML Schema, JSON Schema, XBRL, and WSDL editors in XMLSpy and in UML diagrams in UModel.

xmlspy-2019-sharp-1.png

Read more about what’s new in XMLSpy and what’s new in UModel.

Mapping of Data in Protocol Buffers

The list of formats supported by MapForce for drag-and-drop data mapping is growing again, this time with the addition of Google Protocol Buffers, as requested by numerous customers.

Protocol buffers is a language- and platform-neutral mechanism for serializing structured data. The method generally involves an interface description language that describes the structure of some data and a program that generates source code from that description for generating or parsing a stream of bytes that represents the structured data – but MapForce lets you work with Protocol Buffers visually, without needing to write code.

MapForce can now map data to or from binary instances encoded in Protocol Buffers format to any other format, including XML, relational databases, JSON, CSV, and more, visually, using drag and drop connections.

map-protocol-buffers.png

This makes converting Protocol Buffers to and from other formats easier than ever.

Read about all the new features in MapForce, including advanced filters for defining node functionsthat apply to multiple nodes at once.

Support for additional database versions

All database-enabled Altova MissionKit products and server software products support numerous versions of the most popular relational databases. In this latest release, that support is updated to include the most recent versions of several of those, specifically:

  • Firebird 3

  • Informix 12.10

  • MariaDb 10.3

  • Microsoft SQL Server 2017

  • MySQL 8

  • PostgreSQL 10

altova-db.png

Support for connecting to SQL Server running on Linux has also been added.

Extended XBRL support

We add additional XBRL support with every release, and this time XMLSpy and RaptorXML Server have received three important updates:

Support for XBRL Generic Preferred Label 1.0  

XBRL Generic Preferred Label is an extension of the XBRL specification that provides a syntax to make labels more flexible. XMLSpy includes a new entry helper for specifying preferred labels, and RaptorXML can validate documents that include XBRL Generic Preferred Label definitions.

Removal of duplicate XBRL facts 

When organizations create XBRL instance documents for filing, it’s important to detect and reconcile any duplicate facts.

detect-xbrl-duplicates.png

Starting with Version 2019, XMLSpy can check XBRL instances for various types of duplicate facts and report them for analysis. Both XMLSpy and RaptorXML can optionally ignore duplicates during processing.

New entry helpers for XBRL Typed Domain 

A typed domain is the element declaration that is referenced by a typed dimension.

The Details entry helper in the XMLSpy XBRL Taxonomy Editor includes a new Typed Domain tab that displays additional information about any typed domain referenced by a typed dimension definition.

 

High-availability options for FlowForce Server

For use in mission-critical scenarios, FlowForce Server, Altova’s customizable workflow engine, offers the option to distribute jobs among multiple servers.

Administrators can configure a primary server and multiple secondary servers, offering excellent scalability with a group of computers sharing heavy data processing jobs. At the same time, this allows for high-availability: if one of the secondary computers stops functioning, the system will continue to process FlowForce jobs.

Of course, for load sharing the corresponding Altova server software (e.g., MapForce Server, RaptorXML Server,  etc.) must be installed on the primary and all secondary servers in the system.

 

For more information about all the features added to each Altova product in this latest release, please see the Altova website.

What's new in XMLSpy Version 2015 Release 3

I'm very excited to announce the new v2015r3 release of XMLSpy today. XMLSpy continues to be the de-facto industry standard for XML Editing and we take that responsibility very seriously by adding support for new standards, improved technologies, as well as features that just make our users' work more productive every release.
This latest version of XMLSpy adds the following new features:
  • Support for XPath 3.1 and XQuery 3.1
  • Significantly extended XPath/XQuery tab
  • Support for Web Services Security and other security extensions
  • Support for XBRL Extensible Enumerations 1.0
  • Support for custom fonts in Output Windows
Improved XPath/XQuery tab in XMLSpy 2015r3
Let me tell you a little bit about each one of those features...



Support for XPath & XQuery 3.1

The RaptorXML engine at the core of XMLSpy now fully supports the updated XPath 3.1 and XQuery 3.1 specifications, which were published as W3 Candidate Recommendations in December of 2014. New capabilities in XPath and XQuery 3.1 include:
  • Maps
  • Arrays
  • Support for JSON: parse-json, json-docs, serialize to JSON
  • Lookup operator “?”
  • Arrow operator “=>”
  • New functions, e.g., sort, contains-token, parse-ietf-date
Maps and arrays increase flexibility and processing speed of XPath and XQuery statements significantly, while JSON support is important as adoption of the standard continues.

Significantly extended XPath/XQuery tab

The XPath/XQuery tab, which was augmented with innovative support for XQuery Update Facility in XMLSpy 2015, just got even more powerful for XSLT and XQuery developers. The new features - shown in the screenshot above - include:
  • Builder mode, offering a list of operators, expressions, and built in functions, which you can insert in your current expression by double clicking. Functions are inserted with their arguments indicated by “#” placeholders, making it easy to build expressions quickly and error-free. You can view a description of each item by hovering your mouse over it in the list. When you’re finished building an expression, click over to Evaluator mode to test the results.
  • Enhanced entry helpers now display the description of built in functions, and then show helpful function and listentrymeter details as you type, speeding development and ensuring accuracy.
  • Ready-to-use code snippets for complex statements such as FLWOR and XQuery Update expressions are provided in the Operator/Expression pane in Builder mode, allowing you to read a description of each and insert the expression at the cursor by double clicking.
  • Nine tabs are even more useful for developing and testing complex expressions. Once you have composed an XPath or XQuery statement on one tab, switching to a new tab lets you build and analyze the results of a new expression – but when you switch back to the previous tab, the expression and results are still there. This allows you to switch back and forth between multiple expressions that you develop side-by-side and incrementally make changes to each one of them, preserving both the expression AND the result for each tab.
     

Support for Web Services Security & other extensions

In response to increasing demand for end-to-end security of Web services transactions, XMLSpy 2015r3 now supports authentication based on the WS-Security (Web Services Security) standard via client certificates and calling Web services via HTTPS.
Published by OASIS, Web Services Security is an extension to the SOAP protocol designed to add security functions such as authentication to SOAP messages themselves for end-to-end security of complex Web services transactions. These measures add to those provided on the transport layer by HTTP security.
New options have been added to the SOAP Request Settings Dialog - shown in the screenshot below - which is accessed via the SOAP menu, allowing you to enable and edit HTTP security settings and WS-Security settings.

Support for XBRL Extensible Enumerations

XML Schema's xs:enumeration feature allows enumerated types to be defined. Such types have a fixed list of allowed values that cannot be changed until the next version of the schema is published.
XBRL projects often require "extensible enumerations", which leave extension taxonomy editors free to augment the list of allowed values for a concept. This is particularly important for allowing enumeration values in multiple languages as well as reusing existing domain hierarchies as fact enumeration values.
XMLSpy 2015r3 now supports extensible enumerations with multi-language labels in the XBRL Taxonomy editor.

For more information on What's New in the other products of the Altova MissionKit desktop developer tools and our Server product family, please take a look at the "What's new" page on our website and at the Altova Blog.

Extracting useful data from HTML pages with XQuery

When building in-house solutions or mobile enterprise applications, you are often faced with having to deal with legacy systems and data. In some ancient systems, the data might only be available as CSV files, in other cases it might be arcane fixed-length text reporting formats, but if the legacy system is less than 20 years old, chances are pretty good that someone built and HTML front-end and so the data is available through a browser interface that renders it in some poorly formatted HTML code that loosely follows the standard. And very likely you will find the data intermixed with formatting and other information, so extracting the useful data is usually not as easy as it sounds.

In addition, when you are building mobile solutions, you may sometimes need some government data that is not yet available in XML or another structured format, so you again are faced with having to extract that information from HTML pages.

Common approaches to extracting data from HTML pages, such as screen-scraping and tagging are cumbersome to implement and very susceptible to changes in the underlying HTML.

In this video demo I want to show you a better way of extracting useful and reusable data from HTML pages. In less than 15 minutes we will build a mobile solution that - as an example - takes Consumer Price Index data from the US Bureau of Labor Statistics, parses and normalizes the HTML page, and then uses an XQuery expression to build nicely structured XML data from the HTML table that can then be reused to build a CPI chart. I will walk you through the creation of the XQuery expression step-by-step so that you can easily apply this method to similar problems of HTML data extraction:



As you can see in the above video, it was fairly easy to create nicely structured XML data from a table in the HTML page and to create a first simple chart that plots the CPI data over time.

But the true power of this approach is that you have much more flexible charting capabilities in MobileTogether and the XML data is now reusable, so you can calculate annual inflation rates directly from the underlying CPI data and plot it as well.

In this next video demo I want to show you just how to do that in less than 10 minutes. We will add a year-range selector to our chart where we can define which years to plot, and we will add an overlay chart that derives the annual inflation rate based on the underlying CPI data using XPath calculations and the plots that data:



Using this technique, you can not only extract data from singular HTML pages, but easily build a modern mobile front-end experience for many legacy systems that just offer an HTML-based browser interface at present. This will enable you to make your workforce a lot more productive and efficient, as they can now use a friendly mobile app experience to access your system rather than having to deal with a couple of HTML pages and forms in a browser on their tiny smartphone screens.

Building a stand-alone mobile solution with MobileTogether

In a recent blog post I introduced our new MobileTogether platform for building mobile in-house solutions. Today I would like to give you a little demonstration of how easy it is to build a mobile solution with MobileTogether Designer.

As an example, we're going to build a simple tip calculator app for your next restaurant visit. Since this particular solution doesn't need any back-end data, we're going to create it as a stand-alone mobile solution so that it can be used even without a server connection once it is deployed.



As you can see, it just took about 8 minutes to build this app. MobileTogether lets you focus on what is really important, and handles everything else for you. If you want to try for yourself, you can download MobileTogether Designer here.

You can also watch more MobileTogether Designer video demos here.

XQuery Update Facility in XMLSpy

A really cool new feature in XMLSpy 2015 is the interactive XQuery Update Facility support, which lets you make changes to XML instance documents in a programmatic way - using XQuery statements - that exceed the typical regular expression based Find/Replace capabilities by far. The XQuery Update Facility specification provides a mechanism to insert nodes, delete notes, and modify nodes within instance documents. In XMLSpy 2015 you can now apply these updates either to the current file, all open files, all files in a project, or to entire directories.

This video explains the most important XQuery Update Facility commands and demonstrates how easy it is to put the power of XQuery Update Facility to work for you:



The new XQuery Update Facility support is one of the many new features introduced in the new Altova version 2015 product line last week, which includes new versions of XMLSpy, MapForce, all the other MissionKit tools, and all Altova server products.

Introducing MobileTogether - Build mobile in-house solutions faster

It's about time that I start talking about our next major product here: Altova MobileTogether is an exciting new cross-platform mobile environment that lets you build in-house mobile solutions for your workforce much faster and more productively than any other mobile cross-platform method out there. You can use MobileTogether to bring your in-house data — be it in SQL databases, XML, available as web services, etc. — to your employees on the device of their choice, be it business intelligence dashboards, elegant enterprise forms, or any other business processes from graphs for sales analytics to monitoring of business-critical data.


There are, of course, many ways to develop mobile solutions, and for external customer-facing apps the native platform approach or other multi-platform SDKs may make sense. But for in-house solutions the math just doesn't work. You need to be able to build these in a few days rather than weeks or months in order to stay on budget.


MobileTogether makes this rapid development possible by using a unique system architecture that consists of the following three components:


MobileTogether Designer

MobileTogether Designer is the IDE where you build your mobile solutions. It comes with full database-support for all major database servers as well as the ability to connect to any XML files, web services, HTML pages, or other data sources directly. If that's not enough, you can connect to FlowForce and MapForce server as an interim data transformation platform to get your data from EDI or other formats into XML easily.


Once you've defined your data sources, you then drag & drop UI controls onto your design surface and connect them with the data model. You can build powerful program logic using visual ActionTrees and for data manipulation the full power of XPath and XQuery is at your disposal.

This way you can build a powerful mobile solution in just a few hours and can test it right inside MobileTogether Designer using the built-in simulator that supports the iOS, Android, Windows Phone 8, and Windows 8 look&feel as well as many screen sizes and device options.

We have put together a few video demonstrations that show how easy it is to build a mobile solution with MobileTogether Designer.

MobileTogether Mobile App

Once you are satisfied with the way your mobile solution looks, it is time to get it onto your mobile device. The MobileTogether Mobile App is what runs your solutions on your device, and it is available for free form the respective app stores. The Mobile App is available for iOS, Android, Windows Phone 8, and even desktop Windows 8, so you can deploy your solutions to all mobile workers, no matter if they prefer a smartphone, tablet, or laptop!


Normally the MobileTogether Mobile App connects to a MobileTogether Server (see below), but for an initial trial run, you can simply connect the MobileTogether Mobile App directly to your MobileTogether Designer. Instead of starting the simulator in the designer, you select "Trial Run on Client" from the toolbar, and then you can see your mobile solution on your device and test it there, provided your mobile device is on the same local network as the computer where you are running MobileTogether Designer.

MobileTogether Server

Once you're ready to deploy your solution to your entire workforce, it is time to install and configure MobileTogether Server. This server acts as a conduit between your mobile clients and your database servers and other data sources in your IT infrastructure.


If you only want your mobile solutions to be available while the mobile devices are connected to your corporate Wi-Fi network, then it is sufficient to install the server in-house and your employees can immediately run your mobile solutions, once you've deployed them from the Designer to the Server.

If you want your employees to also be able to access your solutions while you are on the road, you will need to designate and open a port in your firewall so that the client devices can reach your server from the public Internet when they are traveling. We recommend installing an SSL certificate for that purpose so that the data connection between the clients and your MobileTogether Server is encrypted. In addition, we recommend securing the MobileTogether server with user authentication. You can choose between built-in user management, or the MobileTogether server can talk to your Active Directory server to integrate with your enterprise user management.

Alternatively, you can also install MobileTogether Server into a private cloud with a cloud provider of your choice, if you prefer to have your server running in a cloud rather than on your on-premises infrastructure.

Timeline

In May this year we first introduced Altova MobileTogether at TechEd in Houston, TX. In July we launched beta 1 of the MobileTogether Designer. In August we launched the beta 1 version of all the MobileTogether clients in the respective App Stores. And last week we launched beta 2 of MobileTogether Designer, Server, and the Apps. We expect MobileTogether to be commercially available later this fall.

Getting Started

You are invited to participate in the beta 2 and try it for yourself.


Just download the MobileTogether Designer from our website, download the MobileTogether Client from the App Store on your device, and you can be up and running and have your first solution on your device in 1-2 hours. Then, when you want to scale out to have your colleagues run it on their devices, you can download MobileTogether Server so that others can connect to it.

The Power of RaptorXML - now available in XMLSpy 2014

The RaptorXML Story

As you probably know by now, RaptorXML, our new 3rd generation high-performance XML, XPath, XSLT, XQuery, and XBRL processing engine, was a little over 2 years in the making. When we embarked on this mission in 2011, we set out to create a new processor that was highly optimized for multi-core CPUs, high throughput, and a reduced memory footprint. As part of that redesign we incorporated all our experience with the evolution of XML over the last decade and focused on adding support for all the latest standards, including XML 1.1, XML Schema 1.1, XPath 3.0, XSLT 3.0, XQuery 3.0, XBRL 2.1, XBRL Dimensions, XBRL Formula, and many others.

Our decision to first launch the new RaptorXML engine as a stand-alone server product in June rather than waiting for our annual product release in the fall was certainly not an easy decision to make. We knew that all our existing XMLSpy and MissionKit customers were eagerly awaiting support for XML Schema 1.1 as well as the 3.0 versions of XPath, XLST, and XQuery.

At the same time we knew that the engine was ready for large-scale production use, while the refactoring of our existing tools and integration of the new engine would still take another 3-4 months, so we decided to introduce RaptorXML as a stand-alone server product first. The initial RaptorXML announcement happened at the XBRL International conference in Dublin, Ireland, in May this year and commercial availability of the server followed in June, when RaptorXML joined the growing family of Altova Server products.

And it turns out we made the right decision. At this time RaptorXML+XBRL Server is already being used by over 50 customers, including a major banking regulator in Asia, to validate large amounts of XBRL data on high-end servers using XBRL 2.1 and XBRL Formula validation.


Altova MissionKit 2014 Launch

Now the long-awaited day has finally come and we are very excited to introduce our new Altova MissionKit 2014 product line that incorporates the RaptorXML engine in XMLSpy and many other MissionKit tools. This means you get immediate access to XML Schema 1.1, XPath 3.0, XSLT 3.0, XQuery 3.0, and XBRL Formula validation - in addition to all the previous standards - right from within the new XMLSpy 2014 XML Editor and you get a huge performance boost for all your projects due to the faster engine.

And we have, of course, extended our graphical XML Schema editor to include support for XML Schema 1.1 as well as adding the powerful SmartFix validation to the schema editor, so XMLSpy will now make intelligent suggestions on how to fix common XML Schema errors directly in the graphical schema editor.





Due to the new capabilities of RaptorXML you also get a cool new feature that has been requested by many users: the ability to display multiple validation errors at once!

And for all XBRL users we have included better XBRL Formula support as well as XBRL Concept Types in the XBRL Taxonomy editor. This makes XMLSpy Enterprise Edition the single most powerful XBRL development tool with taxonomy editing and powerful RaptorXML-based XBRL instance validation all available in one easily affordable tool.

Bottom-line: having RaptorXML inside of XMLSpy is just awesome and you will love the speed as well as the improved standards-conformance! And if you want to include RaptorXML-based validation in your own projects you can now deploy RaptorXML Server on Windows, Linux, and MacOS X. Check out the RaptorXML Server datasheet for more information.

But the good news doesn't stop with XMLSpy. Version 2014 of the Altova MissionKit includes several new features in MapForce as well, such as support for XML wildcards <xs:any> and <xs:anyAttribute> as well as the ability to generate comments and processing instructions in any XML output files.

Additional new features that are available across all major Altova MissionKit 2014 tools are: Integration with Eclipse 4.3, as well as updated support for new databases, including SQL Server 2012, MySQL 5.5.28, PostgreSQL 9.0.10, 9.1.6, 9.2.1, Sybase ASE 15.7, IBM DB2 9.5, 9.7, 10.1, Informix 11.70, and Access 2013.

Last, but not least, to help you take advantage of the powerful new XML Schema 1.1 capabilities, such as assertions, conditional type alternatives, default attributes, and open content, we are also launching a comprehensive new FREE XML Schema 1.1 online training course today.

For more information, please check out today's announcement on the Altova blog as well as the What's New page on the Altova website.

EOR (End of Recession) and OOW (Oracle Open World)

It is now official. The recession ended over a year ago. That doesn’t necessarily make us all feel better, but seeing the huge number of attendees at Oracle Open World this week and their great interest for all products is certainly a positive sign that the economy is indeed getting better – if only slowly.

Altova Booth at OOW

There are also some rather lavish displays by some of the industry’s biggest companies – it almost feels like the good old pre-recession days of 2007 again.

DSC00562

If you happen to be in San Francisco this week, please stop by at the Altova booth in the Moscone West hall and say hello. We are demo’ing the latest features of the new MissionKit 2011 as well as all the other awesome database-related functions in our product line, such as:

Looking forward to seeing you at Oracle Open World

Altova MissionKit v2011 just launched

I’m very excited about all the new features we’ve packed into the 2011 version of the Altova MissionKit that we just launched this week.

The most eye-catching feature certainly is the charting and reporting functionality for analyzing and communicating XML, database, XBRL, EDI – virtually any type of data – and produce the usual Line Chart, Bar Chart, Pie Chart, etc. Charts are created with a few clicks inside the MissionKit tools and can be immediately shared via copy/paste or saved as image files – that’s right, no more exporting to Excel – or integrated in reports or data entry applications designed in Altova StyleVision. Of course, you can also get the XSLT or XQuery code for generating the chart for use in your own apps using AltovaXML. Here is an example of a MapForce data transformation that directly links to a StyleVision output stylesheet, showing the result in tabular form as well as in a chart:

mapforce-html[1]

Equally impressive is the new UML database modeling feature in UModel 2011, which allows you to extend software modeling functionality by modeling relational databases along with your Java, C#, and Visual Basic software applications. This high-level modeling of databases nicely complements the existing low-level database structure editing of DatabaseSpy to make the MissionKit a complete solution for all database modeling needs.

UModel2011 database diagram

For people working with XML Schema, we have two exciting new features in XMLSpy: (a) a Schema Subset Generator that allows you to generate subsets of existing XML Schemas, which is extremely useful e.g. for IEPD development for NIEM; and (b) a Schema Flattener that allows you to create a new flat schema in just one file from any complex hierarchy of included or imported schemas.

schema-subset[1]

Last, but not least, we’ve added a complete Authentic Scripting Environment in StyleVision to let you create powerful XML content-editing and data-entry applications – including event-handlers, macros, buttons, toolbars, etc. - based on the Authentic platform.

script_project[1]

The Altova MissionKit 2011 is now available in English, German, and Japanese versions and comes in 32-bit and 64-bit versions!

So come and check out all the new features, then download your 30-day free trial to see for yourself how much more powerful the MissionKit 2011 is.

Altova and NIEM (the National Information Exchange Model)

In February this year I was invited to give the keynote address at the NIEM Town Hall meeting in Washington, DC, to talk about how Altova tools can support projects that facilitate the National Information Exchange Model (NIEM). In particular, I covered the use of Altova tools in the life cycle of developing the Information Exchange Package Documentation (IEPD). The slides from that speech are now available on slideshare and a recap of the NIEM town hall meeting is also available on the NIEM website.

Since then we’ve been working with NIEM to add new features to the Altova product line that further support the NIEM development cycle and in particular our recent release of XMLSpy 2010r3 adds two features that are very important for NIEM:

  1. NIEM defines a set of Naming and Design Rules (NDR) that specify how XML Schemas for a NIEM-conformant information exchange have to be constructed. XMLSpy now includes an extended schema validation function that allows a developer to validate a schema against naming and coding conventions, and in particular XMLSpy ships with a set of extended validation rules that allow validation against the NIEM NDR.
  2. Another important step during the development for an IEPD for a NIEM-conformant information exchange is the production of example XML files that demonstrate the data that can be exchanged. To provide better example files, XMLSpy now lets developers specify user-defined example values for each element, attribute, or type in an XML Schema. During the generation of example XML files XMLSpy then uses these user-defined example values to produce meaningful example documents that are immediately suitable for documentation and testing purposes.

Further details about Altova tools for NIEM can be found in the Solutions Center on the Altova website and also in today’s article Altova adds to NIEM support in v2010r3 on the Altova Blog.

iPad Review

With all the hype surrounding the iPad this weekend, I decided to wait a bit and only write about it on Monday. This was also just a picture-perfect weekend with ideal weather in New England and the Red Sox Opening Day on Sunday, so I spent most of my time outdoors rather than playing with or writing about the iPad.

Being a technology geek I had, of course, pre-ordered my iPad a while ago and so it arrived on Saturday via UPS truck as promised. The truck driver jokingly remarked that he had a full truck of just iPads to deliver and he wished he had bought Apple stock a while ago. The first sales data that Apple reported today does indeed sound promising.

But is the iPad really a new “magical” device as Apple likes to describe it? Or is it the beginning of a dystopian future where Apple controls what we are allowed to see, the apps that are approved, and the end of an open Internet (as some pundits claim)?

I won’t bore you with unboxing details that others have reported before, or give you a detailed guide to the best applications you should download to your new iPad.

Instead, I will distill the benefits of the iPad down to the one product image that explains it all:

Marvel Comics on iPad

Yes, the iPad is a primarily a media consumption device. Think of that cozy armchair in your living room, or the sofa, or the couch, or a bench in your backyard. Anywhere you would sit down with a good book to read. Have you tried using a laptop in any of those spots? It doesn’t quite work. Laptops are – despite their name – really only useful when you put them on a hotel room desk or airplane tray table.

By contrast, the iPad is really made for consuming media wherever and whenever you don’t want to sit at a desk! Now, in addition to reading books from the iBooks or Kindle bookstores, you can also read comics by Marvel (see image above), consume newspapers in digital editions, catch up on TV that you missed, watch movies you buy or rent on iTunes or Netflix, and browse the web. And if you are one of those always-connected people (like me) you can even read your e-mail and respond to the occasional important one, or access one of the many social networking sites or apps.

And it does all of that extremely well – to the point where it is indeed a new class of device and since everything just works and is super fast, it really has a certain “magical” feel to it. In fact, when I showed some of these apps to my family this weekend, I immediately got requests for additional iPads that they now want me to buy…

iBooks on iPad The one iPad app that is of great interest to this XML Aficionado is, of course, the iBooks app, which is both a very pretty e-Book reader and also a bookstore where you can buy these e-Books directly from Apple. The interesting thing about iBooks is that apple decided to support the open ePub file format for e-Books rather than a proprietary format like the Kindle. As you may have guessed already, ePub is XML-based and the content can be provided in either XHTML or DTBook format. The result is that with the launch of the iBooks bookstore there are not only a few publishers who have already signed up, but you also get a ton of works in the public domain, whose copyright has expired, and you can download all of them for free from the iBooks bookstore. 

WolframAlpha on iPad Above and beyond that, the iPad is really a great educational tool. Using WolframAlpha on the iPad is just a joy and there are also new apps, like The Elements: A Visual Exploration that are really beautifully made.

Yes, there are also some business applications, like Keynote for presentation, Pages for word processing, and Numbers for spreadsheet-type work. Those are really very pretty and easy to use and will certainly be useful for some people, but I am guessing these are more attractive for people who don’t have a laptop and, therefore, want to use the iPad for that purpose, too.

Regarding the iPad hardware: the device fits comfortably in your hand and even though it is a bit heavier than the Kindle, it just feels right. The screen is really beautiful and the colors are vibrant. I used the device for several hours on Saturday and Sunday and the battery life was much better than expected. And it is really fast and responsive. I didn’t find any feature or app where I had to “wait for the computer”. Very refreshing, indeed!

So should you buy an iPad now? That decision is entirely up to you, but this flowchart might help. All kidding aside, if you are an early adopter, like new technologies, and have the money to spend, I would go for it. Likewise, if you are considering buying a Kindle or a PSP, I would buy an iPad instead. However, if you don’t yet have an iPhone and are trying to decide between iPad and iPhone, I would probably rather go with the iPhone – in my opinion it is the more versatile device.

multi_touch_20100225 There is another group of people, for whom the iPad is probably ideal: those of the older generation, who have not yet bought any computer. The iPad is certainly the most gentle way for a senior to get access to e-mail, web browsing, and sharing photos with the younger generations. If you want your parents or grandparents to finally “get connected”, then a broadband Internet connection with wireless router plus an iPad is probably the best solution out there.

Are there any negative things to say about the iPad? I’m afraid not many. There is, of course, the one issue that developers of applications for the iPad are totally dependent upon Apple with respect to whether the apps can be sold through the app store, since Apple has a mandatory approval process and can reject any app for any reason. Tim Bray, co-author and editor of the XML specification, has been very outspoken about that issue and recently said:

“The iPhone vision of the mobile Internet’s future omits controversy, sex, and freedom, but includes strict limits on who can know what and who can say what. It’s a sterile Disney-fied walled garden surrounded by sharp-toothed lawyers. The people who create the apps serve at the landlord’s pleasure and fear his anger.

I hate it.

I hate it even though the iPhone hardware and software are great, because freedom’s not just another word for anything, nor is it an optional ingredient.”

The same is true for the iPad as much as for the iPhone. On the one hand I agree with Tim about freedom not being optional, on the other hand there are very few apps that Apple rejected that I would miss (Google Voice being the only one I can think of right now). The one benefit of Apple’s tight control over the app store is the total lack of viruses and malware on the iPhone/iPad platform. And it adds a layer of QA on top of most applications, so the software you buy in the app store typically works and is useful.

The second issue with the iPad that is worth mentioning is that there are apparently some Wi-Fi issues that people have reported. I haven’t seen any of those problems myself - either at home or in the office - and the iPad has been flawless in its ability to connect to the Internet anywhere I tried.

Finally, for those who are not convinced and would rather want to see the iPad being abused, there are already some interesting videos out there…

Altova unleashes 64-bit power for working with XML

It’s no secret: XML files are getting bigger every day as people devise more ways to utilize XML for real-world applications that involve large amounts of data. Up until now people were limited in the size of XML files that could be comfortably edited or processed due to the 32-bit nature of Windows and the limitations of memory that was available to applications.

Not anymore! I am very excited to announce that Altova today launched version 2010 release 2 of our entire product line and all our applications are now available in both 32-bit and shiny new 64-bit versions. Obviously, the 64-bit versions of our tools require a 64-bit version of Windows Vista or Windows 7 to be installed on your computer. And once you take the leap to 64-bit you will never want to look back.

I’ve personally been using Windows 7 64-bit since the launch of Windows 7 last fall and my computer now has 20GB (!) of RAM and you just won’t believe how super-fast applications like Adobe Photoshop CS4 (which is available in a 64-bit version!) suddenly are in such a configuration.

And now you can add XMLSpy, MapForce, UModel, StyleVision and all the other MissionKit applications to the list of super-fast and efficient 64-bit applications. Here is an example of the 64-bit version of XMLSpy 2010r2 editing a 2.7GB XML file – in this case a Wikipedia abstract dump (i.e. all abstracts for all Wikipedia articles):

XMLSpy 64-bit editing a 2.7GB XML file

You just can’t do that in any other XML editor today. There may be some competitors who want to make you believe that just by running their Java-based editor on a 64-bit version of the JVM you suddenly have a 64-bit app, but if you read their tech support forums you will quickly find that they cannot actually edit any files larger than 2GB. Hmmm, really?

What it boils down to is this: XMLSpy really is the only 64-bit XML Editor you can use today for working with large files without any limitations, provided you have enough RAM in your computer. And “large files” doesn’t necessarily mean GB-sized! You will notice that working even with 100MB files is significantly faster in the 64-bit version.

To ease the transition period from 32-bit to the new 64-bit world for our customers, we have configured all our tools so that you can install both versions in parallel. This might be necessary especially if you are using database drivers that aren’t available in 64-bit versions yet. Read more about the new 64-bit versions here and learn when you may want to use which version. Also, if you are using a Microsoft Access database you might want to read our new TechNote about Using Access Database in a 64-bit world.

In addition to the new 64-bit versions of our applications, we have also added several significant performance improvements that affect both 32-bit and 64-bit applications, such as optimizations upon opening files that result in files sized 10-100MB opening about 15 times faster than before.

And version 2010 release 2 contains tons of other new features, such as SharePoint support, UML 2.3 support, DiffDog integration for Windows Explorer, external C# and Java calls in MapForce mappings, and many more features.

Altova StyleVision In-Depth Review

Dave Gash published an in-depth review of Altova StyleVision 2010 on the WritersUA website this past week and says in his introduction:

Altova calls StyleVision a "stylesheet designer," but that technically accurate designation doesn't really do the software justice. They could have called it a "schema-based WYSIWYG drag-and-drop XML / XBRL / database visual page editor and XSLT / XSL-FO / HTML / RTF / PDF / Word / e-forms generator," but I'm guessing that wouldn't have made it past the suits in Marketing.

I like that new product description. It’s a bit of a mouthful, but certainly brings it to the point. Really, we couldn’t have said it any better…

Dave follows this introduction with a detailed review of the design method, user-interface, formatting, and output options and covers all the exciting new capabilities of version 2010, such as the new blueprint capability.

And after going over all the relevant features Dave comes to the following conclusion:

StyleVision is one of the most interesting software applications I've seen in years. Without question, it offers a new and unique approach to XSLT transform authoring, a skill formerly reserved for beanie-wearing, pocket-protector using, syntax-obsessing code jockeys such as your humble reviewer. It allows more of the tech pubs workforce than ever to transform raw data into aesthetic, useful pages.

While some coders might lament the loss of a previously proprietary skill set to non-programmers, the fact is that spreading knowledge around is a good thing. Make no mistake: as more people use a technology, the better that technology becomes, and StyleVision's application of the WYSIWYG concept to XSLT is a shining example.

We are delighted to hear that! Please check out Dave’s review and then download a free 30-day eval version to see for yourself.

Microsoft e-mail to customers about Word XML patent injunction

I have previously reported on the XML Aficionado blog about Microsoft losing the XML patent appeal in December as well as on the earlier verdict by a Texas court.

Today I received the following e-mail from Microsoft – apparently this is addressed to us since we are using Microsoft Office 2007 as a customer under the volume licensing program:

Dear Alexander Falk,

On December 22, 2009, a United States court of appeals ruled that Microsoft must stop selling versions of Microsoft Word (including Microsoft Office suites) that contain certain functionality that was ruled to infringe on a United States patent.

This injunction only applies to new Microsoft Word and Microsoft Office licenses purchased from Microsoft on or after January 11, 2010 in or for deployment in the United States or its territories. If you are only using licenses acquired prior to January 11, 2010, you do not need to take any action.

Microsoft has updated Microsoft Word 2007 and Microsoft Office 2007 to remove the disputed functionality, which pertains to custom XML tagging. Microsoft has also created a software update for Word 2003 and Office 2003. In the vast majority of cases this functionality is not in use and requires development knowledge to implement. To learn more about the specific custom XML elements removed from Microsoft Word 2007 please read Microsoft Knowledge Base article 978951 at the following website http://support.microsoft.com/kb/978951.

In accordance with Microsoft Volume License agreement provisions, we hereby notify you that any future deployment of Microsoft Word 2003 and 2007 or Microsoft Office 2003 and 2007 purchased after January 10, 2010 for use in the United States or its territories must use updated software.

If you plan future deployments of Microsoft Word 2003 and 2007 or Microsoft Office 2003 and 2007 based on licenses that you purchase before January 11, 2010, no action is required and you may continue to deploy your existing version of these products. This includes all licenses purchased under any of the Microsoft Volume Licensing programs including all versions of Software Assurance.

Additionally, if you have already deployed licensed copies of these products prior to January 11, 2010, and will be submitting payment later (through the Enterprise Agreement True Up process or the Select process), then you may continue to use those deployed versions. If you are already using copies of these products through a subscription license agreement, then you may continue to use those deployed versions.

Starting January 1, 2010, updated English, Spanish, and French language versions of Microsoft Word 2007 or Microsoft Office 2007 are available for download on the Microsoft Volume Licensing Service Center. To update other language versions of this software, or to update copies of Microsoft Word 2003 or Microsoft Office 2003, you will find instructions on how to do so on the Microsoft Volume Licensing Service Center download pages for these products at https://www.microsoft.com/licensing/servicecenter/.

If you require physical media, please order through your normal media fulfillment channel. If you are an Open license customer, you may order media directly from the Volume Licensing Service Center.

If you are running Microsoft Word 2010 beta or Microsoft Office 2010 beta or plan to deploy these products once they are released, no action is required with respect to this notification.

If you have any questions about this information, please contact your Microsoft representative or email msftvl@microsoft.com.

Sincerely,

Microsoft Corporation

No big surprises here. As had been previously discussed on techmeme.com, the preparation for removal of the infringing Custom XML feature had been well underway at Microsoft and this is part of their way of complying with the injunction.

XBRL Enhancements in XMLSpy 2010

I have written about XBRL on this blog a lot, and you probably already know that we’ve added support for XBRL across several of our products already in version 2009, when we introduced the XBRL Taxonomy Editor and XBRL validation in XMLSpy, added XBRL data mapping and instance document creation to MapForce, and XBRL rendering, report generation, and presentation to StyleVision.

So what’s new in version 2010? We have enhanced the XBRL support in our award-winning XML Editor based on direct customer feedback and added four frequently requested XBRL features to XMLSpy:

XBRL Taxonomy Wizard

The new XBRL Taxonomy Wizard makes extending an industry-standard XBRL taxonomy, or even creating a new taxonomy a breeze.

You simply use the File/New dialog to begin a new XBRL Taxonomy Schema, and XMLSpy prompts you to select the existing base taxonomy (e.g., US-GAAP, IFRS, etc.) you wish to extend (if any).

Once you enter the company ticker or name, XMLSpy automatically creates and saves all the required taxonomy files, including all the various linkbase documents.

XBRL Taxonomy Wizard

In Step 2 of the wizard you get to pick one or more entry points of the taxonomy you are extending.

XBRL Taxonomy Wizard

Once you click finish, XMLSpy 2010 displays the newly created taxonomy files in XBRL view, where you can continue editing and refining the taxonomy in a graphical manner.

The new XBRL Taxonomy Wizard is an invaluable time-saver when you need to create a new taxonomy for your organization.

XBRL documentation generation

To further facilitate XBRL taxonomy development in its graphical XBRL Taxonomy Editor, XMLSpy 2010 now supports the generation of comprehensive XBRL documentation.

Multiple options for what information to include in documentation (below) are available, and documentation may be generated in HTML, Microsoft® Word, or RTF.

XBRL documentation

A snippet from generated documentation is shown below. Related components are hyperlinked in the onscreen output, allowing users to easily navigate from component to component.

XBRL documentation

Generation of XBRL documentation is a must-have feature for anyone creating, editing, or extending an XBRL taxonomy.

Printing graphical XBRL view

This new feature allows you to print the graphical representation of your XBRL taxonomy as it is displayed in the graphical XBRL View. Below is an example of the print-preview of an XBRL taxonomy:

Print XBRL

Find in XBRL, XBRL sorting

When working in XBRL View, the new Find in XBRL tab of the XMLSpy 2010 output window (which you can also activate using Ctrl-F) allows you to search an entire XBRL taxonomy or document, with advanced options for narrowing your results. Results are listed in the output window, where multiple tabs let you store numerous queries. Clicking any item in the results window navigates to that specific location in the document.

Find in XBRL

This functionality makes finding information in XBRL files, which tend to be rather large and complex, much easier.

The XBRL sorting in XMLSpy 2010 also makes it easier to view and navigate your file in XBRL view, allowing you to sort elements by name, substitution group, or type.

Sort XBRL

All these enhancements make XMLSpy the ideal XBRL Taxonomy Editor for your next XBRL project. As always, you can download a free 30-day evaluation version from our website to see for yourself…

JSON and XML

Listening to bloggers over the last couple of years and also in talking to several developers in the industry it appeared to me that the JSON vs. XML debate seemed to primarily be a “religious” conflict – much like the “PC vs. Mac” or “Java vs. .NET” are to a large extent. I call it a religious conflict simply because there are fanatics on either side and they try to convert the masses and get them to agree with their point of view. But if you look at both XML and JSON with an unbiased mind and take each approach seriously, you’ll quickly find out that there are tons of applications where XML makes more sense and then there is a ton of other applications where JSON makes more sense. I would argue that XML has the better infra-structure of surrounding standards (like XML Schema, XSLT, XPath, etc.) that makes is a much richer platform and provides more flexibility, but there is something to be said about the elegance, efficiency, and simplicity of JSON, too. Instead of viewing JSON and XML as competing technologies we decided in our v2010 release to support them side-by-side and give our users the choice: XMLSpy 2010 now includes a JSON editor and supports JSON editing in its text and grid views with full syntax coloring, syntax checking, etc. This makes XMLSpy the first and only XML Editor to support JSON:

Just like we find some of our customers using XMLSpy as a plug-in within Eclipse and doing code-generation for Java, whereas other customers are using XMLSpy embedded within Visual Studio and doing primarily code-generation for C#, we expect that some of our customers will user our tools for JSON work, and others won’t. As a standards-focused developer tools vendor we simply want to give them the choice.

So let’s talk a bit more about the JSON vs. XML devate. For some background reading, I’d recommend doing a Google search for “JSON vs XML” and you will find various different opinions.

Here is my take on the matter: XML by itself appears to be similar to JSON only when you ignore all the surrounding XML-related standards. At its core, both JSON and XML are used to capture and describe structured and unstructured data. JSON mainly focuses on storing or transmitting that data efficiently, i.e. with very little overhead, whereas XML focuses on a rich environment that includes entities and a mechanism to support metadata and extensibility. The extensibility is really the huge difference: XML includes concepts on how existing XML data can be augmented, extended and enriched by additional data and metadata from other domains using XML Namespaces. Furthermore, XML data can be processed with XSLT, queried with XQuery, addressed and extracted via XPath, etc. – none of those supporting technologies are really available for JSON in such rich diversity. However, when it comes to just capturing simple structured data and expressing it either in files or in a transmission between client and server, JSON shines with its simplicity and – some argue – better human readability.

So once we made the decision to support JSON in XMLSpy in addition to XML, the next question became obviously how you get data from one format into the other, and so we added a JSON <=> XML conversion option to our Convert menu.

For example, take the following bit of JSON data:

And you can now easily convert that into an equivalent piece of XML data:

Our main logic to include easy one-click conversion was that we figured people would sometimes want to experiment to see what approach works best for their application or their data. As such, they can simply take existing XML data and easily convert it to JSON to test with their new app, or conversely if they run into an issue with a JSON based application and need to convert existing data files to XML because they need the extensibility, meta-data, attributes, or the processing capabilities of XSLT and XQuery, they can easily do that with XMLSpy now.

But make no mistake: we are not saying that JSON is better than XML. On the contrary, I continue to be a huge fan of XML, which is why this blog is called the XML Aficionado, not the JSON Aficionado!

So the fact that there is a conversion function from XML => JSON in XMLSpy now doesn’t mean that people should necessarily convert from one format to the other. Rather, I see people who use either one or both formats wanting to occasionally move data from one world into the other or experiment with the other format and to make that process very convenient we’ve added the ability to convert from one to the other whenever you need to. But mainly we expect people will work either with JSON files or with XML files – depending on what is most suitable for their particular application or use-case.

So go ahead, use the comment section and let me know how you feel about the JSON vs  XML debate and what you think of our approach to support both…

P.S. My thanks go to Peter Zschunke, because a lot of material for this blog post came from a discussion and e-mail interview we recently conducted for his German blog XML-Ecke.

MOST WANTED: over 70 new features in 2010 Altova product lineup


I'm very excited that Altova has announced version 2010 of our entire product line today. This new release of our most popular XML, Database, UML, and Web Services tools includes over 70 new features that our customers have asked for.
Instead of pushing some proprietary platform or other hidden agenda, we at Altova believe in delivering exactly those features that our users need the most. We’ve listened to your feedback via our discussion forums, support requests, and social networking sites and put together a list of the MOST WANTED features that will help you stay at the cutting edge of technology and deliver the best results.
Several key feature areas are: a totally new design paradigm in StyleVision that makes stylesheet design more productive and enables a whole new generation of electronic forms based on Authentic; WSDL 2.0 support; substantial XBRL enhancements; schema comparison/differencing for XML and databases; SysML support in UModel; JSON support in XMLSpy; and much, much more.
I will be writing more about individual features in the future, but for now I suggest you go to the Altova Blog and read the announcement and also check out the press release.

Altova at Oracle OpenWorld 2009

Today was the first big day at Oracle OpenWorld 2009 in San Francisco and Altova is exhibiting at booth# 3750 in the Moscone West hall this year.

We had great traffic at our booth already on the first day and lots of people were interested in how MapForce can help them to move data into and out of the database and how to transform different data formats quickly and efficiently. Especially the new XBRL and HL7 data formats supported by MapForce 2009 appeared to be exactly what people wanted.
There was also a lot of interest in the database differencing features of DiffDog and DatabaseSpy - it appears that a lot of people are in the process of migrating data between systems, and that is exactly where these tools can add tremendous value.
There is a also a lot of talk about MySQL at the show this year - due to Oracle's acquisition of Sun - and I'm happy to report that all our tools do, of course, work great with both Oracle and MySQL as well as all other major databases.
If you are at the show this year, make sure you visit our booth and say hello. I am usually at the booth every morning...

Microsoft Word injunction: court grants motion to stay

As reported on The Microsoft Blog, the court has granted Microsoft’s motion to stay the injunction in the i4i patent case until the appeal process is complete. Also, Microsoft’s request for an expedited appeal process has been granted already on August 21, so this will continue to be very interesting to watch.

See also my previous coverage on the i4i vs. Microsoft patent case on the XML Aficionado blog:

Learn XML with XMLSpy

For some of us, who have been working with XML for ten years now, it seems almost inconceivable that there are still people who are learning XML now. But the fact of the matter is that XML is being used in so many different domains now, that every day new people get introduced to XML and have a need for training.

To help them get up to speed quickly, we’ve launched a new free online training class that focuses on learning XML and learning how to use XMLSpy to work with XML more productively. This is a great beginner class and we hope that it will help newcomers to the field of XML:

Learn XML and XMLSpy

In this training we cover basic XML principles, how to edit an XML document, and how to create and XML schema. For further information, please see the Altova Blog post on this topic, and the Learn XML page on the Altova website.