<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;C04HQn8yfyp7ImA9WhBbGEw.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478</id><updated>2013-05-17T13:32:13.197-04:00</updated><category term="DBTA" /><category term="data integration" /><category term="XML validation" /><category term="FOP" /><category term="Visual Studio" /><category term="Spanish versions" /><category term="XML publishing" /><category term="XSD" /><category term="SQL" /><category term="directory comparison" /><category term="MetaTeam" /><category term="localization" /><category term="v2011r2" /><category term="v2009" /><category term="MapForce" /><category term="events" /><category term="Open XML" /><category term="v2012" /><category term="Jolt Award" /><category term="DatabaseSpy" /><category term="RACI" /><category term="DiffDog" /><category term="Ant XSD" /><category term="MDA" /><category term="XBRL training" /><category term="Tech Ed" /><category term="XBRL charts" /><category term="IBM DB2" /><category term="Oracle OpenWorld" /><category term="reporting tool" /><category term="Chinese language version" /><category term="business analysis" /><category term="MissionKit" /><category term="database to xml" /><category term="Apache Ant" /><category term="roles and responsibilities" /><category term="xpath" /><category term="video" /><category term="v2008" /><category term="v2011r3" /><category term="v2012r2" /><category term="xml to database" /><category term="renewable energy" /><category term="XML Schema" /><category term="Smart Fix" /><category term="v2011" /><category term="code generation" /><category term="XML charts" /><category term="software reviews" /><category term="single source publishing" /><category term="XSLT" /><category term="v2010" /><category term="64-bit" /><category term="Version 2011" /><category term="PDF" /><category term="PMP" /><category term="ComponentSource" /><category term="Altova events" /><category term="UML" /><category term="XML" /><category term="TrueType" /><category term="Altova XMLSpy" /><category term="software tools" /><category term="cloud" /><category term="learn xml" /><category term="National Frozen Foods" /><category term="service pack" /><category term="v2010r3" /><category term="Ant Schema" /><category term="NIEM" /><category term="database charts" /><category term="windows 8" /><category term="UModel" /><category term="WebDav" /><category term="Eclipse" /><category term="HTML" /><category term="folder comparison" /><category term="FlowForce Server" /><category term="altova support" /><category term="Altova" /><category term="legacy data" /><category term="MACPA" /><category term="Blog" /><category term="web design" /><category term="Altova Online Training" /><category term="education" /><category term="Twitter" /><category term="database reports" /><category term="Microsoft" /><category term="data mapping" /><category term="ETL" /><category term="Award" /><category term="XBRL" /><category term="XML JSON" /><category term="SQL Server" /><category term="demo videos" /><category term="Connections" /><category term="Model Driven Architecture" /><category term="SD Times" /><category term="reverse engineering" /><category term="chained transformations" /><category term="altova product review" /><category term="file comparison" /><category term="altova product upgrades" /><category term="database migration" /><category term="Oracle" /><category term="multi-channel publishing" /><category term="SOA" /><category term="JavaOne" /><category term="XSL:FO" /><category term="EPUB" /><category term="RaptorXML" /><category term="new features" /><category term="altova.com" /><category term="decision making" /><category term="WSDL" /><category term="FOSE" /><category term="XQuery" /><category term="Programmer's Paradise" /><category term="diff merge tool" /><category term="LANSA" /><category term="user interface" /><category term="technology books" /><category term="DevConnections" /><category term="MapForce Server" /><category term="agile development" /><category term="German" /><category term="Visual Basic" /><category term="Authentic scripting" /><category term="Authentic" /><category term="team organization" /><category term="JSON" /><category term="PMBOK" /><category term="HTML5" /><category term="database tool" /><category term="price reduction" /><category term="charts" /><category term="cloud services" /><category term="MusicXML" /><category term="responsibility matrix" /><category term="team collaboration" /><category term="Office" /><category term="HL7" /><category term="v2013" /><category term="Recordare" /><category term="software modeling" /><category term="SharePoint" /><category term="tradeshows" /><category term="Jolt Awards" /><category term="new web site" /><category term="Sybase" /><category term="xml reports" /><category term="Web services" /><category term="XMLSpy" /><category term="Java" /><category term="SMP" /><category term="API" /><category term="SOAP" /><category term="C#" /><category term="Organizational Development" /><category term="EDI" /><category term="HTML editor" /><category term="SchemaAgent" /><category term="StyleVision" /><category term="CSS3" /><category term="PDC" /><category term="SD Times 100" /><category term="v2010r2" /><category term="Japanese Versions" /><category term="BPMN" /><category term="PDC08" /><category term="UML tool" /><category term="XML Editor" /><category term="Windows IT Pro" /><category term="StyleVision Server" /><category term="project management" /><category term="Case Study" /><category term="WSDL 2.0" /><category term="FlexText" /><title>Altova Blog</title><subtitle type="html">Altova® is the creator of XMLSpy® and other leading XML, database, and UML tools. Founded in 1992, Altova is headquartered in Beverly, Massachusetts and Vienna, Austria. A key player in the software tools industry and the leader in XML development tools, Altova is the choice of over 4 million clients worldwide, including 91 percent of the Fortune 500. Altova offers a product line that fulfills a broad spectrum of business needs for development teams.</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://blog.altova.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://blog.altova.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>XML Aficionado</name><uri>http://www.blogger.com/profile/01835657544617220110</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://1.bp.blogspot.com/_KDgXmlITJmY/SWI3mdczieI/AAAAAAAAASs/neqRiX2_omQ/S220/Aficionado_cartoon.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>249</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/Altova" /><feedburner:info uri="altova" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><geo:lat>42.558413</geo:lat><geo:long>-70.88733</geo:long><logo>http://www.altova.com/images/logos/altova_right_120.gif</logo><entry gd:etag="W/&quot;Ak4FRHwyeyp7ImA9WhBbEEw.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-7007481956262814364</id><published>2013-05-08T09:15:00.000-04:00</published><updated>2013-05-08T09:15:15.293-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-05-08T09:15:15.293-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="StyleVision Server" /><category scheme="http://www.blogger.com/atom/ns#" term="FlowForce Server" /><category scheme="http://www.blogger.com/atom/ns#" term="reporting tool" /><category scheme="http://www.blogger.com/atom/ns#" term="data mapping" /><category scheme="http://www.blogger.com/atom/ns#" term="MapForce Server" /><category scheme="http://www.blogger.com/atom/ns#" term="XML charts" /><title>Automate Data Mapping and Transformation with FlowForce Server</title><content type="html">&lt;p&gt;Altova &lt;a href="http://www.altova.com/flowforce.html"&gt;FlowForce Server&lt;/a&gt;, launched on April 29, 2013, includes numerous enhancements over earlier beta releases and one of the most exciting new features is the implementation of &lt;a href="http://www.altova.com/stylevision/stylevision-server.html"&gt;StyleVision Server&lt;/a&gt;. Now a FlowForce Server job can automate a complete data transformation workflow by executing &lt;a href="http://www.altova.com/mapforce/mapforce-server.html"&gt;MapForce Server&lt;/a&gt; for data mapping and pipelining results to StyleVision Server to render a variety of output formats.&lt;/p&gt;&lt;p&gt;This post describes a straightforward FlowForce Server mapping and transformation job as illustrated in these messages from the FlowForce Server Log, with the most recent step at the top of the list:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowForce Server Job Log showing MapForce Server and StyleVision Server job step" border="0" alt="FlowForce Server Job Log showing MapForce Server and StyleVision Server job steps" src="http://lh5.ggpht.com/-8nyI7IHJjBc/UYkyxUKea3I/AAAAAAAABIM/z2wFDUbb2mE/clip_image001%25255B3%25255D.png?imgmax=800" width="479" height="211" /&gt;&lt;/p&gt;&lt;p&gt;&lt;a name='more'&gt;&lt;/a&gt; &lt;p&gt;&lt;p&gt;We’ll start with the GPS log files created by a digital camera. We wrote about these files last January in the post titled &lt;a href="http://blog.altova.com/2013/01/process-multiple-input-files-in-single.html"&gt;Process Multiple Input Files in a Single Data Mapping&lt;/a&gt;. We’ll use the mapping output with a StyleVision SPS stylesheet adapted from the &lt;a href="http://blog.altova.com/2012/04/xpath-enhances-xml-reports.html"&gt;XPath Enhances XML Reports&lt;/a&gt; post to produce a time and elevation report for each file.&lt;/p&gt;&lt;p&gt;A FlowForce Server For-each job step repeats based on the result of an expression. We can use For-each to build a list of files in a folder, then repeat one or more steps for each file. Here is how it looks in the job configuration page:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowForce Server data mapping job step" border="0" alt="FlowForce Server data mapping job step" src="http://lh6.ggpht.com/-GmimmeA3Ffw/UYkyxXmTCtI/AAAAAAAABIQ/JZLs1Ocj8os/clip_image002%25255B3%25255D.png?imgmax=800" width="600" height="231" /&gt;&lt;/p&gt;&lt;p&gt;The line labeled Execute function defines the mapping to be used by MapForce Server, and the input parameter {file} refers to each file in the list C:\CameraGPS\example\*.LOG.&lt;/p&gt;&lt;p&gt;We can add an execution step to instruct StyleVision Server to perform the transformation:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowForce Server transformation job step" border="0" alt="FlowForce Server transformation job step" src="http://lh3.ggpht.com/-psbDBGH-trA/UYkyxkq_JaI/AAAAAAAABIU/1US-EHASH0Y/clip_image003%25255B3%25255D.png?imgmax=800" width="600" height="378" /&gt;&lt;/p&gt;&lt;p&gt;The data mapping creates output files by adding .gpx to the name of the input file, and now we can define the transformation input using the {file} variable with the new file suffix. We chose to create .html output, but we could just as easily create other formats for a multi-channel publishing implementation.&lt;/p&gt;&lt;p&gt;The transformation working directory is the location where StyleVision Server unpacks the contents of the .pxf file containing the stylesheet, XML Schema, and other needed components. Using a dedicated working folder will keep the workflow more organized.&lt;/p&gt;&lt;p&gt;We want to allow network users to drop new .LOG files into the C:\CameraGPS\example folder and we want run the FlowForce Server job on a regular schedule, but we don’t want to process the same files over and over. We can define one more job step to move the processed file to a different location:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowForce Server file move job step" border="0" alt="FlowForce Server file move job step" src="http://lh5.ggpht.com/-ihavSqeZp2o/UYkyx2xUj3I/AAAAAAAABIc/PvDAfbZix1Q/clip_image004%25255B3%25255D.png?imgmax=800" width="600" height="476" /&gt;&lt;/p&gt;&lt;p&gt;The complete FlowForce Server job is a series of three steps that loops for each .LOG file found in the folder. We can set up a repeating trigger for the workweek or any other appropriate schedule:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowForce Server calendar-based job trigger" border="0" alt="FlowForce Server calendar-based job trigger" src="http://lh3.ggpht.com/-y8IXulTBRbQ/UYky1NKdvYI/AAAAAAAABIg/NtKmU2k2m3Q/clip_image005%25255B3%25255D.png?imgmax=800" width="600" height="317" /&gt;&lt;/p&gt;&lt;p&gt;Here is a portion of a .LOG file created by the camera that is an example of one input file:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title=".csv input file example" border="0" alt=".csv input file example" src="http://lh5.ggpht.com/-HTwRFDbedaE/UYky2SKOLbI/AAAAAAAABIs/mgftJBb3UdM/clip_image006%25255B3%25255D.png?imgmax=800" width="578" height="277" /&gt;&lt;/p&gt;&lt;p&gt;We can drop this file into the C:\CameraGPS\example folder, where it will be processed based on the FlowForce Server job trigger:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Workflow folder structure" border="0" alt="Workflow folder structure" src="http://lh3.ggpht.com/-D6q0yLz6vok/UYky3-kmggI/AAAAAAAABIw/0Eq87le0Yd8/clip_image007%25255B3%25255D.png?imgmax=800" width="472" height="368" /&gt;&lt;/p&gt;&lt;p&gt;When the timer triggers execution of the FlowForce Server job, the Web interface Job Log page displays this series of messages for the complete job:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowForce Server job log for complete job execution" border="0" alt="FlowForce Server job log for complete job execution" src="http://lh6.ggpht.com/-PUuShBROk3U/UYky4NIEFSI/AAAAAAAABI0/BLE00VILyJc/clip_image008%25255B3%25255D.png?imgmax=800" width="479" height="332" /&gt;&lt;/p&gt;&lt;p&gt;The contents of the C:\CameraGPS\example folder now look like this:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Completed work files after FlowForce Server job execution" border="0" alt="Completed work files after FlowForce Server job execution" src="http://lh6.ggpht.com/-jkpJmefb-aM/UYky6M_stcI/AAAAAAAABI8/Hq3a9UttO5I/clip_image009%25255B3%25255D.png?imgmax=800" width="598" height="329" /&gt;&lt;/p&gt;&lt;p&gt;We can examine the 121130.LOG.gpx file in XMLSpy:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="XML file created by MapForce Server job step" border="0" alt="XML file created by MapForce Server job step" src="http://lh4.ggpht.com/-wHZFYQIAWpA/UYky6bUh85I/AAAAAAAABJA/1nxXmY4fq3Q/clip_image010%25255B3%25255D.png?imgmax=800" width="602" height="520" /&gt;&lt;/p&gt;&lt;p&gt;And we can open the .html file in any Web browser:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title=".html output from StyleVision Server job step" border="0" alt=".html output from StyleVision Server job step" src="http://lh3.ggpht.com/-PNiCJ0xaJuw/UYky6kkzY-I/AAAAAAAABJE/hC-6hEv5uKE/clip_image011%25255B3%25255D.png?imgmax=800" width="560" height="651" /&gt;&lt;/p&gt;&lt;p&gt;In future blog posts we will enhance this FlowForce Server example to illustrate jobs with error handling and more complete cleanup of working files.&lt;/p&gt;&lt;p&gt;&lt;b&gt;FlowForce Server is available for Windows, Linux, and soon for Mac OS platforms. To get started yourself, &lt;/b&gt;&lt;a href="http://www.altova.com/download-trial-server.html"&gt;&lt;b&gt;click here to download a free trial&lt;/b&gt;&lt;/a&gt;&lt;b&gt;!&lt;/b&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/wJvuN3WO3qo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/7007481956262814364/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=7007481956262814364" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/7007481956262814364?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/7007481956262814364?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/wJvuN3WO3qo/automate-data-mapping-and.html" title="Automate Data Mapping and Transformation with FlowForce Server" /><author><name>DaveMcG</name><uri>http://www.blogger.com/profile/08885768216396627489</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://1.bp.blogspot.com/_REdrfeVqYdU/Se9fDv8FDpI/AAAAAAAAADY/eqOIwcE3V1k/S220/david.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-8nyI7IHJjBc/UYkyxUKea3I/AAAAAAAABIM/z2wFDUbb2mE/s72-c/clip_image001%25255B3%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2013/05/automate-data-mapping-and.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0IASHozfip7ImA9WhBUEkk.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-6747658303965104932</id><published>2013-04-29T08:21:00.000-04:00</published><updated>2013-04-29T09:19:09.486-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-29T09:19:09.486-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="StyleVision Server" /><category scheme="http://www.blogger.com/atom/ns#" term="FlowForce Server" /><category scheme="http://www.blogger.com/atom/ns#" term="MapForce Server" /><title>New Server Products for Data Transformation</title><content type="html">&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Altova Server Products" border="0" hspace="12" alt="Altova Server Products" align="left" src="http://lh3.ggpht.com/-rYvUzfIv7Ko/UXmLa-tWAKI/AAAAAAAABGw/1qhl-mhCdSY/clip_image002%25255B3%25255D.jpg?imgmax=800" width="188" height="185" /&gt;On the heels of our &lt;a href="http://blog.altova.com/2013/04/announcing-raptorxml-hyper-fast-xml-and.html"&gt;RaptorXML announcement&lt;/a&gt; earlier this month, we are very excited to tell you about the availability of three more new products that round out the &lt;a href="http://www.altova.com/server_tools.html"&gt;Altova server software&lt;/a&gt; product family. &lt;/p&gt;&lt;p&gt;These high-performance server products are optimized for multi-CPU servers and are highly complementary when used together for defining and managing information pipelines. Cross-platform support is immediately available for Windows and Linux, with MacOS support expected just around the corner in May. Supported languages include English, German, Spanish, and Japanese. &lt;/p&gt;&lt;p&gt;Let’s take a look at each of these new products in detail. &lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;FlowForce Server&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Altova FlowForce Server" border="0" hspace="12" alt="Altova FlowForce Server" align="left" src="http://lh4.ggpht.com/-69x8gC1pf9E/UXmLbMmOneI/AAAAAAAABG4/7bQDf0lOeJ4/clip_image003%25255B3%25255D.gif?imgmax=800" width="190" height="44" /&gt;After receiving valuable customer feedback during the beta period, we have announced general availability of &lt;a href="http://www.altova.com/flowforce.html"&gt;FlowForce Server&lt;/a&gt;, a powerful new tool for managing multi-step, enterprise-level data aggregation, processing, and reporting tasks. &lt;/p&gt;&lt;p&gt;The straight-forward FlowForce Web browser interface makes it easy to configure and monitor jobs, whether they require a single step, or multiple cascading steps starting with data aggregation and conversion, and completing with multi-channel report generation.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="FlowForce Server Job Log" border="0" alt="FlowForce Server Job Log" src="http://lh6.ggpht.com/-xKjD_Svi-0s/UXmLbWG_beI/AAAAAAAABHA/rKhvfQR2wq4/clip_image005%25255B3%25255D.jpg?imgmax=800" width="624" height="303" /&gt;&lt;/p&gt;&lt;p&gt;&lt;a name='more'&gt;&lt;/a&gt; &lt;p&gt;&lt;p&gt;A flexible and highly customizable system of &lt;a href="http://www.altova.com/flowforce/jobs.html"&gt;job triggers&lt;/a&gt; lets you schedule FlowForce Server job execution based on each job's unique requirements. Jobs can be triggered by date and time, by the arrival of files in hot folders, or by http command – and you can define multiple triggers per job. To take full advantage of server resources and meet the demands of busy data transformation workflows, multiple jobs – even multiple instances of the same job – can run simultaneously on FlowForce Server.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="FlowForce Server Job Triggers" border="0" alt="FlowForce Server Job Triggers" src="http://lh4.ggpht.com/-PGlcPBe_vAs/UXmLb1QvHkI/AAAAAAAABHI/4c4KL5jVnSM/clip_image007%25255B3%25255D.jpg?imgmax=800" width="624" height="303" /&gt;&lt;/p&gt;&lt;p&gt;FlowForce Server provides &lt;a href="http://www.altova.com/flowforce/access-control.html"&gt;strong security measures&lt;/a&gt; through user, role, job credential, and permission definitions that enable multiple simultaneous jobs while preventing unauthorized access to restricted data repositories or system resources.&lt;/p&gt;&lt;p&gt;So, what kind of jobs can you set up on FlowForce Server? Most customers will want to use it in conjunction with MapForce Server and/or StyleVision Server for high-performance automation of data integration and multichannel publishing projects that doesn’t require writing or compiling any source code. &lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowForce Server enterprise workflow" border="0" alt="FlowForce Server enterprise workflow" src="http://lh5.ggpht.com/-e2uFWkTYzFI/UXrQ6GDq_vI/AAAAAAAABH4/3pMnskNLQUw/flowforce-server-architecture%25255B13%25255D.png?imgmax=800" width="620" height="301" /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;MapForce Server&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Altova MapForce Server" border="0" hspace="12" alt="Altova MapForce Server" align="left" src="http://lh3.ggpht.com/-mW9G7hSqCWA/UXmLcmFHMfI/AAAAAAAABHY/bJMDGsFtZXE/clip_image010%25255B3%25255D.gif?imgmax=800" width="190" height="44" /&gt;You may already be familiar with &lt;a href="http://www.altova.com/mapforce.html"&gt;MapForce&lt;/a&gt;, Altova’s desktop developer software for aggregating, mapping, and converting data. We describe it as an any-to-any data mapping tool because it lets you move between any combination of XML, SQL database, flat file, EDI, Excel, XBRL, and Web services data. With the introduction of &lt;a href="http://www.altova.com/mapforce/mapforce-server.html"&gt;MapForce Server&lt;/a&gt;, it’s now easy to fully automate those transformations that have been defined in MapForce. &lt;/p&gt;&lt;p&gt;MapForce Server performs data transformations based on preprocessed and optimized data mappings stored in MapForce Server Execution files prepared by MapForce and uploaded over a network. Preprocessing enables faster performance and reduced memory footprint for most data mappings. &lt;/p&gt;&lt;p&gt;When operating under the management of FlowForce Server, MapForce Server is a powerful transformation engine suitable for the high-volume, quick turn-around demands of today’s leading edge data centers. The standalone version is suitable in a department level or other small environment that does not require the extensive multi-tasking, job scheduling, and security features of FlowForce Server. &lt;/p&gt;&lt;p&gt;&lt;b&gt;StyleVision Server&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Altova StyleVision Server" border="0" hspace="12" alt="Altova StyleVision Server" align="left" src="http://lh6.ggpht.com/-Y_yRh0wFjqI/UXmLc0zJ7WI/AAAAAAAABHg/AEoa97mFLJI/clip_image011%25255B3%25255D.gif?imgmax=800" width="190" height="44" /&gt;&lt;a href="http://www.altova.com/stylevision/stylevision-server.html"&gt;StyleVision Server&lt;/a&gt; provides high-performance automation of report and document generation tasks based on templates designed in Altova StyleVision. A graphical XSLT stylesheet and report design tool, &lt;a href="http://www.altova.com/stylevision.html"&gt;StyleVision&lt;/a&gt; helps you create one design to render XML and XBRL data in Web and print formats including HTML, Word, RTF, and PDF, simultaneously. Using StyleVision Server, you can generate reports from XML and XBRL data on a recurring basis faster than ever before. &lt;/p&gt;&lt;p&gt;Like MapForce Server, StyleVision Server is an important option for document production by FlowForce Server, and the standalone version can be run from the command line and is suitable in smaller deployments that may not require all the features of FlowForce Server. &lt;/p&gt;&lt;p&gt;This new line of Altova server products represents a huge leap forward in effective automation of essential business processes, whether they require a single step, or multiple cascading steps starting with data aggregation and conversion via MapForce Server and completing with multi-channel report generation via StyleVision Server. These high performance workflow servers help customers design information pipelines quickly and easily, and then deploy them in a flexible way, utilizing the power and speed afforded by multi CPU servers. We’re excited to offer this new family of server products to our customers developing data integration and reporting projects using &lt;a href="http://www.altova.com/missionkit.html"&gt;Altova MissionKit&lt;/a&gt; developer tools, as well as welcoming new customers who need a multi-platform, lightning fast orchestration engine.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Download a free fully-functional 30-day trial!" border="0" hspace="12" alt="Download a free fully-functional 30-day trial!" align="left" src="http://lh5.ggpht.com/-GUNuVlfUiCo/UXmLdVFqM0I/AAAAAAAABHo/nG_QHYdG6Sk/clip_image012%25255B3%25255D.png?imgmax=800" width="83" height="83" /&gt;&lt;/p&gt;&lt;p&gt;As with all Altova tools, we invite you to try these new server products before making a purchasing decision. Download a free, &lt;a href="http://www.altova.com/download-trial-server.html"&gt;30-day trial&lt;/a&gt; now! &lt;/p&gt;&lt;hr align="left" size="1" width="33%" /&gt;&lt;p&gt;&lt;a name="_msocom_1"&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/XZqZo1FNE04" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/6747658303965104932/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=6747658303965104932" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/6747658303965104932?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/6747658303965104932?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/XZqZo1FNE04/new-server-products-for-data.html" title="New Server Products for Data Transformation" /><author><name>DaveMcG</name><uri>http://www.blogger.com/profile/08885768216396627489</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://1.bp.blogspot.com/_REdrfeVqYdU/Se9fDv8FDpI/AAAAAAAAADY/eqOIwcE3V1k/S220/david.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-rYvUzfIv7Ko/UXmLa-tWAKI/AAAAAAAABGw/1qhl-mhCdSY/s72-c/clip_image002%25255B3%25255D.jpg?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2013/04/new-server-products-for-data.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUIEQXw5eip7ImA9WhBVEUw.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-6367155290054572260</id><published>2013-04-16T09:05:00.000-04:00</published><updated>2013-04-16T09:05:00.222-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-16T09:05:00.222-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="XML Schema" /><category scheme="http://www.blogger.com/atom/ns#" term="XBRL" /><category scheme="http://www.blogger.com/atom/ns#" term="XSD" /><category scheme="http://www.blogger.com/atom/ns#" term="XQuery" /><category scheme="http://www.blogger.com/atom/ns#" term="XML" /><category scheme="http://www.blogger.com/atom/ns#" term="RaptorXML" /><category scheme="http://www.blogger.com/atom/ns#" term="XSLT" /><title>Announcing RaptorXML, the Hyper-fast XML and XBRL Server</title><content type="html">&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-TA0nohgabBQ/UW00w4aTyMI/AAAAAAAAAVs/jab57iy0erM/s1600-h/clip_image001%25255B3%25255D.gif"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image001" border="0" hspace="12" alt="clip_image001" align="left" src="http://lh4.ggpht.com/-OQgBsrx0amM/UW00xQ9ZxtI/AAAAAAAAAV0/EideWu_34pY/clip_image001_thumb.gif?imgmax=800" width="250" height="58" /&gt;&lt;/a&gt;We are very excited to be at the &lt;a href="http://www.xbrl.org/event/xbrl26-dublin"&gt;XBRL 26 Conference&lt;/a&gt; in Dublin, Ireland today to announce a brand new server product in the Altova family of XML and XBRL tools! &lt;/p&gt;  &lt;p&gt;Altova &lt;a href="http://www.altova.com/raptorxml.html"&gt;RaptorXML&lt;/a&gt; is a hyper-fast XML and XBRL validation and processing server. It’s Altova’s third-generation XML and XBRL engine, built completely from scratch to help organizations efficiently validate, process, transform, and query the vast and ever-increasing amounts XML and XBRL data being generated as a result of XBRL compliance regulations and myriad other big data trends. &lt;/p&gt;  &lt;p&gt;RaptorXML is written to be highly scalable for today’s multi-CPU and multi- core computers and servers. This, along with high performance code optimizations and an extremely low memory footprint, has helped make RaptorXML a lightning-fast &lt;a href="http://www.altova.com/raptorxml.html"&gt;XML and XBRL server&lt;/a&gt; that can meet the demands of today’s data processing applications. &lt;/p&gt;  &lt;p&gt;Simply put: we architected RaptorXML to combine the performance benefits afforded by modern parallel computing environments with strict compliance to the latest versions of all relevant XML and XBRL standards. &lt;/p&gt;  &lt;p&gt;RaptorXML includes support for the very latest versions of all relevant standards and has been submitted to rigorous regression and conformance testing. The server will be available in two versions, both of which are available for Windows, Linux, and MacOS platforms. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;RaptorXML Server&lt;/b&gt; supports validation and processing of: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;XML 1.0 &amp;amp; 1.1&lt;/li&gt;    &lt;li&gt;XInclude 1.0&lt;/li&gt;    &lt;li&gt;Xlink 1.0&lt;/li&gt;    &lt;li&gt;XML Schema 1.0 &amp;amp; 1.1&lt;/li&gt;    &lt;li&gt;XPath 1.0, 2.0 &amp;amp; 3.0&lt;/li&gt;    &lt;li&gt;XSLT 1.0, 2.0 &amp;amp; 3.0 (subset)&lt;/li&gt;    &lt;li&gt;XQuery 1.0 &amp;amp; 3.0&lt;/li&gt;    &lt;li&gt;And more&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;b&gt;RaptorXML+XBRL Server&lt;/b&gt; supports all the features of RaptorXML Server, with the addition of processing and validating the XBRL family of standards: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;XBRL 2.1&lt;/li&gt;    &lt;li&gt;XBRL Dimensions&lt;/li&gt;    &lt;li&gt;XBRL Formula 1.0&lt;/li&gt;    &lt;li&gt;XBRL Functions&lt;/li&gt;    &lt;li&gt;XBRL Definition Links&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Developers creating solutions using Altova MissionKit &lt;a href="http://www.altova.com/solutions/xml-development.html"&gt;XML development&lt;/a&gt; and &lt;a href="http://www.altova.com/solutions/xbrl.html"&gt;XBRL development&lt;/a&gt; tools will be able to power their server applications with RaptorXML for hyper-performance, increased throughput, and efficient memory utilization, giving them the opportunity to validate and process large amounts of XML or XBRL data cost-effectively.&amp;#160; &lt;/p&gt;  &lt;p&gt;Check out the complete list of &lt;a href="http://www.altova.com/raptorxml.html"&gt;supported XML and XBRL standards&lt;/a&gt; and more details on this groundbreaking new server product. &lt;/p&gt;  &lt;p&gt;RaptorXML will be available to download and purchase in May. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-dDlaB7Lo8WU/UW00xj_yiAI/AAAAAAAAAV8/yUBlf1YxbaM/s1600-h/clip_image003%25255B3%25255D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image003" border="0" alt="clip_image003" src="http://lh6.ggpht.com/-bNWecMUCAn0/UW00zKmkilI/AAAAAAAAAWE/YClEDXuFVhQ/clip_image003_thumb.jpg?imgmax=800" width="624" height="302" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/Altova/~4/xJpd6XT6UK4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/6367155290054572260/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=6367155290054572260" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/6367155290054572260?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/6367155290054572260?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/xJpd6XT6UK4/announcing-raptorxml-hyper-fast-xml-and.html" title="Announcing RaptorXML, the Hyper-fast XML and XBRL Server" /><author><name>Erin Cavanaugh</name><uri>http://www.blogger.com/profile/05488702872055566047</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://2.bp.blogspot.com/_C4xYMtGRX-M/SYie9G7vVdI/AAAAAAAAABE/7MnFXMC-iy8/S220/Erin.JPG" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-OQgBsrx0amM/UW00xQ9ZxtI/AAAAAAAAAV0/EideWu_34pY/s72-c/clip_image001_thumb.gif?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2013/04/announcing-raptorxml-hyper-fast-xml-and.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkQBQ3Y5fyp7ImA9WhBXE00.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-6178581426949943275</id><published>2013-03-26T09:25:00.001-04:00</published><updated>2013-03-26T09:25:52.827-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-03-26T09:25:52.827-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="MetaTeam" /><category scheme="http://www.blogger.com/atom/ns#" term="project management" /><title>Exciting New Project Management Tools</title><content type="html">&lt;p&gt;We’re excited to announce some powerful new features for project management debuting in MetaTeam this week. Seasoned project managers and team leaders will find new support for interactive Gantt charts both familiar and a welcomed addition to the powerful team and project collaboration tools they’ve&amp;#160; already&amp;#160; been working with in MetaTeam.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-9_q5hq-IXxs/UVGh3YqyJwI/AAAAAAAAAVU/ReEb_B7RRHM/s1600-h/clip_image001%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Gantt charts in MetaTeam PM tool" border="0" alt="Gantt charts in MetaTeam PM tool" src="http://lh5.ggpht.com/-gV3X4ra6XUo/UVGh3-lYgRI/AAAAAAAAAVc/dHI2-aB3iP0/clip_image001_thumb.png?imgmax=800" width="578" height="401" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;This release also adds important and oft-requested support for Microsoft Project integration including import/export functionality, new options for specifying completion criteria, and improved work package definition.&lt;/p&gt;  &lt;p&gt;Read all about it &lt;a href="http://blog.metateam.net/2013/03/new-project-management-features.html"&gt;over on the MetaTeam blog&lt;/a&gt; or give MetaTeam &lt;a href="http://metateam.net/"&gt;a try&lt;/a&gt; now.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/Altova/~4/mYVduKg7icM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/6178581426949943275/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=6178581426949943275" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/6178581426949943275?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/6178581426949943275?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/mYVduKg7icM/exciting-new-project-management-tools.html" title="Exciting New Project Management Tools" /><author><name>Erin Cavanaugh</name><uri>http://www.blogger.com/profile/05488702872055566047</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://2.bp.blogspot.com/_C4xYMtGRX-M/SYie9G7vVdI/AAAAAAAAABE/7MnFXMC-iy8/S220/Erin.JPG" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-gV3X4ra6XUo/UVGh3-lYgRI/AAAAAAAAAVc/dHI2-aB3iP0/s72-c/clip_image001_thumb.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2013/03/exciting-new-project-management-tools.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkIEQn07cSp7ImA9WhBQFk4.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-4091559065541178323</id><published>2013-03-12T09:00:00.000-04:00</published><updated>2013-03-18T16:28:23.309-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-03-18T16:28:23.309-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="XML JSON" /><category scheme="http://www.blogger.com/atom/ns#" term="JSON" /><category scheme="http://www.blogger.com/atom/ns#" term="XMLSpy" /><title>Editing, Converting, and Generating JSON</title><content type="html">As the use of JSON as a data transport protocol increases, I thought it would be useful to take a look at JSON support in XMLSpy. There’s been much debate about advantages of JSON vs. XML, but when you boil it down, there are simply some cases for which JSON is the best choice, and others where XML makes more sense. &lt;a href="http://www.xmlaficionado.com/2009/11/json-and-xml.html"&gt;This article&lt;/a&gt; on the XML Aficionado blog unpacks this topic quite well. &lt;br /&gt;
While you might need to choose between JSON and XML depending on the development task at hand, you don’t have to choose between code editors – XMLSpy supports both technologies and will even convert between the two. Let’s take a look at how that works.&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;b&gt;Editing JSON&lt;/b&gt;&lt;br /&gt;
To make JSON editing as easy as possible, Altova extended its intelligent &lt;a href="http://www.altova.com/xmlspy/xml-editing.html"&gt;XML editing&lt;/a&gt; features to the &lt;a href="http://www.altova.com/xmlspy/json-editor.html"&gt;JSON editor&lt;/a&gt;. If you choose to edit JSON in text view, XMLSpy helps you along with syntax coloring, bracket matching, source folding, entry helper windows and menus, and so on. &lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh4.ggpht.com/-A1kwghA4rek/UT31XfspHdI/AAAAAAAAAUc/nCex5o8HR2g/s1600-h/clip_image001%25255B3%25255D.png"&gt;&lt;img alt="clip_image001" border="0" height="328" src="http://lh6.ggpht.com/-b_MqgxrB2tc/UT31XvhmiyI/AAAAAAAAAUk/4EQK6Ots1cY/clip_image001_thumb.png?imgmax=800" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="clip_image001" width="625" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Here’s that same JSON file in grid view, which offers a graphical representation of the JSON structure with drag and drop editing. Both views provide &lt;a href="http://www.altova.com/xmlspy/json-editor.html"&gt;JSON syntax checking&lt;/a&gt; and advanced error checking features. &lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-fORAlWcNULc/UT31X0mYAuI/AAAAAAAAAUs/Bonh4OPOxAs/s1600-h/clip_image002%25255B3%25255D.png"&gt;&lt;img alt="clip_image002" border="0" height="329" src="http://lh4.ggpht.com/-R9P43nBIpFw/UT31Ydk1a0I/AAAAAAAAAU0/_0P100O6Lgs/clip_image002_thumb.png?imgmax=800" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="clip_image002" width="625" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Another common requirement is &lt;a href="http://www.altova.com/xmlspy/json-editor.html"&gt;converting XML to/from JSON&lt;/a&gt;, which is a one-click option on the XMLSpy convert menu. The JSON data above has been converted to valid XML: &lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-J4AOaNyilM4/UT31YpsFM6I/AAAAAAAAAU8/HlTlGdX1ENM/s1600-h/clip_image003%25255B3%25255D.png"&gt;&lt;img alt="clip_image003" border="0" height="280" src="http://lh3.ggpht.com/-w-Yn-qpz7l8/UT31YzzWFgI/AAAAAAAAAVE/wgWItZL3urk/clip_image003_thumb.png?imgmax=800" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="clip_image003" width="476" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Having JSON editing and conversion functionality directly inside the &lt;a href="http://www.altova.com/xml-editor/"&gt;XML editor&lt;/a&gt; is quite useful, especially if you’re using the free Eclipse or Visual Studio integration package. &lt;br /&gt;
&lt;a href="http://www.altova.com/download-trial.html"&gt;Check it out&lt;/a&gt; and let us know what you think. &lt;img src="http://feeds.feedburner.com/~r/Altova/~4/BN-XATWG4QA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/4091559065541178323/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=4091559065541178323" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/4091559065541178323?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/4091559065541178323?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/BN-XATWG4QA/editing-converting-and-generating-json.html" title="Editing, Converting, and Generating JSON" /><author><name>Erin Cavanaugh</name><uri>http://www.blogger.com/profile/05488702872055566047</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://2.bp.blogspot.com/_C4xYMtGRX-M/SYie9G7vVdI/AAAAAAAAABE/7MnFXMC-iy8/S220/Erin.JPG" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/-b_MqgxrB2tc/UT31XvhmiyI/AAAAAAAAAUk/4EQK6Ots1cY/s72-c/clip_image001_thumb.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2013/03/editing-converting-and-generating-json.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0YGQXo8eip7ImA9WhBRFEU.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-9002172550215654978</id><published>2013-03-05T08:12:00.000-05:00</published><updated>2013-03-05T08:12:00.472-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-03-05T08:12:00.472-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="FlowForce Server" /><category scheme="http://www.blogger.com/atom/ns#" term="data mapping" /><category scheme="http://www.blogger.com/atom/ns#" term="MapForce" /><title>Web Interface Simplifies Automation of Data Transformations</title><content type="html">&lt;p&gt;&lt;a href="http://www.altova.com/flowforce.html"&gt;FlowForce Server&lt;/a&gt; is a new product designed to provide automation of data transformations performed by dedicated high-speed servers. FlowForce Server can start jobs based on a variety of triggers, runs multiple jobs simultaneously, and can even run multiple instances of the same job, depending on workflow.&lt;/p&gt;&lt;p&gt;Monitoring all these complex activities is critical to success in a busy production environment. The FlowForce Server Web interface includes customizable views into operations, simplifying management from anywhere on the network.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowForce Server in a Web browser window" border="0" alt="FlowForce Server viewed in a Web browser window" src="http://lh3.ggpht.com/-p7oeK25t1MQ/UTESieRoe1I/AAAAAAAABGI/psdvKt9Zgx0/clip_image001%25255B3%25255D.png?imgmax=800" width="594" height="640" /&gt;&lt;/p&gt;&lt;p&gt;&lt;a name='more'&gt;&lt;/a&gt; &lt;p&gt;&lt;p&gt;The screen shot above shows the Home page of the FlowForce Server Web browser interface, displaying all currently running jobs and active triggers. Six instances of the gpxElevationUSGS job are running, each identified by a unique job ID. Four job triggers are also active, three watching hot folders, and one based on a timer. Each FlowForce Server job automates a &lt;a href="http://www.altova.com/mapforce.html"&gt;MapForce data transformation&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;The orange arrows below each grid are clickable update buttons, and the job names link to the definition pages for each job.&lt;/p&gt;&lt;p&gt;The blue headings at the top are also clickable buttons. The Log link displays the Log View, a detailed history of all system activity, shown in a truncated version below.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowForce Server Log View Shows History of Operations" border="0" alt="FlowForce Server Log View Shows History of Operations" src="http://lh6.ggpht.com/-YNP84q8s9v8/UTESi80x4wI/AAAAAAAABGQ/HAvXjnnzt1g/clip_image002%25255B3%25255D.png?imgmax=800" width="600" height="699" /&gt;&lt;/p&gt;&lt;p&gt;Each message line describes one step in one instance of a FlowForce Server job, and may have links to more information, as we described in our earlier blog post titled &lt;a href="http://blog.altova.com/2013/02/automate-data-transformation-with.html"&gt;&lt;b&gt;Automate Data Transformation with FlowForce Server&lt;/b&gt;&lt;/a&gt;. If the status is anything other than 0, the &lt;u&gt;more&lt;/u&gt; link opens a detailed error message.&lt;b&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Description of a single FlowForce Server job step" border="0" alt="Description of a single FlowForce Server job step" src="http://lh4.ggpht.com/-SlXoWKGtRLA/UTESjFTiLvI/AAAAAAAABGY/43FnAn90-Yg/clip_image003%25255B3%25255D.png?imgmax=800" width="575" height="24" /&gt;&lt;/p&gt;&lt;p&gt;In a busy environment, all this can be just too much information. In that case, the Log View offers several alternatives to help you find critical information quickly. The options bar above the list lets you filter items displayed by a particular job or Message severity.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Filter FlowForce Server Log messages by date, by job, or by severity" border="0" alt="Filter FlowForce Server Log messages by date, by job, or by severity" src="http://lh4.ggpht.com/-B6DAyJVQQx4/UTESjeu9h0I/AAAAAAAABGg/ZmDI-7XhzfQ/clip_image004%25255B3%25255D.png?imgmax=800" width="600" height="165" /&gt;&lt;/p&gt;&lt;p&gt;If you only want to know if anything unexpected occurred, select Warning as shown above to hide all normal Info messages.&lt;/p&gt;&lt;p&gt;You can also sort the list by any of the column headings Date, Severity, Module, User, or Instance ID in ascending or descending order. When the FlowForce Server is running multiple simultaneous jobs and instances, it’s very likely individual steps from different jobs will be shuffled. Sorting by Instance ID can let you more easily review the job history.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.altova.com/flowforce.html"&gt;&lt;b&gt;Click here to learn more about FlowForce Server Beta 3&lt;/b&gt;&lt;/a&gt;&lt;b&gt; at the Altova Web site, or &lt;/b&gt;&lt;a href="http://www.altova.com/download/flowforce/flowforce_server.html"&gt;&lt;b&gt;visit the FlowForce Server Beta 3 download page&lt;/b&gt;&lt;/a&gt;&lt;b&gt; to get started automating data transformations in your data center!&lt;/b&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/CGswimwHnMw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/9002172550215654978/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=9002172550215654978" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/9002172550215654978?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/9002172550215654978?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/CGswimwHnMw/web-interface-simplifies-automation-of.html" title="Web Interface Simplifies Automation of Data Transformations" /><author><name>DaveMcG</name><uri>http://www.blogger.com/profile/08885768216396627489</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://1.bp.blogspot.com/_REdrfeVqYdU/Se9fDv8FDpI/AAAAAAAAADY/eqOIwcE3V1k/S220/david.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-p7oeK25t1MQ/UTESieRoe1I/AAAAAAAABGI/psdvKt9Zgx0/s72-c/clip_image001%25255B3%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2013/03/web-interface-simplifies-automation-of.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkUBQXk5fip7ImA9WhBSE0o.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-2942796542941170608</id><published>2013-02-20T09:23:00.001-05:00</published><updated>2013-02-20T09:24:10.726-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-02-20T09:24:10.726-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="folder comparison" /><category scheme="http://www.blogger.com/atom/ns#" term="directory comparison" /><category scheme="http://www.blogger.com/atom/ns#" term="diff merge tool" /><category scheme="http://www.blogger.com/atom/ns#" term="DiffDog" /><title>Compare Folders Fast and Efficiently with DiffDog</title><content type="html">&lt;p&gt;Three user preferences in DiffDog work together to accelerate directory differencing tasks into hyperdrive, especially when you compare folders with thousands of files.&lt;/p&gt;&lt;p&gt;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.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="DiffDog Quick Comparison toolbar button" border="0" alt="DiffDog Quick Comparison toolbar button" src="http://lh4.ggpht.com/-PCFn_jmt9bI/USPsPJB0HqI/AAAAAAAABEA/hEHIEYpG27Y/clip_image001%25255B3%25255D.png?imgmax=800" width="550" height="75" /&gt;&lt;/p&gt;&lt;p&gt;When you compare large directories, most often you want to quickly locate differences. Choose the Hide Equal setting to avoid listing all identical files.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="DiffDog Show/Hide equal toolbar button" border="0" alt="DiffDog Show/Hide equal toolbar button" src="http://lh4.ggpht.com/-GSyL3xqQyw0/USPsPXI7yyI/AAAAAAAABEI/vACgJI0gW38/clip_image002%25255B3%25255D.png?imgmax=800" width="307" height="76" /&gt;&lt;/p&gt;&lt;p&gt;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.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="DiffDog Show/Hide empty directories toolbar button" border="0" alt="DiffDog Show/Hide empty directories toolbar button" src="http://lh5.ggpht.com/-dj9odKak170/USPsP5163YI/AAAAAAAABEQ/vIkS7UzaihM/clip_image003%25255B3%25255D.png?imgmax=800" width="427" height="74" /&gt;&lt;/p&gt;&lt;p&gt;After you choose settings and click the Compare button, DiffDog flies through the directory comparison.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="DiffDog Quick Comparison progress bar" border="0" alt="DiffDog Quick Comparison progress bar" src="http://lh5.ggpht.com/-aqqWSyFbUAA/USPsQxSS7jI/AAAAAAAABEY/Aj-gs9OqFLE/clip_image004%25255B3%25255D.png?imgmax=800" width="295" height="127" /&gt;&lt;/p&gt;&lt;p&gt;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.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="DiffDog directory comparison results" border="0" alt="DiffDog directory comparison results" src="http://lh4.ggpht.com/-VqNVrTDaol8/USPsRATQMSI/AAAAAAAABEg/4VKMTwDx6ws/clip_image005%25255B3%25255D.png?imgmax=800" width="600" height="378" /&gt;&lt;/p&gt;&lt;p&gt;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.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="DiffDog Synchronize directories summary" border="0" alt="DiffDog Synchronize directories summary" src="http://lh4.ggpht.com/-RhNHi0YaQ-Q/USPsRTo3nhI/AAAAAAAABEo/t3qGl1uqJoc/clip_image006%25255B3%25255D.png?imgmax=800" width="304" height="277" /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Find out for yourself how fast DiffDog can run your folder comparisons – &lt;/b&gt;&lt;a href="http://www.altova.com/download/diffdog/diff_merge_tool_enterprise.html"&gt;&lt;b&gt;download a fully-functional, free 30-day trial!&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/5iAPFtkyhG0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/2942796542941170608/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=2942796542941170608" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/2942796542941170608?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/2942796542941170608?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/5iAPFtkyhG0/compare-folders-fast-and-efficiently.html" title="Compare Folders Fast and Efficiently with DiffDog" /><author><name>DaveMcG</name><uri>http://www.blogger.com/profile/08885768216396627489</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://1.bp.blogspot.com/_REdrfeVqYdU/Se9fDv8FDpI/AAAAAAAAADY/eqOIwcE3V1k/S220/david.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-PCFn_jmt9bI/USPsPJB0HqI/AAAAAAAABEA/hEHIEYpG27Y/s72-c/clip_image001%25255B3%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2013/02/compare-folders-fast-and-efficiently.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0IMQX44eCp7ImA9WhBTF0s.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-5209669372344657690</id><published>2013-02-13T10:33:00.000-05:00</published><updated>2013-02-13T10:33:00.030-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-02-13T10:33:00.030-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="MetaTeam" /><category scheme="http://www.blogger.com/atom/ns#" term="DatabaseSpy" /><category scheme="http://www.blogger.com/atom/ns#" term="database migration" /><category scheme="http://www.blogger.com/atom/ns#" term="project management" /><title>MySQL to Microsoft Access Database Migration</title><content type="html">&lt;p&gt;A couple weeks ago, my colleague wanted to migrate a database supporting the Project Management Body of Knowledge (PMBOK) from MySQL to Microsoft Access, in response to requests from &lt;a href="http://blog.metateam.net"&gt;MetaTeam Blog&lt;/a&gt; readers.&lt;/p&gt;  &lt;p&gt;Create table statements already existed and were easily run in Access. &lt;a href="http://www.altova.com/databasespy.html"&gt;DatabaseSpy&lt;/a&gt; performed a critical &lt;a href="http://www.altova.com/databasespy/database-structure-compare-tool.html"&gt;database schema comparison&lt;/a&gt; to verify the new table structures and relationships. Then, a DatabaseSpy &lt;a href="http://www.altova.com/databasespy/database-compare-tool.html"&gt;database contents compare and merge&lt;/a&gt; moved hundreds of rows of data into the 11 tables. DatabaseSpy resolved all the differences between SQL dialects and datatypes of MySQL and Microsoft Access and completed the task in seconds.&lt;/p&gt;  &lt;p&gt;Of course, you could just as easily go the other direction to migrate an organically grown Access database to MySQL or another enterprise-grade database.&lt;/p&gt;  &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Database tables in a DatabaseSpy Design window" border="0" alt="Database tables in a DatabaseSpy Design window" src="http://lh3.ggpht.com/-BGtXi_vhHyA/URuwJA7jITI/AAAAAAAABCg/GhyabkMVK3A/clip_image001%25255B3%25255D.png?imgmax=800" width="600" height="413" /&gt;&lt;/p&gt;  &lt;p&gt;You can read the details in &lt;a href="http://blog.metateam.net/2013/01/a-relational-pmp-study-aid-part-2.html"&gt;A Relational PMP Study Aid, Part 2&lt;/a&gt; on the MetaTeam Blog.&lt;/p&gt;  &lt;p&gt;Part 1, titled &lt;a href="http://blog.metateam.net/2013/01/a-relational-pmp-study-aid.html"&gt;A Relational PMP Study Aid&lt;/a&gt;, describes how candidates can use the PMBOK to prepare for Project Management Professional (PMP) certification.&lt;b&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.altova.com/metateam.html"&gt;Altova MetaTeam&lt;/a&gt; is the online project management and collaboration environment for teams that want to achieve high performance results by working smarter. If you haven’t seen it yet, you can &lt;b&gt;&lt;a href="http://metateam.net/"&gt;check out a 2-minute MetaTeam video introduction here&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/Altova/~4/8rwA83QEcN4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/5209669372344657690/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=5209669372344657690" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/5209669372344657690?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/5209669372344657690?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/8rwA83QEcN4/mysql-to-microsoft-access-database.html" title="MySQL to Microsoft Access Database Migration" /><author><name>DaveMcG</name><uri>http://www.blogger.com/profile/08885768216396627489</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://1.bp.blogspot.com/_REdrfeVqYdU/Se9fDv8FDpI/AAAAAAAAADY/eqOIwcE3V1k/S220/david.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-BGtXi_vhHyA/URuwJA7jITI/AAAAAAAABCg/GhyabkMVK3A/s72-c/clip_image001%25255B3%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2013/02/mysql-to-microsoft-access-database.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE8AQH07eSp7ImA9WhBTEEo.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-1963378691249593317</id><published>2013-02-05T08:20:00.000-05:00</published><updated>2013-02-05T09:00:41.301-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-02-05T09:00:41.301-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="FlowForce Server" /><category scheme="http://www.blogger.com/atom/ns#" term="data mapping" /><category scheme="http://www.blogger.com/atom/ns#" term="MapForce" /><title>Automate Data Transformation with FlowForce Server</title><content type="html">&lt;p&gt;Altova designed &lt;a href="http://www.altova.com/flowforce.html"&gt;FlowForce Server&lt;/a&gt; to provide comprehensive automation, management, and control over data transformations performed by dedicated high-speed servers. FlowForce Server Beta 3 is currently available to users of MapForce Enterprise and Professional Editions at no charge during the beta test period.&lt;/p&gt;&lt;p&gt;FlowForce Server can provide hot folder automation of data mappings and maintains a detailed activity log users can monitor remotely in a Web browser window. The screenshot below shows the log for FlowForce Server running the &lt;a href="http://www.altova.com/mapforce.html"&gt;MapForce&lt;/a&gt; data mapping CameraLogToGPX we wrote about in the blog post titled &lt;a href="http://blog.altova.com/2013/01/process-multiple-input-files-in-single.html"&gt;Process Multiple Input Files in a Single Data Mapping&lt;/a&gt;. This mapping used wildcards to specify multiple input files for processing. &lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowForce Server job log" border="0" alt="FlowForce Server job log" src="http://lh4.ggpht.com/-Y2W3wl_49us/UQqMAu-rvKI/AAAAAAAABAE/0smVWZzKnWE/clip_image001%25255B3%25255D.png?imgmax=800" width="610" height="362" /&gt;&lt;/p&gt;&lt;p&gt;It only takes a few minutes to set up, run, and review the results of jobs like this on FlowForce Server.&lt;/p&gt;&lt;p&gt;&lt;a name='more'&gt;&lt;/a&gt; &lt;p&gt;&lt;p&gt;&lt;b&gt;Wildcards or Hot Folders?&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Wildcards and hot folders increase the complexity of a data transformation workflow, and using them successfully requires careful planning. Let’s take a minute to look a little deeper at the scenario we want to implement.&lt;/p&gt;&lt;p&gt;Assume we are the IT department in a company that publishes nature and hiking guides. We employ photographers who go out trekking and record their routes as they go, using the GPS tracking feature of their digital cameras. We want to convert the camera GPS log files to XML-based .gpx format for mapping and other processing.&lt;/p&gt;&lt;p&gt;We will publish a folder on our network where photographers can drop off their GPS log files. This will be the hot folder FlowForce Server watches for new files to supply as input to the CameraLogToGPX mapping. &lt;/p&gt;&lt;p&gt;We only need to process each input file once. So, after the data transformation is complete, we can remove the input file from the hot folder. We also want to place the output file in a separate folder. &lt;/p&gt;&lt;p&gt;This suggests the following FlowForce Server job steps:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Look in the hot folder to see if new a input files has arrived     &lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Perform the data mapping on the input file and place the output file in a separate folder     &lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Move the input file to a permanent location&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;The diagram below shows a folder structure we can use for the workflow, with files ready to drop into the hot folder for processing:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Hot folder structure" border="0" alt="Hot folder structure" src="http://lh6.ggpht.com/-asx6QjtywbI/UQqMBDMb25I/AAAAAAAABAM/DFy-FKarvgQ/clip_image002%25255B3%25255D.png?imgmax=800" width="559" height="393" /&gt;&lt;/p&gt;&lt;p&gt;The hot folder is C:\CameraGPS\hotFolder and the generated .gpx files will be placed in C:\CameraGPS\outputFiles. When the data mapping is done, input files will be moved to C:\CameraGPS\completedInput. &lt;/p&gt;&lt;p&gt;&lt;b&gt;Deploy the Mapping on a Server&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.altova.com/flowforce/architecture.html"&gt;MapForce Beta&lt;/a&gt; is a component of FlowForce Server that works just like MapForce, and adds a feature to deploy mapping files to a FlowForce Server. Existing data mappings need little or no special preparation for deployment.&lt;/p&gt;&lt;p&gt;The only thing we need to think about are the filenames of the input and output files. We will instruct FlowForce Server to provide the input filename as a job parameter as new files arrive in the hot folder for processing. The original mapping assigned a wildcard filename for the input component, which is no longer needed. We will also want FlowForce to specify the location of the output file.&lt;/p&gt;&lt;p&gt;We can open the mapping in MapForce Beta, remove the filename from the input component, and add a remove-folder filepath function to the output file so FlowForce Server can set the destination. The screenshot below shows the new filename definitions in the mapping.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Mapping file names" border="0" alt="Mapping file names" src="http://lh3.ggpht.com/-r5yBw9YFHZY/UQqMBkV-MMI/AAAAAAAABAU/xL5Li6rp5KY/clip_image003%25255B3%25255D.png?imgmax=800" width="600" height="239" /&gt;&lt;/p&gt;&lt;p&gt;In the MapForce Beta dialog to deploy the mapping, we can choose to immediately open the mapping in a FlowForce Server job definition window in a Web browser to finish defining the job operations.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Deploy mapping dialog" border="0" alt="Deploy mapping dialog" src="http://lh6.ggpht.com/-kBBP0SdTKhI/UQqMBxv8AHI/AAAAAAAABAc/Np02Av__Sgc/clip_image004%25255B3%25255D.png?imgmax=800" width="483" height="366" /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Defining the Job in FlowForce Server&lt;/b&gt;&lt;/p&gt;&lt;p&gt;The screenshot below shows the complete job steps defined in a FlowForce Server job properties window:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowForce Server job definition" border="0" alt="FlowForce Server job definition" src="http://lh3.ggpht.com/-A_n4WloIckY/UQqMCuZC22I/AAAAAAAABAk/fFFQiZOTts0/clip_image005%25255B3%25255D.png?imgmax=800" width="600" height="744" /&gt;&lt;/p&gt;&lt;p&gt;The job trigger is defined at the bottom of the window. Every 30 seconds, FlowForce Server will check the hot folder. If the contents have changed, FlowForce Server will execute the job steps. Each Execution step could be a deployed MapForce mapping, a system step, or even another FlowForce Server job.&lt;/p&gt;&lt;p&gt;The name of each new file entering the hot folder becomes the parameter called {triggerfile} that we use in the mapping step as the input filename, and in the move step as the name of the file to be moved.&lt;/p&gt;&lt;p&gt;The Working-directory parameter in the mapping step defines where the output files will be placed.&lt;/p&gt;&lt;p&gt;FlowForce Server also includes features to set automatic run and stop times for jobs, user permissions and roles, and Queue settings to define minimum time between job runs and maximum parallel instances of a job.&lt;/p&gt;&lt;p&gt;In our scenario, we are likely to receive multiple input files in groups as they are copied from photographers’ memory cards. Multiple parallel runs can greatly improve throughput. As a rule of thumb, you might want to match the number of cores or CPUs in the machine running FlowForce Server.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowFoprce Server job queue settings" border="0" alt="FlowForce Server job queue settings" src="http://lh3.ggpht.com/-gOS3cMv9fk8/UQqMDEVgTOI/AAAAAAAABAs/LY4M-7fMw-g/clip_image006%25255B3%25255D.png?imgmax=800" width="429" height="163" /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Exploring the Job Log&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Each time FlowForce Server runs our job, six lines are added to the Log View shown in the illustration at the top of this post. The first and last lines record the start and completion of the job, and each Execution step generated its own start and completion messages. The phrase “completed with status: 0” means the step was successful with no errors.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowForce job log" border="0" alt="FlowForce job log" src="http://lh4.ggpht.com/-ehCqEYCeST8/UQqMDdhcyLI/AAAAAAAABA0/tWt7MYqX-Fc/clip_image007%25255B3%25255D.png?imgmax=800" width="610" height="74" /&gt;&lt;/p&gt;&lt;p&gt;We can click the &lt;u&gt;more&lt;/u&gt; links for a detailed report on each Execution step. The screenshot below shows the message for the MapForce mapping Execution step:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="FlowForce job details" border="0" alt="FlowForce job detail" src="http://lh5.ggpht.com/-FKRbtRq6uGM/UQqMDjeIaZI/AAAAAAAABA8/__RKzBpLYlk/clip_image008%25255B3%25255D.png?imgmax=800" width="600" height="472" /&gt;&lt;/p&gt;&lt;p&gt;Each file dropped into the hot folder generates an individual FlowForce Server job instance, even if multiple files are added as a group. This makes it easy to track any individual input file that generates an error.&lt;/p&gt;&lt;p&gt;When we dropped four files into the hot folder, FlowForce Server ran four jobs, and the contents of the output folder looked like this:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Job results folder" border="0" alt="Job results folder" src="http://lh5.ggpht.com/-rxfQa9sOELc/UQqMENmGKgI/AAAAAAAABBE/HauLZZkgg6M/clip_image009%25255B3%25255D.png?imgmax=800" width="445" height="358" /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.altova.com/flowforce.html"&gt;&lt;b&gt;Click here to read more about FlowForce Server Beta 3&lt;/b&gt;&lt;/a&gt;&lt;b&gt; at the Altova Web site, or &lt;/b&gt;&lt;a href="http://www.altova.com/download/flowforce/flowforce_server.html"&gt;&lt;b&gt;visit the FlowForce Server Beta 3 download page&lt;/b&gt;&lt;/a&gt;&lt;b&gt; to get started automating data transformations in your data center!&lt;/b&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/-FSkHXLqpTc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/1963378691249593317/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=1963378691249593317" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/1963378691249593317?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/1963378691249593317?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/-FSkHXLqpTc/automate-data-transformation-with.html" title="Automate Data Transformation with FlowForce Server" /><author><name>DaveMcG</name><uri>http://www.blogger.com/profile/08885768216396627489</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://1.bp.blogspot.com/_REdrfeVqYdU/Se9fDv8FDpI/AAAAAAAAADY/eqOIwcE3V1k/S220/david.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-Y2W3wl_49us/UQqMAu-rvKI/AAAAAAAABAE/0smVWZzKnWE/s72-c/clip_image001%25255B3%25255D.png?imgmax=800" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://blog.altova.com/2013/02/automate-data-transformation-with.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUIGQXszfyp7ImA9WhNaFEU.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-1987015806613295681</id><published>2013-01-29T08:17:00.000-05:00</published><updated>2013-01-29T13:18:40.587-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-29T13:18:40.587-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="data mapping" /><category scheme="http://www.blogger.com/atom/ns#" term="MapForce" /><title>Process Multiple Input Files in a Single Data Mapping</title><content type="html">&lt;p&gt;Typical data conversion tasks require processing numerous input files that arrive in batches. &lt;a href="http://www.altova.com/mapforce.html"&gt;Altova MapForce&lt;/a&gt; includes features that let you handle groups of files with minimal intervention.&lt;/p&gt;&lt;p&gt;For instance, we recently copied a set of files from the memory card of a digital camera with GPS support. Each .LOG file is a CSV containing GPS coordinates for a single route.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Directory list of source files for data conversion" border="0" alt="Directory list of source files for data conversion" src="http://lh4.ggpht.com/-Y_WZhryIjkY/UPl5wriQH7I/AAAAAAAAA9Q/EsluCIUq068/clip_image001%25255B3%25255D.png?imgmax=800" width="593" height="95" /&gt;&lt;/p&gt;&lt;p&gt;We quickly designed a mapping to convert the CSV data to XML-based .gpx format and processed all three files to generate three output files in a single execution:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="List of automatically generated output files" border="0" alt="List of automatically generated output files" src="http://lh3.ggpht.com/-_QzOFmBto78/UPl5xBjlsjI/AAAAAAAAA9Y/DIJBSZ6AdMw/clip_image002%25255B3%25255D.png?imgmax=800" width="473" height="128" /&gt;&lt;/p&gt;&lt;p&gt;&lt;a name='more'&gt;&lt;/a&gt; &lt;p&gt;&lt;p&gt;First, we used a wildcard character in the Input file name in the Properties dialog for the input component of the mapping. This instructs MapForce to individually process every file in the working directory that matches the wildcard.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Using a wildcard for the mapping input file" border="0" alt="Using a wildcard for the mapping input file" src="http://lh3.ggpht.com/-iqz0XDhHvLQ/UPl5xo-viaI/AAAAAAAAA9g/TO9klug7KLc/clip_image003%25255B3%25255D.png?imgmax=800" width="510" height="166" /&gt;&lt;/p&gt;&lt;p&gt;If you are designing a complex conversion, or if the input files are very large, you can use a single unique filename to develop the mapping, then change to a wildcard when you are satisfied with the mapping output.&lt;/p&gt;&lt;p&gt;&lt;b&gt;File Path Functions&lt;/b&gt;&lt;/p&gt;&lt;p&gt;The built-in MapForce Function Library includes file path functions we can use to manage output file names. If we define a single output file, it will be appended with new data when we process each successive input. &lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="File path functions in the MapForce function library" border="0" alt="File path functions in the MapForce function library" src="http://lh5.ggpht.com/-JxIKHZXrzEo/UPl5xzHgSnI/AAAAAAAAA9o/6APxltAkffU/clip_image004%25255B3%25255D.png?imgmax=800" width="480" height="193" /&gt;&lt;/p&gt;&lt;p&gt;You can combine file path functions with other string functions for complete control of output file names and locations. We decided to leave the output in the same directory as the input files, but to create more descriptive filenames, and to use the .gpx file extension.&lt;/p&gt;&lt;p&gt;The portion of the mapping shown below uses the string concat function with file path functions to generate the output file 1211190converted.gpx from 1211190.LOG, and so on.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Using path functions with a string function" border="0" alt="Using path functions with a string function" src="http://lh4.ggpht.com/-l6ypssdA9Mg/UPl5ydkZBjI/AAAAAAAAA9w/2IfnpeT0TDY/clip_image005%25255B3%25255D.png?imgmax=800" width="600" height="161" /&gt;&lt;/p&gt;&lt;p&gt;You can also use file path functions to generate strings and insert them as output. The XML Schema for .gpx files contains a metadata description element. We decided to insert the input file name into the metadata to explicitly link the output file to the original data. This strategy makes the output file self-documenting, and can help with debugging if you need to trace unexpected output back to the original source.&lt;/p&gt;&lt;p&gt;The portion of the mapping shown below inserts the source file name into a string and maps the string to the metadata &amp;lt;desc&amp;gt; element:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Mapping the file name as output data" border="0" alt="Mapping the file name as output data" src="http://lh4.ggpht.com/-_NjzoK77594/UPl5zLiSFyI/AAAAAAAAA94/3E_Qvk6srt8/clip_image006%25255B3%25255D.png?imgmax=800" width="600" height="174" /&gt;&lt;/p&gt;&lt;p&gt;The resulting description is on line 4 of the &lt;a href="http://www.altova.com/mapforce/mapping-output.html"&gt;mapping Output preview&lt;/a&gt;:&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Preview of output data with a file name" border="0" alt="Preview of output data with a file name" src="http://lh3.ggpht.com/-EjC6gwHoeag/UPl5zSR4N0I/AAAAAAAAA-A/7qR6l5P2tTI/clip_image007%25255B3%25255D.png?imgmax=800" width="425" height="339" /&gt;&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Filtering Input Data&lt;/b&gt;&lt;/p&gt;&lt;p&gt;The core of this data mapping required a filter on the input file. The camera GPS log files are recorded according to the National Marine Electronics Association (NMEA) specification. A portion of one of the input files is shown below:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Sample data from the camera GPS log" border="0" alt="Sample data from the camera GPS log" src="http://lh6.ggpht.com/-My1iWbnP1Fs/UPl5z4xF7tI/AAAAAAAAA-I/dmH9bWwphCI/clip_image008%25255B3%25255D.png?imgmax=800" width="517" height="320" /&gt;&lt;/p&gt;&lt;p&gt;After the first line, each recorded point is described by two NMEA sentences, where the sentence type is identified in the first field. Each GGA sentence includes the time, latitude, longitude, elevation, and additional data about the quality of the fix. Each RMC sentence contains the time, latitude, longitude, and date.&lt;/p&gt;&lt;p&gt;An RMC sentence contains the minimum data we need to generate a .gpx &amp;lt;trkpt&amp;gt; element, so we can use a filter to select only those lines from the input, as shown here:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Filtering the input data to extract rows" border="0" alt="Filtering the input data to extract rows" src="http://lh5.ggpht.com/-u3MGw07n5Jg/UPl50MRDs2I/AAAAAAAAA-M/Jdm8sOiyLko/clip_image009%25255B3%25255D.png?imgmax=800" width="604" height="168" /&gt;&lt;/p&gt;&lt;p&gt;If the message type in the first field of a row contains &amp;quot;$GPRMC&amp;quot; it is passed through for processing. If not, the row is ignored.&lt;/p&gt;&lt;p&gt;The actual data in the input file also required some manipulation. For each latitude and longitude, we had to combine multiple fields in the source that defined degrees, minutes, and seconds and convert to decimal degrees. We needed to combine the time and date fields and record the result in ISO 8601 format as required by .gpx, such as 2012-11-19T20:43:23Z. We defined each of those conversions as user functions to encapsulate their complexities and separate them from the main mapping.&lt;/p&gt;&lt;p&gt;This mapping also provides an opportunity to reuse the getElevationUS user function we defined in the earlier post &lt;a href="http://blog.altova.com/2013/01/expect-unexpected-altova-missionkit.html"&gt;Expect the Unexpected - Altova MissionKit Solves a Number Format Mystery&lt;/a&gt;. This time we rounded the elevation data to three decimal points, representing the nearest millimeter.&lt;/p&gt;&lt;p&gt;The core section of the CamerlogToGPX data mapping with user functions looks like this:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Core of the data mapping with user functions" border="0" alt="Core of the data mapping with user functions" src="http://lh6.ggpht.com/-2HVaK82dfyo/UPl50fC_aHI/AAAAAAAAA-Y/1rMavSy31hM/clip_image010%25255B3%25255D.png?imgmax=800" width="605" height="357" /&gt;&lt;/p&gt;&lt;p&gt;And here is one of the output files showing a &amp;lt;trk&amp;gt;, &amp;lt;trkseg&amp;gt;, and several &amp;lt;trkpt&amp;gt; elements.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Sample output data" border="0" alt="Sample output data" src="http://lh6.ggpht.com/-HQudomQ_V9o/UPl51JbUgXI/AAAAAAAAA-g/OH2DiYSvrZU/clip_image011%25255B3%25255D.png?imgmax=800" width="430" height="332" /&gt;&lt;/p&gt;&lt;p&gt;The MapForce Output menu provides a selection that lets us validate the output files against the .gpx XML Schema:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Vlaidation results" border="0" alt="Validation results" src="http://lh6.ggpht.com/-9PvYWtWIYh0/UPl51dQrWfI/AAAAAAAAA-o/1NI8SHJzfLg/clip_image012%25255B3%25255D.png?imgmax=800" width="546" height="105" /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;If you would like use &lt;/b&gt;&lt;a href="http://www.altova.com/download-trial.html"&gt;&lt;b&gt;Altova MapForce&lt;/b&gt;&lt;/a&gt;&lt;b&gt; to process input files in batches for your own data mappings, &lt;/b&gt;&lt;a href="http://www.altova.com/download-trial.html"&gt;&lt;b&gt;click here to download a free trial&lt;/b&gt;&lt;/a&gt;&lt;b&gt;.&lt;/b&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/kzJUhj1Z5Sg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/1987015806613295681/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=1987015806613295681" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/1987015806613295681?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/1987015806613295681?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/kzJUhj1Z5Sg/process-multiple-input-files-in-single.html" title="Process Multiple Input Files in a Single Data Mapping" /><author><name>DaveMcG</name><uri>http://www.blogger.com/profile/08885768216396627489</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://1.bp.blogspot.com/_REdrfeVqYdU/Se9fDv8FDpI/AAAAAAAAADY/eqOIwcE3V1k/S220/david.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-Y_WZhryIjkY/UPl5wriQH7I/AAAAAAAAA9Q/EsluCIUq068/s72-c/clip_image001%25255B3%25255D.png?imgmax=800" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://blog.altova.com/2013/01/process-multiple-input-files-in-single.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0QARno_eip7ImA9WhNbGEs.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-5194227015014277947</id><published>2013-01-22T09:31:00.001-05:00</published><updated>2013-01-22T09:35:47.442-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-22T09:35:47.442-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="XML Schema" /><category scheme="http://www.blogger.com/atom/ns#" term="XMLSpy" /><category scheme="http://www.blogger.com/atom/ns#" term="XSD" /><category scheme="http://www.blogger.com/atom/ns#" term="XML Editor" /><title>Generating a Schema from Multiple XML Instances</title><content type="html">&lt;p&gt;I was recently talking with one of our &lt;a href="http://www.altova.com/support.html"&gt;Support&lt;/a&gt; Engineers about common questions he receives from customers. One that comes up a lot is schema generation. XMLSpy will &lt;a href="http://www.altova.com/xml-schema-editor.html"&gt;generate a valid XSD&lt;/a&gt; from a DTD, a relational database structure, and of course, an XML instance. But what many customers don’t know is that the &lt;a href="http://www.altova.com/xml-editor/"&gt;XML editor&lt;/a&gt; will also create an XML Schema based on a &lt;i&gt;group&lt;/i&gt; of related XML files – and this is a common requirement. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-3qitipH9Pfw/UP6iuTE5orI/AAAAAAAAASs/7nv1th3O3iw/s1600-h/clip_image004%25255B6%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="XMLSpy XSD Editor" border="0" alt="XSD editor" src="http://lh5.ggpht.com/-E5b-WOyGHqA/UP6iuqX02dI/AAAAAAAAAS0/KhPTSl_FhAc/clip_image004_thumb%25255B1%25255D.png?imgmax=800" width="599" height="506" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Let’s take a look at how it works. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;a name='more'&gt;&lt;/a&gt;  &lt;p&gt;Let’s say I have inherited a Web development project, having received a group of XML files as a starting point – but no XML Schema. To generate an XSD for those files, I first need to add them to an XMLSpy project. This will be useful afterwards since the project groups all the related files in one, easy to manage group of folders where I can assign XSLT transformations, perform batch operations such as project-wide validation, and so on. &lt;/p&gt;  &lt;p&gt;It’s worth taking a moment to talk about the XMLSpy project itself. The folders may correspond to actual directories on the file system, or I can define file-type extensions for each folder so that common files are kept together in one convenient place. The project folders are virtual folders and do not need to correspond to any hierarchical organization of the files on my server.&lt;/p&gt;  &lt;p&gt;I can also assign different XSL transformation parameters to each folder and have the same physical file be contained in more than one project folder. This is especially useful when I need to keep data in one XML file and use different XSL stylesheets to produce different output. And, of course, XMLSpy project management integrates with most source control systems. &lt;/p&gt;  &lt;p&gt;OK, back to generating the schema. The first step is to select New Project from the Project menu. XMLSpy creates a skeleton project with place holder folders for various file types. It’s easy to add custom folders, as needed. To add the files I received to this new project, I right click on the XML Files folder and select Add Files… &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-ife5iURFIf8/UP6iu28TtaI/AAAAAAAAAS8/pv1j1RU--p4/s1600-h/clip_image001%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Creating an XML Project" border="0" alt="Creating an XML project" src="http://lh3.ggpht.com/-CU_6VD_ekWM/UP6ivUhf0nI/AAAAAAAAATE/NjKHHB7Ms7Q/clip_image001_thumb.png?imgmax=800" width="447" height="360" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;And browse to select the XML files for the Web site. This is a good time to save the project with a descriptive name, and this also saves the newly added file associations to the project. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-4SA1InL1q2Q/UP6ivz70ZpI/AAAAAAAAATM/1A7SPJ31RYo/s1600-h/clip_image002%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="XML Project" border="0" alt="XML Project" src="http://lh5.ggpht.com/-V3GvW60FxRw/UP6iwRG9DuI/AAAAAAAAATU/nm9geL3zWhA/clip_image002_thumb.png?imgmax=800" width="211" height="297" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now, all I need to do is right click on the XML Files folder and select Generate DTD / Schema… and review or update the configurable options. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-TkMek9iUK-U/UP6iwqvM99I/AAAAAAAAATc/GTWIj3AONnE/s1600-h/clip_image003%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Generate XSD Dialog" border="0" alt="Generate XSD Dialog" src="http://lh3.ggpht.com/-tqOErpnsdVo/UP6ixFWQwAI/AAAAAAAAATk/1TCQL6s_ubM/clip_image003_thumb.png?imgmax=800" width="348" height="551" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This will generate an XSD based on all the XML files included in the folder. After clicking OK, I’m prompted to save the auto-generated XML Schema, and it opens in the &lt;a href="http://www.altova.com/xml-schema-editor.html"&gt;graphical XML Schema View&lt;/a&gt;. Here are the global elements generated based on the XML instance files: &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-AEyII8aytfQ/UP6ixgVzgrI/AAAAAAAAATs/G9cH1Pmu-Ho/s1600-h/clip_image004%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Schema Globals" border="0" alt="Schema Globals" src="http://lh6.ggpht.com/-5xXyRqVd_jo/UP6ixwkADUI/AAAAAAAAAT0/UQ5bJfBpFaY/clip_image004_thumb.png?imgmax=800" width="599" height="506" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Clicking the tree icon next to any element displays the detailed content model. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-UBteKI1LB-w/UP6iyRKVbXI/AAAAAAAAAT8/G7ceoyyYk6s/s1600-h/clip_image005%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="XSD Content Model" border="0" alt="XSD content model" src="http://lh4.ggpht.com/-V7dptViaW9w/UP6iypwrRqI/AAAAAAAAAUE/RI7IL9P1Ojg/clip_image005_thumb.png?imgmax=800" width="636" height="335" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The graphical design paradigm of the &lt;a href="http://www.altova.com/xmlspy/xsd-editor.html"&gt;XSD editor&lt;/a&gt; makes it easy to refine and edit this schema as needed. &lt;/p&gt;  &lt;p&gt;That’s it – in a few quick steps I have a valid schema generated based on a group of instance files. &lt;/p&gt;  &lt;p&gt;Which &lt;a href="http://www.altova.com/xmlspy.html"&gt;XMLSpy&lt;/a&gt; features help make your everyday work easier? Or, is there a time-saving feature you’d like to see added? We’d love to hear from you. Please leave a comment below! &lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/Altova/~4/_R31-KPgXtg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/5194227015014277947/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=5194227015014277947" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/5194227015014277947?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/5194227015014277947?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/_R31-KPgXtg/generating-schema-from-multiple-xml.html" title="Generating a Schema from Multiple XML Instances" /><author><name>Erin Cavanaugh</name><uri>http://www.blogger.com/profile/05488702872055566047</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://2.bp.blogspot.com/_C4xYMtGRX-M/SYie9G7vVdI/AAAAAAAAABE/7MnFXMC-iy8/S220/Erin.JPG" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-E5b-WOyGHqA/UP6iuqX02dI/AAAAAAAAAS0/KhPTSl_FhAc/s72-c/clip_image004_thumb%25255B1%25255D.png?imgmax=800" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://blog.altova.com/2013/01/generating-schema-from-multiple-xml.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkMGQX49eSp7ImA9WhNUGE8.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-8815668321117492884</id><published>2013-01-10T08:27:00.000-05:00</published><updated>2013-01-10T08:27:00.061-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-10T08:27:00.061-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="XMLSpy" /><category scheme="http://www.blogger.com/atom/ns#" term="data mapping" /><category scheme="http://www.blogger.com/atom/ns#" term="MapForce" /><category scheme="http://www.blogger.com/atom/ns#" term="MissionKit" /><title>Expect the Unexpected – Altova MissionKit Solves a Number Format Mystery</title><content type="html">&lt;p&gt;Every time you receive data from an outside source, there is a chance it won’t arrive in the form you expect. This can require special accommodations for the rare and unlikely to make a real-world data mapping and transformation solution robust and reliable.&lt;/p&gt;&lt;p&gt;We processed literally dozens of .gpx files, containing hundreds of coordinates each, through the MapForce mapping we wrote about in the blog post &lt;a href="http://blog.altova.com/2012/06/web-service-as-look-up-table-to-refine.html"&gt;Web Service as a Look-Up Table to Refine GPS Data&lt;/a&gt;. Then one day we ran a new file and encountered the error below, which caused the mapping to fail:&lt;b&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Error message during mapping of Web services data" border="0" alt="Error message during mapping of Web services data" src="http://lh6.ggpht.com/-8eeq0Sre-5o/UO2IztvOjdI/AAAAAAAAA6k/LhnY21vwyK8/clip_image001%25255B3%25255D.png?imgmax=800" width="390" height="384" /&gt;&lt;/p&gt;&lt;p&gt;Reaching into the &lt;a href="http://www.altova.com/missionkit.html"&gt;Altova MissionKit&lt;/a&gt; to combine features of &lt;a href="http://www.altova.com/mapforce.html"&gt;MapForce&lt;/a&gt; and &lt;a href="http://www.altova.com/xmlspy.html"&gt;XMLSpy&lt;/a&gt;, we quickly diagnosed the issue and developed a solution we can also reuse in future mapping projects.&lt;/p&gt;&lt;p&gt;&lt;a name='more'&gt;&lt;/a&gt; &lt;p&gt;&lt;p&gt;We first suspected a problem with the input data, so we opened the file in XMLSpy, where it passed well-formedness and &lt;a href="http://www.altova.com/xmlspy/xml-validator.html"&gt;XML validation&lt;/a&gt; tests. Fortunately, each data point has a unique time stamp, so we searched for 23:06:22, marking the last set of GPS coordinates that processed successfully. That time stamp occurred once at line 1772 of the input file.&lt;/p&gt;&lt;p&gt;Nothing looked obviously wrong in the source data that immediately followed. We simply commented out the next data point, and saved the file to reprocess the mapping: &lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Commenting out a portion of an XML file" border="0" alt="Commenting out a portion of an XML file" src="http://lh3.ggpht.com/-UeqIOKWBDp8/UO2I0JP9HII/AAAAAAAAA6s/3GC5RMqRXAA/clip_image002%25255B3%25255D.png?imgmax=800" width="600" height="483" /&gt;&lt;/p&gt;&lt;p&gt;This time the mapping ran successfully:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Altova MapForce Messages window" border="0" alt="Altova MapForce Messages window" src="http://lh5.ggpht.com/-K0ySupBx4ZM/UO2I1KQnttI/AAAAAAAAA60/BpfcM6B9RY0/clip_image003%25255B3%25255D.png?imgmax=800" width="438" height="122" /&gt;&lt;/p&gt;&lt;p&gt;Now we were suspicious of the data returned by the Web service. Even though the U.S. Geological Survey National Geospatial Program runs the Web service, maybe the underlying database contained invalid data. &lt;/p&gt;&lt;p&gt;We inserted a simple .csv file into the mapping as an alternate output and mapped the elevation results for each set of source coordinates to examine the Web service output.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Using a simple text file to capture data from a Web service" border="0" alt="Using a simple text file to capture data from a Web service" src="http://lh6.ggpht.com/-KAc2wKzVjes/UO2I1myy8oI/AAAAAAAAA68/aSoxAnJ7Zh8/clip_image004%25255B3%25255D.png?imgmax=800" width="580" height="317" /&gt;&lt;/p&gt;&lt;p&gt;One line in the output file diagnostic.csv contained the same value quoted in the previous error message:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Sample output from the Web service" border="0" alt="Sample output from the Web service" src="http://lh3.ggpht.com/-_8RAIySmcXg/UO2I2ssrbNI/AAAAAAAAA7E/qtT4BbsKONo/clip_image005%25255B3%25255D.png?imgmax=800" width="333" height="236" /&gt;&lt;/p&gt;&lt;p&gt;It’s scientific notation! The Web service returned a number formatted in &lt;a href="http://en.wikipedia.org/wiki/Scientific_notation"&gt;scientific notation&lt;/a&gt;! The round-precision function in our data mapping that processes the Web service result requires decimal input.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Datatype Conversion&lt;/b&gt;&lt;/p&gt;&lt;p&gt;One strategy might be to write a function that recognizes the Web service result as scientific notation and explicitly calculate the numeric value. The MapForce error message “Conversion to &lt;b&gt;decimal&lt;/b&gt; failed for ‘-1.24202767892712E-06’” suggests a simpler solution.&lt;/p&gt;&lt;p&gt;This is a good time to think about datatypes. The Web service component in our mapping clearly indicates it returns a text string. MapForce automatically performs type conversions from string to decimal number when a mapping connects a string as input to a mathematical formula. In most cases, this frees developers from thinking about explicit type conversions as data moves between formats. In our mapping, MapForce successfully performed type conversion from a string to decimal 178 times before encountering the entry in scientific notation.&lt;/p&gt;&lt;p&gt;Scientific notation is normally used for numbers that are too large or too small to be conveniently recorded in decimal form. In MapForce, the decimal datatype does not specify the size, or value, of the number. Instead, it identifies the XML decimal type, a character sequence of digits with a period as the decimal separator.&lt;/p&gt;&lt;p&gt;In XML -- and in MapForce -- the double datatype supports scientific notation. We can explicitly cast data in scientific notation as the double datatype, then round the result.&lt;/p&gt;&lt;p&gt;This solution is easy to test in a simple mapping, using text files for both the input and output. We inserted a simple variable before the round-precision function and assigned its datatype as double. For our first test, we used the data captured from the USGS Web service as input, to run the same data without redundantly performing the Web service calls. This mapping also lets us easily build more test cases with new input data.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Assigning the datatype of a variable in MapForce" border="0" alt="Assigning the datatype of a variable in MapForce" src="http://lh5.ggpht.com/-hosv1fkHlMw/UO2I2yvIsVI/AAAAAAAAA7M/-jMNaESV_rA/clip_image006%25255B3%25255D.png?imgmax=800" width="580" height="550" /&gt;&lt;/p&gt;&lt;p&gt;The mapping processed successfully, generating this output:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Example output from the mdified data mapping" border="0" alt="Example output from the mdified data mapping" src="http://lh4.ggpht.com/-4jeljPRsVcU/UO2I3iKQtZI/AAAAAAAAA7U/sH3Wn2YS05I/clip_image007%25255B3%25255D.png?imgmax=800" width="326" height="244" /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Build a User Function&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.altova.com/mapforce/visual-function-builder.html"&gt;User functions&lt;/a&gt; in MapForce are defined in one mapping file, and can be added to the Function Library for use in other mapping files, even by multiple users. User functions also encapsulate complicated operations and help make the overall data flow of a large mapping design much more traceable. &lt;/p&gt;&lt;p&gt;We had already modified the simple Web service call by choosing the database for eastern or western continental US based on the longitude. Now, adding explicit datatyping to the result makes calling getElevation even more complex. We chose to define everything in a user function.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="A user function in MapForce to encapsulate a complex operation" border="0" alt="A user function in MapForce to encapsulate a complex operation" src="http://lh6.ggpht.com/-EgfsEE1molQ/UO2I4X0fxbI/AAAAAAAAA7c/lgbGUeDDmIU/clip_image008%25255B3%25255D.png?imgmax=800" width="546" height="413" /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Applying the User Function&lt;/b&gt;&lt;/p&gt;&lt;p&gt;In the mapping below, we inserted the new getElevationUS function.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="MapForce data mapping enhanced with a User Function" border="0" alt="MapForce data mapping enhanced with a User Function" src="http://lh5.ggpht.com/-1WM_YloAs9Q/UO2I5OcvIQI/AAAAAAAAA7k/0rKkFhfhmKY/clip_image009%25255B3%25255D.png?imgmax=800" width="565" height="530" /&gt;&lt;/p&gt;&lt;p&gt;At this point it’s good to recall why we rounded the elevation returned by Web service in the first place. The Web service returns a value in meters, and two decimal places -- or each centimeter -- is less than a half inch.&lt;/p&gt;&lt;p&gt;We could have included the round operation as part of the getElevationUS function, but the function will be more useful in future data mappings if it does not round the raw elevation data.&lt;/p&gt;&lt;p&gt;Output of the revised mapping is shown below, using the same input .gpx file that caused the initial problem. We searched the output file for 23:06:22, the time stamp we used to find the last good coordinates before the error. The following point starting on line 902 is the one that failed.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Sample data from a MapForce data mapping" border="0" alt="Sample data from a MapForce data mapping" src="http://lh5.ggpht.com/-k6NYBvSghlA/UO2I52w8KQI/AAAAAAAAA7s/0-s7KfpJdpE/clip_image010%25255B3%25255D.png?imgmax=800" width="379" height="416" /&gt;&lt;/p&gt;&lt;p&gt;At first we were disappointed all this effort boiled down to an elevation that rounds to 0. Then we mapped the suspicious coordinates on a Google map:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Locating a point by latitude and longitude" border="0" alt="Locating a point by latitude and longitude" src="http://lh6.ggpht.com/-0v5cW6dbhms/UO2I6ssKn6I/AAAAAAAAA7w/6Kq-1XDWz5Q/clip_image011%25255B3%25255D.png?imgmax=800" width="549" height="398" /&gt;&lt;/p&gt;&lt;p&gt;Part of the route followed a bridge over a tidal inlet. Even if we never reuse the getElevationUS function in a future data mapping, it’s very likely other .gpx files for other trips will lead across other tidal inlets, where they might generate more very small elevation values.&lt;/p&gt;&lt;p&gt;&lt;b&gt;If you would like use the tools in the &lt;/b&gt;&lt;a href="http://www.altova.com/missionkit/software-development-tools.html"&gt;&lt;b&gt;Altova MissionKit&lt;/b&gt;&lt;/a&gt;&lt;b&gt; &lt;/b&gt;&lt;b&gt;to create user-defined functions for your own data mappings, &lt;/b&gt;&lt;a href="http://www.altova.com/download-trial/"&gt;&lt;b&gt;click here to download a free trial&lt;/b&gt;&lt;/a&gt;&lt;b&gt;.&lt;/b&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/G1TWNxQ5Tlo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/8815668321117492884/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=8815668321117492884" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/8815668321117492884?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/8815668321117492884?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/G1TWNxQ5Tlo/expect-unexpected-altova-missionkit.html" title="Expect the Unexpected – Altova MissionKit Solves a Number Format Mystery" /><author><name>DaveMcG</name><uri>http://www.blogger.com/profile/08885768216396627489</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://1.bp.blogspot.com/_REdrfeVqYdU/Se9fDv8FDpI/AAAAAAAAADY/eqOIwcE3V1k/S220/david.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/-8eeq0Sre-5o/UO2IztvOjdI/AAAAAAAAA6k/LhnY21vwyK8/s72-c/clip_image001%25255B3%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2013/01/expect-unexpected-altova-missionkit.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUENQnwzfCp7ImA9WhNUEUg.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-4288028777184434793</id><published>2013-01-02T15:14:00.001-05:00</published><updated>2013-01-02T15:14:53.284-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-02T15:14:53.284-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="MetaTeam" /><category scheme="http://www.blogger.com/atom/ns#" term="DatabaseSpy" /><category scheme="http://www.blogger.com/atom/ns#" term="PMBOK" /><category scheme="http://www.blogger.com/atom/ns#" term="project management" /><category scheme="http://www.blogger.com/atom/ns#" term="SQL" /><category scheme="http://www.blogger.com/atom/ns#" term="PMP" /><title>Are You Looking For A Relational View of the PMBOK?</title><content type="html">&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Altova &lt;a href="http://www.altova.com/metateam.html" target="_blank"&gt;MetaTeam&lt;/a&gt; is project management software for high performance team collaboration.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;MetaTeam is first and foremost simple and friendly. &amp;nbsp;You can see that for yourself in the examples on the &lt;a href="http://blog.metateam.net/"&gt;MetaTeam blog&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://metateam.net/" target="_blank"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-12DHi1eVIDo/UKk5Ww4NzBI/AAAAAAAAAeA/qt1-cLN4z28/s1600/metateamlogo.png" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;But 
MetaTeam is also designed to support standards and methodologies, as 
well as to work alongside advanced Critical Path scheduling tools like &lt;a href="http://www.microsoft.com/project/en-us/project-professional-2010.aspx" target="_blank"&gt;Microsoft Project&lt;/a&gt; or &lt;a href="http://www.projectlibre.org/" target="_blank"&gt;ProjectLibre&lt;/a&gt;. &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Because of this, we encourage our team to be certified as Project Management Professionals (&lt;a href="http://en.wikipedia.org/wiki/Project_Management_Professional" target="_blank"&gt;PMP&lt;/a&gt;).&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;We
 have a tool for our own PMP exam prep that may be helpful for others.&amp;nbsp; It is a
 SQL database mapping the project management standard into a relational 
