2011-09-02 14 views
5

मुझे पता है कि यह बेहद नवीनता है, लेकिन आरडीएफ पर डब्ल्यू 3 स्कूलों पर कुछ ट्यूटोरियल्स के माध्यम से जाने और प्राइमर पढ़ने के बाद भी, मुझे लगता है कि एक्सएमएल में एक साधारण विषय-पूर्वानुमान-वस्तु rdf रिलेशनशिप कैसे व्यक्त किया जाता है।नौसिखिया प्रश्न: rdf के साथ संबंध कैसे व्यक्त करें?

मैं एक कार है:

चलो कहते हैं कि मैं इस तरह एक अवधारणा करते हैं। मेरी कार में एक जीपीएस रिसीवर है। कार के वर्तमान जीपीएस निर्देशांक एक्स अक्षांश, वाई रेखांश हैं।

मैं

<RDF> 
<Owner Name="me"> 
    <has>car</has> 
<car> 
    <has>gpsreceiver</has> 
    <has><cordinates X="somevalue", Y="somevalue"></has> 
</car> 
</Owner> 
</RDF> 

के रूप में इस का प्रतिनिधित्व करते हैं इस लिए कि यह कैसे लिखा है है? मुझे समझ में परेशानी है कि विषयों, वस्तुओं और तत्वों को तत्वों और विशेषताओं में कैसे भविष्यवाणी करता है।

एक बार मैंने इसे हल कर लिया है, आखिरकार मैं "कार" को अपनी स्कीमा बनना चाहता हूं, इसलिए मैं बस इसके नामस्थान का उल्लेख कर सकता हूं और बस कह सकता हूं "मेरे पास कार मॉडल एबीसी लाइसेंस प्लेट डीईएफ है अब 12.34 निर्देशांक पर "।

कृपया, कृपया कुछ प्रकाश डालें? मेरी दिमागी 'अंत में और मेरे चारों ओर कोई भी rdf या ontologies पता करने के लिए मुझे :-(

उत्तर

5

मैं अन्य उत्तरदाताओं से सहमत हूं कि आपको एक्सएमएल सिंटैक्स के बारे में चिंता नहीं करनी चाहिए, लेकिन मैं तुरंत ट्रिपल के बारे में सोचने का भी सुझाव नहीं दूंगा। सबसे पहले उन चीजों के बारे में सोचने के साथ शुरू करें जो आप मॉडल करने की कोशिश कर रहे हैं, फिर ट्रिपल अधिक स्पष्ट होंगे।

तो, आपके पास एक चीज है, आपकी कार, जो एक प्रकार की कार है। सामान्य रूप से किसी भी तरह की कार होने के नाते, और विशेष रूप से आपकी कार होने के नाते, दो अलग-अलग विचार हैं। तो आपको दो अलग-अलग नामों की आवश्यकता होगी - आरडीएफ उन्हें संसाधनों को कॉल करता है - सभी कारों की कक्षा का प्रतिनिधित्व करने और आपकी कार के उदाहरण का प्रतिनिधित्व करने के लिए। इसी प्रकार, ऐसी चीजें हैं जो सामान्य रूप से जीपीएस हैं, और विशेष रूप से आपकी कार में जीपीएस हैं। एक उपयुक्त नाम स्थान मान लिया जाये, तो:

:car127 rdf:type :Car . 
:gps99 rdf:type :GPS. 

कि एक ट्रिपल व्यक्त किसी दिए गए कार (विषय car127) (विधेय rdf:type) सभी कारों के वर्ग (वस्तु Car) के एक सदस्य है, और इसी तरह एक जीपीएस के लिए है कि ।

आपकी कार नीना के स्वामित्व में है, जो एक व्यक्ति है।

:nina rdf:type foaf:Person. 
:nina foaf:name "Nina". 
:car127 :ownedBy :nina. 

(ठीक है, मैं एक अतिरिक्त ट्रिपल कहा: इतना है कि दो और रिश्ते, एक कह रही है कि नीना एक व्यक्ति है, और एक कि नीना का मालिक है कि विशिष्ट कार (द्वारा कार की पहचान उसी संसाधन को फिर से उपयोग करते हुए) है संसाधन यूआरआई :nina को नीना नाम से संबंधित करने के लिए)।

:car127 :containsComponent :gps99. 

अब, हम अनौपचारिक रूप से कहना है कि जीपीएस किसी दिए गए अक्षां और लंबे समय स्थिति "है":

विशिष्ट जीपीएस विशिष्ट कार का एक घटक है। समय के साथ स्पष्ट रूप से ये परिवर्तन (यदि नहीं, तो एक नई कार प्राप्त करें :)। आप एक्स और वाई जीपीएस संसाधन से सीधे जुड़े हुए भविष्यवाणी कर सकते हैं और मॉडल में मूल्यों को बार-बार अपडेट कर सकते हैं। लेकिन यदि आप अपने जीपीएस के बारे में सोचते हैं कि विशेष समय पर रीडिंग की एक श्रृंखला दे रही है, तो यह थोड़ा स्पष्ट और अधिक वर्णनात्मक लगता है। तब हमने:

:gps99 :reading [ 
    rdf:type :Reading; 
    :lat 51.14276; 
    :long -2.71619; 
    :at "2011-09-02T123400"^^xsd:dateTime 
]. 

