[英]Read RDF/XML file in c#
我正在努力用c#讀取OWL文件,我想解決這個問題,因為我是語義網絡世界的新手,我已經閱讀了有關dotnetrdf庫的信息,該庫用於通過c#和asp.net讀取OWL文件。我在放置代碼時在文檔中找到了有關Hello World的示例,這是我的問題
IGraph g = new Graph();
g.LoadFromFile("Helloworld.owl");
IUriNode dotNetRDF = g.CreateUriNode(UriFactory.Create("http://www.dotnetrdf.org"));
IUriNode says = g.CreateUriNode(UriFactory.Create("http://example.org/says"));
ILiteralNode helloWorld = g.CreateLiteralNode("Hello World");
ILiteralNode bonjourMonde = g.CreateLiteralNode("Bonjour tout le Monde", "fr");
g.Assert(new Triple(dotNetRDF, says, helloWorld));
g.Assert(new Triple(dotNetRDF, says, bonjourMonde));
foreach (Triple t in g.Triples)
{
Console.WriteLine(t.ToString());
}
Console.ReadLine();
它給我這樣的輸出
http://www.dotnetrdf.org/ , http://example.org/says , Hello World
http://www.dotnetrdf.org/ , http://example.org/says , Bonjour tout le Monde@fr
所以我怎么能顯示沒有URI的結果,請對此有任何想法???
使用Console.WriteLine(t.ToString())
,將Triple
對象的字符串表示形式打印到控制台。 如果要訪問特定成員(請訪問http://www.dotnetrdf.org/api/dotNetRDF~VDS.RDF.Triple~Members.html ),則可以直接訪問。 例如
foreach (Triple t in g.Triples)
{
Console.WriteLine(t.Predicate);
Console.WriteLine(t.Subject);
Console.WriteLine(t.Object);
}
希望這可以幫助。
嘗試打印Triple的'Object'屬性:
foreach (Triple t in g.Triples)
{
Console.WriteLine(t.Object);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.