دليل مطوّري برامج DSPL

يشير الاختصار DSPL إلى لغة نشر مجموعة البيانات. إنه تنسيق تمثيل لكل من البيانات الوصفية (معلومات حول مجموعة البيانات، مثل والاسم ومقدّم الخدمة، إلى جانب المفاهيم التي يتضمّنها ويعرضها) البيانات الفعلية لمجموعات البيانات. يمكن استخدام مجموعات بيانات موصوفة بهذا التنسيق إلى بيانات Google العامة Explorer، وهي أداة تتيح استكشافًا غنيًا بصريًا البيانات.

ملاحظة: لتحميل البيانات إلى Google Public Data باستخدام أداة تحميل البيانات العلنية، يجب أن يكون لديك حساب على Google.

هذا المستند مخصص لمالكي البيانات الذين يريدون أن يكون المحتوى الخاص بهم المتوفرة في Public Data Explorer. إنه يتجاوز البرنامج التعليمي من خلال التعمق في تفاصيل حول مخطط DSPL والميزات المتوافقة. معرفة أساسية فقط يُفترض أن يفهم تنسيق XML، على الرغم من أن الإلمام بقواعد البيانات العلائقية مفيدة.

على الرغم من أنّ هذا الدليل التوجيهي، ننصحك بقراءته، وهو أقصر أسهل في الاستيعاب، قبل النظر إلى هذا المستند.

نظرة عامة

مجموعة بيانات DSPL هي ملف zip. يحتوي على ملف XML ومجموعة من ملفات CSV. الملفات. تعد ملفات CSV جداول بسيطة تحتوي على بيانات مجموعة البيانات، بينما يصف ملف XML البيانات الوصفية لمجموعة البيانات. الأخير تتضمن بيانات وصفية مثل أوصاف التدابير، بالإضافة إلى البيانات الوصفية الهيكلية مثل المراجع بين الجداول. هذه البيانات الوصفية يتيح للمستخدمين غير الخبراء استكشاف بياناتك وتمثيلها بيانيًا.

معالجة

بشكل عام، تكون عملية إنشاء مجموعة بيانات DSPL كما يلي (بعض خطوة واحدة بالتوازي):

  1. أنشئ ملف DSPL XML.
  2. حدد أي مصادر بيانات خارجية لاستخدامها في مجموعة البيانات الخاصة بك.
  3. حدد المفاهيم والشرائح والمواضيع (اختياريًا). بشكل متكرر تعديل محتوى ملف DSPL
  4. تصدير بيانات المصدر إلى ملفات .csv
  5. قم بإنشاء مجموعة بيانات DSPL.
  6. أرسِل مجموعة البيانات إلى Google.

بنية XML

نظرة عامة

يحدد ملف DSPL XML البيانات الوصفية لمجموعة البيانات، بما في ذلك العلاقات الهيكلية بين المفاهيم والشرائح والمواضيع والجداول. على الرغم من إمكانية إنشاء هذا الملف يدويًا، إلا أن أدوات معالجة البيانات والنصوص البرمجية يمكن أن تبسط العملية بشكل كبير. الاطّلاع على نموذج ملف DSPL في ملف جديد .

يتضمن الملف عددًا من الأقسام، والتي يتم تلخيصها في الجدول أدناه. باتباع الجدول، نقوم بوصف كل من الإجراءات السابقة بشكل أكبر التفاصيل.

القسم ملخّص مزيد من المعلومات
العناوين وعمليات الاستيراد تمثّل هذه السمة العنصر الرئيسي لجميع العناصر الأخرى في مجموعة البيانات. تتضمن مساحة الاسم المستهدفة (أي المعرّف) لمجموعة البيانات، إلى جانب ومساحات الاسم لأي مجموعات بيانات تم استيرادها. الوثائق
معلومات مجموعة البيانات اسم مجموعة البيانات ووصفها وعنوان URL الخاص بها. الوثائق
معلومات عن مقدّم الخدمة الاسم والوصف وعنوان URL لمقدِّم مجموعة البيانات. الوثائق
المفاهيم

تعريفات "الأشياء" التي تظهر في مجموعة البيانات (على سبيل المثال، البلدان ومعدل البطالة والجنس وما إلى ذلك)

لكل مفهوم معرّف فريد يمكن الإشارة إليه من خلال الشرائح والجداول.

الوثائق
الشرائح

مجموعات المفاهيم التي توجد بيانات إحصائية لها في مجموعة البيانات الأصلية. تحتوي كل شريحة على أبعاد المقاييس.

تقطع الشرائح المفاهيم المرجعية وكذلك الجداول، التي تحتوي على القيم البيانات. ولكل شريحة معرّف فريد يمكن الإشارة إليه عن طريق الجداول التي تحتوي على البيانات الفعلية.

الوثائق
طاولات حدد البيانات الخاصة بالمفاهيم والشرائح. تعليق جداول المفاهيم قوائم التعداد وجداول الشرائح على بيانات إحصائية. الجداول محدّدة في ملف XML، ثم نشير إلى ملفات .csv التي تحتوي على البيانات الفعلية. الوثائق
المواضيع فئات لتنظيم مفاهيم مجموعات البيانات. على الرغم من أنها ليست مطلوبة، مفيدة جدًا للمستخدمين الذين يتنقلون في بياناتك. الوثائق