model.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Read on for why we created it, using our &lt;a href="http://www.altova.com/databasespy.html" target="_blank"&gt;DatabaseSpy&lt;/a&gt; product, and to download it for your own use.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-6HYj_L5zTac/UNY-XiZezQI/AAAAAAAAAvU/a4P0oV5HoI0/s1600/pmbok_alt_first_image-seal.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-6HYj_L5zTac/UNY-XiZezQI/AAAAAAAAAvU/a4P0oV5HoI0/s1600/pmbok_alt_first_image-seal.png" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;The PMP credential is based on the Project Management Institute's standard Project Management Body of Knowledge (&lt;a href="http://en.wikipedia.org/wiki/A_Guide_to_the_Project_Management_Body_of_Knowledge" target="_blank"&gt;PMBOK&lt;/a&gt;). The print form is an overview called &lt;b&gt;A Guide to the Project Management Body of Knowledge&lt;/b&gt;.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;The PMBOK is the leading project management standard worldwide — and &lt;a href="http://metateam.net/" target="_blank"&gt;MetaTeam&lt;/a&gt; dovetails with it by design.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Preparing
 for the PMP exam is a non-trivial exercise in learning the details, 
processes and standard lingo of project management.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-8wn2tVaxqak/UNZEWSjdhLI/AAAAAAAAAvw/N7AxuH__yOk/s1600/why.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="105" src="http://1.bp.blogspot.com/-8wn2tVaxqak/UNZEWSjdhLI/AAAAAAAAAvw/N7AxuH__yOk/s200/why.png" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Now, why would someone want a relational database of the standard project management information?&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;I'm glad you asked!&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;The 
reason is that the body of knowledge contains a very large amount of 
information that is linked in some very relationally-oriented ways.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;And yet the relationships are not easily explored in paper-form or PDF. &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;For a sense of the challenge, consider these numbers.&amp;nbsp; PMI's PMBOK Guide has:&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Roughly 500 pages&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;42 processes&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Five process groups&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Nine knowledge areas, also structuring the 42 processes&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Hundreds of tools and techniques tied to specific processes&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Roughly 100 deliverables and assets&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Hundreds of inputs and outputs &lt;/span&gt;&lt;span style="font-size: x-small;"&gt;links&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;, and&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;A large glossary of must-know terms&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;And, 
of course there are many items only specified by name in the Guide, or 
just hinted at, with the details to be discovered by the reader 
elsewhere.&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;How to deal with all that?&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;For 
us it the next step was easy: break out DatabaseSpy and create a 
relational database we could use to make sense of all that 
information, and more.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Yes, we are geeks here!&amp;nbsp; :) &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://2.bp.blogspot.com/-v_QBgdwIF08/UKlJ_EarvrI/AAAAAAAAAgA/6MCZs55ew8Y/s1600/databasespy.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-v_QBgdwIF08/UKlJ_EarvrI/AAAAAAAAAgA/6MCZs55ew8Y/s1600/databasespy.png" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Creating and populating a database using DatabaseSpy is no big thing, of course.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;But since I love DatabaseSpy, I’m going to give a quick overview of the process.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;The link to download the schema and data is at the bottom of this post.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;The first task was to connect to a local MySql server.&amp;nbsp; The Connection Wizard made that a snap.&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://1.bp.blogspot.com/-YaONeeqBbjw/UKlYqEHxfYI/AAAAAAAAAgo/tTmpEfL8mXk/s1600/pmbok_add_datasource.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://1.bp.blogspot.com/-YaONeeqBbjw/UKlYqEHxfYI/AAAAAAAAAgo/tTmpEfL8mXk/s320/pmbok_add_datasource.png" width="306" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;After
 connecting we quickly created a new database in the SQL editor by 
