DSPL डेवलपर गाइड

DSPL का मतलब है Dataset Publishing Language. यह प्रतिनिधित्व करने के लिए एक फ़ॉर्मैट है दोनों मेटाडेटा (डेटासेट के बारे में जानकारी, जैसे कि का नाम और प्रोवाइडर, साथ ही इसमें शामिल कॉन्सेप्ट) और डेटासेट का असल डेटा है. इस फ़ॉर्मैट में बताए गए डेटासेट ये हो सकते हैं Google सार्वजनिक डेटा में आयात किए गए Explorer एक ऐसा टूल है जिसकी मदद से डेटा शामिल है.

ध्यान दें: Google के सार्वजनिक डेटा पर डेटा अपलोड करने के लिए सार्वजनिक डेटा अपलोड करने वाले टूल का इस्तेमाल करके, आपके पास Google खाता होना चाहिए.

यह दस्तावेज़ उन डेटा मालिकों के लिए है जो अपना कॉन्टेंट Public Data Explorer में उपलब्ध हैं. यह ट्यूटोरियल से आगे की जानकारी देता है. DSPL स्कीमा और इस्तेमाल की जा सकने वाली सुविधाओं की जानकारी. सिर्फ़ बुनियादी जानकारी है माना जाता है कि संबंधित डेटाबेस की जानकारी भी उपयोगी.

हालांकि, यह ज़रूरी नहीं है, लेकिन हमारा सुझाव है कि आप ट्यूटोरियल पढ़ें. यह छोटा और इस दस्तावेज़ को पढ़ने से पहले समझने में आसान हो.

खास जानकारी

DSPL डेटासेट एक .zip फ़ाइल है, जिसमें एक एक्सएमएल फ़ाइल और CSV का एक सेट होता है फ़ाइलें शामिल हैं. CSV फ़ाइलें ऐसी सरल टेबल होती हैं जिनमें डेटासेट का डेटा होता है, जबकि एक्सएमएल फ़ाइल, डेटासेट के मेटाडेटा के बारे में बताती है. बाद वाले में ये शामिल हैं जानकारी देने वाला मेटाडेटा, जैसे कि उपायों का ब्यौरा, और स्ट्रक्चरल मेटाडेटा, जैसे कि टेबल के बीच रेफ़रंस. यह मेटाडेटा इसका इस्तेमाल करके, ऐसे लोग आपके डेटा को एक्सप्लोर और विज़ुअलाइज़ कर सकते हैं जो विशेषज्ञ नहीं हैं.

प्रोसेस

आम तौर पर, DSPL डेटासेट बनाने की प्रोसेस इस तरह है (कुछ इसमें कुछ कदम साथ-साथ हो सकते हैं):

  1. अपनी DSPL एक्सएमएल फ़ाइल बनाएं.
  2. अपने डेटासेट में इस्तेमाल करने के लिए, किसी बाहरी डेटा सोर्स की पहचान करें.
  3. अपने कॉन्सेप्ट, स्लाइस, और (वैकल्पिक रूप से) विषय तय करें. बार-बार अपनी DSPL फ़ाइल का कॉन्टेंट अपडेट करें.
  4. अपना सोर्स डेटा .csv फ़ाइलों में एक्सपोर्ट करें.
  5. DSPL डेटासेट बनाएं.
  6. Google को डेटासेट सबमिट करें.

एक्सएमएल स्ट्रक्चर

खास जानकारी

DSPL एक्सएमएल फ़ाइल, डेटासेट के मेटाडेटा के बारे में बताती है, जिसमें ये शामिल हैं कॉन्सेप्ट, स्लाइस, विषयों, और टेबल के बीच स्ट्रक्चर का संबंध. हालांकि, इस फ़ाइल को हाथ से बनाया जा सकता है, लेकिन डेटा प्रोसेसिंग के टूल की मदद से ऐसा किया जा सकता है और स्क्रिप्ट इस प्रोसेस को काफ़ी आसान बना सकते हैं. नए वर्शन में सैंपल DSPL फ़ाइल देखें विंडो खोलें.

इस फ़ाइल में कई सेक्शन हैं, जिनकी खास जानकारी टेबल में दी गई है देखें. टेबल के बाद, हम इनमें से हर एक के बारे में ज़्यादा जानकारी देते हैं जानकारी.

