Ero sivun ”Strategiadatan analyysi” versioiden välillä

Opasnet Suomista
Siirry navigaatioon Siirry hakuun
(merkitty meneillään olevaksi arvioinniksi)
 
(12 välissä olevaa versiota 2 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
{{arviointi}}
{{arviointi|status=Meneillään oleva arviointi}}


== Linkkejä aineistoon ==  
== Linkkejä aineistoon ==  
Rivi 34: Rivi 34:
'''Havainnot:'''
'''Havainnot:'''


*[[21_polkua_kitkattomaan_Suomeen_-_ICT_2015-työryhmän_loppuraportti]]


'''Status:''' Asiasanoitus (käynnissä)
'''Havainnot:'''
{{piilotettu|
1. Dokumentissa toimenpide-ehdotukset ovat jakeita, jotka alkavat sanoilla "Työryhmä ehdottaa ...". Nämä jakeet ovat '''päätavoitteita'''.<br />


2. Dokumentin pdf-versiossa on lauseita, joita ei löydy tietokannasta.<br />
Esimerkki 1 (pdf-dokumentti s.28): "ICT 2015-työryhmän ehdotus vuodeksi 2013" alla lukee "Rakennetaan yhtenäinen kansallinen palveluarkkitehtuuri (polku 1, kriittinen)"
ei löydy tietokannasta. Tämä on '''päätavoite'''.<br />
Esimerkki 2 (pdf-dokumentti s.29): "Rakennetaan yritysten reaaliaikaisen talouden vaatima infrastruktuuri (polku 2). Tämäkin on '''päätavoite'''.<br />
}}


== Asiasanoitus ja relaatiot ==
== Asiasanoitus ja relaatiot ==
Rivi 401: Rivi 413:
=== Lisää tähän omia ehdotuksia asiasanoiksi ===
=== Lisää tähän omia ehdotuksia asiasanoiksi ===


Päätös, Vaikutus, Arvo, Data, Huomio, Tavoite, Toimenpide
Päätös, Vaikutus, Arvo, Data, Huomio, Päätavoite, Tavoite, Toimenpide




Rivi 450: Rivi 462:
1|Valtion_konesalistrategia_2014|Op_fi4724|
1|Valtion_konesalistrategia_2014|Op_fi4724|
</t2b>
</t2b>


=== Jakeiden päivitys ===
=== Jakeiden päivitys ===
'''Päivitä Versiot-tauluun sivut ja ikilinkin IDt ja aja alla oleva koodi''' --[[Käyttäjä:Smxb|Smxb]] ([[Keskustelu käyttäjästä:Smxb|keskustelu]]) 14. joulukuuta 2014 kello 21.33 (UTC)ÄLÄ PÄIVITÄ JAKEITA TOISTAISEKSI!
 
<rcode label="Päivitä jakeet" variables="
'''Päivitä Versiot-tauluun sivut ja ikilinkin IDt ja aja alla oleva koodi'''
 
--[[Käyttäjä:Smxb|Smxb]] ([[Keskustelu käyttäjästä:Smxb|keskustelu]]) 14. joulukuuta 2014 kello 21.33 (UTC)ÄLÄ PÄIVITÄ JAKEITA TOISTAISEKSI (koodi alla mutta poistamalla '<'-merkki alusta on tämä koodinpätkä toistaiseksi poistettu käytöstä varmuuden vuoksi)!
 
rcode label="Päivitä jakeet" variables="
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
name:pagename|type:hidden|default:'{{PAGENAME}}'
name:pagename|type:hidden|default:'{{PAGENAME}}'
Rivi 489: Rivi 506:
</rcode>
</rcode>


==Yhdistelmähakukoneet==


=== Jaekohtainen avainsanalistaus ===
 
'''Hakee jakeita ja näyttää kaikki niihin liittyvät avainsanat'''
==Työkalut==
<rcode label="Hae" name="avainsanat_disp" embed=1 variables="
 
Aineiston työstämiseen tarkoittuja koodeja.
 
 
=== Jakeet ===
 
==== Jaehakukone ====
 
'''Hakee jakeita annetuilla kriteereillä. Näyttää myös tekniset sarakkeet. Vapaakenttiin voi laittaa useita arvoja erottelemalla ne pilkuilla.'''
<rcode label="Näytä jakeet" name="jakeet" embed=0 variables="
name:sivu|description:Sivu jolta jakeita haetaan|type:selection|options:
name:sivu|description:Sivu jolta jakeita haetaan|type:selection|options:
NULL;Kaikilta;
NULL;Kaikilta;
Rivi 516: Rivi 541:
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
name:version|description:Versio|type:text|default:nykyinen|
name:version|description:Versio|type:text|default:nykyinen|
name:tuotos|description:Missä muodossa tulostetaan?|type:selection|options:'Numeroitu teksti';Numeroitu teksti;'Taulukko';Taulukko|default:'Numeroitu teksti'|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
">
">
Rivi 540: Rivi 566:
out <- jaehakukone(ident, sivu = sivu, versio = version, jae = jaeid)
out <- jaehakukone(ident, sivu = sivu, versio = version, jae = jaeid)


if (nrow(out) == 0) {
if (nrow(out) > 0) {
stop("Jakeita ei löytynyt!")
if(tuotos == "Taulukko") {
}
oprint(out, include.rownames = FALSE)
} else {
pver <- "Tyhjä tieto"
psiv <- "Tyhjä tieto"
paih <- "Tyhjä tieto"


filter <- list()
outs <- ""
filter$Sivu <- sivu
for(i in 1:nrow(out)) {
filter$Versio <- version
ver <- as.character(out$Versio[i])
filter$JaeID <- jaeid
siv <- as.character(out$Sivu[i])
 
aih <- as.character(out$Aihe[i])
tags <- try_dl_rm(
paste(ident, "Avainsanat", sep = "."),
if(!is.na(pver != ver)) if(pver != ver) outs <- c(outs, paste("Versio:", ver))
filter = filter,  
if(!is.na(psiv != siv)) if(psiv != siv) outs <- c(outs, paste("Sivu:", siv))
rm_id = paste(ident, "Avainsananpoistot", sep = "."),
if(!is.na(paih != aih)) if(paih != aih) outs <- c(outs, paste("Aihe:", aih))
rm_ind = "AvainsanaID"
)
outs <- c(outs, paste(as.character(out$JaeID[i]), as.character(out$Result[i])))
pver <- ver
psiv <- siv
paih <- aih
}
outs <- data.frame(Jakeet = outs, T = "")
oprint(outs, include.rownames = FALSE, show_all = TRUE)
}
} else {
cat("Jakeita ei löytynyt!\n")
}
</rcode>


if (nrow(tags) == 0) {
==== Jakeenlisäyskone ====
cat("Avainsanoja ei löytynyt!\n")
} else {
# Yhdistetään kunkin jakeen avainsanat yhdelle riville
tags <- ddply(
tags,
c("Versio", "Sivu", "JaeID"),
function(x) {a <- x[1,];a$Avainsanat <- paste(x$Result, collapse = ", ");return(a)}
)


out <- join(
'''Lisää tietokantaan vapaasti määriteltävän jakeen. Lisätyt jakeet näkyvät tämän sivun hakukoneissa. Niiden JaeID:llä on "L"-etuliite.'''
out[c("Versio", "Sivu", "JaeID", "Result")],
<rcode label="Lisää jae" name="jakeenlisays" embed=1 variables="
tags[c("Versio", "Sivu", "JaeID", "Avainsanat")],
name:sivu|description:Sivu jolle jae lisätään|type:selection|options:
by = c("Versio", "Sivu", "JaeID"),
type = "inner",
match = "first"
)
# Jos annettiin vain yksi versio ja/tai sivu niin niitä ei tarvitse printata
filter_ind <- NULL
if (length(version) != 1) filter_ind <- c(filter_ind, "Versio")
if (length(sivu) != 1) filter_ind <- c(filter_ind, "Sivu")
filter_ind <- c(filter_ind, "JaeID")
oprint(
out[c(filter_ind, "Result", "Avainsanat")],
include.rownames = FALSE,
show_all = TRUE
)
}
</rcode>
 
=== Jae-relaatio-jae listaus ===
'''Hakee jakeita ja niihin liittyviä toisia jakeita listaten myös relaation tyypin'''
<rcode label="Hae" name="relaatiot_disp" embed=1 variables="
name:sivu|description:Sivu jolta relaatioita haetaan|type:selection|options:
NULL;Kaikilta;
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
Rivi 611: Rivi 621:
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
name:version|description:Versio|type:text|default:nykyinen|
name:liitsis|description:Liittymistyyppi (tyhjä = kaikki)|type:checkbox|options:
name:sisalto|description:Jakeen sisältö|type:textbox|
'tukee tai on linjassa';tukee tai on linjassa;
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
'vastustaa tai on ristiriidassa';vastustaa tai on ristiriidassa;
name:pagename|type:hidden|default:'{{PAGENAME}}'
'on neutraali suhteessa';on neutraali suhteessa;
'liittyy';liittyy;
'edellyttää';edellyttää;
'sisältää';sisältää;
'vaikuttaa';vaikuttaa;
'vaikuttaa taloudellisesti';vaikuttaa taloudellisesti|
name:version|description:Versio|type:text|default:nykyinen|
name:details|description:Näytetäänkö tekniset yksityiskohdat?|type:selection|options:FALSE;Ei, vain jakeiden sisältö;TRUE;Kyllä, myös jakeiden numerot|default:FALSE|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
">
">
# Eri sisältymistyypit pitää määritellä niin että ne voidaan käsitellä erillään muista relaatioista
sis_opt <- c(
'ehdotus huomioitu ja liittyvää painotusta muutettu',
'ehdotus huomioitu ja uusi kohta lisätty',
'ehdotus ei ole antanut aihetta muutoksiin',
'ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun'
)
#liit_opt <- c(
# 'tukee tai on linjassa',
# 'vastustaa tai on ristiriidassa',
# 'on neutraali suhteessa',
# 'on uusi linjaus tai painotus'
#)
library(OpasnetUtils)
library(OpasnetUtils)
library(plyr)
objects.latest("Op_fi4325", "apufunktiot")
objects.latest("Op_fi4325", "apufunktiot")


# Erottelu pilkuilla ja välilyöntien poisto
if (tolower(version) == "nykyinen") {
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
version <- get_current_version(ident)
if (tolower(jaeid == "hae kaikki")) {
jaeid <- NULL
} else {
} else {
jaeid <- gsub("^\\s*|\\s*$", "", strsplit(jaeid, ",")[[1]])
version <- as.numeric(version)
}
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])
a <- tolower(version) == "nykyinen"
if (any(a)) {
version <- version[!a]
version <- c(version, get_current_version(ident))
}
version <- as.numeric(version)
# Add previous and next versions to check for inclusion from previous and into next
original_version <- version
if (!(1 %in% version)) {
prev <- TRUE
version <- c(min(version, na.rm = TRUE) - 1, version)
}
}
version <- c(version, max(version, na.rm = TRUE) + 1)


filter <- list()
out <- data.frame(
filter$Sivu1 <- sivu
Versio = version,
Sivu = sivu, 
Aika = date(),
Käyttäjä = wiki_username,
JaeID = NA,
Result = sisalto
)
 
ident.subset <- paste(ident, "Jakeenlisaykset", sep = ".")
 
filter <- list()
filter$Versio <- version
filter$Versio <- version
filter$JaeID1 <- jaeid
filter$Sivu <- sivu


rel1 <- try_dl_rm(
upload_with_autoid(
paste(ident, "Relaatiot", sep = "."),  
out,
filter = filter,  
ident.subset,
rm_id = paste(ident, "Relaationpoistot", sep = "."),
id_name = "JaeID",
rm_ind = "RelaatioID"
pagename = pagename,
prefix = "L",
filter = filter
)
)
if (is.null(jaeid)) {
</rcode>
rel2 <- data.frame()
 
} else {
==== Jakeenpoistokone ====
filter$JaeID1 <- NULL
filter$Sivu1 <- NULL
filter$JaeID2 <- jaeid
filter$Sivu2 <- sivu
rel2 <- try_dl_rm(
paste(ident, "Relaatiot", sep = "."),
filter = filter,
rm_id = paste(ident, "Relaationpoistot", sep = "."),
rm_ind = "RelaatioID"
)
}


