DSPL steht für Dataset Publishing Language (Dataset-Veröffentlichungssprache). Es handelt sich um ein Darstellungsformat. für beide Metadaten (Informationen zum Datensatz, z. B. Name und Anbieter sowie die darin enthaltenen und angezeigten Konzepte) und Daten von Datasets. Datasets, die in diesem Format beschrieben werden, können in die Google Public Data Explorer, einem Tool, mit dem Sie den gesamten Daten.
Hinweis: Wenn Sie Daten in Google Public Data hochladen möchten, das Tool zum Hochladen öffentlicher Daten verwenden, benötigen Sie ein Google-Konto.
Dieses Dokument richtet sich an Dateninhaber, die möchten, dass ihre Inhalte die im Public Data Explorer verfügbar sind. Sie gehen über das Tutorial hinaus, indem sie tiefer in die Details des DSPL-Schemas und der unterstützten Funktionen. Nur eine grundlegende Vertrautheit von XML wird angenommen, wobei Kenntnisse über relationale Datenbanken auch nützlich sind.
Es ist zwar keine Voraussetzung, aber wir empfehlen Ihnen, sich die Anleitung durchzulesen. Sie ist kürzer und einfacher zu verstehen, bevor Sie sich dieses Dokument ansehen.
Übersicht
Ein DSPL-Dataset ist eine ZIP-Datei, die eine XML-Datei und eine Reihe von CSV-Dateien Dateien. Die CSV-Dateien sind einfache Tabellen, die die Daten des Datasets enthalten, während die XML-Datei die Metadaten des Datasets beschreibt. Letzteres beinhaltet Informationsmetadaten wie Beschreibungen von Messgrößen sowie strukturelle Metadaten wie Referenzen zwischen Tabellen. Diese Metadaten können auch unerfahrene Nutzende Ihre Daten untersuchen und visualisieren.
Prozess
Im Allgemeinen gehen Sie zum Erstellen eines DSPL-Datasets folgendermaßen vor (einige Schritte können parallel ablaufen):
- Erstellen Sie Ihre DSPL-XML-Datei.
- Identifizieren Sie alle externen Datenquellen, die Sie in Ihrem Dataset verwenden möchten.
- Definieren Sie Ihre Konzepte, Segmente und (optional) Themen. Iterativ aktualisieren Sie den Inhalt Ihrer DSPL-Datei.
- Exportieren Sie die Quelldaten in CSV-Dateien.
- Erstellen Sie ein DSPL-Dataset.
- Senden Sie das Dataset an Google.
XML-Struktur
Übersicht
Die DSPL-XML-Datei definiert die Metadaten des Datasets, einschließlich strukturelle Beziehungen zwischen Konzepten, Slices, Themen und Tabellen. Obwohl es möglich ist, diese Datei manuell zu erstellen, und Skripts können den Prozess erheblich vereinfachen. Beispiel einer DSPL-Datei in einem neuen .
Die Datei enthält eine Reihe von Abschnitten, die in der Tabelle zusammengefasst sind. unten. Im Anschluss an die Tabelle werden die einzelnen Details.
Abschnitt | Zusammenfassung | Weitere Informationen |
---|---|---|
Header und Importe | Das übergeordnete Element für alle anderen Elemente des Datasets. Enthält die Ziel-Namespace (d.h. Kennung) für das Dataset zusammen mit dem Namespaces aller importierten Datasets. | Dokumentation |
Dataset-Informationen | Der Name, die Beschreibung und die URL des Datasets. | Dokumentation |
Informationen zum Anbieter | Der Name, die Beschreibung und die URL des Dataset-Anbieters. | Dokumentation |
Konzepte |
Definitionen von „Dingen“ die im Dataset angezeigt werden (z.B. Länder, Arbeitslosenquote, Geschlecht usw.) Jedes Konzept hat eine eindeutige Kennung, auf die von Segmente und Tabellen. |
Dokumentation |
Segmente |
Kombinationen von Konzepten, für die in der Tabelle statistische Daten vorhanden sind. Dataset. Jedes Segment enthält Dimensionen und Messwerte. Slices verweisen auf Konzepte und auch Tabellen, die die tatsächlichen Daten. Jedes Segment hat eine eindeutige Kennung, auf die vom Tabellen mit den tatsächlichen Daten. |
Dokumentation |
Tabellen | Definieren Sie die Daten für Konzepte und Segmente. Konzepttabellen enthalten Aufzählungen und Slice-Tabellen enthalten statistische Daten. Tabellen sind definiert in der XML-Datei und verweisen Sie auf CSV-Dateien, die die tatsächlichen Daten enthalten. | Dokumentation |
Themen | Kategorien zum Organisieren von Dataset-Konzepten. Diese sind zwar nicht erforderlich, kann sehr hilfreich für Nutzende sein, die in Ihren Daten navigieren. | Dokumentation |
Header und Importe
Public Data-Namespace deklarieren
Ein DSPL-Dataset beginnt mit einem übergeordneten <dspl>
-Element.
Dieser wird verwendet, um alle Dataset-Informationen einzuschließen und um etwaige
Namespaces, die in der gesamten Datei verwendet werden. Hier ein Beispiel:
<?xml version="1.0" encoding="UTF-8"?> <dspl targetNamespace="http://www.example.com/mystats" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.google.com/dspl/2010" > ... </dspl>
Ein Namespace ist eine eindeutige Kennung, die einem Namespace zugeordnet werden kann.
XML-Schema (eine Reihe von XML-Elementen und -Attributen). Die
targetNamespace
stellt einen URI bereit, der das Dataset identifiziert.
Dieser URI muss nicht auf eine tatsächliche Ressource verweisen, ist aber eine gute Lösung.
dass der URI zu einem Dokument führt, in dem Ihr Content beschrieben wird, oder
Dataset.
Sie müssen keine targetNamespace
angeben. Wenn Sie
Andernfalls wird beim Import automatisch eine ID generiert.
.
Auf das Attribut targetNamespace
folgt eine Reihe von
xmlns
-Attribute, die andere zu verwendende XML-Schemas angeben
in der Datei. Jede DSPL-Datei muss das Google Public Data-Schema,
deren URI "http://schemas.google.com/dspl/2010" lautet und verwenden sie als
Standard-Namespace. Außerdem sollte sie das W3-Standard-XML-Schema enthalten.
identifiziert durch "http://www.w3.org/2001/XMLSchema-instance". Als
wie im nächsten Abschnitt beschrieben, können Sie weitere Namespaces hinzufügen,
Daten aus anderen Datasets.
Andere Dataset-Namespaces importieren
Datasets können Definitionen und Daten aus anderen Datasets wiederverwenden. Google für bietet eine Reihe von grundlegenden Datasets, mit denen Konzepte häufig definiert werden. die in den Nutzerdaten erscheinen. Die meisten Datasets benötigen beispielsweise ein Konzept, Jahre darstellen. Anstatt ein neues Konzept zu definieren, können Sie das Jahr Konzept aus "http://www.google.com/publicdata/dataset/time" Dataset. In der Canonical- finden Sie auf der Seite „Konzepte“ weitere Informationen.
Um ein externes Dataset zu verwenden, fügen Sie das Element <import>
direkt nach der Namespace-Deklaration in der DSPL-Datei
Datenraum, den Sie importieren:
<import namespace="http://www.google.com/publicdata/dataset/google/time"/>
Fügen Sie dann den importierten Namespace hinzu (in diesem Fall
time="http://www.google.com/publicdata/dataset/google/time"
)
in die Namespace-Deklaration oben in Ihrer Datei ein:
<?xml version="1.0" encoding="UTF-8"?> <dspl targetNamespace="http://www.stats-bureau.com/mystats" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.google.com/dspl/2010" xmlns:time="http://www.google.com/publicdata/dataset/google/time" > <import namespace="http://www.google.com/publicdata/dataset/google/time"/>
Ihre DSPL-Datei kann jetzt auf Elemente aus den Google Public Data verweisen. Zeit-Dataset. Wiederholen für jedes Dataset, auf das Sie verweisen möchten.
Auf Inhalte in externen Datasets verweisen
Nachdem Sie ein weiteres Dataset importiert haben, müssen Sie in der Lage sein,
Konzepte, Slice und Daten
aus diesem Dataset. Dazu können Sie
Referenzen des Formats prefix:other_id
, wobei
prefix
ist das Präfix, das für den Namespace des
externen Datasets.
Hier ist ein Beispiel für einen Verweis auf das Konzept year
von
das Dataset time
(oben beschrieben):
<slices> <slice id="country_slice"> <dimension concept="country"/> <dimension concept="time:year"/> <metric concept="population"/> <table ref="country_slice_table"/> </slice> ... </slices>
Dataset-Informationen
Das Element <info>
enthält eine Beschreibung
über das Dataset. Ein Beispiel und Details zu den relevanten XML-Elementen sind
(siehe unten).
Beispiel
<info> <name> <value>Unemployment Rates</value> </name> <description> <value>Worldwide unemployment rates by region</value> </description> <url> <value>http://www.example.com/mystats/info.html</value> </url> </info>
Elemente
Element | Erforderlich? | Beschreibung |
---|---|---|
<info> |
Ja | Umfasst alle beschreibenden Informationen zum Dataset. Enthält
die untergeordneten Elemente <name> ,
<description> und <url> . |
<name> |
Ja | Untergeordnet unter <info> . Enthält das untergeordnete Element
<value> für den Namen des
Dataset. |
<description> |
Optional | Untergeordnet unter <info> . Enthält das untergeordnete Element
<value> mit einer Textbeschreibung des
Dataset. |
<url> |
Ja | Untergeordnet unter <info> . Ein Link zu einer URL mit weiteren
Informationen über das Dataset. |
Informationen zum Anbieter
Das Element <provider>
listet Informationen zum
Dataset-Anbieter. Ein Beispiel und Details zu den relevanten XML-Elementen sind
(siehe unten).
Beispiel
<provider> <name> <value>Bureau of Statistics</value> </name> <url> <value>http://www.example.com</value> </url> </provider>
Elemente
Element | Erforderlich? | Beschreibung |
---|---|---|
<provider> |
Ja | Enthält alle beschreibenden Informationen zum Dataset-Anbieter.
Enthält die untergeordneten Elemente <name> und
<url> . |
<name> |
Optional | Untergeordnet unter <provider> . Enthält das untergeordnete Element
<value> : Gibt den Namen des Datasets an
Dienstanbieter. |
<url> |
Optional | Untergeordnet unter <info> . Ein Link zu einer URL mit weiteren
Informationen zum Dataset-Anbieter. |
Konzepte
Beschreibung
Jedes Dataset enthält ein oder mehrere Konzepte. Ein Konzept ist ein Definition eines Datentyps, der in einem Dataset angezeigt wird. Ein Dataset mit Daten zur demografischen Bevölkerung könnten beispielsweise die Konzepte Land, Bundesland, Bevölkerung und Jahr. Die Datenwerte, die einer Konzept werden als Instanzen dieses Konzepts bezeichnet. Konzepte sind normalerweise im Dataset beschrieben, aber einige Konzepte (wie Zeit oder Jahr) in externen Datasets beschrieben werden.
Jedes Konzept kann ein oder mehrere Attribute haben. Eine Eigenschaft ist ein
Merkmal einer Konzeptinstanz,
die im Zeitverlauf stabil ist. Beispiel:
könnte das Länderkonzept die Eigenschaften name
,
population
und capital
.
Konzepte können auch ein oder mehrere Attribute haben. Attribute bieten Informationen auf Konzeptebene und nicht auf den einzelnen Instanzen. Für Wenn wir z. B. ein Dataset mit dem Konzept der Arbeitslosenquote hätten, könnten wir mithilfe eines Attributs bestimmen, dass es sich bei diesem Konzept um einen Prozentsatz handelt. Ein weiteres Beispiel für die häufige Verwendung von Attributen ist die Angabe von Informationen.
Beispiel
Hier ist ein Beispiel für ein Länderkonzept mit der eindeutigen ID.
country
und das Attribut name
. Die Konzept-ID kann
auf das Konzept aus
Slices und Tabellen verweist.
<concept id="country" extends="geo:location"> <info> <name><value>Country</value></name> <description> <value>My list of countries.</value> </description> </info> <type ref="string"/> <property id="name"> <info> <name><value>Name</value></name> <description> <value>The official name of the country</value> </description> </info> <type ref="string" /> </property> <property concept="geo:continent" isParent="true"/> <property id="capital" concept="geo:city" /> <table ref="countries_table" /> </concept>
Erklärung:
- Dieser Code beschreibt das Konzept „country“, das die ID enthält.
country
und die Attributename
continent
undcapital
. - Das Konzept erweitert
geo:location
, das kanonische Konzept für Standorte. Durch Verlängern vongeo:location
,country
übernimmt alle Eigenschaften und Attribute, die durch das erweiterte Konzept definiert wurden: Eigenschaftenname, Beschreibung, URL, Breiten- und Längengrad. Ganz okay dasscountry
einige dieser Attribute neu definiert und Eigenschaften, solange die Definition mit der bereitgestellten übereinstimmt des erweiterten Konzepts durch. - Das Konzept
<info>
-Element beschreibt den Schlüssel Informationen über das Konzept. Dies wird auf der Seite Landingpage im Public Data Explorer. - Das Konzept
<type>
-Element bezieht sich auf den Typ des Inhalte. In diesem Fall ist es ein String, dieser kann aber variieren. Das Konzept Die Bevölkerung hätte den Typinteger
. KonzeptEurovision winner
könnte den Typ "boolesch" haben. - Ein
<property>
-Element beschreibt jede Eigenschaft der Konzept, einschließlich seiner eindeutigen ID (id
),info
undtype
. Properties können auch auf Konzepte verweisen, um angeben, dass ihre Werte gültige Instanzen dieser Konzepte sind. -
Das Konzept verweist auf eine Datentabelle, die auf zur CSV-Datei mit den tatsächlichen Daten hinzu. Auf die Datentabelle wird verwiesen. Beispiel:
<table ref="countries_table"/>
.Wenn Ihr Konzept auf eine Tabelle verweist, muss die zugehörige Datendatei Folgendes enthalten: alle Instanzen des Konzepts. Sie können beispielsweise keine Tabelle erstellen der nur einige der im Dataset enthaltenen Länder auflistet. (Falls es eine Untergruppe von Ländern darstellt, die für Sie wichtig sind, können Sie Konzept, um sie zu beschreiben. Beispiel:
mycountries
.)
Elemente
Element | Erforderlich? | Beschreibung |
---|---|---|
<concepts> |
Ja | Element der obersten Ebene. Umfasst alle <concept>
Elemente. |
<concept> |
Ja | Identifiziert das Konzept. Der Wert des erforderlichen Attributs
id muss für das Konzept im Dataset eindeutig sein. Wenn
verweist das Konzept auf eine Konzeptdatentabelle,
id muss mit der Spaltenüberschrift übereinstimmen, die das Konzept in
in der Datentabelle. Ein extends -Attribut kann verwendet werden,
dass dieses Konzept ein anderes Konzept erweitert. Der Wert von
extends muss mit der ID eines Konzepts übereinstimmen, das im selben Konzept definiert ist.
oder die Form prefix:concept_id haben, wobei
concept_id ist die ID eines Konzepts, das in der importierten
externes Dataset, das mit prefix verknüpft ist. |
<info> |
Optional | Enthält beschreibende Informationen zum Konzept. |
<name> |
Ja | Untergeordnet unter <info> . Der Name des Konzepts. Die
untergeordnetes Element <value> enthält den Text - für
Beispiel: Country . |
<description> |
Optional | Untergeordnet unter <info> . Enthält das untergeordnete Element
<value> mit einer Textbeschreibung des
Konzept. |
<url> |
Optional | Untergeordnet unter <info> . Enthält das untergeordnete Element
<value> mit einer URL für das
Konzept. |
<pluralName> |
Optional | Untergeordnet unter <info> . Der Pluralname für die
Konzept. Das untergeordnete Element <value> enthält den Text
– z. B. Countries . |
<totalName> |
Optional | Untergeordnet unter <info> . Der Name für die Kombination aus
alle Instanzen des Konzepts. Das untergeordnete Element <value>
enthält den Text – im Fall eines country
Konzept verwenden, z. B. World . |
<type> |
Optional |
Kennzeichnet den durch das Konzept beschriebenen Inhaltstyp. Das erforderliche
Das Attribut ref hat die folgenden zulässigen Werte:
<ph type="x-smartling-placeholder">
|
<property> |
Optional |
Eine Eigenschaft des Konzepts, z. B. Eine Eigenschaft kann ein boolesches Eine Eigenschaft kann ein boolesches Eine Property kann ein verschachteltes |
<attribute> |
Optional |
Ein Attribut des Konzepts. Attribute stehen für zusätzliche
Informationen zum Konzept (z.B. Das BIP ist ein Prozentsatz). Der Wert
des erforderlichen Attributs Ein Attribut kann ein verschachteltes |
<table> |
Optional | Kennzeichnet die Datentabelle, die Daten für das Konzept enthält. Die
Der Wert des erforderlichen Attributs ref muss mit der Tabelle übereinstimmen
Die im zugehörigen <table> -Element angegebene ID. |
Segmente
Beschreibung
Ein Slice ist eine Kombination von Konzepten, für die Daten vorhanden sind. Ein Stück enthält zwei Arten von Konzeptverweisen: Dimensionen und Messwerte. Eine Dimension ist ein Konzept zum Segmentieren oder Filtern Ihre Daten. Eine Metrik hingegen beschreibt den beobachteten Wert oder die mit jedem Datenpunkt verknüpft sind.
Dimensionen sind kategorial, während Messwerte nicht kategorial, zeitvariablen, numerische Werte. Einige prototypische Beispiele folgt:
- Dimensionen: Land, Bundesland, Landkreis, Region, Jahr Monat, Geschlecht, Alterskategorie, Branchensegment
- Messwerte: Bevölkerung, BIP, Arbeitslosenquote, Alphabetisierung, Umsatz, Kosten, Preis
Beispiel
<slices> <slice id="country_slice"> <dimension concept="country"/> <dimension concept="time:year"/> <metric concept="population"/> <table ref="country_slice_table"/> </slice> ... </slices>
Erklärung:
- Dieses Segment stellt die Bevölkerung nach Land dar.
- Sie hat den Messwert
population
und die Dimensionencountry
undyear
. Jede Dimension ist ein Konzept, die bereits an anderer Stelle definiert sind. Das Konzeptcountry
und der Messwertpopulation
sind im selben Dataset wie das aktuelle Slice vorhanden. werden so referenziert:concept="country"
- Das Konzept
year
ist in der importierten Dataset-Zeit vorhanden. durch das Präfix identifiziert, das vor dem Konzeptnamen verwendet wird (year
), Beispiel:concept="time:year"
- Das Slice verweist auf eine Datentabelle, die auf die CSV-Datei verweist.
der die tatsächlichen Daten enthält. Auf die Datentabelle wird wie folgt verwiesen:
<table ref="country_slice_table"/>
(Siehe oben finden Sie Informationen zum Datasets)
Hinweis:In der Regel ist Ihr Dataset eher
sind flexibel, wenn Sie die Messwerte auf ein Minimum beschränken und stattdessen aussagekräftige
Dimensionen. Anstatt z. B. Messwerte zu erstellen,
Female Unemployment
und Male Unemployment
,
Erstellen Sie den einzelnen Messwert Unemployment
und fügen Sie die Dimension
Gender
mit den Instanzen Female
und
Male
Elemente
Element | Erforderlich? | Beschreibung |
---|---|---|
<slices> |
Ja | Element der obersten Ebene. Umfasst alle <slice>
Elemente. |
<slice> |
Optional | Kennzeichnet das Segment. Der Wert des erforderlichen Attributs
id muss für das Segment eindeutig sein. |
<dimension> |
Optional | Definiert eine Dimension des Slice, indem auf ein Konzept verwiesen wird. Die
Der Wert des erforderlichen Attributs concept muss genau übereinstimmen
die eindeutige ID des Konzepts und verwenden Sie ein gültiges Präfix, wenn das Konzept
zu einem extern importierten Dataset gehört. |
<metric> |
Optional | Definiert einen Messwert des Segments durch Verweis auf ein Konzept. Der Wert
des erforderlichen Attributs concept muss genau mit dem
eindeutige ID des Konzepts. Verwenden Sie ein gültiges Präfix, wenn das Konzept gehört.
in ein extern importiertes Dataset. |
<table> |
Ja | Kennzeichnet die Datentabelle mit den Daten für das Segment. Der Wert
des erforderlichen ref -Attributs muss mit der Tabellen-ID übereinstimmen
die im zugehörigen <table> -Element angegeben sind. |
<mapDimension> |
Optional | Untergeordnet unter <table> . Enthält die Attribute
concept und toColumn . ist der Wert der ersten
Dimension im Segment und der Wert der zweiten ist die Tabellenspalte
entspricht. |
<mapMetric> |
Optional | Untergeordnet unter <table> . Enthält die Attribute
concept und toColumn . ist der Wert der ersten
ein Messwert im Segment und der Wert der zweiten
ist die Tabellenspalte,
entspricht. |
Tabellen
Beschreibung
Der Abschnitt tables
der DSPL-Datei enthält die Daten
Tabellen, die im Dataset enthalten sind. Auf diese Tabellen kann von Konzepten oder
nach Segment unterteilt. Jedes <table>
-Element gibt die Spalten der
die Tabellen und ihre Typen und verweist auf eine CSV-Datei mit der Tabelle
Daten.
Beispiel
<tables> <table id="country_slice_table"> <column id="country" type="string"/> <column id="year" type="date" format="yyyy"/> <column id="population" type="integer"/> <data> <file format="csv" encoding="utf-8">country_slice.csv</file> </data> </table> ... </tables>
Erklärung:
- In diesem Beispiel wird die Tabelle
country_slice_table
beschrieben. Die Tabelle enthält die Spaltencountry
,year
undpopulation
- Jede Spalte in der Tabelle hat eine eindeutige ID, die durch den
Attribut „
id
“. Diese ID muss genau mit der entsprechenden Spaltenüberschrift in der zugehörigen Datendatei. - Der Wert des optionalen
type
-Attributs definiert die Daten. für jede Spalte verwenden. - Mit dem Element
<data>
wird die eigentliche CSV-Datei beschrieben. (country_slice.csv) mit den Daten für die Tabelle. Das Dateiformat ist immercsv
.
Elemente
Element | Erforderlich? | Beschreibung |
---|---|---|
<tables> |
Ja | Element der obersten Ebene. Umfasst alle <table>
Elemente. |
<table> |
Ja | Kennzeichnet die Tabelle. Der Wert des erforderlichen Attributs
id muss in der Tabelle eindeutig sein. |
<column> |
Optional |
Untergeordnet unter <table> . Informationen zu einer Spalte
die in der Tabelle enthalten sind. Enthält die folgenden Attribute:
<ph type="x-smartling-placeholder">
|
<data> |
Optional | Untergeordnet unter <table> . Die Datendatei, auf die in
in der Tabelle. Wenn der Dateiname in Form einer URL vorliegt
(z.B. http://... ), wird die Datei über den
entsprechendes Protokoll (HTTP, HTTPS oder FTP) Andernfalls wird eine Datei
mit diesem Namen
mit dem Dataset gebündelt werden.
Der Wert des erforderlichen Attributs format lautet
immer csv . Obwohl das Attribut encoding
optional ist, müssen Ihre CSV-Dateien UTF-8-codiert sein. |
Themen
Beschreibung
Mit Topics werden Konzepte hierarchisch klassifiziert, sodass Nutzende durch Ihr Dataset zu durchsuchen.
Das Element <topics>
sollte direkt vor dem Tag
<concepts>
-Element in Ihrer DSPL-Datei. (Die Reihenfolge
Elemente wichtig ist, und Sie können Ihr Dataset möglicherweise nicht hochladen,
Elemente in der falschen Reihenfolge angezeigt werden.) Die Verwendung von Themen erfolgt über die
Konzeptdefinition.
Beispiel
Hier ist ein Beispiel für eine Themendefinition:
<topics> <topic id="population_indicators"> <info> <name> <value>Population indicators</value> </name> </info> </topic> ... </topics>
...und hier ist ein Beispielverweis auf dieses Thema aus einem Konzept:
<concept id="population"> <info> <name> <value>Population</value> </name> <description> <value>Size of the resident population.</value> </description> <topic ref="population_indicators"/> <type ref="integer"/> </concept>
Themen können verschachtelt sein und ein Konzept kann auf mehr als ein Thema verweisen.
Element definition
Element | Erforderlich? | Beschreibung |
---|---|---|
<topics> |
Ja | Element der obersten Ebene. Umfasst alle <topic>
Elemente. |
<topic> |
Ja | Kennzeichnet das Thema. Der Wert des erforderlichen Attributs
id muss für das Dataset eindeutig sein. |
<info> |
Optional | Untergeordnet unter <topic> . Enthält Informationen zu einer
. |
<name> |
Optional | Untergeordnet unter <info> . Sein untergeordnetes Element
<value> gibt den Namen des Themas an. |
DSPL-Datendateien
Zusätzlich zur Metadatendatei kann ein DSPL-Dataset auch
Eine oder mehrere Datendateien im CSV-Format enthalten. Jede Datendatei
unterstützt eine Tabelle im Dataset und wird in der
<data>...</data>
Abschnitt. Konzeptionell werden diese Dateien
und die zugehörigen Tabellen werden verwendet, um entweder Konzepte
oder Datensegmenten zu unterteilen. Jeder dieser Datendateitypen
die nachfolgend ausführlicher beschrieben sind.
Unabhängig vom Zweck müssen alle Datendateien CSV-Textdateien im UTF-8-Format. Die Dateien dürfen nur Nur-Text-Dateien enthalten. Text; kein HTML. Sie können die Datendateien manuell erstellen, müssen die Daten entweder im Tool mit den Originaldaten (z.B. eine Tabellenkalkulation) oder in der exportierten Datei selbst.
Dateien können mit dem Datensatz gebündelt werden oder, wenn der Name in Form eines URL, die über HTTP, HTTPS oder FTP von einer Remote-Quelle abgerufen wird.
Konzeptdatendateien
Konzeptdatendateien enthalten relevante Informationen zu jedem Konzept. Die
In der Konzeptdefinition wird mit dem Element <table>
auf
für diese Datei.
Beispiel
Hier ist ein Beispiel für eine Tabelle für das Konzept country
wie oben definiert:
country, name AD, Andorra AF, Afghanistan AI, Anguilla AL, Albania AO, Angola AQ, Antarctica AS, American Samoa
So funktioniert dieses Beispiel:
- Sofern keine Zuordnungen angegeben sind, wird die erste Zeile der Datendatei (Spalte
Überschriften) muss genau mit der Konzept-ID und der entsprechenden Eigenschaft übereinstimmen.
IDs des Konzepts, mit dem die Daten verknüpft sind. Die Reihenfolge, in der
Spalten müssen in der Datendatei nicht identisch sein
Konzepttabelle. In diesem Fall wird die erste Spalte
Konzept
country
und die zweite Spalte ist dem Propertyname
. - Die Eigenschaftsspalten sind optional. Wenn eine Eigenschaft keine Spalte hat,
in der Tabelle wird angenommen, dass der Wert für jede Zeile nicht definiert ist. Die
In der obigen Tabelle wurden beispielsweise Spalten für
latitude
undlongitude
-Eigenschaften, sodass die Länder nicht zugeordnet werden können. - Jeder Wert für das ID-Feld des Konzepts (in diesem Fall
country
) muss eindeutig und nicht leer sein (ein leeres Feld entspricht einer mit null oder nur Leerzeichen). - Werte für Eigenschaften, die auf andere Konzepte verweisen, müssen entweder leer oder ein gültiger Wert des referenzierten Konzepts sein.
- Das Einschließen von Werten in doppelte Anführungszeichen ist optional, es sei denn, sie Kommas, doppelte Anführungszeichen oder Zeilenumbruchzeichen enthalten.
- Ein doppeltes Literal-Anführungszeichen maskieren, das in einem Wert erscheint, indem es diesem vorangestellt wird mit einem weiteren doppelten Anführungszeichen.
Datendateien aufteilen
Slice-Datendateien enthalten relevante Daten für jedes Segment. Das Stück
in der Definition das <table ref="...">
-Element,
finden Sie in der <table>
-Definition, die wiederum
für diese Datei.
Beispiel
Hier ist ein Beispiel für eine CSV-Datei mit den Daten für die
oben beschriebenes population_by_country
-Segment:
country, year, population AF, 1960, 9616353 AF, 1961, 9799379 AF, 1962, 9989846 AF, 1963, 10188299
So funktioniert das Beispiel:
- Das Messwertfeld ist
population
. Die Feldercountry
undyear
sind Dimensionsfelder. - Jeder Wert eines Dimensionsfelds darf nicht leer sein. Dazu gehört auch die Zeit, Dimensionen. Werte für Messwertfelder können leer sein. Ein leerer Wert ist durch kein Zeichen dargestellt wird.
- Jede Spaltenüberschrift, die auf ein Konzept verweist (z. B. die erste
des obigen Beispiels auf das Konzept
country
verweist) muss mit der eindeutigen ID des Konzepts in der Konzeptdefinition übereinstimmt. - Eine eindeutige Kombination von Dimensionswerten, z.B.
AF, 2000
, kann nur einmal vorkommen. - Zeilen in derselben Zeitreihe (d.h. Zeilen mit derselben Kombination) aller Dimensionswerte mit Ausnahme der Zeit) müssen gruppiert werden, auch wenn sie nicht anderweitig sortiert werden müssen.
Erweiterte Funktionen
Mehrsprachige Datasets
Übersetzte XML-Werte
Sie können das Attribut xml:lang
mit jedem
<value>
-Element in Ihrer DSPL-Datei. Dieses Attribut
gibt die Sprache des Elementinhalts mit dem standard, W3C
Sprach-Tags. Die Verwendung dieser Funktion ist optional. Falls nein
xml:lang
-Attribut enthält, wird angenommen, dass sich der Inhalt in folgender Sprache befindet:
Englisch.
Das folgende Beispiel zeigt Ausschnitte eines englischen Datasets, Bulgarisch, Katalanisch und Chinesisch (vereinfacht):
<dspl ...> <info> <name> <value xml:lang="en">World Bank, World Development Indicators</value> <value xml:lang="bg">Световна банка, Индикатори за световно развитие</value> <value xml:lang="ca">Banc Mundial, Indicadors del desenvolupament mundial</value> <value xml:lang="zh-CN">国家/地区</value> </name> ... </info> <concepts> <concept id="country"> <info> <name> <value xml:lang="en">Country</value> <value xml:lang="bg">Страна</value> <value xml:lang="ca">País</value> <value xml:lang="zh-CN">国家/地区</value> </name> ... </info> ... </concept> ... </concepts> ... </dspl>
Übersetzte Attribute
In einigen Fällen möchten Sie vielleicht Übersetzungen bereitstellen, Metadaten auf Konzeptebene, die zusätzlich (oder stattdessen) zu einzelnen Konzeptinstanzen. Dies ist besonders nützlich, wenn die Werte eines Konzepts (z.B. der Name) je nach Sprache variieren.
Um solche Werte in mehreren Sprachen bereitzustellen, erstellen Sie eine Spalte in
die entsprechende Definitionstabelle für jede Kombination aus Eigenschaft und Sprache.
Verknüpfen Sie diese Spalten dann mit den zugehörigen Properties und Sprachen, indem Sie
der Tabelle eine Reihe von <mapProperty xml:lang="..."
ref="..." toColumn="...">
-Elementen hinzufügen
Referenz-Tag für das Konzept.
Hier ist ein Beispiel, in dem ein Länderkonzept mit Namen auf Englisch definiert wird, Spanisch und Französisch:
<concepts> ... <concept id="country" extends="geo:location"> ... <property id="name"> <info> <name> <value>Name</value> </name> <description> <value>The official name of the country</value> </description> </info> <type ref="string" /> </property> ... <table ref="countries_table"> <mapProperty xml:lang="en" ref="name" toColumn="name_en"/> <mapProperty xml:lang="es" ref="name" toColumn="name_es"/> <mapProperty xml:lang="fr" ref="name" toColumn="name_fr"/> </table> </concept> ... </concepts> ... <tables> ... <table id="countries_table"> <column id="country" type="string"/> <column id="name_en" type="string"/> <column id="name_es" type="string"/> <column id="name_fr" type="string"/> ... </table> </tables>
Die CSV-Datei für countries_table
enthält dann
folgendes Formular:
country,name_en,name_es,name_fr,... ... US,United States of America,Estados Unidos de América,États-Unis d'Amérique,... ...
Zuordnungsfähige Konzepte
Viele Konzepte (z. B. Landkreis, Bundesstaat und city) haben Instanzen, die geografischen Standorten entsprechen. DSPL unterstützt das Geocoding dieser Instanzen, sodass sie im Animiertes Kartendiagramm von Google Public Data.
Wenn Ihr Konzept äquivalent zu Ländern der Welt, US-Bundesstaaten oder USA ist können Sie einfach eine Verknüpfung zur entsprechenden kanonischen Konzept; kein explizites Geocoding ist erforderlich. Weitere Informationen findest du im Leitfaden zu kanonischen Konzepten. Details.
Wenn nicht, müssen Sie Ihr Konzept zuordnen können. Der erste Schritt besteht darin,
Legen Sie sie auf geo:location
fest:
<concept id="..." extends="geo:location"> ... </concept>
Dann müssen Sie Breiten- und Längengrad explizit als Eigenschaften hinzufügen:
<concept id="..." extends="geo:location"> ... <property id="latitude"/> <property id="longitude"/> </concept>
Die Werte dafür werden dann als Spalten in den entsprechenden Konzeptdefinitions-Datentabelle.
Konzeptbeziehungen
Konzepte sind oft auf strukturierte Weise mit anderen Konzepten verbunden. Für Kontinentinstanz kann mehrere Länderinstanzen, die wiederum mehrere Bundesland oder Provinz. Diese Codierung Beziehungen in den Dataset-Metadaten ermöglicht eine umfassendere Visualisierung. Elemente, als dies sonst möglich wäre, z. B. die Darstellung eines minimierbaren Baums. Standorte zur Auswahl stehen.
In den folgenden Abschnitten werden die Konzeptbeziehungen beschrieben, die in das DSPL-Schema.
Hierarchien
Konzepthierarchien werden in DSPL durch die Verwendung eines
isParent="true"
-Attribut in einer
<property>
-Tag des untergeordneten Konzepts, das Folgendes enthält:
IDs der Instanzen aus dem übergeordneten Konzept.
Das Google-Konzept „US County“ enthält beispielsweise folgendes Formular:
<concept id="us_county" extends="geo:location"> <info> <name> <value xml:lang="en">County</value> </name> ... </info> ... <property id="state" concept="us_state" isParent="true"/> ... <data> <table ref="reference_us_counties"/> </data> </concept>
Die unterstützende Datentabelle hat eine state
-Spalte mit den
aus zwei Buchstaben bestehende Bundesstaatencode für jeden County. Diese Art von Metadaten ermöglicht es,
Public Data Explorer zur Darstellung von Bundesstaaten und Countys als Hierarchie, eine Funktion
die das Erkunden viel einfacher macht.
Ein Konzept kann mehrere untergeordnete Elemente, jedoch nur ein untergeordnetes Element haben. Parent ersetzt.
Zuordnungen
Konzeptzuordnungen (d.h. Konzepte, die im Grunde die gleichen
Ding) werden durch ein isMapping="true"
dargestellt.
in einem property
-Tag des zugeordneten Konzepts.
Wenn Sie angeben, dass ein Konzept einem anderen Konzept zugeordnet ist, kann das erste Konzept die alle Eigenschaften und Attribute des Letzteren. Neben anderen Anwendungen ist dies nützlich für „Verlinkungen“, persönliche geografische Konzepte mit die im kanonischen geografischen Dataset von Google definiert sind:
<concept id="my_country" extends="geo:location"> <info> <name> <value xml:lang="en">Country</value> </name> ... </info> ... <property id="google_country_code" concept="geo:country" isMapping="true"/> <data> <table ref="countries_concept"/> </data> </concept>
Erweiterungen
Konzepterweiterungen werden durch ein extends
-Element gekennzeichnet
in der entsprechenden Konzeptdefinition. Erweiterungen sind nützlich, um
dass ein Konzept eine abgeleitete Klasse
eines anderen, umfassenderen Konzepts ist. Die
erweitertes Konzept alle Attribute und Eigenschaften des übergeordneten
und Sie können auch weitere hinzufügen.
Das currency
-Konzept von Google erweitert beispielsweise
unit
:
<concept id="unit"> ... </concept> <concept id="currency" extends="unit"> <info> <name> <value xml:lang="en">Currency unit</value> </name> ... </info> ... <table ref="currency_table"/> </concept>
Diskussion zum Konzept ansehen finden Sie weitere Erläuterungen und Beispiele.
Dataset senden
Gehen Sie wie folgt vor, um Ihr Dataset an den Google Public Data Explorer zu senden: Anweisungen:
- Erstellen Sie ein Verzeichnis.
- Speichern Sie die Dataset-Datei dspl in dem von Ihnen erstellten Verzeichnis. Achten Sie darauf, Verwenden Sie die Erweiterung „.xml“.
- Speichern Sie alle lokalen CSV-Dateien im selben Verzeichnis. Datendateien, die URLs, auf die über URLs verwiesen wird, können weggelassen werden.
- Komprimieren Sie das Verzeichnis.
- Laden Sie Ihr Dataset in Google Public Data hoch. Explorer.
Sobald Ihr Dataset hochgeladen und validiert wurde, können Sie es testen, wenn Sie in deinem Google-Konto anmelden. Sie wird erst veröffentlicht, wenn du überprüft hast und sagen uns, dass sie fertig ist.