For the needs of supporting definition of user interface labels by using triplets preserved in a graph, the new VitroUILabels vocabulary has been defined. UI labels should be defined in accordance with this vocabulary.
The vocabulary defined PropertyKey class with internal structure containing five data properties: hasKey, hasApp, hasTheme, ftlUrl, hasPackage. Besides those five data properties, rdfs:label is used for defining UI label translations in different languages defined by the language tag assigned to rdfs:label. The values of properties hasKey, hasApp, and hasTheme, as well as language tag assigned to rdfs:label are used for selection of the UI label based on label key and the user environment (selected locale, theme, and application).
@prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix prop-data: <http://vivoweb.org/ontology/core/properties/individual#> . @prefix prop: <http://vivoweb.org/ontology/core/properties/vocabulary#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . @prefix skos: <http://www.w3.org/2004/02/skos/core#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . prop:hasPackage rdf:type owl:DatatypeProperty ; rdfs:domain prop:PropertyKey ; rdfs:label "has package" ; rdfs:range xsd:string . prop:hasKey rdf:type owl:DatatypeProperty ; rdfs:comment "Value of the key" ; rdfs:domain prop:PropertyKey ; rdfs:label "Propertie file url " ; rdfs:range xsd:string . prop:hasTheme rdf:type owl:DatatypeProperty ; rdfs:domain prop:PropertyKey ; rdfs:label "has theme" ; rdfs:range xsd:string . prop:PropertyKey rdf:type owl:Class ; rdfs:label skos:Concept ; rdfs:subClassOf owl:Thing ; rdfs:subClassOf skos:Concept . prop:ftlUrl rdf:type owl:DatatypeProperty ; rdfs:comment "Points to the FTL file containing the key" ; rdfs:domain prop:PropertyKey ; rdfs:label "ftl file url" ; rdfs:range xsd:anyURI . prop:hasApp rdf:type owl:DatatypeProperty ; rdfs:domain prop:PropertyKey ; rdfs:label "has application" ; rdfs:range xsd:string .