Barbo Comune

Esemplare di Barbo Comune. Foto di Armando Piccinini

  • Nome scientifico. Barbus plebejus Bonaparte, 1839
  • Allegati delle direttive Uccelli ed Habitat in cui le specie sono presenti. La specie è presente negli allegati II e V della Direttiva Habitat; in quest’ultimo allegato compare come Barbus spp.
  • Cenni di ecologia e biologia. Il barbo è diffuso in tutti i corsi d’acqua pedemontani e di fondovalle della penisola italiana, nelle zone denominate “a ciprinidi reofili”, dove risulta molto spesso la specie più abbondante. È una specie con discreta valenza ecologica in grado di occupare vari tratti di un corso d’acqua, anche quelli di piccole dimensioni, purchè le acque risultino ben ossigenate; predilige però tratti Medio-alto dove la corrente è vivace, l’acqua è limpida e il fondo ghiaioso. Il corpo è fusiforme, con capo allungato e può raggiungere dimensioni considerevoli, anche oltre i 50 cm. La maturità sessuale viene raggiunta a due - tre anni nei maschi, a quattro - cinque nelle femmine; non c’è un evidente dimorfismo sessuale. La stagione riproduttiva è tra metà aprile e luglio. A 16°C la schiusa delle uova ha luogo dopo circa 8 gg.
  • Dimensione della popolazione nell’area di progetto. Nella Regione Emilia Romagna, il barbo comune è presente nei corsi d'acqua montani di fondo valle e planiziali. Storicamente in Prov. di Parma risultava presente (Nonnis Marzano et al, 2003) nell’asta principale del fiume Po e negli affluenti Stirone, Ceno, Taro, Baganza, Parma ed Enza, con popolazioni abbondanti in 11/28 siti di presenza (39%). Nel corso degli ultimi anni le popolazioni hanno subito drastici decrementi. In ambito ufficiale i dati disponibili sono quelli della carta ittica, riferita al periodo 2007-8 (Puzzi et al. 2010) dove la specie è stata censita “vulnerabile” con elevato rischio di estinzione nel medio termine, nonostante la LR IUCN la considerasse a basso rischio. Ulteriori dati attualmente disponibili sono quelli della carta ittica regionale, la quale riporta censimenti per lo più qualitativi effettuati tra 1999-2004.  L’analisi dei monitoraggi mostra un’ampia variabilità nella presenza di barbo comune all’interno dei SIC e nei corsi d’acqua ad essi contigui anche su scala geografica limitata. Ad es. nel  F. Enza la consistenza numerica degli esemplari fluttua tra “raro” e  “presente” con popolazioni scarsamente strutturate. In modo più preciso, le stime di densità riferiscono di popolazioni variabili tra 0,003 e 0,110 ind/mq nelle zone di transizione; nei tratti planiziali la presenza diventa sporadica entrando in forte competizione con i barbi europei.
  • Stato di conservazione nell’area di progetto: Nonostante le notevoli capacità di adattamento e l’ampio spettro trofico che gli consentono un’ampia diffusione, il barbo, ha visto diminuire il suo areale di distribuzione. Le popolazioni si presentano caratterizzate da un numero ridotto di esemplari per lo più nei tratti dell’alto corso. Di rilievo rimane la popolazione dell’alto Taro con  numerosi esemplari di notevoli dimensioni; nella rimanente parte dei corsi d’acqua appenninici e collinari della provinciali Parma residuano popolazioni scarsamente strutturate con esemplari di taglia non superiore ai 30 cm. Nel basso corso dei fiumi e nell’asta principale del Po la competizione con le specie alloctone ha portato alla scomparsa della maggior parte delle popolazioni.  La situazione della provincia di Parma può essere riferita anche alle province di Piacenza e Reggio Emilia dove residuano poche popolazioni in grado di automantenersi nei tratti montani mentre la specie è quasi del tutto scomparsa nella fascia planiziale. Di rilievo è la popolazione di barbo presente nel medio - alto corso del Trebbia in provincia di Piacenza.


