Ero sivun ”Strategiadatan analyysi” versioiden välillä

Opasnet Suomista
Siirry navigaatioon Siirry hakuun
(→‎Jae-relaatio-jae listaus: muutettu relaatiolistausta)
(merkitty meneillään olevaksi arvioinniksi)
 
(18 välissä olevaa versiota 2 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
{{arviointi}}
{{arviointi|status=Meneillään oleva arviointi}}


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


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


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


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


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


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




=== Lisää tähän omia ehdotuksia relaatioiksi ===
=== Lisää tähän omia ehdotuksia relaatioiksi ===


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




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


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


==Yhdistelmähakukoneet==


=== Jaekohtainen avainsanalistaus ===
 
'''Hakee jakeita ja näyttää kaikki niihin liittyvät avainsanat'''
==Työkalut==
<rcode label="Hae" name="avainsanat_disp" embed=1 variables="
 
Aineiston työstämiseen tarkoittuja koodeja.
 
 
=== Jakeet ===
 
==== Jaehakukone ====
 
'''Hakee jakeita annetuilla kriteereillä. Näyttää myös tekniset sarakkeet. Vapaakenttiin voi laittaa useita arvoja erottelemalla ne pilkuilla.'''
<rcode label="Näytä jakeet" name="jakeet" embed=0 variables="
name:sivu|description:Sivu jolta jakeita haetaan|type:selection|options:
name:sivu|description:Sivu jolta jakeita haetaan|type:selection|options:
NULL;Kaikilta;
NULL;Kaikilta;
Rivi 515: 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 539: Rivi 566:
out <- jaehakukone(ident, sivu = sivu, versio = version, jae = jaeid)
out <- jaehakukone(ident, sivu = sivu, versio = version, jae = jaeid)


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


if (nrow(tags) > 0) {
# Erottelu pilkuilla ja välilyöntien poisto
tags_out <- ddply(tags, "Result", nrow)
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
colnames(tags_out) <- c("Avainsana", "Lukumäärä")
if (tolower(jaeid == "hae kaikki")) {
tags_out <- tags_out[order(tags_out$Lukumäärä, decreasing = TRUE),]
jaeid <- NULL
oprint(
} else {
tags_out,
jaeid <- gsub("^\\s*|\\s*$", "", strsplit(jaeid, ",")[[1]])
caption = "Avainsanojen lukumäärät",
caption.placement = "top",
include.rownames = FALSE,
digits = c(0, 0, 0)
)
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 <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])
# Add previous and next versions to check for inclusion from previous and into next
a <- tolower(version) == "nykyinen"
original_version <- version
if (any(a)) {
if (!(1 %in% version)) {
version <- version[!a]
prev <- TRUE
version <- c(version, get_current_version(ident))
version <- c(min(version, na.rm = TRUE) - 1, version)
}
}
version <- c(version, max(version, na.rm = TRUE) + 1)
version <- as.numeric(version)


filter3 <- list()
filter <- list()
filter3$Sivu1 <- sivu
filter$Sivu1 <- sivu
filter3$Versio <- version
filter$Versio <- version
filter3$JaeID1 <- jaeid
filter$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 022: 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 035: 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(
if (nrow(rel) == 0) {
out,
cat("Jakeelle ei löytynyt kysyttyjä relaatioita tietokannassa.\n")
include.rownames = FALSE,
caption = "Relaatiot",
caption.placement = "top"
)
} else {
} else {
related <- rel[
cat("Relaatioita ei löytynyt!\n")
rel$Result %in% c(
"on neutraali suhteessa",
"on uusi linjaus tai painotus",
"tukee tai on linjassa",
"vastustaa tai on ristiriidassa"
), ]
related$Result <- as.character(related$Result)
affected <- rel[
rel$Result %in% c(
"ehdotus ei ole antanut aihetta muutoksiin",
"ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun",
"ehdotus huomioitu ja liittyvää painotusta muutettu",
"ehdotus huomioitu ja uusi kohta lisätty"
), ]
affected$Result <- as.character(affected$Result)
affected$Result[affected$Result == "ehdotus ei ole antanut aihetta muutoksiin"] <- "Ei aihetta muutoksiin"
affected$Result[affected$Result == "ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun"] <- "Sisältyy valmiiksi"
affected$Result[affected$Result == "ehdotus huomioitu ja liittyvää painotusta muutettu"] <- "Huomioitu painotuksella"
affected$Result[affected$Result == "ehdotus huomioitu ja uusi kohta lisätty"] <- "Huomioitu lisäyksellä"
related_out <- ddply(related, "Result", nrow)
colnames(related_out) <- c("Relaatio", "Lukumäärä")
affected_out <- ddply(affected, "Result", nrow)
colnames(affected_out) <- c("Sisällytys", "Lukumäärä")
}
}


if (nrow(related_out > 0)) {
</rcode>
ggplot(related_out, aes(x = Relaatio, y = Lukumäärä, fill = Relaatio)) +
geom_bar(stat = "identity") +
theme_grey(base_size = 24) +
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
ggtitle("Relaatioiden frekvenssit")# + facet_wrap(~Sivu)
}


if (nrow(affected_out > 0)) {
==== Relaation lisääminen ====
ggplot(affected_out, aes(x = Sisällytys, y = Lukumäärä, fill = Sisällytys)) +
geom_bar(stat = "identity") +
theme_grey(base_size = 24) +
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
ggtitle("Sisällytyksen frekvenssit")# + facet_wrap(~Sivu)
}
</rcode>


