fixes for language filtering to support private-use subtags (#330)
This commit is contained in:
parent
020b9385f8
commit
81e12cc492
7 changed files with 98 additions and 3 deletions
|
@ -200,6 +200,80 @@ public class LanguageFilteringRDFServiceTest extends AbstractTestClass {
|
|||
assertEquals(model.size(),1);
|
||||
assertEquals(model.listStatements().next().getObject().toString(), "no tag label");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void sparqlConstructQueryTestPrivateFallback1() throws RDFServiceException {
|
||||
preferredLanguages = list("fr-CA");
|
||||
OntModel model;
|
||||
createLanguageFilter("LangFilteringTestModelPrivateFallback.n3");
|
||||
model = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM);
|
||||
filteringRDFService.sparqlConstructQuery(TEST_CONSTRUCT_QUERY, model);
|
||||
assertEquals(model.size(),1);
|
||||
final String expected = "fr@fr";
|
||||
assertEquals(expected, model.listStatements().next().getObject().toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void sparqlConstructQueryTestPrivateFallback2() throws RDFServiceException {
|
||||
preferredLanguages = list("fr");
|
||||
OntModel model;
|
||||
createLanguageFilter("LangFilteringTestModelPrivateFallback2.n3");
|
||||
model = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM);
|
||||
filteringRDFService.sparqlConstructQuery(TEST_CONSTRUCT_QUERY, model);
|
||||
assertEquals(model.size(),1);
|
||||
final String expected = "TIB FR ca@fr-CA-x-tib";
|
||||
assertEquals(expected, model.listStatements().next().getObject().toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void sparqlConstructQueryTestPrivateFallback3() throws RDFServiceException {
|
||||
preferredLanguages = list("fr-CA-x-tib");
|
||||
OntModel model;
|
||||
createLanguageFilter("LangFilteringTestModelPrivateFallback3.n3");
|
||||
model = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM);
|
||||
filteringRDFService.sparqlConstructQuery(TEST_CONSTRUCT_QUERY, model);
|
||||
assertEquals(model.size(),1);
|
||||
final String expected = "fr@fr";
|
||||
assertEquals(expected, model.listStatements().next().getObject().toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void sparqlConstructQueryTestPrivate() throws RDFServiceException {
|
||||
preferredLanguages = list("fr-CA-x-tib");
|
||||
OntModel model;
|
||||
createLanguageFilter("LangFilteringTestModelPrivate.n3");
|
||||
model = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM);
|
||||
filteringRDFService.sparqlConstructQuery(TEST_CONSTRUCT_QUERY, model);
|
||||
assertEquals(model.size(),1);
|
||||
final String expected = "TIB FR ca@fr-CA-x-tib";
|
||||
assertEquals(expected, model.listStatements().next().getObject().toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void sparqlConstructQueryTestFallback1() throws RDFServiceException {
|
||||
preferredLanguages = list("fr-CA");
|
||||
OntModel model;
|
||||
createLanguageFilter("LangFilteringTestModelFallback.n3");
|
||||
model = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM);
|
||||
filteringRDFService.sparqlConstructQuery(TEST_CONSTRUCT_QUERY, model);
|
||||
assertEquals(model.size(),1);
|
||||
final String expected = "fr CH@fr-CH";
|
||||
assertEquals(expected, model.listStatements().next().getObject().toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void sparqlConstructQueryTestFallback2() throws RDFServiceException {
|
||||
preferredLanguages = list("fr");
|
||||
OntModel model;
|
||||
createLanguageFilter("LangFilteringTestModelFallback.n3");
|
||||
model = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM);
|
||||
filteringRDFService.sparqlConstructQuery(TEST_CONSTRUCT_QUERY, model);
|
||||
assertEquals(model.size(),1);
|
||||
final String expected = "fr CH@fr-CH";
|
||||
assertEquals(expected, model.listStatements().next().getObject().toString());
|
||||
}
|
||||
|
||||
|
||||
|
||||
// ----------------------------------------------------------------------
|
||||
// Helper methods
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
||||
<http://test.edu/u> rdfs:label "fr CH"@fr-CH, "de DE"@de-DE, "en US"@en-US, "no tag" .
|
|
@ -0,0 +1,2 @@
|
|||
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
||||
<http://test.edu/u> rdfs:label "fr BE"@fr-BE, "fr-FR"@fr-FR, "fr CA"@fr-CA, "fr-CH"@fr-CH, "TIB FR ca"@fr-CA-x-tib, "en-US"@en-US, "no tag" .
|
|
@ -0,0 +1,2 @@
|
|||
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
||||
<http://test.edu/u> rdfs:label "fr"@fr, "fr BE"@fr-BE, "fr-FR"@fr-FR, "fr-CH"@fr-CH, "TIB FR ca"@fr-CA-x-tib, "en-US"@en-US, "no tag" .
|
|
@ -0,0 +1,2 @@
|
|||
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
||||
<http://test.edu/u> rdfs:label "en"@en, "fi FI"@fi-FI, "TIB FR ca"@fr-CA-x-tib, "en-US"@en-US, "no tag" .
|
|
@ -0,0 +1,2 @@
|
|||
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
||||
<http://test.edu/u> rdfs:label "en"@en, "fi FI"@fi-FI, "fr"@fr, "en-US"@en-US, "no tag" .
|
Loading…
Add table
Add a link
Reference in a new issue