[ 
https://issues.apache.org/jira/browse/JENA-1377?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16136711#comment-16136711
 ] 

Elie Roux commented on JENA-1377:
---------------------------------

Then please make an option so that canonicalLiterals follows the RDF 1.1 
definition of a canonical literal instead of the BCP-47 one. Right now for my 
dataset I have:

- lower-cased value for JSON-LD output (as mandated by the JSON-LD spec 
following a RDF 1.1 option)
- BCP-47 canonical value for TTL output if I make Jena canonicalize literals 
(which I want to, I want them to be uniform)
- lower-cased value for TTL output if I choose not to canonicalize them

So please allow for users just to use lower-case uniformly, so that there can 
be a homogeneous canonicalization among different outputs.

> Model.isIsomorphicWith() returns false when language tags case do not match
> ---------------------------------------------------------------------------
>
>                 Key: JENA-1377
>                 URL: https://issues.apache.org/jira/browse/JENA-1377
>             Project: Apache Jena
>          Issue Type: Wish
>          Components: ARQ, Core
>    Affects Versions: Jena 3.3.0
>         Environment: Linux
>            Reporter: Elie Roux
>            Priority: Minor
>
> Model.isIsomorphicWith() treats language tags in a case-sensitive way, which 
> is against BCP47 spec. It is easily shown with an example:
> {noformat}
>            Model m1 = ModelFactory.createDefaultModel();
>            Resource r = m1.getResource("http://example.com/resource";);
>            Property p = m1.getProperty("http://example.com/property";);
>            m1.add(r, p, m1.createLiteral("example", "zh-Latn-pinyin")); // 
> canonical
>            Model m2 = ModelFactory.createDefaultModel();
>            r = m2.getResource("http://example.com/resource";);
>            p = m2.getProperty("http://example.com/property";);
>            m2.add(r, p, m1.createLiteral("example", "zh-latn-pinyin")); // 
> lower case
>            System.out.println(m1.isIsomorphicWith(m2));
> {noformat}
> prints false, while it clearly should print true. Related bug (which is not 
> really a bug per se, just a trigger for this one: 
> https://github.com/jsonld-java/jsonld-java/issues/199
> See also https://issues.apache.org/jira/browse/COMMONSRDF-51 for some 
> consideration of the language tag case.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to