standardssemantic-webisoskos

tagging 'plain-language' vs technical definition in a SKOS vocabulary


I am trying to implement a technical glossary in SKOS (which uses BCP47) that has both a 'technical' scientific definition as well as a more accessible 'plain-language' definition. I have not been able to find an appropriate solution

Is there a best-practice for this ?


Solution

  • There is no specific level of technicality expressible through SKOS, but you may look into other vocabularies to find a property that would suit your needs, for example on Linked Open Vocabularies.

    As for using such a property, I think the easiest would be to use rdf:CompoundLiteral to describe the literal itself:

    <resource>
      skos:prefLabel [
        a rdf:CompoundLiteral ;
        rdf:value "layman term" ;
        rdf:language "en" ;
        :isTechnical false
      ] ;
      skos:altLabel [
        a rdf:CompoundLiteral ;
        rdf:value "technical term" ;
        rdf:language "en" ;
        :isTechnical true
      ] ;
    

    Just remember that SKOS has an integrity condition such that only one skos:prefLabel may be present on a resource for a given language tag.

    If you absolutely must use BCP47 (for language ranges, more restrictive formats etc.), I have tried to find a way to express what you want using existing standards and extensions, but I wasn't successful. In that case, the only remaining possibility is to use a private-use subtag, like "term"@en-x-tech.