rel <- rbind(rel1, rel2)
'''Merkitsee jakeen epäkelvoksi, jolloin se jätetään näyttämättä kaikissa tämän sivun hakukoneissa.'''
 
<rcode label="Poista jae" name="jakeenpoisto" embed=1 variables="
if (!any(original_version %in% rel$Versio)) stop("Annetuilla versiolla ei löytynyt relaatioita.")
name:sivu|description:Poistettavan jakeen sivu|type:selection|options:
 
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
if (!is.null(liitsis)) rel <- rel[rel$Result %in% liitsis, ]
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
 
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
if (nrow(rel) == 0) {
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
cat("Jakeelle ei löytynyt kysyttyjä relaatioita tietokannassa.\n")
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
} else {
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
jakeet <- jaehakukone(
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
ident,
'KIDE-hanke';KIDE-hanke;
sivu = unique(c(
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
as.character(rel$Sivu1),
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
as.character(rel$Sivu2)
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
)),
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
versio = version,
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
jae = unique(c(
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
as.character(rel$JaeID1),
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
as.character(rel$JaeID2)
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
))
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
)
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
if (nrow(jakeet) == 0) stop("Relaatioissa listattuja jakeita ei löytynyt!")
name:jaeid|description:Poistettavan jakeen ID (pilkulla eroteltuna useampia)|type:text|
name:version|description:Versio|type:text|default:nykyinen|
# Relaatiot
name:syy|description:Poiston syy|type:selection|options:
if (nrow(rel[!(rel$Relaatio %in% sis_opt),]) > 0) {
' ';- Valitse syy -;
jakeet <- jakeet[c("Versio", "Sivu", "JaeID", "Result")]
'Tekninen jae';Tekninen jae;
colnames(jakeet)[colnames(jakeet) == "JaeID"] <- "JaeID1"
'Jae ei liity sivun aiheeseen';Jae ei liity sivun aiheeseen;
colnames(jakeet)[colnames(jakeet) == "Sivu"] <- "Sivu1"
'Jae on häiriköintiä';Jae on häiriköintiä (käytä säästellen)|
colnames(jakeet)[colnames(jakeet) == "Result"] <- "Jae1"
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
rel <- rel[c("RelaatioID", "Versio", "Sivu1", "JaeID1", "Result", "Sivu2", "JaeID2")]
name:pagename|type:hidden|default:'{{PAGENAME}}'
colnames(rel)[colnames(rel) == "Result"] <- "Relaatio"
">
out <- join(
library(OpasnetUtils)
rel[(!(rel$Relaatio %in% sis_opt)) & rel$Versio %in% original_version,],
 
jakeet,
jaeid <- strsplit(jaeid, ",", fixed = TRUE)[[1]]
match = "first" # versio - sivu - jaeid -> yksi yhteen
jaeid <- gsub(" ", "", jaeid)
)
 
if (sum(nchar(jaeid)) == 0) stop("Anna jakeen ID")
colnames(jakeet)[colnames(jakeet) == "JaeID1"] <- "JaeID2"
 
colnames(jakeet)[colnames(jakeet) == "Sivu1"] <- "Sivu2"
if (tolower(version) == "nykyinen") {
colnames(jakeet)[colnames(jakeet) == "Jae1"] <- "Jae2"
objects.latest("Op_fi4325", "apufunktiot")
out <- join(out, jakeet, match = "first")
version <- get_current_version(ident)
if(details) {
oprint(
out[c("Versio", "RelaatioID", "Sivu1", "JaeID1", "Jae1", "Relaatio", "Sivu2", "JaeID2", "Jae2")],
include.rownames = FALSE,
caption = "Relaatiot",
caption.placement = "top",
show_all = TRUE
)
} else {
} else {
version <- as.numeric(version)
temp <- out[c("Versio", "RelaatioID", "Sivu1", "JaeID1", "Jae1", "Relaatio", "Sivu2", "JaeID2", "Jae2")]
}
temp <- data.frame(
 
Jae1 = paste(temp$Jae1, " (", temp$Sivu1, ")", sep = ""),
out <- data.frame(
Relaatio = temp$Relaatio,
Versio = version,
Jae2 = paste(temp$Jae2, " (", temp$Sivu2, ")", sep = "")
Sivu = sivu,  
Aika = date(),  
Käyttäjä = wiki_username,
Syy = syy,  
Result = as.character(jaeid)
)
 
opbase.upload(
out,  
who = wiki_username,  
name = pagename,
subset = "Jakeenpoistot",
act_type = "append",  
language = "fin"
)
)
oprint(temp,
</rcode>
include.rownames = FALSE,
 
caption = "Relaatiot",
 
caption.placement = "top",
=== Avainsanat ===
show_all = TRUE
 
)
==== Avainsanahakukone ====
}
 
} else {
'''Hakee jaekohtaisia avainsanoja. Näyttää datan sellaisena kuin se on tietokannassa.'''
cat("Ei relaatioita!\n")
<rcode label="Näytä avainsanat" name="avainsanat_display" embed=1 variables="
}
name:sivu|description:Sivu jonka avainsanoja haetaan|type:selection|options:
NULL;Kaikki;
# Sisällytykset
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
if (nrow(rel[(rel$Relaatio %in% sis_opt),]) > 0) {
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
colnames(jakeet)[colnames(jakeet) %in% c("JaeID","JaeID2")] <- "JaeID1"
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
colnames(jakeet)[colnames(jakeet) %in% c("Sivu", "Sivu2")] <- "Sivu1"
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
colnames(jakeet)[colnames(jakeet) %in% c("Result", "Jae2")] <- "Jae1"
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
colnames(rel)[colnames(rel) == "Relaatio"] <- "Sisällytys"
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
out <- join(
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
rel[rel$Sisällytys %in% sis_opt & rel$Versio %in% version[-length(version)],],
'KIDE-hanke';KIDE-hanke;
jakeet,
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
match = "first" # versio - sivu - jaeid -> yksi yhteen
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
)
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
colnames(jakeet)[colnames(jakeet) == "JaeID1"] <- "JaeID2"
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
colnames(jakeet)[colnames(jakeet) == "Sivu1"] <- "Sivu2"
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
colnames(jakeet)[colnames(jakeet) == "Jae1"] <- "Jae2"
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
jakeet$Versio <- as.numeric(as.character(jakeet$Versio)) - 1
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
out <- join(out, jakeet, match = "first")
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
oprint(
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
out[c("Versio", "RelaatioID", "Sivu1", "JaeID1", "Jae1", "Sisällytys", "Sivu2", "JaeID2", "Jae2")],
name:version|description:Versio|type:text|default:nykyinen|
include.rownames = FALSE,
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
caption = "Sisällytys (uudempaan versioon)",
">
caption.placement = "top",
library(OpasnetUtils)
show_all = TRUE
library(plyr)
)
objects.latest("Op_fi4325", "apufunktiot")
} else {
 
cat("Ei sisällytyksiä!\n")
# Erottelu pilkuilla ja välilyöntien poisto
}
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
if (tolower(jaeid == "hae kaikki")) {
jaeid <- NULL
} else {
jaeid <- gsub("^\\s*|\\s*$", "", strsplit(jaeid, ",")[[1]])
}
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])
a <- tolower(version) == "nykyinen"
if (any(a)) {
version <- version[!a]
version <- c(version, get_current_version(ident))
}
}
</rcode>
version <- as.numeric(version)


=== Avainsana- ja relaatiotietojen analyysi ===
filter <- list()
filter$Sivu <- sivu
filter$Versio <- version
filter$JaeID <- jaeid


'''Hae jakeita annetuilla kriteereillä ja vertaile avainsanojen ja relaatioiden lukumääriä. Halutessasi voit myös listata jaeosumat. Vapaakenttiin voi syöttää useita arvoja erottelemalla ne pilkuilla.'''
out <- try_dl_rm(
paste(ident, "Avainsanat", sep = "."),
filter = filter,
rm_id = paste(ident, "Avainsananpoistot", sep = "."),
rm_ind = "AvainsanaID"
)
 
if (nrow(out) > 0) {
oprint(out, include.rownames = FALSE)
} else {
cat("Avainsanoja ei löytynyt!\n")
}
 
</rcode>
 
==== Avainsanoitus ====


Käytetyt avainsanat:
'''Lisää annetut avainsanat tietokantaan. Avainanoja voidaan lisätä ruksaamalla annetusta listasta (vain yleisimmät) ja syöttämällä vapaakenttään pilkulla eroteltuna.'''
{{piilotettu|
<rcode label="Lisää avainsana" name="avainsananlisays" embed=1 variables="
3D-tulostus                  Aikataulut                  Ajoneuvokanta                Alueellisuus               
name:sivu|description:Minkä sivun jakeelle haluat lisätä avainsanoja?|type:selection|options:
alustus                      Ammattiryhmät                Arvo                        Asutus                     
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
Aurinko                      Automatisaatio              Avoimuus                    Big Data                   
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
Biopolttoaine                Dataliikenne                Digitalisoituminen          Eettisyys                 
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
eIDAS                        Elintaso                    Energia                      Epäselvä luokka           
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
Eriarvoisuus                Erityisryhmät                Esineiden internet          Globaalius                 
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
Globaaluis                  Henkilökortti                Henkilötiedot                Huutokauppa               
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
Hybridi                      Hybridi-TV                  Hyvinvointi                  Hyvinvointiyhteiskunta     
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
Häiriöt                      Ilmasto                      Infrastruktuuri              Innovatiivisus             
'KIDE-hanke';KIDE-hanke;
Innovatiivisuus              Internet                    Investoinnit                Joukkoliikenne             
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
Joustavuus                  Julkinen valta              Kaivosteollisuus            Kansainvälisyys           
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
Kasvihuonekaasut            Kaupallisuus                Kaupungit                    Kehitys                   
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
Kestävyys                    Kevyen liikenteen väylät    Kevytliikenne                Kiinteistöt               
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
Kilpailu                    Kilpailukyky                Konesalit                    Konkreettisuus             
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
Kotimaisuus                  Koulutus                    Kunnat                      Kustannustehokkuus         
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
Kuuluvuus                    Kävely                      Laajakaista                  Lainsäädäntö               
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
Laiton tarjonta              Langattomuus                Lappi                        Lentoliikenne             
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
Liikenne                    Liikenneverkostot            Liikkumistili                Linja-autot               
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
Logistiikka                  Luonnonsuojelu              Lämmitys                    Maakaasu                   
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
Maatalous                    Mainonta                    Markkinat                    Massavalvonta             
name:version|description:Mikä on jakeen versio?|type:text|default:nykyinen|
Meriliikenne                Metadata                    Mobiiliverkko                Mopot                     
name:jae|description:Mikä on jakeen ID?|type:text|
Nopeus                      Ohjaus                      Ohjelmistot                  Ohjelmistotoimittaja       
name:yl_avainsanat|description:Valitse alla olevasta listasta yleisiä avainsanoja.|type:checkbox|options:
Oikeusturva                  Omavaraisuus                Operaattori                  Osaaminen                 
'Päätös';A Päätös (jae sisältää päätös- tai toimintaehdotuksen);
Ostovoima                    Palaute                      Palvelut                    Palvelutaso               
'Vaikutus';B Vaikutus (jae kuvaa ilmiötä tai vaikutusta);
Peruskunto                  Pilvipalvelut                Polttoaine                  Posti                     
'Arvo';C Arvo (jakeessa on arvoarvostelma tai kuvaa asian merkitystä);
Puelueettomuus              Pysäköinti                  Pyöräily                    Päivitys                   
'Data';D Data (sisältää numeroarvoja, tekstidataa tai viitteen edellisiin);
Pääkaupunkiseutu            Päästöt                      Päätöksenteko                Päätös                    
'Huomio';E Huomio (jae on sisällöltään huomioitava myöhemmin sen merkityksellisyydestä tai epäselvyydestä johtuen);
Raha                        Rahoitus                    Rahtliikenne                Rajapinnat                 
'Päätavoite'; H Päätavoite;
Rakennemuutos                Rakentaminen                Raskas liikenne              Rautatiet                 
'Tavoite';F Tavoite;
Riippuvuus                  Rikokset                    Robotisaatio                Ruuhkamaksu               
'Toimenpide';G Toimenpide|
Ruuhkautuminen              Saatavuus                    Sateliittipaikannus          Sovellukset               
name:avainsanat|description:Laita halutessasi yllä listaamattomattomia avainsanoja tähän pilkulla eroteltuna.|type:text|
Strategia                    Suunnittelu                  Sähkö                        Sähköauto                 
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
Sääntely                    Säästöt                      Talous                      Talouskasvu               
name:pagename|type:hidden|default:'{{PAGENAME}}'
Tarpeet                      Tasa-arvo                    Tasapuolisuus                Tasavertaisuus             
">
Tavaraliikenne              Tehokkuus                    Tekijänoikeus                Tekniikkaneutraalius       
avainsanat <- strsplit(avainsanat, ",", fixed = TRUE)[[1]]
Tekninen tuki                Teknologia                  Teknologianeutraalius        Teollisuus                 
avainsanat <- gsub("^\\s*|\\s*$", "", avainsanat)
Terveydenhuolto              Terveys                      testi                        Tiedon avoimuus           
avainsanat <- avainsanat[nchar(avainsanat) > 0]
Tiedon hallinnointi          Tiedon hallinta              Tiedon hyödyntäminen        Tieliikenne               
avainsanat <- c(yl_avainsanat, avainsanat)
Tietoliikenne                Tietoturva                  Toimilupa                    Toiminta                   
if (length(avainsanat) == 0) stop("Yhtään avainsanaa ei annettu!")
Toimintavarmuus              Toimivuus                    Tuki                        Turvallisuus               
Turvaverkko                  Tutkimus                    Tuuli                        TV                         
Työllisyys                  Työn tekemiseen liittyvä    Ulkomaat                    Uudistus                   
Vaihtoehtoiset polttoaineet  Vaikuttaminen                Vaikutus                    Vakuutus                   
Valinnanvapaus              Valtio                      Varmenne                    Varmuus                   
Vastuu                      Verkostoituminen            Verotus                      Vesiliikenne               
Vesiliikenne, Tasavertaisuus Viestintäverkot              Viranomaiset                Yhteensopivuus             
Yhteiskunta                  Yhteiskuntamurros            Yhteistyö                    Yhteysnopeus               
Yksityisautoilu              Yksityisyydensuoja          YLE                          Yleispalvelu               
Yleisradio                  Ympäristö                    Yritykset                    Öljy                       
}}