==Työkalut==
'''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. '''
Aineiston työstämiseen tarkoittuja koodeja.
<rcode label="Lisää relaatio" name="relaatio" embed=1 variables="
=== Jakeet ===
name:sivu1|description:Mikä on lähtöjakeen sivu?|type:selection|options:
==== Jaehakukone ====
'''Hakee jakeita annetuilla kriteereillä. Näyttää myös tekniset sarakkeet. Vapaakenttiin voi laittaa useita arvoja erottelemalla ne pilkuilla.'''
<rcode label="Näytä jakeet" name="jakeet" embed=0 variables="
name:sivu|description:Sivu jolta jakeita haetaan|type:selection|options:
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 113: Rivi 1 036:
'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:jaeid1|description:Mikä on lähtöjakeen ID?|type:text|
name:version|description:Versio|type:text|default:nykyinen|
name:version|description:Mikä on lähtöjakeen versio?|type:text|default:nykyinen|
name:tuotos|description:Missä muodossa tulostetaan?|type:selection|options:'Numeroitu teksti';Numeroitu teksti;'Taulukko';Taulukko|default:'Numeroitu teksti'|
name:sivu2|description:Mikä on kohdejakeen sivu?|type:selection|options:
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
'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;
library(OpasnetUtils)
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
library(plyr)
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
objects.latest("Op_fi4325", "apufunktiot")
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
 
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
# Erottelu pilkuilla ja välilyöntien poisto
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
if (tolower(jaeid == "hae kaikki")) {
'KIDE-hanke';KIDE-hanke;
jaeid <- NULL
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
} else {
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
jaeid <- gsub("^\\s*|\\s*$", "", strsplit(jaeid, ",")[[1]])
'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;
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])
'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!")


a <- tolower(version) == "nykyinen"
library(OpasnetUtils)
if (any(a)) {
objects.latest("Op_fi4325", "apufunktiot")
version <- version[!a]
 
version <- c(version, get_current_version(ident))
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)
}
}
version <- as.numeric(version)


out <- jaehakukone(ident, sivu = sivu, versio = version, jae = jaeid)
if(sivu2 == "Sama") sivu2 <- sivu1


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


outs <- ""
filter <- list()
for(i in 1:nrow(out)) {
filter$Versio <- version
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>


==== Jakeenlisäyskone ====
dat <- data.frame(
'''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.'''
RelaatioID = NA,
<rcode label="Lisää jae" name="jakeenlisays" embed=1 variables="
Versio = version,
name:sivu|description:Sivu jolle jae lisätään|type:selection|options:
Aika = date(),
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
Käyttäjä = wiki_username,
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
Sivu1 = sivu1,
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
JaeID1 = jaeid1,
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
Sivu2 = sivu2,
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
JaeID2 = jaeid2,
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
Result = relaatio
'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;
upload_with_autoid(
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
dat,
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
ident.subset,
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
id_name = "RelaatioID",
'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ä;
pagename = pagename,
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
filter = filter
'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);
cat("Relaation lisääminen onnistui.\n")
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
 
name:version|description:Versio|type:text|default:nykyinen|
</rcode>
name:sisalto|description:Jakeen sisältö|type:textbox|
 
==== Relaation poisto ====
 
'''Merkitsee relaation/sisällytyksen epäkelvoksi, jolloin tämän sivun hakukoneet eivät näytä sitä.'''
<rcode name="relaationpoisto" embed=1 label="Poista relaatio" showcode=0 variables="
name:relid|description:Poistettavan relaation ID (pilkulla eroteltuna useampia)|type:text|
name:version|description:Mikä versio on kyseessä?|type:text|default:nykyinen|
name:syy|description:Poiston syy|type:selection|options:
' ';- Valitse syy -;
'Relaatio ei päde uudessa versiossa';Relaatio ei päde uudessa versiossa;
'Virheellinen relaatio';Virheellinen relaatio|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
name:pagename|type:hidden|default:'{{PAGENAME}}'
name:pagename|type:hidden|default:'{{PAGENAME}}'
">
">
library(OpasnetUtils)
library(OpasnetUtils)
objects.latest("Op_fi4325", "apufunktiot")
 
relid <- strsplit(relid, ",", fixed = TRUE)[[1]]
relid <- gsub(" ", "", relid)


if (tolower(version) == "nykyinen") {
if (tolower(version) == "nykyinen") {
objects.latest("Op_fi4325", "apufunktiot")
version <- get_current_version(ident)
version <- get_current_version(ident)
} else {
} else {
Rivi 1 208: Rivi 1 146:
}
}


out <- data.frame(  
dat <- data.frame(
Versio = version,
Versio = version,
Sivu = sivu, 
Aika = date(),  
Aika = date(),  
Käyttäjä = wiki_username,
Käyttäjä = wiki_username,
Syy = syy,  
JaeID = NA,
Result = relid
Result = sisalto
)
)


ident.subset <- paste(ident, "Jakeenlisaykset", sep = ".")
opbase.upload(
dat,
ident = ident,  
name = pagename,
subset = "Relaationpoistot",
act_type = "append",  
language = "fin",
who = wiki_username
)


filter <- list()
cat("Relaatio poistettiin onnistuneesti.\n")
filter$Versio <- version
</rcode>
filter$Sivu <- sivu
 
 
 
== Rikastetun aineiston analysointi - Yhdistelmähakukoneet ==


upload_with_autoid(
=== Jaekohtainen avainsanalistaus ===
out,
ident.subset,
id_name = "JaeID",
pagename = pagename,
prefix = "L",
filter = filter
)
</rcode>


==== Jakeenpoistokone ====
'''Hakee jakeita ja näyttää kaikki niihin liittyvät avainsanat'''
'''Merkitsee jakeen epäkelvoksi, jolloin se jätetään näyttämättä kaikissa tämän sivun hakukoneissa.'''
<rcode label="Hae" name="avainsanat_disp" embed=1 variables="
<rcode label="Poista jae" name="jakeenpoisto" embed=1 variables="
name:sivu|description:Sivu jolta jakeita haetaan|type:selection|options:
name:sivu|description:Poistettavan jakeen sivu|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 255: 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:Poistettavan jakeen ID (pilkulla eroteltuna useampia)|type:text|
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:syy|description:Poiston syy|type:selection|options:
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
' ';- Valitse syy -;
'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)
library(OpasnetUtils)
library(plyr)
objects.latest("Op_fi4325", "apufunktiot")


jaeid <- strsplit(jaeid, ",", fixed = TRUE)[[1]]
# Erottelu pilkuilla ja välilyöntien poisto
jaeid <- gsub(" ", "", jaeid)
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
 
if (tolower(jaeid == "hae kaikki")) {
if (sum(nchar(jaeid)) == 0) stop("Anna jakeen ID")
jaeid <- NULL
 
if (tolower(version) == "nykyinen") {
objects.latest("Op_fi4325", "apufunktiot")
version <- get_current_version(ident)
} else {
} else {
version <- as.numeric(version)
jaeid <- gsub("^\\s*|\\s*$", "", strsplit(jaeid, ",")[[1]])
}
}
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])


out <- data.frame(
a <- tolower(version) == "nykyinen"
Versio = version,
if (any(a)) {
Sivu = sivu,  
version <- version[!a]
Aika = date(),  
version <- c(version, get_current_version(ident))
Käyttäjä = wiki_username,
}
Syy = syy,  
version <- as.numeric(version)
Result = as.character(jaeid)
 
)
out <- jaehakukone(ident, sivu = sivu, versio = version, jae = jaeid)


opbase.upload(
if (nrow(out) == 0) {
out,
stop("Jakeita ei löytynyt!")
who = wiki_username,
}
name = pagename,
subset = "Jakeenpoistot",
act_type = "append",
language = "fin"
)
</rcode>


=== Avainsanat ===
filter <- list()
==== Avainsanahakukone ====
filter$Sivu <- sivu
'''Hakee jaekohtaisia avainsanoja. Näyttää datan sellaisena kuin se on tietokannassa.'''
filter$Versio <- version
<rcode label="Näytä avainsanat" name="avainsanat_display" embed=1 variables="
filter$JaeID <- jaeid
name:sivu|description:Sivu jonka avainsanoja haetaan|type:selection|options:
 
NULL;Kaikki;
tags <- try_dl_rm(
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
paste(ident, "Avainsanat", sep = "."),
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
filter = filter,
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
rm_id = paste(ident, "Avainsananpoistot", sep = "."),
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
rm_ind = "AvainsanaID"
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
)
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
 
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
if (nrow(tags) == 0) {
'KIDE-hanke';KIDE-hanke;
cat("Avainsanoja ei löytynyt!\n")
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
} else {
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
# Yhdistetään kunkin jakeen avainsanat yhdelle riville
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
tags <- ddply(
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
tags,
'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ä;
c("Versio", "Sivu", "JaeID"),
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
function(x) {a <- x[1,];a$Avainsanat <- paste(x$Result, collapse = ", ");return(a)}
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
)
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
name:version|description:Versio|type:text|default:nykyinen|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
">
library(OpasnetUtils)
library(plyr)
objects.latest("Op_fi4325", "apufunktiot")


# Erottelu pilkuilla ja välilyöntien poisto
out <- join(
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
out[c("Versio", "Sivu", "JaeID", "Result")],
if (tolower(jaeid == "hae kaikki")) {
tags[c("Versio", "Sivu", "JaeID", "Avainsanat")],
jaeid <- NULL
by = c("Versio", "Sivu", "JaeID"),
} else {
type = "inner",
jaeid <- gsub("^\\s*|\\s*$", "", strsplit(jaeid, ",")[[1]])
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
)
}
}
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])
</rcode>
a <- tolower(version) == "nykyinen"
if (any(a)) {
version <- version[!a]
version <- c(version, get_current_version(ident))
}
version <- as.numeric(version)


