Posts

Teach DiffDog a New Trick


Teach DiffDog a New Trick You can easily train DiffDog, Altova’s diff/merge tool for files, directories, and databases, to correctly interpret new file types. For instance, more and more file standards are taking advantage of the Zip compression format to deliver entire sets of files in a single convenient package. Let’s say you want to use DiffDog to examine and compare files created by Google Earth that are saved in .kmz archives. When you initially open a folder containing .kmz documents, then attempt to compare two files in a DiffDog document window, DiffDog reports the .kmz files contain binary content: Diff merge tool DiffDog message All you have to do is add the .kmz file extension in the File Types tab of the DiffDog Options dialog: DiffDog tools and options And click the Zip conformant radio button to assign the correct behavior: Compare zip archives Now that DiffDog understands the .kmz file extension is a Zip archive, it expands the Directory compare window to list all the component files. Compare directories You can see differences inside the archives. When you double-click any file pair, DiffDog automatically fetches them from the Zip archives and presents them for interactive editing in a new File Compare window. However, some of the file types enclosed in the Zip archive are also unknown. We learned from reading the XML Aficionado blog entry on Google Earth and XMLSpy that .kml files are an open XML-based standard for geo-spatial information. We can add .kml to DiffDog files types and specify XML-conformant syntax coloring: XML syntax coloring Now DiffDog displays the files with syntax coloring and we can apply all the DiffDog XML-aware differencing functionality. DiffDog  file compare If you dig deeper into the .kmz archive, you’ll discover .dae files are also XML-based. After you add .dae to the DiffDog files list and set it as XML-compliant, give yourself a treat! Compare .dae   DiffDog is available as a standalone tool or as part of the Altova MissionKit tool suite. The recently released DiffDog Version 2009 added powerful database content diff/merge capabilities – take a free trial for a walk around the block.

Tags: ,

Now available: Altova MissionKit Version 2009


We are very excited to announce general availability of the Altova MissionKit 2009 suite of XML, database, and UML tools. Version 2009 delivers numerous new features across the tools included in the MissionKit, including comprehensive support for working with XBRL, native support for new databases and database differencing, UML sequence diagram generation, and much more. A few details are below, with complete information and screenshots available on the Altova What’s New page. Coinciding with this major release, we have decided to pass savings realized due to the currently favorable US$/EUR exchange rate directly to our customers by reducing US$ prices across the entire Version 2009 product line.

Support for XBRL

The Altova MissionKit 2009 provides powerful new support for viewing, editing, validating, mapping, and publishing XBRL data. With intelligent wizards, graphical drag-and-drop design models, and various code generation capabilities, the MissionKit Version 2009 gives developers, technical professionals, and power users one easy-to-use suite of tools for working with XBRL and transforming data into content that can be shared with business partners, stakeholders, and regulatory commissions. Altova MissionKit tools with XBRL support are:

  • XMLSpy 2009 – includes an XBRL validation engine that allows users to view and analyze XBRL taxonomies, as well as validate XBRL instance documents. XMLSpy 2009 also includes a graphical XBRL taxonomy editor, which provides a visual representation of XBRL taxonomies with intelligent views and entry helpers for editing and extending them.

XBRL-taxonomy-editor2

  • MapForce 2009 – supports graphical, drag-and-drop mapping of XBRL taxonomies as the source or target in any data mapping project. This new functionality enables users to comply with financial and business reporting mandates by graphically mapping backend data from accounting systems and databases to the XBRL format, or creating valid interim reports based on stored data. Users can map XBRL data to or from any other data format supported by MapForce, including XML, databases, flat files, Excel 2007 (OOXML), Web services, and EDI. This support is also useful for aggregating public XBRL data and mapping it to a database, for instance, for further analysis.

mapforce_xbrl_thumb

  • StyleVision 2009 – Altova’s graphical stylesheet design tool now includes support for rendering XBRL data. This allows users to visually design financial reports for simultaneous output into HTML, RTF, PDF, and Word 2007 (OOXML) formats, enabling organizations to share customized business data in online or print format(s) with business partners, stakeholders, and regulatory commissions, all based on XBRL taxonomy requirements. 

Extended Database Functionality

Native support for additional databases has been added to all database-enabled Altova MissionKit tools, including XMLSpy 2009, MapForce 2009, DatabaseSpy 2009, StyleVision 2009, and DiffDog 2009. Current support for SQL Server® and Oracle® databases is now extended to include the most recent versions – SQL Server 2008 and Oracle 11g. New support for the PostgreSQL 8 database is also now available. In addition, both DatabaseSpy 2009 and DiffDog 2009 now allow you to compare and merge database content. Individual database tables or multiple tables within a schema can be compared, whether they are the same database type or completely different databases. Results of the content comparisons are displayed in tables, and differences can be merged bi-directionally. This new database comparison functionality allows users to easily backup, copy, or merge data quickly and easily. WhatsNewV2009DatabaseSpy2_thumb

