On 08/01/13 17:42, aidy lewis wrote:
Hi,

I have a RDF statement that I have added to the Jena model. The
statement contains a blank node.

_:blankNode <urn:b> <urn:c> .

To identify this blank node, I am using the isAnon method.

// Scala code

model.listStatements().toList().foreach(f =>
       println(f.getSubject.getLocalName + " " + f.getSubject.isAnon))

//


For some reason, true is not being returned for the blank node.

I get "null true" (code below)

If you get something non-null from getLocalName then it isn't a blank node. It's a URI node.

f.getSubject.getLocalName is the local name of a URI.

The bNode label is:
   f.getSubject.getId.getLabelString


---------------------
package dev

import com.hp.hpl.jena.sparql.sse.SSE
import com.hp.hpl.jena.rdf.model.ModelFactory
import com.hp.hpl.jena.rdf.model.Statement

object ReportBNode {
  def main(arrgs:Array[String]) : Unit = {
    import scala.collection.JavaConversions._
    val triple = SSE.parseTriple("(_:blankNode <urn:b> <urn:c>)")
    val model = ModelFactory.createDefaultModel()
    model.getGraph.add(triple)
    model.listStatements().foreach(f =>
println(f.getSubject.getId.getLabelString + " " + f.getSubject.isAnon()))
  }
}
---------------------



Am I using the correct approach?



Reply via email to