العنوان وعمليات الاستيراد

تعريف مساحة اسم البيانات العامة

تبدأ مجموعة بيانات DSPL بعنصر <dspl> من المستوى الأعلى. ويستخدم هذا لتضمين جميع معلومات مجموعة البيانات والإشارة إلى أي ومساحات الاسم التي سيتم استخدامها في جميع أنحاء الملف. وفي ما يلي مثال لذلك:

<?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>

مساحة الاسم هي معرّف فريد يمكن ربطه مخطط XML (مجموعة من عناصر XML والسمات). تشير رسالة الأشكال البيانية توفّر السمة targetNamespace معرّف موارد منتظم (URI) يعرّف مجموعة بياناتك. عنوان URI هذا ليس مطلوبًا للإشارة إلى مورد فعلي، ولكنه عنوان جعل معرف الموارد المنتظم (URI) يتحول إلى مستند يصف المحتوى أو مجموعة البيانات الأصلية.

ليس مطلوبًا منك تقديم targetNamespace. إذا كنت لا تفعل ذلك، فسيتم إنشاء واحد تلقائيًا لك عند الاستيراد الوقت.

السمة targetNamespace متبوعة بسلسلة من سمات xmlns التي تحدّد مخططات XML الأخرى التي سيتم استخدامها في الملف. يجب أن يتضمن كل ملف DSPL مخطط بيانات Google العامة معرّف الموارد المنتظم (URI) الخاص به هو "http://schemas.google.com/dspl/2010" واستخدامها مساحة الاسم الافتراضية. يجب أن تتضمن أيضًا مخطط W3 XML القياسي محددة بواسطة "http://www.w3.org/2001/XMLSchema-instance". بالنسبة كما هو موضح في القسم التالي، يمكن إضافة مساحات اسم أخرى لتضمين ومعلومات من مجموعات البيانات الأخرى.

استيراد مساحات الاسم الأخرى لمجموعة البيانات

يمكن لمجموعات البيانات إعادة استخدام التعريفات والبيانات من مجموعات البيانات الأخرى. Google، بالنسبة إلى مثلاً، عددًا من مجموعات البيانات الأساسية التي تحدد المفاهيم بشكل شائع يظهر في بيانات المستخدم. على سبيل المثال، تحتاج معظم مجموعات البيانات إلى مفهوم تمثل سنوات. وبدلاً من تحديد مفهوم جديد، يمكنك استخدام بيانات السنة مفهوم من "http://www.google.com/publicdata/dataset/time" مجموعة البيانات الأصلية. يمكنك الاطّلاع على عنوان URL الأساسي. لمزيد من المعلومات، يمكنك الانتقال إلى صفحة "المفاهيم".

لاستخدام مجموعة بيانات خارجية، أضِف العنصر <import> إلى ملف DSPL بعد إعلان مساحة الاسم مباشرةً، ويشير إلى مساحة البيانات التي تقوم باستيرادها، على النحو التالي:

<import namespace="http://www.google.com/publicdata/dataset/google/time"/>

بعد ذلك، أضف مساحة الاسم المستوردة (في هذه الحالة، time="http://www.google.com/publicdata/dataset/google/time") إلى بيان مساحة الاسم في أعلى ملفك، كما يلي:

<?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"/>

يمكن أن يشير ملف DSPL الآن إلى عناصر من "بيانات Google العامة". مجموعة بيانات الوقت. تكرار هذه العملية لكل مجموعة بيانات تريد الرجوع إليها.

الإشارة إلى المحتوى في مجموعات البيانات الخارجية

بمجرد استيراد مجموعة بيانات أخرى، ينبغي أن تكون قادرًا على إحالة والمفاهيم والشرائح والبيانات من مجموعة البيانات هذه. للقيام بذلك، يمكنك استخدام مراجع للتنسيق prefix:other_id، حيث prefix هي البادئة المستخدمة في مساحة الاسم مجموعة البيانات الخارجية.

في ما يلي مثال على إشارة إلى مفهوم year من مجموعة بيانات time (الموضّحة أعلاه):

<slices>
  <slice id="country_slice">
    <dimension concept="country"/>
    <dimension concept="time:year"/>
    <metric concept="population"/>
    <table ref="country_slice_table"/>
  </slice>
  ...
</slices>

معلومات مجموعة البيانات

يتضمن العنصر <info> معلومات وصفية حول مجموعة البيانات. إليك مثال وتفاصيل عن عناصر XML ذات الصلة الواردة أدناه.

مثال

<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>

العناصر