सेक्शन खास जानकारी ज़्यादा जानकारी
हेडर और इंपोर्ट डेटासेट के बाकी सभी एलिमेंट का पैरंट. इसमें यह शामिल है डेटासेट के लिए target नेमस्पेस (जैसे, आइडेंटिफ़ायर) इंपोर्ट किए गए किसी भी डेटासेट के नेमस्पेस. दस्तावेज़ के रूप में
डेटासेट की जानकारी डेटासेट का नाम, जानकारी, और यूआरएल. दस्तावेज़ के रूप में
सेवा देने वाली कंपनी की जानकारी डेटासेट देने वाली कंपनी का नाम, जानकारी, और यूआरएल. दस्तावेज़ के रूप में
सिद्धांत

"चीज़ें" की परिभाषाएं जो डेटासेट में दिखते हैं (उदाहरण के लिए, देश, बेरोज़गारी दर, लिंग वगैरह)

हर कॉन्सेप्ट का एक यूनीक आइडेंटिफ़ायर होता है, जिसे स्लाइस और टेबल.

दस्तावेज़ के रूप में
स्लाइस

अवधारणाओं का संयोजन, जिसके लिए सांख्यिकीय डेटा होता है डेटासेट. हर स्लाइस में डाइमेंशन और मेट्रिक के मुताबिक हो.

रेफ़रंस के कॉन्सेप्ट और टेबल को भी काटता है, जिनमें असल डेटा शामिल है. हर स्लाइस का एक यूनीक आइडेंटिफ़ायर होता है, जिसे टेबल में, असल डेटा शामिल होता है.

दस्तावेज़ के रूप में
टेबल कॉन्सेप्ट और स्लाइस के लिए डेटा तय करें. कॉन्सेप्ट टेबल होल्ड गिनती और स्लाइस टेबल में आंकड़ों का डेटा होता है. टेबल के बारे में जानकारी दी गई है को डाउनलोड करें और असल डेटा वाली .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>

नेमस्पेस एक ऐसा यूनीक आइडेंटिफ़ायर है जिसे किसी एक्सएमएल स्कीमा (एक्सएमएल एलिमेंट और एट्रिब्यूट का सेट). कॉन्टेंट बनाने targetNamespace, आपके डेटासेट की पहचान करने वाला यूआरआई देता है. किसी असल संसाधन पर ले जाने के लिए इस यूआरआई की ज़रूरत नहीं है, लेकिन यह एक अच्छा है यूआरआई को इसके बारे में बताने वाले दस्तावेज़ का समाधान करने का सुझाव दो या डेटासेट.

आपको targetNamespace देने की ज़रूरत नहीं है. अगर आपको पसंद नहीं है, तो इंपोर्ट करने पर आपके लिए एक इमेज अपने-आप जनरेट हो जाएगी समय.

targetNamespace एट्रिब्यूट के बाद, xmlns एट्रिब्यूट, अन्य एक्सएमएल स्कीमा के बारे में बताते हैं, जिनका इस्तेमाल किया जाएगा फ़ाइल में मौजूद है. हर DSPL फ़ाइल में Google के सार्वजनिक डेटा का स्कीमा, जिसका यूआरआई "http://schemas.google.com/dspl/2010" है और उसे इस तरह इस्तेमाल करें डिफ़ॉल्ट नेमस्पेस. इसमें स्टैंडर्ड W3 एक्सएमएल स्कीमा भी शामिल होना चाहिए इसकी पहचान "http://www.w3.org/2001/XMLschema-instance" से की गई है. जैसे अगले सेक्शन में बताया गया है, तो शामिल करने के लिए अन्य नेमस्पेस जोड़े जा सकते हैं दूसरे डेटासेट से मिली जानकारी.

अन्य डेटासेट नेमस्पेस इंपोर्ट करना

डेटासेट, परिभाषाओं और अन्य डेटासेट के डेटा का फिर से इस्तेमाल कर सकते हैं. Google, इसके लिए उदाहरण के लिए, कई बेसिक डेटासेट उपलब्ध कराता है, जो आम तौर पर कॉन्सेप्ट को उपयोगकर्ता के डेटा में दिखने लगता है. उदाहरण के लिए, ज़्यादातर डेटासेट को सालों को दिखाता है. नया कॉन्सेप्ट तय करने के बजाय, साल का इस्तेमाल करें "http://www.google.com/publicdata/dataset/time" पर सेट किए गए डेटासेट. कैननिकल पेज देखें ज़्यादा जानकारी के लिए, कॉन्सेप्ट पेज पर जाएं.

किसी बाहरी डेटासेट का इस्तेमाल करने के लिए, <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 सार्वजनिक डेटा के तत्वों का संदर्भ दे सकती है time डेटासेट में दिया गया है. दोहराएं यह प्रोसेस देखें.

बाहरी डेटासेट में कॉन्टेंट का रेफ़रंस देना