<rcode label="Näytä tilastoja/jakeita" name="jae_stats" embed=1 graphics=1 variables="
library(OpasnetUtils)
name:sivu|description:Minkä sivun jakeita haluat tarkastella?|type:selection|options:
objects.latest("Op_fi4325", "apufunktiot")
NULL;Kaikki;
 
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
if (tolower(version) == "nykyinen") {
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
version <- get_current_version(ident)
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
} else {
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
version <- as.numeric(version)
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
}
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
 
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
dat <- data.frame(
'KIDE-hanke';KIDE-hanke;
AvainsanaID = NA,
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
Versio = version,
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
Aika = date(),
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
Käyttäjä = wiki_username,
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
Sivu = sivu,
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
JaeID = as.character(jae),
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
Result = avainsanat
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
)
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
 
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
ident.subset <- paste(ident, "Avainsanat", sep = ".")
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
name:avainsanat|description:Hae jakeita joilla on ainakin yksi seuraavista avainsanoista|type:text|
name:avainsanat_all|description:Hae jakeita joilla on kaikki seuraavat avainsanat|type:text|
name:jaelista|description:Haluatko nähdä kaikki löydetyt jakeet?|type:selection|options:FALSE;En;TRUE;Kyllä|default:FALSE|
name:version|description:Versio|type:text|default:nykyinen|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
">
library(OpasnetUtils)
library(plyr)
objects.latest("Op_fi4325", "apufunktiot")
library(ggplot2)


filter <- list()
filter <- list()
if (nchar(gsub(" ", "", avainsanat)) > 0) {
filter$Versio <- version
avainsanat <- strsplit(avainsanat, ",")[[1]]
 
avainsanat <- gsub("^\\s*|\\s*$", "", avainsanat) 
upload_with_autoid(
} else {
dat,
avainsanat <- NULL
ident.subset,
}
id_name = "AvainsanaID",
if (nchar(gsub(" ", "", avainsanat_all)) > 0) {
pagename = pagename,
avainsanat_all <- strsplit(avainsanat_all, ",")[[1]]
filter = filter
avainsanat_all <- gsub("^\\s*|\\s*$", "", avainsanat_all)
)
#filter$Avainsana <- avainsanat_all
} else {
avainsanat_all <- NULL
}
filter$Sivu <- sivu
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])


a <- tolower(version) == "nykyinen"
cat("Avainsanojen lisääminen onnistui.\n")
if (any(a)) {
</rcode>
version <- version[!a]
version <- c(version, get_current_version(ident))
}
version <- as.numeric(version)
filter$Versio <- version


if (length(filter) == 0) filter <- NULL
==== Avainsanan poisto ====


tags <- try_dl_rm(
'''Merkitsee avainsanan epäkelvoksi, jolloin tämän sivun hakukoneet eivät näytä sitä.'''
paste(ident, "Avainsanat", sep = "."),
<rcode name="avainsananpoisto" embed=1 label="Poista avainsana" showcode=0 variables="
filter = filter,
name:avid|description:Poistettavan avainsanan ID (pilkulla eroteltuna useampia)|type:text|
rm_id = paste(ident, "Avainsananpoistot", sep = "."),
name:version|description:Mikä versio on kyseessä?|type:text|default:nykyinen|
rm_ind = "AvainsanaID"
name:syy|description:Poiston syy|type:selection|options:
)
' ';- Valitse syy -;
'Avainsana ei päde uudessa versiossa';Avainsana ei päde uudessa versiossa;
'Virheellinen avainsana';Virheellinen avainsana|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
name:pagename|type:hidden|default:'{{PAGENAME}}'
">
library(OpasnetUtils)


jaeid <- NULL
avid <- strsplit(avid, ",", fixed = TRUE)[[1]]
avid <- gsub(" ", "", avid)


if (!is.null(avainsanat)|!is.null(avainsanat_all)) {
if (tolower(version) == "nykyinen") {
tags <- tags[tags$Result %in% c(avainsanat, avainsanat_all), ]
objects.latest("Op_fi4325", "apufunktiot")
jaeid <- unique(as.character(tags$JaeID))
version <- get_current_version(ident)
} else {
version <- as.numeric(version)
}
}


if(!is.null(avainsanat_all)) {
dat <- data.frame(
temp <- list()
Versio = version,
for (i in 1:nrow(jaeid)) {
Aika = date(),
temp[[i]] <- avainsanat_all %in% tags$Result[tags$JaeID == jaeid[i]]
Käyttäjä = wiki_username,
}
Syy = syy,  
temp <- lapply(temp, all)
Result = avid
jaeid <- jaeid[temp]
)
tags <- tags[tags$JaeID %in% jaeid,]
}


if (nrow(tags) == 0) {
opbase.upload(
cat("Avainsanoja ei löytynyt.\n")
dat,
}
ident = ident,
name = pagename,
subset = "Avainsananpoistot",
act_type = "append",
language = "fin",
who = wiki_username
)
 
cat("Avainsana poistettiin onnistuneesti.\n")
</rcode>


if (is.null(filter)) {
filter2 <- list()
} else {
filter2 <- filter
}


filter2$JaeID <- jaeid
===Relaatiot===


if (length(filter2) == 0) filter2 <- NULL
==== Relaatiohakukone ====


if (jaelista) {
'''Hakee relaatioita joissa mahdollisesti annetut jakeet esiintyvät. Näyttää datan sellaisena kuin se on tietokannassa.'''
jakeet <- jaehakukone(
<rcode label="Näytä relaatiot" name="relaatiot_display" embed=1 variables="
ident,
name:sivu|description:Sivu jonka relaatioita haetaan|type:selection|options:
sivu = filter2$Sivu, # *list$non-existent returns NULL
NULL;Kaikki;
versio = filter2$Versio,
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
jae = filter2$JaeID
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
)
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
if (nrow(jakeet) == 0) {
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
cat("Avainsanoissa listattuja jakeita ei löytynyt.\n")
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
} else {
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
colnames(jakeet)[colnames(jakeet) == "Result"] <- "Sisältö"
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
tagged <- NULL
'KIDE-hanke';KIDE-hanke;
if (nrow(tags) > 0) {
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
#tagged <- join(
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
# jakeet[c("Versio", "Sivu", "Aihe", "JaeID")],
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
# tags[c("Versio", "Sivu", "JaeID", "Result")]
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
#)
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
#colnames(tagged)[colnames(tagged) == "Result"] <- "Avainsana"
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
tagged <- tapply(tags$Result, tags[c("Versio", "Sivu", "JaeID")], paste, collapse = ", ")
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
tagged <- as.data.frame(as.table(tagged))
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
colnames(tagged)[colnames(tagged) == "Freq"] <- "Avainsanat"
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
tagged <- join(
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
jakeet[c("Versio", "Sivu", "JaeID", "Sisältö")],
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
tagged[c("Versio", "Sivu", "JaeID", "Avainsanat")],
name:version|description:Versio|type:text|default:nykyinen|
type = "inner",
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
match = "first"
">
)
library(OpasnetUtils)
oprint(
library(plyr)
tagged[c("Versio", "Sivu", "JaeID", "Sisältö", "Avainsanat")],
objects.latest("Op_fi4325", "apufunktiot")
caption = "Jakeet",
caption.placement = "top",
include.rownames = FALSE,
digits = rep(0, 6)
)
}
}
}


if (nrow(tags) > 0) {
# Erottelu pilkuilla ja välilyöntien poisto
tags_out <- ddply(tags, "Result", nrow)
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
colnames(tags_out) <- c("Avainsana", "Lukumäärä")
if (tolower(jaeid == "hae kaikki")) {
tags_out <- tags_out[order(tags_out$Lukumäärä, decreasing = TRUE),]
jaeid <- NULL
oprint(
} else {
tags_out,
jaeid <- gsub("^\\s*|\\s*$", "", strsplit(jaeid, ",")[[1]])
caption = "Avainsanojen lukumäärät",  
}
caption.placement = "top",
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])
include.rownames = FALSE,
a <- tolower(version) == "nykyinen"
digits = c(0, 0, 0)
if (any(a)) {
)
version <- version[!a]
ggplot(tags_out, aes(x = Avainsana, y = Lukumäärä, fill = Avainsana)) +
version <- c(version, get_current_version(ident))
geom_bar(stat = "identity") +
theme_grey(base_size = 24) +
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
ggtitle("Avainsanojen frekvenssit")
}
}
version <- as.numeric(version)


# Add previous and next versions to check for inclusion from previous and into next
filter <- list()
original_version <- version
filter$Sivu1 <- sivu
if (!(1 %in% version)) {
filter$Versio <- version
prev <- TRUE
filter$JaeID1 <- jaeid
version <- c(min(version, na.rm = TRUE) - 1, version)
}
version <- c(version, max(version, na.rm = TRUE) + 1)
 
filter3 <- list()
filter3$Sivu1 <- sivu
filter3$Versio <- version
filter3$JaeID1 <- jaeid


