Background
Looking to automate creating Domains in JasperServer. Domains are a "view" of data for creating ad hoc reports. The names of the columns must be presented to the user in a human readable fashion.
Problem
There are over 2,000 possible pieces of data from which the organization could theoretically want to include on a report. The data are sourced from non-human-friendly names such as:
payperiodmatchcode
labordistributioncodedesc
dependentrelationship actionendoption
actionendoptiondesc addresstype
addresstypedesc historytype
psaddresstype rolename
bankaccountstatus
bankaccountstatusdesc bankaccounttype
bankaccounttypedesc beneficiaryamount
beneficiaryclass beneficiarypercent
benefitsubclass beneficiaryclass
beneficiaryclassdesc benefitactioncode
benefitactioncodedesc
benefitagecontrol
benefitagecontroldesc
ageconrolagelimit
ageconrolnoticeperiod
Question
How would you automatically change such names to:
- pay period match code
- labor distribution code desc
- dependent relationship
Ideas
Use Google's Did you mean engine, however I think it violates their TOS:
lynx -dump ?url? | grep "Did you mean" | awk ...
Languages
Any language is fine, but text parsers such as Perl would probably be well-suited. (The column names are English-only.)
Unnecessary Prefection
The goal is not 100% perfection in breaking words apart; the following outcome is acceptable:
- enrollmenteffectivedate -> Enrollment Effective Date
- enrollmentenddate -> Enroll Men Tend Date
- enrollmentrequirementset -> Enrollment Requirement Set
No matter what, a human will need to double-check the results and correct many. Whittling a set of 2,000 results down to 600 edits would be a dramatic time savings. To fixate on some cases having multiple possibilities (e.g., therapistname) is to miss the point altogether.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…