العنصر مطلوب؟ الوصف
<info> نعم تتضمن جميع المعلومات الوصفية حول مجموعة البيانات. يتضمن العناصر الفرعية <name>، <description> و<url>
<name> نعم تابع لـ <info>. يتضمن العنصر الثانوي <value>، الذي يعرّف اسم مجموعة البيانات الأصلية.
<description> اختياري تابع لـ <info>. يتضمن العنصر الثانوي <value>، والذي يتضمن وصفًا نصيًا مجموعة البيانات الأصلية.
<url> نعم تابع لـ <info>. رابط لعنوان URL يحتوي على المزيد معلومات حول مجموعة البيانات.

معلومات مزوِّد الخدمة

يسرد العنصر <provider> معلومات عن مزود البيانات. إليك مثال وتفاصيل عن عناصر XML ذات الصلة الواردة أدناه.

مثال

<provider>
  <name>
    <value>Bureau of Statistics</value>
  </name>
  <url>
    <value>http://www.example.com</value>
  </url>
</provider>

العناصر

العنصر مطلوب؟ الوصف
<provider> نعم تتضمن جميع المعلومات الوصفية حول موفر مجموعة البيانات. تتضمن العناصر الفرعية <name> <url>
<name> اختياري تابع لـ <provider>. يتضمن العنصر الثانوي <value>، الذي يحدد اسم مجموعة البيانات المستخدم.
<url> اختياري تابع لـ <info>. رابط إلى عنوان URL يحتوي على المزيد المعلومات حول مزود مجموعة البيانات.

المفاهيم

الوصف

وتحتوي كل مجموعة بيانات على مفهوم واحد أو أكثر. المفهوم هو تعريف لنوع من البيانات يظهر في مجموعة البيانات. مجموعة بيانات بها بيانات السكان السكانية، على سبيل المثال، يمكن أن تحتوي على المفاهيم الدولة والولاية والسكان والسنة. قيم البيانات المتجاوبة مع مفهوم معيّن باسم المثيلات لهذا المفهوم. المفاهيم هي موصوفة عادةً في مجموعة البيانات، ولكن بعض المفاهيم (مثل الوقت أو السنة) وصفها في مجموعات البيانات الخارجية.

يمكن أن يكون لكل مفهوم خاصية واحدة أو أكثر. الملكية عبارة عن صفة حالة مفهوم تكون مستقرة مع مرور الوقت. على سبيل المثال: يمكن أن يتضمّن مفهوم البلد الخصائص name، population وcapital

يمكن أن تحتوي المفاهيم أيضًا على سمة واحدة أو أكثر. توفّر السمات المعلومات على مستوى المفهوم، وليس على مستوى حالاته الفردية. بالنسبة على سبيل المثال، إذا كانت لدينا مجموعة بيانات بها مفهوم معدل البطالة، فيمكننا استخدام إحدى السمات للإشارة إلى أن هذا المفهوم هو نسبة مئوية. ومن الأمثلة الأخرى على الاستخدام الشائع للسمات تقديم وحدة المعلومات.

مثال

في ما يلي مثال على مفهوم بلد بالمعرّف الفريد country، والموقع name. يمكن أن يكون معرف المفهوم المستخدمة للإشارة إلى المفهوم من الشرائح والجداول.

<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>

في ما يلي طريقة عمل هذا النموذج.

  • تصف هذه التعليمة البرمجية مفهوم البلد، الذي له المعرّف country والخصائص name، continent، وcapital.
  • ويوسِّع هذا المفهوم نطاق geo:location، وهو المفهوم الأساسي . من خلال تمديد مهلة geo:location وcountry تكتسب جميع السمات والسمات المحدّدة في المفهوم الموسّع: الخصائص name, description, url, Layout and Length. لا بأس به لـ country لإعادة تعريف بعض هذه السمات طالما أن التعريف متوافق مع التعريف المقدم من خلال المفهوم الموسع.
  • يصف عنصر المفهوم <info> السمة الرئيسية معلومات حول المفهوم. يتم عرض هذا على قاعدة البيانات الصفحة المقصودة في Public Data Explorer.
  • يشير مفهوم عنصر <type> إلى نوع المحتوى. في هذه الحالة تكون سلسلة، ولكن قد يختلف ذلك. المفهوم سيكون للعينة النوع integer؛ المفهوم يمكن أن يحتوي Eurovision winner على النوع المنطقي.
  • يصف عنصر <property> كل خاصية من خصائص مفهومه، بما في ذلك معرّفه الفريد (id) وinfo type يمكن للمواقع أيضًا الإشارة إلى المفاهيم من أجل تشير إلى أن قيمها هي مثيلات صالحة لتلك المفاهيم.
  • يشير المفهوم إلى جدول بيانات يشير إلى إلى ملف CSV الذي يحتوي على البيانات الفعلية. تتم الإشارة إلى جدول البيانات مثل هذا: <table ref="countries_table"/>.

    إذا كان مفهومك يشير إلى جدول، يجب أن يسرد ملف البيانات المرتبط به جميع مثيلات المفهوم. لا يمكنك مثلاً إنشاء جدول يسرد عددًا قليلاً فقط من البلدان المضمنة في مجموعة البيانات. (إذا كان هناك هي مجموعة فرعية من البلدان التي تهمك، يمكنك إنشاء مجموعة منفصلة مفهوم لوصفها. مثلاً، mycountries).

