我正在使用Jena 2.6.4。类型文字的字符串表示
以下代码
String v = "Parnell Square East";
Literal l = ModelFactory.createDefaultModel().createTypedLiteral(
v, XSDDatatype.XSDstring);
System.out.println(l.toString());
产生以下输出:
帕内尔广场东^^ HTTP://www.w3.org/2001/XMLSchema#string
这看起来不对我:我会期待:
“帕内尔广场东” ^^ HTTP://www.w3.org/2001/XMLSchema#string
从快看看的LiteralImpl.java
源代码,我看到:
@Override public String toString() {
return asNode().toString(PrefixMapping.Standard, false);
}
为什么第二个参数(引用)设置为false
?
如果我做
String v = "Parnell Square East";
Literal l = ModelFactory.createDefaultModel().createTypedLiteral(v,
XSDDatatype.XSDstring);
System.out.println(l.asNode().toString(PrefixMapping.Standard, true));
我得到所需的输出
“帕内尔广场东” ^^ HTTP://www.w3.org/2001/XMLSchema#string
我只是想知道为什么这不是默认行为?
谢谢, 马科
我明白这一点,它是有道理的。谢谢! – MarcoS 2012-02-29 09:34:57