filter <- list()
=== Jae-relaatio-jae listaus ===
filter$Sivu <- sivu
'''Hakee jakeita ja niihin liittyviä toisia jakeita listaten myös relaation tyypin'''
filter$Versio <- version
<rcode label="Hae" name="relaatiot_disp" embed=1 variables="
filter$JaeID <- jaeid
name:sivu|description:Sivu jolta relaatioita haetaan|type:selection|options:
 
NULL;Kaikilta;
out <- try_dl_rm(
paste(ident, "Avainsanat", sep = "."),
filter = filter,
rm_id = paste(ident, "Avainsananpoistot", sep = "."),
rm_ind = "AvainsanaID"
)
 
if (nrow(out) > 0) {
oprint(out, include.rownames = FALSE)
} else {
cat("Avainsanoja ei löytynyt!\n")
}
 
</rcode>
==== Avainsanoitus ====
'''Lisää annetut avainsanat tietokantaan. Avainanoja voidaan lisätä ruksaamalla annetusta listasta (vain yleisimmät) ja syöttämällä vapaakenttään pilkulla eroteltuna.'''
<rcode label="Lisää avainsana" name="avainsananlisays" embed=1 variables="
name:sivu|description:Minkä sivun jakeelle haluat lisätä avainsanoja?|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 1 386: 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:version|description:Mikä on jakeen versio?|type:text|default:nykyinen|
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
name:jae|description:Mikä on jakeen ID?|type:text|
name:liitsis|description:Liittymistyyppi (tyhjä = kaikki)|type:checkbox|options:
name:yl_avainsanat|description:Valitse alla olevasta listasta yleisiä avainsanoja.|type:checkbox|options:
'tukee tai on linjassa';tukee tai on linjassa;
'Päätös';A Päätös (jae sisältää päätös- tai toimintaehdotuksen);
'vastustaa tai on ristiriidassa';vastustaa tai on ristiriidassa;
'Vaikutus';B Vaikutus (jae kuvaa ilmiötä tai vaikutusta);
'on neutraali suhteessa';on neutraali suhteessa;
'Arvo';C Arvo (jakeessa on arvoarvostelma tai kuvaa asian merkitystä);
'liittyy';liittyy;
'Työn tekemiseen liittyvä';D Katsaustyön tekemiseen liittyvä;
'edellyttää';edellyttää;
'Epäselvä luokka';E Ei mikään edellisistä;
'sisältää';sisältää;
'Tavoite';F Tavoite;
'vaikuttaa';vaikuttaa;
'Toimenpide';G Toimenpide|
'vaikuttaa taloudellisesti';vaikuttaa taloudellisesti|
name:avainsanat|description:Laita halutessasi yllä listaamattomattomia avainsanoja tähän pilkulla eroteltuna.|type:text|
name:version|description:Versio|type:text|default:nykyinen|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
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:pagename|type:hidden|default:'{{PAGENAME}}'
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
">
">
avainsanat <- strsplit(avainsanat, ",", fixed = TRUE)[[1]]
# Eri sisältymistyypit pitää määritellä niin että ne voidaan käsitellä erillään muista relaatioista
avainsanat <- gsub("^\\s*|\\s*$", "", avainsanat)
sis_opt <- c(
avainsanat <- avainsanat[nchar(avainsanat) > 0]
'ehdotus huomioitu ja liittyvää painotusta muutettu',
avainsanat <- c(yl_avainsanat, avainsanat)
'ehdotus huomioitu ja uusi kohta lisätty',
if (length(avainsanat) == 0) stop("Yhtään avainsanaa ei annettu!")
'ehdotus ei ole antanut aihetta muutoksiin',  
 
'ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun'
)
#liit_opt <- c(
# 'tukee tai on linjassa',
# 'vastustaa tai on ristiriidassa',
# 'on neutraali suhteessa',
# 'on uusi linjaus tai painotus'
#)
library(OpasnetUtils)
library(OpasnetUtils)
library(plyr)
objects.latest("Op_fi4325", "apufunktiot")
objects.latest("Op_fi4325", "apufunktiot")


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]])
dat <- data.frame(
a <- tolower(version) == "nykyinen"
AvainsanaID = NA,  
if (any(a)) {
Versio = version,
version <- version[!a]
Aika = date(),
version <- c(version, get_current_version(ident))
Käyttäjä = wiki_username,
}
Sivu = sivu,
version <- as.numeric(version)
JaeID = as.character(jae),
# Add previous and next versions to check for inclusion from previous and into next
Result = avainsanat
original_version <- version
)
if (!(1 %in% version)) {
 
prev <- TRUE
ident.subset <- paste(ident, "Avainsanat", sep = ".")
version <- c(min(version, na.rm = TRUE) - 1, version)
}
version <- c(version, max(version, na.rm = TRUE) + 1)