العناصر

العنصر مطلوب؟ الوصف
<concepts> نعم عنصر من المستوى الأعلى. تضمين جميع <concept> عناصر.
<concept> نعم يحدد المفهوم. قيمة السمة المطلوبة يجب أن تكون السمة id فريدة للمفهوم ضمن مجموعة البيانات. في حال حذف يشير المفهوم إلى جدول بيانات المفهوم، وقيمة يجب أن تتطابق السمة id مع عنوان العمود الذي يصف المفهوم جدول البيانات. يمكن استخدام السمة extends للدلالة على أن هذا المفهوم يوسع مفهومًا آخر. قيمة يجب أن تتطابق السمة extends مع معرّف المفهوم المحدّد في أو أن تكون بالشكل prefix:concept_id، حيث وconcept_id هي المعرف لمفهوم محدد في ملف CSV مجموعة البيانات الخارجية المرتبطة بـ prefix.
<info> اختياري تتضمن معلومات وصفية عن المفهوم.
<name> نعم تابع لـ <info>. تمثّل هذه السمة اسم المفهوم. تشير رسالة الأشكال البيانية العنصر الفرعي <value> يحتوي على النص - for على سبيل المثال، Country.
<description> اختياري تابع لـ <info>. يتضمن العنصر الثانوي <value>، والذي يتضمن وصفًا نصيًا المفهوم.
<url> اختياري تابع لـ <info>. يتضمن العنصر الثانوي <value>، والذي يتضمن عنوان URL المفهوم.
<pluralName> اختياري تابع لـ <info>. ويكون اسم الجمع المفهوم. يحتوي العنصر الفرعي <value> على النص - على سبيل المثال، Countries.
<totalName> اختياري تابع لـ <info>. الاسم لمجموعة جميع مثيلات المفهوم. العنصر الفرعي <value> يحتوي على النص في حالة استخدام country المفهوم، على سبيل المثال، قد يكون ذلك World.
<type> اختياري تحدد نوع المحتوى الموصوف في المفهوم. القيم المطلوبة تحتوي السمة ref على القيم المسموح بها التالية:
  • سلسلة
  • عدد عائم
  • عدد صحيح
  • التاريخ
  • منطقي
قد يتم حذف النوع إذا وسّع المفهوم مفهومًا آخر، وفي هذه الحالة، يكون مكتسبًا من المفهوم الموسع.
<property> اختياري

تمثّل هذه السمة سمة المفهوم، مثل capital. القيمة من السمة المطلوبة id يجب أن يكون فريدًا المفهوم. يمكن استخدام سمة concept اختيارية للأغراض التالية: الإشارة إلى أن قيم هذه السمة هي مثيلات محددة المفهوم. إذا تم تحديد concept، يتم عندها id. يمكن حذفها، أو حيث يتم تعريف قيمته ضمنيًا على أنه الرقم التعريفي المفهوم المشار إليه (على سبيل المثال، <property concept="geo:country"/> تساوي <property id="country" concept="geo:country"/>).

قد تحتوي السمة على السمة isParent المنطقية، للإشارة إلى أن العلاقة بين مثيل المفهوم وتكون قيمة هذه السمة هرمية.

قد تحتوي السمة على السمة isMapping المنطقية، للإشارة إلى أن هناك تعيين 1-1 بين مثيلات المفهوم وقيم الخاصية.

قد تحدّد السمة سمة info مدمجة وtype، ويتم تعريفها على النحو نفسه بالنسبة إلى المفهوم. يجب توفير type إذا لم تحدّد الخاصية concept، ويجب أن تتطابق مع نوع المفهوم المشار إليه إذا كان الأمر كذلك.

<attribute> اختياري

