On Fri, Aug 10, 2018 at 3:57 AM, Andy Seaborne <a...@apache.org <mailto:
a...@apache.org>> wrote:
>> But i have given the type as xsd:dateTime, so it should take it
right?
The computer says otherwise.
>>myfn:LastModified(?r) >
>> "2005-11-06T00:00:00Z"^^xsd:dateTime )
"2005-11-06T00:00:00Z"^^xsd:dateTime is OK
>> "1969-12-31T19:00:00"^^xsd:date
Not OK. Find out where "1969-12-31T19:00:00" comes from. Is it in
the data?
Andy
On 10/08/18 06:53, Lorenz Buehmann wrote:
which type? in the function or in the data? both have to match,
there is
no implicit conversion I guess.
On 09.08.2018 21:29, Arunkumar Krishnamoorthy wrote:
But i have given the type as xsd:dateTime, so it should take
it right?
On Thu, Aug 9, 2018 at 3:24 PM, ajs6f <aj...@apache.org
<mailto:aj...@apache.org>> wrote:
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
<akris...@ncsu.edu <mailto:akris...@ncsu.edu>>
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#
<http://www.w3.org/2000/01/rdf-schema#>>
PREFIX dc: <http://purl.org/dc/elements/1.1/
<http://purl.org/dc/elements/1.1/>>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#
<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
<a...@apache.org <mailto:a...@apache.org>> 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
<http://www.ldodds.com/project
s/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.setAllowUserInterac
tion(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
<akris...@ncsu.edu
<mailto:akris...@ncsu.edu>>
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.findCl
ass(URLClassLoader.java:381)
at
java.lang.ClassLoader.loadClas
s(ClassLoader.java:424)
at
sun.misc.Launcher$AppClassLoad
er.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 <
akris...@ncsu.edu
<mailto:akris...@ncsu.edu>>
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
<a...@apache.org
<mailto:a...@apache.org>>
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
<a...@apache.org
<mailto:
a...@apache.org>>
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
<
a...@apache.org <mailto:a...@apache.org>
<mailto:
a...@apache.org
<mailto:
a...@apache.org>>>
wrote:
Hi -
Please send
email to the
jena users
mailing list.
(It
is correct
if it works!)
Andy