Il carattere due punti (":") può essere utilizzato nei nomi dei campi shapefile?


16

Sto cercando di scoprire se il :personaggio è autorizzato nel nome del campo shapefile di ESRI.

Ho cercato su Google, ma non sono riuscito a trovare una risposta. Ecco una citazione interessante dall'articolo delle FAQ ESRI che afferma:

Elimina qualsiasi carattere che non sia un carattere alfanumerico o un carattere di sottolineatura.

Questo significa che il :personaggio non è permesso? O è consentito usarlo, ma si consiglia di non usarlo? Se sì, allora perché?

Risposte:


22

Le restrizioni sui nomi dei campi all'interno di un file di forma sono determinate dalle limitazioni di dBase. Esistono quattro regole singole:

  1. Fino a 10 caratteri max.
  2. Il primo carattere nel nome del campo deve iniziare con una lettera.
  3. I nomi dei campi sono univoci.
  4. E, dalla comprensione di DBF Essentials

(...) possono contenere qualsiasi combinazione delle lettere dalla A alla Z, le cifre da 0 a 9, i due punti (:) (solo nei nomi dei campi dBASE II) e il carattere di sottolineatura (_).

Shapefile ESRI funziona con dBase III +.


1
Puoi caricare una parte del tuo .omsfile? Voglio verificare cosa succede o se sono un modo alternativo di esportare quel tipo di dati
aldo_tapia

1
Ho provato a Rutilizzare osmare rgdalsenza problemi, funziona perfettamente. Controllo i nomi dei campi in QGIS e ho ragione. Un codice semplice e di base . E i risultati , controllali.
aldo_tapia,

1
Perché shapefile hanno lo stesso campo di file originale: <node id="32633413" visible="true" version="6" changeset="13406299" timestamp="2012-10-07T23:36:07Z" user="Davlak" uid="217070" lat="41.8994226" lon="12.4969449"/>. Il carattere della colonna non è un campo, è un tag, come:, <tag k="bus" v="yes"/> <tag k="highway" v="bus_stop"/> <tag k="internet_access" v="wlan"/> <tag k="internet_access:name" v="AtacWiFi"/> <tag k="internet_access:operator" v="RomaWireless"/> <tag k="name" v="Nazionale/Quattro Fontane"/> <tag k="operator" v="ATAC"/> ...giusto?
aldo_tapia,

1
I tag sono come una descrizione dei .kmlfile, in un campo puoi avere molti tag, anche i .osmfile hanno una struttura simile a quella .kml. Se vuoi estrarre i tag usa l' osmosi , non GDAL per creare nuovi campi basati su quei tag. Stai cercando di ottenere qualcosa di simile questo ?
aldo_tapia,

1
Un nome di campo non può contenere due punti. Soluzione: apri il tuo .osmfile con qualsiasi editor di testo e sostituisci i due punti con sottolineature, salvalo ed esporta in shapefile. .osmil file è un XML, è possibile gestire facilmente i contenuti.
aldo_tapia,

5

Secondo lo stesso articolo di Esri che citi:

Questi limiti sono imposti in modo che ArcGIS sia in grado di funzionare con la massima quantità di tipi di dati.

Di conseguenza, anche se non ti viene impedito di usare i due punti nel nome di un campo da qualunque software tu stia usando per creare shapefile, non sarà saggio usarli con ArcGIS.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.