Sequence Diagram Generation

MissionKit users working with UML will be especially interested in this new functionality in UModel 2009. Sequence diagram generation greatly assists developers who need to reverse engineer existing applications written in Java, C#, or Visual Basic. After importing an existing project, directory, or file into a UModel 2009 project, you can now select any operation in any class, and automatically generate a sequence diagram that illustrates the lifecycle of the operation, as well as objects that interact with it. Like all other project diagrams in UModel, sequence diagrams are stored as part of the UModel project file and can be included in generated UModel project documentation.   Check out the full list of features added in Version 2009, and be sure to check back here frequently, as we’ll be blogging about more new features each week. As always, you can download a free trial of the Altova MissionKit to test out this new functionality for yourself.

Tags: , , , , , , , , ,

Altova customer Recordare builds MusicXML-based solution


Case Studies

Recordare® is a technology company focused on providing software and services to the musical community. Their flagship products, the Dolet® plugin family, are platform-independent plugins for popular music notation programs, facilitating the seamless exchange and interaction of sheet music data files by leveraging MusicXML. Dolet acts as a high quality translator between the MusicXML data format and other applications, enabling users to work with these files on any conceivable system, including industry leading notation and musical composition applications Finale® and Sibelius®. The list of MusicXML adopters also includes optical scanning utilities like SharpEye or capella-scan, music sequencers like Cubase, and beyond. Dolet increases the MusicXML support in all of these programs and promotes interoperability and the sharing of musical scores. In creating the Dolet plugins, Recordare used Altova’s XML editor, XMLSpy, for editing and testing the necessary MusicXML XML Schemas and DTDs, and the diff/merge tool, DiffDog, for regression testing.

The Challenge

Music interchange between applications had traditionally been executed using the MIDI (Musical Instrument Digital Interface) file format, a message transfer protocol that has its roots in electronic music. MIDI is not an ideal transfer format for printed music, because it does not take into account the multitude of notations (e.g., rests, repeats, dynamics, lyrics, slurs, tempo marks, etc.) that convey much of the meaning. MusicXML is an open, XML-based file format specifically created to encapsulate musical notation or digital sheet music data that was built on top of previous formats, MuseData and Humdrum. XML lends MusicXML the power and flexibility to be easily accessed, parsed, rendered, and otherwise manipulated by a wide variety of automated tools, and its general acceptance as a standard makes it an ideal format for scoring using computer technology. Since its original release by Recordare in January of 2004 (version 2.0 was released in June 2007), MusicXML has gained acceptance in the music notation industry with support in over 100 leading products, and is recognized as the de facto XML standard for music notation interchange. These products would not have adopted MusicXML unless it could be used to exchange data with industry-leading applications like Finale and Sibelius. By developing advanced plugins for popular music notation suites, Recordare would be able to deliver to their customers all of the advantages that XML can bring for data exchange and standardization.

The Solution

Below is an example showing the score of the first few measures of Beethoven’s An die ferne Geliebte, Op. 98 as it is written in sheet music: and a small snippet of the same piece translated to MusicXML: The MusicXML-based Dolet 4 plugins for Finale and Sibelius provide a more accurate and usable representation of sheet music than Standard MIDI translation. For example, the images below show the same piece of music. On the left is a Finale 2009 rendering of a MIDI file exported from Sibelius, and on the right is the same application’s interpretation of a MusicXML 2.0 file exported from the same version of Sibelius.
In the MIDI rendition, vital information like chord symbols, lyrics, slurs, articulations, and even title and composer are omitted from the translation. In addition to providing native support for MusicXML, the recently released Dolet 4 for Finale and Dolet 4 for Sibelius plugins enhance the capabilities of these programs by adding advanced features like:

  • Batch translation
  • More accurate and reliable data exchange
  • More formatting control
  • Support for the MusicXML XML Schema (in addition to the DTD)

In developing the plugins, Recordare was subject to specific requirements dictated by the Sibelius and Finale applications. The Sibelius plugin was programmed in ManuScript, and is one of the largest plugins ever written in that language. Finale, on the other hand, requires plugins to have a C++ core, and Recordare implemented this, adding MusicXML logic in Java and a JNI layer to provide the two-way Java/C++ communication. Recordare’s Dolet plugins are now critical aspects of the music preparation process for many television and film scores as well as new music publications. Errors in translation need to be fixed in maintenance updates, while ensuring that no new errors are introduced into these complex translation plugins. Regression testing of the MusicXML file produced by the Dolet plugins is thus an essential part of Recordare’s quality assurance process. Recordare used Altova’s DiffDog in the development of the Dolet plugins. XMLSpy was used to test and edit their DTDs and XML Schemas, and DiffDog for regression testing the MusicXML files produced by the software. Recordare has several regression test suites covering a wide range of musical repertoire, from baroque to hip-hop. DiffDog allows easy differencing of multiple runs of these test suites, including the ability to ignore differences in XML metadata elements such as software version and XML creation date that always change across test cases. Recordare has used Altova’s XMLSpy XML editor to edit the MusicXML DTDs and XML Schemas, starting with the use of XMLSpy 3.5 (released in 2001) to create the earliest alpha and beta versions of the MusicXML DTD. Version 2.0 of MusicXML added a compressed zip version of the format, similar to what is used in other XML applications like Open Office and Open XML. XMLSpy 2008 Enterprise Edition’s comprehensive support for zipped XML files made it easy to test this new feature together with the Dolet for Finale plugin.

