ciao, grazie per aver risposto.
Sì, ho messo il contenuto del file XML in $file

Codice PHP:
$file "segnalazione.xml"
ho provato nella stessa maniera a fare:

Codice PHP:
$file get_content(); 
ma il tutto si blocca alla riga dove fa il controllo della lunghezza del file che ovviamente nel mio caso non serve perché non è un file.

di seguito metto tutto il codice del parser che ho scritto per il file XML

Codice PHP:
<?php $file "segnalazione.xml";

function 
startElement($paser$name$attrib)
{
    echo 
"Apertura del tag: $name
"
;
    if(
sizeof($attrib))
    {
        echo 
"attributi:";
        while (list(
$key$val) = each($attrib))
            echo 
"$key = $val";
            
        echo 
"
"
;
        
    }
}

function 
endElement ($parser$name)
{
    echo 
"Chiusura del tag: $name
"
;
}

function 
characterData ($parser$data)
{
    if (
trim($data) != "")
        echo 
"Valore: $data
"
;
}

?>

<?php

$xml_parser 
xml_parser_create();
xml_parser_set_option($xml_parserXML_OPTION_CASE_FOLDING1);
xml_set_element_handler($xml_parser"startElement""endElement");
xml_set_character_data_handler($xml_parser"characterData");

if (!(
$f = @fopen($file"r")))
    die(
"Impossibile aprire il file per il parsing");

echo 
"[b]Inizio parsing[/b]
"
;

while (
$data fread($f4096))
{
    if (!
xml_parse($xml_parser$datafeof($f)))
    {
        die(
sprintf("%s(%d): %s
"
$filexml_get_current_line_number($xml_parser), xml_error_string(xml_get_error_code($xml_parser))));
    }
    
    echo 
"[b]Parsing completato[/b]";
    
xml_parser_free($xml_parser);
}

?>