تمثّل هذه السمة سمة المفهوم. تمثل السمات معلومات إضافية معلومات حول المفهوم (على سبيل المثال، الناتج المحلي الإجمالي هو نسبة مئوية). القيمة من السمة المطلوبة id يجب أن يكون فريدًا المفهوم. يمكن استخدام سمة concept اختيارية للأغراض التالية: إلى أن قيم هذه السمة هي مثيلات محددة المفهوم. إذا تم تحديد concept، يتم عندها id. . وتُعرف قيمتها ضمنيًا على أنها الرقم التعريفي المفهوم المشار إليه. (مثال: <attribute concept="unit:unit"/> تساوي <attribute id="unit" concept="unit:unit"/>

قد تحدّد السمة سمة info مدمجة وtype، والتي يتم تعريفها تمامًا مثل المفهوم. تكون السمة type مطلوبة إذا لم تحدّد السمة concept، ويجب أن تتطابق مع نوع المفهوم المشار إليه إذا كان الأمر كذلك.

<table> اختياري تحدد جدول البيانات الذي يحتوي على بيانات المفهوم. تشير رسالة الأشكال البيانية يجب أن تتطابق قيمة السمة ref المطلوبة مع الجدول رقم التعريف المحدد في عنصر <table> ذي الصلة.

الشرائح

الوصف

الشريحة هي مزيج من المفاهيم التي توجد لها بيانات. شريحة تحتوي على نوعين من مراجع المفاهيم: السمات المقاييس. السمة هي مفهوم يُستخدَم لتقسيم البيانات أو فلترتها بشكل أفضل. ومن ناحية أخرى، يصف المقياس القيمة المرصودة أو القيم المرتبطة بكل نقطة بيانات.

بشكل عام، تكون الأبعاد فئوية، في حين أن المقاييس غير فئوية، قيم رقمية متفاوتة للوقت. بعض الأمثلة الأوّلية لكل منهما عبارة عن التالي:

  • السمات: البلد والولاية والمقاطعة والمنطقة والسنة شهر، جنس، فئة عمرية، شريحة مجال
  • المقاييس: السكان، والناتج المحلي الإجمالي، ومعدل البطالة، ومحو الأمية، إيرادات، تكلفة، سعر

مثال

<slices>
  <slice id="country_slice">
    <dimension concept="country"/>
    <dimension concept="time:year"/>
    <metric concept="population"/>
    <table ref="country_slice_table"/>
  </slice>
  ...
</slices>

في ما يلي طريقة عمل هذا النموذج.

  • تمثل هذه الشريحة عدد السكان حسب البلد.
  • ويحتوي على المقياس population والأبعاد country وyear كل سمة هي مفهوم بالفعل في مكان آخر. المفهوم country والمقياس توجد population في نفس مجموعة البيانات مثل الشريحة الحالية، تتم الإشارة إليها على النحو التالي: concept="country"
  • هناك مفهوم year في وقت مجموعة البيانات التي تم استيرادها، المحددة بالبادئة المستخدمة قبل اسم المفهوم (year)، مثل هذا: concept="time:year"
  • تشير الشريحة إلى جدول بيانات يشير إلى ملف CSV. يحتوي على البيانات الفعلية. تتم الإشارة إلى جدول البيانات على النحو التالي: <table ref="country_slice_table"/> (انظر أعلاه) للحصول على معلومات حول استيراد مجموعات البيانات).

ملاحظة: بشكل عام، ستكون مجموعة البيانات أكثر ومرن إذا حافظت على الحد الأدنى من المقاييس، وبدلاً من ذلك أنشئت الأبعاد. على سبيل المثال، بدلاً من إنشاء المقاييس Female Unemployment وMale Unemployment، إنشاء المقياس الفردي Unemployment وإضافة سمة Gender الذي يحتوي على المثيلات Female Male

العناصر

العنصر مطلوب؟ الوصف
<slices> نعم عنصر من المستوى الأعلى. تضمين جميع <slice> عناصر.
<slice> اختياري يحدد الشريحة. قيمة السمة المطلوبة يجب أن يكون id فريدًا للشريحة.
<dimension> اختياري تُعرِّف بُعدًا للشريحة، من خلال الإشارة إلى المفهوم. تشير رسالة الأشكال البيانية يجب أن تتطابق قيمة السمة المطلوبة concept تمامًا المعرف الفريد للمفهوم، واستخدام بادئة صالحة إذا كان المفهوم إلى مجموعة بيانات خارجية مستوردة.
<metric> اختياري تحدد مقياسًا للشريحة، من خلال الإشارة إلى المفهوم. القيمة من السمة المطلوبة concept يجب أن تتطابق تمامًا مع المعرف الفريد للمفهوم، واستخدام بادئة صالحة إذا كان المفهوم ينتمي إلى مجموعة بيانات خارجية مستوردة.
<table> نعم تحدد هذه السمة جدول البيانات الذي يحتوي على بيانات للشريحة. القيمة من سمة ref المطلوبة يجب أن تتطابق مع معرّف الجدول المحددة في العنصر <table> ذي الصلة.
<mapDimension> اختياري تابع لـ <table>. يحتوي على السمتَين concept وtoColumn؛ قيمة الأول هي البعد في الشريحة، وقيمة الثانية هي عمود الجدول المتناسق مع السابق.
<mapMetric> اختياري تابع لـ <table>. يحتوي على السمتَين concept وtoColumn؛ تكون قيمة الأول هي مقياس في الشريحة، وقيمة الثانية هي عمود الجدول المتناسق مع السابق.

الجداول

الوصف

يحدّد القسم tables من ملف DSPL البيانات. الجداول المضمنة في مجموعة البيانات. يمكن الإشارة إلى هذه الجداول من خلال المفاهيم أو حسب الشرائح. يحدد كل عنصر <table> أعمدة الجداول وأنواعها، ويشير إلى ملف CSV يحتوي على الجدول البيانات.

مثال

<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>

في ما يلي طريقة عمل هذا النموذج.

  • يصف هذا النموذج الجدول country_slice_table. تشير رسالة الأشكال البيانية يحتوي على الأعمدة country وyear population
  • لكل عمود في الجدول رقم تعريف فريد يتم تحديده من خلال id. ويجب أن يتطابق هذا المعرّف تمامًا مع المعلومات عنوان العمود في ملف البيانات المرتبط.
  • تحدّد قيمة السمة الاختيارية type البيانات. النوع لكل عمود.
  • يصف عنصر <data> ملف .csv الفعلي (country_slice.csv) التي تحتوي على بيانات الجدول. تنسيق الملف هو دائمًا csv.