A small portion of the extensive MusicXML schema shown in XMLSpy’s graphical XML schema editor

XMLSpy’s support for XQuery has also contributed to Recordare’s regression testing efforts. In response to a customer request, Recordare now exports XML processing instructions from the Dolet for Sibelius plugin when it encounters a musical feature that it is unable to translate correctly. A simple XQuery execution to search for all the processing instructions in the XML files in a given folder lets Recordare check for the presence of these restrictions within each test suite, and then compare the resulting XML files using DiffDog between runs of the test suite. Recently, customer demand led Recordare to develop an XSD version of the MusicXML format. XMLSpy Enterprise Edition was used to develop and test the schemas. Schema validation, schema restriction and extension, and automatically-generated schema documentation were all able to be tested using XMLSpy’s features.

The Results

The Dolet plugins are extensions for common industry software that harness the built-in capabilities of the MusicXML format to make musical scores truly interchangeable across disparate systems and toolsets. These plugins have the capacity to render accurate and meaningful musical notation based on the powerful MusicXML specification. The leading XML Schema editing capabilities in XMLSpy and the strong XML and directory differencing support in DiffDog enabled Recordare to write and polish the MusicXML schemas and perform regression testing on the Dolet plugins. The resulting high quality of the schemas and software has made MusicXML and the Dolet plugins a key element of the toolkit for composers, arrangers, publishers, copyists, and engravers throughout the industry wherever printed music is used. Try XMLSpy, DiffDog, and the other Altova MissionKit tools for yourself with a free 30-day trial.

Tags: , , , , , , , , ,

Diff / Merge Tools and Dog Food


Since its release in 2005, the Altova marketing team has been actively using the DiffDog diff / merge tool to compare and merge changes on our Web pages (something Product Marketing Manager David McGahey likes to call “eating our own dog food.” Get it? Dog food? Anyway…). We create and edit our content directly in XML using the XMLSpy XML editor and use WinCVS as our version control client. This way, we [not-so-technical marketing folks] can easily view and revert changes to any files in our CVS repository. When we need to compare changes made in two versions of a given file, we simply highlight the versions and launch DiffDog directly from WinCVS. It’s a lightning-fast way to see exactly what has been changed. image Our Web Development team also makes good use of DiffDog’s directory comparison functionality to diff and merge between our test and live Web servers.

Using DiffDog with Team Foundation Server

Jeff Levinson, Microsoft MVP and Application Lifecycle Management practice lead at Northwest Cadence, also recently shared his DiffDog story in an online article for Visual Studio Magazine, “Performing Comparisons with Team Foundation Server.” He details how you can replace the default merge tool in TFS with DiffDog. Do you have any stories to share about how you use our tools? Let us know!

Tags: , ,

Altova at TechEd


Microsoft TechEd 2008 is presently underway in Orlando, FL, and this year the show has been split into two separate events: TechEd for Developers is coming to an end tomorrow, and next week we have TechEd for IT Professionals. Altova is sponsoring both events and we invite you to visit us at booth# 1114 to see the latest new features in version 2008r2 of our developer tools. We’ll be happy show you the new Open XML (OOXML) features introduced in MapForce, StyleVision, and DiffDog, as well as the new support for C# 3.0 and Visul Basic 9 in our UML modeling tool, UModel. To try these new features yourself, you can download a free 30-day eval version from our web site.

Tags: , , , , , ,

Altova Releases Version 2008 of its Award-winning Software Product Line


Altova, creator of XMLSpy and other leading XML, data management, UML, and Web services tools, today announced the availability of Version 2008 (v2008) of its award-winning line of software development tools. With the release of its v2008 products, Altova introduces a host of powerful new capabilities, including support for the Widows Vista operating system across the product line, extended support for Office Open XML file formats in XMLSpy, more data mapping versatility in MapForce, and enhanced database functionality in StyleVision. Additionally, this new software version brings Visual Basic .NET code engineering and real-time integration with Visual Studio and Eclipse in UModel, support for editing database views and stored procedures in DatabaseSpy, one-click directory synchronization in DiffDog, and much more.

Tags: , , , , , , , , , ,