DiffDog E-book Now Available

We’ve published an e-book in multiple formats for your favorite tablet or other e-reader.

DiffDog Field Trials e-book cover image

DiffDog Field Trials is a collection of information from the Altova blog, Tech Notes from the Library section of the Altova Web site, and DiffDog product feature pages. The e-book describes a wide range of real-world applications for DiffDog, Altova’s XML-aware diff/merge tool for files, folders, directories, and databases.

You can download DiffDog Field Trials from the Altova Web site in various formats:

· EPUB (1.57 mb)

· Kindle (3.08 mb)

· PDF (11.1 mb)

· iBooks (16.5 mb)

Or, look for DiffDog Field Trials soon in your favorite online electronic bookstore.

Editing EPUB files with DiffDog

As you can see from the list above, EPUB, the XML-based free and open e-book standard by the International Digital Publishing Forum (IDPF), is potentially the most efficient sharable file format. An EPUB document is based on a ZIP compressed archive containing style information, text formatted as html, and the images that appear in the e-book.

Altova XMLSpy provides powerful support for accessing, editing, validating and previewing EPUB 2.x documents. We used XMLSpy to assemble the EPUB version of our book, where we were able to interactively preview the result as we worked:
XMLSpy EPUB Preview Window Read more…

Tags: , , , , ,

Taming Bad Input Data with FlowForce Server

Whenever you accept data from an outside source you risk encountering errors. We have blogged about this phenomenon in the past in Expect the Unexpected – Altova MissionKit Solves a Number Format Mystery and in the series of posts on Processing the Groupon API.

Bad data in an input file can cause the data transformation step of a FlowForce Server job to fail. When a FlowForce Server Job fails, further execution steps will not be performed. FlowForce Server is designed this way to prevent an error in one job step from cascading into a series of additional invalid results. Happily, FlowForce Server also includes features to help you recover from errors and keep production flowing.

In this post we will further extend the data mapping and report rendering job described in Customizing a FlowForce Server Job to gracefully handle bad data in an input file.

FlowForce Server New Job Steps
Read more…

Tags: , , , , , ,

Compare Folders Fast and Efficiently with DiffDog

Three user preferences in DiffDog work together to accelerate directory differencing tasks into hyperdrive, especially when you compare folders with thousands of files.DiffDog can perform specialized comparisons. For instance, XML comparison mode commands DiffDog to determine whether two files contain equivalent XML content, even if they would be different in a text comparison because of spacing, line-ending, or attribute order variations. For the fastest directory comparisons, choose Quick Comparison mode, which only looks at file sizes and modification dates.

DiffDog Quick Comparison toolbar button

When you compare large directories, most often you want to quickly locate differences. Choose the Hide Equal setting to avoid listing all identical files.

DiffDog Show/Hide equal toolbar button

Show/Hide empty directories should be set to Hide, otherwise subdirectories that contain identical files will be listed, but since their contents are equal, none of the files are shown.

DiffDog Show/Hide empty directories toolbar button

After you choose settings and click the Compare button, DiffDog flies through the directory comparison.

DiffDog Quick Comparison progress bar

When the comparison is finished DiffDog displays a concise listing showing only the differences, with a summary message at the bottom of the window. The toolbar in the screenshot below illustrates the settings for Quick Comparison on, Show Equal files off, and Show Empty directories off.

DiffDog directory comparison results

DiffDog saves your preferences to apply to the next folder comparison, and DiffDog even includes a quick synchronization tool to merge folders in either direction.

DiffDog Synchronize directories summary

Find out for yourself how fast DiffDog can run your folder comparisons – download a fully-functional, free 30-day trial!

Tags: , , ,

Web Service as a Look-Up Table to Refine GPS Data

Elevation data recorded by GPS devices is notoriously inaccurate, especially in hilly terrain like the Russian River Valley example from our earlier post.

The final elevation track plotted from the Russian River Valley GPX file is suspicious for several reasons. First, the graph shows we descended almost 50 feet below sea level. That’s hard to believe, since we were travelling along the bank of the river, only about 10 miles from the Pacific Ocean.

Altova StyleVision ChartSecondly, we were headed mostly west, following the river downstream, but the track shows a predominantly uphill trend.

We can evaluate the recorded GPS elevation data by comparing it to information available from the United States Geological Survey (USGS). The USGS operates a Web service that accepts latitude and longitude coordinates, and returns elevation data measured by NASA and assessed for accuracy based on over 13,000 control points in the continental United States.

Using the elevation Web service in an Altova MapForce mapping will let us extract each point from the GPX file, send the coordinates to the USGS Web service, and build a new GPX file with corrected elevation data.

Read more…

Tags: , , , , , , , , ,

DiffDog Takes to the Cloud

Techy folks generally have a good diff tool they rely on to compare and sync files and directories. But what happens when, as more and more info is bound for the cloud, your data lives on servers accessed via URL? DiffDog diff/merge tool There are myriad applications today that live on servers accessed via HTPP – but let’s take a look at a common example: SVN. Subversion (SVN) repositories include WebDAV as a commonly used server option. WebDAV is a natural protocol for SVN because its concern is hierarchy, structured metadata, and versions. Since WebDAV is an extension of HTTP it gives easy access to basic information about files and folders to any HTTP-aware client, including DiffDog – Altova’s diff/merge tool for files, directories, and databases. However, DiffDog knows a few tricks that set it apart from the other breeds.