rel1 <- try_dl_rm(
rel1 <- try_dl_rm(
paste(ident, "Relaatiot", sep = "."),  
paste(ident, "Relaatiot", sep = "."),  
filter = filter3,  
filter = filter,  
rm_id = paste(ident, "Relaationpoistot", sep = "."),
rm_id = paste(ident, "Relaationpoistot", sep = "."),
rm_ind = "RelaatioID"
rm_ind = "RelaatioID"
Rivi 1 023: Rivi 985:
rel2 <- data.frame()
rel2 <- data.frame()
} else {
} else {
filter3$JaeID1 <- NULL
filter$JaeID1 <- NULL
filter3$Sivu1 <- NULL
filter$Sivu1 <- NULL
filter3$JaeID2 <- jaeid
filter$JaeID2 <- jaeid
filter3$Sivu2 <- sivu
filter$Sivu2 <- sivu
rel2 <- try_dl_rm(
rel2 <- try_dl_rm(
paste(ident, "Relaatiot", sep = "."),  
paste(ident, "Relaatiot", sep = "."),  
filter = filter3,  
filter = filter,  
rm_id = paste(ident, "Relaationpoistot", sep = "."),
rm_id = paste(ident, "Relaationpoistot", sep = "."),
rm_ind = "RelaatioID"
rm_ind = "RelaatioID"
Rivi 1 036: Rivi 998:
}
}


rel <- rbind(rel1, rel2)
out <- rbind(rel1, rel2)


if (!any(original_version %in% rel$Versio)) stop("Annetuilla versiolla ei löytynyt relaatioita.")
if (nrow(out) > 0) {
oprint(
out,
include.rownames = FALSE,
caption = "Relaatiot",
caption.placement = "top"
)
} else {
cat("Relaatioita ei löytynyt!\n")
}
 
</rcode>


if (nrow(rel) == 0) {
==== Relaation lisääminen ====
cat("Jakeelle ei löytynyt kysyttyjä relaatioita tietokannassa.\n")
 
} else {
'''Lisää uuden relaation tietokantaan. Samantyyppisiä relaatioita voi kerralla lisätä useita, kun erottelee JaeID:t pilkuilla: relaatiot voi tehdä kaikki yhteen, yksi kaikkiin tai yksi yhteen. '''
related <- rel[
<rcode label="Lisää relaatio" name="relaatio" embed=1 variables="
rel$Result %in% c(
name:sivu1|description:Mikä on lähtöjakeen sivu?|type:selection|options:
"tukee tai on linjassa",
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
"vastustaa tai on ristiriidassa",
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
"on neutraali suhteessa",
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
"liittyy",
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
"edellyttää",
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
"sisältää",
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
"vaikuttaa",
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
"vaikuttaa taloudellisesti"
'KIDE-hanke';KIDE-hanke;
), ]
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
related$Result <- as.character(related$Result)
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
affected <- rel[
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
rel$Result %in% c(
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
"ehdotus ei ole antanut aihetta muutoksiin",
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
"ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun",
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
"ehdotus huomioitu ja liittyvää painotusta muutettu",
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
"ehdotus huomioitu ja uusi kohta lisätty"
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
), ]
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
affected$Result <- as.character(affected$Result)
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
affected$Result[affected$Result == "ehdotus ei ole antanut aihetta muutoksiin"] <- "Ei aihetta muutoksiin"
name:jaeid1|description:Mikä on lähtöjakeen ID?|type:text|
affected$Result[affected$Result == "ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun"] <- "Sisältyy valmiiksi"
name:version|description:Mikä on lähtöjakeen versio?|type:text|default:nykyinen|
affected$Result[affected$Result == "ehdotus huomioitu ja liittyvää painotusta muutettu"] <- "Huomioitu painotuksella"
name:sivu2|description:Mikä on kohdejakeen sivu?|type:selection|options:
affected$Result[affected$Result == "ehdotus huomioitu ja uusi kohta lisätty"] <- "Huomioitu lisäyksellä"
'Sama';Sama kuin lähtöjakeella;
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
related_out <- ddply(related, "Result", nrow)
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
colnames(related_out) <- c("Relaatio", "Lukumäärä")
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
affected_out <- ddply(affected, "Result", nrow)
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
colnames(affected_out) <- c("Sisällytys", "Lukumäärä")
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
}
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
 
'KIDE-hanke';KIDE-hanke;
if (nrow(related_out > 0)) {
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
ggplot(related_out, aes(x = Relaatio, y = Lukumäärä, fill = Relaatio)) +
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
geom_bar(stat = "identity") +
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
theme_grey(base_size = 24) +
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
ggtitle("Relaatioiden frekvenssit")# + facet_wrap(~Sivu)
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
}
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
 
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
if (nrow(affected_out > 0)) {
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
ggplot(affected_out, aes(x = Sisällytys, y = Lukumäärä, fill = Sisällytys)) +
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
geom_bar(stat = "identity") +
name:jaeid2|description:Mikä on kohdejakeen ID?|type:text|
theme_grey(base_size = 24) +
name:relaatio|description:'''Kuinka lähtöjae liittyy kohdejakeeseen?'''|type:selection|options:
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
' ';- Valitse -;
ggtitle("Sisällytyksen frekvenssit")# + facet_wrap(~Sivu)
'tukee tai on linjassa';tukee tai on linjassa;
}
'vastustaa tai on ristiriidassa';vastustaa tai on ristiriidassa;
</rcode>
'on neutraali suhteessa';on neutraali suhteessa;
 
'liittyy';liittyy;
==Työkalut==
'edellyttää';edellyttää;
Aineiston työstämiseen tarkoittuja koodeja.
'sisältää';sisältää;
'vaikuttaa';vaikuttaa;
'vaikuttaa taloudellisesti';vaikuttaa taloudellisesti|
name:lisarelaatio|description:VAPAAEHTOINEN Voit antaa oman jakeiden välisen relaation vapaakenttään.|type:text|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
name:pagename|type:hidden|default:'{{PAGENAME}}'
">
relaatio <- ifelse(lisarelaatio == '', relaatio, lisarelaatio)
if (nchar(gsub(" ", "", relaatio)) == 0) stop("Relaatiota ei annettu!")


=== Jakeet ===
library(OpasnetUtils)
objects.latest("Op_fi4325", "apufunktiot")


==== Jaehakukone ====
jaeid1 <- strsplit(jaeid1, ",", fixed = TRUE)[[1]]
jaeid1 <- gsub(" ", "", jaeid1)
jaeid2 <- strsplit(jaeid2, ",", fixed = TRUE)[[1]]
jaeid2 <- gsub(" ", "", jaeid2)


'''Hakee jakeita annetuilla kriteereillä. Näyttää myös tekniset sarakkeet. Vapaakenttiin voi laittaa useita arvoja erottelemalla ne pilkuilla.'''
if (tolower(version) == "nykyinen") {
<rcode label="Näytä jakeet" name="jakeet" embed=0 variables="
version <- get_current_version(ident)
name:sivu|description:Sivu jolta jakeita haetaan|type:selection|options:
} else {
NULL;Kaikilta;
version <- as.numeric(version)
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
}
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
 
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
if(sivu2 == "Sama") sivu2 <- sivu1
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
 
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
ident.subset <- paste(ident, "Relaatiot", sep = ".")
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
 
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
filter <- list()
'KIDE-hanke';KIDE-hanke;
filter$Versio <- version
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
 
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
dat <- data.frame(
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
RelaatioID = NA,
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
Versio = version,
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
Aika = date(),
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
Käyttäjä = wiki_username,
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
Sivu1 = sivu1,
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
JaeID1 = jaeid1,
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
Sivu2 = sivu2,
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
JaeID2 = jaeid2,
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
Result = relaatio
name:version|description:Versio|type:text|default:nykyinen|
)
name:tuotos|description:Missä muodossa tulostetaan?|type:selection|options:'Numeroitu teksti';Numeroitu teksti;'Taulukko';Taulukko|default:'Numeroitu teksti'|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
">
library(OpasnetUtils)
library(plyr)
objects.latest("Op_fi4325", "apufunktiot")


# Erottelu pilkuilla ja välilyöntien poisto
upload_with_autoid(
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
dat,
if (tolower(jaeid == "hae kaikki")) {
ident.subset,
jaeid <- NULL
id_name = "RelaatioID",
} else {
pagename = pagename,
jaeid <- gsub("^\\s*|\\s*$", "", strsplit(jaeid, ",")[[1]])
filter = filter
}
)
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])


a <- tolower(version) == "nykyinen"
cat("Relaation lisääminen onnistui.\n")
if (any(a)) {
version <- version[!a]
version <- c(version, get_current_version(ident))
}
version <- as.numeric(version)


out <- jaehakukone(ident, sivu = sivu, versio = version, jae = jaeid)
</rcode>


if (nrow(out) > 0) {
==== Relaation poisto ====
if(tuotos == "Taulukko") {
oprint(out, include.rownames = FALSE)
} else {
pver <- "Tyhjä tieto"
psiv <- "Tyhjä tieto"
paih <- "Tyhjä tieto"


outs <- ""
'''Merkitsee relaation/sisällytyksen epäkelvoksi, jolloin tämän sivun hakukoneet eivät näytä sitä.'''
for(i in 1:nrow(out)) {
<rcode name="relaationpoisto" embed=1 label="Poista relaatio" showcode=0 variables="
ver <- as.character(out$Versio[i])
name:relid|description:Poistettavan relaation ID (pilkulla eroteltuna useampia)|type:text|
siv <- as.character(out$Sivu[i])
name:version|description:Mikä versio on kyseessä?|type:text|default:nykyinen|
aih <- as.character(out$Aihe[i])
name:syy|description:Poiston syy|type:selection|options:
' ';- Valitse syy -;
if(!is.na(pver != ver)) if(pver != ver) outs <- c(outs, paste("Versio:", ver))
'Relaatio ei päde uudessa versiossa';Relaatio ei päde uudessa versiossa;
if(!is.na(psiv != siv)) if(psiv != siv) outs <- c(outs, paste("Sivu:", siv))
'Virheellinen relaatio';Virheellinen relaatio|
if(!is.na(paih != aih)) if(paih != aih) outs <- c(outs, paste("Aihe:", aih))
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
name:pagename|type:hidden|default:'{{PAGENAME}}'
outs <- c(outs, paste(as.character(out$JaeID[i]), as.character(out$Result[i])))
">
library(OpasnetUtils)
pver <- ver
 
psiv <- siv
relid <- strsplit(relid, ",", fixed = TRUE)[[1]]
paih <- aih
relid <- gsub(" ", "", relid)
}
 
outs <- data.frame(Jakeet = outs, T = "")
if (tolower(version) == "nykyinen") {
oprint(outs, include.rownames = FALSE, show_all = TRUE)
objects.latest("Op_fi4325", "apufunktiot")
}
version <- get_current_version(ident)
} else {
} else {
cat("Jakeita ei löytynyt!\n")
version <- as.numeric(version)
}
}
</rcode>


==== Jakeenlisäyskone ====
dat <- data.frame(
Versio = version,
Aika = date(),
Käyttäjä = wiki_username,
Syy = syy,
Result = relid
)


'''Lisää tietokantaan vapaasti määriteltävän jakeen. Lisätyt jakeet näkyvät tämän sivun hakukoneissa. Niiden JaeID:llä on "L"-etuliite.'''
opbase.upload(
<rcode label="Lisää jae" name="jakeenlisays" embed=1 variables="
dat,
name:sivu|description:Sivu jolle jae lisätään|type:selection|options:
ident = ident,
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
name = pagename,
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
subset = "Relaationpoistot",
act_type = "append",
language = "fin",
who = wiki_username
)
 
cat("Relaatio poistettiin onnistuneesti.\n")
</rcode>
 
 
 
== Rikastetun aineiston analysointi - Yhdistelmähakukoneet ==
 
=== Jaekohtainen avainsanalistaus ===
 
'''Hakee jakeita ja näyttää kaikki niihin liittyvät avainsanat'''
<rcode label="Hae" name="avainsanat_disp" embed=1 variables="
name:sivu|description:Sivu jolta jakeita haetaan|type:selection|options:
NULL;Kaikilta;
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
Rivi 1 203: Rivi 1 195:
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
name:version|description:Versio|type:text|default:nykyinen|
name:version|description:Versio|type:text|default:nykyinen|
name:sisalto|description:Jakeen sisältö|type:textbox|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
name:pagename|type:hidden|default:'{{PAGENAME}}'
">
">
library(OpasnetUtils)
library(OpasnetUtils)
library(plyr)
objects.latest("Op_fi4325", "apufunktiot")
objects.latest("Op_fi4325", "apufunktiot")


if (tolower(version) == "nykyinen") {
# Erottelu pilkuilla ja välilyöntien poisto
version <- get_current_version(ident)
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
if (tolower(jaeid == "hae kaikki")) {
jaeid <- NULL
} else {
} else {
version <- as.numeric(version)
jaeid <- gsub("^\\s*|\\s*$", "", strsplit(jaeid, ",")[[1]])
}
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])
 
