The language tag itself is part of RDF syntax and not an RDF literal.
"foo"@en is an rdf:langString with language component the characters
'e'-'n' defined by BCP47.
https://www.w3.org/TR/rdf11-concepts/#section-Graph-Literal
Or
Because that is how it works in XML. xml:lang="fr"
Because that is what BCP47 defines - strings.
Andy
c.f. xsd:anyURI.
On 26/01/2020 11:17, Bardo Nelgen wrote:
Hi everyone,
just ran into a more general question.
When using the following construct in SPARQL:
langMatches(lang(?I18nString),?language)
Why MUST ?language be a simple string and MUST NOT be of type
xsd:language according to
https://www.w3.org/TR/rdf11-concepts/#h3_xsd-datatypes (which may by
somebe perceivedas the natural type for a language definition) ?
As always, thanks for any hint.
Best,
Bardo