> 13:44:11 WARN NodeValue :: Datatype format exception: > "1969-12-31T19:00:00"^^xsd:date
No, Jena is just telling you (quite correctly) that "1969-12-31T19:00:00" is not an xsd:date. Notice the time that is included. xsd:date does not include time. ajs6f > On Aug 9, 2018, at 2:35 PM, Arunkumar Krishnamoorthy <[email protected]> > wrote: > > Hello Andy, > > I am getting the below error when i run the query against the dataset > shared with you, > > PREFIX myfn: <java:samplejena.> > PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> > PREFIX dc: <http://purl.org/dc/elements/1.1/> > PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> > SELECT ?title ?r > WHERE { > ?s rdfs:seeAlso ?r. > OPTIONAL {?r dc:title ?title.} > FILTER ( isURI(?r) && > myfn:LastModified(?r) > > "2005-11-06T00:00:00Z"^^xsd:dateTime ) > } > > 13:44:11 WARN NodeValue :: Datatype format exception: > "1969-12-31T19:00:00"^^xsd:date > > Is this because of any old version or something? > > > > On Thu, Aug 9, 2018 at 6:34 AM, Andy Seaborne <[email protected]> wrote: > >> Good question - there is still a noticeable tail of com.hp.hpl, here and >> on Stackoverflow. >> >> Some is due to old apps; that is good in that the software is useful >> enough to be used for such a long time. >> >> I suspect that some of the rest is university courses providing the >> materials that have not been updated. >> >> (Jena3 was 2015-07-29) >> >> Andy >> >> >> On 09/08/18 06:48, Lorenz Buehmann wrote: >> >>> I'm always wondering how people that are new to Apache Jena still use >>> the old version. I mean, the first hit via Google is the Apache Jena >>> webpage which clearly refers to the latest version. >>> >>> In the current case, he just copied the code example from [1] which >>> indeed uses the old version given that the blog entry is from 2005. >>> Well, at this time I didn't know about Semantic Web at all... >>> >>> [1] http://www.ldodds.com/projects/sparql/LastModified.txt >>> >>> >>> On 08.08.2018 22:14, Andy Seaborne wrote: >>> >>>> com.hp.hpl.jena -- that's Jena2. >>>> >>>> Packages are "org.apache.jena" in Jena3. >>>> >>>> The code seems to have been compiled against Jena2 and run against >>>> Jena3. That won't work. >>>> >>>> Andy >>>> >>>> On 08/08/18 18:14, Arunkumar Krishnamoorthy wrote: >>>> >>>>> The java code i am executing is, >>>>> >>>>> package samplejena; >>>>> >>>>> import com.hp.hpl.jena.query.expr.NodeValue; >>>>> import com.hp.hpl.jena.query.function.FunctionBase1; >>>>> >>>>> import java.net.*; >>>>> import java.text.SimpleDateFormat; >>>>> import java.util.*; >>>>> >>>>> public class LastModified extends FunctionBase1 >>>>> { >>>>> private static final SimpleDateFormat format = new >>>>> SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss"); >>>>> private Map _cache; >>>>> public LastModified() >>>>> { >>>>> _cache = new HashMap(); >>>>> } >>>>> public NodeValue exec(NodeValue nodeValue) >>>>> { >>>>> String value = nodeValue.asString(); >>>>> if (_cache.containsKey(value)) >>>>> { >>>>> return (NodeValue)_cache.get(value); >>>>> } >>>>> String lastModified = ""; >>>>> try { >>>>> lastModified = getLastModified( nodeValue.asString() ); >>>>> } catch (Exception e) { >>>>> // TODO Auto-generated catch block >>>>> e.printStackTrace(); >>>>> } >>>>> >>>>> NodeValue date = NodeValue.makeDate(lastModified); >>>>> _cache.put(value, date); >>>>> return date; >>>>> } >>>>> public String getLastModified(String link) throws Exception >>>>> { >>>>> URL url = new URL(link); >>>>> URLConnection connection = url.openConnection(); >>>>> connection.setAllowUserInteraction(false); >>>>> long secs = connection.getLastModified(); >>>>> String xsdDate = dateToXSD(secs); >>>>> return xsdDate; >>>>> } >>>>> public String dateToXSD(long secs) >>>>> { >>>>> Date date = new Date(secs); >>>>> return format.format(date); >>>>> } >>>>> } >>>>> >>>>> >>>>> >>>>> On Wed, Aug 8, 2018 at 1:14 PM, Arunkumar Krishnamoorthy >>>>> <[email protected]> >>>>> wrote: >>>>> >>>>> Hello Andy, >>>>>> >>>>>> I am getting the following issue when i run the code, >>>>>> >>>>>> Caused by: java.lang.ClassNotFoundException: com.hp.hpl.jena.query. >>>>>> function.FunctionBase1 >>>>>> at java.net.URLClassLoader.findClass(URLClassLoader.java:381) >>>>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:424) >>>>>> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.j >>>>>> >>>>>> I have added the .class file in the directory. Do i need to package the >>>>>> dependancy jars also? Please advice. >>>>>> >>>>>> Regards, >>>>>> Arun >>>>>> >>>>>> On Tue, Aug 7, 2018 at 2:11 PM, Arunkumar Krishnamoorthy < >>>>>> [email protected]> wrote: >>>>>> >>>>>> It is executing now Andy. Thanks a lot. I missed to add the directory. >>>>>>> Thanks again for this help. >>>>>>> >>>>>>> On Tue, Aug 7, 2018 at 2:06 PM, Andy Seaborne <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>> >>>>>>>> >>>>>>>> On 07/08/18 18:07, Arunkumar Krishnamoorthy wrote: >>>>>>>> >>>>>>>> So my JENA_CP >>>>>>>>> is JENA_CP='/home/ak/Downloads/apache-jena-3.8.0/lib/*:/home/ak >>>>>>>>> /Documents'. >>>>>>>>> >>>>>>>>> >>>>>>>> Does the file >>>>>>>> >>>>>>>> /home/ak/Documents/samplejena/LastModified.class >>>>>>>> >>>>>>>> exist? >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> /home/ak/Documents location has the classfile/jar of the code >>>>>>>>> >>>>>>>>> But still when i run this command, >>>>>>>>> >>>>>>>>> /home/ak/Downloads/apache-jena-3.8.0/bin/arq --data >>>>>>>>> /home/ak/Desktop/dataset.rdf --query /home/ak/Desktop/query.rq >>>>>>>>> >>>>>>>>> I am getting the below error, >>>>>>>>> >>>>>>>>> ak@akrish12:~$ /home/ak/Downloads/apache-jena-3.8.0/bin/arq --data >>>>>>>>> /home/ak/Desktop/dataset.rdf --query /home/ak/Desktop/query.rq >>>>>>>>> 12:41:35 WARN ClsLoader :: Class not found: >>>>>>>>> samplejena.LastModified >>>>>>>>> 12:41:35 WARN exec :: URI >>>>>>>>> <java:samplejena.LastModified> >>>>>>>>> has no registered function factory >>>>>>>>> ------------- >>>>>>>>> | title | r | >>>>>>>>> ============= >>>>>>>>> ------------- >>>>>>>>> >>>>>>>>> >>>>>>>>> Regards, >>>>>>>>> Arun >>>>>>>>> >>>>>>>>> On Tue, Aug 7, 2018 at 12:20 PM, Andy Seaborne <[email protected]> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>> The list doesn't accept attachments. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> JENA_CP="$JENA_HOME"'/home/ak/Documents' >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> This needs to be a valid java classpath. >>>>>>>>>> >>>>>>>>>> $JENA_HOME is directory of the Jena installation. >>>>>>>>>> >>>>>>>>>> In the original it says: >>>>>>>>>> >>>>>>>>>> JENA_CP="$JENA_HOME"'/lib/*' >>>>>>>>>> >>>>>>>>>> the .../lib/* (NB single quotes - no * expansion) puts all the >>>>>>>>>> jars in >>>>>>>>>> that direct on the classpath. >>>>>>>>>> >>>>>>>>>> For you: >>>>>>>>>> >>>>>>>>>> JENA_CP='/home/ak/Downloads/apache-jena-3.8.0/lib/*' >>>>>>>>>> >>>>>>>>>> You need to add the package/classfile tree for you code. >>>>>>>>>> >>>>>>>>>> As you have: java:samplejena >>>>>>>>>> >>>>>>>>>> Suppoose /DIR is the top of that directory tree so "samplejena" >>>>>>>>>> is one >>>>>>>>>> directory within /DIR. >>>>>>>>>> >>>>>>>>>> You then want: >>>>>>>>>> >>>>>>>>>> JENA_CP='/home/afs/jlib/apache-jena/lib/*:/DIR' >>>>>>>>>> >>>>>>>>>> : is the classpath separator. >>>>>>>>>> >>>>>>>>>> Andy >>>>>>>>>> >>>>>>>>>> On 07/08/18 16:25, Arunkumar Krishnamoorthy wrote: >>>>>>>>>> >>>>>>>>>> Hello, >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> I have attached the file with the change, i am getting Could >>>>>>>>>>> not find >>>>>>>>>>> or >>>>>>>>>>> load main class arq.arq >>>>>>>>>>> >>>>>>>>>>> My classpath location is /home/ak/Documents. Please let me know >>>>>>>>>>> whether >>>>>>>>>>> my change is correct. >>>>>>>>>>> >>>>>>>>>>> Regards, >>>>>>>>>>> Arun >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Tue, Aug 7, 2018 at 11:11 AM, Andy Seaborne <[email protected] >>>>>>>>>>> <mailto: >>>>>>>>>>> [email protected]>> wrote: >>>>>>>>>>> >>>>>>>>>>> Hi - Please send email to the jena users mailing list. >>>>>>>>>>> >>>>>>>>>>> (It is correct if it works!) >>>>>>>>>>> >>>>>>>>>>> Andy >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>> >>>>>> >>>>> >>> >>>
