Changeset 474

Show
Ignore:
Timestamp:
06/02/10 18:34:23 (8 years ago)
Author:
samuraraujo
Message:
 
Files:
1 modified

Legend:

Unmodified
Added
Removed
  • Explorator/trunk/app/controllers/facets_controller.rb

    r457 r474  
    4848  #the parameter id is the ResourceSet identification in the SetsPool. 
    4949  def facet (exp)   
     50    puts "$$$$$ 1" 
     51    puts Query.new.adapters(ConnectionPool.get_adapter('INTERNAL')).sparql("SELECT DISTINCT ?s WHERE { ?s <http://www.w3.org/2000/01/rdf-schema#label> ?o1 FILTER(str(?o1) = 'dblpfacets2')").execute 
     52    puts '$$$$$ 4' 
    5053    #gets a ResourceSet instance in the pool. 
    5154    set = session[:application].get(exp)    #the object @resourceset is a global object that will be used by render 
     
    5861    #  @facetgroup=FACETO::FacetGroup.find_by_rdfs::label('Group1').first 
    5962    @groups=FACETO::FacetGroup.find_by_faceto::type(RDFS::Resource.new('http://www.tecweb.inf.puc-rio.br/2008/faceto#userdefined')) 
    60     @facetgroup=FACETO::FacetGroup.find_by_rdfs::label(params[:name]).first   
    61      
     63    puts '###### 1' 
     64    @facetgroup =nil 
     65    @groups.each do |x| 
     66      @facetgroup =x if x.label == params[:name] 
     67       
     68    end  
    6269    #Calculates all the facets for a set of resources. 
    6370    entropy_by_set(@resourceset.resources) 
     
    192199          if facet.faceto::use != nil   
    193200            #get the values based in the property 
    194           #  qresult = QueryFactory.new.distinct(:o).where(resource, facet.faceto::use,:o).execute 
    195        #   puts facet.faceto::use.localname 
    196         #  puts facet.faceto::use  
    197           qresult = resource.instance_eval(facet.faceto::use.localname)           
    198          elsif facet.faceto::useInverse != nil 
    199            puts facet.faceto::use.localname  
    200                      puts facet.faceto::use  
    201                       
    202                      # qresult = QueryFactory.new.distinct(:o).where(resource, facet.faceto::useInverse,:o).execute 
    203           qresult = resource.instance_eval(facet.faceto::useInverse.localname) 
     201            #  qresult = QueryFactory.new.distinct(:o).where(resource, facet.faceto::use,:o).execute 
     202            puts facet.faceto::use.localname 
     203            # puts facet.faceto::use  
     204             
     205            qresult = resource.instance_eval(facet.faceto::use.localname)           
     206          elsif facet.faceto::useInverse != nil 
     207            puts facet.faceto::use.localname  
     208            puts facet.faceto::use  
     209             
     210            # qresult = QueryFactory.new.distinct(:o).where(resource, facet.faceto::useInverse,:o).execute 
     211            qresult = resource.instance_eval(facet.faceto::useInverse.localname) 
    204212          end     
    205213        end 
     
    209217          qresult = t 
    210218        end 
    211          puts qresult 
    212          puts '2 ----------------------------' 
     219        puts qresult 
     220        puts '2 ----------------------------' 
    213221        #property :p occurs em :s 
    214222        if qresult.size > 0           
    215223          prob_p += 1 
    216224        end 
    217           
     225         
    218226        #frequence that :o occurs for each :s 
    219227        qresult.each do |o|              
     
    247255      hash_object.each_key do |object|      
    248256        count= hash_object[object] 
    249           
     257         
    250258        # puts object 
    251259         
     
    261269        end        
    262270      end        
    263  
     271       
    264272      #calculates the objects' cardinality  
    265273       
     
    281289        puts 'probability' 
    282290        puts prob_p 
    283         @entropies[f]=[prob_p,normatize (max_entropy_for_n(hash_object.size),entropy)] #normatize entropy value to be used in the sort function 
     291        @entropies[f]=[prob_p,normatize(max_entropy_for_n(hash_object.size),entropy)] #normatize entropy value to be used in the sort function 
    284292        puts @entropies[f] 
    285293        @facets_cardinalities[f]=cardinalities         
     
    287295    end         
    288296    @entropies = @entropies.to_a 
    289      #sort the facets by property occurency and by maximum entropy         
     297    #sort the facets by property occurency and by maximum entropy         
    290298    @entropies.sort!  do |a, b| 
    291299      r = b[1][0]<=>a[1][0] 
     
    382390        if type=='computed' 
    383391          #gets the value of this property in this resource 
    384 #         object=Query.new.distinct(:o).where(:o,property,resource).execute.to_s 
     392          #         object=Query.new.distinct(:o).where(:o,property,resource).execute.to_s 
    385393          object = resource.instance_eval(property.localname) 
    386394        else