The EDDTableFromEML and EDDTableFromEMLPartii Opcje w generateDatasets Xml
\[Ta strona będzie interesować tylkoERDDAP™administratorzy pracujący z plikami EML. Dokument ten został pierwotnie stworzony w 2016 r. Ostatnia edycja: 2020- 11- 30.\]
ERDDAP™ jest serwerem danych, który daje użytkownikom prosty, spójny sposób pobierania podzbiorów danych naukowych w formie podręcznej i tabelarycznej we wspólnych formatach plików oraz tworzenia wykresów i map.ERDDAP™działa z danym zbiorem danych jako grupa wielowymiarowych zmiennych zawiązanych (np. dane satelitarne lub modelowe) lub jako tabela podobna do bazy danych (z kolumną dla każdego typu informacji i wierszem dla każdej obserwacji) .ERDDAP™jest Programy Free i Open Source, więc każdy możepobierać i instalowaćERDDAP™służyć ich danych.
Aby dodać zestaw danych doERDDAP™instalacji,ERDDAP™administrator musi dodać fragment XML opisujący zbiór danych do pliku o nazwiedatasets.xml. (Jest.szczegółowa dokumentacjadatasets.xml.) Chociaż możliwe jest wygenerowanie części XML dladatasets.xmlcałkowicie ręcznie,ERDDAP™pochodzi z narzędzia o nazwie GenerateDatasetsXml które mogą wygenerować przybliżony szkic fragmentu XML potrzebnego dla danego zbioru danych w oparciu o pewne źródło informacji o zbiorze danych.
Pierwsza rzecz GenerateDatasets Xml pyta jaki rodzaj zbioru danych chcesz utworzyć. GenerateDatasets Xml ma specjalną opcję, EDDTableFromEML , który wykorzystuje informacje wJęzyk metadanych ekologicznych (EML) Plik XML do wygenerowania części XML dladatasets.xmldo tworzeniaPliki EDDTableFromAsciiFileszbiór danych z każdej tabeli danych w pliku EML. Działa to bardzo dobrze w przypadku większości plików EML, głównie dlatego, że pliki EML doskonale przechowują wszystkie niezbędne metadane dla zbioru danych w formacie easy- to- work- with. Informacje, które GenerateDatasetsXml potrzebuje do tworzenia zbiorów danych są w pliku EML, w tym adres URL pliku danych, który GenerateDatasetsXml pobiera, przetwarza i porównuje do opisu w pliku EML. (Wiele grup zrobiłoby dobrze przechodząc na EML, który jest świetnym systemem dokumentowania każdego zbioru danych naukowych, a nie tylko danych ekologicznych. I wiele grup, które tworzą schematy XML byłoby dobrze wykorzystać EML jako studium przypadku dla schematów XML, które są jasne, do punktu, nie nadmiernie głębokie (tj. zbyt wiele poziomów) i łatwe dla ludzi i komputerów do pracy.)
Pytania
Oto wszystkie pytania GenerateDatasets Xml zapyta, z komentarzami o to, jak należy odpowiedzieć, jeśli chcesz przetwarzać tylko jeden plik EML lub partię plików EML:
-
Który typ EDDType? Jeśli chcesz przetworzyć tylko jeden plik, odpowiedz: EDDTableFromEML Jeśli chcesz przetworzyć grupę plików, odpowiedz: EDDTableFromEMLPartii
-
Katalog do przechowywania plików? Podaj nazwę katalogu, który będzie używany do przechowywania pobranych plików EML i / lub danych. Jeśli katalog nie istnieje, zostanie utworzony.
-
(Dla EDDTableFromeML Tylko) URL EML czy lokalna nazwa pliku? Podaj adres URL lub lokalną nazwę pliku EML.
-
(Wyłącznie dla EDDTableFromEMLPartii) Dyr EML (URL lub lokalny) ? Podaj nazwę katalogu z plikami EML (URL lub dir lokalny) . Na przykład: http://sbc.lternet.edu/data/eml/files/
-
(Wyłącznie dla EDDTableFromEMLPartii) Regeks nazwy pliku? Wprowadź wyrażenie regularne, które będzie używane do identyfikacji żądanych plików EML w katalogu EML. Na przykład: Mamba, Związek / randka
-
Użyj lokalnych plików, jeśli są obecne (prawda|false) ? Wpisz true, aby używać istniejących lokalnych plików EML i plików danych, jeśli istnieją. Wprowadź false, aby zawsze ponownie pobrać pliki EML i / lub dane.
-
dostępne Do? Jeśli chcesz, aby nowe zbiory danych były prywatneERDDAP, podać nazwę grupy (s) który będzie miał dostęp. Zalecane dla grup LTER: połączyć "lter" plus grupa, np. lter Sbc. Jeśli wprowadzisz "null", nie będzie<dostępne Do & gt; znacznika w wyjściu. Patrzdostępne Do.
-
lokalne Strefa czasowa (np. USA / Pacyfik) ? Jeśli zmienna czasu wskazuje, że posiada lokalne wartości czasu, ta strefa czasu zostanie przydzielona. To musi być wartość zLista kolumn TZ nazw stref czasowych. Zwróć uwagę na wszystkie nazwy "US /" na końcu listy. Jeśli później okaże się to nieprawidłowe, można zmienićtime\_zonew kawałkudatasets.xml.
EML plusERDDAP™to świetna kombinacja, ponieważERDDAP™może dać użytkownikom bardziej bezpośredni dostęp do bogactwaSieć wiedzy na rzecz biozłożoności (KNB) orazDługoterminowe badania ekologiczne (PÓŹNIEJ) dane i pomoc te projekty spełniają rząd USAPubliczny dostęp do wyników badań (PARR) wymaganiapoprzez udostępnienie danych za pośrednictwem usługi internetowej. Ponadto EML plusERDDAP™wydaje się być wielkim pomostem między naukowcami w sferze akademickiej / finansowanej przez NSF a naukowcami w agencji federalnej (NOAA, NASA, USGS) królestwo.
Zobaczrozdział dotyczący uzyskania dodatkowego wsparcia.
Szczegóły dotyczące projektu
Oto szczegóły projektu opcji EDDTableFromEML w GenerateDatasetsXml. Niektóre są związane z różnicami w sposobie EML iERDDAP™robić rzeczy i jak GenerateDatasets Xml zajmuje się tymi problemami.
Jedna tabela danych staje się jednąERDDAP™Zestaw danych
Jeden plik EML może mieć wiele<dane Tabela & gt; s.ERDDAP™sprawia, że jedenERDDAP™zbiór danych według tabeli danych EML. WdatasetIDdla zbioru danych jest Nazwa EML \ _ t Tabela Numer (kiedy nazwa EML jest tekstem) lub system\ _ EML Nazwa \ _ t Tabela Numer (gdy nazwa EML jest numerem) . Na przykład, tabela # 1 w pliku knb- lter- sbc.28 staje sięERDDAP™ datasetID= knb\ _ lter\ _ sbc\ _ 28\ _ t1,
EML wobec CF + ACDD
Prawie wszystkie metadane w plikach EML dostają się doERDDAPale w innym formacie.ERDDAP™wykorzystujeCForazACDDstandardy metadanych. Są to uzupełniające się systemy metadanych, które wykorzystują klucz = pary wartości dla globalnych metadanych i dla metadanych każdej zmiennej. Tak, reprezentacja EML metadanych jest milsza niż reprezentacja CF + ACDD. Nie sugeruję, by użyć reprezentacji CF + ACDD jako zastępstwa dla EML. Proszę myśleć o CF + ACDD jako część mostu ze świata EML doOPeNDAP/ CF / ACDD World.
Małe zmiany
ERDDAP™wprowadza wiele drobnych zmian. Na przykład:ERDDAP™wykorzystuje EML nie-DOIzastępca Identyfikator plus numer tabeliERDDAP™ datasetID, ale nieznacznie zmienia alternatywny Identyfikator, aby to poprawna nazwa zmiennej w większości języków komputerowych, np. dane knb- lter- sbc.33 Tabela # 1 staje się knb\ _ lter\ _ sbc\ _ 33\ _ t1.
DocBook
EML wykorzystuje system znakowania DocBook, aby zapewnić strukturę bloków tekstu w plikach EML. CF i ACDD wymagają, aby metadane były prostym tekstem. GenerateDatasets Xml przekształca zaznaczony tekst w zwykły tekst, który wygląda jak sformatowana wersja tekstu. Znaczniki inline są oczyszczone nawiasami kwadratowymi, np.,\[podkreślone\]i wyszedł w zwykłym tekście.
Pliki danych
Ponieważ tabela danych EML zawiera adres URL rzeczywistego pliku danych, GenerateDatasets Xml:
- Pobierz plik danych.
- Przechowuj go w tym samym katalogu co plik EML.
- Przeczytaj dane.
- Porównaj opis danych w EML z rzeczywistymi danymi w pliku.
- Jeśli GenerateDatasets Xml znajduje różnice, zajmuje się nimi, lub pyta operatora, czy różnice są w porządku, lub zwraca komunikat błędu. Szczegóły znajdują się w różnych punktach poniżej.
.zipPliki danych
Jeżeli odnośny plik danych jest.zipplik musi zawierać tylko jeden plik. Ten plik zostanie użyty doERDDAP™zestaw danych. Jeśli istnieje więcej niż 1 plik.ERDDAP™odrzuci ten zestaw danych. W razie potrzeby można to zmodyfikować. (W praktyce wszystkie pliki SBC LTER zip mają tylko jeden plik danych.)
Typ obiektu
Jeżeli przechowywanie kolumny Typ nie jest określony,ERDDAP™wykorzystuje swoje najlepsze przypuszczenia na podstawie danych w pliku danych. To działa całkiem nieźle.
Jednostki
ERDDAP™zastosowaniaUDUNITSformatowanie dla jednostek. GenerateDatasets Xml jest w stanie przekonwertować jednostki EML doUDUNITSCzysty 95% czasu. Pozostałe 5% prowadzi do czytelnego opisu jednostek, np. "biomassDensityUnitPerAbundanceUnit" w EML staje się "jednostka gęstości biomasy na jednostkę obfitości" wERDDAP. Technicznie to nie jest dozwolone. W tych okolicznościach nie jest tak źle.\[W razie potrzeby, jednostki, które nie mogą być wykonaneUDUNITSkompatybilny może być przeniesiony do atrybutu komentarza zmiennej.\]
EML wersja 2.1.1
To wsparcie dla plików EML v2.1.1 zostało dodane do GenerateDatasets Xml w 2016 r., mając nadzieję, że w społeczności EML nastąpi pewien stopień absorpcji. Od 2020 roku tak się nie stało. WERDDAP™deweloperzy chętnie dodają wsparcie dla nowszych wersji EML, ale tylko wtedy, gdy nowe funkcje będą rzeczywiście używane. Proszę e-mailerd.data at noaa.govjeśli chcesz wsparcia dla nowszych wersji EML i rzeczywiście korzystać z tej funkcji.
Problemy z plikami EML
Istnieją pewne problemy / problemy z plikami EML, które powodują problemy, gdy klient oprogramowania (np. opcja EDDTableFromEML w GenerateDatasetsXML) próbuje interpretować / przetwarzać pliki EML.
- Chociaż jest kilka problemów wymienionych tutaj, są to głównie małe, rozwiązywalne problemy. Ogólnie rzecz biorąc, EML to wspaniały system i z przyjemnością z nim pracuję.
- Są one w przybliżeniu posortowane od najgorszego / najczęściej do najmniej złego / mniej powszechne.
- Większość jest związana z małymi problemami w określonych plikach EML (które nie są winą EML) .
- Większość można naprawić poprzez proste zmiany w pliku EML lub pliku danych.
- Biorąc pod uwagę fakt, że ludzie z ITER budują sprawdzacz EML, aby sprawdzić ważność plików EML, dodałem poniżej kilka sugestii dotyczących funkcji, które mogą być dodane do sprawdzania.
Oto zagadnienia:
Oddzielne kolumny daty i czasu
Niektóre pliki danych mają oddzielne kolumny dla daty i czasu, ale bez ujednoliconej daty + kolumny czasu. Aktualnie, GenerateDatasets Xml tworzy zbiór danych z tymi oddzielnymi kolumnami, ale nie jest idealny, ponieważ:
- Najlepiej, jeśli dane się zestawią.ERDDAP™mają połączoną datę + kolumna czasu wywołana"time".
- Często zbiór danych nie załaduje sięERDDAP™ponieważ"time"kolumna nie zawiera danych date + time.
Istnieją dwa możliwe rozwiązania:
- Edytuj plik danych źródłowych, aby dodać nową kolumnę w datafile (i opisać to w EML) gdzie kolumny daty i czasu są łączone w jedną kolumnę. Następnie uruchom ponownie GenerateDatasets Xml więc znajduje nową kolumnę.
- UżyjZmienne pochodnefunkcja wERDDAP™do zdefiniowania nowej zmiennej wdatasets.xmlktóra jest tworzona przez połączenie daty i kolumn czasowych. Jeden z przykładów dotyczy konkretnie tej sytuacji.
Niespójne nazwy kolumn
Pliki EML zawierają listę kolumn i nazw plików danych. Niestety, często różnią się od nazw kolumn w rzeczywistym pliku danych. Normalnie kolejność kolumn w pliku EML jest taka sama jak kolejność kolumn w pliku danych, nawet jeśli nazwy różnią się nieznacznie, ale nie zawsze. GenerateDatasets Xml próbuje dopasować nazwy kolumn. Kiedy nie może (często) , to zatrzyma, pokaże Ci EML / nazwy plików, i zapytaj, czy są one prawidłowo wyrównane. Jeśli wprowadzisz 's' do pominięcia tabeli, GeneratedDatasetsXml wydrukuje komunikat o błędzie i przejdzie do następnej tabeli. Rozwiązaniem jest zmiana błędnych nazw kolumn w pliku EML, aby dopasować nazwy kolumn w pliku danych.
Różne kolejność kolumn
Istnieje kilka przypadków, w których EML określił kolumny w innej kolejności niż w pliku danych. GenerateDatasets Xml zatrzyma się i zapyta operatora, czy zapałki są w porządku lub czy zestaw danych powinien zostać pominięty. Jeśli zostanie pominięty, w pliku wyników pojawi się komunikat błędu, np.:
<-- SKIPPED (USUALLY BECAUSE THE COLUMN NAMES IN THE DATAFILE ARE IN
A DIFFERENT ORDER OR HAVE DIFFERENT UNITS THAN IN THE EML file):
datasetID=knb\\_lter\\_sbc\\_17\\_t1
dataFile=all\\_fish\\_all\\_years\\_20140903.csv
The data file and EML file have different column names.
ERDDAP™ would like to equate these pairs of names:
SURVEY\\_TIMING = notes
NOTES = survey\\_timing
-->
Rozwiązaniem jest ustalenie kolejności kolumn w tych plikach EML tak, aby pasowały do kolejności w plikach danych.
Byłoby miło, gdyby kontroler EML sprawdził, czy kolejność kolumn i kolumn w pliku źródłowym odpowiada kolejności kolumn i kolumn w pliku EML.
Nieprawidłowe numery HeaderLines
Kilka danych Tabele nieprawidłowo określają numer HeaderLines = 1, np.... sbc.4011. Powoduje toERDDAP™odczytywanie pierwszego wiersza danych jako nazw kolumn. Próbowałem ręcznie przeszukać wszystkie te tabele. Są one oczywiste, ponieważ niezrównane nazwy coli źródłowych są wartościami danych. A jeśli są pliki, które nieprawidłowo mają numHeaderLines = 0, mój system nie czyni tego oczywistym. Oto przykład z pliku błędów SBC LTER:
<-- SKIPPED (USUALLY BECAUSE THE COLUMN NAMES IN THE DATAFILE ARE IN
A DIFFERENT ORDER OR HAVE DIFFERENT UNITS THAN IN THE EML file):
datasetID=knb\\_lter\\_sbc\\_3017\\_t1
dataFile=MC06\\_allyears\\_2012-03-03.txt
The data file and EML file have different column names.
ERDDAP™ would like to equate these pairs of names:
2008-10-01T00:00 = timestamp\\_local
2008-10-01T07:00 = timestamp\\_UTC
2.27 = discharge\\_lps
-999.0 = water\\_temperature\\_celsius
-->
Więc błąd może pojawić się jak GenerateDatasets Xml uważa, że pierwsza linia z danymi w pliku (np. z 2008-10-01T00: 00 itp.) jest linią z nazwami kolumn (jakby 2008-10-01T00: 00 były nazwą kolumny) .
Byłoby miło, gdyby sprawdzacz EML sprawdził wartość numHeaderLines.
numHeaderLines = 0
Niektóre pliki źródłowe nie mają nazw kolumn.ERDDAP™akceptuje, że jeżeli EML opisuje tę samą liczbę kolumn.
Moim zdaniem to wydaje się bardzo niebezpieczne. Mogą być kolumny w innej kolejności lub z różnymi jednostkami (zob. poniżej) i nie ma sposobu, aby złapać te problemy. Jest znacznie lepiej, jeśli wszystkie pliki ASCII mają wiersz z nazwami kolumn.
DateTime Format Strings
EML ma standardowy sposób na opisanie formatów daty. ale istnieją znaczne różnice w jego stosowaniu w plikach EML. (Wcześniej się myliłem. Widzę dokumentację EML dla formatString, która wydaje się pasować doJavaSpecyfikacja DateTimeFormatter, ale który brakuje ważnych wytycznych dotyczących jego stosowania, w wyniku czego formatString jest często / zazwyczaj niewłaściwie używane.) Istnieje kilka przypadków nieprawidłowego powielania listu i / lub niestandardowego formatowania. To nakłada nieuzasadnione obciążenie na klientów, zwłaszcza klientów oprogramowania, takich jak GenerateDatasetsXml. GenerateDatasets Xml próbuje przekształcić nieprawidłowo zdefiniowane formaty w plikach EML w format daty / czasu, któryERDDAP™wymaga, który jest prawie identyczny zJava/ Specyfikacja formatu czasowego Joda, ale jest nieco bardziej wyrozumiała.
Byłoby miło, gdyby kontrola EML wymagała ścisłego przestrzeganiaJavaJodaERDDAPSpecyfikacja jednostek czasowych i sprawdzenie, czy wartości czasowe daty w tabeli danych mogą być prawidłowo analizowane z określonym formatem.
DateTime But No Time Zone
GenerateDatasets Xml szuka kolumny z datą Czas i określona strefa czasowa (alboZulu: od jednostek czasowych kończących się w 'Z' lub nazwa kolumny lub definicja atrybutu, która zawiera "gmt" lub "utc", lub lokalną: od "local" w nazwie kolumny lub definicji atrybutu) . Również akceptowalny jest plik z kolumną daty, ale bez kolumny czasu. Akceptowalny jest również plik bez informacji o dacie i czasie.
GenerateDatasets Xml traktuje wszystkie "lokalne" czasy jako pochodzące ze strefy czasowej, którą można określić dla danej partii plików, np. dla SBC LETER, użyj US / Pacific. Informacje są czasami w komentarzach, ale nie w formie, która jest łatwa do rozgryzienia przez program komputerowy.
Pliki, które nie spełniają tych kryteriów są odrzucane z wiadomością "NO GOOD DATE (CZAS) Zmartwychwstanie ". Częstymi problemami są:
- Jest kolumna z datami i kolumna z czasem, ale nie data Kolumna czasu.
- Są jednostki czasowe, ale strefa czasowa nie jest określona.
Inne uwagi: Jeśli jest dobra data + czas z kolumną strefy czasowej, ta kolumna zostanie nazwana"time"wERDDAP.ERDDAP™wymaga, aby dane kolumny czasu były zrozumiałe / zamienne doZulu/ UTC / GMT time zone dateTimes.\[Moim zdaniem: użycie czasu lokalnego i różnych formatów daty / czasu (2-cyfrowe lata! mm / dd / yy vs dd / mm / yy vs...) w plikach danych zmusza użytkownika końcowego do wykonywania skomplikowanych konwersji doZuluczas w celu porównania danych z jednego zbioru danych z danymi z innego. Więc...ERDDAP™standaryzuje wszystkie dane czasowe: Dla czasów strun,ERDDAP™zawsze używa ISO 8601: 2004 (E) standardowy format, na przykład, 1985-01-02T00: 00: 00Z. Dla czasów liczbowych,ERDDAP™zawsze używa"seconds since 1970-01-01T00:00:00Z".ERDDAP™zawsze używaZulu (UTC, GMT) strefa czasowa mająca na celu usunięcie trudności związanych z pracą w różnych strefach czasowych oraz czas standardowy w porównaniu z czasem dziennym. GenerateDatasets Xml poszukuje kolumny EML z datą + czasemZulu. Jest to trudne, ponieważ EML nie używa formalnego słownictwa / systemu (jakJava/ format czasu Joda) w celu określenia danych Format czasu: Jeżeli istnieje col o liczbowych wartościach czasu (np.,Matlabrazy) orazZulustrefa czasowa (lub tylko daty, bez kolumn czasowych) , jest stosowany jako"time". Jeśli istnieje col z datą i czasem danych, za pomocąZulustrefa czasowa, jest stosowana jako"time"i wszelkie inne daty lub kolumny czasowe są usuwane. Inne, jeśli col z informacji tylko data jest znaleziona, jest używany jako"time"zmienna (bez strefy czasowej) . Jeżeli istnieje kolumna danych i kolumna czasu i brak połączonej daty Kolumna czasu, zbiór danych jest REJECTED - ale zbiór danych może być przydatny poprzez dodanie połączonej daty Kolumna czasowa (najlepiej,Zulustrefa czasowa) do pliku datafile i dodanie jego opisu do pliku EML. PRZYKŁAD SBC: https://sbclter.msi.ucsb.edu/external/InformationManagement/eml\_2018\_erddap/ data Table # 2.
Byłoby miło, gdyby EML / LTER wymagała włączenia kolumny zZulu (UTC, GMT) czasy strefy czasowej we wszystkich odpowiednich plikach danych źródłowych. Następnie najlepiej jest dodać system do EML, aby określićtime\_zoneatrybut przy użyciu nazw standardowych (odKolumna TZ) .
Brakmissing\_value
Niektóre kolumny używająmissing\_valueale nie wymieniaj go w metadanych EML, np., opady\ _ mm w knb- lter- sbc.5011 wykorzystuje -999. Jeśli w EML nie podano brakującej wartości, GenerateDatasetsXml automatycznie wyszukuje wspólne brakujące wartości (np. 99, -99, 999, -999, 9999, -9999 itp.) i tworzy te metadane. Ale inne zaginięciamissing\_values nie są złowione.
Byłoby miło, gdyby sprawdzacz EML szukał zaginięcia.missing\_valueb.
Małe problemy
Jest wiele małych problemów. (pisownia, interpunkcja) które prawdopodobnie znajdą tylko ludzie kontrolujący każdy zestaw danych.
Byłoby miło, gdyby sprawdzacz EML szukał błędów pisowni i gramatyki. Jest to trudny problem, ponieważ słowa w nauce są często oznaczane przez warcaby. Prawdopodobnie potrzebna jest ludzka edycja.
Nieprawidłowe znaki Unicode
Część zawartości EML zawiera nieprawidłowe znaki Unicode. Są to prawdopodobnie znaki z karty Windows, które zostały nieprawidłowo skopiowane i wklejone do plików EML UTF- 8. GenerateDatasets Xml oczyszcza te znaki np.,\[# 128\], więc są łatwe do znalezienia wERDDAP™ datasets.xmlplik.
Byłoby miło, gdyby sprawdził to EML. Łatwo ją znaleźć i łatwo naprawić.
Różne jednostki kolumnowe] (# differentColumnUnits)
Niektóre tabele EML definiują kolumny, które są niezgodne z kolumnami w pliku danych, w szczególności dlatego, że mają różne jednostki. GenerateDatasets Xml oznacza to. Od operatora zależy, czy różnice są w porządku, czy nie. Pojawiają się one w pliku błędów jako "SKIPPED" tabele danych. PRZYKŁAD w pliku błędów SBC LTER:
< SKIPPED (USUALLY BECAUSE THE COLUMN NAMES IN THE DATAFILE ARE IN
A DIFFERENT ORDER OR HAVE DIFFERENT UNITS THAN IN THE EML file):
datasetID=knb\\_lter\\_sbc\\_3\\_t1
dataFile=SBCFC\\_Precip\\_Daily\\_active\\_logger.csv
The data file and EML file have different column names.
ERDDAP™ would like to equate these pairs of names:
Daily\\_Precipitation\\_Total\\_mm = Daily\\_Precipitation\\_Total\\_inch
Flag\\_Daily\\_Precipitation\\_Total\\_mm = Flag\\_Daily\\_Precipitation\\_Total\\_inch
-->
Byłoby miło, gdyby kontroler EML sprawdził, czy jednostki pasują. Niestety, jest to prawdopodobnie niemożliwe do złapania, a następnie do rozwiązania bez kontaktu z twórcą zbioru danych, biorąc pod uwagę, że plik źródłowy nie zawiera jednostek. Rozbieżność na powyższym przykładzie była zauważalna tylko dlatego, że jednostki zostały włączone do nazwy kolumny źródłowej i nazwy kolumny EML. Ile innych tabel danych ma ten problem, ale są niewykrywalne?
Różne wersje EML
GenerateDatasets Xml jest przeznaczony do pracy z EML 2.1.1. Inne wersje EML będą działać w takim stopniu, że pasują do 2.1.1 lub że GenerateDatasetsXml ma specjalny kod do czynienia z nim. To rzadki problem. Kiedy to nastąpi, rozwiązaniem jest przekształcenie plików do EML 2.1.1, lub wysłanie pliku EML doerd.data at noaa.gov, więc mogę dokonać zmian w GenerateDatasets Xml do radzenia sobie z różnicami.
Bob dodał obsługę plików EML do GenerateDatasets Xml w 2016 r., mając nadzieję, że w społeczności EML nastąpi pewien stopień absorpcji. Od 2020 roku tak się nie stało. Bob chętnie doda wsparcie dla nowszych wersji EML, ale tylko wtedy, gdy nowe funkcje będą rzeczywiście używane. Proszę e-mailerd.data at noaa.govjeśli chcesz wsparcia dla nowszych wersji EML i rzeczywiście korzystać z tej funkcji.
Problem z parkowaniem pliku danych
Rzadko można odrzucić tabelę danych z błędem "nieoczekiwana liczba pozycji na linii # 120 (obserwowane = 52, spodziewane = 50) "Taki komunikat błędu oznacza, że linia w datafile miała inną liczbę wartości niż inne linie. To może być problem wERDDAP™ (na przykład, niepoprawnie odczytywanie pliku) lub w aktach. PRZYKŁAD SBC: https://sbclter.msi.ucsb.edu/external/InformationManagement/eml\_2018\_erddap/ dataTable # 3, see datafile = LTER\ _ monthly\ _ bottledata\ _ registered\ _ stations\ _ 20140429.txt