Ero sivun ”Strategiadatan analyysi” versioiden välillä

Opasnet Suomista
Siirry navigaatioon Siirry hakuun
pEi muokkausyhteenvetoa
(merkitty meneillään olevaksi arvioinniksi)
 
(11 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 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!
'''Päivitä Versiot-tauluun sivut ja ikilinkin IDt ja aja alla oleva koodi'''
<rcode label="Päivitä jakeet" variables="
 
--[[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 491: Rivi 507:




== Rikastetun aineiston analysointi - Yhdistelmähakukoneet ==


=== Jaekohtainen avainsanalistaus ===
==Työkalut==
 
Aineiston työstämiseen tarkoittuja koodeja.
 
 
=== Jakeet ===
 
==== Jaehakukone ====


'''Hakee jakeita ja näyttää kaikki niihin liittyvät avainsanat'''
'''Hakee jakeita annetuilla kriteereillä. Näyttää myös tekniset sarakkeet. Vapaakenttiin voi laittaa useita arvoja erottelemalla ne pilkuilla.'''
<rcode label="Hae" name="avainsanat_disp" embed=1 variables="
<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 519: 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 543: 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"
 
outs <- ""
for(i in 1:nrow(out)) {
ver <- as.character(out$Versio[i])
siv <- as.character(out$Sivu[i])
aih <- as.character(out$Aihe[i])
if(!is.na(pver != ver)) if(pver != ver) outs <- c(outs, paste("Versio:", ver))
if(!is.na(psiv != siv)) if(psiv != siv) outs <- c(outs, paste("Sivu:", siv))
if(!is.na(paih != aih)) if(paih != aih) outs <- c(outs, paste("Aihe:", aih))
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>


filter <- list()
==== Jakeenlisäyskone ====
filter$Sivu <- sivu
filter$Versio <- version
filter$JaeID <- jaeid


tags <- try_dl_rm(
'''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.'''
paste(ident, "Avainsanat", sep = "."),
<rcode label="Lisää jae" name="jakeenlisays" embed=1 variables="
filter = filter,
name:sivu|description:Sivu jolle jae lisätään|type:selection|options:
rm_id = paste(ident, "Avainsananpoistot", sep = "."),
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
rm_ind = "AvainsanaID"
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
)
'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 (nrow(tags) == 0) {
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
cat("Avainsanoja ei löytynyt!\n")
'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;
# Yhdistetään kunkin jakeen avainsanat yhdelle riville
'KIDE-hanke';KIDE-hanke;
tags <- ddply(
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
tags,
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
c("Versio", "Sivu", "JaeID"),
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
function(x) {a <- x[1,];a$Avainsanat <- paste(x$Result, collapse = ", ");return(a)}
'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:Versio|type:text|default:nykyinen|
name:sisalto|description:Jakeen sisältö|type:textbox|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
name:pagename|type:hidden|default:'{{PAGENAME}}'
">
library(OpasnetUtils)
objects.latest("Op_fi4325", "apufunktiot")


out <- join(
if (tolower(version) == "nykyinen") {
out[c("Versio", "Sivu", "JaeID", "Result")],
version <- get_current_version(ident)
tags[c("Versio", "Sivu", "JaeID", "Avainsanat")],
} else {
by = c("Versio", "Sivu", "JaeID"),
version <- as.numeric(version)
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 ===
out <- data.frame(
'''Hakee jakeita ja niihin liittyviä toisia jakeita listaten myös relaation tyypin'''
Versio = version,
<rcode label="Hae" name="relaatiot_disp" embed=1 variables="
Sivu = sivu, 
name:sivu|description:Sivu jolta relaatioita haetaan|type:selection|options:
Aika = date(),
NULL;Kaikilta;
Käyttäjä = wiki_username,
JaeID = NA,
Result = sisalto
)
 
ident.subset <- paste(ident, "Jakeenlisaykset", sep = ".")
 
filter <- list()
filter$Versio <- version
filter$Sivu <- sivu
 
upload_with_autoid(
out,
ident.subset,
id_name = "JaeID",
pagename = pagename,
prefix = "L",
filter = filter
)
</rcode>
 
==== Jakeenpoistokone ====
 
'''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="
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;
'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 614: Rivi 683:
'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:jaeid|description:Poistettavan jakeen ID (pilkulla eroteltuna useampia)|type:text|
name:liitsis|description:Liittymistyyppi (tyhjä = kaikki)|type:checkbox|options:
name:version|description:Versio|type:text|default:nykyinen|
'tukee tai on linjassa';tukee tai on linjassa;
name:syy|description:Poiston syy|type:selection|options:
'vastustaa tai on ristiriidassa';vastustaa tai on ristiriidassa;
' ';- Valitse syy -;
'on neutraali suhteessa';on neutraali suhteessa;
'Tekninen jae';Tekninen jae;
'liittyy';liittyy;
'Jae ei liity sivun aiheeseen';Jae ei liity sivun aiheeseen;
'edellyttää';edellyttää;
'Jae on häiriköintiä';Jae on häiriköintiä (käytä säästellen)|
'sisältää';sisältää;
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
'vaikuttaa';vaikuttaa;
name:pagename|type:hidden|default:'{{PAGENAME}}'
'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
library(OpasnetUtils)
sis_opt <- c(
 
'ehdotus huomioitu ja liittyvää painotusta muutettu',
jaeid <- strsplit(jaeid, ",", fixed = TRUE)[[1]]
'ehdotus huomioitu ja uusi kohta lisätty',
jaeid <- gsub(" ", "", jaeid)
'ehdotus ei ole antanut aihetta muutoksiin',  
 
'ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun'
if (sum(nchar(jaeid)) == 0) stop("Anna jakeen ID")
)
#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")


# Erottelu pilkuilla ja välilyöntien poisto
if (tolower(version) == "nykyinen") {
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
objects.latest("Op_fi4325", "apufunktiot")
if (tolower(jaeid == "hae kaikki")) {
version <- get_current_version(ident)
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,
filter$Versio <- version
Sivu = sivu,
filter$JaeID1 <- jaeid
Aika = date(),
 
Käyttäjä = wiki_username,
rel1 <- try_dl_rm(
Syy = syy,  
paste(ident, "Relaatiot", sep = "."),  
Result = as.character(jaeid)
filter = filter,  
)
rm_id = paste(ident, "Relaationpoistot", sep = "."),
 
rm_ind = "RelaatioID"
opbase.upload(
out,  
who = wiki_username,  
name = pagename,
subset = "Jakeenpoistot",
act_type = "append",  
language = "fin"
)
)
if (is.null(jaeid)) {
</rcode>
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)


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


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


if (nrow(rel) == 0) {
'''Hakee jaekohtaisia avainsanoja. Näyttää datan sellaisena kuin se on tietokannassa.'''
cat("Jakeelle ei löytynyt kysyttyjä relaatioita tietokannassa.\n")
<rcode label="Näytä avainsanat" name="avainsanat_display" embed=1 variables="
} else {
name:sivu|description:Sivu jonka avainsanoja haetaan|type:selection|options:
jakeet <- jaehakukone(
NULL;Kaikki;
ident,
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
sivu = unique(c(
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
as.character(rel$Sivu1),
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
as.character(rel$Sivu2)
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
)),
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
versio = version,
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
jae = unique(c(
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
as.character(rel$JaeID1),
'KIDE-hanke';KIDE-hanke;
as.character(rel$JaeID2)
'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 (nrow(jakeet) == 0) stop("Relaatioissa listattuja jakeita ei löytynyt!")
'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ä;
# Relaatiot
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
if (nrow(rel[!(rel$Relaatio %in% sis_opt),]) > 0) {
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
jakeet <- jakeet[c("Versio", "Sivu", "JaeID", "Result")]
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
colnames(jakeet)[colnames(jakeet) == "JaeID"] <- "JaeID1"
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
colnames(jakeet)[colnames(jakeet) == "Sivu"] <- "Sivu1"
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
colnames(jakeet)[colnames(jakeet) == "Result"] <- "Jae1"
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
rel <- rel[c("RelaatioID", "Versio", "Sivu1", "JaeID1", "Result", "Sivu2", "JaeID2")]
name:version|description:Versio|type:text|default:nykyinen|
colnames(rel)[colnames(rel) == "Result"] <- "Relaatio"
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
out <- join(
">
rel[(!(rel$Relaatio %in% sis_opt)) & rel$Versio %in% original_version,],
library(OpasnetUtils)
jakeet,
library(plyr)
match = "first" # versio - sivu - jaeid -> yksi yhteen
objects.latest("Op_fi4325", "apufunktiot")
)
 
# Erottelu pilkuilla ja välilyöntien poisto
colnames(jakeet)[colnames(jakeet) == "JaeID1"] <- "JaeID2"
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
colnames(jakeet)[colnames(jakeet) == "Sivu1"] <- "Sivu2"
if (tolower(jaeid == "hae kaikki")) {
colnames(jakeet)[colnames(jakeet) == "Jae1"] <- "Jae2"
jaeid <- NULL
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")]
}
temp <- data.frame(
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])
Jae1 = paste(temp$Jae1, " (", temp$Sivu1, ")", sep = ""),
a <- tolower(version) == "nykyinen"
Relaatio = temp$Relaatio,
if (any(a)) {
Jae2 = paste(temp$Jae2, " (", temp$Sivu2, ")", sep = "")
version <- version[!a]
)
version <- c(version, get_current_version(ident))
oprint(temp,
include.rownames = FALSE,
caption = "Relaatiot",
caption.placement = "top",
show_all = TRUE
)
}
}
} else {
version <- as.numeric(version)
cat("Ei relaatioita!\n")
 
}
filter <- list()
filter$Sivu <- sivu
# Sisällytykset
filter$Versio <- version
if (nrow(rel[(rel$Relaatio %in% sis_opt),]) > 0) {
filter$JaeID <- jaeid
colnames(jakeet)[colnames(jakeet) %in% c("JaeID","JaeID2")] <- "JaeID1"
 
colnames(jakeet)[colnames(jakeet) %in% c("Sivu", "Sivu2")] <- "Sivu1"
out <- try_dl_rm(
colnames(jakeet)[colnames(jakeet) %in% c("Result", "Jae2")] <- "Jae1"
paste(ident, "Avainsanat", sep = "."),
colnames(rel)[colnames(rel) == "Relaatio"] <- "Sisällytys"
filter = filter,
out <- join(
rm_id = paste(ident, "Avainsananpoistot", sep = "."),
rel[rel$Sisällytys %in% sis_opt & rel$Versio %in% version[-length(version)],],
rm_ind = "AvainsanaID"
jakeet,
)
match = "first" # versio - sivu - jaeid -> yksi yhteen
 
)
if (nrow(out) > 0) {
oprint(out, include.rownames = FALSE)
colnames(jakeet)[colnames(jakeet) == "JaeID1"] <- "JaeID2"
} else {
colnames(jakeet)[colnames(jakeet) == "Sivu1"] <- "Sivu2"
cat("Avainsanoja ei löytynyt!\n")
colnames(jakeet)[colnames(jakeet) == "Jae1"] <- "Jae2"
}
jakeet$Versio <- as.numeric(as.character(jakeet$Versio)) - 1
 
out <- join(out, jakeet, match = "first")
</rcode>
 
oprint(
==== Avainsanoitus ====
out[c("Versio", "RelaatioID", "Sivu1", "JaeID1", "Jae1", "Sisällytys", "Sivu2", "JaeID2", "Jae2")],
 
include.rownames = FALSE,  
'''Lisää annetut avainsanat tietokantaan. Avainanoja voidaan lisätä ruksaamalla annetusta listasta (vain yleisimmät) ja syöttämällä vapaakenttään pilkulla eroteltuna.'''
caption = "Sisällytys (uudempaan versioon)",
<rcode label="Lisää avainsana" name="avainsananlisays" embed=1 variables="
caption.placement = "top",
name:sivu|description:Minkä sivun jakeelle haluat lisätä avainsanoja?|type:selection|options:
show_all = TRUE
'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;
} else {
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
cat("Ei sisällytyksiä!\n")
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
}
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
}
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
</rcode>
'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: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);
'Päätavoite'; H Päätavoite;
'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!")


=== Avainsana- ja relaatiotietojen analyysi ===
library(OpasnetUtils)
objects.latest("Op_fi4325", "apufunktiot")
 
if (tolower(version) == "nykyinen") {
version <- get_current_version(ident)
} else {
version <- as.numeric(version)
}


'''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.'''
dat <- data.frame(
AvainsanaID = NA,
Versio = version,
Aika = date(),
Käyttäjä = wiki_username,
Sivu = sivu,
JaeID = as.character(jae),
Result = avainsanat
)


Käytetyt avainsanat:
ident.subset <- paste(ident, "Avainsanat", sep = ".")
{{piilotettu|
 
3D-tulostus                  Aikataulut                  Ajoneuvokanta                Alueellisuus               
filter <- list()
alustus                      Ammattiryhmät                Arvo                        Asutus                     
filter$Versio <- version
Aurinko                      Automatisaatio              Avoimuus                    Big Data                   
 
Biopolttoaine                Dataliikenne                Digitalisoituminen          Eettisyys                 
upload_with_autoid(
eIDAS                        Elintaso                    Energia                      Epäselvä luokka           
dat,
Eriarvoisuus                Erityisryhmät                Esineiden internet          Globaalius                 
ident.subset,
Globaaluis                  Henkilökortti                Henkilötiedot                Huutokauppa               
id_name = "AvainsanaID",
Hybridi                      Hybridi-TV                  Hyvinvointi                  Hyvinvointiyhteiskunta     
pagename = pagename,
Häiriöt                      Ilmasto                      Infrastruktuuri              Innovatiivisus             
filter = filter
Innovatiivisuus              Internet                    Investoinnit                Joukkoliikenne             
)
Joustavuus                  Julkinen valta              Kaivosteollisuus            Kansainvälisyys           
 
Kasvihuonekaasut            Kaupallisuus                Kaupungit                    Kehitys                   
cat("Avainsanojen lisääminen onnistui.\n")
Kestävyys                    Kevyen liikenteen väylät    Kevytliikenne                Kiinteistöt               
</rcode>
Kilpailu                    Kilpailukyky                Konesalit                    Konkreettisuus             
Kotimaisuus                  Koulutus                    Kunnat                      Kustannustehokkuus         
Kuuluvuus                    Kävely                      Laajakaista                  Lainsäädäntö               
Laiton tarjonta              Langattomuus                Lappi                        Lentoliikenne             
Liikenne                    Liikenneverkostot            Liikkumistili                Linja-autot               
Logistiikka                  Luonnonsuojelu              Lämmitys                    Maakaasu                   
Maatalous                    Mainonta                    Markkinat                    Massavalvonta             
Meriliikenne                Metadata                    Mobiiliverkko                Mopot                     
Nopeus                      Ohjaus                      Ohjelmistot                  Ohjelmistotoimittaja       
Oikeusturva                  Omavaraisuus                Operaattori                  Osaaminen                 
Ostovoima                    Palaute                      Palvelut                    Palvelutaso               
Peruskunto                  Pilvipalvelut                Polttoaine                  Posti                     
Puelueettomuus              Pysäköinti                  Pyöräily                    Päivitys                   
Pääkaupunkiseutu            Päästöt                      Päätöksenteko                Päätös                     
Raha                        Rahoitus                    Rahtliikenne                Rajapinnat                 
Rakennemuutos                Rakentaminen                Raskas liikenne              Rautatiet                 
Riippuvuus                  Rikokset                    Robotisaatio                Ruuhkamaksu               
Ruuhkautuminen              Saatavuus                    Sateliittipaikannus          Sovellukset               
Strategia                    Suunnittelu                  Sähkö                        Sähköauto                 
Sääntely                    Säästöt                      Talous                      Talouskasvu               
Tarpeet                      Tasa-arvo                    Tasapuolisuus                Tasavertaisuus             
Tavaraliikenne              Tehokkuus                    Tekijänoikeus                Tekniikkaneutraalius       
Tekninen tuki                Teknologia                  Teknologianeutraalius        Teollisuus                 
Terveydenhuolto              Terveys                      testi                        Tiedon avoimuus           
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                       
}}


<rcode label="Näytä tilastoja/jakeita" name="jae_stats" embed=1 graphics=1 variables="
==== Avainsanan poisto ====
name:sivu|description:Minkä sivun jakeita haluat tarkastella?|type:selection|options:
 
NULL;Kaikki;
'''Merkitsee avainsanan epäkelvoksi, jolloin tämän sivun hakukoneet eivät näytä sitä.'''
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
<rcode name="avainsananpoisto" embed=1 label="Poista avainsana" showcode=0 variables="
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
name:avid|description:Poistettavan avainsanan ID (pilkulla eroteltuna useampia)|type:text|
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
name:version|description:Mikä versio on kyseessä?|type:text|default:nykyinen|
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
name:syy|description:Poiston syy|type:selection|options:
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
' ';- Valitse syy -;
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
'Avainsana ei päde uudessa versiossa';Avainsana ei päde uudessa versiossa;
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
'Virheellinen avainsana';Virheellinen avainsana|
'KIDE-hanke';KIDE-hanke;
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
name:pagename|type:hidden|default:'{{PAGENAME}}'
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
">
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
library(OpasnetUtils)
'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ä;
avid <- strsplit(avid, ",", fixed = TRUE)[[1]]
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
avid <- gsub(" ", "", avid)
'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)


filter <- list()
if (tolower(version) == "nykyinen") {
if (nchar(gsub(" ", "", avainsanat)) > 0) {
objects.latest("Op_fi4325", "apufunktiot")
avainsanat <- strsplit(avainsanat, ",")[[1]]
version <- get_current_version(ident)
avainsanat <- gsub("^\\s*|\\s*$", "", avainsanat)
} else {
} else {
avainsanat <- NULL
version <- as.numeric(version)
}
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]])


a <- tolower(version) == "nykyinen"
dat <- data.frame(
if (any(a)) {
Versio = version,
version <- version[!a]
Aika = date(),
version <- c(version, get_current_version(ident))
Käyttäjä = wiki_username,
}
Syy = syy,  
version <- as.numeric(version)
Result = avid
filter$Versio <- version
)


if (length(filter) == 0) filter <- NULL
opbase.upload(
 
dat,
tags <- try_dl_rm(
ident = ident,  
paste(ident, "Avainsanat", sep = "."),  
name = pagename,  
filter = filter,  
subset = "Avainsananpoistot",  
rm_id = paste(ident, "Avainsananpoistot", sep = "."),
act_type = "append",  
rm_ind = "AvainsanaID"
language = "fin",
who = wiki_username
)
)


jaeid <- NULL
cat("Avainsana poistettiin onnistuneesti.\n")
</rcode>


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


if(!is.null(avainsanat_all)) {
===Relaatiot===
temp <- list()
for (i in 1:nrow(jaeid)) {
temp[[i]] <- avainsanat_all %in% tags$Result[tags$JaeID == jaeid[i]]
}
temp <- lapply(temp, all)
jaeid <- jaeid[temp]
tags <- tags[tags$JaeID %in% jaeid,]
}


if (nrow(tags) == 0) {
==== Relaatiohakukone ====
cat("Avainsanoja ei löytynyt.\n")
}


if (is.null(filter)) {
'''Hakee relaatioita joissa mahdollisesti annetut jakeet esiintyvät. Näyttää datan sellaisena kuin se on tietokannassa.'''
filter2 <- list()
<rcode label="Näytä relaatiot" name="relaatiot_display" embed=1 variables="
} else {
name:sivu|description:Sivu jonka relaatioita haetaan|type:selection|options:
filter2 <- filter
NULL;Kaikki;
}
'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;
filter2$JaeID <- jaeid
'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 (length(filter2) == 0) filter2 <- NULL
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
 
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
if (jaelista) {
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
jakeet <- jaehakukone(
'KIDE-hanke';KIDE-hanke;
ident,
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
sivu = filter2$Sivu, # *list$non-existent returns NULL
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
versio = filter2$Versio,
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
jae = filter2$JaeID
'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ä;
if (nrow(jakeet) == 0) {
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
cat("Avainsanoissa listattuja jakeita ei löytynyt.\n")
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
} else {
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
colnames(jakeet)[colnames(jakeet) == "Result"] <- "Sisältö"
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
tagged <- NULL
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
if (nrow(tags) > 0) {
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
#tagged <- join(
name:version|description:Versio|type:text|default:nykyinen|
# jakeet[c("Versio", "Sivu", "Aihe", "JaeID")],
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
# tags[c("Versio", "Sivu", "JaeID", "Result")]
">
#)
library(OpasnetUtils)
#colnames(tagged)[colnames(tagged) == "Result"] <- "Avainsana"
library(plyr)
tagged <- tapply(tags$Result, tags[c("Versio", "Sivu", "JaeID")], paste, collapse = ", ")
objects.latest("Op_fi4325", "apufunktiot")
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)
)
}
}
}


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 026: 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 039: 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>
 
==== Relaation lisääminen ====


if (nrow(rel) == 0) {
'''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. '''
cat("Jakeelle ei löytynyt kysyttyjä relaatioita tietokannassa.\n")
<rcode label="Lisää relaatio" name="relaatio" embed=1 variables="
} else {
name:sivu1|description:Mikä on lähtöjakeen sivu?|type:selection|options:
related <- rel[
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
rel$Result %in% c(
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
"tukee tai on linjassa",
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
"vastustaa tai on ristiriidassa",
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
"on neutraali suhteessa",
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
"liittyy",
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
"edellyttää",
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
"sisältää",
'KIDE-hanke';KIDE-hanke;
"vaikuttaa",
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
"vaikuttaa taloudellisesti"
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
), ]
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
related$Result <- as.character(related$Result)
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
affected <- rel[
'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ä;
rel$Result %in% c(
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
"ehdotus ei ole antanut aihetta muutoksiin",
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
"ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun",
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
"ehdotus huomioitu ja liittyvää painotusta muutettu",
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
"ehdotus huomioitu ja uusi kohta lisätty"
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
), ]
name:jaeid1|description:Mikä on lähtöjakeen ID?|type:text|
affected$Result <- as.character(affected$Result)
name:version|description:Mikä on lähtöjakeen versio?|type:text|default:nykyinen|
affected$Result[affected$Result == "ehdotus ei ole antanut aihetta muutoksiin"] <- "Ei aihetta muutoksiin"
name:sivu2|description:Mikä on kohdejakeen sivu?|type:selection|options:
affected$Result[affected$Result == "ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun"] <- "Sisältyy valmiiksi"
'Sama';Sama kuin lähtöjakeella;
affected$Result[affected$Result == "ehdotus huomioitu ja liittyvää painotusta muutettu"] <- "Huomioitu painotuksella"
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
affected$Result[affected$Result == "ehdotus huomioitu ja uusi kohta lisätty"] <- "Huomioitu lisäyksellä"
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
related_out <- ddply(related, "Result", nrow)
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
colnames(related_out) <- c("Relaatio", "Lukumäärä")
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
affected_out <- ddply(affected, "Result", nrow)
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
colnames(affected_out) <- c("Sisällytys", "Lukumäärä")
'KIDE-hanke';KIDE-hanke;
}
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
 
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
if (nrow(related_out > 0)) {
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
ggplot(related_out, aes(x = Relaatio, y = Lukumäärä, fill = Relaatio)) +
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
geom_bar(stat = "identity") +
'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ä;
theme_grey(base_size = 24) +
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
ggtitle("Relaatioiden frekvenssit")# + facet_wrap(~Sivu)
'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(affected_out > 0)) {
name:jaeid2|description:Mikä on kohdejakeen ID?|type:text|
ggplot(affected_out, aes(x = Sisällytys, y = Lukumäärä, fill = Sisällytys)) +
name:relaatio|description:'''Kuinka lähtöjae liittyy kohdejakeeseen?'''|type:selection|options:
geom_bar(stat = "identity") +
' ';- Valitse -;
theme_grey(base_size = 24) +
'tukee tai on linjassa';tukee tai on linjassa;
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
'vastustaa tai on ristiriidassa';vastustaa tai on ristiriidassa;
ggtitle("Sisällytyksen frekvenssit")# + facet_wrap(~Sivu)
'on neutraali suhteessa';on neutraali suhteessa;
}
'liittyy';liittyy;
</rcode>
'edellyttää';edellyttää;
 
'sisältää';sisältää;
==Työkalut==
'vaikuttaa';vaikuttaa;
Aineiston työstämiseen tarkoittuja koodeja.
'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,
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;
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
Rivi 1 206: 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 268: 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)
filter <- list()
filter$Sivu1 <- sivu
filter$Versio <- version
filter$JaeID1 <- jaeid


out <- data.frame(
rel1 <- try_dl_rm(
Versio = version,
paste(ident, "Relaatiot", sep = "."),  
Sivu = sivu,
filter = filter,  
Aika = date(),  
rm_id = paste(ident, "Relaationpoistot", sep = "."),
Käyttäjä = wiki_username,
rm_ind = "RelaatioID"
Syy = syy,
Result = as.character(jaeid)
)
 
opbase.upload(
out,  
who = wiki_username,  
name = pagename,
subset = "Jakeenpoistot",
act_type = "append",  
language = "fin"
)
)
</rcode>
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               
Peruskunto                  Pilvipalvelut                Polttoaine                  Posti                     
Puelueettomuus              Pysäköinti                  Pyöräily                    Päivitys                   
Pääkaupunkiseutu            Päästöt                      Päätöksenteko                Päätös                     
Raha                        Rahoitus                    Rahtliikenne                Rajapinnat                 
Rakennemuutos                Rakentaminen                Raskas liikenne              Rautatiet                 
Riippuvuus                  Rikokset                    Robotisaatio                Ruuhkamaksu               
Ruuhkautuminen              Saatavuus                    Sateliittipaikannus          Sovellukset               
Strategia                    Suunnittelu                  Sähkö                        Sähköauto                 
Sääntely                    Säästöt                      Talous                      Talouskasvu               
Tarpeet                      Tasa-arvo                    Tasapuolisuus                Tasavertaisuus             
Tavaraliikenne              Tehokkuus                    Tekijänoikeus                Tekniikkaneutraalius       
Tekninen tuki                Teknologia                  Teknologianeutraalius        Teollisuus                 
Terveydenhuolto              Terveys                      testi                        Tiedon avoimuus           
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                       
}}


==== Avainsanan poisto ====
<rcode label="Näytä tilastoja/jakeita" name="jae_stats" embed=1 graphics=1 variables="
 
name:sivu|description:Minkä sivun jakeita haluat tarkastella?|type:selection|options:
'''Merkitsee avainsanan epäkelvoksi, jolloin tämän sivun hakukoneet eivät näytä sitä.'''
NULL;Kaikki;
<rcode name="avainsananpoisto" embed=1 label="Poista avainsana" showcode=0 variables="
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
name:avid|description:Poistettavan avainsanan ID (pilkulla eroteltuna useampia)|type:text|
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
name:version|description:Mikä versio on kyseessä?|type:text|default:nykyinen|
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
name:syy|description:Poiston syy|type:selection|options:
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
' ';- Valitse syy -;
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
'Avainsana ei päde uudessa versiossa';Avainsana ei päde uudessa versiossa;
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
'Virheellinen avainsana';Virheellinen avainsana|
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
'KIDE-hanke';KIDE-hanke;
name:pagename|type:hidden|default:'{{PAGENAME}}'
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
">
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
library(OpasnetUtils)
'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)


avid <- strsplit(avid, ",", fixed = TRUE)[[1]]
filter <- list()
avid <- gsub(" ", "", avid)
if (nchar(gsub(" ", "", avainsanat)) > 0) {
 
avainsanat <- strsplit(avainsanat, ",")[[1]]
if (tolower(version) == "nykyinen") {
avainsanat <- gsub("^\\s*|\\s*$", "", avainsanat)
objects.latest("Op_fi4325", "apufunktiot")
version <- get_current_version(ident)
} else {
} else {
version <- as.numeric(version)
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]])
 
a <- tolower(version) == "nykyinen"
if (any(a)) {
version <- version[!a]
version <- c(version, get_current_version(ident))
}
}
version <- as.numeric(version)
filter$Versio <- version


dat <- data.frame(
if (length(filter) == 0) filter <- NULL
Versio = version,
Aika = date(),
Käyttäjä = wiki_username,
Syy = syy,
Result = avid
)


opbase.upload(
tags <- try_dl_rm(
dat,  
paste(ident, "Avainsanat", sep = "."),  
ident = ident,  
filter = filter,  
name = pagename,  
rm_id = paste(ident, "Avainsananpoistot", sep = "."),
subset = "Avainsananpoistot",  
rm_ind = "AvainsanaID"
act_type = "append",  
language = "fin",
who = wiki_username
)
)


cat("Avainsana poistettiin onnistuneesti.\n")
jaeid <- NULL
</rcode>


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


===Relaatiot===
if(!is.null(avainsanat_all)) {
temp <- list()
for (i in 1:nrow(jaeid)) {
temp[[i]] <- avainsanat_all %in% tags$Result[tags$JaeID == jaeid[i]]
}
temp <- lapply(temp, all)
jaeid <- jaeid[temp]
tags <- tags[tags$JaeID %in% jaeid,]
}


==== Relaatiohakukone ====
if (nrow(tags) == 0) {
cat("Avainsanoja ei löytynyt.\n")
}
 
if (is.null(filter)) {
filter2 <- list()
} else {
filter2 <- filter
}
 
filter2$JaeID <- jaeid
 
if (length(filter2) == 0) filter2 <- NULL


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


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


filter <- list()
# Add previous and next versions to check for inclusion from previous and into next
filter$Sivu1 <- sivu
original_version <- version
filter$Versio <- version
if (!(1 %in% version)) {
filter$JaeID1 <- jaeid
prev <- TRUE
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 = filter,  
filter = filter3,  
rm_id = paste(ident, "Relaationpoistot", sep = "."),
rm_id = paste(ident, "Relaationpoistot", sep = "."),
rm_ind = "RelaatioID"
rm_ind = "RelaatioID"
Rivi 1 569: Rivi 1 704:
rel2 <- data.frame()
rel2 <- data.frame()
} else {
} else {
filter$JaeID1 <- NULL
filter3$JaeID1 <- NULL
filter$Sivu1 <- NULL
filter3$Sivu1 <- NULL
filter$JaeID2 <- jaeid
filter3$JaeID2 <- jaeid
filter$Sivu2 <- sivu
filter3$Sivu2 <- sivu
rel2 <- try_dl_rm(
rel2 <- try_dl_rm(
paste(ident, "Relaatiot", sep = "."),  
paste(ident, "Relaatiot", sep = "."),  
filter = filter,  
filter = filter3,  
rm_id = paste(ident, "Relaationpoistot", sep = "."),
rm_id = paste(ident, "Relaationpoistot", sep = "."),
rm_ind = "RelaatioID"
rm_ind = "RelaatioID"
Rivi 1 582: Rivi 1 717:
}
}


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


if (nrow(out) > 0) {
if (!any(original_version %in% rel$Versio)) stop("Annetuilla versiolla ei löytynyt relaatioita.")
oprint(
 
out,
if (nrow(rel) == 0) {
include.rownames = FALSE,
cat("Jakeelle ei löytynyt kysyttyjä relaatioita tietokannassa.\n")
caption = "Relaatiot",
caption.placement = "top"
)
} else {
} else {
cat("Relaatioita ei löytynyt!\n")
related <- rel[
}
rel$Result %in% c(
 
"tukee tai on linjassa",
</rcode>
"vastustaa tai on ristiriidassa",
 
"on neutraali suhteessa",
==== Relaation lisääminen ====
"liittyy",
 
"edellyttää",
'''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. '''
"sisältää",
<rcode label="Lisää relaatio" name="relaatio" embed=1 variables="
"vaikuttaa",
name:sivu1|description:Mikä on lähtöjakeen sivu?|type:selection|options:
"vaikuttaa taloudellisesti"
'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;
related$Result <- as.character(related$Result)
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
affected <- rel[
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
rel$Result %in% c(
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
"ehdotus ei ole antanut aihetta muutoksiin",
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
"ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun",  
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
"ehdotus huomioitu ja liittyvää painotusta muutettu",
'KIDE-hanke';KIDE-hanke;
"ehdotus huomioitu ja uusi kohta lisätty"
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
), ]
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
affected$Result <- as.character(affected$Result)
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
affected$Result[affected$Result == "ehdotus ei ole antanut aihetta muutoksiin"] <- "Ei aihetta muutoksiin"
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
affected$Result[affected$Result == "ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun"] <- "Sisältyy valmiiksi"
'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ä;
affected$Result[affected$Result == "ehdotus huomioitu ja liittyvää painotusta muutettu"] <- "Huomioitu painotuksella"
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
affected$Result[affected$Result == "ehdotus huomioitu ja uusi kohta lisätty"] <- "Huomioitu lisäyksellä"
'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_out <- ddply(related, "Result", nrow)
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
colnames(related_out) <- c("Relaatio", "Lukumäärä")
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
name:jaeid1|description:Mikä on lähtöjakeen ID?|type:text|
affected_out <- ddply(affected, "Result", nrow)
name:version|description:Mikä on lähtöjakeen versio?|type:text|default:nykyinen|
colnames(affected_out) <- c("Sisällytys", "Lukumäärä")
name:sivu2|description:Mikä on kohdejakeen sivu?|type:selection|options:
}
'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;
if (nrow(related_out > 0)) {
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
ggplot(related_out, aes(x = Relaatio, y = Lukumäärä, fill = Relaatio)) +
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
geom_bar(stat = "identity") +
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
theme_grey(base_size = 24) +
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
ggtitle("Relaatioiden frekvenssit")# + facet_wrap(~Sivu)
'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:jaeid2|description:Mikä on kohdejakeen ID?|type:text|
name:relaatio|description:'''Kuinka lähtöjae liittyy kohdejakeeseen?'''|type:selection|options:
' ';- Valitse -;
'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: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!")
 
library(OpasnetUtils)
objects.latest("Op_fi4325", "apufunktiot")
 
jaeid1 <- strsplit(jaeid1, ",", fixed = TRUE)[[1]]
jaeid1 <- gsub(" ", "", jaeid1)
jaeid2 <- strsplit(jaeid2, ",", fixed = TRUE)[[1]]
jaeid2 <- gsub(" ", "", jaeid2)
 
if (tolower(version) == "nykyinen") {
version <- get_current_version(ident)
} else {
version <- as.numeric(version)
}
 
if(sivu2 == "Sama") sivu2 <- sivu1
 
ident.subset <- paste(ident, "Relaatiot", sep = ".")
 
filter <- list()
filter$Versio <- version
 
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")
if (nrow(affected_out > 0)) {
 
ggplot(affected_out, aes(x = Sisällytys, y = Lukumäärä, fill = Sisällytys)) +
</rcode>
geom_bar(stat = "identity") +
 
theme_grey(base_size = 24) +
==== Relaation poisto ====
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
 
ggtitle("Sisällytyksen frekvenssit")# + facet_wrap(~Sivu)
'''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