वर्ग कोष्ठक [...] एक नया संसाधन जिसका गुण को शुरू करने की एक छोटी-हाथ तरीका है - रिश्ते - हम वर्णन कर सकते हैं, लेकिन जिनकी पहचान हम नहीं जानते या के बारे में परवाह नहीं है। तकनीकी रूप से इसे अज्ञात नोड या बीएनओडी कहा जाता है, लेकिन अब चिंता करने की कोई जानकारी नहीं है। यह ध्यान देने योग्य है कि जीपीएस डिवाइस से :Reading के संसाधन में एक रिश्ते (': पढ़ना') है (पूंजी आर को नोट करें - यह उन संसाधनों को अलग करने के लिए एक सम्मेलन है जो अन्य प्रकार के संसाधनों से कक्षाओं की पहचान करते हैं)। इस रीडिंग संसाधन में चार गुण हैं: एक प्रकार, मनाया गया लेट और लंबा, और पढ़ने का समय। अगर हम चाहते थे, तो हम समय के अन्य बिंदुओं के लिए और अधिक रीडिंग जोड़ सकते हैं, जो एक ट्रैक मॉडलिंग के लिए तैयार होगा ... लेकिन यह एक और चर्चा है!

+0

स्पष्टीकरण के लिए धन्यवाद। मैंने शुरुआत में rdf triples के निर्देशित ग्राफ को चित्रित करके और फिर w3schools.com से कुछ ऑनलाइन rdf ट्यूटोरियल में उदाहरणों का पालन करने की कोशिश की। आपके द्वारा अभी लिखा गया वाक्यविन्यास मेरे लिए नया है, और अब मेरे पास और प्रश्न हैं: मैं ट्रिपल लिखने के इस वाक्यविन्यास के बारे में और अधिक जानकारी कैसे प्राप्त करूं, और मुझे किन नामों का उपयोग करना चाहिए? मुझे लगता है कि आप foaf, और xsd का उपयोग करते हैं .. क्या कोई जगह या यूआरएल है जहां मुझे आसानी से प्रासंगिक नेमस्पेस मिल सकते हैं? –

+0

वाक्यविन्यास को कछुए कहा जाता है। उदाहरण के लिए, http://en.wikipedia.org/wiki/Turtle_%28syntax%29 –

+0

नामस्थानों के लिए, आप आम तौर पर उन शब्दावली का वर्णन करने वाले दस्तावेज़ों में नामित देखेंगे जिन्हें आप उपयोग करना चाहते हैं - एफओएएफ, डीसी, इत्यादि। हालांकि, एक अच्छा संदर्भ बिंदु जो उपसर्ग को एकत्र करता है वह http: // उपसर्ग है।सीसी –

0

प्रबुद्ध के लिए मैं लिखते थे (नामस्थान डीईसीएल अनदेखी)

<rdf:RDF > 
<!-- about 'me' --> 
<my:Owner rd:about="http://example.com/me"> 
    <my:has rdf:resource="http://example.com/thecar"/> 
</my:Owner> 

<!-- about the car --> 
<my:Car rdf:about="http://example.com/thecar"> 
    <my:hasPosition> 
    <my:Gpsreceiver> 
     <my:X>somevalue</my:X> 
     <my:Y>somevalue</my:Y> 
     </my:Gpsreceiver> 
    </my:hasPosition> 
</my:Car> 
</rdf:RDF> 

आप यहां अपनी rdf मान्य कर सकते हैं लगता है: http://www.w3.org/RDF/Validator/

+0

आरडीएफ/एक्सएमएल बदसूरत आरडीएफ/एक्सएमएल दिखाने के लिए आरडीएफ –

2

मैंने कभी क्या आप XML की तरह देखने की जरूरत के बारे में सोचने के लिए नहीं की कोशिश करेगा, विनिर्देश

के लिए

तो एक ही जानकारी को क्रमानुसार करने तो मैं कोशिश करते हैं और ट्रिपल में इसके बारे में सोचते हैं कई तरीके के लिए अनुमति देता है। अपने उदाहरण:

:Me :owns :MyCar . 
:MyCar :hasPart :GpsReceiver . 
:MyCar :hasXPosition "x" . 
:MyCar :hasYPosition "y" . 

यह इसे व्यक्त करने का एक बिल्कुल मूल तरीका है और ऐसे विकल्प हैं जैसे पियरे ने सुझाव दिया है।

आरडीएफ में सबकुछ त्रिभुज के रूप में दर्शाया जाता है, इसलिए इस बारे में सोचने का प्रयास करें कि आप ट्रिपल में अपने डेटा का प्रतिनिधित्व कैसे करेंगे, फिर उपलब्ध पुस्तकालयों/औजारों का उपयोग करें ताकि आपके लिए आरडीएफ/एक्सएमएल जैसे क्रमिकरण उत्पन्न हो सकें।

+0

+1 दिखाने/पढ़ाने के लिए सबसे भयानक वाक्यविन्यास है; –

+0

स्पष्टीकरण के लिए बहुत बहुत धन्यवाद .. मैंने अभी आपके ऊपर दिए गए उत्तर का जवाब दिया और मैं सोच रहा था अभी भी एक्सएमएल के बारे में सोचने के बिना आरडीएफ ट्रिपल "लेखन" में गहराई से गुजरने की जरूरत है। क्या इस बारे में कोई लेख ऑनलाइन है कि मैं उन लोगों के बारे में कैसे जान सकता हूं? –

+0

इसके अलावा, आप एक्सएमएल क्रमबद्धता उत्पन्न करने के लिए उपलब्ध पुस्तकालयों और औजारों का उल्लेख करते हैं ... क्या आप कुछ उदाहरणों का उदाहरण दे सकते हैं जिनका मैं उपयोग कर सकता हूं? मैं मूल रूप से उबंटू और कभी-कभी मैक ओएस एक्स पर काम करता हूं। धन्यवाद –

संबंधित मुद्दे