उपयोगकर्ता 205512 सुझाव देता है कि, उस पकड़ को दोबारा पकड़ना संभव नहीं है, और जैसा कि वे इंगित करते हैं, नोड्स प्राप्त करने वाले आपके डेटा में मनमानी स्तरों को नीचे जाने के लिए वैकल्पिक (ओं) का उपयोग करके, गैर-तुच्छ आकार वाले डेटाबेस पर कुछ भी संभव नहीं है।
बोनोड स्वयं स्थानीय स्तर पर स्केल किए गए हैं, परिणाम सेट पर, या फ़ाइल में। इस बात की कोई गारंटी नहीं है कि एक बीएनओडी आपको पार्सिंग से मिलता है या परिणाम सेट से एक ही आईडी है जो डेटाबेस में उपयोग की जाती है (हालांकि कुछ डेटाबेस क्वेरी परिणामों के लिए इसकी गारंटी देते हैं)। इसके अलावा, "चयन? एस" जैसे प्रश्न {? S? P _: bnodeid1} "जैसा है" चुनें? कहां {? एस? पी? ओ} "- ध्यान दें कि उस मामले में बोनोड को चर के रूप में माना जाता है , "चीज w/id 'bnodeid1' के रूप में नहीं" डिजाइन के इस quirk bnodes के लिए क्वेरी करना मुश्किल बनाता है, इसलिए यदि आप डेटा के नियंत्रण में हैं, तो मैं उनका उपयोग न करने का सुझाव दूंगा। सामानों के नाम उत्पन्न करना मुश्किल नहीं है जो अन्यथा बीएनओडी होंगी, और नामित संसाधन v। Bnodes क्वेरीिंग के दौरान ओवरहेड नहीं बढ़ाएंगे।
इससे आपको रिकर्स करने और डेटा को पकड़ने में मदद नहीं मिलती है, लेकिन इसके लिए, मैं ऐसे सामान्य प्रश्नों की सिफारिश करने की अनुशंसा नहीं करता; वे अच्छी तरह से स्केल नहीं करते हैं और आमतौर पर आप चाहते हैं या जरूरत से अधिक वापस आते हैं। मैं सुझाव दूंगा कि आप अधिक निर्देशित प्रश्न पूछें। आपकी मूल निर्माण क्वेरी पूरे डेटाबेस की सामग्री को नीचे खींच लेगी, जो आम तौर पर आप जो चाहते हैं वह नहीं है।
आखिरकार, वर्णन उपयोगी हो सकता है, मानक कार्यान्वयन नहीं है; SPARQL spec किसी विशेष व्यवहार को परिभाषित नहीं करता है, इसलिए यह जो भी देता है वह डेटाबेस विक्रेता को छोड़ दिया जाता है, और यह अलग हो सकता है। यदि आप अपने आवेदन के साथ विभिन्न डेटाबेस की कोशिश करने की योजना बनाते हैं तो यह आपके कोड को कम पोर्टेबल बना सकता है। यदि आप वर्णन से बाहर एक विशिष्ट व्यवहार चाहते हैं, तो आप इसे स्वयं लागू करने के लिए सबसे अच्छे हैं। संसाधन के लिए संक्षिप्त बाध्य वर्णन की तरह कुछ करना कोड का एक आसान टुकड़ा है, हालांकि आप बोनोड के आस-पास कुछ सिरदर्द में भाग सकते हैं।
आप एक तरह से जहां एक निर्माण क्वेरी चलाने और फिर चला सकते हैं कि के खिलाफ एक SPARQL क्वेरी में यह कर रहे हैं, तो आप वास्तव में * कर सकते हैं * एक संक्षिप्त-घिरा विवरण (सीबीडी) SPARQL प्रश्नों का उपयोग कर मिलता है। [त्रिभुज क्वेरी को दोबारा वापस करने के लिए स्पैक्ल प्रश्न पूछें जो एक rdfs बनाते हैं: कक्षा परिभाषा] (http://answers.semanticweb.com/questions/26220/sparql-query-to-return-all-triples-recursively- that-make-up-an-rdfsclass-definition) (और हो सकता है [SPARQL में संक्षेप में संक्षिप्त विवरण लागू करें] (http://answers.semanticweb.com/questions/20361/implementing-concise-bounded-description-in-sparql))। –
पिछली टिप्पणी में उत्तरों के पीछे विचार यह है कि आप एक * नई संपत्ति * बना सकते हैं जो प्रभावी रूप से संपत्ति पथ के भीतर भविष्यवाणी के रूप में कार्य करता है। उदाहरण के लिए, प्रत्येक आईआरआई नोड I के लिए, आप एक तिहाई "मैं selfIRI i" जोड़ते हैं। फिर जब आप "? X p/selfIRI? Y" जैसे पथ लिखते हैं, तो आपने यह सुनिश्चित किया है कि y एक आईआरआई नोड है। –