Difference between revisions of "Project:MyData"
(3 intermediate revisions by the same user not shown) | |||
Line 8: | Line 8: | ||
{{Project:MyData/Visualizations|state=collapsed}} | {{Project:MyData/Visualizations|state=collapsed}} | ||
− | = | + | = Mapping = |
− | + | == Scotland == | |
− | + | [[Project:MyData/Scotland/Mapping]] | |
− | + | {{Project:MyData/Scotland/Mapping/Results}} | |
− | + | == Japan == | |
− | + | [[Project:MyData/Japan/Mapping]] | |
− | + | {{Project:MyData/Japan/Mapping/Results}} | |
− | + | == Finland == | |
− | + | [[Project:MyData/Finland/Mapping]] | |
− | + | {{Project:MyData/Finland/Mapping/Results}} | |
− | + | == Cameroon == | |
− | + | [[Project:MyData/Cameroon/Mapping]] | |
− | + | {{Project:MyData/Cameroon/Mapping/Results}} | |
− | + | == Methodology == | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | } | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | } | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | [ | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Of course, it is necessary for these visualisations to engage in a mapping process. We explain [https://www.youtube.com/watch?v=rcc9NoQGTsk here] how to do so. | Of course, it is necessary for these visualisations to engage in a mapping process. We explain [https://www.youtube.com/watch?v=rcc9NoQGTsk here] how to do so. |
Latest revision as of 00:29, 27 January 2020
Documenting hubs
For instance:
Visualizations
Network
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
SELECT ?item ?itemLabel WHERE {
?item pdiot:P3 pdio:Q47.
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
}
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
#defaultView:Graph
SELECT ?node ?nodeLabel ?value ?valueLabel ?edgeLabel
(IF(BOUND(?edge), ?propertyrgb, "FFFFFF") AS ?rgb) #white
{
VALUES (?propertyRel ?propertyrgb)
{
(pdiot:P57 "880000") # red - activity
(pdiot:P55 "00AA00") # light green - country
(pdiot:P137 "0000AA") # blue - partner
(pdiot:P145 "AA00AA") # pink - seeks
(pdiot:P11 "00AAAA") # interested in
}
pdio:Q49 pdiot:P63 ?node.
OPTIONAL
{
?node ?propertyRel ?value.
?edge wikibase:directClaim ?propertyRel.
}.
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
SELECT ?item ?itemLabel ?country ?countryLabel WHERE {
?item pdiot:P3 pdio:Q646.
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
OPTIONAL { ?item pdiot:P55 ?country. }
}
data operators around the world (embedded)
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
SELECT ?item ?itemLabel ?country ?countryLabel ?location ?locationLabel WHERE {
?item pdiot:P3 pdio:Q401.
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
OPTIONAL { ?item pdiot:P55 ?country. }
OPTIONAL { ?item pdiot:P80 ?location. } }
associations, with country and location (embedded)
Hub initiators meeting work
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
#defaultView:Graph
SELECT ?item ?itemLabel ?object ?objectLabel ?edgeLabel WHERE {
?item ?rel ?object.
?edge wikibase:directClaim ?rel.
?item pdiot:P3 pdio:Q47.
MINUS {pdio:P3 wikibase:directClaim ?rel}
?edge wikibase:propertyType wikibase:WikibaseItem #If we don't remove this, then those properties pointing to non-item labels mess everything up
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
LIMIT 1000
Hub Initiators meeting map (embedded)
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
SELECT ?item ?itemLabel ?edgeLabel ?object ?objectLabel WHERE {
?item ?rel ?object.
?edge wikibase:directClaim ?rel.
?item pdiot:P3 pdio:Q47.
MINUS {pdio:P3 wikibase:directClaim ?rel}
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
LIMIT 1000
full triple table of Hub initiators meeting (embedded)
On Wikidata
- MyData org members on Wikidata
- hub list and their flags on Wikidata
- MyData network visuals on Wikidata
Mapping
Scotland
Project:MyData/Scotland/Mapping
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
#defaultView:Graph
SELECT ?rel ?pred ?obj ?item ?domain ?domainLabel ?range ?rangeLabel WHERE
{
BIND(pdio:Q201 AS ?table).
OPTIONAL {
?table pdiop:P26 ?domain_prop.
?domain_prop pdiops:P26 ?domain.
?domain_prop pdiopq:P27 ?domainLabel
}.
OPTIONAL {
?table pdiop:P26 ?range_prop.
?range_prop pdiops:P26 ?range.
?range_prop pdiopq:P27 ?rangeLabel
}.
{
SELECT ?domain ?range WHERE {
?table pdiop:P25 ?relationshipStatement.
?relationshipStatement pdiopq:P24 ?domain.
?relationshipStatement pdiopq:P23 ?range.
}
}
UNION
{
SELECT ?domain ?range WHERE {
?table pdiop:P58 ?relationshipInStatement.
?relationshipInStatement pdiops:P58 ?range.
?relationshipInStatement pdiopq:P61 ?domain.
}
}
UNION
{
SELECT ?domain ?range WHERE {
?table pdiop:P59 ?relationshipOutStatement.
?relationshipOutStatement pdiops:P59 ?domain.
?relationshipOutStatement pdiopq:P60 ?range.
}
}.
}
MyData/Scotland ecosystem mapping health + education (embedded)
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
#defaultView:Graph
SELECT ?rel ?pred ?obj ?item ?domain ?domainLabel ?range ?rangeLabel WHERE
{
BIND(pdio:Q227 AS ?table).
OPTIONAL {
?table pdiop:P26 ?domain_prop.
?domain_prop pdiops:P26 ?domain.
?domain_prop pdiopq:P27 ?domainLabel
}.
OPTIONAL {
?table pdiop:P26 ?range_prop.
?range_prop pdiops:P26 ?range.
?range_prop pdiopq:P27 ?rangeLabel
}.
{
SELECT ?domain ?range WHERE {
?table pdiop:P25 ?relationshipStatement.
?relationshipStatement pdiopq:P24 ?domain.
?relationshipStatement pdiopq:P23 ?range.
}
}
UNION
{
SELECT ?domain ?range WHERE {
?table pdiop:P58 ?relationshipInStatement.
?relationshipInStatement pdiops:P58 ?range.
?relationshipInStatement pdiopq:P61 ?domain.
}
}
UNION
{
SELECT ?domain ?range WHERE {
?table pdiop:P59 ?relationshipOutStatement.
?relationshipOutStatement pdiops:P59 ?domain.
?relationshipOutStatement pdiopq:P60 ?range.
}
}.
}
MyData/Scotland ecosystem mapping health + education +family activity (embedded)
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
#defaultView:Graph
SELECT ?rel ?pred ?obj ?item ?domain ?domainLabel ?range ?rangeLabel WHERE
{
BIND(pdio:Q228 AS ?table).
OPTIONAL {
?table pdiop:P26 ?domain_prop.
?domain_prop pdiops:P26 ?domain.
?domain_prop pdiopq:P27 ?domainLabel
}.
OPTIONAL {
?table pdiop:P26 ?range_prop.
?range_prop pdiops:P26 ?range.
?range_prop pdiopq:P27 ?rangeLabel
}.
{
SELECT ?domain ?range WHERE {
?table pdiop:P25 ?relationshipStatement.
?relationshipStatement pdiopq:P24 ?domain.
?relationshipStatement pdiopq:P23 ?range.
}
}
UNION
{
SELECT ?domain ?range WHERE {
?table pdiop:P58 ?relationshipInStatement.
?relationshipInStatement pdiops:P58 ?range.
?relationshipInStatement pdiopq:P61 ?domain.
}
}
UNION
{
SELECT ?domain ?range WHERE {
?table pdiop:P59 ?relationshipOutStatement.
?relationshipOutStatement pdiops:P59 ?domain.
?relationshipOutStatement pdiopq:P60 ?range.
}
}.
}
MyData/Scotland ecosystem mapping work (embedded)
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
#defaultView:Graph
SELECT ?rel ?pred ?obj ?item ?domain ?domainLabel ?range ?rangeLabel
WITH {
SELECT ?table
WHERE {
pdio:Q224 pdiot:P63 ?table.
}
} AS %workshop
WHERE
{
OPTIONAL {
?table pdiop:P26 ?domain_prop.
?domain_prop pdiops:P26 ?domain.
?domain_prop pdiopq:P27 ?domainLabel
}.
OPTIONAL {
?table pdiop:P26 ?range_prop.
?range_prop pdiops:P26 ?range.
?range_prop pdiopq:P27 ?rangeLabel
}.
{
SELECT ?domain ?range WHERE {
INCLUDE %workshop.
?table pdiop:P25 ?relationshipStatement.
?relationshipStatement pdiopq:P24 ?domain.
?relationshipStatement pdiopq:P23 ?range.
}
}
UNION
{
SELECT ?domain ?range WHERE {
INCLUDE %workshop.
?table pdiop:P58 ?relationshipInStatement.
?relationshipInStatement pdiops:P58 ?range.
?relationshipInStatement pdiopq:P61 ?domain.
}
}
UNION
{
SELECT ?domain ?range WHERE {
INCLUDE %workshop.
?table pdiop:P59 ?relationshipOutStatement.
?relationshipOutStatement pdiops:P59 ?domain.
?relationshipOutStatement pdiopq:P60 ?range.
}
}.
}
MyData/Scotland ecosystem mapping all together (embedded)
Japan
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
#defaultView:Graph
SELECT ?item1 ?item1Label ?rgb ?item2 ?item2Label
WITH {
SELECT ?predicateFilterValue ?predicateFilterValueRGB WHERE {
VALUES (?predicateFilterValue ?predicateFilterValueRGB) {
(pdio:Q401 "EEEEEE")(pdio:Q646 "222288")
}
}
}
AS %predicateFilterValues
WITH {
SELECT ?predicate ?subjectValue ?objectValue ?predicateRGB WHERE {
VALUES (?predicate ?subjectValue ?objectValue ?predicateRGB) {
(pdiot:P111 pdio:Q401 pdio:Q646 "EEEEEE")(pdiot:P111 pdio:Q646 pdio:Q401 "222288")
}
}
}
AS %predicates
WITH {SELECT ?node ?nodeRGB WHERE {
?node pdiot:P55 pdio:Q681.
?node pdiot:P3 ?predicateFilterValue.
INCLUDE %predicateFilterValues.
BIND(?predicateFilterValueRGB AS ?nodeRGB)
}
}
AS %nodes
WITH {SELECT ?subject ?object ?edgeRGB WHERE {
INCLUDE %predicates.
?subject pdiot:P3 ?subjectValue.
?object pdiot:P3 ?objectValue.
?subject ?predicate ?object.
# This is filtering for each edge twice, potentially a huge waste: |E|*|V| instead of |V|
?subject pdiot:P55 pdio:Q681.
?object pdiot:P55 pdio:Q681.
BIND(?predicateRGB as ?edgeRGB)
}
} AS %edges
WHERE {
{ # The caption's nodes:
INCLUDE %predicateFilterValues.
BIND(?predicateFilterValue AS ?item1).
BIND(?predicateValueRGB AS ?rgb).
}
UNION
{ # The caption's edges:
INCLUDE %predicates.
BIND(?subjectValue AS ?item1).
BIND(?objectValue AS ?item2).
BIND(?predicateRGB AS ?rgb).
}
UNION
{
INCLUDE %nodes.
BIND(?node AS ?item1).
BIND(?nodeRGB AS ?rgb).
}
UNION
{
INCLUDE %edges.
BIND(?subject AS ?item1).
BIND(?object AS ?item2).
BIND(?edgeRGB AS ?rgb).
}
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
}
LIMIT 10000
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
SELECT DISTINCT ?operator ?operatorLabel ?project ?projectLabel ?industry ?industryLabel
WHERE {
{
?operator pdiot:P3 pdio:Q401.
OPTIONAL {?operator pdiot:P44 ?industry.}
OPTIONAL {?project pdiot:P111 ?operator}
OPTIONAL {?project pdiot:P111 ?operator}
?operator pdiot:P55 pdio:Q681.
}
UNION
{
?project pdiot:P3 pdio:Q646.
OPTIONAL {?project pdiot:P111 ?operator}
OPTIONAL {?project pdiot:P111 ?operator}
?project pdiot:P55 pdio:Q681.
}
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
}
LIMIT 10000
Japanese ecosystem with indsutry information (embedded)
Finland
Project:MyData/Finland/Mapping
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
#defaultView:Graph
SELECT ?item1 ?item1Label ?rgb ?item2 ?item2Label
WITH {
SELECT ?predicateFilterValue ?predicateFilterValueRGB WHERE {
VALUES (?predicateFilterValue ?predicateFilterValueRGB) {
(pdio:Q401 "EEEEEE")(pdio:Q646 "222288")
}
}
}
AS %predicateFilterValues
WITH {
SELECT ?predicate ?subjectValue ?objectValue ?predicateRGB WHERE {
VALUES (?predicate ?subjectValue ?objectValue ?predicateRGB) {
(pdiot:P111 pdio:Q401 pdio:Q646 "EEEEEE")(pdiot:P111 pdio:Q646 pdio:Q401 "222288")
}
}
}
AS %predicates
WITH {SELECT ?node ?nodeRGB WHERE {
?node pdiot:P55 pdio:Q564.
?node pdiot:P3 ?predicateFilterValue.
INCLUDE %predicateFilterValues.
BIND(?predicateFilterValueRGB AS ?nodeRGB)
}
}
AS %nodes
WITH {SELECT ?subject ?object ?edgeRGB WHERE {
INCLUDE %predicates.
?subject pdiot:P3 ?subjectValue.
?object pdiot:P3 ?objectValue.
?subject ?predicate ?object.
# This is filtering for each edge twice, potentially a huge waste: |E|*|V| instead of |V|
?subject pdiot:P55 pdio:Q564.
?object pdiot:P55 pdio:Q564.
BIND(?predicateRGB as ?edgeRGB)
}
} AS %edges
WHERE {
{
INCLUDE %nodes.
BIND(?node AS ?item1).
BIND(?nodeRGB AS ?rgb).
}
UNION
{
INCLUDE %edges.
BIND(?subject AS ?item1).
BIND(?object AS ?item2).
BIND(?edgeRGB AS ?rgb).
}
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
}
LIMIT 10000
MyData/Finland ecosystem mapping (embedded)
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
SELECT ?item ?str_item ?itemLabel WHERE {
BIND(REPLACE(STR(?item),"http://wiki.personaldata.io/entity/","") AS ?str_item)
?item pdiot:P3 pdio:Q401.
?item pdiot:P55 pdio:Q564.
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
}
LIMIT 100
organizations in Finland (embedded)
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
SELECT ?item ?str_item ?itemLabel ?country ?countryLabel ?class ?classLabel WHERE {
BIND(REPLACE(STR(?item),"http://wiki.personaldata.io/entity/","") AS ?str_item)
BIND(pdio:Q564 AS ?country)
BIND(pdio:Q646 AS ?class)
?item pdiot:P3 ?class.
?item pdiot:P55 ?country.
# Label service, produces ?xxxLabel and ?xxxDescription above
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
}
LIMIT 100
data operators project in Finland (embedded)
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
SELECT ?operator ?operatorLabel ?rgb ?project ?projectLabel ?projectColor
WITH {SELECT ?operator ?operatorClass ?operatorColor WHERE {
BIND(?class AS ?operatorClass)
BIND("FFA500" AS ?operatorColor)
BIND(?item AS ?operator)
BIND(pdio:Q564 AS ?country)
BIND(pdio:Q401 AS ?class)
?item pdiot:P3 ?class.
?item pdiot:P55 ?country.
}
}
AS %operator
WITH {SELECT ?project ?projectClass ?projectColor WHERE {
BIND(?class AS ?projectClass)
BIND("500" AS ?projectColor)
BIND(?item AS ?project)
BIND(pdio:Q564 AS ?country)
BIND(pdio:Q646 AS ?class)
?item pdiot:P3 ?class.
?item pdiot:P55 ?country.
}
}
AS %project
WHERE {
BIND(?operatorColor AS ?rgb)
{
INCLUDE %operator.
INCLUDE %project.
?project pdiot:P111 ?operator
}
UNION
{
INCLUDE %operator.
}
UNION
{
INCLUDE %project.
}
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
}
LIMIT 10000
first attempt, kept for historic reasons (embedded)
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
SELECT DISTINCT ?operator ?operatorLabel ?project ?projectLabel
WHERE {
{
?operator pdiot:P3 pdio:Q401.
OPTIONAL {?project pdiot:P111 ?operator}
OPTIONAL {?project pdiot:P111 ?operator}
?operator pdiot:P55 pdio:Q564.
}
UNION
{
?project pdiot:P3 pdio:Q646.
OPTIONAL {?project pdiot:P111 ?operator}
OPTIONAL {?project pdiot:P111 ?operator}
?project pdiot:P55 pdio:Q564.
}
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
}
LIMIT 10000
spreadsheet with both (embedded)
Cameroon
Project:MyData/Cameroon/Mapping
PREFIX pdio: <https://wiki.personaldata.io/entity/>
PREFIX pdiot: <https://wiki.personaldata.io/prop/direct/>
PREFIX pdiop: <https://wiki.personaldata.io/prop/>
PREFIX pdiops: <https://wiki.personaldata.io/prop/statement/>
PREFIX pdiopq: <https://wiki.personaldata.io/prop/qualifier/>
#defaultView:Graph
SELECT ?item1 ?item1Label ?rgb ?item2 ?item2Label
WITH {
SELECT ?predicateFilterValue ?predicateFilterValueRGB WHERE {
VALUES (?predicateFilterValue ?predicateFilterValueRGB) {
(pdio:Q401 "EEEEEE")(pdio:Q646 "222288")
}
}
}
AS %predicateFilterValues
WITH {
SELECT ?predicate ?subjectValue ?objectValue ?predicateRGB WHERE {
VALUES (?predicate ?subjectValue ?objectValue ?predicateRGB) {
(pdiot:P111 pdio:Q401 pdio:Q646 "EEEEEE")(pdiot:P111 pdio:Q646 pdio:Q401 "222288")
}
}
}
AS %predicates
WITH {SELECT ?node ?nodeRGB WHERE {
?node pdiot:P55 pdio:Q1918.
?node pdiot:P3 ?predicateFilterValue.
INCLUDE %predicateFilterValues.
BIND(?predicateFilterValueRGB AS ?nodeRGB)
}
}
AS %nodes
WITH {SELECT ?subject ?object ?edgeRGB WHERE {
INCLUDE %predicates.
?subject pdiot:P3 ?subjectValue.
?object pdiot:P3 ?objectValue.
?subject ?predicate ?object.
# This is filtering for each edge twice, potentially a huge waste: |E|*|V| instead of |V|
?subject pdiot:P55 pdio:Q1918.
?object pdiot:P55 pdio:Q1918.
BIND(?predicateRGB as ?edgeRGB)
}
} AS %edges
WHERE {
{
INCLUDE %nodes.
BIND(?node AS ?item1).
BIND(?nodeRGB AS ?rgb).
}
UNION
{
INCLUDE %edges.
BIND(?subject AS ?item1).
BIND(?object AS ?item2).
BIND(?edgeRGB AS ?rgb).
}
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en" .
}
}
LIMIT 10000
Cameroon MyData ecosystem (embedded)
Methodology
Of course, it is necessary for these visualisations to engage in a mapping process. We explain here how to do so.