कोई दूसरा डेटासेट इंपोर्ट करने के बाद, कॉन्सेप्ट, स्लाइस, और डेटा भी शामिल कर सकते हैं. ऐसा करने के लिए, 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> एलिमेंट में जानकारी शामिल होती है देखें. काम के एक्सएमएल एलिमेंट का एक उदाहरण और जानकारी यहां है नीचे दी गई सूची उपलब्ध है.

उदाहरण

<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> का बच्चा. ज़्यादा जानकारी वाले यूआरएल का लिंक डेटासेट के बारे में जानकारी.

सेवा देने वाली कंपनी की जानकारी

<provider> एलिमेंट में, डेटासेट देने वाली कंपनी का नाम. काम के एक्सएमएल एलिमेंट का एक उदाहरण और जानकारी यहां है नीचे दी गई सूची उपलब्ध है.

उदाहरण

<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> का बच्चा. ज़्यादा जानकारी वाले यूआरएल का लिंक डेटासेट देने वाली कंपनी के बारे में जानकारी.

कॉन्सेप्ट

ब्यौरा

हर डेटासेट में एक या एक से ज़्यादा सिद्धांत होते हैं. कॉन्सेप्ट डेटासेट में दिखने वाले डेटा टाइप की परिभाषा. इसके साथ एक डेटासेट उदाहरण के लिए, डेमोग्राफ़िक (उम्र, लिंग, आय, शिक्षा वगैरह) से जुड़े डेटा में, लोगों की दिलचस्पी के हिसाब से देश, राज्य, जनसंख्या, और साल. किसी वैल्यू से जुड़ी डेटा वैल्यू दिए गए कॉन्सेप्ट को उस कॉन्सेप्ट के इंस्टेंस कहते हैं. कॉन्सेप्ट ये हैं आम तौर पर डेटासेट में बताया जाता है, लेकिन कुछ कॉन्सेप्ट (जैसे समय या साल) को बाहरी डेटासेट में समझा जा सकता है.

हर कॉन्सेप्ट में एक या उससे ज़्यादा प्रॉपर्टी हो सकती हैं. प्रॉपर्टी यह ऐसे कॉन्सेप्ट इंस्टेंस की विशेषता है जो समय के साथ स्थिर रहता है. उदाहरण के लिए, देश के सिद्धांत में प्रॉपर्टी 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 को बढ़ाया जा रहा है इसमें, वे सभी प्रॉपर्टी और एट्रिब्यूट इनहेरिट किए गए हैं जो एक्सटेंडेड कॉन्सेप्ट में बताए गए हैं: प्रॉपर्टी का नाम, ब्यौरा, यूआरएल, अक्षांश और देशांतर. कोई बात नहीं इनमें से कुछ एट्रिब्यूट को फिर से तय करने के लिए, country और प्रॉपर्टी सेट अप कर सकता है, बशर्ते परिभाषा दी गई परिभाषा से मेल खाती हो को भी बढ़ावा दिया जाएगा.
  • कॉन्सेप्ट <info> एलिमेंट में, कुंजी के बारे में बताया गया है जानकारी दी गई है. इसे डेटासेट के सार्वजनिक डेटा एक्सप्लोरर में लैंडिंग पेज.
  • <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, इंपोर्ट किए गए कॉन्सेप्ट का आईडी है prefix से जुड़ा बाहरी डेटासेट.
<info> वैकल्पिक कॉन्सेप्ट के बारे में ज़्यादा से ज़्यादा जानकारी देता है.
<name> हां <info> का बच्चा. कॉन्सेप्ट का नाम. कॉन्टेंट बनाने चाइल्ड एलिमेंट <value> में टेक्स्ट शामिल है - के लिए उदाहरण, Country.
<description> वैकल्पिक <info> का बच्चा. इसमें चाइल्ड एलिमेंट शामिल है <value>, जिसमें कॉन्सेप्ट को समझने की कोशिश करते हैं.
<url> वैकल्पिक <info> का बच्चा. इसमें चाइल्ड एलिमेंट शामिल है <value>, जिसमें कॉन्सेप्ट को समझने की कोशिश करते हैं.
<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 एट्रिब्यूट हो सकता है, यह बताने के लिए कि कॉन्सेप्ट और प्रॉपर्टी की वैल्यू भी शामिल होती हैं.

प्रॉपर्टी, नेस्ट किए गए info और type, जो बिलकुल वैसे ही परिभाषित किए गए हैं जैसे किसी कॉन्सेप्ट के लिए दिए गए हैं. अगर प्रॉपर्टी में यह जानकारी नहीं दी गई है, तो type ज़रूरी है concept एट्रिब्यूट का इस्तेमाल किया जाता है और यह वैल्यू दी गई जानकारी का इस्तेमाल करें.