a <- tolower(version) == "nykyinen"
if (any(a)) {
version <- version[!a]
version <- c(version, get_current_version(ident))
}
}
version <- as.numeric(version)


out <- data.frame(  
out <- jaehakukone(ident, sivu = sivu, versio = version, jae = jaeid)
Versio = version,
Sivu = sivu,
Aika = date(),
Käyttäjä = wiki_username,
JaeID = NA,
Result = sisalto
)


ident.subset <- paste(ident, "Jakeenlisaykset", sep = ".")
if (nrow(out) == 0) {
stop("Jakeita ei löytynyt!")
}


filter <- list()
filter <- list()
filter$Sivu <- sivu
filter$Versio <- version
filter$Versio <- version
filter$Sivu <- sivu
filter$JaeID <- jaeid


upload_with_autoid(
tags <- try_dl_rm(
out,
paste(ident, "Avainsanat", sep = "."),  
ident.subset,
filter = filter,  
id_name = "JaeID",
rm_id = paste(ident, "Avainsananpoistot", sep = "."),
pagename = pagename,
rm_ind = "AvainsanaID"
prefix = "L",
filter = filter
)
)
</rcode>


==== Jakeenpoistokone ====
if (nrow(tags) == 0) {
cat("Avainsanoja ei löytynyt!\n")
} else {
# Yhdistetään kunkin jakeen avainsanat yhdelle riville
tags <- ddply(
tags,
c("Versio", "Sivu", "JaeID"),
function(x) {a <- x[1,];a$Avainsanat <- paste(x$Result, collapse = ", ");return(a)}
)


'''Merkitsee jakeen epäkelvoksi, jolloin se jätetään näyttämättä kaikissa tämän sivun hakukoneissa.'''
out <- join(
<rcode label="Poista jae" name="jakeenpoisto" embed=1 variables="
out[c("Versio", "Sivu", "JaeID", "Result")],
name:sivu|description:Poistettavan jakeen sivu|type:selection|options:
tags[c("Versio", "Sivu", "JaeID", "Avainsanat")],
by = c("Versio", "Sivu", "JaeID"),
type = "inner",
match = "first"
)
# Jos annettiin vain yksi versio ja/tai sivu niin niitä ei tarvitse printata
filter_ind <- NULL
if (length(version) != 1) filter_ind <- c(filter_ind, "Versio")
if (length(sivu) != 1) filter_ind <- c(filter_ind, "Sivu")
filter_ind <- c(filter_ind, "JaeID")
oprint(
out[c(filter_ind, "Result", "Avainsanat")],
include.rownames = FALSE,
show_all = TRUE
)
}
</rcode>
 
=== Jae-relaatio-jae listaus ===
'''Hakee jakeita ja niihin liittyviä toisia jakeita listaten myös relaation tyypin'''
<rcode label="Hae" name="relaatiot_disp" embed=1 variables="
name:sivu|description:Sivu jolta relaatioita haetaan|type:selection|options:
NULL;Kaikilta;
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
Rivi 1 265: Rivi 1 292:
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
name:jaeid|description:Poistettavan jakeen ID (pilkulla eroteltuna useampia)|type:text|
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
name:liitsis|description:Liittymistyyppi (tyhjä = kaikki)|type:checkbox|options:
'tukee tai on linjassa';tukee tai on linjassa;
'vastustaa tai on ristiriidassa';vastustaa tai on ristiriidassa;
'on neutraali suhteessa';on neutraali suhteessa;
'liittyy';liittyy;
'edellyttää';edellyttää;
'sisältää';sisältää;
'vaikuttaa';vaikuttaa;
'vaikuttaa taloudellisesti';vaikuttaa taloudellisesti|
name:version|description:Versio|type:text|default:nykyinen|
name:version|description:Versio|type:text|default:nykyinen|
name:syy|description:Poiston syy|type:selection|options:
name:details|description:Näytetäänkö tekniset yksityiskohdat?|type:selection|options:FALSE;Ei, vain jakeiden sisältö;TRUE;Kyllä, myös jakeiden numerot|default:FALSE|
' ';- Valitse syy -;
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
'Tekninen jae';Tekninen jae;
'Jae ei liity sivun aiheeseen';Jae ei liity sivun aiheeseen;
'Jae on häiriköintiä';Jae on häiriköintiä (käytä säästellen)|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
name:pagename|type:hidden|default:'{{PAGENAME}}'
">
">
library(OpasnetUtils)
# Eri sisältymistyypit pitää määritellä niin että ne voidaan käsitellä erillään muista relaatioista
 
sis_opt <- c(
jaeid <- strsplit(jaeid, ",", fixed = TRUE)[[1]]
'ehdotus huomioitu ja liittyvää painotusta muutettu',
jaeid <- gsub(" ", "", jaeid)
'ehdotus huomioitu ja uusi kohta lisätty',
 
'ehdotus ei ole antanut aihetta muutoksiin',  
if (sum(nchar(jaeid)) == 0) stop("Anna jakeen ID")
'ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun'
)
#liit_opt <- c(
# 'tukee tai on linjassa',
# 'vastustaa tai on ristiriidassa',
# 'on neutraali suhteessa',
# 'on uusi linjaus tai painotus'
#)
library(OpasnetUtils)
library(plyr)
objects.latest("Op_fi4325", "apufunktiot")


if (tolower(version) == "nykyinen") {
# Erottelu pilkuilla ja välilyöntien poisto
objects.latest("Op_fi4325", "apufunktiot")
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
version <- get_current_version(ident)
if (tolower(jaeid == "hae kaikki")) {
jaeid <- NULL
} else {
} else {
version <- as.numeric(version)
jaeid <- gsub("^\\s*|\\s*$", "", strsplit(jaeid, ",")[[1]])
}
}
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])
a <- tolower(version) == "nykyinen"
if (any(a)) {
version <- version[!a]
version <- c(version, get_current_version(ident))
}
version <- as.numeric(version)
# Add previous and next versions to check for inclusion from previous and into next
original_version <- version
if (!(1 %in% version)) {
prev <- TRUE
version <- c(min(version, na.rm = TRUE) - 1, version)
}
version <- c(version, max(version, na.rm = TRUE) + 1)


out <- data.frame(
filter <- list()
Versio = version,
filter$Sivu1 <- sivu
Sivu = sivu,
filter$Versio <- version
Aika = date(),
filter$JaeID1 <- jaeid
Käyttäjä = wiki_username,
Syy = syy,
Result = as.character(jaeid)
)
 
opbase.upload(
out,
who = wiki_username,
name = pagename,
subset = "Jakeenpoistot",
act_type = "append",
language = "fin"
)
</rcode>


rel1 <- try_dl_rm(
paste(ident, "Relaatiot", sep = "."),
filter = filter,
rm_id = paste(ident, "Relaationpoistot", sep = "."),
rm_ind = "RelaatioID"
)
if (is.null(jaeid)) {
rel2 <- data.frame()
} else {
filter$JaeID1 <- NULL
filter$Sivu1 <- NULL
filter$JaeID2 <- jaeid
filter$Sivu2 <- sivu
rel2 <- try_dl_rm(
paste(ident, "Relaatiot", sep = "."),
filter = filter,
rm_id = paste(ident, "Relaationpoistot", sep = "."),
rm_ind = "RelaatioID"
)
}
rel <- rbind(rel1, rel2)


=== Avainsanat ===
if (!any(original_version %in% rel$Versio)) stop("Annetuilla versiolla ei löytynyt relaatioita.")


==== Avainsanahakukone ====
if (!is.null(liitsis)) rel <- rel[rel$Result %in% liitsis, ]


'''Hakee jaekohtaisia avainsanoja. Näyttää datan sellaisena kuin se on tietokannassa.'''
if (nrow(rel) == 0) {
<rcode label="Näytä avainsanat" name="avainsanat_display" embed=1 variables="
cat("Jakeelle ei löytynyt kysyttyjä relaatioita tietokannassa.\n")
name:sivu|description:Sivu jonka avainsanoja haetaan|type:selection|options:
} else {
NULL;Kaikki;
jakeet <- jaehakukone(
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
ident,
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
sivu = unique(c(
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
as.character(rel$Sivu1),
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
as.character(rel$Sivu2)
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
)),
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
versio = version,
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
jae = unique(c(
'KIDE-hanke';KIDE-hanke;
as.character(rel$JaeID1),
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
as.character(rel$JaeID2)
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
))
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
)
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
if (nrow(jakeet) == 0) stop("Relaatioissa listattuja jakeita ei löytynyt!")
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
# Relaatiot
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
if (nrow(rel[!(rel$Relaatio %in% sis_opt),]) > 0) {
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
jakeet <- jakeet[c("Versio", "Sivu", "JaeID", "Result")]
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
colnames(jakeet)[colnames(jakeet) == "JaeID"] <- "JaeID1"
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
colnames(jakeet)[colnames(jakeet) == "Sivu"] <- "Sivu1"
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
colnames(jakeet)[colnames(jakeet) == "Result"] <- "Jae1"
name:version|description:Versio|type:text|default:nykyinen|
rel <- rel[c("RelaatioID", "Versio", "Sivu1", "JaeID1", "Result", "Sivu2", "JaeID2")]
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
colnames(rel)[colnames(rel) == "Result"] <- "Relaatio"
">
out <- join(
library(OpasnetUtils)
rel[(!(rel$Relaatio %in% sis_opt)) & rel$Versio %in% original_version,],
library(plyr)
jakeet,
objects.latest("Op_fi4325", "apufunktiot")
match = "first" # versio - sivu - jaeid -> yksi yhteen
 
)
# Erottelu pilkuilla ja välilyöntien poisto
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
colnames(jakeet)[colnames(jakeet) == "JaeID1"] <- "JaeID2"
if (tolower(jaeid == "hae kaikki")) {
colnames(jakeet)[colnames(jakeet) == "Sivu1"] <- "Sivu2"
jaeid <- NULL
colnames(jakeet)[colnames(jakeet) == "Jae1"] <- "Jae2"
out <- join(out, jakeet, match = "first")
if(details) {
oprint(
out[c("Versio", "RelaatioID", "Sivu1", "JaeID1", "Jae1", "Relaatio", "Sivu2", "JaeID2", "Jae2")],
include.rownames = FALSE,
caption = "Relaatiot",
caption.placement = "top",
show_all = TRUE
)
} else {
} else {
jaeid <- gsub("^\\s*|\\s*$", "", strsplit(jaeid, ",")[[1]])
}
temp <- out[c("Versio", "RelaatioID", "Sivu1", "JaeID1", "Jae1", "Relaatio", "Sivu2", "JaeID2", "Jae2")]
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])
temp <- data.frame(
a <- tolower(version) == "nykyinen"
Jae1 = paste(temp$Jae1, " (", temp$Sivu1, ")", sep = ""),
if (any(a)) {
Relaatio = temp$Relaatio,
version <- version[!a]
Jae2 = paste(temp$Jae2, " (", temp$Sivu2, ")", sep = "")
version <- c(version, get_current_version(ident))
)
oprint(temp,
include.rownames = FALSE,
caption = "Relaatiot",
caption.placement = "top",
show_all = TRUE
)
}
}
version <- as.numeric(version)
} else {
 
cat("Ei relaatioita!\n")
filter <- list()
}
filter$Sivu <- sivu
filter$Versio <- version
# Sisällytykset
filter$JaeID <- jaeid
if (nrow(rel[(rel$Relaatio %in% sis_opt),]) > 0) {
 
colnames(jakeet)[colnames(jakeet) %in% c("JaeID","JaeID2")] <- "JaeID1"
out <- try_dl_rm(
colnames(jakeet)[colnames(jakeet) %in% c("Sivu", "Sivu2")] <- "Sivu1"
paste(ident, "Avainsanat", sep = "."),
colnames(jakeet)[colnames(jakeet) %in% c("Result", "Jae2")] <- "Jae1"
filter = filter,
colnames(rel)[colnames(rel) == "Relaatio"] <- "Sisällytys"
rm_id = paste(ident, "Avainsananpoistot", sep = "."),
out <- join(
rm_ind = "AvainsanaID"
rel[rel$Sisällytys %in% sis_opt & rel$Versio %in% version[-length(version)],],
)
jakeet,
 
match = "first" # versio - sivu - jaeid -> yksi yhteen
if (nrow(out) > 0) {
)
oprint(out, include.rownames = FALSE)
} else {
colnames(jakeet)[colnames(jakeet) == "JaeID1"] <- "JaeID2"
cat("Avainsanoja ei löytynyt!\n")
colnames(jakeet)[colnames(jakeet) == "Sivu1"] <- "Sivu2"
}
colnames(jakeet)[colnames(jakeet) == "Jae1"] <- "Jae2"
 
jakeet$Versio <- as.numeric(as.character(jakeet$Versio)) - 1
</rcode>
out <- join(out, jakeet, match = "first")
 
==== Avainsanoitus ====
oprint(
 
out[c("Versio", "RelaatioID", "Sivu1", "JaeID1", "Jae1", "Sisällytys", "Sivu2", "JaeID2", "Jae2")],
'''Lisää annetut avainsanat tietokantaan. Avainanoja voidaan lisätä ruksaamalla annetusta listasta (vain yleisimmät) ja syöttämällä vapaakenttään pilkulla eroteltuna.'''
include.rownames = FALSE,  
<rcode label="Lisää avainsana" name="avainsananlisays" embed=1 variables="
caption = "Sisällytys (uudempaan versioon)",
name:sivu|description:Minkä sivun jakeelle haluat lisätä avainsanoja?|type:selection|options:
caption.placement = "top",
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
show_all = TRUE
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
)
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
} else {
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
cat("Ei sisällytyksiä!\n")
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
}
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
}
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
</rcode>
'KIDE-hanke';KIDE-hanke;
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
name:version|description:Mikä on jakeen versio?|type:text|default:nykyinen|
name:jae|description:Mikä on jakeen ID?|type:text|
name:yl_avainsanat|description:Valitse alla olevasta listasta yleisiä avainsanoja.|type:checkbox|options:
'Päätös';A Päätös (jae sisältää päätös- tai toimintaehdotuksen);
'Vaikutus';B Vaikutus (jae kuvaa ilmiötä tai vaikutusta);
'Arvo';C Arvo (jakeessa on arvoarvostelma tai kuvaa asian merkitystä);
'Data';D Data (sisältää numeroarvoja, tekstidataa tai viitteen edellisiin);
'Huomio';E Huomio (jae on sisällöltään huomioitava myöhemmin sen merkityksellisyydestä tai epäselvyydestä johtuen);
'Tavoite';F Tavoite;
'Toimenpide';G Toimenpide|
name:avainsanat|description:Laita halutessasi yllä listaamattomattomia avainsanoja tähän pilkulla eroteltuna.|type:text|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
name:pagename|type:hidden|default:'{{PAGENAME}}'
">
avainsanat <- strsplit(avainsanat, ",", fixed = TRUE)[[1]]
avainsanat <- gsub("^\\s*|\\s*$", "", avainsanat)
avainsanat <- avainsanat[nchar(avainsanat) > 0]
avainsanat <- c(yl_avainsanat, avainsanat)
if (length(avainsanat) == 0) stop("Yhtään avainsanaa ei annettu!")


