A Model for Language Annotations on the Web: Supplementary Material

Date: 05/03/2019 | Last updated: 17/03/2019
Authors: Frances Gillis-Webber, C. Maria Keet, and Sabine Tittel


SPARQL Query

An example SPARQL query that cannot be done in a Knowledge Organization System such as Glottolog, is the following one:

SELECT ?x
WHERE { 
	?x a :Dialect .
	:Dialect rdfs:subClassOf ?y .
	?y a :Language .
	?y rdfs:label ?z .
	FILTER regex(str(?z), "french", "i")
}
which asks for the dialects of a particular language (in casu: French).


Competency Questions

  1. Which languoids are dialects of [language]?
  2. How many languoids does [language family] have?
  3. Is dialect a language?
  4. Which types of languages have been classified?
  5. Is [languoid/language] divided into different time periods?
  6. Does [language] have a region defined?
  7. Which languages are spoken in [region]?
  8. Is [language] the standard variety?
  9. Is [language] in ISO 639?

1. Which languoids are dialects of [language]?

α ← Type(Dialect, ObjectSomeValuesFrom(isDialectOf isixhosa))
Where α is the answer, which will retrieve, at least, xhosa_hlubi.


[ back to CQs ]

2. How many languoids does [language family] have?

SELECT ?x
	(COUNT(DISTINCT ?thing) AS ?count)
WHERE {
	?thing  a mola:Language ; mola:isMemberOf ?x .
	FILTER regex(str(?x), "nguni", "i")
}
GROUP BY ?x
Where the result will return a count of “4” for the Language Family Nguni.


[ back to CQs ]

3. Is dialect a language?

α ← SubClassOf(Dialect Language)
Where α is the answer, being yes.


[ back to CQs ]

4. Which types of languages have been classified?

SELECT ?subClass ?label 
WHERE { 
	?subClass rdfs:subClassOf* mola:Language . 
	?subClass rdfs:label ?label . 
}
Where the result will return seven subclasses of Language.


[ back to CQs ]

5. Is [languoid/language] divided into different time periods?

ASK {
	:cuban_spanish mola:inPeriod ?any
}
Where the result will return True.


[ back to CQs ]

6. Does [language] have a region defined?

ASK {
	:old_french_lorraine mola:inRegion ?any
}
Where the result will return True for the language old_french_lorraine.


[ back to CQs ]

7. Which languages are spoken in [region]?

α ← Type(Languoid ObjectSomeValuesFrom(inRegion cuba_region))
Where α is the answer, which will retrieve, at least, cuban_spanish.


[ back to CQs ]

8. Is [language] the standard variety?

Not answered. To be addressed in v.2


[ back to CQs ]

9. Is [language] in ISO 639?

ASK {
	SELECT DISTINCT ?x 
	WHERE {
		:old_french_lorraine mola:hasLanguageTag ?x .
		?x mola:iso639Part1|mola:iso639Part2|mola:iso639Part3 ?y .
	}
}
Where the result will return True for the languoid old_french_lorraine which is associated with the “Old French” language code in ISO 639.


[ back to CQs ]