Diff/Merge via WebDAV

SVN clients typically support command line differencing; however, a text-only representation of the changes in even one file can be hard to read and use. When you want to compare the trunk against a tagged version, the problem is magnified.  There are several visual differencing tools available that can help with analyzing version changes in SVN. They have varying degrees of compatibility with how SVN works. Some tools are well integrated with the SVN command line. DiffDog includes all the common comparison options for a tool that is tightly integrated with SVN clients.  Where it excels is its ability to talk to SVN servers.  Accessing an SVN repository with DiffDog using WebDAV is simple. The easiest starting point is to open Directory Comparison View and paste in the URLs of the folders you want to compare. In this case we’re comparing SVN branches on The two sets of files open, and DiffDog provides a color-coded, browsable view of the differences between the two directories. Directory Comparison in DiffDog   Clicking on either one of a pair of files opens a detailed file comparison.   File comparison in DiffDog DiffDog’s ability to distinguish between changes to XML and meaningful changes is key in this situation – most development trees have some amount of XML in them.  DiffDog also supports comparing Word docs and databases – so all bases are covered. XML-aware diff options Of course, folders you compare do not have to both be WebDAV SVN folders.  It is equally straightforward to compare the SVN server with a local directory. DiffDog’s ability to access servers via HTTP (or FTP) opens a world of possibilities: comparing a local directory with a Google Docs directory, or diffing a local Web server against files hosted on the Amazon CloudFront , or even just synching photos between your local drive and your chosen back- up service.   If you’d like to try DiffDog, it’s available for a 30-day trial over on the Altova Web site.

Tags: , , ,

Directory Sync Tools: Move over little dog, a new DiffDog is moving in

Altova DiffDog was originally launched in 2005 as a diff/merge tool with XML-aware functionality to help users identify differences between XML files. It even identifies files that are XML-equivalent but appear different in a text comparison because of spacing, line-ending, or attribute order variations. Altova DiffDog DiffDog has continually improved over time with many new features including:

DiffDog 2011 Release 3 adds a new simplified directory sync feature to its robust folder diff/merge functionality. The Synchronize Directories dialog now includes a button at the top to select a complete directory sync in a single step. Folder sync tool mode selection The Fully Synchronize feature produces an exact copy of the source directory, even if the target has newer versions of some files, and deletes files from the target that don’t exist on the source, making this choice a quick tool to backup complex directories containing many files and sub-folders. DiffDog provides a summary of all actions to be taken before any files are copied or deleted: Folder sync summary If you want to prevent a file being overwritten or deleted from the target directory, you can click Cancel, and then use the Manual Override feature to ignore or reverse the copy direction for any file pair. Folder sync tool Manual override option Pretty good trick for an app that’s older than 42 in dog years*, isn’t it? Find out for yourself how DiffDog can faithfully synchronize your directories – download a fully-functional, free 30-day trial! * Popular myth suggests that one calendar year for a software developer is equivalent to 7 years in the life of a dog. For a more complete discussion of canine lifespan, see the Wikipedia article titled Aging in Dogs.

Tags: , ,

Diff / Merge for Databases

You may already be familiar with the diff/merge functionality Altova DiffDog brings to working with source code, XML, and Word files – but did you know you can also connect to, compare, and merge database data and structures? DiffDog supports all major relational databases and includes a Connection Wizard that lets you quickly connect to one or more. As shown in the screenshot below, natively supported databases include Microsoft® Access™, SQL Server®, Oracle®, MySQL®, IBM® DB2®, Sybase®, and PostgreSQL. Altova DiffDog database connect wizard When you compare different database types, DiffDog even resolves datatype naming inconsistencies. This means you can compare the customers table in your SQL Server database with a backup copy, for example, or you can compare the contents of any tables or your entire database schema between IBM DB2 9 and Oracle 11g implementations. Note: Altova DatabaseSpy includes the same diff/merge capabilities described here.

Database Content Differencing

It’s easy to compare database content in DiffDog. Simply connect to the database(s) required, and select the tables to be compared. DiffDog displays the compared components side-by-side, and tables and columns are mapped automatically based on configurable options. You can also change or create mapping connections manually when needed. After you click the Start Comparison button, DiffDog displays results with informative icons. In the simple example below, the content in the database tables is not equal. Next, you can launch a detailed comparison of the unequal table to see the content of the compared columns side-by-side, with differences highlighted. Tool bar buttons let you merge changes in either direction.


Database Schema Differencing

It’s just as easy to compare database schemas in DiffDog to, for example, identify and merge differences between a development and production version of the same database. All database items (e.g., data types, constraints, keys, etc.) are displayed in the comparison components so that you are able to compare the structure of the tables within the database schema. You can merge the two schemas or selected items using Left and Right buttons on the tool bar, or access more merging options via the right-click menu. DiffDog-DB-schema-diff Database schema changes aren’t merged instantly – DiffDog always creates a SQL change script compatible with your target database type that you can review before committing the changes to the database. Altova DiffDog database schema compare merge options You can also save the SQL script to a file or open it for further editing in DatabaseSpy.   Learn more about the powerful database diff/merge functionality in DiffDog. You can also download a free trial to give it a test drive.

Tags: ,