TABLET PC






 

Tablet PC Articles
 

 


Context Tagging Tips and Tricks

Leszynski Group has gained extensive experience with the Context Tagging Tool in the Tablet PC Software Development Kit.  This article helps to shortcut your tagging efforts by listing some of the helpful techniques we've learned by tagging dozens of retail software applications:

  • Understand the manifest file schema.  A context manifest is an XML file and, as such, is human-readable.  You can open a manifest (.ctm file) in your XML editor, or in Excel 2003 if you do not have an XML editor, and see the fields and values.  Understanding what is in a manifest will help you to understand how tagging works.

  • Use descriptive tag names.  Each tag in a manifest has a unique ControlName attribute.  Using descriptive control names will help when you test and document your manifests.  We use Hungarian prefixes for control names to make it easy to determine how the control is parented: pnl for a control on an application panel or task pane, tbr for a control on a toolbar, and dlg for a control in a dialog box.  In addition, we use full execution-path syntax when creating a control name so that it is easy to determine how to get to the tagged control in the application.  Here is an example of one of our control names:
         dlgToolsOptions_EditTab_FixedDecimalPlaces

  • Perform comprehensive data entry when tagging.  Many applications have controls, task panes, and/or dialog boxes that are only displayed when certain criteria are met.  For example, if you are tagging a tax software package, selecting a Tax Filing Status of 'Single' during tagging may not display dialog boxes that collect information about the spouse and children of a married filer.  When tagging an application, enter data into every field, and enter the type of data that will ensure that all aspects of the software are unlocked.

  • Don't tag too narrowly or too broadly.  Be careful to check the data types and validation requirements for each field as you tag it.  If you tag too narrowly, you can negatively impact the user's data entry experience; for example, using IS_DIGITS instead of IS_NUMBER in a field that allows decimal places to be entered creates a usability setback.  The reverse is also trueentering a tag that is overly broad provides less value than using the correctly precise tag; for example, using IS_FILE_FULLFILEPATH will provide an overly broad coercion experience when used in a file name field where IS_FILE_FILENAME would suffice instead.

  • Watch out for re-used controls.  When you attempt to tag a control and the Context Tagging Tool shows 'Already tagged', you may think that this is good news and that you can move on to the next control.  However, be aware that some applications liberally re-use controls within the application and that the data context may change in different instances of the control; this scenario may make your tag imprecise.  For example, if an application uses the same control in three places (you tag it once and then see 'Already tagged' twice more), and in all three instances the control collects a phone number, then tagging the control with IS_TELEPHONE_FULLTELEPHONENUMBER will work fine.  On the other hand, if a control is used to collect a phone number in one instance and a last name in another, applying a telephone number tag to the control will degrade the recognition experience where the control is used for non-phone data.  For controls that are used like thisone control collects more than one type of datayou will generally want to remove the tag.

  • Check for hidden executables.  Some applications 'shell out' (i.e. spawn) to related executables for additional functionality (data import wizards are a common example), and an external executable may require its own manifest to properly coerce regardless of how it is launched.  Always look in the program files folder of an application that you are tagging to see if there are additional executables that also need to be tagged.

  • Test your manifests.  For some types of data, the coercion value provided by context tagging is subtle, making it hard to determine if coercion is binding correctly to a specific control or not.  The simplest technique for testing your context manifests is to open the manifest in an XML editor (make a master backup copy first!) and change each InputScopeEnum attribute to use the IS_DIGITS tag.  Then, test your application using the instrumented manifest by writing letters of the alphabet in the Tablet PC Input Panel for each tagged control; if the IS_DIGITS tag is sticking to the control, the characters that you enter will coerce to digits no matter what you write.

  • Be careful if you live-update or upgrade an application while you are tagging it.  An application upgrade can change a software version number, and a context manifest is tied to its executable by version number, so an upgrade can render a manifest outdated.  Also, an upgrade can modify the window signature of controls that you have tagged, and/or add or remove controls on forms.  The best approach is to complete the tagging for a specific version and then save and version-control that manifest, in case some of your users do not immediately upgrade.  Next, you can upgrade the application and open it in the Context Tagging Tool, and it will ask you if you want to upgrade the version number of the manifest to match the new executable.  You can agree, and then review/enhance the manifest against the new executable; this gives you two versions of the manifest for the price of one.

The Context Tagging Tool is a powerful new technology for penabling existing software applications.  Hopefully, our tips will make your tagging efforts quicker and more productive.

SITE INDEX  |  LOGIN  |  TERMS OF USE  |  PRIVACY  |  © 2006 Leszynski Group Inc. All rights reserved.