العناصر

العنصر مطلوب؟ الوصف
<tables> نعم عنصر من المستوى الأعلى. تضمين جميع <table> عناصر.
<table> نعم تحدد الجدول. قيمة السمة المطلوبة يجب أن يكون الحقل id فريدًا في الجدول.
<column> اختياري تابع لـ <table>. معلومات عن العمود المدرجة في الجدول. يتضمن السمات التالية:
  • id (مطلوب): رقم تعريف العمود.
  • type (اختياري): نوع بيانات المعلومات في العمود المحدد. القيم المسموح بها: string، float أو integer أو date أو boolean
<data> اختياري تابع لـ <table>. ملف البيانات المشار إليه بواسطة تقديمه. إذا كان اسم الملف بتنسيق عنوان URL (مثال: http://...)، ثم سيتم استرجاع الملف من خلال البروتوكول المناسب (HTTP أو HTTPS أو FTP) وإلا، فسيستخدم ملف بهذا الاسم مع مجموعة البيانات. قيمة السمة المطلوبة format هي دائمًا csv. على الرغم من أن سمة encoding اختيارية، يجب أن تكون ملفات .csv بترميز UTF-8.

المواضيع

الوصف

تصنف المواضيع المفاهيم بتسلسل هرمي، ما يسمح للمستخدمين بالتنقل عبر مجموعة البيانات لديك بسهولة أكبر.

يجب أن يظهر العنصر <topics> قبل علامة العنصر <concepts> في ملف DSPL. (ترتيب العناصر الأخرى أمرًا مهمًا، وقد لا تتمكن من تحميل مجموعة البيانات الخاصة بك إذا كان ظهور العناصر بترتيب غير صحيح). لاستخدام المواضيع، ارجع إليها من تعريف المفهوم.

مثال

إليك مثال على تعريف الموضوع:

<topics>
  <topic id="population_indicators">
    <info>
      <name>
        <value>Population indicators</value>
      </name>
    </info>
  </topic>
  ...
</topics>
  

...إليك مثال للإشارة إلى هذا الموضوع من مفهوم:

<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>

يمكن أن تكون المواضيع متداخلة، ويمكن أن يشير المفهوم إلى أكثر من موضوع واحد.

تعريف العنصر

العنصر مطلوب؟ الوصف
<topics> نعم عنصر من المستوى الأعلى. تضمين جميع <topic> عناصر.
<topic> نعم يحدد الموضوع. قيمة السمة المطلوبة يجب أن تكون السمة id فريدة لمجموعة البيانات.
<info> اختياري تابع لـ <topic>. تحتوي على معلومات حول الموضوع.
<name> اختياري تابع لـ <info>. العنصر الفرعي تحدّد السمة <value> اسم الموضوع.

ملفات بيانات DSPL

بالإضافة إلى ملف البيانات الوصفية بتنسيق XML، يمكن أيضًا لمجموعة بيانات DSPL تضمين واحد أو أكثر من ملفات البيانات بتنسيق CSV. كل ملف بيانات جدولاً في مجموعة البيانات، وتتم الإشارة إليه من الأول في قسم "<data>...</data>". من الناحية النظرية، تمثل هذه الملفات واستخدام الجداول المرتبطة بها لتمثيل أي من المفهومين التعريفات أو شرائح البيانات. كل نوع من أنواع ملفات البيانات هذه عبارة عن بمزيد من التفصيل أدناه.

لاحظ أنه بغض النظر عن الغرض، ينبغي أن تكون جميع ملفات البيانات ملفات نصية بتنسيق UTF-8 المفصولة بفواصل (CSV). يجب أن تحتوي الملفات على تنسيق عادي فقط النص؛ بدون HTML. يمكنك إنشاء ملفات البيانات يدويًا، ولكن في الواقع يمكنك سوف تحتاج إلى تدليك البيانات إما في الأداة التي تحتوي على البيانات الأصلية المصدر (جدول بيانات مثلاً) أو في الملف الذي تم تصديره نفسه.

يمكن حزم الملفات مع مجموعة البيانات أو، إذا كان الاسم في شكل عنوان URL، تم جلبه عبر HTTP أو HTTPS أو FTP من مصدر بعيد.

ملفات بيانات المفاهيم

تحتوي ملفات بيانات المفهوم على معلومات ذات صلة بكل مفهوم. تشير رسالة الأشكال البيانية يستخدم تعريف المفهوم عنصر <table> للإشارة إليه هذا الملف.

مثال

في ما يلي مثال على جدول لمفهوم country المحدد أعلاه:

country, name
AD, Andorra
AF, Afghanistan
AI, Anguilla
AL, Albania
AO, Angola
AQ, Antarctica
AS, American Samoa

في ما يلي طريقة عمل هذا المثال:

  • ما لم يتم تحديد التعيينات، يحتوي السطر الأول من ملف البيانات (العمود ) يجب أن تتطابق تمامًا مع معرّف المفهوم والخاصية المناسبة معرفات المفهوم الذي ترتبط به البيانات. ومع ذلك، فإن ترتيب لا ينبغي أن تكون الأعمدة متطابقة في ملف البيانات جدول المفاهيم. في هذه الحالة، يرتبط العمود الأول المفهوم country، والعمود الثاني الموقع name.
  • أعمدة الخاصية اختيارية؛ إذا كان الموقع لا يحتوي على عمود في الجدول، يتم افتراض أن قيمتها غير محددة لكل صف. تشير رسالة الأشكال البيانية أعلاه، على سبيل المثال، يحذف أعمدة latitude سمات longitude، بالتالي لن تكون البلدان قابلة للتحديد.
  • كل قيمة لحقل معرف المفهوم (في هذه الحالة، يجب أن تكون الدالة country فريدة وغير فارغة (الحقل الفارغ هو واحد). بدون مسافات أو مسافات بيضاء فقط).
  • يجب أن تكون قيم الخصائص التي تشير إلى مفاهيم أخرى إما فارغة أو أن تكون قيمة صالحة للمفهوم المُشار إليه.
  • يعد تضمين القيم بين علامتي اقتباس اختياريًا إلا عندما تحتوي على فواصل أو علامات اقتباس مزدوجة أو أحرف سطر جديد.
  • يمكنك الهروب من علامة الاقتباس المزدوجة الحرفية التي تظهر بقيمة ما قبلها. بعلامة اقتباس مزدوجة أخرى.

تقسيم ملفات البيانات

تحتوي ملفات بيانات الشرائح على بيانات ذات صلة بكل شريحة. الشريحة يستخدم تعريف العنصر <table ref="..."> الرجوع إلى تعريف <table>، والذي يحدد بدوره هذا الملف.

مثال

في ما يلي مثال على ملف .csv يحتوي على البيانات الخاصة شريحة population_by_country الموضحة أعلاه:

country, year, population
AF, 1960, 9616353
AF, 1961, 9799379
AF, 1962, 9989846
AF, 1963, 10188299

إليك طريقة عمل المثال:

  • حقل المقياس هو population. الحقول country وyear هما حقلا السمات.
  • يجب أن تكون كل قيمة في حقل البُعد غير فارغة. يشمل ذلك الوقت. الأبعاد. يمكن أن تكون قيم حقول المقاييس فارغة. القيمة الفارغة هي لا يتم تمثيلها بحرف.
  • كل عنوان عمود يشير إلى مفهوم ما (على سبيل المثال، العنوان الأول في المثال أعلاه يشير إلى المفهوم country) يجب مطابقة تامة للمعرف الفريد للمفهوم في تعريف المفهوم.
  • مجموعة فريدة من قيم السمات، مثل AF, 2000, قد تحدث مرة واحدة فقط.
  • صفوف في السلسلة الزمنية نفسها (أي الصفوف التي تحتوي على المجموعة نفسها) بين جميع قيم السمات باستثناء الوقت) معًا، على الرغم من لا يلزم فرزها بطريقة أخرى.

