[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Cashew-s-auto] Changes to cashews/src/nongnu/cashews/rdf/XMLParser.java
From: |
Andrew John Hughes |
Subject: |
[Cashew-s-auto] Changes to cashews/src/nongnu/cashews/rdf/XMLParser.java |
Date: |
Tue, 05 Apr 2005 12:48:55 -0400 |
Index: cashews/src/nongnu/cashews/rdf/XMLParser.java
diff -u cashews/src/nongnu/cashews/rdf/XMLParser.java:1.5
cashews/src/nongnu/cashews/rdf/XMLParser.java:1.6
--- cashews/src/nongnu/cashews/rdf/XMLParser.java:1.5 Mon Apr 4 16:00:19 2005
+++ cashews/src/nongnu/cashews/rdf/XMLParser.java Tue Apr 5 16:48:53 2005
@@ -218,6 +218,11 @@
private String predicateURI;
/**
+ * The type of the current literal.
+ */
+ private Type type;
+
+ /**
* Constructs a new <code>RDFHandler</code>, using the specified
* handler for log messages.
*
@@ -240,6 +245,7 @@
inRDF = false;
inPredicate = false;
predicateURI = null;
+ type = null;
}
/**
@@ -316,6 +322,7 @@
}
else
{
+ /* Check for blank node object */
value = attributes.getValue(RDF_NAMESPACE, "nodeID");
if (value != null)
{
@@ -323,6 +330,10 @@
logger.fine("Created object: " + object);
}
}
+ /* Check for a type */
+ value = attributes.getValue(RDF_NAMESPACE, "datatype");
+ if (value != null)
+ type = TypeFactory.getInstance(value);
}
}
}
@@ -366,7 +377,10 @@
logger.finer("Characters: " + value);
if (inPredicate)
{
- object = new Literal(value);
+ if (type == null)
+ object = new Literal(value);
+ else
+ object = new Literal(value, type);
logger.fine("Created object: " + object);
}
}
@@ -403,6 +417,7 @@
inPredicate = false;
inSubject = true;
predicateURI = null;
+ type = null;
triple = new Triple(subject, predicate, object);
logger.fine("Created triple: " + triple);
graph.addTriple(triple);
- [Cashew-s-auto] Changes to cashews/src/nongnu/cashews/rdf/XMLParser.java,
Andrew John Hughes <=