Удаление многозначных свойств из RDF от Rowlex - PullRequest
0 голосов
/ 13 июля 2009

Я пытаюсь удалить свойства с несколькими значениями из RDF, и кажется, что об этом RDF, я должен сделать ниже код для удаления includeResource:

<Ontologyowl:StudyList rdf:about="stdl827181">
        <Ontologyowl:title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Basic learning materials</Ontologyowl:title>
        <Ontologyowl:includeResource>
            <Ontologyowl:LearningResource rdf:about="res298830"/>
        </Ontologyowl:includeResource>
        <Ontologyowl:includeResource>
            <Ontologyowl:LearningResource rdf:about="res323717"/>
        </Ontologyowl:includeResource>
    </Ontologyowl:StudyList>

StudyList_ stdl = (StudyList_)rdfDoc.GetIndividual(stdlId, StudyList.Uri, false);
LearningResource[] lrnRes = stdl.includeResources;

        foreach (LearningResource i in lrnRes)
        {
            stdl.RemoveincludeResource(i);
            rdfDoc.RemoveProperty(...);
        }

Но сейчас я не говорю о входных данных rdfDoc.RemoveProperty (..). Любая помощь по этому поводу, пожалуйста?

1 Ответ

0 голосов
/ 13 июля 2009

rdfDoc.RemoveProperty (субъект, предикат, объект) фактически требует, чтобы вы указали полную тройку. Этот метод обернут вашим методом stdl.RemoveincludeResource (i). Тем не менее, ваш метод упаковки легче читать и безопасен для типов. Объект C # хоста (stdl) является субъектом, метод (RemoveincludeResource) представляет предикат, а входной параметр (i) будет объектом. Эти элементы передаются методу RdfDocument.RemoveProperty для внутреннего использования. Нет необходимости вызывать оба метода!

...