الميزات المتقدّمة

مجموعات البيانات متعددة اللغات

قيم XML المترجمة

يمكنك استخدام السمة xml:lang مع كل العنصر <value> في ملف DSPL. هذه السمة لغة محتوى العنصر، باستخدام المعيار W3C اللغات المسموح بها. تجدر الإشارة إلى أنّ استخدام هذه الميزة اختياري. إذا كانت الإجابة لا تم تضمين السمة xml:lang، ومن المفترض أن يكون المحتوى معروضًا الإنجليزية.

يوضح المثال التالي مقتطفات من مجموعة بيانات باللغة الإنجليزية، البلغارية والكتالانية والصينية المبسطة:

<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>

الخصائص المترجمة

وفي بعض الحالات، قد ترغب في تقديم ترجمات تتخطى بيانات التعريف على مستوى المفهوم، ونطبّق بالإضافة (أو بدلاً من ذلك) على أمثلة المفهوم. ويكون هذا مفيدًا بشكل خاص عندما يتم حساب قيم المفهوم تختلف الخاصية (مثل الاسم) حسب اللغة.

لتقديم هذه القيم بلغات متعددة، أنشئ عمودًا واحدًا في جدول التعريف المقابل لكل تركيبة موقع/لغة. ثم اربط هذه الأعمدة بالخصائص واللغات المرتبطة بها عن طريق إضافة مجموعة من عناصر <mapProperty xml:lang="..." ref="..." toColumn="..."> إلى الجدول علامة مرجعية للمفهوم.

إليك مثال يحدد مفهوم الدولة بأسماء مختلفة بالإنجليزية، الإسبانية والفرنسية:

<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>

في هذه الحالة، سيحتوي ملف CSV بعنوان countries_table على النموذج التالي:

country,name_en,name_es,name_fr,...
...
US,United States of America,Estados Unidos de América,États-Unis d'Amérique,...
...

