سؤال

أنا أقوم ببناء مجموعة من علماء البومة بلدي، ولكن عند تحليل الأطباق، فإنه يثير رسالة خطأ في "خصائص نوع البيانات" حيث يتم الإعلان عن نوع ويتم إعطاء بعض القيم. لقد كتبت علمي باستخدام البروتين v3.4.

على سبيل المثال، أحد خصائص نوع البيانات الذي يثير الخطأ هو "لغة" مع نوع "السلسلة" والقيم مثل "الإنجليزية والفارسية". المراجع مدرجة أدناه، التي أدلى بها البروتين:

<rdf:RDF xml:base="http://www.owl-ontologies.com/Ontology1243411901.owl"
xmlns="http://www.owl-ontologies.com/Ontology1243411901.owl#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:protege="http://protege.stanford.edu/plugins/owl/protege#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:swrl="http://www.w3.org/2003/11/swrl#" 
xmlns:swrlb="http://www.w3.org/2003/11/swrlb#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" 
xmlns:xsp="http://www.owl-ontologies.com/2005/08/07/xsp.owl#">

وذكرت خاصية "اللغة" أدناه:

<owl:DatatypeProperty rdf:ID="language">
        <rdfs:range>
            <owl:DataRange>
                <owl:oneOf rdf:parseType="Resource">
                    <rdf:rest rdf:parseType="Resource">
                        <rdf:rest rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
                        <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Farsi</rdf:first>
                    </rdf:rest>
                    <rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string">English</rdf:first>
                </owl:oneOf>
            </owl:DataRange>
        </rdfs:range>
        <rdfs:domain>
            <owl:Class>
                <owl:unionOf rdf:parseType="Collection">
                    <owl:Class rdf:about="#Teacher"/>
                    <owl:Class rdf:about="#ClassOfCourse"/>
                    <owl:Class rdf:about="#LearningResource"/>
                    <owl:Class rdf:about="#Discussion"/>
                    <owl:Class rdf:about="#Student"/>
                </owl:unionOf>
            </owl:Class>
        </rdfs:domain>
    </owl:DatatypeProperty>

أنا فقط أضف خطأ واحد إلى Owlgrinder. يتم إجراء هذا الخطأ عند إنشاء:

Assembly generation failed. 
OWL property 'http://www.owl-ontologies.com/Ontology1243411901.owl#language' has a range declaration that points to _:bnode10579059 but its definition is missing. 
Are you missing an ontology which declares this class?

يتغير الرقم الموجود أمام "_: Bnode" في كل مرة أضغط على زر "إنشاء". عن طريق حذف القيم من خاصية "اللغة"، يحدث خطأ آخر يتعلق بخاصية DataType التالية. هذا يعني أن كل خاصية DataType المحددة (ولديها بعض القيم المحددة إليها) هي خطأ في Owlgrinder.

كنت أتساءل عما إذا كان شخص ما يمكن أن يرشدني في سجيل هذا الخطأ.

هل كانت مفيدة؟

المحلول

حاليا رواية يتوقع Owlgrinder أن تكون النطاق من فئة حرفية أو منتظمة. أوصي بإنشاء فئة مجمع "Languagelist" التي تحتوي على تعدادك داخل تعيين ذلك كمجموعة. لم اختبر هذا، لكنني أتوقع ذلك للعمل.

نصائح أخرى

أنا لست معتادا على Owlgrinder، ولكن يمكنك محاولة الإعلان عن فئة مسماة مثل ExpectedLanguages (امنح العقدة المجهولية URI) ثم استخدم ذلك كمثل الخاص بك language فاعل. مثال مختصر (في سلحفاة صيغة):

:ExpectedLanguages
    a owl:DataRange ;
    owl:oneOf (
        "Farsi"^^xsd:string
        "English"^^xsd:string
    );
.

:languages
    rdfs:range :ExpectedLanguages ;
.

استخدامك لل البومة عداد البيانات datatype. يتطلب رمزك / المحلل / المعقول هو متوافق مع OWL-DL بحد أدنى.

السبب في ذلك _:bnodeXXX (العقدة الفارغة / عقدة مجهولة) لديها معرف جديد في كل مرة نظرا لأنها فارغة. ومع ذلك، لأغراض تحديده ضمن رسم بياني RDF (نموذج) في الذاكرة، يجب إنشاء معرف لكل عقدة مجهولة عند تحميله، لأنه يتم تحليل النموذج كل عقدة (مجهول أو اسمه) قد يتم تحديده بشكل فريد لذلك يمكن تحديد مراجعها الواردة والصادرة.

intelliDimension. يوفر SDK الذي يمكنه تحويل فصول البومة أو الكاملة أو البومة أو OWL-DL إلى .NET. قد ترغب في إلقاء نظرة على ذلك.

ملاحظة جانبية
أعتقد أنك ترتبف على دلالات المجال في علمي. يبدو أنك تحاول القول أن "اللغة قد توجد فقط في المعلم، ClassOfCourse، التعلم، المناقشة، الطالب" عندما تقول في الواقع "إذا تم استخدام اللغة لوصف مثيل يمكن استنتاج هذه الحالة أن تكون المعلم Unionof ، classofcourse، التعلم، المناقشة، والطالب ". هذا هو سوء تفسير مشترك لصفحة البومة لأنها تشعر وكأنها يجب تقييد المجال استخدام الخصائص عندما لا تكون في الواقع وظيفة البومة (المخطط / التحقق من الصحة). يستخدم البومة فقط لوصف ما يجب استنتاجه عن طريق الاستخدام، فإنه لا يصف الاستخدام.

دلالات المجال الموصوفة في دليل البومة.

باستخدام Unionof في مجال خاصية اللغة، تقول ذلك "أي شيء موصوف باستخدام خاصية اللغة هو معلم أو ClassOfcourse أو التعلم في التعلم أو نقاش أو طالب". أود أن أجادل أن هذا ليس ذا معنى عادة.

Unionof الدلالية الموصوفة في دليل البومة.

النطاق مشابه في ذلك إذا حددت مجموعة من العقار من نوع معين مما يمكن استنتاجه أن جميع الحرفية / الموارد التي يشار إليها من قبل هذه الخاصية هي من النوع المحدد مع إعلان النطاق.

نطاق موضح في دليل البومة.

لقد نسخ / لصق ontology الخاص بك في http://www.mygrid.org.uk/owl/validator.: تقول أن هذا العدوى هو (على الأقل) وليس علماء البومة لايت. قد تكون مشكلة في تكوين البروتين الخاص بك؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top