library(OpasnetUtils)
=== Avainsana- ja relaatiotietojen analyysi ===
objects.latest("Op_fi4325", "apufunktiot")


if (tolower(version) == "nykyinen") {
'''Hae jakeita annetuilla kriteereillä ja vertaile avainsanojen ja relaatioiden lukumääriä. Halutessasi voit myös listata jaeosumat. Vapaakenttiin voi syöttää useita arvoja erottelemalla ne pilkuilla.'''
version <- get_current_version(ident)
} else {
version <- as.numeric(version)
}


dat <- data.frame(
Käytetyt avainsanat:
AvainsanaID = NA,
{{piilotettu|
Versio = version,
3D-tulostus                  Aikataulut                  Ajoneuvokanta                Alueellisuus               
Aika = date(),
alustus                      Ammattiryhmät                Arvo                        Asutus                     
Käyttäjä = wiki_username,
Aurinko                      Automatisaatio              Avoimuus                    Big Data                   
Sivu = sivu,
Biopolttoaine                Dataliikenne                Digitalisoituminen          Eettisyys                 
JaeID = as.character(jae),
eIDAS                        Elintaso                    Energia                      Epäselvä luokka           
Result = avainsanat
Eriarvoisuus                Erityisryhmät                Esineiden internet          Globaalius                 
)
Globaaluis                  Henkilökortti                Henkilötiedot                Huutokauppa               
 
Hybridi                      Hybridi-TV                  Hyvinvointi                  Hyvinvointiyhteiskunta     
ident.subset <- paste(ident, "Avainsanat", sep = ".")
Häiriöt                      Ilmasto                      Infrastruktuuri              Innovatiivisus             
 
Innovatiivisuus              Internet                    Investoinnit                Joukkoliikenne             
filter <- list()
Joustavuus                  Julkinen valta              Kaivosteollisuus            Kansainvälisyys           
filter$Versio <- version
Kasvihuonekaasut            Kaupallisuus                Kaupungit                    Kehitys                   
 
Kestävyys                    Kevyen liikenteen väylät    Kevytliikenne                Kiinteistöt               
upload_with_autoid(
Kilpailu                    Kilpailukyky                Konesalit                    Konkreettisuus             
dat,
Kotimaisuus                  Koulutus                    Kunnat                      Kustannustehokkuus         
ident.subset,
Kuuluvuus                    Kävely                      Laajakaista                  Lainsäädäntö               
id_name = "AvainsanaID",
Laiton tarjonta              Langattomuus                Lappi                        Lentoliikenne             
pagename = pagename,
Liikenne                    Liikenneverkostot            Liikkumistili                Linja-autot               
filter = filter
Logistiikka                  Luonnonsuojelu              Lämmitys                    Maakaasu                   
)
Maatalous                    Mainonta                    Markkinat                    Massavalvonta             
 
Meriliikenne                Metadata                    Mobiiliverkko                Mopot                     
cat("Avainsanojen lisääminen onnistui.\n")
Nopeus                      Ohjaus                      Ohjelmistot                  Ohjelmistotoimittaja       
</rcode>
Oikeusturva                  Omavaraisuus                Operaattori                  Osaaminen                 
 
Ostovoima                    Palaute                      Palvelut                    Palvelutaso               
==== Avainsanan poisto ====
Peruskunto                  Pilvipalvelut                Polttoaine                  Posti                     
 
Puelueettomuus              Pysäköinti                  Pyöräily                    Päivitys                   
'''Merkitsee avainsanan epäkelvoksi, jolloin tämän sivun hakukoneet eivät näytä sitä.'''
Pääkaupunkiseutu            Päästöt                      Päätöksenteko                Päätös                     
<rcode name="avainsananpoisto" embed=1 label="Poista avainsana" showcode=0 variables="
Raha                        Rahoitus                    Rahtliikenne                Rajapinnat                 
name:avid|description:Poistettavan avainsanan ID (pilkulla eroteltuna useampia)|type:text|
Rakennemuutos                Rakentaminen                Raskas liikenne              Rautatiet                 
name:version|description:Mikä versio on kyseessä?|type:text|default:nykyinen|
Riippuvuus                  Rikokset                    Robotisaatio                Ruuhkamaksu               
name:syy|description:Poiston syy|type:selection|options:
Ruuhkautuminen              Saatavuus                    Sateliittipaikannus          Sovellukset               
' ';- Valitse syy -;
Strategia                    Suunnittelu                  Sähkö                        Sähköauto                 
'Avainsana ei päde uudessa versiossa';Avainsana ei päde uudessa versiossa;
Sääntely                    Säästöt                      Talous                      Talouskasvu               
'Virheellinen avainsana';Virheellinen avainsana|
Tarpeet                      Tasa-arvo                    Tasapuolisuus                Tasavertaisuus             
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
Tavaraliikenne              Tehokkuus                    Tekijänoikeus                Tekniikkaneutraalius       
name:pagename|type:hidden|default:'{{PAGENAME}}'
Tekninen tuki                Teknologia                  Teknologianeutraalius        Teollisuus                 
">
Terveydenhuolto              Terveys                      testi                        Tiedon avoimuus           
library(OpasnetUtils)
Tiedon hallinnointi          Tiedon hallinta              Tiedon hyödyntäminen        Tieliikenne               
Tietoliikenne                Tietoturva                  Toimilupa                    Toiminta                   
Toimintavarmuus              Toimivuus                    Tuki                        Turvallisuus               
Turvaverkko                  Tutkimus                    Tuuli                        TV                         
Työllisyys                  Työn tekemiseen liittyvä    Ulkomaat                    Uudistus                   
Vaihtoehtoiset polttoaineet  Vaikuttaminen                Vaikutus                    Vakuutus                   
Valinnanvapaus              Valtio                      Varmenne                    Varmuus                   
Vastuu                      Verkostoituminen            Verotus                      Vesiliikenne               
Vesiliikenne, Tasavertaisuus Viestintäverkot              Viranomaiset                Yhteensopivuus             
Yhteiskunta                  Yhteiskuntamurros            Yhteistyö                    Yhteysnopeus               
Yksityisautoilu              Yksityisyydensuoja          YLE                          Yleispalvelu               
Yleisradio                  Ympäristö                    Yritykset                    Öljy                       
}}


avid <- strsplit(avid, ",", fixed = TRUE)[[1]]
<rcode label="Näytä tilastoja/jakeita" name="jae_stats" embed=1 graphics=1 variables="
avid <- gsub(" ", "", avid)
name:sivu|description:Minkä sivun jakeita haluat tarkastella?|type:selection|options:
 
NULL;Kaikki;
if (tolower(version) == "nykyinen") {
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
objects.latest("Op_fi4325", "apufunktiot")
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
version <- get_current_version(ident)
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
} else {
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
version <- as.numeric(version)
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
}
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
'KIDE-hanke';KIDE-hanke;
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
name:avainsanat|description:Hae jakeita joilla on ainakin yksi seuraavista avainsanoista|type:text|
name:avainsanat_all|description:Hae jakeita joilla on kaikki seuraavat avainsanat|type:text|
name:jaelista|description:Haluatko nähdä kaikki löydetyt jakeet?|type:selection|options:FALSE;En;TRUE;Kyllä|default:FALSE|
name:version|description:Versio|type:text|default:nykyinen|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
">
library(OpasnetUtils)
library(plyr)
objects.latest("Op_fi4325", "apufunktiot")
library(ggplot2)


dat <- data.frame(
filter <- list()
Versio = version,
if (nchar(gsub(" ", "", avainsanat)) > 0) {
Aika = date(),  
avainsanat <- strsplit(avainsanat, ",")[[1]]
Käyttäjä = wiki_username,
avainsanat <- gsub("^\\s*|\\s*$", "", avainsanat)
Syy = syy,  
} else {
Result = avid
avainsanat <- NULL
)
}
if (nchar(gsub(" ", "", avainsanat_all)) > 0) {
avainsanat_all <- strsplit(avainsanat_all, ",")[[1]]
avainsanat_all <- gsub("^\\s*|\\s*$", "", avainsanat_all)
#filter$Avainsana <- avainsanat_all
} else {
avainsanat_all <- NULL
}
filter$Sivu <- sivu
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])


opbase.upload(
a <- tolower(version) == "nykyinen"
dat,
if (any(a)) {
ident = ident,
version <- version[!a]
name = pagename,
version <- c(version, get_current_version(ident))
subset = "Avainsananpoistot",
}
act_type = "append",
version <- as.numeric(version)
language = "fin",
filter$Versio <- version
who = wiki_username
)


cat("Avainsana poistettiin onnistuneesti.\n")
if (length(filter) == 0) filter <- NULL
</rcode>


tags <- try_dl_rm(
paste(ident, "Avainsanat", sep = "."),
filter = filter,
rm_id = paste(ident, "Avainsananpoistot", sep = "."),
rm_ind = "AvainsanaID"
)


===Relaatiot===
jaeid <- NULL


==== Relaatiohakukone ====
if (!is.null(avainsanat)|!is.null(avainsanat_all)) {
tags <- tags[tags$Result %in% c(avainsanat, avainsanat_all), ]
jaeid <- unique(as.character(tags$JaeID))
}


