2013-05-24 8 views
6

मैं डेटाटाइप प्रॉपर्टी की श्रेणी xsd होने के लिए कैसे निर्दिष्ट कर सकता हूं: स्ट्रिंग जिसका शाब्दिक रूप मेल खाता है [ए-जेड]? ओडब्लूएल प्रतिबंध कम से कम पहली नज़र में मेरे लिए चाल नहीं करते हैं। नियमित अभिव्यक्तियों के साथ ऐसा करने का कोई तरीका है और यदि हां, तो कहां?xsd को प्रतिबंधित करें: rdfs के लिए स्ट्रिंग [ए-जेड]: रेंज

+0

डी आईडी आप इसके साथ कोई प्रगति करते हैं? –

उत्तर

0

मैनचेस्टर वाक्य रचना में निम्नलिखित अभिव्यक्ति चाल करना चाहिए:

string[pattern "A-Z"]

आप इसे सीधे डाल के रूप में डेटा शिष्य में रेंज कर सकते हैं। मुझे यकीन नहीं है कि कौन से तर्क निर्माण को कार्यान्वित कर रहे हैं, हालांकि मैंने पहले कभी इसका उपयोग नहीं किया है।

इस पर अधिक जानकारी: http://www.w3.org/TR/owl2-manchester-syntax/#facet

4

मैं तुम्हारा मतलब "एकल बड़े अक्षर" जो string[pattern "[A-Z]"] है लगता है।

यदि आप प्रोटेज का उपयोग कर रहे हैं, तो इसे "डेटा रेंज अभिव्यक्ति" टैब में दर्ज करें।

हर्मिटी 1.3.7 इसे जांच सकता है और असंगत संपत्ति मूल्यों के बारे में स्पष्टीकरण प्रदान कर सकता है।

+0

धन्यवाद, मैं इस – chile

1

अन्य उत्तरों ने समझाया है कि यह संपत्ति की स्ट्रिंग रेंज को [A-Z] से मेल खाने वाले लोगों तक स्ट्रिंग रेंज को प्रतिबंधित करने के लिए एक्सएसडी पहलुओं का उपयोग करके किया जा सकता है, लेकिन कोई भी परिणामी आरडीएफ दिखाता है। मैंने प्रोटेजे में एक बहुत ही सरल ऑटोलॉजी बनाई और डेटा संपत्ति hasLatinInitial परिभाषित की। जैसा कि अन्य उत्तरों का वर्णन किया गया है, सीमा string[pattern "[A-Z]"] के रूप में निर्दिष्ट की गई थी। तब मैं एक व्यक्ति JohnDoe बनाया है और डेटा संपत्ति दावे कहा कि

JohnDoe hasLatinInitial "J" . 
JohnDoe hasLatinInitial "D" . 

और साधु 1.3.7 वास्तव में भाग गया और कोई विसंगति की सूचना दी। मैं तो दावे

JohnDoe hasLatinInitial "3" . 

जोड़ा गया है और साधु 1.3.7 कोई विसंगति सूचना:

@prefix :  <http://www.example.com/example#> . 
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . 
@prefix owl:  <http://www.w3.org/2002/07/owl#> . 
@prefix xsd:  <http://www.w3.org/2001/XMLSchema#> . 
@prefix rdf:  <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . 
@prefix example: <http://www.example.com/example#> . 

<http://www.example.com/example> 
     a  owl:Ontology . 

example:hasLatinInitial 
     a  owl:DatatypeProperty ; 
     rdfs:range 
       [ a  rdfs:Datatype ; 
       owl:onDatatype xsd:string ; 
       owl:withRestrictions 
         ([ xsd:pattern "[A-Z]" 
          ]) 
       ] . 

example:JohnDoe 
     a  owl:NamedIndividual ; 
     example:hasLatinInitial 
       "3" , "J" , "D" 
:

enter image description here

यहाँ जिसके परिणामस्वरूप सत्तामीमांसा N3 में और RDF/XML में कैसा दिखता है

<rdf:RDF 
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
    xmlns:example="http://www.example.com/example#" 
    xmlns:owl="http://www.w3.org/2002/07/owl#" 
    xmlns:xsd="http://www.w3.org/2001/XMLSchema#" 
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"> 
    <owl:Ontology rdf:about="http://www.example.com/example"/> 
    <owl:DatatypeProperty rdf:about="http://www.example.com/example#hasLatinInitial"> 
    <rdfs:range> 
     <rdfs:Datatype> 
     <owl:onDatatype rdf:resource="http://www.w3.org/2001/XMLSchema#string"/> 
     <owl:withRestrictions rdf:parseType="Collection"> 
      <rdf:Description> 
      <xsd:pattern>[A-Z]</xsd:pattern> 
      </rdf:Description> 
     </owl:withRestrictions> 
     </rdfs:Datatype> 
    </rdfs:range> 
    </owl:DatatypeProperty> 
    <owl:NamedIndividual rdf:about="http://www.example.com/example#JohnDoe"> 
    <example:hasLatinInitial>3</example:hasLatinInitial> 
    <example:hasLatinInitial>D</example:hasLatinInitial> 
    <example:hasLatinInitial>J</example:hasLatinInitial> 
    </owl:NamedIndividual> 
</rdf:RDF> 

+0

को आजमाऊंगा, यह बहुत उपयोगी है, खासकर एन 3 भाग, क्योंकि मैं प्रोटेजे – chile

+0

@chile का उपयोग नहीं करता हूं, यदि यह सहायक था, तो आप इसे स्वीकार कर सकते हैं [http: // मेटा। stackexchange.com/q/5234/225437) अन्य उपयोगकर्ताओं को यह जानने के लिए कि यह आपके लिए काम करता है, अनुत्तरित प्रश्नों की संख्या को कम करने के लिए, और आप और मुझे दोनों प्रतिष्ठा अंक देने के लिए। –

+0

@JT अच्छी तरह से मुझे इस प्रतिबंध का उपयोग करने के बाद सभी को उपयोग नहीं करना पड़ा, इसलिए मैंने इसे लागू नहीं किया और कुछ निश्चित नहीं कह सकता कि सही उत्तर क्या है। वैसे भी, आपका समाधान मेरे लिए शांत लग रहा है। – chile

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