本文整理汇总了Java中com.hp.hpl.jena.datatypes.BaseDatatype类的典型用法代码示例。如果您正苦于以下问题:Java BaseDatatype类的具体用法?Java BaseDatatype怎么用?Java BaseDatatype使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
BaseDatatype类属于com.hp.hpl.jena.datatypes包,在下文中一共展示了BaseDatatype类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: create
import com.hp.hpl.jena.datatypes.BaseDatatype; //导入依赖的package包/类
private Literal create(String rdfDataTypeIRI, String text) {
if ( rdfDataTypeIRI == null ) {
return model.createLiteral(text, conf.getLang());
} else {
if ( rdfDataTypeIRI.startsWith("http://www.w3.org/2001/XMLSchema") ) {
return model.createTypedLiteral(text, new XSDDatatype(rdfDataTypeIRI.substring("http://www.w3.org/2001/XMLSchema#".length())));
} else {
return model.createTypedLiteral(text, new BaseDatatype(rdfDataTypeIRI));
}
}
}
示例2: testDataTypeEqualness
import com.hp.hpl.jena.datatypes.BaseDatatype; //导入依赖的package包/类
@Test
public void testDataTypeEqualness() throws Exception {
// die erste DatenTyp URI
URI testA = new URIImpl("test://somedata-A", false);
// die zweite DatenTyp URI
URI testB = new URIImpl("test://somedata-B", false);
// der erste BaseDatatype wird von der ersten DatenTyp URI erzeugt
BaseDatatype BDtestA1 = new BaseDatatype(testA + "");
// der zweite BaseDatatype ebenso
BaseDatatype BDtestA2 = new BaseDatatype(testA + "");
// f�r den dritten BaseDatatype nehmen wir eine neue Datentyp URI
BaseDatatype BDtestB = new BaseDatatype(testB + "");
// alle Literals haben den gleichen Inhalt
// das erste Literal kriegt den ersten BaseDatatype
LiteralLabel litA11 = LiteralLabelFactory.create("teststring", "", BDtestA1);
// das zweite Liertal kriegt den auch, es hat also komplett die gleichen
// Eigenschaften wie das erste Literal aber in einem neuen Objekt
LiteralLabel litA12 = LiteralLabelFactory.create("teststring", "", BDtestA1);
// jetzt machen wir ein drittes Literal, welches aber den zweiten
// BasedataType
// bekommt, der aber eigentlich von der ersten DataTypeURI stammt
LiteralLabel litA2 = LiteralLabelFactory.create("teststring", "", BDtestA2);
// und jetzt machen wir noch nen vierten Literal, der von einem neuen
// Basedatatype komt, welche wiederrum von einer neuen DatatypeURI ist
LiteralLabel litB = LiteralLabelFactory.create("teststring", "", BDtestB);
// dann wollen wir mal schauen was passiert:
// reflexivit�t: A == A , passt
assertTrue(litA11.sameValueAs(litA11));
// gleicher Inhalt, in zwei versch. Objekten, passt auch
assertTrue(litA11.sameValueAs(litA12));
// zwei Objekte, mit untersch. BaseDatatypes, von der gleichen Datatype
// URI:
// nein
assertFalse(litA11.sameValueAs(litA2));
// und zur sicherheit: 2 versch Datentyp URIs: nein
assertFalse(litA11.sameValueAs(litB));
// und nochmal der negativ Test:
assertTrue(litB.sameValueAs(litB));
assertFalse(litB.sameValueAs(litA11));
assertFalse(litB.sameValueAs(litA12));
assertFalse(litB.sameValueAs(litA2));
// weiterlesen ;)
// das liegt an der Implementierung von BaseDatatype.isEqual()
assertFalse(BDtestA1.isEqual(litA11, litA2));
/**
* Compares two instances of values of the given datatype. This default
* requires value and datatype equality.
*
* public boolean isEqual(LiteralLabel value1, LiteralLabel value2) {
* return value1.getDatatype() == value2.getDatatype() ^^^^^^ &&
* value1.getValue().equals(value2.getValue()); }
*/
// Es werden dirket 2 Object Referenzen verglichen, und 2 versch.
// Basedatatype Objecte sind ebend unterschiedlich.
// wir m�ssen entweder irgendwo auf der Seite von RDF2GO
// BaseDatatypes recyclen, oder einen eigenen Datentyp schreiben,
// bei dem isEqual() den Inhalt der Datentyp URIs der beiden
// Basedatatypes
// vergleicht.
}