Guru phonetic functions in sql, part 2 – it jungle level of education and income

In my previous article I discussed the use of the standard SOUNDEX and DIFFERENCE functions for phonetic processing. I also identified the major problems with SOUNDEX (based on U.S. level 4 uk education English and the first character is static) and DIFFERENCE (loose because it is based on SOUNDEX).

In this article I will discuss how to tackle these problems by writing a customized phonetic function to use in place of or in conjunction with SOUNDEX. The good news is that you do not have to become an expert in phonetics — others have already done the job for you. There are a number of algorithms available on the web, such as caverphone, cologne_phonetic, metaphone, double_metaphone and refined_soundex.

The Metaphone algorithm was created by Lawrence Philips and was published in an article in “Computer Language” in December, 1990.

Since then, Lawrence Philips has gone on to develop double_metaphone (for which the code is freely available) and Metaphone 3 (which is a commercial product sold as source code).

Although not a standard function in DB2, you will find a Metaphone function in some databases and as a standard function in some programming languages (such as PHP). Metaphone is different from SOUNDEX in that, instead of translating a string to a code, Metaphone returns a string of consonant sounds.

Without going through the code in detail, the basic principle is that the input string is processed character by character and character combinations are “translated” to a consonant sound (e.g. ‘z’ becomes ‘s’, ‘ph’ becomes ‘f’, all vowels are dropped). Using the METAPHONE Function

There is no perfect solution! But, since you are writing the code, you can program in any combination you wish. There is nothing to stop you from changing or adding to the algorithm. A change to two lines would include more hits in the previous example

Paul Tuohy, IBM Champion and author of Re-engineering RPG Legacy Applications, is a prominent consultant and trainer for application modernization and development technologies on the IBM Midrange. education level in us He is currently CEO of ComCon , a consultancy firm in Dublin, Ireland, and partner at System i Developer . He hosts the RPG & DB2 Summit twice per year with partners Susan Gantner and Jon Paris. RELATED STORY

• Visual RPG. ASNA Visual RPG (AVR) is the only RPG compiler available for .NET. AVR empowers your RPG programmers to leap into .NET coding with the language they already know and love. They will be able to build Windows, Web, mobile, and Web services apps with AVR—all with superb IBM i integration.

• Wings. Wings transforms green-screen RPG display files to modern browser pages. It quickly and effectively gives your users the user experience they desire, with no disruptive changes to your RPG programming logic. highest level of education in progress No big upfront design or analysis is required and Wings can be learned very quickly. Give your RPG applications the user interface they deserve with ASNA Wings.

• Mobile RPG. secondary level education philippines With ASNA Mobile RPG (MR), your RPG programmers can create smartphone and tablet applications that connect directly to the IBM i with read/write database access. Mobile development traditionally requires technologies such as HTML, JavaScript, Java, PHP, and/or other languages. ASNA Mobile RPG builds on your RPG team’s existing skills to let them create great mobile apps with nothing but ILE RPG.

• Monarch. Monarch is an analytical/migration suite that transforms IBM i applications originally written in ILE RPG or RPG/400, into a native Microsoft C# .NET application. For a complete re-platforming, Monarch can even migrate your IBM i database to SQL Server®. The result is a browser-based, .NET version of your RPG application. Once migrated to .NET you can then extend and enhance the application in many ways.