'''Hakee relaatioita joissa mahdollisesti annetut jakeet esiintyvät. Näyttää datan sellaisena kuin se on tietokannassa.'''
if(!is.null(avainsanat_all)) {
<rcode label="Näytä relaatiot" name="relaatiot_display" embed=1 variables="
temp <- list()
name:sivu|description:Sivu jonka relaatioita haetaan|type:selection|options:
for (i in 1:nrow(jaeid)) {
NULL;Kaikki;
temp[[i]] <- avainsanat_all %in% tags$Result[tags$JaeID == jaeid[i]]
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
}
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
temp <- lapply(temp, all)
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
jaeid <- jaeid[temp]
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
tags <- tags[tags$JaeID %in% jaeid,]
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
}
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
 
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
if (nrow(tags) == 0) {
'KIDE-hanke';KIDE-hanke;
cat("Avainsanoja ei löytynyt.\n")
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
}
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
 
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
if (is.null(filter)) {
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
filter2 <- list()
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
name:version|description:Versio|type:text|default:nykyinen|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
">
library(OpasnetUtils)
library(plyr)
objects.latest("Op_fi4325", "apufunktiot")
 
# Erottelu pilkuilla ja välilyöntien poisto
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
if (tolower(jaeid == "hae kaikki")) {
jaeid <- NULL
} else {
} else {
jaeid <- gsub("^\\s*|\\s*$", "", strsplit(jaeid, ",")[[1]])
filter2 <- filter
}
}
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])
a <- tolower(version) == "nykyinen"
if (any(a)) {
version <- version[!a]
version <- c(version, get_current_version(ident))
}
version <- as.numeric(version)


filter <- list()
filter2$JaeID <- jaeid
filter$Sivu1 <- sivu
 
filter$Versio <- version
if (length(filter2) == 0) filter2 <- NULL
filter$JaeID1 <- jaeid
 
 
if (jaelista) {
rel1 <- try_dl_rm(
jakeet <- jaehakukone(
paste(ident, "Relaatiot", sep = "."),  
ident,
filter = filter,  
sivu = filter2$Sivu, # *list$non-existent returns NULL
rm_id = paste(ident, "Relaationpoistot", sep = "."),
versio = filter2$Versio,
rm_ind = "RelaatioID"
jae = filter2$JaeID
)
)
if (is.null(jaeid)) {
if (nrow(jakeet) == 0) {
rel2 <- data.frame()
cat("Avainsanoissa listattuja jakeita ei löytynyt.\n")
} else {
} else {
filter$JaeID1 <- NULL
colnames(jakeet)[colnames(jakeet) == "Result"] <- "Sisältö"
filter$Sivu1 <- NULL
tagged <- NULL
filter$JaeID2 <- jaeid
if (nrow(tags) > 0) {
filter$Sivu2 <- sivu
#tagged <- join(
# jakeet[c("Versio", "Sivu", "Aihe", "JaeID")],  
rel2 <- try_dl_rm(
# tags[c("Versio", "Sivu", "JaeID", "Result")]
paste(ident, "Relaatiot", sep = "."),  
#)
filter = filter,  
#colnames(tagged)[colnames(tagged) == "Result"] <- "Avainsana"
rm_id = paste(ident, "Relaationpoistot", sep = "."),
tagged <- tapply(tags$Result, tags[c("Versio", "Sivu", "JaeID")], paste, collapse = ", ")
rm_ind = "RelaatioID"
tagged <- as.data.frame(as.table(tagged))
)
colnames(tagged)[colnames(tagged) == "Freq"] <- "Avainsanat"
tagged <- join(
jakeet[c("Versio", "Sivu", "JaeID", "Sisältö")],
tagged[c("Versio", "Sivu", "JaeID", "Avainsanat")],
type = "inner",
match = "first"
)
oprint(
tagged[c("Versio", "Sivu", "JaeID", "Sisältö", "Avainsanat")],
caption = "Jakeet",  
caption.placement = "top",
include.rownames = FALSE,
digits = rep(0, 6)
)
}
}
}
}


out <- rbind(rel1, rel2)
if (nrow(tags) > 0) {
 
tags_out <- ddply(tags, "Result", nrow)
if (nrow(out) > 0) {
colnames(tags_out) <- c("Avainsana", "Lukumäärä")
tags_out <- tags_out[order(tags_out$Lukumäärä, decreasing = TRUE),]
oprint(
oprint(
out,  
tags_out,
caption = "Avainsanojen lukumäärät",
caption.placement = "top",
include.rownames = FALSE,
include.rownames = FALSE,
caption = "Relaatiot",  
digits = c(0, 0, 0)
caption.placement = "top"
)
)
} else {
ggplot(tags_out, aes(x = Avainsana, y = Lukumäärä, fill = Avainsana)) +
cat("Relaatioita ei löytynyt!\n")
geom_bar(stat = "identity") +
theme_grey(base_size = 24) +
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
ggtitle("Avainsanojen frekvenssit")
}
}


</rcode>
# Add previous and next versions to check for inclusion from previous and into next
original_version <- version
if (!(1 %in% version)) {
prev <- TRUE
version <- c(min(version, na.rm = TRUE) - 1, version)
}
version <- c(version, max(version, na.rm = TRUE) + 1)


==== Relaation lisääminen ====
filter3 <- list()
filter3$Sivu1 <- sivu
filter3$Versio <- version
filter3$JaeID1 <- jaeid


'''Lisää uuden relaation tietokantaan. Samantyyppisiä relaatioita voi kerralla lisätä useita, kun erottelee JaeID:t pilkuilla: relaatiot voi tehdä kaikki yhteen, yksi kaikkiin tai yksi yhteen. '''
rel1 <- try_dl_rm(
<rcode label="Lisää relaatio" name="relaatio" embed=1 variables="
paste(ident, "Relaatiot", sep = "."),  
name:sivu1|description:Mikä on lähtöjakeen sivu?|type:selection|options:
filter = filter3,  
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
rm_id = paste(ident, "Relaationpoistot", sep = "."),
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
rm_ind = "RelaatioID"
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
)
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
if (is.null(jaeid)) {
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
rel2 <- data.frame()
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
} else {
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
filter3$JaeID1 <- NULL
'KIDE-hanke';KIDE-hanke;
filter3$Sivu1 <- NULL
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
filter3$JaeID2 <- jaeid
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
filter3$Sivu2 <- sivu
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
rel2 <- try_dl_rm(
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
paste(ident, "Relaatiot", sep = "."),
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
filter = filter3,
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
rm_id = paste(ident, "Relaationpoistot", sep = "."),
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
rm_ind = "RelaatioID"
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
)
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
}
name:jaeid1|description:Mikä on lähtöjakeen ID?|type:text|
 
name:version|description:Mikä on lähtöjakeen versio?|type:text|default:nykyinen|
rel <- rbind(rel1, rel2)
name:sivu2|description:Mikä on kohdejakeen sivu?|type:selection|options:
 
'Sama';Sama kuin lähtöjakeella;
if (!any(original_version %in% rel$Versio)) stop("Annetuilla versiolla ei löytynyt relaatioita.")
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
 
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
if (nrow(rel) == 0) {
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
cat("Jakeelle ei löytynyt kysyttyjä relaatioita tietokannassa.\n")
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
} else {
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
related <- rel[
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
rel$Result %in% c(
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
"tukee tai on linjassa",
'KIDE-hanke';KIDE-hanke;
"vastustaa tai on ristiriidassa",
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
"on neutraali suhteessa",
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
"liittyy",
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
"edellyttää",
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
"sisältää",
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
"vaikuttaa",
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
"vaikuttaa taloudellisesti"
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
), ]
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
related$Result <- as.character(related$Result)
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
affected <- rel[
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
rel$Result %in% c(
name:jaeid2|description:Mikä on kohdejakeen ID?|type:text|
"ehdotus ei ole antanut aihetta muutoksiin",
name:relaatio|description:'''Kuinka lähtöjae liittyy kohdejakeeseen?'''|type:selection|options:
"ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun",
' ';- Valitse -;
"ehdotus huomioitu ja liittyvää painotusta muutettu",
'tukee tai on linjassa';tukee tai on linjassa;
"ehdotus huomioitu ja uusi kohta lisätty"
'vastustaa tai on ristiriidassa';vastustaa tai on ristiriidassa;
), ]
'on neutraali suhteessa';on neutraali suhteessa;
affected$Result <- as.character(affected$Result)
'liittyy';liittyy;
affected$Result[affected$Result == "ehdotus ei ole antanut aihetta muutoksiin"] <- "Ei aihetta muutoksiin"
'edellyttää';edellyttää;
affected$Result[affected$Result == "ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun"] <- "Sisältyy valmiiksi"
'sisältää';sisältää;
affected$Result[affected$Result == "ehdotus huomioitu ja liittyvää painotusta muutettu"] <- "Huomioitu painotuksella"
'vaikuttaa';vaikuttaa;
affected$Result[affected$Result == "ehdotus huomioitu ja uusi kohta lisätty"] <- "Huomioitu lisäyksellä"
'vaikuttaa taloudellisesti';vaikuttaa taloudellisesti|
name:lisarelaatio|description:VAPAAEHTOINEN Voit antaa oman jakeiden välisen relaation vapaakenttään.|type:text|
related_out <- ddply(related, "Result", nrow)
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
colnames(related_out) <- c("Relaatio", "Lukumäärä")
name:pagename|type:hidden|default:'{{PAGENAME}}'
">
affected_out <- ddply(affected, "Result", nrow)
relaatio <- ifelse(lisarelaatio == '', relaatio, lisarelaatio)
colnames(affected_out) <- c("Sisällytys", "Lukumäärä")
if (nchar(gsub(" ", "", relaatio)) == 0) stop("Relaatiota ei annettu!")
}


library(OpasnetUtils)
if (nrow(related_out > 0)) {
objects.latest("Op_fi4325", "apufunktiot")
ggplot(related_out, aes(x = Relaatio, y = Lukumäärä, fill = Relaatio)) +
 
geom_bar(stat = "identity") +
jaeid1 <- strsplit(jaeid1, ",", fixed = TRUE)[[1]]
theme_grey(base_size = 24) +
jaeid1 <- gsub(" ", "", jaeid1)
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
jaeid2 <- strsplit(jaeid2, ",", fixed = TRUE)[[1]]
ggtitle("Relaatioiden frekvenssit")# + facet_wrap(~Sivu)
jaeid2 <- gsub(" ", "", jaeid2)
 
if (tolower(version) == "nykyinen") {
version <- get_current_version(ident)
} else {
version <- as.numeric(version)
}
}


if(sivu2 == "Sama") sivu2 <- sivu1
if (nrow(affected_out > 0)) {
 
ggplot(affected_out, aes(x = Sisällytys, y = Lukumäärä, fill = Sisällytys)) +
ident.subset <- paste(ident, "Relaatiot", sep = ".")
geom_bar(stat = "identity") +
 
theme_grey(base_size = 24) +
filter <- list()
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
filter$Versio <- version
ggtitle("Sisällytyksen frekvenssit")# + facet_wrap(~Sivu)
 
dat <- data.frame(
RelaatioID = NA,
Versio = version,  
Aika = date(),
Käyttäjä = wiki_username,  
Sivu1 = sivu1,
JaeID1 = jaeid1,
Sivu2 = sivu2,
JaeID2 = jaeid2,
Result = relaatio
)
 
upload_with_autoid(
dat,
ident.subset,
id_name = "RelaatioID",
pagename = pagename,
filter = filter
)
 
cat("Relaation lisääminen onnistui.\n")
 
</rcode>
 
==== Relaation poisto ====
 
'''Merkitsee relaation/sisällytyksen epäkelvoksi, jolloin tämän sivun hakukoneet eivät näytä sitä.'''
<rcode name="relaationpoisto" embed=1 label="Poista relaatio" showcode=0 variables="
name:relid|description:Poistettavan relaation ID (pilkulla eroteltuna useampia)|type:text|
name:version|description:Mikä versio on kyseessä?|type:text|default:nykyinen|
name:syy|description:Poiston syy|type:selection|options:
' ';- Valitse syy -;
'Relaatio ei päde uudessa versiossa';Relaatio ei päde uudessa versiossa;
'Virheellinen relaatio';Virheellinen relaatio|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
name:pagename|type:hidden|default:'{{PAGENAME}}'
">
library(OpasnetUtils)
 
relid <- strsplit(relid, ",", fixed = TRUE)[[1]]
relid <- gsub(" ", "", relid)
 
if (tolower(version) == "nykyinen") {
objects.latest("Op_fi4325", "apufunktiot")
version <- get_current_version(ident)
} else {
version <- as.numeric(version)
}
}
dat <- data.frame(
Versio = version,
Aika = date(),
Käyttäjä = wiki_username,
Syy = syy,
Result = relid
)
opbase.upload(
dat,
ident = ident,
name = pagename,
subset = "Relaationpoistot",
act_type = "append",
language = "fin",
who = wiki_username
)
cat("Relaatio poistettiin onnistuneesti.\n")
</rcode>
</rcode>

