From: SwarmShepherd Date: 2011-04-25T20:50:27+09:00 Subject: Re: Are there other Ruby folks using "distributable dynamic agents" for project work? I think just now a "example vocabulary" - that is built automatically might be interesting for somebody that is trying to follow all this: ================================================================================= CONSOLIDATED MASTER LANGUAGE FOR LIBRARY: XxxxLibrary ================================================================================== METHODS 1). names_primary 2). parts_used 3). general ....... 7). preparation_and_dosage 8). collection 9). caution 10). images names_primary 1). [:GROUP, [:BOTANICAL, :LANGUAGE, :REFSET]] 2). [:BOTANICAL, {:KEY=>[:FAMILY]}] 3). [:LANGUAGE, {:KEY=>[:DEUTSCH, :ENGLISH]}] 4). [:REFSET, {:KEY=>[:REFSET]}] parts_used 1). [:GROUP, [:HERB, :INFO, :PREPARATION, :REFSET]] 2). [:HERB, {:KEY=>[:FORM, :PART]}] 3). [:INFO, {:KEY=>[:NOTE]}] 4). [:PREPARATION, {:KEY=>[:FORM]}] 5). [:REFSET, {:KEY=>[:REFSET]}] general 1). [:GROUP, [:ACTION, :BODY, :CONDITION, :HERB, :INFO, :PATIENT, :PREPARATION, :QUALIFICATION, :REFSET]] 2). [:ACTION, {:KEY=>[:ACTION, :DUE_TO, :GENERAL, :SPECIFIED]}] 3). [:BODY, {:KEY=>[:SYSTEM, :SYSTEM_SUB]}] 4). [:CONDITION, {:KEY=>[:CONDITION, :DUE_TO, :EXAMPLE]}] 5). [:HERB, {:KEY=>[:PART]}] 6). [:INFO, {:KEY=>[:NOTE]}] 7). [:PATIENT, {:KEY=>[:HAS_ESPECIALLY]}] 8). [:PREPARATION, {:KEY=>[:FORM, :INTERNAL_EXTERNAL, :IS_A_SPECIFIC]}] 9). [:QUALIFICATION, {:KEY=>[:QUALIFICATION]}] 10). [:REFSET, {:KEY=>[:REFSET]}] actions 1). [:GROUP, [:ACTION, :BODY, :REFSET]] 2). [:ACTION, {:KEY=>[:ACTION]}] 3). [:BODY, {:KEY=>[:SYSTEM]}] 4). [:REFSET, {:KEY=>[:REFSET]}] preparation_and_dosage 1). [:GROUP, [:DOSAGE, :HERB, :PATIENT, :PREPARATION, :PREPARING, :REFSET]] 2). [:DOSAGE, {:KEY=>[:DOSAGE, :FREQ, :PERIOD, :UNIT]}] 3). [:HERB, {:KEY=>[:UNIT]}] 4). [:PATIENT, {:KEY=>[:STATE]}] 5). [:PREPARATION, {:KEY=>[:CONSUMED_AS, :FORM, :INTERNAL_EXTERNAL]}] 6). [:PREPARING, {:KEY=>[:HERB_VOLUME, :INFUSION_PERIOD, :INFUSION_TIME_UNIT, :MENSTRUUM, :MENSTRUUM_UNIT, :MENSTRUUM_VOLUME]}] 7). [:REFSET, {:KEY=>[:REFSET]}] collection 1). [:GROUP, [:COLLECTION, :HERB, :INFO, :REFSET]] 2). [:COLLECTION, {:KEY=>[:DRY_HOW, :OPERATION, :OPERATION_BEFORE_DRYING, :SEASON_FROM, :SEASON_TO, :WHEN]}] 3). [:HERB, {:KEY=>[:PART]}] 4). [:INFO, {:KEY=>[:NOTE]}] 5). [:REFSET, {:KEY=>[:REFSET]}] caution 1). [:GROUP, [:INFO, :REFSET]] 2). [:INFO, {:KEY=>[:CAUTION]}] 3). [:REFSET, {:KEY=>[:REFSET]}] images 1). [:GROUP, [:REFSET]] 2). [:REFSET, {:KEY=>[:REFSET]}] ========================== This is automatically extracted/re-extracted from the data in this "Class Server" So 1st colum is the Method then the "Key Base Word then the Key_2nd part experimented with more levels but this works out as pragmatic "medium" and seems like clear best. ================== Result is that by selecting from only 3 columns that a client can build sentences in a natural like language (picking only most of time. There is a "Seed" system now - so no need to start from scratch. There is a built in ability to translate from "Techlish" (technical english) from the internal format. This avoids And/Or normal ambiguities. And (not played with much yet) there seems to be a nice way to translate to multiple natural languages that just falls out. ============ One more note from experience: there is a GROUP+KEY of INFO_META which supports an interesting direct "client to computer possibility) as well as a INFO_TEXT keyword that supports person to person "comment" Thank you