问题描述
根据 BaseGraph.CreateUriNode 的描述:
通常我们希望传递一个绝对 URI,而相对 URI 是允许的,但行为定义不太明确。如果为 Graph 定义了 Base URI,则相对 URI 将根据该 Base 自动解析,如果未定义 Base URI,则相对 URI 将保持原样。在这种情况下,尝试序列化数据或需要准确的往返时可能会出现问题。
这似乎意味着当未设置基本 URI 时,URI 将按原样存储。然而,所有这些创建它的尝试都失败了:
var graph = new Graph();
graph.CreateUriNode();
graph.CreateUriNode(new Uri("",UriKind.Relative));
graph.CreateUriNode(new Uri("relative",UriKind.Relative));
第一次尝试失败:
RdfParseException:'不能使用空 URI 来引用文档 Base URI,因为没有范围内的 Base URI!'
最后两个简单地加上:
InvalidOperationException:“相对 URI 不支持此操作。”
我知道某些序列化方法可能不支持相对 URI,但至少 Turtle 支持,并且我希望能够生成引用外部指定基础的文档。我该怎么做?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)