filter <- list()
filter <- list()
filter$Sivu1 <- sivu
filter$Versio <- version
filter$Versio <- version
filter$JaeID1 <- jaeid


upload_with_autoid(
rel1 <- try_dl_rm(
dat,
paste(ident, "Relaatiot", sep = "."),  
ident.subset,
filter = filter,  
id_name = "AvainsanaID",
rm_id = paste(ident, "Relaationpoistot", sep = "."),
pagename = pagename,
rm_ind = "RelaatioID"
filter = filter
)
)
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)
if (!any(original_version %in% rel$Versio)) stop("Annetuilla versiolla ei löytynyt relaatioita.")


cat("Avainsanojen lisääminen onnistui.\n")
if (!is.null(liitsis)) rel <- rel[rel$Result %in% liitsis, ]
</rcode>


==== Avainsanan poisto ====
if (nrow(rel) == 0) {
'''Merkitsee avainsanan epäkelvoksi, jolloin tämän sivun hakukoneet eivät näytä sitä.'''
cat("Jakeelle ei löytynyt kysyttyjä relaatioita tietokannassa.\n")
<rcode name="avainsananpoisto" embed=1 label="Poista avainsana" showcode=0 variables="
name:avid|description:Poistettavan avainsanan 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 -;
'Avainsana ei päde uudessa versiossa';Avainsana ei päde uudessa versiossa;
'Virheellinen avainsana';Virheellinen avainsana|
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
name:pagename|type:hidden|default:'{{PAGENAME}}'
">
library(OpasnetUtils)
 
avid <- strsplit(avid, ",", fixed = TRUE)[[1]]
avid <- gsub(" ", "", avid)
 
if (tolower(version) == "nykyinen") {
objects.latest("Op_fi4325", "apufunktiot")
version <- get_current_version(ident)
} else {
} else {
version <- as.numeric(version)
jakeet <- jaehakukone(
}
ident,
 
sivu = unique(c(
dat <- data.frame(
as.character(rel$Sivu1),
Versio = version,
as.character(rel$Sivu2)
Aika = date(),  
)),
Käyttäjä = wiki_username,
versio = version,  
Syy = syy,
jae = unique(c(
Result = avid
as.character(rel$JaeID1),  
)
as.character(rel$JaeID2)
 
))
opbase.upload(
)
dat,
if (nrow(jakeet) == 0) stop("Relaatioissa listattuja jakeita ei löytynyt!")
ident = ident,
name = pagename,  
# Relaatiot
subset = "Avainsananpoistot",  
if (nrow(rel[!(rel$Relaatio %in% sis_opt),]) > 0) {
act_type = "append",  
jakeet <- jakeet[c("Versio", "Sivu", "JaeID", "Result")]
language = "fin",
colnames(jakeet)[colnames(jakeet) == "JaeID"] <- "JaeID1"
who = wiki_username
colnames(jakeet)[colnames(jakeet) == "Sivu"] <- "Sivu1"
)
colnames(jakeet)[colnames(jakeet) == "Result"] <- "Jae1"
 
rel <- rel[c("RelaatioID", "Versio", "Sivu1", "JaeID1", "Result", "Sivu2", "JaeID2")]
cat("Avainsana poistettiin onnistuneesti.\n")
colnames(rel)[colnames(rel) == "Result"] <- "Relaatio"
</rcode>
out <- join(
 
rel[(!(rel$Relaatio %in% sis_opt)) & rel$Versio %in% original_version,],
===Relaatiot===
jakeet,
'''Hakee relaatioita joissa mahdollisesti annetut jakeet esiintyvät. Näyttää datan sellaisena kuin se on tietokannassa.'''
match = "first" # versio - sivu - jaeid -> yksi yhteen
<rcode label="Näytä relaatiot" name="relaatiot_display" embed=1 variables="
)
name:sivu|description:Sivu jonka relaatioita haetaan|type:selection|options:
NULL;Kaikki;
colnames(jakeet)[colnames(jakeet) == "JaeID1"] <- "JaeID2"
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
colnames(jakeet)[colnames(jakeet) == "Sivu1"] <- "Sivu2"
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
colnames(jakeet)[colnames(jakeet) == "Jae1"] <- "Jae2"
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
out <- join(out, jakeet, match = "first")
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
if(details) {
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
oprint(
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
out[c("Versio", "RelaatioID", "Sivu1", "JaeID1", "Jae1", "Relaatio", "Sivu2", "JaeID2", "Jae2")],
'KIDE-hanke';KIDE-hanke;
include.rownames = FALSE,
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
caption = "Relaatiot",  
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
caption.placement = "top",
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
show_all = TRUE
'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ä;
} else {
'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;
temp <- out[c("Versio", "RelaatioID", "Sivu1", "JaeID1", "Jae1", "Relaatio", "Sivu2", "JaeID2", "Jae2")]
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
temp <- data.frame(
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
Jae1 = paste(temp$Jae1, " (", temp$Sivu1, ")", sep = ""),
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
Relaatio = temp$Relaatio,
name:jaeid|description:Anna halutessasi jakeen ID(:t)|type:text|default:hae kaikki|
Jae2 = paste(temp$Jae2, " (", temp$Sivu2, ")", sep = "")
name:version|description:Versio|type:text|default:nykyinen|
)
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
oprint(temp,  
">
include.rownames = FALSE,  
library(OpasnetUtils)
caption = "Relaatiot",  
library(plyr)
caption.placement = "top",
objects.latest("Op_fi4325", "apufunktiot")
show_all = TRUE
 
)
# Erottelu pilkuilla ja välilyöntien poisto
if (!is.null(sivu)) sivu <- gsub("^\\s*|\\s*$", "", strsplit(sivu, ",")[[1]])
if (tolower(jaeid == "hae kaikki")) {
jaeid <- NULL
} else {
jaeid <- gsub("^\\s*|\\s*$", "", strsplit(jaeid, ",")[[1]])
}
}
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])
} else {
a <- tolower(version) == "nykyinen"
cat("Ei relaatioita!\n")
if (any(a)) {
}
version <- version[!a]
version <- c(version, get_current_version(ident))
}
version <- as.numeric(version)
 
