2012-05-07 8 views
5

मैं RDF बनाने के लिए है कि इस तरह दिखता है की जरूरत है:जेना से नेस्टेड आरडीएफ/एक्सएमएल कैसे प्राप्त करें?

<rdf:Description rdf:about='uri1'> 
    <namespace:level1> 
    <rdf:Description> 
     <namespace:blankNode rdf:resource='uri2'/> 
     <namespace:text></namespace:text> 
    </rdf:Description> 
    </namespace:level1> 
</rdf:Description> 

<rdf:Description rdf:about="uri2"> 
    some properties here 
</rdf:Description> 

जैसा कि आप देख सकते हैं, वहाँ नेस्टेड संरचनाओं, साथ ही खाली नोड्स रहे हैं। (मुझे लगता है कि अगर मेरे संरचना में "blankNode" संपत्ति के लिए सटीक शब्दावली है पता नहीं।) अगर मैं का उपयोग

model.write(System.out, "RDF/XML-ABBREV"); 

फिर भी खाली नोड नीडिंत है, है जो मैं नहीं चाहता। क्या जेना का उपयोग करके इस तरह की संरचना पाने का कोई तरीका है? या जावा के लिए कोई अन्य लाइब्रेरी है जो इसे बेहतर तरीके से संभाल सकती है?

उत्तर

6

मुझे लगता है कि आप इस गलत तरीके से जा रहे हैं।

नेस्टिंग एक अवधारणा है जो पेड़ के बारे में बात करते समय केवल समझ में आता है। लेकिन आरडीएफ पेड़ों के बारे में नहीं है, यह तीनों के बारे में है। एक्सएमएल की संरचना के बारे में थोड़ी देर के लिए भूल जाओ, और एक्सएमएल में एन्कोड किए गए ट्रिपल के बारे में सोचें। मुझे model.write(System.out, "N-TRIPLES"); इसके लिए सबसे उपयोगी लगता है।

आपको सबसे पहले यह समझने की आवश्यकता है कि आप अपने आरडीएफ/एक्सएमएल फ़ाइल को व्यक्त करने के लिए क्या ट्रिपल चाहते हैं। जब तक यह सही ट्रिपल व्यक्त करता है, इससे कोई फर्क नहीं पड़ता कि एक नोड दूसरे के अंदर घोंसला लिखा गया है या किस क्रम में चीजें दिखाई देती हैं। ये पूरी तरह से "कॉस्मेटिक" प्रश्न हैं, जैसे इंडेंटेशन।

+0

स्पष्टीकरण के लिए धन्यवाद! यह एक स्कूल परियोजना के लिए है इसलिए संरचना के लिए आवश्यकताओं को मुझे दिया गया था :)। लेकिन मैंने अब अपने प्रोफेसर से बात की और इसे बदल दिया। – user1355348

+0

पूरी तरह से साइग्री से सहमत हैं, मॉडल.write (System.out, "TURTLE") भी आज़माएं; (एक और 'मानवीय' क्रमबद्धता) और आरडीएफ/आरडीएफ/एक्सएमएल क्रमबद्धता को देखते हुए आरडीएफ के बारे में सीखने के बारे में भूल जाओ। 'अजीब आवश्यकताओं' को बदलने की मांग करना अच्छा है। ;-) – castagna

+0

अपने प्रोफेसर "प्रबुद्ध" पर अच्छा काम! आप निश्चित रूप से इसके लिए +1 के लायक हैं ;-) – cygri

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