clicking the New menu and select SQL Editor, then executing a database 
create statement.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;The create statement is in the SQL file you can 
download below.&amp;nbsp; We called the database “pmbok”.&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://4.bp.blogspot.com/-dr4RCCxsiKg/UKlYyuE424I/AAAAAAAAAgw/zz4kz3x58eM/s1600/pmbok_new_design.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="132" src="http://4.bp.blogspot.com/-dr4RCCxsiKg/UKlYyuE424I/AAAAAAAAAgw/zz4kz3x58eM/s320/pmbok_new_design.png" width="320" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;With 
the database made, we started to design by clicking the New menu and 
selecting Design Editor.&amp;nbsp; First thing to do is to switch to the “pmbok” 
database by changing the root object in the properties window. &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://2.bp.blogspot.com/-dpRKdYPBYL0/UKlY6M0FQlI/AAAAAAAAAg4/RhakWKfM7TM/s1600/pmbok_properties.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-dpRKdYPBYL0/UKlY6M0FQlI/AAAAAAAAAg4/RhakWKfM7TM/s1600/pmbok_properties.png" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;For
 our database we wanted to focus on the PMBOK’s processes’ inputs, 
outputs, and tools and techniques.&amp;nbsp; The goal was to be able to quickly 
answer questions like:&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;What inputs are common to “Estimate Activity Resources” and “Estimate Costs”?&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Where are “Performance Reports&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;"&lt;/span&gt;&lt;span style="font-size: x-small;"&gt; created and used?&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;What process&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;es&lt;/span&gt;&lt;span style="font-size: x-small;"&gt; rely on “Work performance information” vs “Work performance measurements”?&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;To do this we started with the basics.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;First we needed a PROCESS table, along with PROCESS_GROUP and KNOWLEDGE_AREA tables.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://3.bp.blogspot.com/-hA7DS_XeUKE/UKlZDnAOLJI/AAAAAAAAAhA/wM9umHx9nto/s1600/pmbok_new_table.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="252" src="http://3.bp.blogspot.com/-hA7DS_XeUKE/UKlZDnAOLJI/AAAAAAAAAhA/wM9umHx9nto/s320/pmbok_new_table.png" width="320" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;You 
can execute the script below, but if you are following along, right 
click on the design and select create new table called “process”.&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://4.bp.blogspot.com/-Q7yDHzVrOks/UKlZMTJWqkI/AAAAAAAAAhI/SCMrcFc7Vws/s1600/pmbok_add_column.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-Q7yDHzVrOks/UKlZMTJWqkI/AAAAAAAAAhI/SCMrcFc7Vws/s1600/pmbok_add_column.png" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;The 
first column is an ID.&amp;nbsp; We made primary tables have varchar(45) IDs to 
hold meaningful keys based on the PMBOK names of the items.&amp;nbsp; For the 
dependent tables and we either used that, or compound meaningful keys or
 auto-increments depending on the data.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;We also gave most every table a NAME column.&amp;nbsp; Right click on the new table to begin adding the columns.&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://4.bp.blogspot.com/-F1jSc_Q_tJQ/UKlZYWtwANI/AAAAAAAAAhQ/QKlwX9DbF0g/s1600/pmbok_process_table.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="228" src="http://4.bp.blogspot.com/-F1jSc_Q_tJQ/UKlZYWtwANI/AAAAAAAAAhQ/QKlwX9DbF0g/s320/pmbok_process_table.png" width="320" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;The rest of the process table looks like this screenshot.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;The 
