@prefix browser: .
@prefix av: .
@prefix wdav: .
@prefix dct: .
@prefix owl: .
@prefix rdfs: .
@prefix void: .
#####################################
# Configurations
#####################################
a browser:Configuration ;
dct:title "People by groups"@en, "Lidé podle skupin"@cs;
dct:description "Explore people by different groups they belong to."@en, "Objevujte lidi dle různých skupin, do kterých patří."@cs;
browser:hasVisualStyleSheet ;
browser:startingNode ,
,
,
,
,
,
;
#browser:resourceIriPattern "^http://www\\.wikidata\\.org/entity/Q[1-9][0-9]*$";
browser:hasViewSet
,
,
,
,
.
#####################################
# ViewSets
#####################################
a browser:ViewSet ;
dct:title "Group of people"@en ;
browser:hasView
,
,
;
browser:hasDefaultView ;
browser:hasCondition """PREFIX skos:
PREFIX dbo:
PREFIX dct:
ASK {
?node skos:prefLabel ?label .
FILTER(LANG(?label) = "en")
FILTER EXISTS {
?person a dbo:Person .
{
?person dct:subject ?node .
} UNION {
?person dct:subject/skos:broader ?node .
} UNION {
?person dct:subject/skos:broader/skos:broader ?node .
}
}
}""" ;
browser:hasDataset .
a browser:ViewSet ;
dct:title "Person"@en ;
browser:hasView
,
,
,
,
#,
,
;
browser:hasDefaultView ;
browser:hasCondition """PREFIX wd:
PREFIX wdt:
ASK {
?node wdt:P31 wd:Q5 .
}""" ;
browser:hasDataset .
#####################################
# Views
#####################################
a browser:View ;
dct:title "Child group"@en ;
dct:description ""@en ;
browser:hasExpansion ;
browser:hasPreview ;
browser:hasDetail .
a browser:View ;
dct:title "Parent group"@en ;
dct:description ""@en ;
browser:hasExpansion ;
browser:hasPreview ;
browser:hasDetail .
a browser:View ;
dct:title "Group of people"@en ;
dct:description ""@en ;
browser:hasExpansion ;
browser:hasPreview ;
browser:hasDetail .
a browser:View ;
dct:title "Personality in groups"@en ;
dct:description ""@en ;
browser:hasExpansion ;
browser:hasPreview ;
browser:hasDetail .
#####################################
# Queries
#####################################
a browser:ExpansionQuery ;
dct:title "Broader groups" ;
browser:hasDataset ;
browser:query """PREFIX skos:
PREFIX av:
PREFIX browser:
CONSTRUCT {
?broader a av:group-of-people ;
skos:prefLabel ?broaderLabel ;
browser:class "groupOfPeople" .
?node skos:broader ?broader .
skos:broader browser:class "broader" .
} WHERE {
?node skos:broader ?broader .
?broader skos:prefLabel ?broaderLabel .
FILTER(LANG(?broaderLabel) = "en")
}""" .
a browser:ExpansionQuery ;
dct:title "Narrower groups" ;
browser:hasDataset ;
browser:query """PREFIX skos:
PREFIX dbo:
PREFIX av:
PREFIX browser:
CONSTRUCT {
?narrower a av:group-of-people ;
skos:prefLabel ?narrowerLabel ;
browser:class "groupOfPeople" .
?narrower skos:broader ?node .
skos:broader browser:class "broader" .
} WHERE {
?narrower skos:broader ?node ;
skos:prefLabel ?narrowerLabel .
FILTER(LANG(?narrowerLabel) = "en")
FILTER EXISTS {
?person a dbo:Person ;
owl:sameAs ?personwd .
FILTER(STRSTARTS(STR(?personwd), "http://www.wikidata.org/entity/"))
{
?person dct:subject ?narrower .
} UNION {
?person dct:subject/skos:broader ?narrower .
} UNION {
?person dct:subject/skos:broader/skos:broader ?narrower .
}
}
}""" .
a browser:ExpansionQuery ;
dct:title "People in the group" ;
browser:hasDataset ;
browser:query """PREFIX skos:
PREFIX dct:
PREFIX owl:
PREFIX dbo:
PREFIX av:
PREFIX wdav:
PREFIX browser:
CONSTRUCT {
?personwd a wdav:personality ;
skos:prefLabel ?name ;
av:belongsTo ?node ;
browser:class "personality" .
av:belongsTo browser:class "belongsTo" .
} WHERE {
?person a dbo:Person ;
owl:sameAs ?personwd ;
dct:subject ?node ;
foaf:name ?name .
FILTER(STRSTARTS(STR(?personwd), "http://www.wikidata.org/entity/"))
}""" .
a browser:ExpansionQuery ;
dct:title "Groups of the person" ;
browser:hasDataset ;
browser:query """PREFIX skos:
PREFIX dct:
PREFIX owl:
PREFIX av:
PREFIX browser:
CONSTRUCT {
?group a av:group-of-people ;
skos:prefLabel ?label ;
browser:class "groupOfPeople" .
?node av:belongsTo ?group .
av:belongsTo browser:class "belongsTo" .
} WHERE {
?person owl:sameAs ?node ;
dct:subject ?group .
?group skos:prefLabel ?label .
FILTER(LANG(?label ) = "en")
}""" .
a browser:PreviewQuery ;
dct:title "Group of people preview" ;
browser:hasDataset ;
browser:query """PREFIX skos:
PREFIX av:
PREFIX browser:
CONSTRUCT {
?node a av:group-of-people ;
skos:prefLabel ?label ;
browser:class "groupOfPeople" .
} WHERE {
?node skos:prefLabel ?label .
FILTER(LANG(?label) = "en")
}""" .
a browser:DetailQuery ;
dct:title "Group of people detail" ;
browser:hasDataset ;
browser:query """PREFIX skos:
PREFIX dbo:
PREFIX av:
CONSTRUCT {
?node skos:prefLabel ?label ;
av:number-of-people ?numberOfPeople .
} WHERE {
?node skos:prefLabel ?label .
FILTER(LANG(?label) = "en")
OPTIONAL {
SELECT ?node (COUNT(*) AS ?numberOfPeople1)
WHERE {
?person a dbo:Person ;
dct:subject ?node .
}
GROUP BY ?node
}
BIND(COALESCE(?numberOfPeople1, 0) AS ?numberOfPeople)
}""" .
#####################################
# Datasets
#####################################
a void:Dataset ;
dct:title "DBPedia SPARQL endpoint" ;
void:sparqlEndpoint .
#####################################
# View vocabularies
#####################################
av:group-of-people a owl:Class ;
rdfs:label "group of people"@en ;
rdfs:comment "group of people"@en .
av:number-of-people a owl:DatatypeProperty ;
rdfs:label "number of people"@en ;
rdfs:comment "number of people in the group"@cs ;
rdfs:domain av:group-of-people ;
rdfs:range rdfs:Literal .
av:belongsTo a owl:ObjectProperty ;
rdfs:label "belongs to"@en ;
rdfs:comment "a person belongs to a group of people"@cs ;
rdfs:domain wdav:personality ;
rdfs:range av:group-of-people .
#####################################
# Visual styles
#####################################
a browser:VisualStyleSheet ;
browser:hasVisualStyle ,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
.
a browser:VisualStyle ;
browser:shape "barrel" ;
browser:width "90px" ;
browser:height "40px" ;
browser:background-color "#bbdcbc" ;
browser:border-color "#59775a" ;
browser:border-width "3px" ;
browser:padding "4px" ;
browser:text-halign "center" ;
browser:text-valign "center" ;
browser:text-wrap "wrap" ;
browser:text-max-width "80px" ;
browser:color "black" ;
browser:label "data(label)" ;
browser:font-size "9px" ;
browser:hasSelector ".groupOfPeople" .
a browser:VisualStyle ;
browser:line-color "#207866";
browser:width "2";
browser:target-arrow-shape "triangle" ;
browser:target-arrow-fill "hollow" ;
browser:curve-style "straight" ;
browser:line-style "solid" ;
browser:label "data(label)" ;
browser:font-size "8px" ;
browser:curve-style "bezier" ;
browser:control-point-step-size "40" ;
browser:hasSelector ".broader" .
a browser:VisualStyle ;
browser:line-color "#207866";
browser:width "2";
browser:target-arrow-shape "triangle" ;
browser:target-arrow-fill "hollow" ;
browser:curve-style "straight" ;
browser:line-style "solid" ;
browser:label "data(label)" ;
browser:font-size "8px" ;
browser:curve-style "bezier" ;
browser:control-point-step-size "40" ;
browser:hasSelector ".belongsTo" .