Changeset 121 in server
- Timestamp:
- 05/15/07 11:13:24 (6 years ago)
- Files:
-
- 11 edited
-
debserver-nlpwordnet-1.6/debian/changelog (modified) (1 diff)
-
debserver-nlpwordnet-1.6/lib/servlets/json_wn.rb (modified) (1 diff)
-
debserver-nlpwordnet-1.6/lib/slovnik/sumo.rb (modified) (1 diff)
-
debserver-nlpwordnet-1.6/lib/slovnik/wn.rb (modified) (4 diffs)
-
debserver-nlpwordnet-1.6/xslt/wn-preview.xslt (modified) (3 diffs)
-
debserver-nlpwordnet-1.6/xslt/wn-single.xslt (modified) (2 diffs)
-
debserver-wordnet-1.6/debian/changelog (modified) (1 diff)
-
debserver-wordnet-1.6/lib/servlets/json_wn.rb (modified) (1 diff)
-
debserver-wordnet-1.6/lib/slovnik/wn.rb (modified) (4 diffs)
-
debserver-wordnet-1.6/xslt/wn-preview.xslt (modified) (3 diffs)
-
debserver-wordnet-1.6/xslt/wn-single.xslt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
debserver-nlpwordnet-1.6/debian/changelog
r115 r121 1 debserver-nlpwordnet (1.4-13) unstable; urgency=low 2 3 * Queries refactored (#336) 4 * Save author (#329) 5 6 -- Adam Rambousek <xrambous@fi.muni.cz> Tue, 15 May 2007 11:12:51 +0200 7 1 8 debserver-nlpwordnet (1.4-12) unstable; urgency=low 2 9 -
debserver-nlpwordnet-1.6/lib/servlets/json_wn.rb
r115 r121 550 550 data_hash['SYNSET']['ID'] = {} 551 551 data_hash['SYNSET']['ID']['$'] = id 552 data_hash['SYNSET']['CREATED'] = {} 553 data_hash['SYNSET']['CREATED']['$'] = request.attributes[:auth_user].to_s + ' ' + Time.now.strftime("%Y-%m-%d %H:%M:%S") 552 554 end 553 555 #split literals to words -
debserver-nlpwordnet-1.6/lib/slovnik/sumo.rb
r106 r121 30 30 31 31 if query[0,top.length] == top 32 what = query[(top.length+1)..(query.index("=")-1)] 33 search = query[(query.rindex("=")+1)..-1] 34 what.gsub!('.','/') 35 $stderr.puts what 36 if search.index(':') != nil 37 #lookup by data from other dictionary 38 other_dict, other_id, other_element = search.split(':') 39 other_element.gsub!('.', '/') 40 $stderr.puts other_dict + other_id + other_element 41 other_xml = array[other_dict].get(other_id) 42 $stderr.puts other_xml.to_s 43 odoc = REXML::Document.new(other_xml.to_s) 44 if other_element.include?('@') 45 search = odoc.elements[other_element.to_s].to_s 46 else 47 search = odoc.elements[other_element.to_s].text.to_s 48 end 49 $stderr.puts search 50 search_query = "$p='#{search}'" 51 elsif search.index('.*') != nil 52 search_query = "starts-with($p, '" + search[0..(search.index('.*')-1)] + "')" 53 else 54 search_query = "$p='#{search}'" 55 end 56 db_query = "for $x in collection('#{@database}')/#{top} where some $p in $x/#{what} satisfies (#{search_query}) return $x" 32 search_string = parse_conditions(query, array) 33 db_query = "for $x in collection('#{@database}')/#{top} where #{search_string} return $x" 57 34 else 58 35 if (pos = query.index('*')) != nil -
debserver-nlpwordnet-1.6/lib/slovnik/wn.rb
r112 r121 33 33 end 34 34 35 #return list of synset IDs 36 def get_list(query, wn_array = nil) 37 r = {} 38 synsets = {} 39 db_query = '' 40 query ||= '' 41 42 top = @key_path.split('/')[1] 43 rest = @key_path.split('/')[2..-1].join('/') 44 45 if query[0,1] == '/' 46 re = query.gsub(/\//, '') 47 db_query = "for $x in collection('#{@database}')/#{top} where some $p in $x/SYNONYM/LITERAL satisfies (matches($p,'#{re}')) return $x" 48 elsif query[0,top.length] == top 49 what = query[7..(query.index("=")-1)] 35 #parse one condition 36 def parse_one_condition(query, wn_array) 37 top = @key_path.split('/')[1] 38 39 what = query[(top.length+1)..(query.index("=")-1)] 50 40 search = query[(query.rindex("=")+1)..-1] 51 41 what.gsub!('.','/') … … 59 49 $stderr.puts other_xml.to_s 60 50 odoc = REXML::Document.new(other_xml.to_s) 61 if other_element.include?('@') 62 search = odoc.elements[other_element.to_s].to_s 63 else 64 search = odoc.elements[other_element.to_s].text.to_s 65 end 66 $stderr.puts search 67 search_query = "$p='#{search}'" 51 vals = [] 52 REXML::XPath.each( odoc, '/'+other_element ) { |el| 53 $stderr.puts el 54 #if el.text != nil 55 # vals << "$p=#{el.text.to_s}" 56 #else 57 # vals << "$p=#{el.to_s}" 58 #end 59 vals << "$p='#{el.to_s}'" 60 } 61 search_query = vals.join(' or ') 68 62 elsif search.index('.*') != nil 69 63 search_query = "starts-with($p, '" + search[0..(search.index('.*')-1)] + "')" … … 71 65 search_query = "$p='#{search}'" 72 66 end 73 db_query = "for $x in collection('#{@database}')/#{top} where some $p in $x/#{what} satisfies (#{search_query}) return $x" 67 search_string = "some $p in $x/#{what} satisfies (#{search_query})" 68 return search_string 69 end 70 71 #parse conditions 72 def parse_conditions(query, wn_array) 73 query_ar = query.split(' ') 74 query_ar.map!{|qa| 75 if ['or', 'OR', 'and', 'AND'].include?(qa) 76 qa.downcase 77 else 78 '(' + parse_one_condition(qa, wn_array) + ')' 79 end 80 } 81 search_string = query_ar.join(' ') 82 return search_string 83 end 84 85 #return list of synset IDs 86 def get_list(query, wn_array = nil) 87 r = {} 88 synsets = {} 89 db_query = '' 90 query ||= '' 91 92 top = @key_path.split('/')[1] 93 rest = @key_path.split('/')[2..-1].join('/') 94 95 if query[0,1] == '/' 96 re = query.gsub(/\//, '') 97 db_query = "for $x in collection('#{@database}')/#{top} where some $p in $x/SYNONYM/LITERAL satisfies (matches($p,'#{re}')) return $x" 98 elsif query[0,top.length] == top 99 search_string = parse_conditions(query, wn_array) 100 db_query = "for $x in collection('#{@database}')/#{top} where #{search_string} return $x" 74 101 else 75 102 lit = query.split(':')[0] … … 94 121 break 95 122 end 96 $stderr.puts "s=#{s}"123 #$stderr.puts "s=#{s}" 97 124 key = s.to_document.get_metadata('http://www.sleepycat.com/2002/dbxml','name') 98 125 doc = REXML::Document.new( s.to_s ) -
debserver-nlpwordnet-1.6/xslt/wn-preview.xslt
r84 r121 31 31 <span class="RED"><xsl:value-of select="POS"/></span> 32 32 <xsl:text> </xsl:text> 33 <span class="BLUE">STAMP: </span>34 <span class="RED"><xsl:value-of select="STAMP"/></span>35 <xsl:text> </xsl:text>36 33 <span class="BLUE">ID: </span> 37 34 <span class="RED"><xsl:value-of select="ID"/></span> … … 44 41 <xsl:if test="position()!=last()"><xsl:text>, </xsl:text></xsl:if> 45 42 </xsl:for-each> 46 <br/>47 43 <br/> 48 44 <xsl:apply-templates select="DEF"/> … … 134 130 <br/> 135 131 </xsl:for-each> 136 132 133 <br/> 134 <xsl:for-each select="VALENCY"> 135 <span class="BLUE">VALENCY: </span> 136 <ul> 137 <xsl:for-each select="FRAME"> 138 <li><span class="DARK_RED"><xsl:value-of select="."/></span></li> 139 </xsl:for-each> 140 </ul> 141 </xsl:for-each> 142 143 <br/> 144 <span class="BLUE">STAMP: </span> 145 <span class="RED"><xsl:value-of select="STAMP"/></span><xsl:text> / </xsl:text> 146 <span class="DARK_RED"><xsl:value-of select="CREATED"/></span> 147 137 148 </body> 138 149 </html> -
debserver-nlpwordnet-1.6/xslt/wn-single.xslt
r30 r121 29 29 <xsl:for-each select="SUMO"> 30 30 <span class="BLUE">SUMO/MILO: </span> 31 <span class="GREEN"><xsl:value-of select="TYPE"/><xsl:text> </xsl:text><xsl:value-of select="text()"/></span><br/> 31 <span class="GREEN"><xsl:value-of select="TYPE"/><xsl:text> </xsl:text> 32 <a href="{$servername}/sumo?action=runQuery&query={.}&outtype=html&nojson=1&default=1"><xsl:value-of select="text()"/></a> 33 </span><br/> 32 34 </xsl:for-each> 33 35 <xsl:for-each select="ILR"> … … 84 86 <br/> 85 87 </xsl:for-each> 88 <br/> 89 <xsl:for-each select="VALENCY"> 90 <span class="BLUE">VALENCY: </span> 91 <ul> 92 <xsl:for-each select="FRAME"> 93 <li><span class="DARK_RED"><xsl:value-of select="."/></span></li> 94 </xsl:for-each> 95 </ul> 96 </xsl:for-each> 97 98 <br/> 99 <span class="BLUE">STAMP: </span> 100 <span class="RED"><xsl:value-of select="STAMP"/></span><xsl:text> / </xsl:text> 101 <span class="DARK_RED"><xsl:value-of select="CREATED"/></span> 102 86 103 <hr/> 87 104 </xsl:template> -
debserver-wordnet-1.6/debian/changelog
r115 r121 1 debserver-wordnet (1.4-13) unstable; urgency=low 2 3 * Queries refactored (#336) 4 * Save author (#329) 5 6 -- Adam Rambousek <xrambous@fi.muni.cz> Tue, 15 May 2007 11:10:58 +0200 7 1 8 debserver-wordnet (1.4-12) unstable; urgency=low 2 9 -
debserver-wordnet-1.6/lib/servlets/json_wn.rb
r115 r121 550 550 data_hash['SYNSET']['ID'] = {} 551 551 data_hash['SYNSET']['ID']['$'] = id 552 data_hash['SYNSET']['CREATED'] = {} 553 data_hash['SYNSET']['CREATED']['$'] = request.attributes[:auth_user].to_s + ' ' + Time.now.strftime("%Y-%m-%d %H:%M:%S") 552 554 end 553 555 #split literals to words -
debserver-wordnet-1.6/lib/slovnik/wn.rb
r112 r121 33 33 end 34 34 35 #return list of synset IDs 36 def get_list(query, wn_array = nil) 37 r = {} 38 synsets = {} 39 db_query = '' 40 query ||= '' 41 42 top = @key_path.split('/')[1] 43 rest = @key_path.split('/')[2..-1].join('/') 44 45 if query[0,1] == '/' 46 re = query.gsub(/\//, '') 47 db_query = "for $x in collection('#{@database}')/#{top} where some $p in $x/SYNONYM/LITERAL satisfies (matches($p,'#{re}')) return $x" 48 elsif query[0,top.length] == top 49 what = query[7..(query.index("=")-1)] 35 #parse one condition 36 def parse_one_condition(query, wn_array) 37 top = @key_path.split('/')[1] 38 39 what = query[(top.length+1)..(query.index("=")-1)] 50 40 search = query[(query.rindex("=")+1)..-1] 51 41 what.gsub!('.','/') … … 59 49 $stderr.puts other_xml.to_s 60 50 odoc = REXML::Document.new(other_xml.to_s) 61 if other_element.include?('@') 62 search = odoc.elements[other_element.to_s].to_s 63 else 64 search = odoc.elements[other_element.to_s].text.to_s 65 end 66 $stderr.puts search 67 search_query = "$p='#{search}'" 51 vals = [] 52 REXML::XPath.each( odoc, '/'+other_element ) { |el| 53 $stderr.puts el 54 #if el.text != nil 55 # vals << "$p=#{el.text.to_s}" 56 #else 57 # vals << "$p=#{el.to_s}" 58 #end 59 vals << "$p='#{el.to_s}'" 60 } 61 search_query = vals.join(' or ') 68 62 elsif search.index('.*') != nil 69 63 search_query = "starts-with($p, '" + search[0..(search.index('.*')-1)] + "')" … … 71 65 search_query = "$p='#{search}'" 72 66 end 73 db_query = "for $x in collection('#{@database}')/#{top} where some $p in $x/#{what} satisfies (#{search_query}) return $x" 67 search_string = "some $p in $x/#{what} satisfies (#{search_query})" 68 return search_string 69 end 70 71 #parse conditions 72 def parse_conditions(query, wn_array) 73 query_ar = query.split(' ') 74 query_ar.map!{|qa| 75 if ['or', 'OR', 'and', 'AND'].include?(qa) 76 qa.downcase 77 else 78 '(' + parse_one_condition(qa, wn_array) + ')' 79 end 80 } 81 search_string = query_ar.join(' ') 82 return search_string 83 end 84 85 #return list of synset IDs 86 def get_list(query, wn_array = nil) 87 r = {} 88 synsets = {} 89 db_query = '' 90 query ||= '' 91 92 top = @key_path.split('/')[1] 93 rest = @key_path.split('/')[2..-1].join('/') 94 95 if query[0,1] == '/' 96 re = query.gsub(/\//, '') 97 db_query = "for $x in collection('#{@database}')/#{top} where some $p in $x/SYNONYM/LITERAL satisfies (matches($p,'#{re}')) return $x" 98 elsif query[0,top.length] == top 99 search_string = parse_conditions(query, wn_array) 100 db_query = "for $x in collection('#{@database}')/#{top} where #{search_string} return $x" 74 101 else 75 102 lit = query.split(':')[0] … … 94 121 break 95 122 end 96 $stderr.puts "s=#{s}"123 #$stderr.puts "s=#{s}" 97 124 key = s.to_document.get_metadata('http://www.sleepycat.com/2002/dbxml','name') 98 125 doc = REXML::Document.new( s.to_s ) -
debserver-wordnet-1.6/xslt/wn-preview.xslt
r84 r121 31 31 <span class="RED"><xsl:value-of select="POS"/></span> 32 32 <xsl:text> </xsl:text> 33 <span class="BLUE">STAMP: </span>34 <span class="RED"><xsl:value-of select="STAMP"/></span>35 <xsl:text> </xsl:text>36 33 <span class="BLUE">ID: </span> 37 34 <span class="RED"><xsl:value-of select="ID"/></span> … … 44 41 <xsl:if test="position()!=last()"><xsl:text>, </xsl:text></xsl:if> 45 42 </xsl:for-each> 46 <br/>47 43 <br/> 48 44 <xsl:apply-templates select="DEF"/> … … 134 130 <br/> 135 131 </xsl:for-each> 136 132 133 <br/> 134 <xsl:for-each select="VALENCY"> 135 <span class="BLUE">VALENCY: </span> 136 <ul> 137 <xsl:for-each select="FRAME"> 138 <li><span class="DARK_RED"><xsl:value-of select="."/></span></li> 139 </xsl:for-each> 140 </ul> 141 </xsl:for-each> 142 143 <br/> 144 <span class="BLUE">STAMP: </span> 145 <span class="RED"><xsl:value-of select="STAMP"/></span><xsl:text> / </xsl:text> 146 <span class="DARK_RED"><xsl:value-of select="CREATED"/></span> 147 137 148 </body> 138 149 </html> -
debserver-wordnet-1.6/xslt/wn-single.xslt
r18 r121 29 29 <xsl:for-each select="SUMO"> 30 30 <span class="BLUE">SUMO/MILO: </span> 31 <span class="GREEN"><xsl:value-of select="TYPE"/><xsl:text> </xsl:text><xsl:value-of select="text()"/></span><br/> 31 <span class="GREEN"><xsl:value-of select="TYPE"/><xsl:text> </xsl:text> 32 <a href="{$servername}/sumo?action=runQuery&query={.}&outtype=html&nojson=1&default=1"><xsl:value-of select="text()"/></a> 33 </span><br/> 32 34 </xsl:for-each> 33 35 <xsl:for-each select="ILR"> … … 84 86 <br/> 85 87 </xsl:for-each> 88 <br/> 89 <xsl:for-each select="VALENCY"> 90 <span class="BLUE">VALENCY: </span> 91 <ul> 92 <xsl:for-each select="FRAME"> 93 <li><span class="DARK_RED"><xsl:value-of select="."/></span></li> 94 </xsl:for-each> 95 </ul> 96 </xsl:for-each> 97 98 <br/> 99 <span class="BLUE">STAMP: </span> 100 <span class="RED"><xsl:value-of select="STAMP"/></span><xsl:text> / </xsl:text> 101 <span class="DARK_RED"><xsl:value-of select="CREATED"/></span> 102 86 103 <hr/> 87 104 </xsl:template>
Note: See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/trac/deb2/chrome/site/nlp-logo.png)