“pmbok” schema is small, just 11 tables.&amp;nbsp; It is definitely a simple 
model—which makes it more practical for studying for the PMP.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;The 
IDs tying the tables together are the name of the process, process 
group, knowledge area, etc. used in the PMBOK, with “_” for spaces and 
very few abbreviations.&amp;nbsp; Take a second to have a look at the data before
 continuing.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://3.bp.blogspot.com/-BoqhAVVRX-I/UKlZ-NBxAiI/AAAAAAAAAhY/BZ9bEnWGCpc/s1600/pmbok_tables.png" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-BoqhAVVRX-I/UKlZ-NBxAiI/AAAAAAAAAhY/BZ9bEnWGCpc/s1600/pmbok_tables.png" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;The 
shortcut to finishing this design is to execute the database script in a
 SQL window and then just drag the tables out of the Online Browser into
 the design.&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Executing
 the script will also populate the tables with process, knowledge area, 
inputs, outputs and techniques, deliverables, and other data.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;With 
all that in your database we can now go back to the SQL window and 
create queries to answer questions like the examples we gave above.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Our 
first query looked for the common elements to the Estimate Activity 
Resources and Estimate Costs processes.&amp;nbsp; We can answer that with: &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;select *&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;from process_input_or_output &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;where process_input_or_output='input' &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;and process_id in&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;&lt;span style="font-size: xx-small;"&gt;&lt;i&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/i&gt;&lt;/span&gt;('estimate_activity_resources', 'estimate_costs')&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://2.bp.blogspot.com/-vv4gEC5FLNE/UKla644zP9I/AAAAAAAAAhg/AZyENwomeCQ/s1600/pmbok_query1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-vv4gEC5FLNE/UKla644zP9I/AAAAAAAAAhg/AZyENwomeCQ/s1600/pmbok_query1.png" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Next we wanted to know where Performance Reports played a role: &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;
&lt;span style="font-size: xx-small;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; select * from process_input_or_output &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; where deliverable_or_asset_id='performance_reports'&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;QED!&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://1.bp.blogspot.com/-V9b9ZLIVGak/UKlbDDaD8NI/AAAAAAAAAho/yb2TgLnTY2k/s1600/pmbok_query2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-V9b9ZLIVGak/UKlbDDaD8NI/AAAAAAAAAho/yb2TgLnTY2k/s1600/pmbok_query2.png" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;And for the third question about the difference between the two work performance items we can use: &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;select * from process_input_or_output a &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;where a.deliverable_or_asset_id='work_performance_info'&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;union&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;select * from process_input_or_output b &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;where b.deliverable_or_asset_id='work_performance_measurements'&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://4.bp.blogspot.com/-0ZbUiSkfSDo/UKlbIx3HtgI/AAAAAAAAAhw/t_GmNnvAZJc/s1600/pmbok_query3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-0ZbUiSkfSDo/UKlbIx3HtgI/AAAAAAAAAhw/t_GmNnvAZJc/s1600/pmbok_query3.png" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://4.bp.blogspot.com/-8I5QxxgWjmM/UKlGS2IGtoI/AAAAAAAAAfw/_GeFYAX7Chg/s1600/dots.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-8I5QxxgWjmM/UKlGS2IGtoI/AAAAAAAAAfw/_GeFYAX7Chg/s1600/dots.png" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;As you can see, it is easy to browse, list and make connections between concepts using this database.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;We find it very useful for study and in our work with &lt;a href="http://www.altova.com/metateam.html"&gt;MetaTeam&lt;/a&gt;. &amp;nbsp;I hope you will as well!&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Here is &lt;a href="http://metateam.net/extras/pmbok.sql" target="_blank"&gt;the schema and data download&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Please let me know if it makes your own PMP studies a bit easier.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;&lt;i&gt;&lt;span style="font-size: xx-small;"&gt;A quick corporate w&lt;/span&gt;ord about this database script and its contents.&amp;nbsp; Please feel free to use it as a&lt;span style="font-size: xx-small;"&gt;n overview of &lt;span style="font-size: xx-small;"&gt;standard project management thinking&lt;span style="font-size: xx-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;under
 a share-alike license for non-commercial purposes.&amp;nbsp; It is offered as-is
 with no warrantee or fitness for any purpose.&amp;nbsp; It does not map to &lt;span style="font-size: xx-small;"&gt;A Guide to the Project Management Body of Knowledge&lt;/span&gt; &lt;span style="font-size: xx-small;"&gt;precisely and includes information and assumptions not found in PMI's summary of the standard committee's work.&amp;nbsp; &lt;/span&gt;Undoubtedly
 the data contains errors and omissions that you must handle on your 