filter <- list()
filter$Sivu1 <- sivu
filter$Versio <- version
filter$JaeID1 <- jaeid
 
rel1 <- try_dl_rm(
paste(ident, "Relaatiot", sep = "."),
filter = filter,
rm_id = paste(ident, "Relaationpoistot", sep = "."),
rm_ind = "RelaatioID"
)
if (is.null(jaeid)) {
rel2 <- data.frame()
} else {
filter$JaeID1 <- NULL
filter$Sivu1 <- NULL
filter$JaeID2 <- jaeid
filter$Sivu2 <- sivu
rel2 <- try_dl_rm(
# Sisällytykset
paste(ident, "Relaatiot", sep = "."),
if (nrow(rel[(rel$Relaatio %in% sis_opt),]) > 0) {
filter = filter,  
colnames(jakeet)[colnames(jakeet) %in% c("JaeID","JaeID2")] <- "JaeID1"
rm_id = paste(ident, "Relaationpoistot", sep = "."),
colnames(jakeet)[colnames(jakeet) %in% c("Sivu", "Sivu2")] <- "Sivu1"
rm_ind = "RelaatioID"
colnames(jakeet)[colnames(jakeet) %in% c("Result", "Jae2")] <- "Jae1"
)
colnames(rel)[colnames(rel) == "Relaatio"] <- "Sisällytys"
}
out <- join(
 
rel[rel$Sisällytys %in% sis_opt & rel$Versio %in% version[-length(version)],],  
out <- rbind(rel1, rel2)
jakeet,
 
match = "first" # versio - sivu - jaeid -> yksi yhteen
if (nrow(out) > 0) {
)
oprint(
out,  
colnames(jakeet)[colnames(jakeet) == "JaeID1"] <- "JaeID2"
include.rownames = FALSE,
colnames(jakeet)[colnames(jakeet) == "Sivu1"] <- "Sivu2"
caption = "Relaatiot",  
colnames(jakeet)[colnames(jakeet) == "Jae1"] <- "Jae2"
caption.placement = "top"
jakeet$Versio <- as.numeric(as.character(jakeet$Versio)) - 1
)
out <- join(out, jakeet, match = "first")
} else {
cat("Relaatioita ei löytynyt!\n")
oprint(
out[c("Versio", "RelaatioID", "Sivu1", "JaeID1", "Jae1", "Sisällytys", "Sivu2", "JaeID2", "Jae2")],  
include.rownames = FALSE,  
caption = "Sisällytys (uudempaan versioon)",  
caption.placement = "top",
show_all = TRUE
)
} else {
cat("Ei sisällytyksiä!\n")
}
}
}
</rcode>
=== Avainsana- ja relaatiotietojen analyysi ===