class "Downloads" already exists while executing "::itcl::class Downloads { inherit Barbie private variable downloads_menu "" public common downloads_dir public me..." (in namespace eval "::rwdatas" script line 3) invoked from within "namespace eval ::rwdatas { ::itcl::class Downloads { inherit Barbie private variable downloads_menu "" public common ..."

OUTPUT BUFFER:

source [file join $rweb_root tcl before.tcl] # # -- downloads.tcl # # yet another datasource for controlling document downloads # #::rivet::apache_log_error notice "sourcing file [info script]" # package require Barbie package require rwbinary namespace eval ::rwdatas { ::itcl::class Downloads { inherit Barbie private variable downloads_menu "" public common downloads_dir public method willHandle {arglist keyvar} public method init {args} public method menu_list {page} public method is_stale {key timereference} #public proc to_url {lm} { return [Barbie::to_url $lm] } public proc list_downloads {dbhandle {public "%"}} protected method create_page_obj {key ooclass reassigned_key} { return ""} } ::itcl::body Downloads::is_stale {key timereference} { if {$key == "download_doc"} { return true } return [chain $key $timereference] } ::itcl::body Downloads::list_downloads {dbhandle {public "%"}} { set q { select d.*,s.descrizione,s.sectionid from documenti d \ join sezioni s on d.sezione=s.sectionid \ where d.pubblico like '$public' \ order by s.sectionid,s.ordine,d.ordine,d.docid; } set docsdb [dict create] #puts "
[subst $q]
" $::barbie::dbhandle forall [subst $q] document { set sectionid $document(sectionid) unset document(sectionid) set sezione_descrizione $document(descrizione) unset document(descrizione) set docid $document(docid) unset document(docid) dict set docsdb $sectionid descrizione $sezione_descrizione dict set docsdb $sectionid documenti $docid [dict create {*}[array get document]] } return $docsdb } ::itcl::body Downloads::willHandle {arglist keyvar} { upvar $keyvar key set args_d [dict create {*}$arglist] if {[dict exists $args_d downloads]} { set key listdownloads return -code break -errorcode rw_ok } if {[dict exists $args_d dwnl]} { set key download_doc return -code break -errorcode rw_ok } return -code continue -errorcode rw_continue } ::itcl::body Downloads::init {args} { set downloads_dir [file join $::rivetweb::site_base docs] $this key_class_map download_doc ::rwpage::BinaryFile $this key_class_map listdownloads ::rwpage::DownloadMgr set mm $::rivetweb::menumodel set lm $::rivetweb::linkmodel set downloads_menu [$mm create_menu downloadsmanager root normal] $downloads_menu assign title "Documenti" $::rivetweb::default_lang $downloads_menu assign title "Documents" en set downloads_link [$lm create FileUpload "" \ { it "Download Documenti" en "Documents Download" } \ [dict create downloads 1] \ [dict create it "Download documenti" \ en "Documents Download"]] $downloads_menu add_link $downloads_link } ::itcl::body Downloads::menu_list {page} { return [list documenti $downloads_menu] } ::itcl::body Downloads::create_page_obj {key ooclass reassigned_key} { upvar $reassigned_key rkey set rkey $key set p "" switch $key { download_doc { set docid [::rivet::var_qs get dwnl] set d [::barbie::Documenti #auto] set nr [$d fetch $::barbie::dbhandle [list docid $docid] dd] if {[::barbie::is_logged] || [::barbie::is_supervisor]} { set filter 1 } else { set filter [expr $dd(pubblico) == "y"] } if {($nr > 0) && $filter} { set binary_file [file join $downloads_dir $dd(filename)] set p [$ooclass ::#auto $key $binary_file] } else { return -code error "Documento inaccessibile" } $d destroy } listdownloads { set p [$ooclass ::#auto $key] #$p configure -downloads_dir docs } } return $p } } package provide Downloads 1.0 source [file join $rweb_root tcl after.tcl]