Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Lettura file thredds xml

    Salve a tutti,
    sto avendo dei problemi per quanto riguarda questo file xml, in particolare non riesco a capire come leggere urlPath o il dataset name.

    Vi allego una parte dell'xml:

    codice:
      <?xml version="1.0" encoding="UTF-8" ?> 
    - <thredds:catalog xmlns:fn="http://www.w3.org/2005/02/xpath-functions" xmlns:thredds="http://www.unidata.ucar.edu/namespaces/thredds/InvCatalog/v1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:bes="http://xml.opendap.org/ns/bes/1.0#">
      <thredds:service name="dap" serviceType="OPeNDAP" base="/opendap" /> 
      <thredds:service name="file" serviceType="HTTPServer" base="/opendap" /> 
     - <thredds:dataset name="/wrf3/dxx" ID="/opendap/wrf3/dxx/">
       - <thredds:dataset name="wrf3_d01_20120104Z06.nc" ID="/opendap/wrf3/dxx/wrf3_d01_20120104Z06.nc">
         <thredds:dataSize units="bytes">22193950364</thredds:dataSize> 
         <thredds:date type="modified">2012-01-04T14:17:13</thredds:date> 
         <thredds:access serviceName="dap" urlPath="/wrf3/dxx/wrf3_d01_20120104Z06.nc" /> 
         </thredds:dataset>
    Il problema e non riesco a capire come accedere alle parti relative all'urlpath o datasetname, in particolare non capisco thredds a cosa seve, qualcuno potrebbe aiutarmi????
    Ringrazio tutti anticipatamente

  2. #2
    thredds: è un namespace definito qua
    xmlns:thredds="http://www.unidata.ucar.edu/namespaces/thredds/InvCatalog/v1.0"

    con dataset/access/@urlPath non funziona ?

  3. #3
    Originariamente inviato da Mattia Vio
    thredds: è un namespace definito qua
    xmlns:thredds="http://www.unidata.ucar.edu/namespaces/thredds/InvCatalog/v1.0"

    con dataset/access/@urlPath non funziona ?



    in che senso tu intendi se faccio


    echo dataset/access/@urlPath????

    io ho provato a fare cosi ma mi da problemi, e non capisco dov'è l'errore:

    $file = simplexml_load_file("catalog.xml")
    $array_nodo= $file ->catalog;

    foreach ($array_nodo as $nodo)
    {
    //adesso dal nodo catalogo voglio scendere al nodo dataset dove voglio leggere il nome di quella stringa ma non so come fare sto provando a fare cosi:

    echo $nodo -> dataset . "
    ";//Però non mi stampa niente di niente :S!

    }
    Cmq grazie mille per la risposta

  4. #4
    io intendevo con un
    <xsl:value-of select="dataset/access/@urlPath"/>

  5. #5
    Originariamente inviato da Mattia Vio
    io intendevo con un
    <xsl:value-of select="dataset/access/@urlPath"/>


    e per scorrere tutte i nodi contenenti il path faccio sempre un foreach? cioè questa istruzione funziona come se uso simplexml?

  6. #6

  7. #7
    Originariamente inviato da Mattia Vio
    prova a guardare se questo ti aiuta

    http://www.php.net/manual/en/book.simplexml.php#105697

    Ok grazie mille sei stato gentilissimo !

  8. #8

  9. #9
    Ho usato il DOM e in particolare questo blocco di codice:

    Codice PHP:
    $documento = new DOMDocument();
    $documento->load'C:\Program Files (x86)\EasyPHP-5.3.6.1\www\catalog.xml' );

    $elementi $documento->getElementsByTagName"dataset" );
    foreach( 
    $elementi as $elemento ){
      
    $nomelemento $elemento->getElementsByTagName"access" );
      
    $nome $nomelemento->item(0)-> nodeName;

    //$nome-> attributes  //mi da errore volevo prendere i valori degli attriburi.

      
    echo $nome;
     } 
    ma ho un problema, in pratica in questo modo riesco ad accedere al nome del nodo, ma io vorrei accedere al valore dell'attributo urlPath ma non ho capito come fare :S, cioè se utilizzo $nome-> attributes mi da errore e quindi non riesco accedere al valore dell'url :s....
    qualcuno gentilmente saprebbe aiutarmi???
    Grazie mille a tutti!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.