</rcode>
'''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.'''


==== Relaation lisääminen ====
Käytetyt avainsanat:
'''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. '''
{{piilotettu|
<rcode label="Lisää relaatio" name="relaatio" embed=1 variables="
3D-tulostus                  Aikataulut                  Ajoneuvokanta                Alueellisuus               
name:sivu1|description:Mikä on lähtöjakeen sivu?|type:selection|options:
alustus                      Ammattiryhmät                Arvo                        Asutus                     
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
Aurinko                      Automatisaatio              Avoimuus                    Big Data                   
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
Biopolttoaine                Dataliikenne                Digitalisoituminen          Eettisyys                 
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
eIDAS                        Elintaso                    Energia                      Epäselvä luokka           
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
Eriarvoisuus                Erityisryhmät                Esineiden internet          Globaalius                 
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
Globaaluis                  Henkilökortti                Henkilötiedot                Huutokauppa               
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
Hybridi                      Hybridi-TV                  Hyvinvointi                  Hyvinvointiyhteiskunta     
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
Häiriöt                      Ilmasto                      Infrastruktuuri              Innovatiivisus             
'KIDE-hanke';KIDE-hanke;
Innovatiivisuus              Internet                    Investoinnit                Joukkoliikenne             
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
Joustavuus                  Julkinen valta              Kaivosteollisuus            Kansainvälisyys           
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
Kasvihuonekaasut            Kaupallisuus                Kaupungit                    Kehitys                   
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
Kestävyys                    Kevyen liikenteen väylät    Kevytliikenne                Kiinteistöt               
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
Kilpailu                    Kilpailukyky                Konesalit                    Konkreettisuus             
'Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä';Valtioneuvoston periaatepäätös julkisen sektorin digitaalisten tietoaineistojen saatavuuden parantamisesta ja uudelleenkäytön edistämisestä;
Kotimaisuus                  Koulutus                    Kunnat                      Kustannustehokkuus         
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
Kuuluvuus                    Kävely                      Laajakaista                  Lainsäädäntö               
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
Laiton tarjonta              Langattomuus                Lappi                        Lentoliikenne             
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
Liikenne                    Liikenneverkostot            Liikkumistili                Linja-autot               
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
Logistiikka                  Luonnonsuojelu              Lämmitys                    Maakaasu                   
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
Maatalous                    Mainonta                    Markkinat                    Massavalvonta             
name:jaeid1|description:Mikä on lähtöjakeen ID?|type:text|
Meriliikenne                Metadata                    Mobiiliverkko                Mopot                     
name:version|description:Mikä on lähtöjakeen versio?|type:text|default:nykyinen|
Nopeus                      Ohjaus                      Ohjelmistot                  Ohjelmistotoimittaja       
name:sivu2|description:Mikä on kohdejakeen sivu?|type:selection|options:
Oikeusturva                  Omavaraisuus                Operaattori                  Osaaminen                 
'Sama';Sama kuin lähtöjakeella;
Ostovoima                    Palaute                      Palvelut                    Palvelutaso               
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
Peruskunto                  Pilvipalvelut                Polttoaine                  Posti                     
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
Puelueettomuus              Pysäköinti                  Pyöräily                    Päivitys                   
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
Pääkaupunkiseutu            Päästöt                      Päätöksenteko                Päätös                     
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
Raha                        Rahoitus                    Rahtliikenne                Rajapinnat                 
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
Rakennemuutos                Rakentaminen                Raskas liikenne              Rautatiet                 
'Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015';Kohti esteetöntä tietoyhteiskuntaa toimenpideohjelma 2011-2015;
Riippuvuus                  Rikokset                    Robotisaatio                Ruuhkamaksu               
'Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille';Kohti uutta liikennepolitiikkaa - Älyä liikenteeseen ja viisautta liikkujille;
Ruuhkautuminen              Saatavuus                    Sateliittipaikannus          Sovellukset               
'KIDE-hanke';KIDE-hanke;
Strategia                    Suunnittelu                  Sähkö                        Sähköauto                 
'Opetus- ja kulttuuriministeriön älystrategia';Opetus- ja kulttuuriministeriön älystrategia;
Sääntely                    Säästöt                      Talous                      Talouskasvu               
'Rakennepoliittinen ohjelma';Rakennepoliittinen ohjelma;
Tarpeet                      Tasa-arvo                    Tasapuolisuus                Tasavertaisuus             
'Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014';Sähköisen asioinnin ja demokratian vauhdittamisohjelman toteuttamissuunnitelma 2009-2014;
Tavaraliikenne              Tehokkuus                    Tekijänoikeus                Tekniikkaneutraalius       
'Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020';Tuottava ja uudistuva Suomi - Digitaalinen agenda vuosille 2011-2020;
Tekninen tuki                Teknologia                  Teknologianeutraalius        Teollisuus                 
'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ä;
Terveydenhuolto              Terveys                      testi                        Tiedon avoimuus           
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
Tiedon hallinnointi          Tiedon hallinta              Tiedon hyödyntäminen        Tieliikenne               
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
Tietoliikenne                Tietoturva                  Toimilupa                    Toiminta                   
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
Toimintavarmuus              Toimivuus                    Tuki                        Turvallisuus               
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
Turvaverkko                  Tutkimus                    Tuuli                        TV                         
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
Työllisyys                  Työn tekemiseen liittyvä    Ulkomaat                    Uudistus                   
name:jaeid2|description:Mikä on kohdejakeen ID?|type:text|
Vaihtoehtoiset polttoaineet  Vaikuttaminen                Vaikutus                    Vakuutus                   
name:relaatio|description:'''Kuinka lähtöjae liittyy kohdejakeeseen?'''|type:selection|options:
Valinnanvapaus              Valtio                      Varmenne                    Varmuus                   
' ';- Valitse -;
Vastuu                      Verkostoituminen            Verotus                      Vesiliikenne               
'tukee tai on linjassa';tukee tai on linjassa;
Vesiliikenne, Tasavertaisuus Viestintäverkot              Viranomaiset                Yhteensopivuus             
'vastustaa tai on ristiriidassa';vastustaa tai on ristiriidassa;
Yhteiskunta                  Yhteiskuntamurros            Yhteistyö                    Yhteysnopeus               
'on neutraali suhteessa';on neutraali suhteessa;
Yksityisautoilu              Yksityisyydensuoja          YLE                          Yleispalvelu               
'on uusi linjaus tai painotus';on uusi linjaus tai painotus;
Yleisradio                  Ympäristö                    Yritykset                    Öljy                       
'kuuluu ryhmään/kokoelmaan';kuuluu ryhmään/kokoelmaan;
}}
'liittyy';liittyy;
 
