SiRPAC error in reify()

Hello,

SiRPAC seems to generate literal values for the subject property when
creating the 4 new triples of the reification of a statement.
By compiling http://etbdemo.jrc.it/xml/rdf/broken.xml using the 
latest java build at
http://www.w3.org/RDF/Implementations/SiRPAC/SiRPAC-1.17.jar
I get the following:

triple("http://etbdemo.jrc.it/xml/rdf/broken.xml#genid32",
"http://www.w3.org/1999/02/22-rdf-syntax-ns#subject",
literal("http://etbdemo.jrc.it/xml/rdf/broken.xml#genid1"))

The W3C spec states:

[RDF M&S Section 4.1]
subject
        The subject property identifies the resource being described by
	the modeled statement; that is, the value of the subject property is
the
	resource about which the original statement was made (in our example,
	http://www.w3.org/Home/Lassila).

Anyway, your on-line demo at
http://www.w3.org/RDF/Implementations/SiRPAC/ seems 
generating the right resource node (even if it claims to use the 1.17
version above). The
problem seems to be in reify() method when call addTriple() with a
literal as object
instead of a resource.

The following patch fixed the problem for me

--- SiRPAC.java Sun Jun 10 16:19:56 2001
+++ SiRPAC.java-fixed   Sun Jun 10 16:20:43 2001
@@ -1970,7 +1970,8 @@
 
     addTriple (createResource(sNamespace + SUBJECT),
                createResource(sNodeID),
-               createLiteral(( subject.toString().length() == 0 ?
source() : subject.toString())));
+               //fixed by AR 2001/06/10
+               createResource(( subject.toString().length() == 0 ?
source() : subject.toString())));
 
     addTriple (createResource(sNamespace + OBJECT),
                createResource(sNodeID),

The right output triple is then generated

triple("http://etbdemo.jrc.it/xml/rdf/broken.xml#genid32",
"http://www.w3.org/1999/02/22-rdf-syntax-ns#subject",
"http://etbdemo.jrc.it/xml/rdf/broken.xml#genid1")


regards

Alberto

Received on Sunday, 10 June 2001 10:34:32 UTC