Nykyinen versio 13. maaliskuuta 2015 kello 12.10



Linkkejä aineistoon


Havaintoja aineistosta

Dokumentin rikastusasteen status määritellään termein Asiasanoitus ja Linkitys. Edellinen tarkoittaa jakeiden (lauseiden) tägitystä tärkeimmin asiasanoin (ks. minimitägiluettelo kohdasta Lisää tähän omia ehdotuksia asiasanoiksi) ja jälkimmäinen dokumenttien ristiinlinkitystä sopivin predikaatein (ks. kohta Lisää tähän omia ehdotuksia relaatioiksi).


Status: Asiasanoitus (käynnissä)

Havainnot:

Status: Asiasanoitus (käynnissä)

Havainnot:


Asiasanoitus ja relaatiot

YSO-pohjainen asiasanoitus

Yleiseen suomalaiseen ontologiaan pohjautuva asiasanoitus. Täydellinen listaus kategorian Viestintä. Tietoverkot. Tietotekniikka. asiasanoista löytyy laajennettavassa muodossa alta julkisen hallinnon ontologian JUHO:n alta:


Viestintä. Tietoverkot. Tietotekniikka.


Aluehallinto. Aluepolitiikka.


Elinkeinot. Teollisuus. Kilpailu


Hallinto. Johtaminen. Henkilöstö.


Lisää tähän omia ehdotuksia asiasanoiksi

Päätös, Vaikutus, Arvo, Data, Huomio, Päätavoite, Tavoite, Toimenpide


Lisää tähän omia ehdotuksia relaatioiksi

tukee tai on linjassa, vastustaa tai on ristiriidassa, on neutraali suhteessa, liittyy, edellyttää, sisältää, vaikuttaa, vaikuttaa taloudellisesti



Tägikone

Käyttöohje

Tägikoneen idea on pitää yllä jaetietokantaa ja määritellään jakeille avainsanoja ja relaatoita joiden tarkoitus on rikastaa sivustolla käydystä keskustelusta analyysikelpoista yleisemmän tason tietoa.

#Jakeet määritellään koodilla joka lukee wikisivuilta tekstiä kappaleittain (myös taulukot ja bullet pointit). Jakeisiin lisätään myös kommentointityökalulla tehdyt kommentit, joita ei vielä ole siirretty wikitekstiin, sekä tämän sivun koodilla lisätyt jakeet. Kullakin jakeella on oma tunniste (JaeID) joka on sivukohtainen. Etsimällä jaehakukoneesta oman kommenttisi ja kopioimalla JaeID:n muihin sivun hakukoneisiin voit tarkastella kommenttiisi liitettyjä tägitietoja.

#Avainsanat ovat jaekohtaisia ja ne lisätään yleensä käsityönä. Avainsanoituksen tekee joko kommentoija itse tai moderaattori.

#Relaatiot voidaan määritellä kahden jakeen välille (myös käsityötä). Relaatiot lisää joko kommentoija itse tai moderaattori.

#Versiot - wikisivuja päivitetään mahdollisesti jatkuvasti, minkä johdosta versiointi on tarpeellista. Hakukoneissa esiintyvä Versio-kentän arvo 'nykyinen' hakee koko hankkeen uusimman version. Koska jakeet ovat versiokohtaisia niin avainsanat ja relaatiot ovat myös versiokohtaisia. Avainsanojen ja relaatioiden automaattista periytymistä on kehitetty, mutta koodi on vielä kesken .


Versiot

Versiot(OldID)
ObsVersioSivuIdentResult
1121 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraporttiOp_fi4748
21Asiakaspalvelu 2014 loppuraporttiOp_fi4751
31Julkisen hallinnon asiakkuusstrategiaOp_fi4746
41Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020Op_fi4734
51Kansallinen paikkatietostrategiaOp_fi4744
61Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015Op_fi4736
71Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujilleOp_fi4740
81KIDE-hankeOp_fi4750
91Opetus- ja kulttuuriministeriön älystrategiaOp_fi4742
101Rakennepoliittinen ohjelmaOp_fi4749
111Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014Op_fi4743
121Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020Op_fi4739
131Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestäOp_fi4737
141Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiastaOp_fi4738
151Valtioneuvoston periaatepäätös sähköisestä tunnistamisestaOp_fi4741
161Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisestaOp_fi4745
171Vaikuttavuus- ja tuloksellisuusohjelma (VATU)Op_fi4747
181Valtion_konesalistrategia_2014Op_fi4724


Jakeiden päivitys

Päivitä Versiot-tauluun sivut ja ikilinkin IDt ja aja alla oleva koodi

--Smxb (keskustelu) 14. joulukuuta 2014 kello 21.33 (UTC)ÄLÄ PÄIVITÄ JAKEITA TOISTAISEKSI (koodi alla mutta poistamalla '<'-merkki alusta on tämä koodinpätkä toistaiseksi poistettu käytöstä varmuuden vuoksi)!

rcode label="Päivitä jakeet" variables=" name:ident|type:hidden|default:'Op_fi4735'| name:pagename|type:hidden|default:'Strategiadatan analyysi' "> library(OpasnetUtils) objects.latest("Op_fi4325", "apufunktiot")

versiot <- get_meta_data(ident)

  1. version <- max(as.numeric(as.character(versiot$Versio)))
  1. names <- as.character(versiot$Sivu[versiot$Versio == version])

url <- gsub(" ", "_", versiot$Sivu) old_id <- versiot$Result old_id <- paste("&oldid=", old_id, sep = "")

out <- data.frame()

for (i in 1:length(url)) { temp <- parse_page(url[i], old_id[i], res = "sentence") temp$Sivu <- versiot$Sivu[i] temp$Versio <- versiot$Versio[i] out <- rbind(out, temp) }

  1. out$Versio <- version

out <- out[c("Versio", "Sivu", "Aihe", "JaeID", "Result")]

opbase.upload( out, name = pagename, who = wiki_username, subset = "Jakeet" ) </rcode>


Työkalut

Aineiston työstämiseen tarkoittuja koodeja.


Jakeet

Jaehakukone

Hakee jakeita annetuilla kriteereillä. Näyttää myös tekniset sarakkeet. Vapaakenttiin voi laittaa useita arvoja erottelemalla ne pilkuilla.

Sivu jolta jakeita haetaan:

Anna halutessasi jakeen ID(:t):

Versio:

Missä muodossa tulostetaan?:

+ Näytä koodi

Jakeenlisäyskone

Lisää tietokantaan vapaasti määriteltävän jakeen. Lisätyt jakeet näkyvät tämän sivun hakukoneissa. Niiden JaeID:llä on "L"-etuliite.

Sivu jolle jae lisätään:

Versio:

Jakeen sisältö:

+ Näytä koodi

Jakeenpoistokone

Merkitsee jakeen epäkelvoksi, jolloin se jätetään näyttämättä kaikissa tämän sivun hakukoneissa.

Poistettavan jakeen sivu:

Poistettavan jakeen ID (pilkulla eroteltuna useampia):

Versio:

Poiston syy:

+ Näytä koodi


Avainsanat

Avainsanahakukone

Hakee jaekohtaisia avainsanoja. Näyttää datan sellaisena kuin se on tietokannassa.

Sivu jonka avainsanoja haetaan:

Anna halutessasi jakeen ID(:t):

Versio:

+ Näytä koodi

Avainsanoitus

Lisää annetut avainsanat tietokantaan. Avainanoja voidaan lisätä ruksaamalla annetusta listasta (vain yleisimmät) ja syöttämällä vapaakenttään pilkulla eroteltuna.

Minkä sivun jakeelle haluat lisätä avainsanoja?:

Mikä on jakeen versio?:

Mikä on jakeen ID?:

Valitse alla olevasta listasta yleisiä avainsanoja.:
A Päätös (jae sisältää päätös- tai toimintaehdotuksen)
B Vaikutus (jae kuvaa ilmiötä tai vaikutusta)
C Arvo (jakeessa on arvoarvostelma tai kuvaa asian merkitystä)
D Data (sisältää numeroarvoja, tekstidataa tai viitteen edellisiin)
E Huomio (jae on sisällöltään huomioitava myöhemmin sen merkityksellisyydestä tai epäselvyydestä johtuen)
H Päätavoite
F Tavoite
G Toimenpide

Laita halutessasi yllä listaamattomattomia avainsanoja tähän pilkulla eroteltuna.:

+ Näytä koodi

Avainsanan poisto

Merkitsee avainsanan epäkelvoksi, jolloin tämän sivun hakukoneet eivät näytä sitä.

Poistettavan avainsanan ID (pilkulla eroteltuna useampia):

Mikä versio on kyseessä?:

Poiston syy:

+ Näytä koodi


Relaatiot

Relaatiohakukone

Hakee relaatioita joissa mahdollisesti annetut jakeet esiintyvät. Näyttää datan sellaisena kuin se on tietokannassa.

Sivu jonka relaatioita haetaan:

Anna halutessasi jakeen ID(:t):

Versio:

+ Näytä koodi

Relaation lisääminen

Lisää uuden relaation tietokantaan. Samantyyppisiä relaatioita voi kerralla lisätä useita, kun erottelee JaeID:t pilkuilla: relaatiot voi tehdä kaikki yhteen, yksi kaikkiin tai yksi yhteen.

Mikä on lähtöjakeen sivu?:

Mikä on lähtöjakeen ID?:

Mikä on lähtöjakeen versio?:

Mikä on kohdejakeen sivu?:

Mikä on kohdejakeen ID?:

Kuinka lähtöjae liittyy kohdejakeeseen?:

VAPAAEHTOINEN Voit antaa oman jakeiden välisen relaation vapaakenttään.:

+ Näytä koodi

Relaation poisto

Merkitsee relaation/sisällytyksen epäkelvoksi, jolloin tämän sivun hakukoneet eivät näytä sitä.

Poistettavan relaation ID (pilkulla eroteltuna useampia):

Mikä versio on kyseessä?:

Poiston syy:

+ Näytä koodi


Rikastetun aineiston analysointi - Yhdistelmähakukoneet

Jaekohtainen avainsanalistaus

Hakee jakeita ja näyttää kaikki niihin liittyvät avainsanat

Sivu jolta jakeita haetaan:

Anna halutessasi jakeen ID(:t):

Versio:

+ Näytä koodi

Jae-relaatio-jae listaus

Hakee jakeita ja niihin liittyviä toisia jakeita listaten myös relaation tyypin

Sivu jolta relaatioita haetaan:

Anna halutessasi jakeen ID(:t):

Liittymistyyppi (tyhjä = kaikki):
tukee tai on linjassa
vastustaa tai on ristiriidassa
on neutraali suhteessa
liittyy
edellyttää
sisältää
vaikuttaa
vaikuttaa taloudellisesti

Versio:

Näytetäänkö tekniset yksityiskohdat?:

+ Näytä koodi

Avainsana- ja relaatiotietojen analyysi

Hae jakeita annetuilla kriteereillä ja vertaile avainsanojen ja relaatioiden lukumääriä. Halutessasi voit myös listata jaeosumat. Vapaakenttiin voi syöttää useita arvoja erottelemalla ne pilkuilla.

Käytetyt avainsanat:


Minkä sivun jakeita haluat tarkastella?:

Hae jakeita joilla on ainakin yksi seuraavista avainsanoista:

Hae jakeita joilla on kaikki seuraavat avainsanat:

Haluatko nähdä kaikki löydetyt jakeet?:

Versio:

+ Näytä koodi