'edellyttää';edellyttää;
<rcode label="Näytä tilastoja/jakeita" name="jae_stats" embed=1 graphics=1 variables="
'sisältää';sisältää;
name:sivu|description:Minkä sivun jakeita haluat tarkastella?|type:selection|options:
'vaikuttaa';vaikuttaa;
NULL;Kaikki;
'vaikuttaa taloudellisesti';vaikuttaa taloudellisesti;
'21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti';21 polkua kitkattomaan Suomeen - ICT 2015-työryhmän loppuraportti;
'vastaa';vastaa;
'Asiakaspalvelu 2014 loppuraportti';Asiakaspalvelu 2014 loppuraportti;
'kumoaa';kumoaa|
'Julkisen hallinnon asiakkuusstrategia';Julkisen hallinnon asiakkuusstrategia;
name:lisarelaatio|description:VAPAAEHTOINEN Voit antaa oman jakeiden välisen relaation vapaakenttään.|type:text|
'Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020';Julkisen hallinnon ICT:n hyödyntämisen strategia 2012-2020;
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'|
'Kansallinen paikkatietostrategia';Kansallinen paikkatietostrategia;
name:pagename|type:hidden|default:'{{PAGENAME}}'
'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;
relaatio <- ifelse(lisarelaatio == '', relaatio, lisarelaatio)
'KIDE-hanke';KIDE-hanke;
if (nchar(gsub(" ", "", relaatio)) == 0) stop("Relaatiota ei annettu!")
'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;
objects.latest("Op_fi4325", "apufunktiot")
'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ä;
jaeid1 <- strsplit(jaeid1, ",", fixed = TRUE)[[1]]
'Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta';Valtioneuvoston periaatepäätös kansallisesta älyliikenteen strategiasta;
jaeid1 <- gsub(" ", "", jaeid1)
'Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta';Valtioneuvoston periaatepäätös sähköisestä tunnistamisesta;
jaeid2 <- strsplit(jaeid2, ",", fixed = TRUE)[[1]]
'Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta';Valtioneuvoston periaatepäätös valtion pysyvien toimintamenosäästöjen aikaansaamisesta;
jaeid2 <- gsub(" ", "", jaeid2)
'Vaikuttavuus- ja tuloksellisuusohjelma (VATU)';Vaikuttavuus- ja tuloksellisuusohjelma (VATU);
 
'Valtion_konesalistrategia_2014';Valtion_konesalistrategia_2014|
if (tolower(version) == "nykyinen") {
name:avainsanat|description:Hae jakeita joilla on ainakin yksi seuraavista avainsanoista|type:text|
version <- get_current_version(ident)
name:avainsanat_all|description:Hae jakeita joilla on kaikki seuraavat avainsanat|type:text|
} else {
name:jaelista|description:Haluatko nähdä kaikki löydetyt jakeet?|type:selection|options:FALSE;En;TRUE;Kyllä|default:FALSE|
version <- as.numeric(version)
name:version|description:Versio|type:text|default:nykyinen|
}
name:ident|type:hidden|default:'{{{1|Op_fi{{PAGEID}}}}}'
 
">
if(sivu2 == "Sama") sivu2 <- sivu1
library(OpasnetUtils)
 
library(plyr)
ident.subset <- paste(ident, "Relaatiot", sep = ".")
objects.latest("Op_fi4325", "apufunktiot")
library(ggplot2)


filter <- list()
filter <- list()
filter$Versio <- version
if (nchar(gsub(" ", "", avainsanat)) > 0) {
 
avainsanat <- strsplit(avainsanat, ",")[[1]]
dat <- data.frame(
avainsanat <- gsub("^\\s*|\\s*$", "", avainsanat) 
RelaatioID = NA,
} else {
Versio = version,  
avainsanat <- NULL
Aika = date(),  
}
Käyttäjä = wiki_username,  
if (nchar(gsub(" ", "", avainsanat_all)) > 0) {
Sivu1 = sivu1,
avainsanat_all <- strsplit(avainsanat_all, ",")[[1]]
JaeID1 = jaeid1,
avainsanat_all <- gsub("^\\s*|\\s*$", "", avainsanat_all)
Sivu2 = sivu2,
#filter$Avainsana <- avainsanat_all
JaeID2 = jaeid2,
} else {
Result = relaatio
avainsanat_all <- NULL
)
}
filter$Sivu <- sivu
version <- gsub("^\\s*|\\s*$", "", strsplit(version, ",")[[1]])


upload_with_autoid(
a <- tolower(version) == "nykyinen"
dat,
if (any(a)) {
ident.subset,
version <- version[!a]
id_name = "RelaatioID",
version <- c(version, get_current_version(ident))
pagename = pagename,
}
filter = filter
version <- as.numeric(version)
)
filter$Versio <- version


cat("Relaation lisääminen onnistui.\n")
if (length(filter) == 0) filter <- NULL
 