المفاهيم القابلة للتعيين

تم إنشاء العديد من المفاهيم (على سبيل المثال: المقاطعة والولاية المدينة) لها مثيلات مقابلة للمواقع الجغرافية. DSPL الترميز الجغرافي لهذه الحالات بحيث يمكن عرضها في رسم بياني لخريطة متحركة لبيانات عامة من Google.

إذا كان مفهومك معادلاً لبلدان العالم أو الولايات الأمريكية أو الولايات المتحدة المقاطعات، يمكنك حينئذٍ الربط بعنوان Google الأساسي المطابق المفهوم لا يلزم ترميز جغرافي صريح. يمكنك الاطّلاع على دليل المفاهيم الأساسية للحصول على مزيد من المعلومات. التفاصيل.

إذا لم يكن الأمر كذلك، فأنت بحاجة إلى جعل مفهومك قابلاً للتحديد. تتمثل الخطوة الأولى في جعلها تمتد من geo:location:

<concept id="..." extends="geo:location">
  ...
</concept>

بعد ذلك، يجب عليك إضافة خطوط الطول والعرض بوضوح كخصائص:

<concept id="..." extends="geo:location">
  ...
  <property id="latitude"/>
  <property id="longitude"/>
</concept>
  

ثم يتم تحديد قيم هذه القيم كأعمدة في العمود جدول بيانات تعريف المفهوم.

علاقات المفاهيم

غالبًا ما ترتبط المفاهيم بمفاهيم أخرى بطريقة منظمة. بالنسبة مثلاً، قد يتضمن مثيل القارة العديد من التي تتعلق ببلدان محددة، والتي قد تحتوي بدورها على عدة حالات الولاية أو المقاطعة. ترميز هذه العلاقات في البيانات الوصفية لمجموعة البيانات تصورًا أكثر ثراءً ميزات أكثر من الممكن، مثل عرض شجرة قابلة للطي من المواقع للاختيار من بينها.

في الأقسام التالية، سنوضّح مفاهيم العلاقات المدعومة في مخطط DSPL.

التسلسلات الهرمية

يتم تمثيل التسلسلات الهرمية للمفاهيم في DSPL من خلال استخدام السمة isParent="true" في العلامة <property> للمفهوم الثانوي، الذي يحتوي على معرفات المثيلات من المفهوم الأصلي.

كمثال، يتضمن مفهوم مقاطعة Google في الولايات المتحدة النموذج التالي:

<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>
  

يتضمّن جدول البيانات الداعمة عمود "state" مع رمز ولاية من حرفين لكل مقاطعة. يتيح هذا النوع من بيانات التعريف مستكشف البيانات العامة لإظهار الولايات والمقاطعات كتسلسل هرمي، ميزة تسهّل عملية الاستكشاف على المستخدمين.

يُرجى العِلم أنّ المفهوم قد يكون له العديد من الأطفال ولكن ليس أكثر من عنصر واحد أحد الوالدَين

عمليات التعيين

تعيينات المفاهيم (أي المفاهيم التي تمثل نفس شيء) يتم تمثيلها من خلال isMapping="true" في العلامة property للمفهوم المرتبط.

إن تحديد ربط مفهوم ما بمفهوم آخر يسمح للأول بأن يكتسب جميع خصائص الأخير وسماته. من بين التطبيقات الأخرى، يكون هذا مفيدًا "لربط" والمفاهيم الجغرافية الشخصية مع تلك المحددة في مجموعة بيانات الموقع الجغرافي الأساسية من Google:

<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>
  

الإضافات

يتم تحديد إضافات المفاهيم من خلال عنصر extends. في تعريف المفهوم المقابل. تكون الإضافات مفيدة للإشارة إلى أن مفهومًا ما هو فئة فرعية من مفهوم آخر أوسع. تشير رسالة الأشكال البيانية يكتسب المفهوم الموسع جميع سمات وخصائص الأصل، ويمكنك أيضًا إضافة المزيد

على سبيل المثال، يتسع مفهوم currency في Google 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>
  

الاطّلاع على مناقشة مفهوم الإضافات في الدليل التوجيهي لمزيد من الشرح والأمثلة.

تقديم مجموعة البيانات

لإرسال مجموعة البيانات إلى Google Public Data Explorer، يُرجى اتّباع الخطوات التالية التعليمات:

  1. أنشئ دليلاً.
  2. احفظ ملف dspl لمجموعة البيانات في الدليل الذي أنشأته. احرص على ما يلي: استخدام الامتداد xml.
  3. احفظ أي ملفات .csv محلية في الدليل نفسه. ملفات البيانات التي المشار إليها عبر عناوين URL.
  4. اضغط على الدليل.
  5. تحميل مجموعة البيانات إلى Google Public Data المستكشف.

بمجرد تحميل مجموعة البيانات الخاصة بك والتحقق من صحتها، يمكنك اختبارها عند توقيعك إلى حسابك على Google. لن يتم نشره إلا بعد التحقق من صحته وأخبرنا أنها جاهزة.