| CH wrote... | | One simple case - I can state a simple rule, such as 'Only individuals | over a certain age may have an SSN'**. That rule needs to be enforced | or supported in user interfaces, in business logic layers, and in | database layers... But I've yet to see a development environment where the rule | can be stated once and never need another line of code written to make it happen. | | Why not? It was a simple enough rule to state... Yet even such | a simple rule will require the insertion of snippets of code in a dozen | places in an implementation. | | That's the kind of thing I mean... examples are legion, and taken | individually there's nothing technically impossible about improving | things, but we seem ''unable'' to effectively do it. | | AW wrote... | | Here's a way to do it without 'inserting snippets of code' | | Note that these rules work right away in the generic IBL author-user interface. | Point a browser to www.reengineeringllc.com, click on 'Internet Business Logic', | click GO, than choose the example called OfAgeForSSN1 . | | You can also add a custom UI by extending www.reengineeringllc.com/iblClient1.java . | | Note also that adding a few link rules will make this work over SQL too. | (See www.reengineeringllc.com/demo_agents/Oil-IndustrySupplyChain1MySql1.agent | for examples of link rules.) | | ** But note that newborns can actually get SSNs now -- See http://www.ssa.gov/pubs/10023.html some-person is listed in the database some-age is a possible age a person must be at least some-number years old to have a social security number that-age is greater than or equal that-number some-SSN is an available social security number add : that-person aged that-age has social security number that-SSN -------------------------------------------------------------------------------------------------------------- choose person/age/SSN from the menus, then add : that-person aged that-age has social security number that-SSN some-person aged some-age has social security number some-SSN del : that-person aged that-age has social security number that-SSN ----------------------------------------------------------------------------------- delete from the database : that-person aged that-age has social security number that-SSN this-SSN is an available social security number =============================================== 111-22-3333 222-33-4444 this-person is listed in the database ===================================== Fred Bloggs Jim Greene a person must be at least this-number years old to have a social security number ================================================================================ 10 this-number is a possible age ============================== 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 this-person aged this-age has social security number this-SSN ============================================================== | This file is an application written in the language Executable English. | You can view, run and change it by pointing a browser | to www.reengineeringllc.com and selecting OfAgeForSSN1.