There are several answers.

There is no reason to suppose that any given triple actually derives from a 
file at all. It might have been created programmatically, or by inference, or 
from SPARQL, amongst many possible other means.

You are suggesting the carriage of a really large amount of metadata all 
throughout Jena's internals. The performance implications would be big, and 
entirely negative.

Andy has given you a really good road to go down if what you want is more 
detailed parsing metadata for, as you say, "reporting issues with the content". 
You can take off that metadata and record it elsewhere or record it in RDF in 
various ways. Perhaps you can tell us a little more about your use case and we 
can help you find a more targeted technique for it.

---
A. Soroka
The University of Virginia Library

> On Jan 17, 2017, at 3:14 PM, Grahame Grieve 
> <grah...@healthintersections.com.au> wrote:
> 
> hi
> 
> Yes replacing a library is not simple, but I thought I'd still make the
> offer. Other advantages... no, it's just a JSON parser.
> 
>> You did seem to be asking for a way to get from a triple in a graph to
> the line where it was read, and that is not possible. There is no such
> association.
> 
> why not? the library could provide a way, and retain the association.
> 
> Grahame
> 
> 
> On Wed, Jan 18, 2017 at 6:58 AM, A. Soroka <aj...@virginia.edu> wrote:
> 
>> Replacing the JSON library in use is a considerably bigger proposition
>> than working with the one we now use in a different way. Are there other
>> advantages to using your custom code? We want to stick to well-supported
>> dependencies unless there is a convincing argument otherwise.
>> 
>> As for Turtle, I believe you can take a look at LangTurtleBase to see what
>> might be done. Keep in mind that there's not necessarily a precise way to
>> understand what line produces an error-- it might occur in the interaction
>> between tokens on more than one line.
>> 
>> ---
>> A. Soroka
>> The University of Virginia Library
>> 
>>> On Jan 17, 2017, at 2:42 PM, Grahame Grieve <
>> grah...@healthintersections.com.au> wrote:
>>> 
>>> well, I care about turtle and json-ld.  I can contribute a json library
>>> that preserves line numbers when the json is parsed, since the main
>> stream
>>> ones don't.
>>> 
>>> Grahame
>>> 
>>> 
>>> On Wed, Jan 18, 2017 at 5:38 AM, A. Soroka <aj...@virginia.edu> wrote:
>>> 
>>>> That will depend a bit on the language. For example, JSON parsing
>> doesn't
>>>> occur directly in Jena, Jena uses a library that parses from JSON to
>> Java
>>>> objects and then works with those objects:
>>>> 
>>>> org.apache.jena.riot.lang.JsonLDReader.read(InputStream, String,
>>>> ContentType, StreamRDF, Context)
>>>> 
>>>> In some other cases, it seems like it should be possible. Do you have a
>>>> specific language in mind?
>>>> 
>>>> ---
>>>> A. Soroka
>>>> The University of Virginia Library
>>>> 
>>>>> On Jan 16, 2017, at 6:48 AM, Grahame Grieve <
>>>> grah...@healthintersections.com.au> wrote:
>>>>> 
>>>>> Can the Jena parser maintain a link between the triples and the line
>>>> number
>>>>> from which are sourced in the original file? This is really useful for
>>>>> reporting issues with the content....
>>>>> 
>>>>> Grahame
>>>>> 
>>>>> 
>>>>> --
>>>>> -----
>>>>> http://www.healthintersections.com.au / grahame@healthintersections.
>>>> com.au
>>>>> / +61 411 867 065
>>>> 
>>>> 
>>> 
>>> 
>>> --
>>> -----
>>> http://www.healthintersections.com.au / grahame@healthintersections.
>> com.au
>>> / +61 411 867 065
>> 
>> 
> 
> 
> -- 
> -----
> http://www.healthintersections.com.au / grah...@healthintersections.com.au
> / +61 411 867 065

Reply via email to