[
https://issues.apache.org/jira/browse/JENA-675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13973968#comment-13973968
]
Andy Seaborne edited comment on JENA-675 at 4/18/14 10:54 AM:
--------------------------------------------------------------
Looks like a good idea.
What problem did you see with blank node labels? Ending up with "pretty"
(non-reversible and non-scalable) labels?
The two main policies are "label as given (encoded)" which is reversible to
restore the bNode and pretty "scope by document". There is also a URi endcodign
version "<_:label>". Presumably Hadoop RDF Tools needs to "label as given
(encoded)" in such a way that it's reversible and shared. What syntaxes are
most important? N-Triples/N-Quads?
was (Author: andy.seaborne):
Looks like a good idea.
What problem did you see with blank node labels? Ending up with "pretty"
(non-reversible and non-scalable) labels?
The two main policies are "label as given (encoded)" which is reversible to
restore the bNode and pretty "scope by document". There is also a URi endcodign
version "<_:label>". Presumably Hadoop RDF Tools needs to "label as given
(encoded)" in such a way that it's reversible. It's also the scalable policy -
the pretty form needs to keep a list of allocated identifiers which fille
memory.
> Add and use a WriterProfile API
> -------------------------------
>
> Key: JENA-675
> URL: https://issues.apache.org/jira/browse/JENA-675
> Project: Apache Jena
> Issue Type: Improvement
> Components: ARQ, RIOT
> Affects Versions: Jena 2.11.1
> Reporter: Rob Vesse
>
> Currently we have a {{ParserProfile}} which allows specifying certain aspects
> of input behaviour such as Prologue and Label to Node ID
> However we don't have a corresponding {{WriterProfile}} API, we actually have
> a class called {{OutputProfile}} but this is never actually used anywhere.
> This would be particularly useful for languages that rely on the
> {{NodeFormatter}} API where we can find comments such as the following:
> {quote}
> // Replace with a single "OutputPolicy"
> {quote}
> The lack of this API means we don't provide users any ability to do things
> like control how blank node IDs are allocated. And existing functionality we
> do give them like providing a set of namespaces and base URI to use for
> serialisation needs to be folded into this API.
> I know of two places where this is currently causing issues:
> * In the incoming Hadoop RDF Tools code (JENA-666) many output formats
> currently mangle the data when outputting blank nodes because they can't
> share a {{NodeToLabel}} instance over multiple writer runs.
> * In an internal bug at Cray we're seeing a situation where different code
> paths lead to different presentation of blank nodes and we have no APIs to
> allow us to control this presentation.
--
This message was sent by Atlassian JIRA
(v6.2#6252)