<attribute> वैकल्पिक

कॉन्सेप्ट की एक एट्रिब्यूट. एट्रिब्यूट अतिरिक्त जानकारी दिखाते हैं जानकारी (उदाहरण के लिए, GDP एक प्रतिशत है). वैल्यू id एट्रिब्यूट की वैल्यू में शामिल होनी चाहिए कॉन्सेप्ट को समझने की कोशिश करते हैं. एक वैकल्पिक concept एट्रिब्यूट का इस्तेमाल इन कामों के लिए किया जा सकता है इससे पता चलता है कि इस एट्रिब्यूट की वैल्यू, दिए गए उदाहरण हैं कॉन्सेप्ट को समझने की कोशिश करते हैं. अगर concept बताया गया है, तो id छोड़ा जा सकता है. इसका मान स्पष्ट रूप से में बताया गया है. (उदाहरण के लिए, <attribute concept="unit:unit"/> इसके बराबर है <attribute id="unit" concept="unit:unit"/>.

एट्रिब्यूट, नेस्ट किए गए info और type, जो एक कॉन्सेप्ट की तरह ही परिभाषित किए गए हैं. type तब ज़रूरी होता है, जब यह एट्रिब्यूट किसी concept एट्रिब्यूट का इस्तेमाल किया जाता है और यह वैल्यू दी गई जानकारी का इस्तेमाल करें.

<table> वैकल्पिक यह, कॉन्सेप्ट के डेटा वाली डेटा टेबल की पहचान करता है. कॉन्टेंट बनाने ज़रूरी ref एट्रिब्यूट की वैल्यू, टेबल से मेल खानी चाहिए आईडी से जुड़े <table> एलिमेंट में बताया गया है.

स्लाइस

ब्यौरा

स्लाइस, उन कॉन्सेप्ट का मिला-जुला रूप है जिनके लिए डेटा मौजूद होता है. एक स्लाइस इसमें दो तरह के कॉन्सेप्ट रेफ़रंस शामिल होते हैं: डाइमेंशन और मेट्रिक के मुताबिक हो. डाइमेंशन एक ऐसा कॉन्सेप्ट है जिसका इस्तेमाल सेगमेंट या फ़िल्टर करने के लिए किया जाता है आपका डेटा. वहीं दूसरी ओर, मेट्रिक, ऑब्ज़र्व की गई वैल्यू या हर डेटा पॉइंट से जुड़ी वैल्यू होती हैं.

आम तौर पर, डाइमेंशन कैटगरी होते हैं, जबकि मेट्रिक गैर-कैटगरिकल होते हैं. समय के हिसाब से अलग-अलग, संख्या वाली वैल्यू. हर प्रोटोटाइप के कुछ उदाहरण यहां दिए गए हैं अनुसरण करता है:

  • डाइमेंशन: देश, राज्य, काउंटी, इलाका, साल, महीना, लिंग, उम्र की कैटगरी, इंडस्ट्री सेगमेंट
  • मेट्रिक: जनसंख्या, GDP, बेरोज़गारी की दर, साक्षरता, रेवेन्यू, लागत, कीमत

उदाहरण

<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 एट्रिब्यूट शामिल हैं; पहले का मान है स्लाइस में एक मेट्रिक होती है और दूसरे का मान टेबल के कॉलम में होता है संबंधित है.

टेबल

ब्यौरा

DSPL फ़ाइल का tables सेक्शन, डेटा की पहचान करता है डेटासेट में शामिल टेबल हैं. इन टेबल को कॉन्सेप्ट या स्लाइस से. हर <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> का बच्चा. वह डेटा फ़ाइल जिसका रेफ़रंस दिया गया है टेबल. अगर फ़ाइल का नाम यूआरएल के रूप में है (उदाहरण के लिए, http://...), तो फ़ाइल को इसके ज़रिए फ़ेच किया जाएगा सही प्रोटोकॉल (एचटीटीपी, एचटीटीपीएस या एफ़टीपी); अगर ऐसा नहीं होता है, तो एक फ़ाइल इस नाम के साथ डेटासेट को बंडल करना ज़रूरी है. ज़रूरी एट्रिब्यूट format की वैल्यू यह है हमेशा csv. हालांकि, encoding एट्रिब्यूट वैकल्पिक है, आपकी .csv फ़ाइलें UTF-8 एन्कोडेड होनी चाहिए.

विषय

ब्यौरा

विषय, कॉन्सेप्ट को हैरारकी के हिसाब से कैटगरी में बांटते हैं. इससे उपयोगकर्ताओं को नेविगेट करने में मदद मिलती है डेटासेट को आसानी से पढ़ सकते हैं.

<topics> एलिमेंट आपकी DSPL फ़ाइल में <concepts> एलिमेंट है. (का क्रम एलिमेंट महत्वपूर्ण होते हैं और आप शायद अपना डेटासेट अपलोड न कर पाएं एलिमेंट, गलत क्रम में दिखते हैं.) विषयों का इस्तेमाल करने के लिए, उन्हें यहां दी गई कॉन्सेप्ट की परिभाषा.

उदाहरण

यहां विषय की परिभाषा का एक उदाहरण दिया गया है:

<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 डेटा फ़ाइलें

एक्सएमएल मेटाडेटा फ़ाइल के अलावा, DSPL डेटासेट CSV फ़ॉर्मैट में एक या ज़्यादा डेटा फ़ाइलें शामिल करें. हर डेटा फ़ाइल डेटासेट में टेबल का इस्तेमाल करता है और <data>...</data> सेक्शन. सैद्धांतिक तौर पर, ये फ़ाइलें और इनसे जुड़ी टेबल का इस्तेमाल, दोनों में से किसी एक सिद्धांत को दिखाने के लिए किया जाता है परिभाषाएं या स्लाइस डेटा शामिल करें. इनमें से हर एक डेटा फ़ाइल टाइप, नीचे ज़्यादा जानकारी दी गई है.

ध्यान दें कि चाहे इसका मकसद कुछ भी हो, सभी डेटा फ़ाइलों को कॉमा-डीलिमिटेड (CSV) वाली UTF-8 टेक्स्ट फ़ाइलें. फ़ाइलों में सिर्फ़ सादा टेक्स्ट होना चाहिए टेक्स्ट; कोई एचटीएमएल नहीं. आप डेटा फ़ाइलों को मैन्युअल तरीके से बना सकते हैं, लेकिन असल में को या तो ओरिजनल डेटा वाले टूल में डेटा को शामिल करना होगा (जैसे, स्प्रेडशीट) या एक्सपोर्ट की गई फ़ाइल में.

फ़ाइलों को डेटासेट के साथ बंडल किया जा सकता है या अगर नाम यह यूआरएल किसी रिमोट सोर्स से एचटीटीपी, एचटीटीपीएस या एफ़टीपी के ज़रिए फ़ेच किया गया है.

कॉन्सेप्ट डेटा फ़ाइलें

कॉन्सेप्ट डेटा फ़ाइलों में हर कॉन्सेप्ट के लिए काम की जानकारी होती है. कॉन्टेंट बनाने कॉन्सेप्ट डेफ़िनिशन में, <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:lang एट्रिब्यूट का इस्तेमाल, सभी प्रॉडक्ट के साथ किया जा सकता है आपकी DSPL फ़ाइल में <value> एलिमेंट है. यह एट्रिब्यूट मानक, 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>

countries_table की CSV फ़ाइल में नीचे दिया गया फ़ॉर्म:

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 स्कीमा भी शामिल कर सकता है.

हैरारकी

कॉन्सेप्ट हैरारकी को डीएसपीएल में 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 एलिमेंट के ज़रिए तय किए जाते हैं की तुलना करनी होगी. एक्सटेंशन की मदद से, यह बताया जा सकता है कि कोई कॉन्सेप्ट, किसी अन्य और बड़ी कॉन्सेप्ट की सब-क्लास है. कॉन्टेंट बनाने एक्सटेंडेड कॉन्सेप्ट में, अपने पैरंट, सभी एट्रिब्यूट और प्रॉपर्टी को इनहेरिट किया जाता है, और अतिरिक्त विज्ञापन भी जोड़ सकते हैं.

उदाहरण के लिए, Google का currency कॉन्सेप्ट 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 फ़ाइलों को एक ही डायरेक्ट्री में सेव करें. ऐसी डेटा फ़ाइलें जो जोड़ा गया है, तो उसे हटाया जा सकता है.
  4. डायरेक्ट्री को ज़िप करें.
  5. Google सार्वजनिक डेटा पर अपना डेटासेट अपलोड करें एक्सप्लोरर.

डेटासेट अपलोड होने और उसकी पुष्टि होने के बाद, साइन किए जाने पर उसकी जांच की जा सकती है अपने Google खाते में लॉग इन करें. यह तब तक पब्लिश नहीं होगा, जब तक आप इस बात की जांच नहीं कर लेते और बताएं कि यह तैयार है.