tags <- try_dl_rm(
paste(ident, "Avainsanat", sep = "."),
filter = filter,
rm_id = paste(ident, "Avainsananpoistot", sep = "."),
rm_ind = "AvainsanaID"
)


</rcode>
jaeid <- NULL


==== Relaation poisto ====
if (!is.null(avainsanat)|!is.null(avainsanat_all)) {
'''Merkitsee relaation/sisällytyksen epäkelvoksi, jolloin tämän sivun hakukoneet eivät näytä sitä.'''
tags <- tags[tags$Result %in% c(avainsanat, avainsanat_all), ]
<rcode name="relaationpoisto" embed=1 label="Poista relaatio" showcode=0 variables="
jaeid <- unique(as.character(tags$JaeID))
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]]
if(!is.null(avainsanat_all)) {
relid <- gsub(" ", "", relid)
temp <- list()
 
for (i in 1:nrow(jaeid)) {
if (tolower(version) == "nykyinen") {
temp[[i]] <- avainsanat_all %in% tags$Result[tags$JaeID == jaeid[i]]
objects.latest("Op_fi4325", "apufunktiot")
}
version <- get_current_version(ident)
temp <- lapply(temp, all)
} else {
jaeid <- jaeid[temp]
version <- as.numeric(version)
tags <- tags[tags$JaeID %in% jaeid,]
}
 
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
 
if (jaelista) {
jakeet <- jaehakukone(
ident,
sivu = filter2$Sivu, # *list$non-existent returns NULL
versio = filter2$Versio,
jae = filter2$JaeID
)
if (nrow(jakeet) == 0) {
cat("Avainsanoissa listattuja jakeita ei löytynyt.\n")
} else {
colnames(jakeet)[colnames(jakeet) == "Result"] <- "Sisältö"
tagged <- NULL
if (nrow(tags) > 0) {
#tagged <- join(
# jakeet[c("Versio", "Sivu", "Aihe", "JaeID")],
# tags[c("Versio", "Sivu", "JaeID", "Result")]
#)
#colnames(tagged)[colnames(tagged) == "Result"] <- "Avainsana"
tagged <- tapply(tags$Result, tags[c("Versio", "Sivu", "JaeID")], paste, collapse = ", ")
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) {
tags_out <- ddply(tags, "Result", nrow)
colnames(tags_out) <- c("Avainsana", "Lukumäärä")
tags_out <- tags_out[order(tags_out$Lukumäärä, decreasing = TRUE),]
oprint(
tags_out,
caption = "Avainsanojen lukumäärät",  
caption.placement = "top",
include.rownames = FALSE,
digits = c(0, 0, 0)
)
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")
}
 
# 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)
 
filter3 <- list()
filter3$Sivu1 <- sivu
filter3$Versio <- version
filter3$JaeID1 <- jaeid
 
rel1 <- try_dl_rm(
paste(ident, "Relaatiot", sep = "."),
filter = filter3,
rm_id = paste(ident, "Relaationpoistot", sep = "."),
rm_ind = "RelaatioID"
)
if (is.null(jaeid)) {
rel2 <- data.frame()
} else {
filter3$JaeID1 <- NULL
filter3$Sivu1 <- NULL
filter3$JaeID2 <- jaeid
filter3$Sivu2 <- sivu
rel2 <- try_dl_rm(
paste(ident, "Relaatiot", sep = "."),
filter = filter3,
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.")
 
if (nrow(rel) == 0) {
cat("Jakeelle ei löytynyt kysyttyjä relaatioita tietokannassa.\n")
} else {
related <- rel[
rel$Result %in% c(
"tukee tai on linjassa",
"vastustaa tai on ristiriidassa",
"on neutraali suhteessa",
"liittyy",
"edellyttää",
"sisältää",
"vaikuttaa",
"vaikuttaa taloudellisesti"
), ]
related$Result <- as.character(related$Result)
affected <- rel[
rel$Result %in% c(
"ehdotus ei ole antanut aihetta muutoksiin",
"ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun",
"ehdotus huomioitu ja liittyvää painotusta muutettu",
"ehdotus huomioitu ja uusi kohta lisätty"
), ]
affected$Result <- as.character(affected$Result)
affected$Result[affected$Result == "ehdotus ei ole antanut aihetta muutoksiin"] <- "Ei aihetta muutoksiin"
affected$Result[affected$Result == "ehdotus ei ole antanut aihetta muutoksiin vaan sisältyy olennaisesti jo kirjattuun"] <- "Sisältyy valmiiksi"
affected$Result[affected$Result == "ehdotus huomioitu ja liittyvää painotusta muutettu"] <- "Huomioitu painotuksella"
affected$Result[affected$Result == "ehdotus huomioitu ja uusi kohta lisätty"] <- "Huomioitu lisäyksellä"
related_out <- ddply(related, "Result", nrow)
colnames(related_out) <- c("Relaatio", "Lukumäärä")
affected_out <- ddply(affected, "Result", nrow)
colnames(affected_out) <- c("Sisällytys", "Lukumäärä")
}
 
if (nrow(related_out > 0)) {
ggplot(related_out, aes(x = Relaatio, y = Lukumäärä, fill = Relaatio)) +
geom_bar(stat = "identity") +
theme_grey(base_size = 24) +
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
ggtitle("Relaatioiden frekvenssit")# + facet_wrap(~Sivu)
}
 
if (nrow(affected_out > 0)) {
ggplot(affected_out, aes(x = Sisällytys, y = Lukumäärä, fill = Sisällytys)) +
geom_bar(stat = "identity") +
theme_grey(base_size = 24) +
theme(axis.text.x = element_blank(), axis.title.x = element_blank()) +
ggtitle("Sisällytyksen frekvenssit")# + facet_wrap(~Sivu)
}
}
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