题
我想多值删除属性,从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(..)的输入。这个请任何帮助吗?
解决方案
rdfDoc.RemoveProperty(主语,谓语,宾语)实际上需要指定完整三倍。这种方法是通过您的stdl.RemoveincludeResource(I)方法包裹。然而,你的包装方法更容易阅读,是类型安全。主机C#对象(STDL)是主体,该方法(RemoveincludeResource)表示谓词,和输入参数(ⅰ)将成为对象。这些项目传递给内部的RdfDocument.RemoveProperty方法。 有没有需要调用两种方法!
不隶属于 StackOverflow