own.&amp;nbsp; And please remember that it is just an example and not intended as
 a substitute for anything or for any specific purpose.&amp;nbsp; If you have 
questions about the &lt;span style="font-size: xx-small;"&gt;sc&lt;span style="font-size: xx-small;"&gt;hema, dat&lt;span style="font-size: xx-small;"&gt;a&lt;span style="font-size: xx-small;"&gt; or &lt;span style="font-size: xx-small;"&gt;usage please &lt;a href="http://www.altova.com/m/contact.html" target="_blank"&gt;contact us&lt;/a&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/j3qG4T7_yro" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/4288028777184434793/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=4288028777184434793" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/4288028777184434793?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/4288028777184434793?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/j3qG4T7_yro/are-you-looking-for-relational-view-of.html" title="Are You Looking For A Relational View of the PMBOK?" /><author><name>dkershaw</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://2.bp.blogspot.com/_BzVSqwGGfEI/Sq2oGbRRaqI/AAAAAAAAAAM/FVLlTG29Ub4/S220/my_silly_icon.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-12DHi1eVIDo/UKk5Ww4NzBI/AAAAAAAAAeA/qt1-cLN4z28/s72-c/metateamlogo.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2013/01/are-you-looking-for-relational-view-of.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D04CQngzeCp7ImA9WhNWE08.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-8083488010142897841</id><published>2012-12-12T10:20:00.000-05:00</published><updated>2012-12-12T10:26:03.680-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-12-12T10:26:03.680-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="new web site" /><category scheme="http://www.blogger.com/atom/ns#" term="Altova" /><category scheme="http://www.blogger.com/atom/ns#" term="altova.com" /><title>Brand New Altova Web Site</title><content type="html">We are so excited to announce the launch of our new, improved, completely redesigned &lt;a href="http://www.altova.com/"&gt;Web site&lt;/a&gt;! The new Altova.com is cleaner, simpler, and more beautiful than ever. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.altova.com/"&gt;&lt;img alt="clip_image002" border="0" height="549" src="http://lh6.ggpht.com/-fJbvJ0vpRrE/UMeaGW-VH0I/AAAAAAAAASE/TWCJf1EhXjY/clip_image002%25255B4%25255D.jpg?imgmax=800" style="background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="clip_image002" width="624" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Our goal was to make our site easier to navigate so that you can find exactly what you’re looking for quickly, whether that’s &lt;a href="http://www.altova.com/products.html"&gt;Product&lt;/a&gt; information, &lt;a href="http://www.altova.com/support.html"&gt;Support&lt;/a&gt; resources, or technical &lt;a href="http://www.altova.com/library.html"&gt;reference materials&lt;/a&gt;. Of course, it’s as simple as ever to download a &lt;a href="http://www.altova.com/download-trial.html"&gt;free trial&lt;/a&gt; or &lt;a href="http://www.altova.com/download_current.html"&gt;update&lt;/a&gt; your software to the latest version.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.altova.com/download.html"&gt;&lt;img alt="clip_image004" border="0" height="294" src="http://lh6.ggpht.com/-ZNHZMUi5C6M/UMeaGr6kKII/AAAAAAAAASI/VEdNqrMIIw8/clip_image004%25255B4%25255D.jpg?imgmax=800" style="background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="clip_image004" width="624" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the same time, we hope the new site will help you discover a little something you didn’t know about Altova. For instance, did you know that we have a comprehensive line of &lt;a href="http://www.altova.com/database_tools.html"&gt;Database Tools&lt;/a&gt; in addition to the &lt;a href="http://www.altova.com/xml_tools.html"&gt;XML Tools&lt;/a&gt; and &lt;a href="http://www.altova.com/developer_tools.html"&gt;Developer Tools&lt;/a&gt; that we’re known for? Did you know that we offer free, online product and technology &lt;a href="http://www.altova.com/aot/online-training.html"&gt;training&lt;/a&gt;? And have you tried our new, cloud-based &lt;a href="http://www.altova.com/metateam.html"&gt;project collaboration&lt;/a&gt; and team management tool? &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.altova.com/solutions.html"&gt;&lt;img align="left" alt="clip_image005" border="0" height="339" hspace="12" src="http://lh6.ggpht.com/-x0QsfwNB1n0/UMeaG9EvyTI/AAAAAAAAASU/vjzCwCPRmx0/clip_image005%25255B4%25255D.jpg?imgmax=800" style="background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: inline; float: left; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="clip_image005" width="390" /&gt;&lt;/a&gt;You can learn all about how Altova products and supported technologies can help your team meet critical business needs in our completely revamped &lt;a href="http://10.200.57.75/solutions.html"&gt;Technology Solutions Center&lt;/a&gt;. &lt;br /&gt;
&lt;br /&gt;
Despite all the planning, proposals, testing, and reworking that go in to a new Web site, the true test of success is how the site works for you, our customers. Please share any feedback or suggestions you may have for the new site, either by leaving a comment here on the blog or &lt;a href="http://www.altova.com/contact.html"&gt;contacting&lt;/a&gt; our Marketing team by email. We look forward to and greatly appreciate your input!&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/AZZLrPT_rzk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/8083488010142897841/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=8083488010142897841" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/8083488010142897841?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/8083488010142897841?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/AZZLrPT_rzk/brand-new-altova-web-site.html" title="Brand New Altova Web Site" /><author><name>Erin Cavanaugh</name><uri>http://www.blogger.com/profile/05488702872055566047</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://2.bp.blogspot.com/_C4xYMtGRX-M/SYie9G7vVdI/AAAAAAAAABE/7MnFXMC-iy8/S220/Erin.JPG" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/-fJbvJ0vpRrE/UMeaGW-VH0I/AAAAAAAAASE/TWCJf1EhXjY/s72-c/clip_image002%25255B4%25255D.jpg?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2012/12/brand-new-altova-web-site.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0MFSHs6cSp7ImA9WhNQEE0.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-8074565543351515530</id><published>2012-11-15T12:43:00.001-05:00</published><updated>2012-11-15T12:43:39.519-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-15T12:43:39.519-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="windows 8" /><category scheme="http://www.blogger.com/atom/ns#" term="service pack" /><title>Version 2013 Service Pack 1 Delivers Windows 8 Support and More</title><content type="html">&lt;p&gt;&lt;a href="http://lh6.ggpht.com/-JkGt32EH1UI/UKUpyA6MtRI/AAAAAAAAARo/cjugrWAodHw/s1600-h/clip_image002%25255B3%25255D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://lh4.ggpht.com/-zuFvvTZIPro/UKUpyb7V0MI/AAAAAAAAARw/z-yz5EzjtMM/clip_image002_thumb.jpg?imgmax=800" width="624" height="151" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;On November 15, 2012, we released Service Pack 1 of Altova MissionKit and the complete line of Altova XML, SQL, and UML tools. This service pack delivers the usual round of bug fixes as well as some important new updates to existing support:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;Windows 8 support.&lt;/b&gt; Altova’s desktop applications now run under Windows 8 in addition to Windows 7 and earlier platforms. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Windows Server 2012 support.&lt;/b&gt; Altova tools now run on Windows 2012 Server in addition to earlier versions.&lt;/li&gt;    &lt;li&gt;&lt;b&gt;Visual Studio 2012 integration.&lt;/b&gt; Altova tools that support integration with Visual Studio have been updated to support the latest version of Microsoft’s IDE.&lt;/li&gt;    &lt;li&gt;&lt;b&gt;Internet Explorer 10 support.&lt;/b&gt; Altova desktop products with browser integration now all support Internet Explorer 10. In addition, the Authentic Browser plug-in supports IE 10 in desktop mode. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;XMLSpy 2013 Chinese language version.&lt;/b&gt; Version 2013 of XMLSpy is now available in Chinese as well as English, German, Japanese, and Spanish.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Version 2013 Service Pack 1 is a free update for all customers of Version 2013 products, as well as any customer with valid Support and Maintenance. &lt;a href="http://www.altova.com/download-sp.html"&gt;Download and install SP1 now&lt;/a&gt;. &lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/Altova/~4/JpoTLln4_9s" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/8074565543351515530/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=8074565543351515530" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/8074565543351515530?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/8074565543351515530?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/JpoTLln4_9s/version-2013-service-pack-1-delivers.html" title="Version 2013 Service Pack 1 Delivers Windows 8 Support and More" /><author><name>Erin Cavanaugh</name><uri>http://www.blogger.com/profile/05488702872055566047</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://2.bp.blogspot.com/_C4xYMtGRX-M/SYie9G7vVdI/AAAAAAAAABE/7MnFXMC-iy8/S220/Erin.JPG" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-zuFvvTZIPro/UKUpyb7V0MI/AAAAAAAAARw/z-yz5EzjtMM/s72-c/clip_image002_thumb.jpg?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2012/11/version-2013-service-pack-1-delivers.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk4BQHo7eyp7ImA9WhNRE0U.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-7972805696626317658</id><published>2012-11-08T09:29:00.000-05:00</published><updated>2012-11-08T09:29:11.403-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-08T09:29:11.403-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="StyleVision" /><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><category scheme="http://www.blogger.com/atom/ns#" term="XMLSpy" /><category scheme="http://www.blogger.com/atom/ns#" term="API" /><category scheme="http://www.blogger.com/atom/ns#" term="v2013" /><category scheme="http://www.blogger.com/atom/ns#" term="new features" /><category scheme="http://www.blogger.com/atom/ns#" term="MapForce" /><category scheme="http://www.blogger.com/atom/ns#" term="MissionKit" /><title>The Altova MissionKit 2013 Introduces Seamless Integration of XMLSpy, MapForce, and StyleVision in Java Applications</title><content type="html">&lt;p&gt;The &lt;a href="http://www.altova.com/missionkit/software-development-tools.html"&gt;Altova MissionKit 2013&lt;/a&gt;, empowers developers to integrate &lt;a href="http://www.altova.com/xmlspy.html"&gt;XMLSpy&lt;/a&gt;, &lt;a href="http://www.altova.com/mapforce.html"&gt;MapForce&lt;/a&gt;, or &lt;a href="http://www.altova.com/stylevision.html"&gt;StyleVision&lt;/a&gt; functionality seamlessly in custom Java applications for Windows. This frequently-requested capability adds to existing support for integrating these MissionKit tools in Visual Basic or C# applications, giving developers flexibility to add some or all XMLSpy, MapForce, or StyleVision views and functionality to their own custom apps.&lt;/p&gt;&lt;p&gt;Version 2013 of XMLSpy, MapForce, and StyleVision include a new API that allows each to run inside a window within a Java application developed using the Java Abstract Window Toolkit (AWT) or Java Swing. This functionality allows MapForce 2013, for instance, to be embedded in larger applications where data mapping and transformation is only one requirement.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="MapForce running in a Java ActiveX window" border="0" alt="MapForce running in a Java ActiveX window" src="http://lh3.ggpht.com/-L-4THXAkz68/UJvAz_FcaUI/AAAAAAAAA5A/Xe5nYSiIZjQ/clip_image001%25255B3%25255D.png?imgmax=800" width="610" height="600" /&gt;&lt;/p&gt;&lt;p&gt;Altova provides sample applications with XMLSpy, MapForce, and StyleVision illustrating use of the Java API. You can access the sample applications from the command line or from within Eclipse.&lt;/p&gt;&lt;p&gt;&lt;a name='more'&gt;&lt;/a&gt; &lt;p&gt;&lt;p&gt;The screen shot above shows the MapForce version of sample application, which has launched MapForce, opened a mapping file, and displayed validation results. The buttons for each MapForce window, such as Mapping, DB Query, Output, etc. below the mapping window all operate exactly as if MapForce is running in its normal stand-alone mode. Right-click context menus in the mapping window are also supported.&lt;/p&gt;&lt;p&gt;The Java API also includes extensive documentation to help Java developers get started quickly. An example from the MapForce API documentation is shown below.&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="MapForce Java API documentation" border="0" alt="MapForce Java API documentation" src="http://lh3.ggpht.com/-yB8_erjBVEo/UJvA0pABqkI/AAAAAAAAA5I/OgTY3PquyKQ/clip_image002%25255B3%25255D.png?imgmax=800" width="593" height="486" /&gt;&lt;/p&gt;&lt;p&gt;Please note: you must install the corresponding free XMLSpy MapForce, or StyleVision Integration Package to access the sample applications and Java integration functionality. Although Java is known as a cross-platform development tool, MapForce integration functionality is available for the Windows platform only.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Try Version 2013 Now&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Version 2013 is a free update for Altova customers with an active Support and Maintenance Package. Visit the Altova &lt;a href="http://www.altova.com/download.html"&gt;Download&lt;/a&gt; page to update now! If you’re not already a customer, you may download a &lt;b&gt;free, fully-functional &lt;/b&gt;&lt;a href="http://www.altova.com/download.html"&gt;&lt;b&gt;30-day trial&lt;/b&gt;&lt;/a&gt;&lt;b&gt;.&lt;/b&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/4HzgwFTCCy8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/7972805696626317658/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=7972805696626317658" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/7972805696626317658?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/7972805696626317658?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/4HzgwFTCCy8/the-altova-missionkit-2013-introduces.html" title="The Altova MissionKit 2013 Introduces Seamless Integration of XMLSpy, MapForce, and StyleVision in Java Applications" /><author><name>DaveMcG</name><uri>http://www.blogger.com/profile/08885768216396627489</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://1.bp.blogspot.com/_REdrfeVqYdU/Se9fDv8FDpI/AAAAAAAAADY/eqOIwcE3V1k/S220/david.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-L-4THXAkz68/UJvAz_FcaUI/AAAAAAAAA5A/Xe5nYSiIZjQ/s72-c/clip_image001%25255B3%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2012/11/the-altova-missionkit-2013-introduces.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUYEQ385fSp7ImA9WhNSFk8.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-3348480090924444038</id><published>2012-10-30T14:51:00.001-04:00</published><updated>2012-10-30T14:51:42.125-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-30T14:51:42.125-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="events" /><category scheme="http://www.blogger.com/atom/ns#" term="DevConnections" /><title>Trick or Treat with Altova at DevConnections!</title><content type="html">&lt;h5&gt;&amp;#160;&lt;/h5&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-Fu4E47HALWk/UIgxqkke0MI/AAAAAAAAAD8/5cm8DojU9Bw/s1600-h/devconnections%25255B7%25255D.png"&gt;&lt;img title="devconnections" border="0" alt="devconnections" align="left" src="http://lh3.ggpht.com/-J4Gs5gU69hY/UIgxqxhrJEI/AAAAAAAAAEE/pP_4BzocikA/devconnections_thumb%25255B5%25255D.png?imgmax=800" width="191" height="187" /&gt;&lt;/a&gt;It’s no trick - we will be in Las Vegas October 30 – November 1 at the Bellagio Hotel for the fall &lt;a href="http://www.devconnections.com/home.aspx"&gt;DevConnections&lt;/a&gt; event, in booth #408. If you are attending the event we would love for you to stop by our booth, where we will be showcasing MissionKit, Altova’s suite of XML, SQL and UML tools.&lt;/p&gt;  &lt;p&gt;Altova MissionKit 2013 provides specialized functionality for Microsoft developers and IT pros, including seamless integration with Visual Studio®, C# and C++ code gen&lt;a href="http://lh4.ggpht.com/-D1umZvCuMaM/UIgxrOVrxqI/AAAAAAAAAEM/483wDZnCHe4/s1600-h/jack-o-lantern%25255B3%25255D.jpg"&gt;&lt;img title="jack-o-lantern" border="0" alt="jack-o-lantern" align="right" src="http://lh6.ggpht.com/-hxZz0DpNw00/UIgxreSseXI/AAAAAAAAAEU/2J9i0BmeiZA/jack-o-lantern_thumb%25255B1%25255D.jpg?imgmax=800" width="137" height="142" /&gt;&lt;/a&gt;eration, powerful functionality for SQL Server® database management and reporting, integration with SharePoint® Server, functionality for working with Open XML (OOXML), diff/merge for Word documents, and much more.&lt;/p&gt;  &lt;p&gt;While you are at our booth, don’t forget to enter our drawing for a chance to win a free Altova MapForce Basic Edition license. If you also mention that you saw this blog post – we might have a special treat for you too!&amp;#160; &lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/Altova/~4/dA0EPA_I9Qc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/3348480090924444038/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=3348480090924444038" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/3348480090924444038?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/3348480090924444038?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/dA0EPA_I9Qc/trick-or-treat-with-altova-at_30.html" title="Trick or Treat with Altova at DevConnections!" /><author><name>Erin Cavanaugh</name><uri>http://www.blogger.com/profile/05488702872055566047</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://2.bp.blogspot.com/_C4xYMtGRX-M/SYie9G7vVdI/AAAAAAAAABE/7MnFXMC-iy8/S220/Erin.JPG" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-J4Gs5gU69hY/UIgxqxhrJEI/AAAAAAAAAEE/pP_4BzocikA/s72-c/devconnections_thumb%25255B5%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2012/10/trick-or-treat-with-altova-at_30.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUEMRH45eyp7ImA9WhNTFUU.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-1433515196010648671</id><published>2012-10-18T14:08:00.000-04:00</published><updated>2012-10-18T14:08:05.023-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-18T14:08:05.023-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="MetaTeam" /><category scheme="http://www.blogger.com/atom/ns#" term="team collaboration" /><category scheme="http://www.blogger.com/atom/ns#" term="roles and responsibilities" /><category scheme="http://www.blogger.com/atom/ns#" term="software tools" /><category scheme="http://www.blogger.com/atom/ns#" term="responsibility matrix" /><category scheme="http://www.blogger.com/atom/ns#" term="business analysis" /><category scheme="http://www.blogger.com/atom/ns#" term="BPMN" /><title>UModel, BPMN and MetaTeam tag-team business processes</title><content type="html">&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;The other day I was parsing the Business Analysis Body of Knowledge (&lt;/span&gt;&lt;a href="http://en.wikipedia.org/wiki/A_Guide_to_the_Business_Analysis_Body_of_Knowledge"&gt;&lt;span style="font-family: Arial;"&gt;BABOK&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial;"&gt;) and exploring some of the new features in &lt;/span&gt;&lt;a href="http://www.altova.com/umodel" target="_blank"&gt;&lt;span style="font-family: Arial;"&gt;UModel&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial;"&gt; when I suddenly had a Reese’s moment – UModel and &lt;/span&gt;&lt;a href="http://metateam.net/"&gt;&lt;span style="font-family: Arial;"&gt;MetaTeam&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial;"&gt; taste great together.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;In fact, using &lt;/span&gt;&lt;a href="http://www.altova.com/umodel/business-process-modeling.html" target="_blank"&gt;&lt;span style="font-family: Arial;"&gt;BPMN&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial;"&gt; to visualize the processes in a team is so natural it’s almost like UModel acts as a diagrammatic front-end to MetaTeam.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;To flesh this idea out, I quickly created an example IT team and mapped a simple process, linking all the pieces into MetaTeam. Then I posted a UModel generated report, including those links, in the team’s Knowledge Base. &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh6.ggpht.com/-0Ae_MhKFZNA/UH1AtnD6pmI/AAAAAAAAAXc/hMLnZaAczCk/s1600-h/clip_image002%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="MetaTeam and UModel are software applications for collaborative team management and business analysis, respectively." border="0" height="321" src="http://lh5.ggpht.com/-MD2exxRXlpM/UH1AuDTj3KI/AAAAAAAAAXk/zmDSbZI6A04/clip_image002_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="MetaTeam and UModel" width="505" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Here’s how it worked…&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;It doesn’t matter if you start in MetaTeam or UModel, but I started with MetaTeam so that I had my reference points ready before I modeled the process.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;As I go through this you will see that MetaTeam is providing the &lt;i&gt;who&lt;/i&gt; and UModel is defining the &lt;i&gt;how&lt;/i&gt;. &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;First I created a team from the My Teams page. The team is called IT Team. If you are following along and want a short cut you could &lt;/span&gt;&lt;a href="http://blog.altova.com/2012/08/introducing-your-new-example-team.html"&gt;&lt;span style="font-family: Arial;"&gt;generate an example team&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial;"&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh4.ggpht.com/-dPhRtugLY-Y/UH1AuxvnpRI/AAAAAAAAAXs/yR4_ff2jeB4/s1600-h/clip_image004%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="Create a new team from the My Teams page.  My Teams is the first thing you see after logging in." border="0" height="256" src="http://lh5.ggpht.com/-sesZ_2gbI1E/UH1AvoTJMEI/AAAAAAAAAX0/01jgBlnTwQs/clip_image004_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="The My Teams page" width="474" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Next I created two business roles in the Roles app. I want to show one simple interaction between developers and QA specialists, so my roles are “Developer” and “QA”.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;In real life, these roles would have lots of responsibilities, but for this example I just need two: “Maintenance work” and “Black box testing”. Click on the responsibilities tab in the Roles app and click the Add link at the bottom on the left.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh3.ggpht.com/-9m-hNwbSKFE/UH1AwaW0A-I/AAAAAAAAAX8/o6dBmsOgCUw/s1600-h/clip_image006%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="The Roles app is software for defining business roles.  Click on the Responsibilities tab to add a new responsibility to the responsibilities matrix." border="0" height="230" src="http://lh6.ggpht.com/-fZy1oc2MbhE/UH1Aw9etDkI/AAAAAAAAAYE/kO15I3rD_dw/clip_image006_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="The responsibilities matrix" width="487" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;What I want to show is how a work item is started by a developer, completed, passed to QA for arms-length testing, and either scheduled for release or sent back to the developer for more work.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;The developers are going to be picking items out of the “Improvements” to-do list. And the testers are going move the completed and validated items to a “Release list”.&lt;/span&gt;&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-EN6NQGZzD9o/UH1AxWNyVMI/AAAAAAAAAYM/yw_SDcy3Svs/s1600-h/clip_image008%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="The Todos app is software for task management.  The Todos tab shows tasks grouped for easy organization." border="0" height="280" src="http://lh5.ggpht.com/-OHHPxHTI7BY/UH1AyPN3I-I/AAAAAAAAAYU/ijQfQvQDq8s/clip_image008_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="The Todos tab" width="459" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Now we’ve got MetaTeam all set, let’s turn to UModel to map the process.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Start by creating a new project. In the new project right-click on the root element in the Model tree. Select New diagram, Business Process Diagrams, BPMN 2 Business Process Diagram.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh6.ggpht.com/-dpYwhBW2X70/UH1AyviCBPI/AAAAAAAAAYc/u-nkEigBe2U/s1600-h/clip_image010%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="UModel is software for UML and BPMN modeling for architects, business analyst and developers.  This image shows most of the types of models UModel supports.  " border="0" height="349" src="http://lh4.ggpht.com/-cy52hZBB-xo/UH1AzqoERdI/AAAAAAAAAYk/GULczYA-9vo/clip_image010_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="The new file menu." width="492" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;UModel will want to include the BPMN 2 profile. That’s the profile we’ll be using so just click Ok. (A profile is technical definition distinguishing all the different diagramming lingua you saw in the new diagram menu).&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh3.ggpht.com/-m-Jey2cfayM/UH1A0bz00yI/AAAAAAAAAYs/KlKn97x58FY/s1600-h/clip_image012%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="UModel uses UML profiles as the standard way to extend UML to other areas, in this case BPMN." border="0" height="106" src="http://lh3.ggpht.com/-C4AQna_80FE/UH1A1Pv56CI/AAAAAAAAAY0/ZsngrzgFeHI/clip_image012_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="Add profile dialog" width="291" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;In the Model tree double click the package name and diagram names in turn and type in the names you want to use. Your new diagram should look like this image.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh4.ggpht.com/-cty3301ifEc/UH1A1YBxbKI/AAAAAAAAAY8/kNn8xSvl15o/s1600-h/clip_image014%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="UModel offers a huge number of features and toolbars; however, I have turned most of them off to simplify this screenshot." border="0" height="310" src="http://lh5.ggpht.com/-bbaRohEdgHw/UH1A10GgT8I/AAAAAAAAAZE/62byoTJLKeo/clip_image014_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="Blank BPMN model" width="491" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Now the fun part! Click the diagram and look to the Layout toolbar for the Pool icon.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-8tj-sc35mZE/UH1A2Rs-YTI/AAAAAAAAAZM/b_q90273cgA/s1600-h/clip_image016%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="The BPMN toolbar is it looks with large icons.  UModel allows you to use large icons and fonts for easier viewing." border="0" height="95" src="http://lh6.ggpht.com/-b9Yj0bTcwcE/UH1A2iWCzBI/AAAAAAAAAZU/S-2xgU16cMc/clip_image016_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="BPMN elements toolbar" width="484" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Create a pool with two lanes. Call one of them QA and the other one Development.&amp;nbsp; I like a bit more size in my text so I opened the styles dialog and bumped up the font.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-eO8gee6QTH4/UH1A3KDzNLI/AAAAAAAAAZc/792APgcf45A/s1600-h/clip_image018%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="UModel models have lots of style options so you can get the look you want." border="0" height="271" src="http://lh4.ggpht.com/-T_G06gt7sjg/UH1A3S9Jx3I/AAAAAAAAAZk/49VvTpxwWCU/clip_image018_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="A swimlane and its style properties" width="461" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;We are outlining a set of responsibilities for roles, so we need to identify them in the diagram. A good way to do that is with the grouping element.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-_gDz1lg1POU/UH1A4NOvbpI/AAAAAAAAAZs/vpBRU130yuk/s1600-h/clip_image020%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="A grouping element is a great way to identify a business responsibility." border="0" height="134" src="http://lh3.ggpht.com/-ngpOXR5UpkU/UH1A5LJZt6I/AAAAAAAAAZ0/e12EIr_y9X4/clip_image020_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="Add a grouping element." width="300" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Create one group called “Maintenance work”, in the Development lane, and another called “Black box testing” in the QA lane.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Next right-click the black box testing responsibility and click Hyperlinks, Insert/Edit Hyperlinks…&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh6.ggpht.com/-l5xics7KzX0/UH1A5xGlhpI/AAAAAAAAAZ8/_hwQofDSsRc/s1600-h/clip_image022%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="You can add links to most elements in a BPMN model." border="0" height="293" src="http://lh6.ggpht.com/-dQgvL7XylnY/UH1A6iSKFdI/AAAAAAAAAaE/QE32U3arEag/clip_image022_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="Adding a hyperlink to a responsibility" width="469" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;In the hyperlinks dialog click Add Web Link. This is where MetaTeam comes back into the picture.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-eANfQaO2hbg/UH1A60kw2DI/AAAAAAAAAaM/PM8alO7sLJQ/s1600-h/clip_image024%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="Links can be to files, models, model elements and web pages.  Use a web link to link to MetaTeam." border="0" height="126" src="http://lh5.ggpht.com/-D0ZF05xcBXU/UH1A7TNiiWI/AAAAAAAAAaU/FPbYwu58yH0/clip_image024_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="Web link selection" width="305" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Open the Black box testing responsibility in MetaTeam and copy the URL. Paste it into the hyperlink in UModel. When people click on the link arrow in the BPMN diagram their browser will immediately open to the responsibility documentation in MetaTeam. (They will have to log in, of course).&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-fD9iWv1VVtU/UH1A76yc0NI/AAAAAAAAAac/-x43dTo0DFg/s1600-h/clip_image026%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="This responsibility is open to show details and associated data and collaboration.  Clicking the Responsibility tab takes you up to the responsibility assignment matrix." border="0" height="238" src="http://lh5.ggpht.com/-kK8CXY7w3HQ/UH1A8VNOxlI/AAAAAAAAAak/VhScHtpQ_7U/clip_image026_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="The business responsibility in MetaTeam" width="457" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;When you close the hyperlink dialog your model now has a link to the responsibility in MetaTeam.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh3.ggpht.com/-uokdJ-8WU2s/UH1A839uQAI/AAAAAAAAAas/J20XtB4m_Uc/s1600-h/clip_image028%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="The link mouse cursor in UModel showing the link to the MetaTeam responsibility." border="0" height="273" src="http://lh4.ggpht.com/-Pt06J1wBJ40/UH1A9U1xzZI/AAAAAAAAAa0/cOng2TUPmuU/clip_image028_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="The link mouse cursor in UModel showing the link to the MetaTeam responsibility." width="576" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Now its time to start adding the activity nodes to the process. Click on a start element and place it in the model. Then add a user task node.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;User tasks are the perfect place to identify the role that is going to perform the task. Of course you could also link a user task to an individual account in MetaTeam; however, in most cases people identify a role because even the most stable teams change over time.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh4.ggpht.com/-IGAS4WNr4a0/UH1A94kf8LI/AAAAAAAAAa8/R7uPOpJyO6w/s1600-h/clip_image030%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="MetaTeam is where business roles are created, managed, and collaborated on.  " border="0" height="421" src="http://lh3.ggpht.com/-g2wG_x9sasQ/UH1A_NUddVI/AAAAAAAAAbE/YyNY2V5HUjI/clip_image030_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="Adding a link to a MetaTeam business role." width="576" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;There are several more elements to this process. I’m going to skip ahead to where we link in one of the to-do lists.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Remember back a-ways I said that the QA engineers would move validated work to a release queue. That’s one of our to-do lists. Linking it up to MetaTeam works the same as for the roles and responsibilities.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-A9Ewdh3Irrg/UH1BABivLzI/AAAAAAAAAbM/4wxF8nsIGKo/s1600-h/clip_image032%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="A close-up of the final BPMN model in UModel" border="0" height="264" src="http://lh3.ggpht.com/-sER1QPpXayo/UH1BA2vGAFI/AAAAAAAAAbU/FuAxluisge8/clip_image032_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="A close-up of the final model" width="575" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Clicking the “Release list” link will take you directly to that to-do list in the Todos app where you can see the tasks, documentation and discussion. And when you assign a Release Engineer role to that todo list the person (or people) in that role will be notified when there are new release-ready features.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Finally, let’s generate this diagram into HTML that we can post in the Knowledge Base. We can certainly put the UModel (.ump) file in the repository too, but HTML gives the same visualization and linking for anyone on the team, not just the business analysts and developers using UModel.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Generating a report in UModel is easy. In brief the process is as follows.&amp;nbsp; Click on the Project menu and select Generate Documentation… The dialog that opens has A LOT of options. You’ll want to play around with it to see what you want to include, but there are a couple things I would definitely suggest.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-uBakG1uNswA/UH1BCNXPDuI/AAAAAAAAAbc/yncdL1_AXcg/s1600-h/clip_image034%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="UModel lets you create BPMN model documentation anyway you like using a large number of possible settings." border="0" height="361" src="http://lh6.ggpht.com/-C2kCAfVAW7U/UH1BDLoQvrI/AAAAAAAAAbk/xp4drlHdpjM/clip_image034_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="The documentation generation dialog" width="526" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Make sure the output format is HTML. Uncheck “Split output to multiple files”. And check “Embed CSS in HTML”. When you use those settings with this simple project you get just two files: an HTML report and a clickable BPMN image.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;With that done, go back to MetaTeam and open the Knowledge Base app. Click on the File tab. We could store this report within either of the roles it addresses, but since it applies to multiple roles let’s stick it at the top of the File tree.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Click Add and select the report file. Then again for the image.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh6.ggpht.com/-BMXxOlRmZRc/UH1BEAqU-RI/AAAAAAAAAbs/k5AyzR5qS3I/s1600-h/clip_image036%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="Storing files in MetaTeam is easy and always well-organized within MetaTeam's repository.  The MetaTeam repository is laid out according to your team's roles, goals, responsibilities and decision-making." border="0" height="163" src="http://lh4.ggpht.com/-kTgJWkusxvU/UH1BFKTWeMI/AAAAAAAAAb0/4_67DzJ_Nm0/clip_image036_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="The 2 BPMN diagrams in MetaTeam" width="492" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Clicking on the HTML filename opens the report. And clicking on the linked elements in the BPMN opens to the MetaTeam page for that item. How cool is that?&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;One final thing you can try. If you click on the info icon beside the model image in the repository you can copy the image link and paste it into the image dialog of any description, comment or Knowledge Base article you write.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Here’s where what the link looks like in the info box.&lt;/span&gt;&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-LB5j8EXW0O4/UH1BGS2m8pI/AAAAAAAAAb8/92TBXQNQjSg/s1600-h/clip_image038%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="The info icons in MetaTeam show you details about their items.  In this case, you can get the direct URL of the BPMN files." border="0" height="176" src="http://lh3.ggpht.com/-TXfpNcs0NY4/UH1BHf-cMGI/AAAAAAAAAcE/eYLekl6v6Qc/clip_image038_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="The link to our BPMN diagram files in MetaTeam" width="427" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;And here I’m using it in a description of the responsibility. (Make sure it doesn’t have any trailing white space in the URL).&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh3.ggpht.com/-2V5H_dyQy6U/UH1BICvxPxI/AAAAAAAAAcM/wnrtwDw9CnY/s1600-h/clip_image040%25255B3%25255D.jpg"&gt;&lt;span style="font-family: Arial;"&gt;&lt;img alt="The link dialog for a MetaTeam WYSIWYG editor." border="0" height="344" src="http://lh6.ggpht.com/-gpBPVQLx5zE/UH1BI-CdxyI/AAAAAAAAAcU/DL8972EmCNk/clip_image040_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="The link dialog for a MetaTeam WYSIWYG editor" width="576" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;And that’s how easy it is to link up two powerful tools for business analysis — UModel and MetaTeam.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;Go ahead and &lt;/span&gt;&lt;a href="http://metateam.net/" target="_blank"&gt;&lt;span style="font-family: Arial;"&gt;give it a try&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial;"&gt;. And if you think up other ways to use UModel and MetaTeam together please let me know!&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/rxdb2gejOrA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/1433515196010648671/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=1433515196010648671" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/1433515196010648671?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/1433515196010648671?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/rxdb2gejOrA/umodel-bpmn-and-metateam-tag-team.html" title="UModel, BPMN and MetaTeam tag-team business processes" /><author><name>dkershaw</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://2.bp.blogspot.com/_BzVSqwGGfEI/Sq2oGbRRaqI/AAAAAAAAAAM/FVLlTG29Ub4/S220/my_silly_icon.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-MD2exxRXlpM/UH1AuDTj3KI/AAAAAAAAAXk/zmDSbZI6A04/s72-c/clip_image002_thumb.jpg?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2012/10/umodel-bpmn-and-metateam-tag-team.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEMESHk8eyp7ImA9WhNTE0Q.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-704741374944309714</id><published>2012-10-16T09:00:00.000-04:00</published><updated>2012-10-16T09:00:09.773-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-16T09:00:09.773-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Smart Fix" /><category scheme="http://www.blogger.com/atom/ns#" term="XMLSpy" /><category scheme="http://www.blogger.com/atom/ns#" term="v2013" /><category scheme="http://www.blogger.com/atom/ns#" term="XML validation" /><category scheme="http://www.blogger.com/atom/ns#" term="XML Editor" /><title>Do You Believe in (XML) Magic?</title><content type="html">&lt;p&gt;One of the most exciting features in our recent Version 2013 release is Smart Fix XML validation in XMLSpy. Smart Fix is so magical it can revolutionize &lt;a href="http://www.altova.com/xmlspy/xml-validator.html"&gt;XML validation&lt;/a&gt; as we know it. While the XMLSpy validator has always been powerful, with new features added often, Smart Fix really delivers the “wow” factor: automatic error correction.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-WWGnFjxC_Gs/UHxtjvgcK9I/AAAAAAAAAQs/HfhVgOk-zLQ/s1600-h/clip_image002%25255B3%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://lh4.ggpht.com/-dfQx1yI2_eA/UHxtkY4KH2I/AAAAAAAAAQ0/JA_2V85qzVw/clip_image002_thumb.jpg?imgmax=800" width="624" height="259" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Let’s take a look at how it works. &lt;/p&gt;  &lt;a name='more'&gt;&lt;/a&gt;  &lt;p&gt;&lt;b&gt;One-click Validation Error Correction&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;The XMLSpy &lt;a href="http://www.altova.com/xmlspy/xml-validator.html"&gt;XML validator&lt;/a&gt; supports document- or project-wide validation with a nine-tabbed message window that provides detailed information about each validation error. This includes the reason for the error, a hotlink to the error location, links to the corresponding definition in the associated schema, and links to any relevant W3C specifications. Now, XMLSpy 2013 also offers a Smart Fix, shown in the right-hand window above. In addition to information about the error, Smart Fix offers a valid &lt;i&gt;solution for fixing it,&lt;/i&gt; which you can review and then implement with one click. &lt;/p&gt;  &lt;p&gt;In the screenshot above, I mistakenly listed the &amp;lt;price&amp;gt; element before the &amp;lt;quantity&amp;gt; element, but the schema specifies that &amp;lt;quantity&amp;gt; should come first. I can simply click the Fix + Validate button to make this valid change and move on to the next error (if there is one). It’s that easy. Smart Fix takes the guess work, retyping, and hair pulling out of XML validation. &lt;/p&gt;  &lt;p&gt;Here’s another example where an element is accidentally duplicated. Smart Fix zeros in and lets me get rid of the duplicate with one click using the Smart Fix tool bar, or with a double-click on the fix itself. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-IrWIDQ_DVSw/UHxtkzw9xaI/AAAAAAAAAQ8/U-KYBzHZnCw/s1600-h/clip_image004%25255B3%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image004" border="0" alt="clip_image004" src="http://lh3.ggpht.com/-iEqI-fIT7m8/UHxtle4NhYI/AAAAAAAAARE/7M7z6Yvc--Q/clip_image004_thumb.jpg?imgmax=800" width="624" height="349" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Let’s look at a third example that’s a bit different. I’ve accidentally included two @ signs in an email address, which violates the defined pattern. (I’m also working in Grid View now – Smart Fix works equally well in XMLSpy’s graphical editing mode.) Smart Fix offers two suggestions, both of which would create a valid document. I double click the first option to simply remove the second @ sign, and XMLSpy automatically makes the correction.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-Ku8iLCekmRs/UHxtl-D2wGI/AAAAAAAAARM/YYZY98ULohI/s1600-h/clip_image006%25255B3%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image006" border="0" alt="clip_image006" src="http://lh5.ggpht.com/-2SKjkybnYnc/UHxtmTDnSTI/AAAAAAAAARU/j4xOANv_Rp4/clip_image006_thumb.jpg?imgmax=800" width="624" height="408" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Smart Fix reduces the time and energy spent troubleshooting and fixing frustrating XML validation errors considerably, freeing you to focus on more productive aspects of development. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;More New Features in XMLSpy 2013&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Smart Fix is just one of numerous &lt;a href="http://www.altova.com/whatsnew.html"&gt;new features&lt;/a&gt; added in the most recent release. &lt;/p&gt;  &lt;p&gt;Current customers can update to the latest version &lt;a href="http://www.altova.com/download-current.html"&gt;here&lt;/a&gt;. If you’re new to XMLSpy, download a free, &lt;a href="http://www.altova.com/download-trial/"&gt;30-day trial&lt;/a&gt; to check out Version 2013 in action.&lt;/p&gt;  &lt;img src="http://feeds.feedburner.com/~r/Altova/~4/YljZwATtZFE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/704741374944309714/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=704741374944309714" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/704741374944309714?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/704741374944309714?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/YljZwATtZFE/do-you-believe-in-xml-magic.html" title="Do You Believe in (XML) Magic?" /><author><name>Erin Cavanaugh</name><uri>http://www.blogger.com/profile/05488702872055566047</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://2.bp.blogspot.com/_C4xYMtGRX-M/SYie9G7vVdI/AAAAAAAAABE/7MnFXMC-iy8/S220/Erin.JPG" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-dfQx1yI2_eA/UHxtkY4KH2I/AAAAAAAAAQ0/JA_2V85qzVw/s72-c/clip_image002_thumb.jpg?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2012/10/do-you-believe-in-xml-magic.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ306fSp7ImA9WhJaF0Q.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-2591104766174561620</id><published>2012-10-09T10:00:00.000-04:00</published><updated>2012-10-09T10:10:02.315-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-09T10:10:02.315-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="StyleVision" /><category scheme="http://www.blogger.com/atom/ns#" term="xpath" /><category scheme="http://www.blogger.com/atom/ns#" term="v2013" /><title>Using Table Row and Column Conditions in StyleVision 2013</title><content type="html">&lt;p&gt;The ability to conditionally hide table rows or columns has been a popular feature request from StyleVision users. StyleVision 2013 adds the capability in the form of conditional expressions on table rows and columns. Conditional processing can be set on individual columns and rows of static and dynamic tables, as well as on column and row headers, to display or hide the column, row, or header depending on the truth of the condition. The conditions are specified using StyleVision’s XPath Expression editor. If a condition evaluates to true, the column, row, or header is displayed; otherwise it is not (i.e., is hidden). &lt;/p&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/-Xh3gow4YUVA/UGWibsTCUDI/AAAAAAAAACk/RujVtvTuv0g/s1600-h/image%25255B5%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="StyleVision 2013 Edit XPath Expression dialog" border="0" alt="StyleVision 2013 Edit XPath Expression dialog" src="http://lh3.ggpht.com/-dpiNDRyNDW8/UGWicODtKfI/AAAAAAAAACs/sgV_YLt3s8g/image_thumb%25255B3%25255D.png?imgmax=800" width="602" height="452" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Let’s take a look at some scenarios for which this new feature is exceptionally useful.   &lt;br /&gt;
&lt;/p&gt;&lt;a name='more'&gt;&lt;/a&gt;  &lt;br /&gt;
Here are some scenarios in which this type of condition could be used:  &lt;br /&gt;
&lt;ul&gt;&lt;li&gt;On a column, row, or table, enter the XPath expression false() to hide the column, true() to display it &lt;/li&gt;
&lt;li&gt;A column is output only if the sum of all the values in that column exceeds a certain integer value &lt;/li&gt;
&lt;li&gt;A column or row is output only if no cell in that column or row, respectively, is empty &lt;/li&gt;
&lt;li&gt;A column or row is output only if a certain cell-value exists in that column or row, respectively &lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;To specify a row or column condition, simply select the target row or column and, from the right-click menu, select “Edit Conditional Processing.”&lt;/p&gt;&lt;p&gt;As a quick introduction to another valuable and time-saving new feature in StyleVision 2013, note the new “Evaluator” button in the Edit XPath Expression dialog. Clicking on it presents StyleVision’s new XPath Evaluator extension, which makes it possible to easily and contextually check the results of XPath expressions while you’re editing.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-4SAAlprjJlk/UGWic5A0ABI/AAAAAAAAAC0/x73KMS8Tr9I/s1600-h/image%25255B11%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="StyleVision 2013 XPath expression evaluator" border="0" alt="StyleVision 2013 XPath expression evaluator" src="http://lh5.ggpht.com/-0U1tb0NrUPM/UGWidaQC0QI/AAAAAAAAAC8/2pn7MEZCkBE/image_thumb%25255B7%25255D.png?imgmax=800" width="595" height="447" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;The XPath expression in the &lt;i&gt;XPath 2 Expression&lt;/i&gt; text box can be edited, and the expression can be immediately evaluated, with the results displayed in the &lt;i&gt;Results&lt;/i&gt; pane. Evaluation options include:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;Evaluate on typing:&lt;/i&gt; If this check box is selected, the XPath expression is evaluated: (i) with every keystroke used to edit the expression, and (ii) when the mode is switched from Builder mode to Evaluator mode. &lt;/li&gt;
&lt;li&gt;&lt;i&gt;Evaluate now:&lt;/i&gt; This button is enabled when the Evaluate on Typing option is not checked. Click it to evaluate the expression. &lt;/li&gt;
&lt;/ul&gt;For information about other productivity-enhancing new features in StyleVision 2013 and other MissionKit 2013 tools, please see &lt;a href="http://www.altova.com/whatsnew.html"&gt;What’s New in the Altova Product Line?&lt;/a&gt;. To further explore the many new StyleVision 2013 features, you can also &lt;a href="http://www.altova.com/download/stylevision/db_xslt_stylesheet_designer_enterprise.html"&gt;download a free 30-day trial version&lt;/a&gt; today!     &lt;img src="http://feeds.feedburner.com/~r/Altova/~4/o_1yPf63olA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/2591104766174561620/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=2591104766174561620" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/2591104766174561620?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/2591104766174561620?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/o_1yPf63olA/using-table-row-and-column-conditions.html" title="Using Table Row and Column Conditions in StyleVision 2013" /><author><name>Peter O'Kelly</name><uri>https://plus.google.com/114309926992156812684</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-dpiNDRyNDW8/UGWicODtKfI/AAAAAAAAACs/sgV_YLt3s8g/s72-c/image_thumb%25255B3%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2012/10/using-table-row-and-column-conditions.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEcBQHo4cSp7ImA9WhJaEkU.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-2117707566470358182</id><published>2012-10-03T13:40:00.000-04:00</published><updated>2012-10-03T13:40:51.439-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-03T13:40:51.439-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="StyleVision" /><category scheme="http://www.blogger.com/atom/ns#" term="Altova" /><category scheme="http://www.blogger.com/atom/ns#" term="v2013" /><title>Watermarks in StyleVision 2013</title><content type="html">&lt;p&gt;Watermark support has been added in StyleVision 2013, in response to customer requests. A watermark is text or an image that is displayed on the background of each page of a document section. Watermarks are often used in draft and confidential documents in order to emphasize a document’s status or security constraints.   &lt;br /&gt;
&lt;br /&gt;
In StyleVision 2013, watermarks may be used for print-oriented output formats, including PDF, RTF, and Word (Open XML). In keeping with StyleVision’s overall design model, with a single layout design used for multiple output types, you only need to define watermarks once, and they are applied to all print-output views.    &lt;br /&gt;
&lt;br /&gt;
Here’s an example of a StyleVision design containing a watermark:    &lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh4.ggpht.com/-c913Ts_VkGQ/UGRByx_4lDI/AAAAAAAAAAw/WCOCWLStKiE/s1600-h/image%25255B18%25255D.png"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px" title="StyleVision 2013 Word watermark example" border="0" alt="StyleVision 2013 Word watermark example" src="http://lh3.ggpht.com/-eS5DVh4hRbo/UGRBzWU9z5I/AAAAAAAAAA4/clIyGZiG2NI/image_thumb%25255B12%25255D.png?imgmax=800" width="594" height="530" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
Let’s take a look at the steps involved in using watermarks in StyleVision 2013 by modifying the QuickStart example (quickstart.sps) included in the Tutorials folder (installed with StyleVision), in order to produce the design shown in the image above.&lt;/p&gt;&lt;a name='more'&gt;&lt;/a&gt;  &lt;br /&gt;
In the Design view, if you select “Edit Properties” in the Initial Document Section, you’ll see a new “Watermark…” button. Clicking the button presents the Edit Watermark dialog:  &lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh3.ggpht.com/-1WA6KbdTs5U/UGRBz7b_4nI/AAAAAAAAABA/TmTlursJMMM/s1600-h/image%25255B12%25255D.png"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px" title="StyleVision 2013 edit image watermark dialog" border="0" alt="StyleVision 2013 edit image watermark dialog" src="http://lh6.ggpht.com/-EbhGCut35EM/UGRB0JRReWI/AAAAAAAAABI/Wq193Drs5UY/image_thumb%25255B8%25255D.png?imgmax=800" width="368" height="400" /&gt;&lt;/a&gt;  &lt;br /&gt;
&lt;br /&gt;
StyleVision supports both image and text watermarks. For both types of watermarks, the general idea is to specify:  &lt;br /&gt;
· A condition used to determine when the watermark should be included (which can simply be “true()” in order to include the watermark on all pages)  &lt;br /&gt;
· The watermark content (image or text, with related attribute setting preferences)  &lt;br /&gt;
· Watermark size and position settings  &lt;br /&gt;
&lt;br /&gt;
For our example scenario, let’s assume we want to place a red “CONFIDENTIAL” text watermark across printed pages. To do so, we click the Text tab in the Edit Watermark dialog and:  &lt;br /&gt;
· Enter “true()” for the condition  &lt;br /&gt;
· Enter “CONFIDENTIAL” for the watermark text  &lt;br /&gt;
· Select red for the watermark color  &lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh4.ggpht.com/-Rn2IIHxemCE/UGRB0qyheAI/AAAAAAAAABQ/XmfLcoAOC70/s1600-h/image%25255B17%25255D.png"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px" title="StyleVision 2013 edit text watermark dialog" border="0" alt="StyleVision 2013 edit text watermark dialog" src="http://lh5.ggpht.com/-kbNywuPuoUs/UGRB1G_orLI/AAAAAAAAABY/DHzSwygo4nw/image_thumb%25255B11%25255D.png?imgmax=800" width="366" height="398" /&gt;&lt;/a&gt;  &lt;br /&gt;
&lt;br /&gt;
StyleVision’s support for watermarks is powerful and flexible. You can include both text and image watermarks, for example, with different XPath conditional expressions used to specify what should appear when. You can also specify different watermarks (or pairs of image and text watermarks) for each document section in a StyleVision design.  &lt;br /&gt;
&lt;br /&gt;
Check out watermark options and the &lt;a href="http://www.altova.com/whatsnew.html"&gt;other new features in StyleVision 2013&lt;/a&gt; by &lt;a href="http://www.altova.com/download/stylevision/db_xslt_stylesheet_designer_enterprise.html"&gt;downloading a free 30-day trial version&lt;/a&gt; today!     &lt;img src="http://feeds.feedburner.com/~r/Altova/~4/6XGvt6ri4ic" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/2117707566470358182/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=2117707566470358182" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/2117707566470358182?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/2117707566470358182?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/6XGvt6ri4ic/watermarks-in-stylevision-2013.html" title="Watermarks in StyleVision 2013" /><author><name>Peter O'Kelly</name><uri>https://plus.google.com/114309926992156812684</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-eS5DVh4hRbo/UGRBzWU9z5I/AAAAAAAAAA4/clIyGZiG2NI/s72-c/image_thumb%25255B12%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2012/10/watermarks-in-stylevision-2013.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUUFQX8ycSp7ImA9WhJbGE4.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-1063045474662578204</id><published>2012-09-28T09:00:00.000-04:00</published><updated>2012-09-28T09:00:10.199-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-09-28T09:00:10.199-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Altova events" /><category scheme="http://www.blogger.com/atom/ns#" term="Oracle OpenWorld" /><title>Visit us at Oracle OpenWorld next week!</title><content type="html">&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://lh3.ggpht.com/-koyKpxsryEE/UGSbb2BnfaI/AAAAAAAAA4Q/mMFOSPdF-vg/s1600-h/clip_image002%25255B3%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image002" border="0" hspace="12" alt="clip_image002" align="left" src="http://lh4.ggpht.com/-CnmS8d2Gcmg/UGSbcRkWv1I/AAAAAAAAA4Y/5w-chLw9bR0/clip_image002_thumb.jpg?imgmax=800" width="158" height="158" /&gt;&lt;/a&gt;&lt;b&gt;      &lt;br /&gt;
&lt;/b&gt;Fall is here, which must mean we are off to San Francisco, CA for the 2012 Oracle OpenWorld show.&amp;#160; If you are planning on attending come by and see Altova at the Moscone center from Sept. 30&lt;sup&gt;th&lt;/sup&gt; – October 4&lt;sup&gt;th&lt;/sup&gt; in booth #3408 for a demo of Altova’s tools for Oracle Users and see the amazing new features in the newly released Altova MissionKit 2013! &lt;a href="http://lh3.ggpht.com/-a2vnYjrHETk/UGSbcw9LeOI/AAAAAAAAA4g/tgFHBkC9tRk/s1600-h/clip_image004%25255B3%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image004" border="0" hspace="12" alt="clip_image004" align="right" src="http://lh3.ggpht.com/-4qwWu48GPn4/UGSbdHuG7sI/AAAAAAAAA4o/nGXfDnCHabw/clip_image004_thumb.jpg?imgmax=800" width="143" height="196" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;While you are visiting our booth tell us about your latest projects and challenges, collaborate on best practices or let us show you some of the latest and greatest features available in MissionKit 2013, like Smart Fix XML Validation in XMLSpy, mapping SQL stored procedures in MapForce, watermark support in StyleVision, or our seamless integration options in Java applications.&amp;#160; Don’t forget to enter our drawing for a chance to win a free Altova MapForce Basic Edition license!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/4B4r6afliEQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/1063045474662578204/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=1063045474662578204" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/1063045474662578204?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/1063045474662578204?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/4B4r6afliEQ/visit-us-at-oracle-openworld-next-week.html" title="Visit us at Oracle OpenWorld next week!" /><author><name>DaveMcG</name><uri>http://www.blogger.com/profile/08885768216396627489</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://1.bp.blogspot.com/_REdrfeVqYdU/Se9fDv8FDpI/AAAAAAAAADY/eqOIwcE3V1k/S220/david.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-CnmS8d2Gcmg/UGSbcRkWv1I/AAAAAAAAA4Y/5w-chLw9bR0/s72-c/clip_image002_thumb.jpg?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2012/09/visit-us-at-oracle-openworld-next-week.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkYBRngzeyp7ImA9WhJbFks.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-3900095517537479119</id><published>2012-09-25T11:27:00.000-04:00</published><updated>2012-09-26T08:55:57.683-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-09-26T08:55:57.683-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="data mapping" /><category scheme="http://www.blogger.com/atom/ns#" term="v2013" /><category scheme="http://www.blogger.com/atom/ns#" term="MapForce" /><title>Stored Procedures in Database Mappings</title><content type="html">&lt;p&gt;In response to user requests, the new release of &lt;a href="http://http://www.altova.com/mapforce.html"&gt;MapForce 2013&lt;/a&gt; includes robust support for stored procedures in &lt;a href="http://www.altova.com/mapforce/database-mapping.html"&gt;database mappings&lt;/a&gt; as:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;input components (for stored procedures that provide results)&lt;/li&gt;
&lt;li&gt;output components (for stored procedures that insert or update data in a database)&lt;/li&gt;
&lt;li&gt;or, stored procedures may be inserted as a function-like call (allowing users to provide input data, execute the stored procedure, and read/map the output data to other components)&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;The screenshot below shows the mapping of a stored procedure in SQL Server to create an XML file. &lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="A MapForce database mapping with a stored procedure" border="0" alt="A MapForce database mapping with a stored procedure" src="http://lh6.ggpht.com/-5ahz8cN1miI/UGHM_MCMBdI/AAAAAAAAA3o/j1JzMZbUbcQ/clip_image001%25255B3%25255D.png?imgmax=800" width="604" height="396" /&gt;&lt;/p&gt;&lt;p&gt;&lt;a name='more'&gt;&lt;/a&gt; &lt;p&gt;&lt;p&gt;Stored Procedures are programs that are hosted and run on a database server, callable from a client application. These programs are normally written in SQL but some databases can also handle calls to routines in languages like Java, Visual Basic , or other code. Stored procedures can perform simple operations like retrieving data, inserting new data, or updating database tables, or stored procedures can perform complex database administration tasks. Support for stored procedures varies among database vendors.&lt;/p&gt;&lt;p&gt;Database architects often use stored procedures to implement business logic in the database, which can simplify data management, especially when requirements change over time.&lt;/p&gt;&lt;p&gt;Stored procedures often require input parameters. MapForce allows you to provide values for all stored procedure input parameters that are required when the mapping is executed.&lt;/p&gt;&lt;p&gt;The procedure at the center of the database mapping shown above returns a table of data showing all the managers in the chain of command above the specified employee ID, which is supplied as an input parameter. The employee ID in this example is defined in the mapping as a constant with the value 67. You can also supply the parameter in another form, such as a calculated value or a data element retrieved from elsewhere in the database.&lt;/p&gt;&lt;p&gt;One issue with mapping stored procedures is the required data structure is not visible in the mapping until the first time the procedure is executed. MapForce provides a context menu that lets you run the stored procedure to reveal the data structure and individual data types for mapping:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://lh6.ggpht.com/-pNANqBxhUIA/UGHM_mOmLcI/AAAAAAAAA3w/bn95yIYAytw/clip_image002%25255B3%25255D.png?imgmax=800" width="385" height="182" /&gt;&lt;/p&gt;&lt;p&gt;The Output component of the mapping shown above is an XML document. Executing the mapping generates this result:&lt;/p&gt;&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image003" border="0" alt="clip_image003" src="http://lh4.ggpht.com/-iggBnMi8b9k/UGHNAJveb9I/AAAAAAAAA34/xXEDMozcoyg/clip_image003%25255B3%25255D.png?imgmax=800" width="385" height="182" /&gt;&lt;/p&gt;&lt;p&gt;The &lt;a href="http://manual.altova.com/Mapforce/mapforce-enterprise/"&gt;MapForce integrated Help&lt;/a&gt; and example files demonstrate various applications of stored procedures in database mappings.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Find out for yourself how easy it is to include stored procedures in your own database mapping projects! &lt;/b&gt;&lt;a href="http://www.altova.com/download/mapforce/data_mapping_enterprise.html"&gt;Download a free 30-day trial&lt;/a&gt;&lt;b&gt; of MapForce 2013.&lt;/b&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/li1Cs7s1cVw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/3900095517537479119/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=3900095517537479119" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/3900095517537479119?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/3900095517537479119?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/li1Cs7s1cVw/stored-procedures-in-database-mappings.html" title="Stored Procedures in Database Mappings" /><author><name>DaveMcG</name><uri>http://www.blogger.com/profile/08885768216396627489</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://1.bp.blogspot.com/_REdrfeVqYdU/Se9fDv8FDpI/AAAAAAAAADY/eqOIwcE3V1k/S220/david.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/-5ahz8cN1miI/UGHM_MCMBdI/AAAAAAAAA3o/j1JzMZbUbcQ/s72-c/clip_image001%25255B3%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2012/09/stored-procedures-in-database-mappings.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEADQn05fSp7ImA9WhJbEEg.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-8018877072158409252</id><published>2012-09-19T07:00:00.000-04:00</published><updated>2012-09-19T07:06:13.325-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-09-19T07:06:13.325-04:00</app:edited><title>Altova MissionKit 2013 with Smart Fix</title><content type="html">&lt;p&gt;&lt;a href="http://lh3.ggpht.com/-M0RbrPooz60/UFjewuncIfI/AAAAAAAAAPA/YKiEkZBBVYI/s1600-h/clip_image0023.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://lh3.ggpht.com/-g1Nl7y1DrXk/UFjexEGCbVI/AAAAAAAAAPI/zfRhigpt40s/clip_image002_thumb.jpg?imgmax=800" width="624" height="147" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Altova Software Version 2013 was released today, and, as always, numerous features in this year’s autumn launch have been developed in response to customer requests. You asked for the ability to use SQL stored procedures in MapForce data mapping projects, to embed XSDs in WSDL documents in XMLSpy, to add watermarks in StyleVision, and to integrate MissionKit functionality flexibly in Java applications. &lt;a href="http://www.altova.com/whatsnew.html"&gt;All those features and more&lt;/a&gt; are there in Version 2013. We’ve also added some features that can only be described as magical. &lt;/p&gt;&lt;p&gt;Let’s take a look at the highlights…&lt;a name='more'&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Version 2013 Highlights&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Smart Fix &lt;/b&gt;– it’s XML alchemy&lt;b&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;We are especially excited to introduce Smart Fix validation, which takes intelligent XML editing in XMLSpy to a whole new level. &lt;/p&gt;&lt;p&gt;With Smart Fix, in addition to reporting comprehensive information about validation errors, XMLSpy enumerates the possible corrections for fixing them and will make the required changes automatically, based on your selection! This feature is truly magical. It reduces the time and frustration spent hunting down and fixing validation errors considerably. There is simply no other &lt;a href="http://www.altova.com/xml-editor/"&gt;XML editor&lt;/a&gt; that even comes close to this.&lt;/p&gt;&lt;p&gt;&lt;a href="http://lh5.ggpht.com/-vHj7l7BgGeE/UFjexc6PKgI/AAAAAAAAAPQ/Jc_U97OxH4Q/s1600-h/clip_image0043.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Smart Fix validation in XML editor" border="0" alt="Smart Fix validation" src="http://lh4.ggpht.com/-Gp8nkLOtU2M/UFjexrtd7OI/AAAAAAAAAPY/NLHFDXY4oRA/clip_image004_thumb.jpg?imgmax=800" width="624" height="259" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Mapping SQL Stored Procedures in MapForce&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Support for these very important tools for designing, querying, and maintaining database architectures has been a frequent user request, especially among more DBA-oriented users.&lt;b&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;MapForce, Altova’s &lt;a href="http://www.altova.com/mapforce.html"&gt;any-to-any data mapping tool&lt;/a&gt;, has long provided powerful functionality for mapping, processing, and transforming SQL database data, and now it also includes robust support for stored procedures. You can utilize stored procedures in a data mapping project as: &lt;/p&gt;&lt;p&gt;· Input components (for stored procedures that provide results)&lt;/p&gt;&lt;p&gt;· Output components (for stored procedures that insert or update data in a database)&lt;/p&gt;&lt;p&gt;· Data processing function calls (allowing users to provide input data, execute the stored procedure, and read/map the output data to other components)&lt;/p&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/-hCcrAAwC9QU/UFjex4Wm-iI/AAAAAAAAAPg/1NxabJpFIUA/s1600-h/clip_image0053.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Mapping stored procedures" border="0" alt="Mapping stored procedures" src="http://lh4.ggpht.com/-bB3NJccjLgk/UFjeyNhDm0I/AAAAAAAAAPo/PBXN8UiYpFw/clip_image005_thumb.png?imgmax=800" width="385" height="384" /&gt;&lt;/a&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Watermark Support in StyleVision&lt;/b&gt;&lt;/p&gt;&lt;p&gt;One of the challenges of multi-channel publishing is being able to flexibly add output-specific features to a single layout design. For instance, when creating reports, media that is typically printed or presented in document format may require the addition of a watermark (such as diagonally page-spanning “confidential” or “draft” in the background), which is something not usually found on an HTML Web page. &lt;/p&gt;&lt;p&gt;Designers and developers now have the ability in StyleVision 2013 to incorporate image and/or free text watermark content in PDF, RTF, and Word output, while leaving the HTML output unchanged. This adds even more power and flexibility to multi-channel publishing of XML, SQL database, and XBRL content in StyleVision. &lt;/p&gt;&lt;p&gt;&lt;a href="http://lh4.ggpht.com/-lHf-ghqLsAI/UFjeysyptYI/AAAAAAAAAPw/opdQ1376ETU/s1600-h/clip_image0063.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Watermarks in StyleVision" border="0" alt="Watermarks in StyleVision" src="http://lh3.ggpht.com/-9t7j_feEqKk/UFjey8GX2sI/AAAAAAAAAP4/vBhrfSPquUw/clip_image006_thumb.png?imgmax=800" width="565" height="455" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Seamless Integration Options in Java Applications&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Another MissionKit 2013 feature added with flexibility in mind is a new API that allows developers to integrate XMLSpy, MapForce, StyleVision, and Authentic functionality seamlessly in custom Java applications for Windows. &lt;/p&gt;&lt;p&gt;This frequently-requested capability adds to support for integrating MissionKit tools in Visual Basic or C# applications, giving developers even more options for adding powerful MissionKit views and functionality to their custom apps. Example applications, such as the one for XMLSpy shown below, are also provided to give you a head start implementing this functionality.&lt;/p&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/-L7YZiZZIifI/UFjezdMgSyI/AAAAAAAAAQA/KtblWjJRjvI/s1600-h/clip_image0083.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Sample Java app " border="0" alt="Sample Java app " src="http://lh6.ggpht.com/-Wl85wROcZQc/UFjez8Im-wI/AAAAAAAAAQI/xn5gGA8ASnU/clip_image008_thumb.jpg?imgmax=800" width="624" height="468" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;These are just a few of the numerous new features added to the Altova XML, SQL, and UML product line in Version 2013. You can read &lt;a href="http://www.altova.com/whatsnew.html"&gt;more details here&lt;/a&gt;. &lt;/p&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/-szT_YzR0Yt4/UFje0GwlBNI/AAAAAAAAAQQ/cYbChwMkwUU/s1600-h/clip_image0093.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image009" border="0" hspace="12" alt="clip_image009" align="left" src="http://lh4.ggpht.com/-qVf5ADOpdJU/UFje0brS5kI/AAAAAAAAAQY/oHrvYV-4nNg/clip_image009_thumb.jpg?imgmax=800" width="318" height="192" /&gt;&lt;/a&gt;&lt;b&gt;Try Version 2013 Now&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Version 2013 is a free update for Altova customers with an active Support and Maintenance Package. Visit the Altova&lt;a href="http://www.altova.com/download.html"&gt; Download&lt;/a&gt; page to update now!&lt;/p&gt;&lt;p&gt;If you’re not already a customer, you may download a &lt;strong&gt;free, fully-functional &lt;/strong&gt;&lt;a href="http://www.altova.com/download.html"&gt;&lt;strong&gt;30-day trial&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;. &lt;/strong&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/54ic7x7lB-c" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/8018877072158409252/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=8018877072158409252" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/8018877072158409252?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/8018877072158409252?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/54ic7x7lB-c/altova-missionkit-2013-with-smart-fix.html" title="Altova MissionKit 2013 with Smart Fix" /><author><name>Erin Cavanaugh</name><uri>http://www.blogger.com/profile/05488702872055566047</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="26" height="32" src="http://2.bp.blogspot.com/_C4xYMtGRX-M/SYie9G7vVdI/AAAAAAAAABE/7MnFXMC-iy8/S220/Erin.JPG" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-g1Nl7y1DrXk/UFjexEGCbVI/AAAAAAAAAPI/zfRhigpt40s/s72-c/clip_image002_thumb.jpg?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2012/09/altova-missionkit-2013-with-smart-fix.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE8BQHs_eip7ImA9WhJUE0o.&quot;"><id>tag:blogger.com,1999:blog-4710621816584132478.post-8848094557550813270</id><published>2012-09-11T10:14:00.000-04:00</published><updated>2012-09-11T10:14:11.542-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-09-11T10:14:11.542-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="team organization" /><category scheme="http://www.blogger.com/atom/ns#" term="Organizational Development" /><category scheme="http://www.blogger.com/atom/ns#" term="MetaTeam" /><category scheme="http://www.blogger.com/atom/ns#" term="project management" /><category scheme="http://www.blogger.com/atom/ns#" term="RACI" /><category scheme="http://www.blogger.com/atom/ns#" term="responsibility matrix" /><title>How Does MetaTeam Generate Responsibility Matrixes?</title><content type="html">Creating &lt;a href="http://en.wikipedia.org/wiki/Responsibility_assignment_matrix"&gt;a responsibilities matrix&lt;/a&gt; (often referred to as a &lt;a href="http://racichart.org/"&gt;RACI matrix&lt;/a&gt;) is a very basic team best practice&lt;br /&gt;
&lt;br /&gt;
The concept of aligning responsibilities with roles, and roles with team members, makes sense for small teams, to departments, to major efforts following &lt;a href="http://en.wikipedia.org/wiki/PRINCE2"&gt;Prince2&lt;/a&gt;, the &lt;a href="http://en.wikipedia.org/wiki/A_Guide_to_the_Project_Management_Body_of_Knowledge"&gt;PMBOK&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Information_Technology_Infrastructure_Library"&gt;ITIL&lt;/a&gt; or a similar approach. &lt;br /&gt;
&lt;br /&gt;
In fact, if you didn’t create a matrix, you and your teammates would still have a foggy one in your mind’s eye. The problem with not creating an actual matrix is that everyone’s mental matrix differs slightly, allowing forgetfulness, avoidance and conflict to rule the day.&lt;br /&gt;
&lt;br /&gt;
For example, if your work on an ERP system involves exchange rates it is intuitive to assume that the accountants have that covered. The accountants, on the other hand, really just need a developer to hook up an exchange rate service, so to them the work is basically IT’s responsibility. A responsibility matrix clears up this kind of confusion.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh3.ggpht.com/-xNVMsDlDKzU/UBqcfngyd7I/AAAAAAAAAOc/GRo6-jMPS40/s1600-h/clip_image002%25255B3%25255D.jpg"&gt;&lt;img alt="A responsibility matrix with RACI values.  This is a report in MetaTeam." border="0" height="413" src="http://lh3.ggpht.com/-TNL6aRyZaaI/UBqcf1v5rsI/AAAAAAAAAOk/EG1l4iPJuvY/clip_image002_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image002" width="442" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
MetaTeam makes creating matrixes quick and easy. More importantly, MetaTeam links your matrixes with day-to-day work so they remain accurate and useful.&lt;br /&gt;
&lt;br /&gt;
Let’s make some examples in a quick tutorial to show how easy it is…&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
First, we are going to create a basic responsibilities matrix. Then we will expand on it, and in the process also create a roles matrix.&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
Let’s meet the team. Our example team is implementing the accounting module of a new ERP system for Boulder Machinery Inc, a mid-sized manufacturing company with operations on three continents.&lt;br /&gt;
&lt;br /&gt;
There are 15 people working on this module with an estimated duration of 16 months. The team leader is John Carfe, a professional Project Manager. It is sponsored by Diane Webber, CIO, and her colleague Daniel Johnson, the company Controller. The team is roughly split between technologists and accountants.&lt;br /&gt;
&lt;br /&gt;
If you are working along in your own MetaTeam account, create a team called “Accounting Module Implementation”. On the My Teams page select your new team as the current team.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh4.ggpht.com/-WcaZaXxizSo/UBqcgcSAjLI/AAAAAAAAAOs/fuI6tpFBzrE/s1600-h/clip_image004%25255B3%25255D.jpg"&gt;&lt;img alt="Adding a new team with this form is a snap!" border="0" height="123" src="http://lh6.ggpht.com/-oYOlB0XlGiE/UBqcgpf1CBI/AAAAAAAAAO0/pUbXA5_tMkg/clip_image004_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image004" width="412" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style="font-size: 14px; font-style: italic; padding: 10px;"&gt;You may not have 15 users to assign to your example team if you are just getting started with MetaTeam. But you can follow along with this example just using a personal email address to create a test user that can be added to your new team – don’t worry you can always delete the account later. &lt;/div&gt;&lt;br /&gt;
Next assign your new team’s members. Go to the Directory app’s People tab. Find each team member and click the add icon to the left of their name. You will see the Current Team box on the right of the window fill up as you do this.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh3.ggpht.com/-Zuj8gVJqUN8/UBqcg9el__I/AAAAAAAAAO8/X-APlc0Ljts/s1600-h/clip_image006%25255B3%25255D.jpg"&gt;&lt;img alt="Assign team members in the directory.  Or you can also add them by email address in the My Teams tab." border="0" height="184" src="http://lh3.ggpht.com/-5QPKbGvkx1M/UBqchI-Ax7I/AAAAAAAAAPE/sK1iC-tVU0w/clip_image006_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image006" width="310" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to create the roles. Click on the Roles app icon in the top nav bar.&lt;br /&gt;
&lt;a href="http://lh3.ggpht.com/-t0KrO1SNvGY/UBqchYB7nJI/AAAAAAAAAPM/yY2DZnA0y4Y/s1600-h/clip_image008%25255B3%25255D.jpg"&gt;&lt;img alt="MetaTeam's Roles app icon at the top of the screen." border="0" height="88" src="http://lh5.ggpht.com/-uvL5-5Fs8Hg/UBqchndwr1I/AAAAAAAAAPU/eadtuPXSi80/clip_image008_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image008" width="192" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
We’ll add the team roles as a list in the Roles tab. Then we will switch to the Members tab to make the assignments and print the matrix.&lt;br /&gt;
&lt;br /&gt;
&lt;div style="font-size: 14px; font-style: italic; padding: 10px;"&gt;Every team automatically includes three roles: Admin, Sponsor and Leader. The Admin role is special. It gives assignees additional MetaTeam privileges allowing them to add, edit and delete content and make assignments. Being in the Admin role is essentially equivalent to being the creator of the team.&lt;/div&gt;&lt;br /&gt;
Sponsor and Leader are roles that are common to essentially all teams, so MetaTeam creates them for you. Let’s leave Sponsor as-is. But change Leader to Project Manager.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh4.ggpht.com/-UhJ-MnmJi6c/UBqch2lKDwI/AAAAAAAAAPc/6NNLQi-hqcQ/s1600-h/clip_image010%25255B3%25255D.jpg"&gt;&lt;img alt="A list of roles in the Roles app.  These are the roles we are going to add to the Responsibilities Assignment Matrix." border="0" height="293" src="http://lh5.ggpht.com/-hESF5bwdkUk/UBqciejZHTI/AAAAAAAAAPk/tlMZ3-02UPc/clip_image010_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image010" width="393" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Next add the other roles for this team. I will enter a typical set of roles, but again, feel free to just enter a couple in your own example team, if you like.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh4.ggpht.com/-3Y7rgfTbesw/UBqciqmvfhI/AAAAAAAAAPs/8F-4__vNY0I/s1600-h/clip_image012%25255B3%25255D.jpg"&gt;&lt;img alt="There are several roles in this team so that we can create a full roles matrix and responsibilities matrix." border="0" height="499" src="http://lh6.ggpht.com/-K1qipQzy2Tw/UBqci8korkI/AAAAAAAAAP0/zt7WPGyvUA8/clip_image012_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image012" width="261" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Now the responsibilities. I came up with a number of responsibilities for this example team. In the real world you might have many more than this – that is the nature of teamwork.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh3.ggpht.com/-ian78pindZ0/UBqcjC6kaYI/AAAAAAAAAP8/KTfpEzknyuM/s1600-h/clip_image014%25255B3%25255D.jpg"&gt;&lt;img alt="Assign responsibilities to roles by clicking a checkbox in the grid." border="0" height="416" src="http://lh4.ggpht.com/-ahwXKkIAxnI/UBqcjhqPGKI/AAAAAAAAAQE/kNjlK6yQiTo/clip_image014_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image014" width="576" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
And here we get to the fun part. To make your responsibilities matrix simply click the Responsibilities tab and start checking boxes.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-QXmxXiGRCZo/UBqcj9jj27I/AAAAAAAAAQM/o54eNJTtOPE/s1600-h/clip_image016%25255B3%25255D.jpg"&gt;&lt;img alt="As you click checkboxes in the roles and responsibilities grid you are creating your matrix." border="0" height="230" src="http://lh5.ggpht.com/-L33JoeDlfqI/UBqckThleeI/AAAAAAAAAQU/uNQ1zXV1nbY/clip_image016_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image016" width="508" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
When you have checked off the responsibilities you want to assign to at least a couple of roles, take a look back at the Roles tab. Now you see the responsibilities listed with the roles you assigned them to.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-qh6XOsULICg/UBqck_pbRyI/AAAAAAAAAQc/HB34NZt6coA/s1600-h/clip_image018%25255B3%25255D.jpg"&gt;&lt;img alt="Going back to the roles tab shows the roles and responsibilites in list form." border="0" height="370" src="http://lh6.ggpht.com/-FIE-Hblb3Hg/UBqcoAlP56I/AAAAAAAAAQk/itZzuj4u9WE/clip_image018_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image018" width="310" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Click back to the Responsibilities tab. Look in the lower left corner for the report icon.  &lt;a href="http://lh4.ggpht.com/-vrwK8q8ahuk/UBqcojzzatI/AAAAAAAAAQs/AwkKJeg0R5M/s1600-h/clip_image020%25255B3%25255D.jpg" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="The matrix report icon." border="0" height="46" src="http://lh4.ggpht.com/-LGoD0cIQKZ0/UBqco8iyM8I/AAAAAAAAAQ0/Teuut7IRBsw/clip_image020_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image020" width="42" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Click that icon to open a report-form responsibilities matrix. This report gives you both responsibilities mapped to roles and to team members.&lt;br /&gt;
&lt;br /&gt;
However, we haven’t made role assignments yet, so let’s continue.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh4.ggpht.com/-J5qe_HoS7NI/UBqcpEj5TSI/AAAAAAAAAQ8/tuo_d_LdLm0/s1600-h/clip_image022%25255B3%25255D.jpg"&gt;&lt;img alt="The responsibilities matrix report shows responsibilities in two responsibilities assignment matrixes: to roles and to individuals." border="0" height="388" src="http://lh3.ggpht.com/-NGloLN7bG1c/UBqcr5v9jxI/AAAAAAAAARE/h36d1bgMyYA/clip_image022_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image022" width="572" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Our team members are all set and we already entered the roles. All we need to do is make the assignments of members to roles. This is easy!&lt;br /&gt;
&lt;br /&gt;
Open the Members tab. You see a grid of members against roles. Just check the boxes for the roles each member should perform.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-KJ1UFqEVcQA/UBqcsRlFO0I/AAAAAAAAARM/GYL81Mn1v2w/s1600-h/clip_image024%25255B3%25255D.jpg"&gt;&lt;img alt="Assigning individuals to roles is as simple as clicking a checkbox in another grid." border="0" height="367" src="http://lh4.ggpht.com/-Zy4T830KEIY/UBqcs48uR-I/AAAAAAAAARU/7x8fzsWkdh8/clip_image024_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image024" width="479" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
To get a printable roles matrix just look in the lower left corner of the grid for the print icon.&lt;br /&gt;
&lt;a href="http://lh5.ggpht.com/-1jlhgh1S4O8/UBqctOS6UKI/AAAAAAAAARc/lJoMxZ331VI/s1600-h/clip_image026%25255B3%25255D.jpg"&gt;&lt;img alt="clip_image026" border="0" height="29" src="http://lh4.ggpht.com/-wxiw-N0tq-o/UBqctLRZQ9I/AAAAAAAAARg/NQvHZlE5pdc/clip_image026_thumb.jpg?imgmax=800" style="border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image026" width="30" /&gt;&lt;/a&gt;&lt;br /&gt;
Click the icon to open the roles matrix report.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh3.ggpht.com/-GvJ_-pjmc98/UBqcto7GXFI/AAAAAAAAARs/1Fl2pxPnPM8/s1600-h/clip_image028%25255B3%25255D.jpg"&gt;&lt;img alt="A roles matrix report showing individuals' roles." border="0" height="471" src="http://lh3.ggpht.com/-eu9NtYyVKw8/UBqcuEHIj1I/AAAAAAAAAR0/ooruLd3QCJ8/clip_image028_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image028" width="519" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
There you have it: handsome printable roles and responsibilities matrixes.&lt;br /&gt;
&lt;br /&gt;
But wait, you may be thinking, what about RACI?&lt;br /&gt;
&lt;br /&gt;
Again, RACI stands for Responsible, Accountable, Consulted and Informed. It is a great way of clearly stating how a shared responsibility will be apportioned between the roles involved.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh4.ggpht.com/-QIKiybr9_G4/UBqcueV0SeI/AAAAAAAAAR8/WpUSGWUGGRQ/s1600-h/clip_image030%25255B3%25255D.jpg"&gt;&lt;img alt="The key in the RACI matrix showing what RACI stands for." border="0" height="179" src="http://lh6.ggpht.com/-zUuDfYTeUdo/UBqcu0Z4h2I/AAAAAAAAASE/erkwZGFLfZg/clip_image030_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image030" width="209" /&gt;&lt;/a&gt;&lt;br /&gt;
Setting RACI values in the responsibility matrix is straightforward.&lt;br /&gt;
&lt;br /&gt;
For each responsibility where you want to set a RACI value click on its name. You can see the responsibilities names in the Roles tab below the assigned roles, or on the Responsibilities tab along the top of the grid.&lt;br /&gt;
&lt;br /&gt;
In the open responsibility you see a section listing the assigned roles below the name and description of the responsibility. Beside each role are three selects.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh3.ggpht.com/-R3-1hf9J-H0/UBqcvdU_wUI/AAAAAAAAASM/pSYiV8oQpdA/s1600-h/clip_image032%25255B3%25255D.jpg"&gt;&lt;img alt="To set the RACI value that shows in your responsibilities assignment matrix open the responsibility and set the dropdown." border="0" height="194" src="http://lh5.ggpht.com/-d6wOMtehkYI/UBqcvmRsJZI/AAAAAAAAASU/aLxeow3jTqk/clip_image032_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image032" width="522" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
The first select lets you apportion the responsibility across the roles by percent of effort. The second is our RACI values. The third select lets you estimate a level of effort in hours per week.&lt;br /&gt;
&lt;br /&gt;
It is simple to set the RACI values as needed. With that done, click over to the Roles tab. Your responsibility is now listed with the RACI value for each role. Likewise, back on the Responsibilities tab when you click the report icon the print view now shows one or more R, A, C or I values according to your settings.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://lh6.ggpht.com/-ZczdNW01qOo/UBqcv0DwlmI/AAAAAAAAASc/80KUxdukERo/s1600-h/clip_image034%25255B3%25255D.jpg"&gt;&lt;img alt="Now your Responsibility Assignment Matrix shows RACI values for each assignment." border="0" height="382" src="http://lh6.ggpht.com/-XRNJec2WyGs/UBqcwPvXGWI/AAAAAAAAASk/yfRAX1dS6IA/clip_image034_thumb.jpg?imgmax=800" style="border-color: -moz-use-text-color; border-style: none; border-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image034" width="529" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
And there you have it. A complete responsibility assignment matrix and a role matrix. The perfect way to make the areas of responsibility simple and clear to all team members!&lt;br /&gt;
&lt;br /&gt;
To see the full print versions of my example team you can click here for the roles matrix example and here for the responsibilities matrix.&lt;br /&gt;
&lt;br /&gt;
My example team is fairly large. But all it takes for you to try creating your own matrixes is a test team with couple of members and one or two roles and responsibilities.&lt;br /&gt;
&lt;br /&gt;
Give it a try. A few minutes after you &lt;a href="http://metateam.net/home/register.jsp"&gt;signup&lt;/a&gt; you will have your own matrixes, and you will see how easy it is to get your team organized in MetaTeam!&lt;img src="http://feeds.feedburner.com/~r/Altova/~4/vMFrIiZZD9U" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.altova.com/feeds/8848094557550813270/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=4710621816584132478&amp;postID=8848094557550813270" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/8848094557550813270?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4710621816584132478/posts/default/8848094557550813270?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Altova/~3/vMFrIiZZD9U/how-does-metateam-generate.html" title="How Does MetaTeam Generate Responsibility Matrixes?" /><author><name>dkershaw</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://2.bp.blogspot.com/_BzVSqwGGfEI/Sq2oGbRRaqI/AAAAAAAAAAM/FVLlTG29Ub4/S220/my_silly_icon.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-TNL6aRyZaaI/UBqcf1v5rsI/AAAAAAAAAOk/EG1l4iPJuvY/s72-c/clip_image002_thumb.jpg?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.altova.com/2012/09/how-does-metateam-generate.html</feedburner:origLink></entry></feed>
