From e06dcb5373470797b235a3f0b04ef6c74833c10a Mon Sep 17 00:00:00 2001 From: Stefan Linner Date: Thu, 8 May 2025 14:33:58 +0200 Subject: [PATCH 01/26] Make gen_table work for statistikdaten.bayern.de --- DESCRIPTION | 2 +- R/gen_api.R | 4 ++ R/gen_auth.R | 63 ++++++++++++++++++++++++++++-- R/gen_table.R | 2 +- R/utils_dataprocessing.R | 9 ++++- R/utils_httr2.R | 83 +++++++++++++++++++++++++--------------- R/zzz.R | 7 ++++ 7 files changed, 134 insertions(+), 36 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index a2b7f60..79586ff 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -46,4 +46,4 @@ Config/testthat/edition: 3 Encoding: UTF-8 LazyData: true Roxygen: list(markdown = TRUE) -RoxygenNote: 7.3.2 +RoxygenNote: 7.3.2.9000 diff --git a/R/gen_api.R b/R/gen_api.R index 1b803b9..da3fab0 100644 --- a/R/gen_api.R +++ b/R/gen_api.R @@ -61,6 +61,10 @@ gen_api <- function(..., url <- Sys.getenv("RESTATIS_REGIO_URL") + } else if (database == "bayern") { + + url <- Sys.getenv("RESTATIS_BAYERN_URL") + } # Set user agent diff --git a/R/gen_auth.R b/R/gen_auth.R index 9a54913..5c827b1 100644 --- a/R/gen_auth.R +++ b/R/gen_auth.R @@ -35,9 +35,16 @@ gen_auth_save <- function(database, } + if (database == "bayern" & isTRUE(use_token)) { + + warning("statistikdaten.bayern.de does not support API tokens. Defaulting to username and password.", + call. = FALSE) + + } + #----------------------------------------------------------------------------- - if (database == "regio") { + if (database %in% c("regio", "bayern")) { insert_and_save_credentials(database, use_token) @@ -112,7 +119,7 @@ gen_auth_get <- function(database = NULL) { if (length(database) == 1) { - if (!(database %in% c("all", "genesis", "zensus", "regio"))) { + if (!(database %in% c("all", "genesis", "zensus", "regio", "bayern"))) { stop("Misspecification of parameter 'database': Must only be 'all', 'genesis', 'zensus' or 'regio'.", call. = FALSE) @@ -134,7 +141,7 @@ gen_auth_get <- function(database = NULL) { #--------------------------------------------------------------------------- - if (!all(database %in% c("genesis", "zensus", "regio"))) { + if (!all(database %in% c("genesis", "zensus", "regio", "bayern"))) { stop("Misspecification of parameter 'database': Must only be 'genesis', 'zensus' or 'regio'.", call. = FALSE) @@ -197,6 +204,20 @@ gen_auth_get <- function(database = NULL) { #----------------------------------------------------------------------------- + } else if(database == "bayern") { + + auth_path <- gen_auth_path("auth_bayern.rds") + + if (!(file.exists(auth_path) && nzchar(Sys.getenv("BAYERN_KEY")))) { + + stop(paste0("statistikdaten.bayern.de database credentials not found. ", + "Please run 'gen_auth_save()' to store statistikdaten.bayern.de database username and password."), + call. = FALSE) + + } + + return(httr2::secret_read_rds(auth_path, "BAYERN_KEY")) + } else if (database == "all") { auth_path <- gen_auth_path("auth_genesis.rds") @@ -248,6 +269,23 @@ gen_auth_get <- function(database = NULL) { } + #--------------------------------------------------------------------------- + + auth_path <- gen_auth_path("auth_bayern.rds") + + if (!(file.exists(auth_path) && nzchar(Sys.getenv("BAYERN_KEY")))) { + + warning(paste0("statistikdaten.bayern.de database credentials not found. ", + "Please run 'gen_auth_save()' to store statistikdaten.bayern.de database username and password."), + call. = FALSE) + + } else { + + message("Credentials for database statistikdaten.bayern.de:\n") + print(httr2::secret_read_rds(auth_path, "BAYERN_KEY")) + + } + } # End of 'else if (database == "all")' } # End of 'if (length(database) == 1) ' @@ -313,6 +351,25 @@ gen_auth_get <- function(database = NULL) { #--------------------------------------------------------------------------- + if ("bayern" %in% database) { + + auth_path <- gen_auth_path("auth_bayern.rds") + + if (!(file.exists(auth_path) && nzchar(Sys.getenv("BAYERN_KEY")))) { + + stop(paste0("statistikdaten.bayern.de database credentials not found. ", + "Please run 'gen_auth_save()' to store statistikdaten.bayern.de database username and password."), + call. = FALSE) + + } + + message("Credentials for database statistikdaten.bayern.de:\n") + print(httr2::secret_read_rds(auth_path, "BAYERN_KEY")) + + } + + #--------------------------------------------------------------------------- + } # End of '(length(database) > 1)' } diff --git a/R/gen_table.R b/R/gen_table.R index d3547ae..dc26107 100644 --- a/R/gen_table.R +++ b/R/gen_table.R @@ -63,7 +63,7 @@ gen_table <- function(name, ...) { #------------------------------------------------------------------------------- gen_table_ <- function(name, - database = c("genesis", "zensus", "regio"), + database = c("genesis", "zensus", "regio", "bayern"), area = c("all", "public", "user"), compress = FALSE, transpose = FALSE, diff --git a/R/utils_dataprocessing.R b/R/utils_dataprocessing.R index b86ffaa..14babf9 100644 --- a/R/utils_dataprocessing.R +++ b/R/utils_dataprocessing.R @@ -1159,6 +1159,12 @@ test_database_function <- function(input, error.input, text){ } + if ("bayern" %in% input) { + + res <- c(res, "bayern") + + } + #----------------------------------------------------------------------------- if ("all" %in% input) { @@ -1171,7 +1177,8 @@ test_database_function <- function(input, error.input, text){ res <- c("genesis", "zensus", - "regio") + "regio", + "bayern") } else if (length(res) == 0 || is.null(res)) { diff --git a/R/utils_httr2.R b/R/utils_httr2.R index c1bffc9..b2f0e55 100644 --- a/R/utils_httr2.R +++ b/R/utils_httr2.R @@ -32,7 +32,7 @@ test_if_okay <- function(input) { results_json <- ifelse(input$`User-Agent` == "https://github.com/CorrelAid/restatis", "Yes", "No" - ) + ) return(results_json) @@ -305,7 +305,7 @@ return_table_object <- function(response, } - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- } else if (response_type == "text/csv") { @@ -315,22 +315,22 @@ return_table_object <- function(response, if (language == "de") { result <- response %>% - httr2::resp_body_string() %>% - readr::read_delim(delim = ";", - show_col_types = FALSE, - locale = readr::locale(decimal_mark = ",", - grouping_mark = "."), - name_repair = "minimal", - col_types = eval(all_character)) + httr2::resp_body_string() %>% + readr::read_delim(delim = ";", + show_col_types = FALSE, + locale = readr::locale(decimal_mark = ",", + grouping_mark = "."), + name_repair = "minimal", + col_types = eval(all_character)) } else if (language == "en") { result <- response %>% - httr2::resp_body_string() %>% - readr::read_delim(delim = ";", - show_col_types = FALSE, - name_repair = "minimal", - col_types = eval(all_character)) + httr2::resp_body_string() %>% + readr::read_delim(delim = ";", + show_col_types = FALSE, + name_repair = "minimal", + col_types = eval(all_character)) } else { @@ -341,9 +341,9 @@ return_table_object <- function(response, return(result) - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- - # If the API response is a ZIP file, we need to temporarily save it + # If the API response is a ZIP file, we need to temporarily save it } else if (response_type == "application/zip") { @@ -404,7 +404,7 @@ return_table_object <- function(response, return(result) - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- } else { @@ -433,7 +433,7 @@ logincheck_http_error <- function(database, if (length(database) == 1 && database != "all") { - if (!(database %in% c("genesis", "zensus", "regio"))) { + if (!(database %in% c("genesis", "zensus", "regio", "bayern"))) { stop("Misspecified parameter 'database' (can only be 'all', 'genesis', 'zensus' or 'regio').", call. = FALSE) @@ -451,15 +451,16 @@ logincheck_http_error <- function(database, verbose = verbose, database = database) - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- } else if (length(database) == 1 && database == "all") { - databases <- list("genesis", "zensus", "regio") + databases <- list("genesis", "zensus", "regio", "bayern") response_list <- list(response_genesis = .gen_api_core(endpoint = "helloworld/logincheck", database = "genesis", ...), response_zensus = .gen_api_core(endpoint = "helloworld/logincheck", database = "zensus", ...), - response_regio = .gen_api_core(endpoint = "helloworld/logincheck", database = "regio", ...)) + response_regio = .gen_api_core(endpoint = "helloworld/logincheck", database = "regio", ...), + response_bayern = .gen_api_core(endpoint = "helloworld/logincheck", database = "bayern", ...)) purrr::walk2(.x = response_list, .y = databases, @@ -468,13 +469,13 @@ logincheck_http_error <- function(database, error = FALSE, verbose = verbose)) - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- } else if (length(database) > 1 & !("all" %in% database)) { - if (!(all(database %in% c("genesis", "zensus", "regio")))) { + if (!(all(database %in% c("genesis", "zensus", "regio", "bayern")))) { - stop("You can only specify 'all', 'genesis', 'zensus' or 'regio' inside of the parameter 'database'.", + stop("You can only specify 'all', 'genesis', 'zensus', 'regio', 'bayern' inside of the parameter 'database'.", call. = FALSE) } @@ -512,7 +513,18 @@ logincheck_http_error <- function(database, } - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- + + if ("bayern" %in% database) { + + logincheck_stop_or_warn(response = .gen_api_core(endpoint = "helloworld/logincheck", database = "bayern", ...), + error = FALSE, + verbose = verbose, + database = "bayern") + + } + + #----------------------------------------------------------------------------- } else { @@ -553,7 +565,7 @@ logincheck_stop_or_warn <- function(response, invisible(FALSE) - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- } else if (isTRUE(request_failed) & isFALSE(error)) { @@ -565,7 +577,7 @@ logincheck_stop_or_warn <- function(response, invisible(FALSE) - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- } else if (isFALSE(request_failed)) { @@ -577,7 +589,7 @@ logincheck_stop_or_warn <- function(response, invisible(TRUE) - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- } else { @@ -607,7 +619,18 @@ insert_and_save_credentials <- function(database, ui_menu_database = "regionalstatistik.de", use_token = use_token) - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- + + } else if(database == "bayern") { + + if (isTRUE(use_token)) use_token <- FALSE + + set_credentials_auth(path = "auth_bayern.rds", + sys_env = "BAYERN_KEY", + ui_menu_database = "statistikdaten.bayern.de", + use_token = use_token) + + #----------------------------------------------------------------------------- } else if (database == "zensus") { @@ -616,7 +639,7 @@ insert_and_save_credentials <- function(database, ui_menu_database = "Zensus 2022", use_token = use_token) - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- } else if (database == "genesis") { diff --git a/R/zzz.R b/R/zzz.R index 2f3d98e..0a4467e 100644 --- a/R/zzz.R +++ b/R/zzz.R @@ -29,6 +29,13 @@ } + # Set the default URL for the www.statistikdaten.bayern.de database + if (!nzchar(Sys.getenv("RESTATIS_BAYERN_URL"))) { + + Sys.setenv(RESTATIS_BAYERN_URL = "https://www.statistikdaten.bayern.de/genesisWS/rest/2020/") + + } + # Set the default URL for the ZENSUS 2022 database if (!nzchar(Sys.getenv("RESTATIS_ZENSUS_URL"))) { From ed68e16f87043890e4b5ff634cbe113d063c27de Mon Sep 17 00:00:00 2001 From: Stefan Linner Date: Fri, 9 May 2025 11:46:49 +0200 Subject: [PATCH 02/26] `gen_table()` working also for 'nrw', 'bildung' & 'sa' --- R/gen_api.R | 17 +++ R/gen_auth.R | 230 ++++++++++++++++++++++++++++++++++----- R/gen_table.R | 2 +- R/utils_dataprocessing.R | 25 ++++- R/utils_httr2.R | 87 +++++++++++++-- R/zzz.R | 21 ++++ 6 files changed, 342 insertions(+), 40 deletions(-) diff --git a/R/gen_api.R b/R/gen_api.R index da3fab0..77172d2 100644 --- a/R/gen_api.R +++ b/R/gen_api.R @@ -65,6 +65,23 @@ gen_api <- function(..., url <- Sys.getenv("RESTATIS_BAYERN_URL") + } else if (database == "nrw") { + + url <- Sys.getenv("RESTATIS_NRW_URL") + + } else if (database == "bildung") { + + url <- Sys.getenv("RESTATIS_BILDUNG_URL") + + } else if (database == "sa") { + + url <- Sys.getenv("RESTATIS_SA_URL") + + } else { + + stop(paste0("The database '", database, "' is not supported. Please check the documentation."), + call. = FALSE) + } # Set user agent diff --git a/R/gen_auth.R b/R/gen_auth.R index 5c827b1..5d6d453 100644 --- a/R/gen_auth.R +++ b/R/gen_auth.R @@ -35,6 +35,7 @@ gen_auth_save <- function(database, } + # HUHU: double check if (database == "bayern" & isTRUE(use_token)) { warning("statistikdaten.bayern.de does not support API tokens. Defaulting to username and password.", @@ -42,15 +43,36 @@ gen_auth_save <- function(database, } + if (database == "nrw" & isTRUE(use_token)) { + + warning("landesdatenbank.nrw.de does not support API tokens. Defaulting to username and password.", + call. = FALSE) + + } + + if (database == "bildung" & isTRUE(use_token)) { + + warning("bildungsmonitoring.de does not support API tokens. Defaulting to username and password.", + call. = FALSE) + + } + + if (database == "sa" & isTRUE(use_token)) { + + warning("genesis.sachsen-anhalt.de does not support API tokens. Defaulting to username and password.", + call. = FALSE) + + } + #----------------------------------------------------------------------------- - if (database %in% c("regio", "bayern")) { + if (database %in% c("regio", "bayern", "nrw", "bildung", "sa")) { insert_and_save_credentials(database, use_token) gen_logincheck(database = database) - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- } else if (database %in% c("zensus", "genesis")) { @@ -62,9 +84,12 @@ gen_auth_save <- function(database, #--------------------------------------------------------------------------- - walk_arguments <- list(ui_menu_database = c("GENESIS", "Zensus 2022", "regionalstatistik.de"), - db_names = c("genesis", "zensus", "regio"), - use_token = use_token) + walk_arguments <- list( + ui_menu_database = c("GENESIS", "Zensus 2022", "regionalstatistik.de", "statistikdaten.bayern.de", + "landesdatenbank.nrw.de", "bildungsmonitoring.de", "genesis.sachsen-anhalt.de"), + db_names = c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + use_token = use_token + ) purrr::pwalk(.l = walk_arguments, .f = function(ui_menu_database, @@ -80,11 +105,11 @@ gen_auth_save <- function(database, }) - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- } else { - stop("Invalid 'database' argument. Please choose 'all', 'genesis', 'zensus' or 'regio'.", + stop("Invalid 'database' argument. Please choose 'all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'sa'.", call. = FALSE) } @@ -119,9 +144,9 @@ gen_auth_get <- function(database = NULL) { if (length(database) == 1) { - if (!(database %in% c("all", "genesis", "zensus", "regio", "bayern"))) { + if (!(database %in% c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"))) { - stop("Misspecification of parameter 'database': Must only be 'all', 'genesis', 'zensus' or 'regio'.", + stop("Misspecification of parameter 'database': Must only be 'all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'sa'.", call. = FALSE) } @@ -141,9 +166,9 @@ gen_auth_get <- function(database = NULL) { #--------------------------------------------------------------------------- - if (!all(database %in% c("genesis", "zensus", "regio", "bayern"))) { + if (!all(database %in% c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"))) { - stop("Misspecification of parameter 'database': Must only be 'genesis', 'zensus' or 'regio'.", + stop("Misspecification of parameter 'database': Must only be 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'sa'.", call. = FALSE) } @@ -170,7 +195,7 @@ gen_auth_get <- function(database = NULL) { return(httr2::secret_read_rds(auth_path, "GENESIS_KEY")) - #--------------------------------------------------------------------------- + #--------------------------------------------------------------------------- } else if (database == "zensus") { @@ -182,13 +207,13 @@ gen_auth_get <- function(database = NULL) { "Please run 'gen_auth_save()' to store Zensus 2022 database username and password."), call. = FALSE) - } + } - return(httr2::secret_read_rds(auth_path, "ZENSUS_KEY")) + return(httr2::secret_read_rds(auth_path, "ZENSUS_KEY")) - #------------------------------------------------------------------------------- + #------------------------------------------------------------------------------- - } else if (database == "regio") { + } else if (database == "regio") { auth_path <- gen_auth_path("auth_regio.rds") @@ -202,23 +227,65 @@ gen_auth_get <- function(database = NULL) { return(httr2::secret_read_rds(auth_path, "REGIO_KEY")) - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- - } else if(database == "bayern") { + } else if(database == "bayern") { - auth_path <- gen_auth_path("auth_bayern.rds") + auth_path <- gen_auth_path("auth_bayern.rds") - if (!(file.exists(auth_path) && nzchar(Sys.getenv("BAYERN_KEY")))) { + if (!(file.exists(auth_path) && nzchar(Sys.getenv("BAYERN_KEY")))) { - stop(paste0("statistikdaten.bayern.de database credentials not found. ", - "Please run 'gen_auth_save()' to store statistikdaten.bayern.de database username and password."), - call. = FALSE) + stop(paste0("statistikdaten.bayern.de database credentials not found. ", + "Please run 'gen_auth_save()' to store statistikdaten.bayern.de database username and password."), + call. = FALSE) - } + } + + return(httr2::secret_read_rds(auth_path, "BAYERN_KEY")) - return(httr2::secret_read_rds(auth_path, "BAYERN_KEY")) + } else if(database == "nrw") { - } else if (database == "all") { + auth_path <- gen_auth_path("auth_nrw.rds") + + if (!(file.exists(auth_path) && nzchar(Sys.getenv("NRW_KEY")))) { + + stop(paste0("landesdatenbank.nrw.de database credentials not found. ", + "Please run 'gen_auth_save()' to store landesdatenbank.nrw.de database username and password."), + call. = FALSE) + + } + + return(httr2::secret_read_rds(auth_path, "NRW_KEY")) + + } else if(database == "bildung") { + + auth_path <- gen_auth_path("auth_bildung.rds") + + if (!(file.exists(auth_path) && nzchar(Sys.getenv("BILDUNG_KEY")))) { + + stop(paste0("bildungsmonitoring.de database credentials not found. ", + "Please run 'gen_auth_save()' to store bildungsmonitoring.de database username and password."), + call. = FALSE) + + } + + return(httr2::secret_read_rds(auth_path, "BILDUNG_KEY")) + + } else if(database == "sa") { + + auth_path <- gen_auth_path("auth_sa.rds") + + if (!(file.exists(auth_path) && nzchar(Sys.getenv("SA_KEY")))) { + + stop(paste0("genesis.sachsen-anhalt.de database credentials not found. ", + "Please run 'gen_auth_save()' to store genesis.sachsen-anhalt.de database username and password."), + call. = FALSE) + + } + + return(httr2::secret_read_rds(auth_path, "SA_KEY")) + + } else if (database == "all") { auth_path <- gen_auth_path("auth_genesis.rds") @@ -242,7 +309,7 @@ gen_auth_get <- function(database = NULL) { if (!(file.exists(auth_path) && nzchar(Sys.getenv("ZENSUS_KEY")))) { warning(paste0("Zensus 2022 database credentials not found. ", - "Please run 'gen_auth_save()' to store Zensus 2022 database username and password."), + "Please run 'gen_auth_save()' to store Zensus 2022 database username and password."), call. = FALSE) } else { @@ -259,7 +326,7 @@ gen_auth_get <- function(database = NULL) { if (!(file.exists(auth_path) && nzchar(Sys.getenv("REGIO_KEY")))) { warning(paste0("regionalstatistik.de database credentials not found. ", - "Please run 'gen_auth_save()' to store regionalstatistik.de database username and password."), + "Please run 'gen_auth_save()' to store regionalstatistik.de database username and password."), call. = FALSE) } else { @@ -286,6 +353,58 @@ gen_auth_get <- function(database = NULL) { } + #--------------------------------------------------------------------------- + + auth_path <- gen_auth_path("auth_nrw.rds") + + if (!(file.exists(auth_path) && nzchar(Sys.getenv("NRW_KEY")))) { + + warning(paste0("landesdatenbank.nrw.de database credentials not found. ", + "Please run 'gen_auth_save()' to store landesdatenbank.nrw.de database username and password."), + call. = FALSE) + + } else { + + message("Credentials for database landesdatenbank.nrw.de:\n") + print(httr2::secret_read_rds(auth_path, "NRW_KEY")) + + } + + #--------------------------------------------------------------------------- + + auth_path <- gen_auth_path("auth_bildung.rds") + + if (!(file.exists(auth_path) && nzchar(Sys.getenv("BILDUNG_KEY")))) { + + warning(paste0("bildungsmonitoring.de database credentials not found. ", + "Please run 'gen_auth_save()' to store bildungsmonitoring.de database username and password."), + call. = FALSE) + + } else { + + message("Credentials for database bildungsmonitoring.de:\n") + print(httr2::secret_read_rds(auth_path, "BILDUNG_KEY")) + + } + + #--------------------------------------------------------------------------- + + auth_path <- gen_auth_path("auth_sa.rds") + + if (!(file.exists(auth_path) && nzchar(Sys.getenv("SA_KEY")))) { + + warning(paste0("genesis.sachsen-anhalt.de database credentials not found. ", + "Please run 'gen_auth_save()' to store genesis.sachsen-anhalt.de database username and password."), + call. = FALSE) + + } else { + + message("Credentials for database genesis.sachsen-anhalt.de:\n") + print(httr2::secret_read_rds(auth_path, "SA_KEY")) + + } + + } # End of 'else if (database == "all")' } # End of 'if (length(database) == 1) ' @@ -370,6 +489,61 @@ gen_auth_get <- function(database = NULL) { #--------------------------------------------------------------------------- + if ("nrw" %in% database) { + + auth_path <- gen_auth_path("auth_nrw.rds") + + if (!(file.exists(auth_path) && nzchar(Sys.getenv("NRW_KEY")))) { + + stop(paste0("landesdatenbank.nrw.de database credentials not found. ", + "Please run 'gen_auth_save()' to store landesdatenbank.nrw.de database username and password."), + call. = FALSE) + + } + + message("Credentials for database landesdatenbank.nrw.de:\n") + print(httr2::secret_read_rds(auth_path, "NRW_KEY")) + + } + + #--------------------------------------------------------------------------- + + if ("bildung" %in% database) { + + auth_path <- gen_auth_path("auth_bildung.rds") + + if (!(file.exists(auth_path) && nzchar(Sys.getenv("BILDUNG_KEY")))) { + + stop(paste0("bildungsmonitoring.de database credentials not found. ", + "Please run 'gen_auth_save()' to store bildungsmonitoring.de database username and password."), + call. = FALSE) + + } + + message("Credentials for database bildungsmonitoring.de:\n") + print(httr2::secret_read_rds(auth_path, "BILDUNG_KEY")) + + } + + #--------------------------------------------------------------------------- + + if ("sa" %in% database) { + + auth_path <- gen_auth_path("auth_sa.rds") + + if (!(file.exists(auth_path) && nzchar(Sys.getenv("SA_KEY")))) { + + stop(paste0("genesis.sachsen-anhalt.de database credentials not found. ", + "Please run 'gen_auth_save()' to store genesis.sachsen-anhalt.de database username and password."), + call. = FALSE) + + } + + message("Credentials for database genesis.sachsen-anhalt.de:\n") + print(httr2::secret_read_rds(auth_path, "SA_KEY")) + + } + } # End of '(length(database) > 1)' } diff --git a/R/gen_table.R b/R/gen_table.R index dc26107..c09b07f 100644 --- a/R/gen_table.R +++ b/R/gen_table.R @@ -63,7 +63,7 @@ gen_table <- function(name, ...) { #------------------------------------------------------------------------------- gen_table_ <- function(name, - database = c("genesis", "zensus", "regio", "bayern"), + database = c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), compress = FALSE, transpose = FALSE, diff --git a/R/utils_dataprocessing.R b/R/utils_dataprocessing.R index 14babf9..484fd59 100644 --- a/R/utils_dataprocessing.R +++ b/R/utils_dataprocessing.R @@ -302,7 +302,7 @@ check_function_input <- function(code = NULL, if ((length(database) == 1 && !is.null(database) && database == "all") | (length(database) > 1 && "all" %in% database)) { - database <- c("regio", "zensus", "genesis") + database <- c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa") } @@ -1165,6 +1165,24 @@ test_database_function <- function(input, error.input, text){ } + if ("nrw" %in% input) { + + res <- c(res, "nrw") + + } + + if ("bildung" %in% input) { + + res <- c(res, "bildung") + + } + + if ("sa" %in% input) { + + res <- c(res, "sa") + + } + #----------------------------------------------------------------------------- if ("all" %in% input) { @@ -1178,7 +1196,10 @@ test_database_function <- function(input, error.input, text){ res <- c("genesis", "zensus", "regio", - "bayern") + "bayern", + "nrw", + "bildung", + "sa") } else if (length(res) == 0 || is.null(res)) { diff --git a/R/utils_httr2.R b/R/utils_httr2.R index b2f0e55..d171e06 100644 --- a/R/utils_httr2.R +++ b/R/utils_httr2.R @@ -433,9 +433,9 @@ logincheck_http_error <- function(database, if (length(database) == 1 && database != "all") { - if (!(database %in% c("genesis", "zensus", "regio", "bayern"))) { + if (!(database %in% c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"))) { - stop("Misspecified parameter 'database' (can only be 'all', 'genesis', 'zensus' or 'regio').", + stop("Misspecified parameter 'database' (can only be 'all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'sa').", call. = FALSE) } @@ -455,12 +455,17 @@ logincheck_http_error <- function(database, } else if (length(database) == 1 && database == "all") { - databases <- list("genesis", "zensus", "regio", "bayern") + databases <- list("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa") - response_list <- list(response_genesis = .gen_api_core(endpoint = "helloworld/logincheck", database = "genesis", ...), - response_zensus = .gen_api_core(endpoint = "helloworld/logincheck", database = "zensus", ...), - response_regio = .gen_api_core(endpoint = "helloworld/logincheck", database = "regio", ...), - response_bayern = .gen_api_core(endpoint = "helloworld/logincheck", database = "bayern", ...)) + response_list <- list( + response_genesis = .gen_api_core(endpoint = "helloworld/logincheck", database = "genesis", ...), + response_zensus = .gen_api_core(endpoint = "helloworld/logincheck", database = "zensus", ...), + response_regio = .gen_api_core(endpoint = "helloworld/logincheck", database = "regio", ...), + response_bayern = .gen_api_core(endpoint = "helloworld/logincheck", database = "bayern", ...), + response_nrw = .gen_api_core(endpoint = "helloworld/logincheck", database = "nrw", ...), + response_bildung = .gen_api_core(endpoint = "helloworld/logincheck", database = "bildung", ...), + response_sa = .gen_api_core(endpoint = "helloworld/logincheck", database = "sa", ...) + ) purrr::walk2(.x = response_list, .y = databases, @@ -473,9 +478,9 @@ logincheck_http_error <- function(database, } else if (length(database) > 1 & !("all" %in% database)) { - if (!(all(database %in% c("genesis", "zensus", "regio", "bayern")))) { + if (!(all(database %in% c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa")))) { - stop("You can only specify 'all', 'genesis', 'zensus', 'regio', 'bayern' inside of the parameter 'database'.", + stop("You can only specify 'all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung', 'sa' inside of the parameter 'database'.", call. = FALSE) } @@ -526,6 +531,37 @@ logincheck_http_error <- function(database, #----------------------------------------------------------------------------- + if ("nrw" %in% database) { + + logincheck_stop_or_warn(response = .gen_api_core(endpoint = "helloworld/logincheck", database = "nrw", ...), + error = FALSE, + verbose = verbose, + database = "nrw") + + } + + #----------------------------------------------------------------------------- + + if ("bildung" %in% database) { + + logincheck_stop_or_warn(response = .gen_api_core(endpoint = "helloworld/logincheck", database = "bildung", ...), + error = FALSE, + verbose = verbose, + database = "bildung") + + } + + #----------------------------------------------------------------------------- + + if ("sa" %in% database) { + + logincheck_stop_or_warn(response = .gen_api_core(endpoint = "helloworld/logincheck", database = "sa", ...), + error = FALSE, + verbose = verbose, + database = "sa") + + } + } else { stop("If you want to specify 'all', do not specify further databases (i.e., just set database to 'all').", @@ -632,6 +668,39 @@ insert_and_save_credentials <- function(database, #----------------------------------------------------------------------------- + } else if(database == "nrw") { + + if (isTRUE(use_token)) use_token <- FALSE + + set_credentials_auth(path = "auth_nrw.rds", + sys_env = "NRW_KEY", + ui_menu_database = "landesdatenbank.nrw.de", + use_token = use_token) + + #----------------------------------------------------------------------------- + + } else if(database == "bildung") { + + if (isTRUE(use_token)) use_token <- FALSE + + set_credentials_auth(path = "auth_bildung.rds", + sys_env = "BILDUNG_KEY", + ui_menu_database = "bildungsmonitoring.de", + use_token = use_token) + + #----------------------------------------------------------------------------- + + } else if(database == "sa") { + + if (isTRUE(use_token)) use_token <- FALSE + + set_credentials_auth(path = "auth_sa.rds", + sys_env = "SA_KEY", + ui_menu_database = "genesis.sachsen-anhalt.de", + use_token = use_token) + + #----------------------------------------------------------------------------- + } else if (database == "zensus") { set_credentials_auth(path = "auth_zensus.rds", diff --git a/R/zzz.R b/R/zzz.R index 0a4467e..615f9ec 100644 --- a/R/zzz.R +++ b/R/zzz.R @@ -36,6 +36,27 @@ } + # Set the default URL for the www.landesdatenbank.nrw.de database + if (!nzchar(Sys.getenv("RESTATIS_NRW_URL"))) { + + Sys.setenv(RESTATIS_NRW_URL = "https://www.landesdatenbank.nrw.de/ldbnrwws/rest/2020/") + + } + + # Set the default URL for the www.bildungsmonitoring.de database + if (!nzchar(Sys.getenv("RESTATIS_BILDUNG_URL"))) { + + Sys.setenv(RESTATIS_BILDUNG_URL = "https://www.bildungsmonitoring.de/bildungws/rest/2020/") + + } + + # Set the default URL for the genesis.sachsen-anhalt.de database + if (!nzchar(Sys.getenv("RESTATIS_SA_URL"))) { + + Sys.setenv(RESTATIS_SA_URL = "https://genesis.sachsen-anhalt.de/webservice/rest/2020/") + + } + # Set the default URL for the ZENSUS 2022 database if (!nzchar(Sys.getenv("RESTATIS_ZENSUS_URL"))) { From 665f6b149cd30c20f84ec61adfb88c201d91f781 Mon Sep 17 00:00:00 2001 From: Stefan Linner Date: Tue, 13 May 2025 16:48:40 +0200 Subject: [PATCH 03/26] Allow new databases for other endpoints --- DESCRIPTION | 2 +- R/gen_alternative_terms.R | 6 ++-- R/gen_auth.R | 5 ++-- R/gen_catalogue.R | 21 +++++++------- R/gen_cube.R | 2 +- R/gen_find.R | 53 ++++++++++++++++++----------------- R/gen_logincheck.R | 2 +- R/gen_metadata.R | 42 +++++++++++++-------------- R/gen_modified_data.R | 8 +++--- R/gen_objects2stat.R | 13 +++++---- R/gen_objects2var.R | 13 +++++---- R/gen_qualitysigns.R | 6 ++-- R/gen_var2-val2.R | 30 ++++++++++---------- R/utils_dataprocessing.R | 6 ++-- man/gen_alternative_terms.Rd | 6 ++-- man/gen_auth_save.Rd | 2 +- man/gen_catalogue.Rd | 8 +++--- man/gen_find.Rd | 6 ++-- man/gen_logincheck.Rd | 2 +- man/gen_metadata.Rd | 6 ++-- man/gen_metadata_cube.Rd | 6 ++-- man/gen_metadata_statistic.Rd | 6 ++-- man/gen_metadata_table.Rd | 6 ++-- man/gen_metadata_value.Rd | 6 ++-- man/gen_metadata_variable.Rd | 6 ++-- man/gen_modified_data.Rd | 6 ++-- man/gen_objects2stat.Rd | 6 ++-- man/gen_objects2var.Rd | 6 ++-- man/gen_search_vars.Rd | 6 ++-- man/gen_signs.Rd | 6 ++-- man/gen_val2var.Rd | 6 ++-- man/gen_val2var2stat.Rd | 6 ++-- man/gen_var2stat.Rd | 6 ++-- 33 files changed, 162 insertions(+), 155 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 79586ff..a2b7f60 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -46,4 +46,4 @@ Config/testthat/edition: 3 Encoding: UTF-8 LazyData: true Roxygen: list(markdown = TRUE) -RoxygenNote: 7.3.2.9000 +RoxygenNote: 7.3.2 diff --git a/R/gen_alternative_terms.R b/R/gen_alternative_terms.R index 51eb03b..005d5e7 100644 --- a/R/gen_alternative_terms.R +++ b/R/gen_alternative_terms.R @@ -1,10 +1,10 @@ #' Find similar search terms #' -#' @description Function to find search terms that are similar or related to one another in spelling and also represented in the GENESIS, Zensus 2022 or regionalstatistik.de databases. Important note: The API call is searching for terms with the same characters. To be useful in searching for related terms it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. +#' @description Function to find search terms that are similar or related to one another in spelling and also represented in the databases. Important note: The API call is searching for terms with the same characters. To be useful in searching for related terms it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. #' #' @param term Character string. Maximum length of 15 characters. Term or word for which you are searching for alternative or related terms. Use of '*' as a placeholder is possible to generate broader search areas. #' @param similarity Boolean. Indicator if the output of the function should be sorted based on a Levenshtein edit distance based on the \code{adist()} function. Default is 'TRUE'. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -27,7 +27,7 @@ #' gen_alternative_terms <- function(term = NULL, similarity = TRUE, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), pagelength = 500, verbose = TRUE, ...) { diff --git a/R/gen_auth.R b/R/gen_auth.R index 5d6d453..c8c80ef 100644 --- a/R/gen_auth.R +++ b/R/gen_auth.R @@ -2,7 +2,7 @@ #' #' @description Save credentials of the different databases for further convenient use #' -#' @param database Character string. The database to store credentials for ('all', 'genesis', 'zensus' or 'regio'). +#' @param database Character string. The database to store credentials for ('all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'sa'). #' @param use_token Boolean. Do you want to (if possible) set an API token instead of password + username? Note: This is not supported by regionalstatistik.de. Defaults to FALSE. #' #' @details Username and password are encrypted and saved as RDS in the @@ -35,7 +35,8 @@ gen_auth_save <- function(database, } - # HUHU: double check + # HUHU: double check if use of token really doesn't work + if (database == "bayern" & isTRUE(use_token)) { warning("statistikdaten.bayern.de does not support API tokens. Defaulting to username and password.", diff --git a/R/gen_catalogue.R b/R/gen_catalogue.R index 499b916..ca6d66f 100644 --- a/R/gen_catalogue.R +++ b/R/gen_catalogue.R @@ -1,9 +1,9 @@ #' Search for tables, statistics and cubes #' -#' @description Function to search for tables, statistics and cubes from GENESIS, Zensus 2022 or regionalstatistik.de. Additionally, it structures the output based on the internal tree structure based on the EVAS numbers. Time-series are represented as cubes with a specified time span. Important note: To be useful in searching for objects it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. +#' @description Function to search for tables, statistics and cubes from the respective database. Additionally, it structures the output based on the internal tree structure based on the EVAS numbers. Time-series are represented as cubes with a specified time span. Important note: To be useful in searching for objects it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. #' -#' @param code String with a maximum length of 15 characters for a database object (GENESIS and regionalstatistik.de) and 15 characters for a Zensus 2022 object. Only one code per iteration. "*" notations are possible. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code String with a maximum length of 15 characters. Only one code per iteration. "*" notations are possible. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param category Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. @@ -29,7 +29,7 @@ #' } #' gen_catalogue <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), category = c("tables", "statistics", "cubes"), area = c("all", "public", "user"), detailed = FALSE, @@ -79,11 +79,12 @@ gen_catalogue <- function(code = NULL, #--------------------------------------------------------------------------- - if ("cubes" %in% category && db == "zensus") { + # HUHU: Does it work also for 'bayern' & 'sa'? + if ("cubes" %in% category && db %in% c("zensus", "bayern", "sa")) { - list_of_cubes <- "There are generally no 'cubes' objects available for the 'zensus' database." + list_of_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") - } else if ("cubes" %in% category && (db == "genesis" | db == "regio")) { + } else if ("cubes" %in% category && (db == "genesis" | db == "regio" | db == "nrw" | db == "bildung")) { # Make API call results_raw <- gen_api(endpoint = "catalogue/cubes", @@ -251,7 +252,7 @@ gen_catalogue <- function(code = NULL, "Tables" = if(length(list_of_tabs) == 1){tibble::as_tibble(list_of_tabs)} else {forming_evas(list_of_tabs)}) - #--------------------------------------------------------------------------- + #--------------------------------------------------------------------------- } else if ("cubes" %in% category) { if (length(list_of_cubes) == 1 && db == "zensus"){ @@ -268,7 +269,7 @@ gen_catalogue <- function(code = NULL, } - #--------------------------------------------------------------------------- + #--------------------------------------------------------------------------- } else if ("statistics" %in% category) { if (length(list_of_stats) == 1 ){ @@ -282,7 +283,7 @@ gen_catalogue <- function(code = NULL, } - #--------------------------------------------------------------------------- + #--------------------------------------------------------------------------- } else if ("tables" %in% category) { if(length(list_of_tabs) == 1 ){ diff --git a/R/gen_cube.R b/R/gen_cube.R index bb0b5e7..8d44801 100644 --- a/R/gen_cube.R +++ b/R/gen_cube.R @@ -57,7 +57,7 @@ gen_cube <- function(name, ...) { #------------------------------------------------------------------------------- gen_cube_ <- function(name, - database = c("genesis", "regio"), + database = c("genesis", "regio", "nrw", "bildung"), # HUHU: Works for 'bayern' & 'sa'? area = c("public", "user"), values = TRUE, metadata = TRUE, diff --git a/R/gen_find.R b/R/gen_find.R index a31e5d7..b445292 100644 --- a/R/gen_find.R +++ b/R/gen_find.R @@ -1,11 +1,11 @@ #' General Search for Objects Through A Database #' -#' @description Function to search through the databases GENESIS, Zensus 2022 and regionalstatistik.de. It is similar in usage as the search function on the GENESIS main page (https://www-genesis.destatis.de/genesis/online). +#' @description Function to search through the databases. It is similar in usage as the search function on the GENESIS main page (https://www-genesis.destatis.de/genesis/online). #' In the search query, "UND" (German word for 'and', also written "und" or "&") as well as "ODER" (German word for 'or', also written "oder" or "|") can be included and logically combined. Furthermore, wildcards are possible by including "*". If more then one word is included in the term string, 'and' is used automatically to combine the different words. #' Important note: Time-series are treated as cubes in GENESIS and regionalstatistik.de, they are not longer distinguished. If you want to find a specific object with a clear code with this find function, you need to specify the object type or search for all object types. #' #' @param term A character string with no maximum character length, but a word limit of five words. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param category Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param ordering A logical. Indicator if the function should return the output of the iteration ordered first based on the fact if the searched term is appearing in the title of the object and secondly on an estimator of the number of variables in this object. Default option is 'TRUE'. @@ -33,7 +33,7 @@ #' } #' gen_find <- function(term = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), category = c("all", "tables", "statistics", "variables", "cubes"), detailed = FALSE, ordering = TRUE, @@ -75,7 +75,8 @@ gen_find <- function(term = NULL, #--------------------------------------------------------------------------- - if (db == "zensus" && category == "cubes") { + # HUHU: Does it work also for 'bayern' & 'sa'? + if (db %in% c("zensus", "bayern", "sa") && category == "cubes") { empty_object <- "FAIL" @@ -112,9 +113,9 @@ gen_find <- function(term = NULL, return(list_resp) - } else if (empty_object == "FAIL" & db == "zensus" ){ + } else if (empty_object == "FAIL" & db %in% c("zensus", "bayern", "sa") ){ - list_resp <- list("Output" = "There are generally no 'cubes' objects available for the 'zensus' database.") + list_resp <- list("Output" = paste("There are generally no 'cubes' objects available for the '", db, "' database.")) attr(list_resp, "Term") <- term attr(list_resp, "Database") <- db @@ -136,7 +137,7 @@ gen_find <- function(term = NULL, } else if (empty_object == "DONE") { - #--------------------------------------------------------------------------- + #--------------------------------------------------------------------------- if (category == "all") { @@ -144,7 +145,7 @@ gen_find <- function(term = NULL, } - #--------------------------------------------------------------------------- + #--------------------------------------------------------------------------- if("tables" %in% category) { @@ -240,7 +241,7 @@ gen_find <- function(term = NULL, } - #--------------------------------------------------------------------------- + #--------------------------------------------------------------------------- if("statistics" %in% category) { @@ -339,7 +340,7 @@ gen_find <- function(term = NULL, } - #--------------------------------------------------------------------------- + #--------------------------------------------------------------------------- if("variables" %in% category) { @@ -440,11 +441,11 @@ gen_find <- function(term = NULL, } - #--------------------------------------------------------------------------- + #--------------------------------------------------------------------------- if("cubes" %in% category) { - if (db == "genesis" | db == "regio") { + if (db == "genesis" | db == "regio" | db == "nrw" | db == "bildung") { if(!is.null(results_json$Cubes)) { @@ -547,29 +548,29 @@ gen_find <- function(term = NULL, } - } else if (db == "zensus") { + } else if (db %in% c("zensus", "bayern", "sa")) { - df_cubes <- "There are generally no 'cubes' objects available for the 'zensus' database." + df_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") } } - #--------------------------------------------------------------------------- + #--------------------------------------------------------------------------- - list_resp <- list() + list_resp <- list() - if("tables" %in% category) {list_resp$Tables <- tibble::as_tibble(df_table) } - if("statistics" %in% category) {list_resp$Statistics <- tibble::as_tibble(df_stats) } - if("variables" %in% category) {list_resp$Variables <- tibble::as_tibble(df_variables) } - if("cubes" %in% category) {list_resp$Cubes <- tibble::as_tibble(df_cubes) } + if("tables" %in% category) {list_resp$Tables <- tibble::as_tibble(df_table) } + if("statistics" %in% category) {list_resp$Statistics <- tibble::as_tibble(df_stats) } + if("variables" %in% category) {list_resp$Variables <- tibble::as_tibble(df_variables) } + if("cubes" %in% category) {list_resp$Cubes <- tibble::as_tibble(df_cubes) } - attr(list_resp, "Term") <- results_json$Parameter$term - attr(list_resp, "Database") <- db - attr(list_resp, "Language") <- results_json$Parameter$language - attr(list_resp, "Pagelength") <- results_json$Parameter$pagelength - attr(list_resp, "Copyright") <- results_json$Copyright + attr(list_resp, "Term") <- results_json$Parameter$term + attr(list_resp, "Database") <- db + attr(list_resp, "Language") <- results_json$Parameter$language + attr(list_resp, "Pagelength") <- results_json$Parameter$pagelength + attr(list_resp, "Copyright") <- results_json$Copyright - return(list_resp) + return(list_resp) } diff --git a/R/gen_logincheck.R b/R/gen_logincheck.R index 90cb4cf..67cedc8 100644 --- a/R/gen_logincheck.R +++ b/R/gen_logincheck.R @@ -2,7 +2,7 @@ #' #' @description Function to check if a login is possible for a certain database. #' -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param verbose Boolean. In case of success, should a message be printed? Defaults to 'TRUE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' diff --git a/R/gen_metadata.R b/R/gen_metadata.R index 9bc71be..c7841a4 100644 --- a/R/gen_metadata.R +++ b/R/gen_metadata.R @@ -2,8 +2,8 @@ #' #' @description Function to search for meta information for a specific statistic. #' -#' @param code A character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -20,7 +20,7 @@ #' } #' gen_metadata_statistic <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -57,7 +57,7 @@ gen_metadata_statistic <- function(code = NULL, } - if (db == "genesis" | db == "regio") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { results_raw <- gen_api(endpoint = "metadata/statistic", database = db, @@ -135,8 +135,8 @@ gen_metadata_statistic <- function(code = NULL, #' #' @description Function to search for meta information for a specific variable. #' -#' @param code A character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -153,7 +153,7 @@ gen_metadata_statistic <- function(code = NULL, #' } #' gen_metadata_variable <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -190,7 +190,7 @@ gen_metadata_variable <- function(code = NULL, } - if (db == "genesis" | db == "regio") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { results_raw <- gen_api(endpoint = "metadata/variable", database = db, @@ -276,8 +276,8 @@ gen_metadata_variable <- function(code = NULL, #' #' @description Function to search for meta information for a specific value. #' -#' @param code A character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -294,7 +294,7 @@ gen_metadata_variable <- function(code = NULL, #' } #' gen_metadata_value <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -331,7 +331,7 @@ gen_metadata_value <- function(code = NULL, } - if (db == "genesis" | db == "regio") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { results_raw <- gen_api(endpoint = "metadata/value", database = db, @@ -414,8 +414,8 @@ gen_metadata_value <- function(code = NULL, #' #' @description Function to search for meta information for a specific table. #' -#' @param code A character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -432,7 +432,7 @@ gen_metadata_value <- function(code = NULL, #' } #' gen_metadata_table <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -616,8 +616,8 @@ gen_metadata_table <- function(code = NULL, #' #' @description Function to search for meta information for a specific cube. Usable only for GENESIS and regionalstatistik.de. #' -#' @param code A character string with a maximum length of 15 characters. Code from a GENESIS or regionalstatistik.de object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. +#' @param database Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), landesdatenbank.nrw.de ('nrw') or bildungsmonitoring.de ('bildung') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -635,7 +635,7 @@ gen_metadata_table <- function(code = NULL, #' } #' gen_metadata_cube <- function(code = NULL, - database = c("all", "genesis", "regio"), + database = c("all", "genesis", "regio", "nrw", "bildung"), # HUHU: Works for 'bayern' & 'sa'? area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -793,8 +793,8 @@ gen_metadata_cube <- function(code = NULL, #' #' @description Search for metadata-information for all types of objects and databases and have them returned as a list. #' -#' @param code String with a maximum length of 15 characters for a database object (GENESIS, regionalstatistik.de, Zensus 2022). Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code String with a maximum length of 15 characters for a database object. Only one code per iteration. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param category Character string. Specifying the specific object type of the object that you want meta data for. No default option - you need to specify the object type. Hint: The functions in 'restatis' often return information on object 'Type'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. @@ -812,7 +812,7 @@ gen_metadata_cube <- function(code = NULL, #' } #' gen_metadata <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), category = c("cube", "statistic", "table", "variable", "value"), area = c("all", "public", "user"), error.ignore = FALSE, diff --git a/R/gen_modified_data.R b/R/gen_modified_data.R index 3d71519..290e89d 100644 --- a/R/gen_modified_data.R +++ b/R/gen_modified_data.R @@ -2,8 +2,8 @@ #' #' @description Function to check for updates, changes, or new objects based on a specific date. #' -#' @param code A character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param type Character string. Specific GENESIS and regionalstatistik.de object types: 'tables', 'statistics', and 'statisticsUpdates'. Specific Zensus 2022 object types: 'tables' and 'statistics'. All types that are specific for one database can be used together through 'all', which is the default. #' @param date Character string. Specific date that is used as the last update or upload time to include an object in return. Default option is 'now', which uses the current date of your system. Alternative options are 'week_before', using the current date of your system minus 7 days, 'month_before', using the current date of your system minus 4 weeks, and 'year_before', using the current date of your system minus 52 weeks. Additionally, it is possible to fill in a specific date of format 'DD.MM.YYYY'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. @@ -27,7 +27,7 @@ #' } #' gen_modified_data <- function(code = "", - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), type = c("all", "tables", "statistics", "statisticsUpdates"), date = c("now", "week_before", "month_before", "year_before"), pagelength = 500, @@ -126,7 +126,7 @@ gen_modified_data <- function(code = "", if (type == "statisticsUpdates") { - if (db == "genesis" | db == "regio") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, diff --git a/R/gen_objects2stat.R b/R/gen_objects2stat.R index 5cc7753..e545ed7 100644 --- a/R/gen_objects2stat.R +++ b/R/gen_objects2stat.R @@ -2,8 +2,8 @@ #' #' Function to find objects related to a statistic #' -#' @param code Character string with a maximum length of 6 characters (15 characters if 'cubes' are not used as a category). Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code Character string with a maximum length of 6 characters (15 characters if 'cubes' are not used as a category). Code from a database object. Only one code per iteration. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param category Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. @@ -28,7 +28,7 @@ #' } #' gen_objects2stat <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), category = c("tables", "variables", "cubes"), area = c("all", "public", "user"), detailed = FALSE, @@ -179,11 +179,12 @@ gen_objects2stat <- function(code = NULL, #--------------------------------------------------------------------------- - if ("cubes" %in% category && db == "zensus") { + # HUHU: Does it work also for 'bayern' & 'sa'? + if ("cubes" %in% category && db %in% c("zensus", "bayern", "sa")) { - df_cubes <- "There are generally no 'cubes' objects available for the 'zensus' database." + df_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") - } else if ("cubes" %in% category && (db == "genesis" || db == "regio")) { + } else if ("cubes" %in% category && (db == "genesis" | db == "regio" | db == "nrw" | db == "bildung")) { results_raw <- gen_api(endpoint = "catalogue/cubes2statistic", database = db, diff --git a/R/gen_objects2var.R b/R/gen_objects2var.R index 0b3bee3..4a00e5d 100644 --- a/R/gen_objects2var.R +++ b/R/gen_objects2var.R @@ -2,8 +2,8 @@ #' #' @description Function to find objects related to a variable #' -#' @param code Character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param category Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. @@ -28,7 +28,7 @@ #' } #' gen_objects2var <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), category = c("tables", "statistics", "cubes"), area = c("all", "public", "user"), detailed = FALSE, @@ -178,11 +178,12 @@ gen_objects2var <- function(code = NULL, #--------------------------------------------------------------------------- - if ("cubes" %in% category && db == "zensus") { + # HUHU: Does it work also for 'bayern' & 'sa'? + if ("cubes" %in% category && db %in% c("zensus", "bayern", "sa")) { - df_cubes <- "There are generally no 'cubes' objects available for the 'zensus' database." + df_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") - } else if ("cubes" %in% category && (db == "genesis" || db == "regio")) { + } else if ("cubes" %in% category && (db == "genesis" | db == "regio" | db == "nrw" | db == "bildung")) { results_raw <- gen_api(endpoint = "catalogue/timeseries2variable", database = db, diff --git a/R/gen_qualitysigns.R b/R/gen_qualitysigns.R index 6c7183b..065e375 100644 --- a/R/gen_qualitysigns.R +++ b/R/gen_qualitysigns.R @@ -1,8 +1,8 @@ #' gen_signs #' -#' @description Function to list all currently used special signs (e.g., 0, *, X, (), p, ...) and their meaning in GENESIS, Zensus 2022 and/or regionalstatistik.de. +#' @description Function to list all currently used special signs (e.g., 0, *, X, (), p, ...) and their meaning in the respective database. #' -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. In case of success, should a message be printed? Defaults to 'TRUE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -10,7 +10,7 @@ #' @return A list of all current used special signs. #' @export #' -gen_signs <- function(database = c("all", "genesis", "zensus", "regio"), +gen_signs <- function(database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), error.ignore = FALSE, verbose = TRUE, ...) { diff --git a/R/gen_var2-val2.R b/R/gen_var2-val2.R index 1701a3b..fab27a7 100644 --- a/R/gen_var2-val2.R +++ b/R/gen_var2-val2.R @@ -2,8 +2,8 @@ #' #' @description Function to generate variables from statistics #' -#' @param code Character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. @@ -23,7 +23,7 @@ #' } #' gen_var2stat <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), @@ -69,7 +69,7 @@ gen_var2stat <- function(code = NULL, #--------------------------------------------------------------------------- - if (db == "genesis" | db == "regio") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { results_raw <- gen_api(endpoint = "catalogue/variables2statistic", database = db, @@ -158,8 +158,8 @@ gen_var2stat <- function(code = NULL, #' #' @description Function to extract the possible values from a variable. Values for continuous variables are not extractable, which is why the function returns a warning message in this case. #' -#' @param code Character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. @@ -177,7 +177,7 @@ gen_var2stat <- function(code = NULL, #' } #' gen_val2var <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), sortcriterion = c("code", "content"), pagelength = 500, @@ -220,7 +220,7 @@ gen_val2var <- function(code = NULL, } - if (db == "genesis" | db == "regio") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { results_raw <- gen_api(endpoint = "catalogue/values2variable", database = db, @@ -305,8 +305,8 @@ gen_val2var <- function(code = NULL, #' #' @description Get values from variables from a statistic. Values for continuous variables cannot be extracted, so the function returns a warning message. #' -#' @param code Character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. @@ -327,7 +327,7 @@ gen_val2var <- function(code = NULL, #' } #' gen_val2var2stat <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), @@ -414,8 +414,8 @@ gen_val2var2stat <- function(code = NULL, #' #' @description Function to search for specific variables #' -#' @param code Character string with a maximum length of 6 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'. +#' @param code Character string with a maximum length of 6 characters. Code from a database object. Only one code per iteration. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. @@ -433,7 +433,7 @@ gen_val2var2stat <- function(code = NULL, #' } #' gen_search_vars <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), sortcriterion = c("code", "content"), pagelength = 500, @@ -476,7 +476,7 @@ gen_search_vars <- function(code = NULL, #--------------------------------------------------------------------------- - if (db == "genesis" | db == "regio") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { results_raw <- gen_api(endpoint = "catalogue/variables", database = db, diff --git a/R/utils_dataprocessing.R b/R/utils_dataprocessing.R index 484fd59..35f3a4d 100644 --- a/R/utils_dataprocessing.R +++ b/R/utils_dataprocessing.R @@ -778,6 +778,8 @@ check_function_input <- function(code = NULL, } + # HUHU: Check for other databases missing + } #----------------------------------------------------------------------------- @@ -1203,14 +1205,14 @@ test_database_function <- function(input, error.input, text){ } else if (length(res) == 0 || is.null(res)) { - stop("All the databases you have specified are not part of this package.\nPlease enter valid database names ('regio', 'zensus', 'genesis' or 'all').", + stop("All the databases you have specified are not part of this package.\nPlease enter valid database names ('regio', 'zensus', 'genesis','bayern', 'nrw', 'bildung', 'sa' or 'all').", call. = FALSE) } else if (length(res) != length(input)) { if (isFALSE(error.input)) { - stop("One or more of the specified databases are not part of this package. Currently only 'genesis', 'zensus', and 'regio' are implemented.", + stop("One or more of the specified databases are not part of this package. Currently only 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung', and 'sa' are implemented.", call. = FALSE) } else { diff --git a/man/gen_alternative_terms.Rd b/man/gen_alternative_terms.Rd index 60e424d..9ef5857 100644 --- a/man/gen_alternative_terms.Rd +++ b/man/gen_alternative_terms.Rd @@ -7,7 +7,7 @@ gen_alternative_terms( term = NULL, similarity = TRUE, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), pagelength = 500, verbose = TRUE, ... @@ -18,7 +18,7 @@ gen_alternative_terms( \item{similarity}{Boolean. Indicator if the output of the function should be sorted based on a Levenshtein edit distance based on the \code{adist()} function. Default is 'TRUE'.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{pagelength}{Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects.} @@ -30,7 +30,7 @@ gen_alternative_terms( A list with all recollected elements from the respective database. Attributes are added to the data.frame, describing the search configuration for the returned output. } \description{ -Function to find search terms that are similar or related to one another in spelling and also represented in the GENESIS, Zensus 2022 or regionalstatistik.de databases. Important note: The API call is searching for terms with the same characters. To be useful in searching for related terms it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. +Function to find search terms that are similar or related to one another in spelling and also represented in the databases. Important note: The API call is searching for terms with the same characters. To be useful in searching for related terms it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. } \examples{ \dontrun{ diff --git a/man/gen_auth_save.Rd b/man/gen_auth_save.Rd index bf90acc..1752cd1 100644 --- a/man/gen_auth_save.Rd +++ b/man/gen_auth_save.Rd @@ -7,7 +7,7 @@ gen_auth_save(database, use_token = FALSE) } \arguments{ -\item{database}{Character string. The database to store credentials for ('all', 'genesis', 'zensus' or 'regio').} +\item{database}{Character string. The database to store credentials for ('all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'sa').} \item{use_token}{Boolean. Do you want to (if possible) set an API token instead of password + username? Note: This is not supported by regionalstatistik.de. Defaults to FALSE.} } diff --git a/man/gen_catalogue.Rd b/man/gen_catalogue.Rd index 7494ece..577aead 100644 --- a/man/gen_catalogue.Rd +++ b/man/gen_catalogue.Rd @@ -6,7 +6,7 @@ \usage{ gen_catalogue( code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), category = c("tables", "statistics", "cubes"), area = c("all", "public", "user"), detailed = FALSE, @@ -18,9 +18,9 @@ gen_catalogue( ) } \arguments{ -\item{code}{String with a maximum length of 15 characters for a database object (GENESIS and regionalstatistik.de) and 15 characters for a Zensus 2022 object. Only one code per iteration. "*" notations are possible.} +\item{code}{String with a maximum length of 15 characters. Only one code per iteration. "*" notations are possible.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{category}{Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} @@ -42,7 +42,7 @@ gen_catalogue( A list with all recalled elements from the API. Based on the 'detailed' parameter, it contains more or less information, but always includes the code of the object, the title, and the type of the object. This is done to facilitate further processing with the data. Attributes are added to the data.frame describing the search configuration for the returned output. } \description{ -Function to search for tables, statistics and cubes from GENESIS, Zensus 2022 or regionalstatistik.de. Additionally, it structures the output based on the internal tree structure based on the EVAS numbers. Time-series are represented as cubes with a specified time span. Important note: To be useful in searching for objects it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. +Function to search for tables, statistics and cubes from the respective database. Additionally, it structures the output based on the internal tree structure based on the EVAS numbers. Time-series are represented as cubes with a specified time span. Important note: To be useful in searching for objects it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. } \examples{ \dontrun{ diff --git a/man/gen_find.Rd b/man/gen_find.Rd index b42ca7a..7788a19 100644 --- a/man/gen_find.Rd +++ b/man/gen_find.Rd @@ -6,7 +6,7 @@ \usage{ gen_find( term = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), category = c("all", "tables", "statistics", "variables", "cubes"), detailed = FALSE, ordering = TRUE, @@ -19,7 +19,7 @@ gen_find( \arguments{ \item{term}{A character string with no maximum character length, but a word limit of five words.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{category}{Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} @@ -39,7 +39,7 @@ gen_find( A list with all recalled elements from the API. Based on the 'detailed' parameter it contains more or less information, but always includes the code of the object, the title, and the type of the object. This is done to facilitate further processing with the data. Attributes are added to the data.frame describing the search configuration for the returned output. } \description{ -Function to search through the databases GENESIS, Zensus 2022 and regionalstatistik.de. It is similar in usage as the search function on the GENESIS main page (https://www-genesis.destatis.de/genesis/online). +Function to search through the databases. It is similar in usage as the search function on the GENESIS main page (https://www-genesis.destatis.de/genesis/online). In the search query, "UND" (German word for 'and', also written "und" or "&") as well as "ODER" (German word for 'or', also written "oder" or "|") can be included and logically combined. Furthermore, wildcards are possible by including "*". If more then one word is included in the term string, 'and' is used automatically to combine the different words. Important note: Time-series are treated as cubes in GENESIS and regionalstatistik.de, they are not longer distinguished. If you want to find a specific object with a clear code with this find function, you need to specify the object type or search for all object types. } diff --git a/man/gen_logincheck.Rd b/man/gen_logincheck.Rd index b8dc855..6aedceb 100644 --- a/man/gen_logincheck.Rd +++ b/man/gen_logincheck.Rd @@ -7,7 +7,7 @@ gen_logincheck(database = "all", verbose = TRUE, ...) } \arguments{ -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{verbose}{Boolean. In case of success, should a message be printed? Defaults to 'TRUE'.} diff --git a/man/gen_metadata.Rd b/man/gen_metadata.Rd index 64e17ec..3b2c943 100644 --- a/man/gen_metadata.Rd +++ b/man/gen_metadata.Rd @@ -6,7 +6,7 @@ \usage{ gen_metadata( code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), category = c("cube", "statistic", "table", "variable", "value"), area = c("all", "public", "user"), error.ignore = FALSE, @@ -16,9 +16,9 @@ gen_metadata( ) } \arguments{ -\item{code}{String with a maximum length of 15 characters for a database object (GENESIS, regionalstatistik.de, Zensus 2022). Only one code per iteration.} +\item{code}{String with a maximum length of 15 characters for a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{category}{Character string. Specifying the specific object type of the object that you want meta data for. No default option - you need to specify the object type. Hint: The functions in 'restatis' often return information on object 'Type'.} diff --git a/man/gen_metadata_cube.Rd b/man/gen_metadata_cube.Rd index f1626ec..73d6712 100644 --- a/man/gen_metadata_cube.Rd +++ b/man/gen_metadata_cube.Rd @@ -6,7 +6,7 @@ \usage{ gen_metadata_cube( code = NULL, - database = c("all", "genesis", "regio"), + database = c("all", "genesis", "regio", "nrw", "bildung"), area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -15,9 +15,9 @@ gen_metadata_cube( ) } \arguments{ -\item{code}{A character string with a maximum length of 15 characters. Code from a GENESIS or regionalstatistik.de object. Only one code per iteration.} +\item{code}{A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), landesdatenbank.nrw.de ('nrw') or bildungsmonitoring.de ('bildung') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_metadata_statistic.Rd b/man/gen_metadata_statistic.Rd index de02d39..084f295 100644 --- a/man/gen_metadata_statistic.Rd +++ b/man/gen_metadata_statistic.Rd @@ -6,7 +6,7 @@ \usage{ gen_metadata_statistic( code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -15,9 +15,9 @@ gen_metadata_statistic( ) } \arguments{ -\item{code}{A character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration.} +\item{code}{A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_metadata_table.Rd b/man/gen_metadata_table.Rd index e377a8e..48c7e1b 100644 --- a/man/gen_metadata_table.Rd +++ b/man/gen_metadata_table.Rd @@ -6,7 +6,7 @@ \usage{ gen_metadata_table( code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -15,9 +15,9 @@ gen_metadata_table( ) } \arguments{ -\item{code}{A character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration.} +\item{code}{A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_metadata_value.Rd b/man/gen_metadata_value.Rd index 106ea40..81a8338 100644 --- a/man/gen_metadata_value.Rd +++ b/man/gen_metadata_value.Rd @@ -6,7 +6,7 @@ \usage{ gen_metadata_value( code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -15,9 +15,9 @@ gen_metadata_value( ) } \arguments{ -\item{code}{A character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration.} +\item{code}{A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_metadata_variable.Rd b/man/gen_metadata_variable.Rd index b29b12d..1e6d88b 100644 --- a/man/gen_metadata_variable.Rd +++ b/man/gen_metadata_variable.Rd @@ -6,7 +6,7 @@ \usage{ gen_metadata_variable( code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -15,9 +15,9 @@ gen_metadata_variable( ) } \arguments{ -\item{code}{A character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration.} +\item{code}{A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_modified_data.Rd b/man/gen_modified_data.Rd index 94a5f58..adba3c8 100644 --- a/man/gen_modified_data.Rd +++ b/man/gen_modified_data.Rd @@ -6,7 +6,7 @@ \usage{ gen_modified_data( code = "", - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), type = c("all", "tables", "statistics", "statisticsUpdates"), date = c("now", "week_before", "month_before", "year_before"), pagelength = 500, @@ -15,9 +15,9 @@ gen_modified_data( ) } \arguments{ -\item{code}{A character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration.} +\item{code}{A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{type}{Character string. Specific GENESIS and regionalstatistik.de object types: 'tables', 'statistics', and 'statisticsUpdates'. Specific Zensus 2022 object types: 'tables' and 'statistics'. All types that are specific for one database can be used together through 'all', which is the default.} diff --git a/man/gen_objects2stat.Rd b/man/gen_objects2stat.Rd index 8ff4b50..f3a2455 100644 --- a/man/gen_objects2stat.Rd +++ b/man/gen_objects2stat.Rd @@ -6,7 +6,7 @@ \usage{ gen_objects2stat( code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), category = c("tables", "variables", "cubes"), area = c("all", "public", "user"), detailed = FALSE, @@ -18,9 +18,9 @@ gen_objects2stat( ) } \arguments{ -\item{code}{Character string with a maximum length of 6 characters (15 characters if 'cubes' are not used as a category). Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration.} +\item{code}{Character string with a maximum length of 6 characters (15 characters if 'cubes' are not used as a category). Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{category}{Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} diff --git a/man/gen_objects2var.Rd b/man/gen_objects2var.Rd index dd422cb..d99053a 100644 --- a/man/gen_objects2var.Rd +++ b/man/gen_objects2var.Rd @@ -6,7 +6,7 @@ \usage{ gen_objects2var( code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), category = c("tables", "statistics", "cubes"), area = c("all", "public", "user"), detailed = FALSE, @@ -18,9 +18,9 @@ gen_objects2var( ) } \arguments{ -\item{code}{Character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration.} +\item{code}{Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{category}{Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} diff --git a/man/gen_search_vars.Rd b/man/gen_search_vars.Rd index 4cd7545..670da87 100644 --- a/man/gen_search_vars.Rd +++ b/man/gen_search_vars.Rd @@ -6,7 +6,7 @@ \usage{ gen_search_vars( code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), sortcriterion = c("code", "content"), pagelength = 500, @@ -16,9 +16,9 @@ gen_search_vars( ) } \arguments{ -\item{code}{Character string with a maximum length of 6 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration.} +\item{code}{Character string with a maximum length of 6 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_signs.Rd b/man/gen_signs.Rd index 8c66e32..80f65e1 100644 --- a/man/gen_signs.Rd +++ b/man/gen_signs.Rd @@ -5,14 +5,14 @@ \title{gen_signs} \usage{ gen_signs( - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), error.ignore = FALSE, verbose = TRUE, ... ) } \arguments{ -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{error.ignore}{Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE.} @@ -24,5 +24,5 @@ gen_signs( A list of all current used special signs. } \description{ -Function to list all currently used special signs (e.g., 0, *, X, (), p, ...) and their meaning in GENESIS, Zensus 2022 and/or regionalstatistik.de. +Function to list all currently used special signs (e.g., 0, *, X, (), p, ...) and their meaning in the respective database. } diff --git a/man/gen_val2var.Rd b/man/gen_val2var.Rd index 11f12bd..815c246 100644 --- a/man/gen_val2var.Rd +++ b/man/gen_val2var.Rd @@ -6,7 +6,7 @@ \usage{ gen_val2var( code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), sortcriterion = c("code", "content"), pagelength = 500, @@ -16,9 +16,9 @@ gen_val2var( ) } \arguments{ -\item{code}{Character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration.} +\item{code}{Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_val2var2stat.Rd b/man/gen_val2var2stat.Rd index c022599..15ae644 100644 --- a/man/gen_val2var2stat.Rd +++ b/man/gen_val2var2stat.Rd @@ -6,7 +6,7 @@ \usage{ gen_val2var2stat( code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), @@ -18,9 +18,9 @@ gen_val2var2stat( ) } \arguments{ -\item{code}{Character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration.} +\item{code}{Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_var2stat.Rd b/man/gen_var2stat.Rd index 3bbbed2..e13c6e6 100644 --- a/man/gen_var2stat.Rd +++ b/man/gen_var2stat.Rd @@ -6,7 +6,7 @@ \usage{ gen_var2stat( code = NULL, - database = c("all", "genesis", "zensus", "regio"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), @@ -17,9 +17,9 @@ gen_var2stat( ) } \arguments{ -\item{code}{Character string with a maximum length of 15 characters. Code from a GENESIS, Zensus 2022 or regionalstatistik.de object. Only one code per iteration.} +\item{code}{Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus') or regionalstatistik.de ('regio') database is called. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} From 24b79a439aa36968c1b56447fc3d4fe1bc828415 Mon Sep 17 00:00:00 2001 From: buhly Date: Sun, 31 Aug 2025 19:04:37 +0200 Subject: [PATCH 04/26] starting to incorporate PR --- R/gen_alternative_terms.R | 6 +-- R/gen_auth.R | 87 +++++++++++++++++++++++---------------- R/zzz.R | 7 +++- 3 files changed, 60 insertions(+), 40 deletions(-) diff --git a/R/gen_alternative_terms.R b/R/gen_alternative_terms.R index 005d5e7..56aa790 100644 --- a/R/gen_alternative_terms.R +++ b/R/gen_alternative_terms.R @@ -1,10 +1,10 @@ #' Find similar search terms #' -#' @description Function to find search terms that are similar or related to one another in spelling and also represented in the databases. Important note: The API call is searching for terms with the same characters. To be useful in searching for related terms it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. +#' @description Function to find search terms that are similar or related to one another in spelling and also represented in the databases supported by {restatis}. Important note: The API call is searching for terms with the same characters. To be useful in searching for related terms it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. #' #' @param term Character string. Maximum length of 15 characters. Term or word for which you are searching for alternative or related terms. Use of '*' as a placeholder is possible to generate broader search areas. #' @param similarity Boolean. Indicator if the output of the function should be sorted based on a Levenshtein edit distance based on the \code{adist()} function. Default is 'TRUE'. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -27,7 +27,7 @@ #' gen_alternative_terms <- function(term = NULL, similarity = TRUE, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), pagelength = 500, verbose = TRUE, ...) { diff --git a/R/gen_auth.R b/R/gen_auth.R index c8c80ef..6ff4e6d 100644 --- a/R/gen_auth.R +++ b/R/gen_auth.R @@ -2,8 +2,8 @@ #' #' @description Save credentials of the different databases for further convenient use #' -#' @param database Character string. The database to store credentials for ('all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'sa'). -#' @param use_token Boolean. Do you want to (if possible) set an API token instead of password + username? Note: This is not supported by regionalstatistik.de. Defaults to FALSE. +#' @param database Character string. The database to store credentials for ('all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'st'). +#' @param use_token Boolean. Do you want to (if possible) set an API token instead of password + username? Note: This is only supported by 'genesis' and 'zensus'. Defaults to FALSE. #' #' @details Username and password are encrypted and saved as RDS in the #' package config directory. A random string is generated and stored in the @@ -58,7 +58,7 @@ gen_auth_save <- function(database, } - if (database == "sa" & isTRUE(use_token)) { + if (database == "st" & isTRUE(use_token)) { warning("genesis.sachsen-anhalt.de does not support API tokens. Defaulting to username and password.", call. = FALSE) @@ -67,7 +67,7 @@ gen_auth_save <- function(database, #----------------------------------------------------------------------------- - if (database %in% c("regio", "bayern", "nrw", "bildung", "sa")) { + if (database %in% c("regio", "bayern", "nrw", "bildung", "st")) { insert_and_save_credentials(database, use_token) @@ -85,12 +85,21 @@ gen_auth_save <- function(database, #--------------------------------------------------------------------------- - walk_arguments <- list( - ui_menu_database = c("GENESIS", "Zensus 2022", "regionalstatistik.de", "statistikdaten.bayern.de", - "landesdatenbank.nrw.de", "bildungsmonitoring.de", "genesis.sachsen-anhalt.de"), - db_names = c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), - use_token = use_token - ) + walk_arguments <- list(ui_menu_database = c("GENESIS", + "Zensus 2022", + "regionalstatistik.de", + "statistikdaten.bayern.de", + "landesdatenbank.nrw.de", + "bildungsmonitoring.de", + "genesis.sachsen-anhalt.de"), + db_names = c("genesis", + "zensus", + "regio", + "bayern", + "nrw", + "bildung", + "st"), + use_token = use_token) purrr::pwalk(.l = walk_arguments, .f = function(ui_menu_database, @@ -110,7 +119,7 @@ gen_auth_save <- function(database, } else { - stop("Invalid 'database' argument. Please choose 'all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'sa'.", + stop("Invalid 'database' argument. Please choose 'all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'st'.", call. = FALSE) } @@ -145,9 +154,9 @@ gen_auth_get <- function(database = NULL) { if (length(database) == 1) { - if (!(database %in% c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"))) { + if (!(database %in% c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"))) { - stop("Misspecification of parameter 'database': Must only be 'all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'sa'.", + stop("Misspecification of parameter 'database': Must only be 'all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'st'.", call. = FALSE) } @@ -167,9 +176,9 @@ gen_auth_get <- function(database = NULL) { #--------------------------------------------------------------------------- - if (!all(database %in% c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"))) { + if (!all(database %in% c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"))) { - stop("Misspecification of parameter 'database': Must only be 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'sa'.", + stop("Misspecification of parameter 'database': Must only be 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'st'.", call. = FALSE) } @@ -196,7 +205,7 @@ gen_auth_get <- function(database = NULL) { return(httr2::secret_read_rds(auth_path, "GENESIS_KEY")) - #--------------------------------------------------------------------------- + #------------------------------------------------------------------------- } else if (database == "zensus") { @@ -212,7 +221,7 @@ gen_auth_get <- function(database = NULL) { return(httr2::secret_read_rds(auth_path, "ZENSUS_KEY")) - #------------------------------------------------------------------------------- + #------------------------------------------------------------------------- } else if (database == "regio") { @@ -228,7 +237,7 @@ gen_auth_get <- function(database = NULL) { return(httr2::secret_read_rds(auth_path, "REGIO_KEY")) - #----------------------------------------------------------------------------- + #------------------------------------------------------------------------- } else if(database == "bayern") { @@ -244,6 +253,8 @@ gen_auth_get <- function(database = NULL) { return(httr2::secret_read_rds(auth_path, "BAYERN_KEY")) + #------------------------------------------------------------------------- + } else if(database == "nrw") { auth_path <- gen_auth_path("auth_nrw.rds") @@ -258,6 +269,8 @@ gen_auth_get <- function(database = NULL) { return(httr2::secret_read_rds(auth_path, "NRW_KEY")) + #------------------------------------------------------------------------- + } else if(database == "bildung") { auth_path <- gen_auth_path("auth_bildung.rds") @@ -272,11 +285,13 @@ gen_auth_get <- function(database = NULL) { return(httr2::secret_read_rds(auth_path, "BILDUNG_KEY")) - } else if(database == "sa") { + #------------------------------------------------------------------------- - auth_path <- gen_auth_path("auth_sa.rds") + } else if(database == "st") { - if (!(file.exists(auth_path) && nzchar(Sys.getenv("SA_KEY")))) { + auth_path <- gen_auth_path("auth_st.rds") + + if (!(file.exists(auth_path) && nzchar(Sys.getenv("ST_KEY")))) { stop(paste0("genesis.sachsen-anhalt.de database credentials not found. ", "Please run 'gen_auth_save()' to store genesis.sachsen-anhalt.de database username and password."), @@ -284,7 +299,9 @@ gen_auth_get <- function(database = NULL) { } - return(httr2::secret_read_rds(auth_path, "SA_KEY")) + return(httr2::secret_read_rds(auth_path, "ST_KEY")) + + #------------------------------------------------------------------------- } else if (database == "all") { @@ -303,7 +320,7 @@ gen_auth_get <- function(database = NULL) { } - #--------------------------------------------------------------------------- + #------------------------------------------------------------------------- auth_path <- gen_auth_path("auth_zensus.rds") @@ -320,7 +337,7 @@ gen_auth_get <- function(database = NULL) { } - #--------------------------------------------------------------------------- + #------------------------------------------------------------------------- auth_path <- gen_auth_path("auth_regio.rds") @@ -337,7 +354,7 @@ gen_auth_get <- function(database = NULL) { } - #--------------------------------------------------------------------------- + #------------------------------------------------------------------------- auth_path <- gen_auth_path("auth_bayern.rds") @@ -354,7 +371,7 @@ gen_auth_get <- function(database = NULL) { } - #--------------------------------------------------------------------------- + #------------------------------------------------------------------------- auth_path <- gen_auth_path("auth_nrw.rds") @@ -371,7 +388,7 @@ gen_auth_get <- function(database = NULL) { } - #--------------------------------------------------------------------------- + #------------------------------------------------------------------------- auth_path <- gen_auth_path("auth_bildung.rds") @@ -388,11 +405,11 @@ gen_auth_get <- function(database = NULL) { } - #--------------------------------------------------------------------------- + #------------------------------------------------------------------------- - auth_path <- gen_auth_path("auth_sa.rds") + auth_path <- gen_auth_path("auth_st.rds") - if (!(file.exists(auth_path) && nzchar(Sys.getenv("SA_KEY")))) { + if (!(file.exists(auth_path) && nzchar(Sys.getenv("ST_KEY")))) { warning(paste0("genesis.sachsen-anhalt.de database credentials not found. ", "Please run 'gen_auth_save()' to store genesis.sachsen-anhalt.de database username and password."), @@ -401,7 +418,7 @@ gen_auth_get <- function(database = NULL) { } else { message("Credentials for database genesis.sachsen-anhalt.de:\n") - print(httr2::secret_read_rds(auth_path, "SA_KEY")) + print(httr2::secret_read_rds(auth_path, "ST_KEY")) } @@ -528,11 +545,11 @@ gen_auth_get <- function(database = NULL) { #--------------------------------------------------------------------------- - if ("sa" %in% database) { + if ("st" %in% database) { - auth_path <- gen_auth_path("auth_sa.rds") + auth_path <- gen_auth_path("auth_st.rds") - if (!(file.exists(auth_path) && nzchar(Sys.getenv("SA_KEY")))) { + if (!(file.exists(auth_path) && nzchar(Sys.getenv("ST_KEY")))) { stop(paste0("genesis.sachsen-anhalt.de database credentials not found. ", "Please run 'gen_auth_save()' to store genesis.sachsen-anhalt.de database username and password."), @@ -541,7 +558,7 @@ gen_auth_get <- function(database = NULL) { } message("Credentials for database genesis.sachsen-anhalt.de:\n") - print(httr2::secret_read_rds(auth_path, "SA_KEY")) + print(httr2::secret_read_rds(auth_path, "ST_KEY")) } diff --git a/R/zzz.R b/R/zzz.R index 615f9ec..1da986d 100644 --- a/R/zzz.R +++ b/R/zzz.R @@ -15,6 +15,9 @@ # Set the default language of the package if (!nzchar(Sys.getenv("RESTATIS_LANG"))) Sys.setenv(RESTATIS_LANG = "en") + #----------------------------------------------------------------------------- + # SETTING DEFAULT URLs FOR DIFFERENT DATABASES SUPPORTED BY THE PACKAGE + # Set the default URL for the GENESIS database if (!nzchar(Sys.getenv("RESTATIS_GENESIS_URL"))) { @@ -51,9 +54,9 @@ } # Set the default URL for the genesis.sachsen-anhalt.de database - if (!nzchar(Sys.getenv("RESTATIS_SA_URL"))) { + if (!nzchar(Sys.getenv("RESTATIS_ST_URL"))) { - Sys.setenv(RESTATIS_SA_URL = "https://genesis.sachsen-anhalt.de/webservice/rest/2020/") + Sys.setenv(RESTATIS_ST_URL = "https://genesis.sachsen-anhalt.de/webservice/rest/2020/") } From 7269a86fa2293c597be81d61e73f63553dfb8f06 Mon Sep 17 00:00:00 2001 From: buhly Date: Sun, 28 Sep 2025 11:46:05 +0200 Subject: [PATCH 05/26] small fixes to PR --- DESCRIPTION | 2 +- R/gen_api.R | 4 ++-- R/gen_catalogue.R | 8 ++++---- R/gen_cube.R | 6 +++--- R/gen_find.R | 12 ++++++------ R/gen_logincheck.R | 2 +- R/gen_metadata.R | 28 ++++++++++++++-------------- R/gen_modified_data.R | 6 +++--- R/gen_objects2stat.R | 8 ++++---- R/gen_objects2var.R | 8 ++++---- R/gen_qualitysigns.R | 4 ++-- R/gen_table.R | 2 +- R/gen_var2-val2.R | 22 +++++++++++----------- R/utils_dataprocessing.R | 12 ++++++------ R/utils_httr2.R | 28 ++++++++++++++-------------- 15 files changed, 76 insertions(+), 76 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index a2b7f60..eea319c 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -2,7 +2,7 @@ Package: restatis Title: R Wrapper to Access a Wide Range of Germany's Federal Statistical System Databases Based on the GENESIS Web Service RESTful API of the German Federal Statistical Office (Statistisches Bundesamt/Destatis) -Version: 0.3.0 +Version: 0.4.0 Authors@R: c( person("Yannik", "Buhl", , "ybuhl@posteo.de", role = c("aut", "cre")), person("Zoran", "Kovacevic", role = "aut", diff --git a/R/gen_api.R b/R/gen_api.R index 77172d2..5961ac5 100644 --- a/R/gen_api.R +++ b/R/gen_api.R @@ -73,9 +73,9 @@ gen_api <- function(..., url <- Sys.getenv("RESTATIS_BILDUNG_URL") - } else if (database == "sa") { + } else if (database == "st") { - url <- Sys.getenv("RESTATIS_SA_URL") + url <- Sys.getenv("RESTATIS_ST_URL") } else { diff --git a/R/gen_catalogue.R b/R/gen_catalogue.R index ca6d66f..69acead 100644 --- a/R/gen_catalogue.R +++ b/R/gen_catalogue.R @@ -3,7 +3,7 @@ #' @description Function to search for tables, statistics and cubes from the respective database. Additionally, it structures the output based on the internal tree structure based on the EVAS numbers. Time-series are represented as cubes with a specified time span. Important note: To be useful in searching for objects it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. #' #' @param code String with a maximum length of 15 characters. Only one code per iteration. "*" notations are possible. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param category Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. @@ -29,7 +29,7 @@ #' } #' gen_catalogue <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), category = c("tables", "statistics", "cubes"), area = c("all", "public", "user"), detailed = FALSE, @@ -79,8 +79,8 @@ gen_catalogue <- function(code = NULL, #--------------------------------------------------------------------------- - # HUHU: Does it work also for 'bayern' & 'sa'? - if ("cubes" %in% category && db %in% c("zensus", "bayern", "sa")) { + # HUHU: Does it work also for 'bayern' & 'st'? + if ("cubes" %in% category && db %in% c("zensus", "bayern", "st")) { list_of_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") diff --git a/R/gen_cube.R b/R/gen_cube.R index 8d44801..3b45c50 100644 --- a/R/gen_cube.R +++ b/R/gen_cube.R @@ -1,8 +1,8 @@ #' gen_cube #' -#' @description Download a cube with data from GENESIS or regionalstatistik.de database +#' @description Download a cube with data from GENESIS, regionalstatistik.de, landesdatenbank.nrw.de or bildungsmonitoring.de database #' -#' @param name Character string for a cube object (only GENESIS and regionalstatistik.de) +#' @param name Character string for a cube object (only GENESIS, regionalstatistik.de, landesdatenbank.nrw.de or bildungsmonitoring.de) #' @param ... Further (optional) parameters passed on to the API call: #' \describe{ #' \item{\code{area}}{Character string. The area in which the table is stored. Possible values: @@ -57,7 +57,7 @@ gen_cube <- function(name, ...) { #------------------------------------------------------------------------------- gen_cube_ <- function(name, - database = c("genesis", "regio", "nrw", "bildung"), # HUHU: Works for 'bayern' & 'sa'? + database = c("genesis", "regio", "nrw", "bildung"), # HUHU: Works for 'bayern' & 'st'? area = c("public", "user"), values = TRUE, metadata = TRUE, diff --git a/R/gen_find.R b/R/gen_find.R index b445292..291323c 100644 --- a/R/gen_find.R +++ b/R/gen_find.R @@ -5,7 +5,7 @@ #' Important note: Time-series are treated as cubes in GENESIS and regionalstatistik.de, they are not longer distinguished. If you want to find a specific object with a clear code with this find function, you need to specify the object type or search for all object types. #' #' @param term A character string with no maximum character length, but a word limit of five words. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param category Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param ordering A logical. Indicator if the function should return the output of the iteration ordered first based on the fact if the searched term is appearing in the title of the object and secondly on an estimator of the number of variables in this object. Default option is 'TRUE'. @@ -33,7 +33,7 @@ #' } #' gen_find <- function(term = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), category = c("all", "tables", "statistics", "variables", "cubes"), detailed = FALSE, ordering = TRUE, @@ -75,8 +75,8 @@ gen_find <- function(term = NULL, #--------------------------------------------------------------------------- - # HUHU: Does it work also for 'bayern' & 'sa'? - if (db %in% c("zensus", "bayern", "sa") && category == "cubes") { + # HUHU: Does it work also for 'bayern' & 'st'? + if (db %in% c("zensus", "bayern", "st") && category == "cubes") { empty_object <- "FAIL" @@ -113,7 +113,7 @@ gen_find <- function(term = NULL, return(list_resp) - } else if (empty_object == "FAIL" & db %in% c("zensus", "bayern", "sa") ){ + } else if (empty_object == "FAIL" & db %in% c("zensus", "bayern", "st") ){ list_resp <- list("Output" = paste("There are generally no 'cubes' objects available for the '", db, "' database.")) @@ -548,7 +548,7 @@ gen_find <- function(term = NULL, } - } else if (db %in% c("zensus", "bayern", "sa")) { + } else if (db %in% c("zensus", "bayern", "st")) { df_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") diff --git a/R/gen_logincheck.R b/R/gen_logincheck.R index 67cedc8..ac4eb0f 100644 --- a/R/gen_logincheck.R +++ b/R/gen_logincheck.R @@ -2,7 +2,7 @@ #' #' @description Function to check if a login is possible for a certain database. #' -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param verbose Boolean. In case of success, should a message be printed? Defaults to 'TRUE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' diff --git a/R/gen_metadata.R b/R/gen_metadata.R index c7841a4..396240f 100644 --- a/R/gen_metadata.R +++ b/R/gen_metadata.R @@ -3,7 +3,7 @@ #' @description Function to search for meta information for a specific statistic. #' #' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -20,7 +20,7 @@ #' } #' gen_metadata_statistic <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -57,7 +57,7 @@ gen_metadata_statistic <- function(code = NULL, } - if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "st") { results_raw <- gen_api(endpoint = "metadata/statistic", database = db, @@ -136,7 +136,7 @@ gen_metadata_statistic <- function(code = NULL, #' @description Function to search for meta information for a specific variable. #' #' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -153,7 +153,7 @@ gen_metadata_statistic <- function(code = NULL, #' } #' gen_metadata_variable <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -190,7 +190,7 @@ gen_metadata_variable <- function(code = NULL, } - if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "st") { results_raw <- gen_api(endpoint = "metadata/variable", database = db, @@ -277,7 +277,7 @@ gen_metadata_variable <- function(code = NULL, #' @description Function to search for meta information for a specific value. #' #' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -294,7 +294,7 @@ gen_metadata_variable <- function(code = NULL, #' } #' gen_metadata_value <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -331,7 +331,7 @@ gen_metadata_value <- function(code = NULL, } - if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "st") { results_raw <- gen_api(endpoint = "metadata/value", database = db, @@ -415,7 +415,7 @@ gen_metadata_value <- function(code = NULL, #' @description Function to search for meta information for a specific table. #' #' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -432,7 +432,7 @@ gen_metadata_value <- function(code = NULL, #' } #' gen_metadata_table <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -635,7 +635,7 @@ gen_metadata_table <- function(code = NULL, #' } #' gen_metadata_cube <- function(code = NULL, - database = c("all", "genesis", "regio", "nrw", "bildung"), # HUHU: Works for 'bayern' & 'sa'? + database = c("all", "genesis", "regio", "nrw", "bildung"), # HUHU: Works for 'bayern' & 'st'? area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -794,7 +794,7 @@ gen_metadata_cube <- function(code = NULL, #' @description Search for metadata-information for all types of objects and databases and have them returned as a list. #' #' @param code String with a maximum length of 15 characters for a database object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param category Character string. Specifying the specific object type of the object that you want meta data for. No default option - you need to specify the object type. Hint: The functions in 'restatis' often return information on object 'Type'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. @@ -812,7 +812,7 @@ gen_metadata_cube <- function(code = NULL, #' } #' gen_metadata <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), category = c("cube", "statistic", "table", "variable", "value"), area = c("all", "public", "user"), error.ignore = FALSE, diff --git a/R/gen_modified_data.R b/R/gen_modified_data.R index 290e89d..a6594d0 100644 --- a/R/gen_modified_data.R +++ b/R/gen_modified_data.R @@ -3,7 +3,7 @@ #' @description Function to check for updates, changes, or new objects based on a specific date. #' #' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param type Character string. Specific GENESIS and regionalstatistik.de object types: 'tables', 'statistics', and 'statisticsUpdates'. Specific Zensus 2022 object types: 'tables' and 'statistics'. All types that are specific for one database can be used together through 'all', which is the default. #' @param date Character string. Specific date that is used as the last update or upload time to include an object in return. Default option is 'now', which uses the current date of your system. Alternative options are 'week_before', using the current date of your system minus 7 days, 'month_before', using the current date of your system minus 4 weeks, and 'year_before', using the current date of your system minus 52 weeks. Additionally, it is possible to fill in a specific date of format 'DD.MM.YYYY'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. @@ -27,7 +27,7 @@ #' } #' gen_modified_data <- function(code = "", - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), type = c("all", "tables", "statistics", "statisticsUpdates"), date = c("now", "week_before", "month_before", "year_before"), pagelength = 500, @@ -126,7 +126,7 @@ gen_modified_data <- function(code = "", if (type == "statisticsUpdates") { - if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "st") { results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, diff --git a/R/gen_objects2stat.R b/R/gen_objects2stat.R index e545ed7..496eeb1 100644 --- a/R/gen_objects2stat.R +++ b/R/gen_objects2stat.R @@ -3,7 +3,7 @@ #' Function to find objects related to a statistic #' #' @param code Character string with a maximum length of 6 characters (15 characters if 'cubes' are not used as a category). Code from a database object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param category Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. @@ -28,7 +28,7 @@ #' } #' gen_objects2stat <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), category = c("tables", "variables", "cubes"), area = c("all", "public", "user"), detailed = FALSE, @@ -179,8 +179,8 @@ gen_objects2stat <- function(code = NULL, #--------------------------------------------------------------------------- - # HUHU: Does it work also for 'bayern' & 'sa'? - if ("cubes" %in% category && db %in% c("zensus", "bayern", "sa")) { + # HUHU: Does it work also for 'bayern' & 'st'? + if ("cubes" %in% category && db %in% c("zensus", "bayern", "st")) { df_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") diff --git a/R/gen_objects2var.R b/R/gen_objects2var.R index 4a00e5d..86239b7 100644 --- a/R/gen_objects2var.R +++ b/R/gen_objects2var.R @@ -3,7 +3,7 @@ #' @description Function to find objects related to a variable #' #' @param code Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param category Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. @@ -28,7 +28,7 @@ #' } #' gen_objects2var <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), category = c("tables", "statistics", "cubes"), area = c("all", "public", "user"), detailed = FALSE, @@ -178,8 +178,8 @@ gen_objects2var <- function(code = NULL, #--------------------------------------------------------------------------- - # HUHU: Does it work also for 'bayern' & 'sa'? - if ("cubes" %in% category && db %in% c("zensus", "bayern", "sa")) { + # HUHU: Does it work also for 'bayern' & 'st'? + if ("cubes" %in% category && db %in% c("zensus", "bayern", "st")) { df_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") diff --git a/R/gen_qualitysigns.R b/R/gen_qualitysigns.R index 065e375..27c3d62 100644 --- a/R/gen_qualitysigns.R +++ b/R/gen_qualitysigns.R @@ -2,7 +2,7 @@ #' #' @description Function to list all currently used special signs (e.g., 0, *, X, (), p, ...) and their meaning in the respective database. #' -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. In case of success, should a message be printed? Defaults to 'TRUE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -10,7 +10,7 @@ #' @return A list of all current used special signs. #' @export #' -gen_signs <- function(database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), +gen_signs <- function(database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), error.ignore = FALSE, verbose = TRUE, ...) { diff --git a/R/gen_table.R b/R/gen_table.R index c09b07f..b77f7fe 100644 --- a/R/gen_table.R +++ b/R/gen_table.R @@ -63,7 +63,7 @@ gen_table <- function(name, ...) { #------------------------------------------------------------------------------- gen_table_ <- function(name, - database = c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), compress = FALSE, transpose = FALSE, diff --git a/R/gen_var2-val2.R b/R/gen_var2-val2.R index fab27a7..b307ed5 100644 --- a/R/gen_var2-val2.R +++ b/R/gen_var2-val2.R @@ -3,7 +3,7 @@ #' @description Function to generate variables from statistics #' #' @param code Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. @@ -23,7 +23,7 @@ #' } #' gen_var2stat <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), @@ -69,7 +69,7 @@ gen_var2stat <- function(code = NULL, #--------------------------------------------------------------------------- - if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "st") { results_raw <- gen_api(endpoint = "catalogue/variables2statistic", database = db, @@ -159,7 +159,7 @@ gen_var2stat <- function(code = NULL, #' @description Function to extract the possible values from a variable. Values for continuous variables are not extractable, which is why the function returns a warning message in this case. #' #' @param code Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. @@ -177,7 +177,7 @@ gen_var2stat <- function(code = NULL, #' } #' gen_val2var <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), sortcriterion = c("code", "content"), pagelength = 500, @@ -220,7 +220,7 @@ gen_val2var <- function(code = NULL, } - if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "st") { results_raw <- gen_api(endpoint = "catalogue/values2variable", database = db, @@ -306,7 +306,7 @@ gen_val2var <- function(code = NULL, #' @description Get values from variables from a statistic. Values for continuous variables cannot be extracted, so the function returns a warning message. #' #' @param code Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. @@ -327,7 +327,7 @@ gen_val2var <- function(code = NULL, #' } #' gen_val2var2stat <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), @@ -415,7 +415,7 @@ gen_val2var2stat <- function(code = NULL, #' @description Function to search for specific variables #' #' @param code Character string with a maximum length of 6 characters. Code from a database object. Only one code per iteration. -#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. @@ -433,7 +433,7 @@ gen_val2var2stat <- function(code = NULL, #' } #' gen_search_vars <- function(code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), sortcriterion = c("code", "content"), pagelength = 500, @@ -476,7 +476,7 @@ gen_search_vars <- function(code = NULL, #--------------------------------------------------------------------------- - if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "sa") { + if (db == "genesis" | db == "regio" | db == "bayern" | db == "nrw" | db == "bildung" | db == "st") { results_raw <- gen_api(endpoint = "catalogue/variables", database = db, diff --git a/R/utils_dataprocessing.R b/R/utils_dataprocessing.R index 35f3a4d..f0addd2 100644 --- a/R/utils_dataprocessing.R +++ b/R/utils_dataprocessing.R @@ -302,7 +302,7 @@ check_function_input <- function(code = NULL, if ((length(database) == 1 && !is.null(database) && database == "all") | (length(database) > 1 && "all" %in% database)) { - database <- c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa") + database <- c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st") } @@ -1179,9 +1179,9 @@ test_database_function <- function(input, error.input, text){ } - if ("sa" %in% input) { + if ("st" %in% input) { - res <- c(res, "sa") + res <- c(res, "st") } @@ -1201,18 +1201,18 @@ test_database_function <- function(input, error.input, text){ "bayern", "nrw", "bildung", - "sa") + "st") } else if (length(res) == 0 || is.null(res)) { - stop("All the databases you have specified are not part of this package.\nPlease enter valid database names ('regio', 'zensus', 'genesis','bayern', 'nrw', 'bildung', 'sa' or 'all').", + stop("All the databases you have specified are not part of this package.\nPlease enter valid database names ('regio', 'zensus', 'genesis','bayern', 'nrw', 'bildung', 'st' or 'all').", call. = FALSE) } else if (length(res) != length(input)) { if (isFALSE(error.input)) { - stop("One or more of the specified databases are not part of this package. Currently only 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung', and 'sa' are implemented.", + stop("One or more of the specified databases are not part of this package. Currently only 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung', and 'st' are implemented.", call. = FALSE) } else { diff --git a/R/utils_httr2.R b/R/utils_httr2.R index d171e06..2692a98 100644 --- a/R/utils_httr2.R +++ b/R/utils_httr2.R @@ -433,9 +433,9 @@ logincheck_http_error <- function(database, if (length(database) == 1 && database != "all") { - if (!(database %in% c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"))) { + if (!(database %in% c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"))) { - stop("Misspecified parameter 'database' (can only be 'all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'sa').", + stop("Misspecified parameter 'database' (can only be 'all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'st').", call. = FALSE) } @@ -455,7 +455,7 @@ logincheck_http_error <- function(database, } else if (length(database) == 1 && database == "all") { - databases <- list("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa") + databases <- list("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st") response_list <- list( response_genesis = .gen_api_core(endpoint = "helloworld/logincheck", database = "genesis", ...), @@ -464,7 +464,7 @@ logincheck_http_error <- function(database, response_bayern = .gen_api_core(endpoint = "helloworld/logincheck", database = "bayern", ...), response_nrw = .gen_api_core(endpoint = "helloworld/logincheck", database = "nrw", ...), response_bildung = .gen_api_core(endpoint = "helloworld/logincheck", database = "bildung", ...), - response_sa = .gen_api_core(endpoint = "helloworld/logincheck", database = "sa", ...) + response_sa = .gen_api_core(endpoint = "helloworld/logincheck", database = "st", ...) ) purrr::walk2(.x = response_list, @@ -478,9 +478,9 @@ logincheck_http_error <- function(database, } else if (length(database) > 1 & !("all" %in% database)) { - if (!(all(database %in% c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa")))) { + if (!(all(database %in% c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st")))) { - stop("You can only specify 'all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung', 'sa' inside of the parameter 'database'.", + stop("You can only specify 'all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung', 'st' inside of the parameter 'database'.", call. = FALSE) } @@ -553,12 +553,12 @@ logincheck_http_error <- function(database, #----------------------------------------------------------------------------- - if ("sa" %in% database) { + if ("st" %in% database) { - logincheck_stop_or_warn(response = .gen_api_core(endpoint = "helloworld/logincheck", database = "sa", ...), + logincheck_stop_or_warn(response = .gen_api_core(endpoint = "helloworld/logincheck", database = "st", ...), error = FALSE, verbose = verbose, - database = "sa") + database = "st") } @@ -657,7 +657,7 @@ insert_and_save_credentials <- function(database, #----------------------------------------------------------------------------- - } else if(database == "bayern") { + } else if (database == "bayern") { if (isTRUE(use_token)) use_token <- FALSE @@ -668,7 +668,7 @@ insert_and_save_credentials <- function(database, #----------------------------------------------------------------------------- - } else if(database == "nrw") { + } else if (database == "nrw") { if (isTRUE(use_token)) use_token <- FALSE @@ -679,7 +679,7 @@ insert_and_save_credentials <- function(database, #----------------------------------------------------------------------------- - } else if(database == "bildung") { + } else if (database == "bildung") { if (isTRUE(use_token)) use_token <- FALSE @@ -690,12 +690,12 @@ insert_and_save_credentials <- function(database, #----------------------------------------------------------------------------- - } else if(database == "sa") { + } else if (database == "st") { if (isTRUE(use_token)) use_token <- FALSE set_credentials_auth(path = "auth_sa.rds", - sys_env = "SA_KEY", + sys_env = "ST_KEY", ui_menu_database = "genesis.sachsen-anhalt.de", use_token = use_token) From 68f721058bc89b36e4b43a398338c3997986d6a4 Mon Sep 17 00:00:00 2001 From: buhly Date: Sun, 28 Sep 2025 17:02:04 +0200 Subject: [PATCH 06/26] continue PR integration, cubes & stuff --- R/gen_api.R | 2 +- R/gen_auth.R | 2 -- R/gen_cube.R | 6 +++--- R/gen_find.R | 2 +- R/gen_table.R | 5 +++-- R/utils_httr2.R | 2 +- README.Rmd | 6 +++++- README.md | 10 +++++++++- 8 files changed, 23 insertions(+), 12 deletions(-) diff --git a/R/gen_api.R b/R/gen_api.R index 5961ac5..f68eed5 100644 --- a/R/gen_api.R +++ b/R/gen_api.R @@ -130,7 +130,7 @@ gen_api <- function(..., expr = { - # Perform API call with GET (deprecated in GENESIS and Zensus 2022) + # Perform API call with GET (deprecated in many GENESIS instances as of autumn 2025) httr2::request(url) %>% httr2::req_user_agent(user_agent) %>% httr2::req_url_path_append(endpoint) %>% diff --git a/R/gen_auth.R b/R/gen_auth.R index 6ff4e6d..2623693 100644 --- a/R/gen_auth.R +++ b/R/gen_auth.R @@ -35,8 +35,6 @@ gen_auth_save <- function(database, } - # HUHU: double check if use of token really doesn't work - if (database == "bayern" & isTRUE(use_token)) { warning("statistikdaten.bayern.de does not support API tokens. Defaulting to username and password.", diff --git a/R/gen_cube.R b/R/gen_cube.R index 3b45c50..f9d5947 100644 --- a/R/gen_cube.R +++ b/R/gen_cube.R @@ -1,8 +1,9 @@ #' gen_cube #' -#' @description Download a cube with data from GENESIS, regionalstatistik.de, landesdatenbank.nrw.de or bildungsmonitoring.de database +#' @description Download a cube with data from GENESIS, regionalstatistik.de, landesdatenbank.nrw.de, bildungsmonitoring.de, statistikdaten.bayern.de or genesis.sachsen-anhalt.de database #' #' @param name Character string for a cube object (only GENESIS, regionalstatistik.de, landesdatenbank.nrw.de or bildungsmonitoring.de) +#' @param database Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. #' @param ... Further (optional) parameters passed on to the API call: #' \describe{ #' \item{\code{area}}{Character string. The area in which the table is stored. Possible values: @@ -57,7 +58,7 @@ gen_cube <- function(name, ...) { #------------------------------------------------------------------------------- gen_cube_ <- function(name, - database = c("genesis", "regio", "nrw", "bildung"), # HUHU: Works for 'bayern' & 'st'? + database = c("genesis", "regio", "nrw", "bildung", "bayern", "st"), area = c("public", "user"), values = TRUE, metadata = TRUE, @@ -120,7 +121,6 @@ gen_cube_ <- function(name, classifyingkey3 = classifyingkey3, stand = stand, language = language, - job = FALSE, ...) #------------------------------------------------------------------------------- diff --git a/R/gen_find.R b/R/gen_find.R index 291323c..f2e97ff 100644 --- a/R/gen_find.R +++ b/R/gen_find.R @@ -115,7 +115,7 @@ gen_find <- function(term = NULL, } else if (empty_object == "FAIL" & db %in% c("zensus", "bayern", "st") ){ - list_resp <- list("Output" = paste("There are generally no 'cubes' objects available for the '", db, "' database.")) + list_resp <- list("Output" = paste0("There are generally no 'cubes' objects available for the '", db, "' database.")) attr(list_resp, "Term") <- term attr(list_resp, "Database") <- db diff --git a/R/gen_table.R b/R/gen_table.R index b77f7fe..3035f0b 100644 --- a/R/gen_table.R +++ b/R/gen_table.R @@ -1,9 +1,10 @@ #' gen_table #' -#' @description Download a table with data from GENESIS, Zensus 2022 or regionalstatistik.de databases +#' @description Download a cube with data from GENESIS, regionalstatistik.de, Zensus 2022, landesdatenbank.nrw.de, bildungsmonitoring.de, statistikdaten.bayern.de or genesis.sachsen-anhalt.de database #' #' @param name Character string. Name/code of the table. Use of wildcards (`*`) is possible. -#' @param ... Optional parameters passed on to the Genesis API call: +#' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. +#' @param ... Optional parameters passed on to the API call: #' \describe{ #' \item{\code{area}}{Character string. The area in which the table is stored. Possible values: #' \itemize{ diff --git a/R/utils_httr2.R b/R/utils_httr2.R index 2692a98..3b895f5 100644 --- a/R/utils_httr2.R +++ b/R/utils_httr2.R @@ -694,7 +694,7 @@ insert_and_save_credentials <- function(database, if (isTRUE(use_token)) use_token <- FALSE - set_credentials_auth(path = "auth_sa.rds", + set_credentials_auth(path = "auth_st.rds", sys_env = "ST_KEY", ui_menu_database = "genesis.sachsen-anhalt.de", use_token = use_token) diff --git a/README.Rmd b/README.Rmd index bceea04..829a1b4 100644 --- a/README.Rmd +++ b/README.Rmd @@ -26,8 +26,12 @@ knitr::opts_chunk$set( **{restatis}** is a wrapper around the RESTful APIs that provide access to the three main databases of German official statistics: - The [**GENESIS database** of the Federal Statistical Office of Germany (Destatis)](https://www-genesis.destatis.de/genesis/online), -- [**regionalstatistik.de** which is the database of the German Länder (Regionaldatenbank)](https://www.regionalstatistik.de/genesis/online/), +- [**regionalstatistik.de**, which is the database of the German Länder (Regionaldatenbank)](https://www.regionalstatistik.de/genesis/online/), - The [database of the **German 2022 Census** (Zensus 2022)](https://ergebnisse.zensus2022.de/datenbank/online/). +- The [**Kommunale Bildungsdatenbank**](https://www.bildungsmonitoring.de/bildung/online/) +- The [**Landesdatenbank NRW**](https://www.landesdatenbank.nrw.de/) +- The [Datenbank des **Bayerischen Landesamtes für Statistik**](https://www.statistikdaten.bayern.de/genesis/online) +- The [Datenbank des **Statistischen Landesamtes Sachsen-Anhalt**](https://genesis.sachsen-anhalt.de/genesis/online) Almost all functions work on either one of them, on all of them or just on a selection. diff --git a/README.md b/README.md index 3c9c5fe..9c95db5 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,7 @@ # restatis + [![CRAN @@ -19,10 +20,17 @@ to the three main databases of German official statistics: - The [**GENESIS database** of the Federal Statistical Office of Germany (Destatis)](https://www-genesis.destatis.de/genesis/online), -- [**regionalstatistik.de** which is the database of the German Länder +- [**regionalstatistik.de**, which is the database of the German Länder (Regionaldatenbank)](https://www.regionalstatistik.de/genesis/online/), - The [database of the **German 2022 Census** (Zensus 2022)](https://ergebnisse.zensus2022.de/datenbank/online/). +- The [**Kommunale + Bildungsdatenbank**](https://www.bildungsmonitoring.de/bildung/online/) +- The [**Landesdatenbank NRW**](https://www.landesdatenbank.nrw.de/) +- The [Datenbank des **Bayerischen Landesamtes für + Statistik**](https://www.statistikdaten.bayern.de/genesis/online) +- The [Datenbank des **Statistischen Landesamtes + Sachsen-Anhalt**](https://genesis.sachsen-anhalt.de/genesis/online) Almost all functions work on either one of them, on all of them or just on a selection. From b56a3fd56e18eb4c135d15bfafb05a4e30553b33 Mon Sep 17 00:00:00 2001 From: bubux Date: Sat, 18 Oct 2025 18:42:05 +0200 Subject: [PATCH 07/26] update to the cube question --- R/gen_catalogue.R | 1 + R/gen_cube.R | 4 ++-- R/gen_find.R | 3 +++ R/gen_metadata.R | 2 +- R/gen_objects2stat.R | 1 + R/gen_objects2var.R | 1 + 6 files changed, 9 insertions(+), 3 deletions(-) diff --git a/R/gen_catalogue.R b/R/gen_catalogue.R index 69acead..915f52c 100644 --- a/R/gen_catalogue.R +++ b/R/gen_catalogue.R @@ -80,6 +80,7 @@ gen_catalogue <- function(code = NULL, #--------------------------------------------------------------------------- # HUHU: Does it work also for 'bayern' & 'st'? + # There are definitely no cubes for ST, BY is still unclear if ("cubes" %in% category && db %in% c("zensus", "bayern", "st")) { list_of_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") diff --git a/R/gen_cube.R b/R/gen_cube.R index f9d5947..a605b25 100644 --- a/R/gen_cube.R +++ b/R/gen_cube.R @@ -1,9 +1,9 @@ #' gen_cube #' -#' @description Download a cube with data from GENESIS, regionalstatistik.de, landesdatenbank.nrw.de, bildungsmonitoring.de, statistikdaten.bayern.de or genesis.sachsen-anhalt.de database +#' @description Download a cube with data from GENESIS, regionalstatistik.de, landesdatenbank.nrw.de, bildungsmonitoring.de or statistikdaten.bayern.de database #' #' @param name Character string for a cube object (only GENESIS, regionalstatistik.de, landesdatenbank.nrw.de or bildungsmonitoring.de) -#' @param database Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. +#' @param database Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw') or bildungsmonitoring.de ('bildung') database is called. #' @param ... Further (optional) parameters passed on to the API call: #' \describe{ #' \item{\code{area}}{Character string. The area in which the table is stored. Possible values: diff --git a/R/gen_find.R b/R/gen_find.R index f2e97ff..9b77b59 100644 --- a/R/gen_find.R +++ b/R/gen_find.R @@ -76,6 +76,7 @@ gen_find <- function(term = NULL, #--------------------------------------------------------------------------- # HUHU: Does it work also for 'bayern' & 'st'? + # Definitely no cubes for ST, BY is unclear if (db %in% c("zensus", "bayern", "st") && category == "cubes") { empty_object <- "FAIL" @@ -113,6 +114,7 @@ gen_find <- function(term = NULL, return(list_resp) + # HUHU: It is still unclear as to whether BY provides cubes } else if (empty_object == "FAIL" & db %in% c("zensus", "bayern", "st") ){ list_resp <- list("Output" = paste0("There are generally no 'cubes' objects available for the '", db, "' database.")) @@ -548,6 +550,7 @@ gen_find <- function(term = NULL, } + # HUHU: It is still unclear as to whether BY provides cubes } else if (db %in% c("zensus", "bayern", "st")) { df_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") diff --git a/R/gen_metadata.R b/R/gen_metadata.R index 396240f..738f031 100644 --- a/R/gen_metadata.R +++ b/R/gen_metadata.R @@ -635,7 +635,7 @@ gen_metadata_table <- function(code = NULL, #' } #' gen_metadata_cube <- function(code = NULL, - database = c("all", "genesis", "regio", "nrw", "bildung"), # HUHU: Works for 'bayern' & 'st'? + database = c("all", "genesis", "regio", "nrw", "bildung"), # HUHU: Works for 'bayern' & 'st'? Not for ST, BY unclear area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, diff --git a/R/gen_objects2stat.R b/R/gen_objects2stat.R index 496eeb1..ecb74c1 100644 --- a/R/gen_objects2stat.R +++ b/R/gen_objects2stat.R @@ -180,6 +180,7 @@ gen_objects2stat <- function(code = NULL, #--------------------------------------------------------------------------- # HUHU: Does it work also for 'bayern' & 'st'? + # No cubes in ST, unclear for BY if ("cubes" %in% category && db %in% c("zensus", "bayern", "st")) { df_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") diff --git a/R/gen_objects2var.R b/R/gen_objects2var.R index 86239b7..2b1e517 100644 --- a/R/gen_objects2var.R +++ b/R/gen_objects2var.R @@ -179,6 +179,7 @@ gen_objects2var <- function(code = NULL, #--------------------------------------------------------------------------- # HUHU: Does it work also for 'bayern' & 'st'? + # No cubes in ST, unclear for BY if ("cubes" %in% category && db %in% c("zensus", "bayern", "st")) { df_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") From e244926c6ee944fa6946e99ecdf8bfc0957a57ee Mon Sep 17 00:00:00 2001 From: KovaZo Date: Fri, 7 Nov 2025 10:41:45 +0100 Subject: [PATCH 08/26] Update of multiple and custom credentials for restatis from ZK --- R/gen_alternative_terms.R | 14 +- R/gen_api.R | 24 +++- R/gen_auth.R | 36 ++++- R/gen_catalogue.R | 22 ++- R/gen_cube.R | 12 ++ R/gen_find.R | 14 +- R/gen_jobs.R | 24 ++++ R/gen_metadata.R | 96 ++++++++++--- R/gen_modified_data.R | 26 ++-- R/gen_objects2stat.R | 22 ++- R/gen_objects2var.R | 22 ++- R/gen_qualitysigns.R | 12 ++ R/gen_table.R | 13 ++ R/gen_var2-val2.R | 66 +++++++-- R/utils_httr2.R | 280 +++++++++++++++++++++++++++++++++++--- restatis.Rproj | 1 - 16 files changed, 592 insertions(+), 92 deletions(-) diff --git a/R/gen_alternative_terms.R b/R/gen_alternative_terms.R index 56aa790..240d4f8 100644 --- a/R/gen_alternative_terms.R +++ b/R/gen_alternative_terms.R @@ -6,6 +6,8 @@ #' @param similarity Boolean. Indicator if the output of the function should be sorted based on a Levenshtein edit distance based on the \code{adist()} function. Default is 'TRUE'. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -29,6 +31,8 @@ gen_alternative_terms <- function(term = NULL, similarity = TRUE, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), pagelength = 500, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, ...) { @@ -47,6 +51,12 @@ gen_alternative_terms <- function(term = NULL, error.input = TRUE, text = verbose) + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- # Loop over databases in database_vector and make respective API calls @@ -63,8 +73,8 @@ gen_alternative_terms <- function(term = NULL, # Make API call results_raw <- gen_api(endpoint = "catalogue/terms", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, selection = term, pagelength = pagelength, ...) diff --git a/R/gen_api.R b/R/gen_api.R index f68eed5..b5b7db3 100644 --- a/R/gen_api.R +++ b/R/gen_api.R @@ -37,12 +37,14 @@ gen_api <- function(..., #' #' @param endpoint Character string. The endpoint of the API that is to be queried. #' @param database The database the query should be sent to. +#' @param id #' @param ... Further parameters passed on to the final API call. #' #' @importFrom httr2 `%>%` #' .gen_api_core <- function(endpoint, database, + id = NULL, ...) { #----------------------------------------------------------------------------- @@ -87,6 +89,19 @@ gen_api <- function(..., # Set user agent user_agent <- "https://github.com/CorrelAid/restatis" + if(!is.null(id)){ + + creds <- gen_auth_get(database = database) + + username <- creds[[id]]["username"] + password <- creds[[id]]["password"] + } else { + + temp_body <- list(...) + + username <- temp_body[["username"]] + password <- temp_body[["password"]] + } #----------------------------------------------------------------------------- # First try to request with POST @@ -99,6 +114,7 @@ gen_api <- function(..., # Catch API parameter values for ... body_parameters <- list(...) + body_parameters <- body_parameters[-c(which(names(body_parameters) %in% c("username", "password")))] # Check if there are any items in ... if (length(body_parameters) > 0) { @@ -119,8 +135,8 @@ gen_api <- function(..., httr2::req_user_agent(user_agent) %>% httr2::req_url_path_append(endpoint) %>% httr2::req_headers("Content-Type" = "application/x-www-form-urlencoded", - "username" = gen_auth_get(database = database)$username, - "password" = gen_auth_get(database = database)$password) %>% + "username" = username, + "password" = password) %>% httr2::req_retry(max_tries = 3) %>% httr2::req_perform() @@ -134,7 +150,7 @@ gen_api <- function(..., httr2::request(url) %>% httr2::req_user_agent(user_agent) %>% httr2::req_url_path_append(endpoint) %>% - httr2::req_url_query(!!!gen_auth_get(database = database), ...) %>% + httr2::req_url_query(username, password, ...) %>% httr2::req_retry(max_tries = 3) %>% httr2::req_perform() @@ -143,7 +159,7 @@ gen_api <- function(..., stop(paste0("The API call(s) have been tried with GET and POST methods, but were unsuccessful (error message: '", e$message, "'). Check your specifications or try again later."), call. = FALSE) - }) + }) }) diff --git a/R/gen_auth.R b/R/gen_auth.R index 2623693..f623608 100644 --- a/R/gen_auth.R +++ b/R/gen_auth.R @@ -4,6 +4,7 @@ #' #' @param database Character string. The database to store credentials for ('all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'st'). #' @param use_token Boolean. Do you want to (if possible) set an API token instead of password + username? Note: This is only supported by 'genesis' and 'zensus'. Defaults to FALSE. +#' @param multiple #' #' @details Username and password are encrypted and saved as RDS in the #' package config directory. A random string is generated and stored in the @@ -23,7 +24,8 @@ #' } #' gen_auth_save <- function(database, - use_token = FALSE) { + use_token = FALSE, + multiple = NULL) { if (missing(database)) stop("You have to specify a value for parameter 'database'.", call. = FALSE) @@ -63,21 +65,38 @@ gen_auth_save <- function(database, } + if(is.null(multiple)){ + + multiple <- 1 + + } + + if (!is.double(multiple) & length(multiple) == 1){ + + stop("Parameter 'multiple' must be a numeric value indicating how many credentials should be added for the specified database.", + call. = FALSE) + } + #----------------------------------------------------------------------------- if (database %in% c("regio", "bayern", "nrw", "bildung", "st")) { - insert_and_save_credentials(database, use_token) + insert_and_save_credentials(database, use_token, multiple) + + for(i in 1:multiple){ + gen_logincheck(database = database, id = i) + } - gen_logincheck(database = database) #----------------------------------------------------------------------------- } else if (database %in% c("zensus", "genesis")) { - insert_and_save_credentials(database, use_token) + insert_and_save_credentials(database, use_token, multiple) - gen_logincheck(database = database) + for(i in 1:multiple){ + gen_logincheck(database = database, id = i) + } } else if (database == "all"){ @@ -107,9 +126,12 @@ gen_auth_save <- function(database, message("~~ Saving credentials for the ", ui_menu_database, " database.") insert_and_save_credentials(database = db_names, - use_token = use_token) + use_token = use_token, + multiple = multiple) - gen_logincheck(database = db_names) + for(i in 1:multiple){ + gen_logincheck(database = db_names, id = i) + } }) diff --git a/R/gen_catalogue.R b/R/gen_catalogue.R index 915f52c..c07bee6 100644 --- a/R/gen_catalogue.R +++ b/R/gen_catalogue.R @@ -10,6 +10,8 @@ #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -36,6 +38,8 @@ gen_catalogue <- function(code = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, ...) { @@ -64,6 +68,12 @@ gen_catalogue <- function(code = NULL, sortcriterion <- match.arg(sortcriterion) + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- # Loop over databases in database_vector and make respective API calls @@ -90,8 +100,8 @@ gen_catalogue <- function(code = NULL, # Make API call results_raw <- gen_api(endpoint = "catalogue/cubes", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, selection = code, sortcriterion = sortcriterion, area = area, @@ -146,8 +156,8 @@ gen_catalogue <- function(code = NULL, # Make API call results_raw <- gen_api(endpoint = "catalogue/statistics", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, selection = code, sortcriterion = sortcriterion, pagelength = pagelength, @@ -197,8 +207,8 @@ gen_catalogue <- function(code = NULL, # Make API call results_raw <- gen_api(endpoint = "catalogue/tables", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, selection = code, area = area, sortcriterion = sortcriterion, diff --git a/R/gen_cube.R b/R/gen_cube.R index a605b25..8249092 100644 --- a/R/gen_cube.R +++ b/R/gen_cube.R @@ -34,6 +34,8 @@ #' with the keys separated by commas. Use of wildcard (`*`) allowed.} #' \item{\code{stand}}{Character string, format: \code{"DD.MM.YYYY"}. Only retrieve data #' updated after this date.} +#' \item{\code{credential_type}}{} +#' \item{\code{credential_list}}{} #' \item{\code{language}}{Character string. Search terms, returned messages and data #' descriptions in German (`"de"`) or English (`"en"`)?} #' \item{\code{...}}{Additional parameters for the API call (see respective API documentation). @@ -76,6 +78,8 @@ gen_cube_ <- function(name, classifyingvariable3 = NULL, classifyingkey3 = NULL, stand = NULL, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, language = Sys.getenv("RESTATIS_LANG"), ...) { @@ -98,6 +102,12 @@ gen_cube_ <- function(name, classifyingkey2 <- param_collapse_vec(classifyingkey2) classifyingkey3 <- param_collapse_vec(classifyingkey3) + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- cube_raw <- gen_api(endpoint = "data/cubefile", @@ -121,6 +131,8 @@ gen_cube_ <- function(name, classifyingkey3 = classifyingkey3, stand = stand, language = language, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, ...) #------------------------------------------------------------------------------- diff --git a/R/gen_find.R b/R/gen_find.R index 9b77b59..0abeec7 100644 --- a/R/gen_find.R +++ b/R/gen_find.R @@ -11,6 +11,8 @@ #' @param ordering A logical. Indicator if the function should return the output of the iteration ordered first based on the fact if the searched term is appearing in the title of the object and secondly on an estimator of the number of variables in this object. Default option is 'TRUE'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'TRUE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -39,6 +41,8 @@ gen_find <- function(term = NULL, ordering = TRUE, pagelength = 500, error.ignore = TRUE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, ...) { @@ -61,6 +65,12 @@ gen_find <- function(term = NULL, category <- match.arg(category) + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -85,8 +95,8 @@ gen_find <- function(term = NULL, results_raw <- gen_api(endpoint = "find/find", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, term = term, category = category, pagelength = pagelength, diff --git a/R/gen_jobs.R b/R/gen_jobs.R index 3fd1603..d23975d 100644 --- a/R/gen_jobs.R +++ b/R/gen_jobs.R @@ -6,6 +6,8 @@ #' @param sortcriterion Character string. Indicator if the output should be sorted by 'type','time','status' or 'code'. This is a parameter of the API call itself. The default is 'type'. #' @param flat Boolean. Should the function return a list with jobs and metadata ('FALSE') or just a flat data.frame ('TRUE')? Defaults to FALSE. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -23,6 +25,8 @@ gen_list_jobs <- function(database, sortcriterion = c("type", "time", "status", "code"), flat = FALSE, error.ignore = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, ...) { @@ -62,11 +66,19 @@ gen_list_jobs <- function(database, } + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- results_raw <- .gen_api_core(endpoint = "catalogue/jobs", database = database, sortcriterion = sortcriterion, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, ...) results_json <- test_if_json(results_raw) @@ -118,6 +130,8 @@ gen_list_jobs <- function(database, #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. #' @param compress Boolean. Should empty rows and columns be discarded? Default is FALSE. #' @param language Character string. Defines if the decimal mark and grouping mark of integers should be represented based on the European (e.g.: '100,5', '200.000,5') or American ('100.5', '200,000.5') system. Defaults to 'Sys.getenv("RESTATIS_LANG")'. +#' @param credential_type +#' @param credential_list #' @param all_character Boolean. Should all variables be imported as 'character' variables? Avoids fuzzy data type conversions if there are leading zeros or other special characters. Defaults to TRUE. #' #' @return Returns a data.frame with the table content @@ -133,6 +147,8 @@ gen_download_job <- function(name, area = c("all", "public", "user"), compress = FALSE, language = Sys.getenv("RESTATIS_LANG"), + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, all_character = TRUE) { #----------------------------------------------------------------------------- @@ -146,6 +162,12 @@ gen_download_job <- function(name, public = "\u00F6ffentlich", user = "benutzer") + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- response <- gen_api(endpoint = "data/resultfile", @@ -154,6 +176,8 @@ gen_download_job <- function(name, area = area, compress = compress, format = "ffcsv", + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, language = language) response_type <- resp_check_data(response) diff --git a/R/gen_metadata.R b/R/gen_metadata.R index 738f031..f08976c 100644 --- a/R/gen_metadata.R +++ b/R/gen_metadata.R @@ -6,6 +6,8 @@ #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param raw Boolean. Should a non-parsed API response be returned? Default option is 'FALSE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -23,6 +25,8 @@ gen_metadata_statistic <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), error.ignore = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, raw = FALSE, ...) { @@ -45,6 +49,12 @@ gen_metadata_statistic <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -61,8 +71,8 @@ gen_metadata_statistic <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, area = area, ...) @@ -71,8 +81,8 @@ gen_metadata_statistic <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, ...) @@ -139,6 +149,8 @@ gen_metadata_statistic <- function(code = NULL, #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param raw Boolean. Should a non-parsed API response be returned? Default option is 'FALSE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -156,6 +168,8 @@ gen_metadata_variable <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), error.ignore = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, raw = FALSE, ...) { @@ -178,6 +192,12 @@ gen_metadata_variable <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -194,8 +214,8 @@ gen_metadata_variable <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, area = area, ...) @@ -204,8 +224,8 @@ gen_metadata_variable <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, ...) @@ -280,6 +300,8 @@ gen_metadata_variable <- function(code = NULL, #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param raw Boolean. Should a non-parsed API response be returned? Default option is 'FALSE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -297,6 +319,8 @@ gen_metadata_value <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), error.ignore = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, raw = FALSE, ...) { @@ -319,6 +343,12 @@ gen_metadata_value <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -335,8 +365,8 @@ gen_metadata_value <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/value", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, area = area, ...) @@ -345,8 +375,8 @@ gen_metadata_value <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/value", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, ...) @@ -418,6 +448,8 @@ gen_metadata_value <- function(code = NULL, #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param raw Boolean. Should a non-parsed API response be returned? Default option is 'FALSE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -435,6 +467,8 @@ gen_metadata_table <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), error.ignore = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, raw = FALSE, ...) { @@ -457,6 +491,12 @@ gen_metadata_table <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -471,8 +511,8 @@ gen_metadata_table <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/table", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, area = area, ...) @@ -620,6 +660,8 @@ gen_metadata_table <- function(code = NULL, #' @param database Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), landesdatenbank.nrw.de ('nrw') or bildungsmonitoring.de ('bildung') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param raw Boolean. Should a non-parsed API response be returned? Default option is 'FALSE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -638,6 +680,8 @@ gen_metadata_cube <- function(code = NULL, database = c("all", "genesis", "regio", "nrw", "bildung"), # HUHU: Works for 'bayern' & 'st'? Not for ST, BY unclear area = c("all", "public", "user"), error.ignore = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, raw = FALSE, ...) { @@ -660,6 +704,12 @@ gen_metadata_cube <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -674,8 +724,8 @@ gen_metadata_cube <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/cube", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, area = area, ...) @@ -798,6 +848,8 @@ gen_metadata_cube <- function(code = NULL, #' @param category Character string. Specifying the specific object type of the object that you want meta data for. No default option - you need to specify the object type. Hint: The functions in 'restatis' often return information on object 'Type'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param raw Boolean. Should a non-parsed API response be returned? Default option is 'FALSE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -816,6 +868,8 @@ gen_metadata <- function(code = NULL, category = c("cube", "statistic", "table", "variable", "value"), area = c("all", "public", "user"), error.ignore = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, raw = FALSE, ...) { @@ -843,6 +897,8 @@ gen_metadata <- function(code = NULL, gen_metadata_cube(code = code, database = odb, error.ignore = error.ignore, + credential_type = credential_type, + credential_list = credential_list, verbose = verbose, raw = raw, ...) @@ -853,6 +909,8 @@ gen_metadata <- function(code = NULL, database = odb, area = area, error.ignore = error.ignore, + credential_type = credential_type, + credential_list = credential_list, verbose = verbose, raw = raw, ...) @@ -863,6 +921,8 @@ gen_metadata <- function(code = NULL, database = odb, area = area, error.ignore = error.ignore, + credential_type = credential_type, + credential_list = credential_list, verbose = verbose, raw = raw, ...) @@ -873,6 +933,8 @@ gen_metadata <- function(code = NULL, database = odb, area = area, error.ignore = error.ignore, + credential_type = credential_type, + credential_list = credential_list, verbose = verbose, raw = raw, ...) @@ -883,6 +945,8 @@ gen_metadata <- function(code = NULL, database = odb, area = area, error.ignore = error.ignore, + credential_type = credential_type, + credential_list = credential_list, verbose = verbose, raw = raw, ...) diff --git a/R/gen_modified_data.R b/R/gen_modified_data.R index a6594d0..0e65613 100644 --- a/R/gen_modified_data.R +++ b/R/gen_modified_data.R @@ -7,6 +7,8 @@ #' @param type Character string. Specific GENESIS and regionalstatistik.de object types: 'tables', 'statistics', and 'statisticsUpdates'. Specific Zensus 2022 object types: 'tables' and 'statistics'. All types that are specific for one database can be used together through 'all', which is the default. #' @param date Character string. Specific date that is used as the last update or upload time to include an object in return. Default option is 'now', which uses the current date of your system. Alternative options are 'week_before', using the current date of your system minus 7 days, 'month_before', using the current date of your system minus 4 weeks, and 'year_before', using the current date of your system minus 52 weeks. Additionally, it is possible to fill in a specific date of format 'DD.MM.YYYY'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -31,6 +33,8 @@ gen_modified_data <- function(code = "", type = c("all", "tables", "statistics", "statisticsUpdates"), date = c("now", "week_before", "month_before", "year_before"), pagelength = 500, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, ...) { @@ -48,6 +52,12 @@ gen_modified_data <- function(code = "", error.input = TRUE, text = verbose) + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- if (date == "now") { @@ -87,8 +97,8 @@ gen_modified_data <- function(code = "", results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, selection = code, type = "Neue Tabellen", date = date, @@ -107,8 +117,8 @@ gen_modified_data <- function(code = "", results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, selection = code, type = "Neue Statistiken", date = date, @@ -130,8 +140,8 @@ gen_modified_data <- function(code = "", results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, selection = code, type = "Aktualisierte Statistiken", date = date, @@ -152,8 +162,8 @@ gen_modified_data <- function(code = "", results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, selection = code, type = "all", date = date, diff --git a/R/gen_objects2stat.R b/R/gen_objects2stat.R index ecb74c1..5a214f0 100644 --- a/R/gen_objects2stat.R +++ b/R/gen_objects2stat.R @@ -10,6 +10,8 @@ #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -35,6 +37,8 @@ gen_objects2stat <- function(code = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, ...) { @@ -61,6 +65,12 @@ gen_objects2stat <- function(code = NULL, sortcriterion <- match.arg(sortcriterion) + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -79,8 +89,8 @@ gen_objects2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/tables2statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, area = area, sortcriterion = sortcriterion, @@ -130,8 +140,8 @@ gen_objects2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables2statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, area = area, sortcriterion = sortcriterion, @@ -189,8 +199,8 @@ gen_objects2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/cubes2statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, area = area, sortcriterion = sortcriterion, diff --git a/R/gen_objects2var.R b/R/gen_objects2var.R index 2b1e517..3666a2c 100644 --- a/R/gen_objects2var.R +++ b/R/gen_objects2var.R @@ -10,6 +10,8 @@ #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -35,6 +37,8 @@ gen_objects2var <- function(code = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, ...) { @@ -61,6 +65,12 @@ gen_objects2var <- function(code = NULL, sortcriterion <- match.arg(sortcriterion) + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -79,8 +89,8 @@ gen_objects2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/tables2variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, area = area, sortcriterion = sortcriterion, @@ -130,8 +140,8 @@ gen_objects2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/statistics2variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, area = area, sortcriterion = sortcriterion, @@ -188,8 +198,8 @@ gen_objects2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/timeseries2variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, area = area, sortcriterion = sortcriterion, diff --git a/R/gen_qualitysigns.R b/R/gen_qualitysigns.R index 27c3d62..2ed195b 100644 --- a/R/gen_qualitysigns.R +++ b/R/gen_qualitysigns.R @@ -4,6 +4,8 @@ #' #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. In case of success, should a message be printed? Defaults to 'TRUE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -12,6 +14,8 @@ #' gen_signs <- function(database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), error.ignore = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, ...) { @@ -27,10 +31,18 @@ gen_signs <- function(database = c("all", "genesis", "zensus", "regio", "bayern" error.input = error.ignore, text = verbose) + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + res <- lapply(database_vector, function(db){ results_raw <- gen_api(endpoint = "catalogue/qualitysigns", database = db, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, ...) results_json <- test_if_json(results_raw) diff --git a/R/gen_table.R b/R/gen_table.R index 3035f0b..65810b1 100644 --- a/R/gen_table.R +++ b/R/gen_table.R @@ -38,6 +38,8 @@ #' (not available with the 'Zensus' database). In order to set job = TRUE #' you have to have username and password saved with gen_auth_save(), #' using API tokens with job = TRUE will result in an error.} +#' \item{\code{credential_type}}{} +#' \item{\code{credential_list}}{} #' \item{\code{all_character}}{Boolean. Should all variables be imported as #' 'character' variables? Avoids fuzzy data type conversions if there are #' leading zeros or other special characters. Defaults to TRUE.} @@ -81,6 +83,8 @@ gen_table_ <- function(name, stand = NULL, language = Sys.getenv("RESTATIS_LANG"), job = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, all_character = TRUE, ...) { @@ -116,6 +120,13 @@ gen_table_ <- function(name, classifyingkey2 <- param_collapse_vec(classifyingkey2) classifyingkey3 <- param_collapse_vec(classifyingkey3) + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + + #----------------------------------------------------------------------------- # Manage credentials related to jobs @@ -162,6 +173,8 @@ gen_table_ <- function(name, language = language, format = "ffcsv", job = job, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, ...) #----------------------------------------------------------------------------- diff --git a/R/gen_var2-val2.R b/R/gen_var2-val2.R index b307ed5..2b6f4d6 100644 --- a/R/gen_var2-val2.R +++ b/R/gen_var2-val2.R @@ -9,6 +9,8 @@ #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -29,6 +31,8 @@ gen_var2stat <- function(code = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, ...) { @@ -54,6 +58,13 @@ gen_var2stat <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + + #----------------------------------------------------------------------------- # Processing # @@ -73,8 +84,8 @@ gen_var2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables2statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, area = area, pagelength = pagelength, @@ -84,8 +95,8 @@ gen_var2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables2statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, pagelength = pagelength, ...) @@ -164,6 +175,8 @@ gen_var2stat <- function(code = NULL, #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'TRUE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -182,6 +195,8 @@ gen_val2var <- function(code = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore = TRUE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, ...) { @@ -208,6 +223,13 @@ gen_val2var <- function(code = NULL, embedding <- deparse(sys.calls()) + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + + #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -224,8 +246,8 @@ gen_val2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/values2variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, area = area, pagelength = pagelength, @@ -235,8 +257,8 @@ gen_val2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/values2variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, pagelength = pagelength, ...) @@ -313,6 +335,8 @@ gen_val2var <- function(code = NULL, #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore.var Boolean. Indicator for variables if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param error.ignore.val Boolean. Indicator for values if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'TRUE', this prevents the function to stop even if a variable has no further explanation (often the case for numerical variables). Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -334,6 +358,8 @@ gen_val2var2stat <- function(code = NULL, pagelength = 500, error.ignore.var = FALSE, error.ignore.val = TRUE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, ...) { @@ -354,6 +380,7 @@ gen_val2var2stat <- function(code = NULL, sortcriterion <- match.arg(sortcriterion) + #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -364,6 +391,8 @@ gen_val2var2stat <- function(code = NULL, detailed = detailed, sortcriterion = sortcriterion, error.ignore = error.ignore.var, + credential_type = credential_type, + credential_list = credential_list, verbose = verbose, ...))) @@ -386,6 +415,8 @@ gen_val2var2stat <- function(code = NULL, area = area, sortcriterion = sortcriterion, error.ignore = error.ignore.val, + credential_type = credential_type, + credential_list = credential_list, verbose = verbose))) list_values <<- append(list_values, zwisch) @@ -420,6 +451,8 @@ gen_val2var2stat <- function(code = NULL, #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. +#' @param credential_type +#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -438,6 +471,8 @@ gen_search_vars <- function(code = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore = FALSE, + credential_type = c("general", "custom", "multiple"), + credential_list = NULL, verbose = TRUE, ...) { @@ -462,6 +497,13 @@ gen_search_vars <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") + # Check credentials + creds <- check_credentials(database, + credential_type, + credential_list, + verbose) + + #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -480,8 +522,8 @@ gen_search_vars <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, name = code, sortcriterion = sortcriterion, area = area, @@ -492,8 +534,8 @@ gen_search_vars <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + username = creds[[db]]["username"], #gen_auth_get(database = db)$username, + password = creds[[db]]["password"], #gen_auth_get(database = db)$password, sortcriterion = sortcriterion, name = code, pagelength = pagelength, diff --git a/R/utils_httr2.R b/R/utils_httr2.R index 3b895f5..6e6da38 100644 --- a/R/utils_httr2.R +++ b/R/utils_httr2.R @@ -442,14 +442,15 @@ logincheck_http_error <- function(database, #--------------------------------------------------------------------------- - response <- .gen_api_core(endpoint = "helloworld/logincheck", - database = database, - ...) + response <- .gen_api_core(endpoint = "helloworld/logincheck", + database = database, + ...) + + logincheck_stop_or_warn(response = response, + error = TRUE, + verbose = verbose, + database = database) - logincheck_stop_or_warn(response = response, - error = TRUE, - verbose = verbose, - database = database) #----------------------------------------------------------------------------- @@ -472,7 +473,8 @@ logincheck_http_error <- function(database, .f = ~ logincheck_stop_or_warn(response = .x, database = .y, error = FALSE, - verbose = verbose)) + verbose = verbose, + )) #----------------------------------------------------------------------------- @@ -642,9 +644,11 @@ logincheck_stop_or_warn <- function(response, #' #' @param database The database to specify credentials for #' @param use_token Boolean. Do you want to (if possible) set an API token instead of password + username? Defaults to FALSE. +#' @param ... Additional parameters (unchecked) #' insert_and_save_credentials <- function(database, - use_token) { + use_token, + ...) { if (database == "regio") { @@ -653,7 +657,8 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_regio.rds", sys_env = "REGIO_KEY", ui_menu_database = "regionalstatistik.de", - use_token = use_token) + use_token = use_token, + ...) #----------------------------------------------------------------------------- @@ -664,7 +669,8 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_bayern.rds", sys_env = "BAYERN_KEY", ui_menu_database = "statistikdaten.bayern.de", - use_token = use_token) + use_token = use_token, + ...) #----------------------------------------------------------------------------- @@ -675,7 +681,8 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_nrw.rds", sys_env = "NRW_KEY", ui_menu_database = "landesdatenbank.nrw.de", - use_token = use_token) + use_token = use_token, + ...) #----------------------------------------------------------------------------- @@ -686,7 +693,8 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_bildung.rds", sys_env = "BILDUNG_KEY", ui_menu_database = "bildungsmonitoring.de", - use_token = use_token) + use_token = use_token, + ...) #----------------------------------------------------------------------------- @@ -697,7 +705,8 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_st.rds", sys_env = "ST_KEY", ui_menu_database = "genesis.sachsen-anhalt.de", - use_token = use_token) + use_token = use_token, + ...) #----------------------------------------------------------------------------- @@ -706,7 +715,8 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_zensus.rds", sys_env = "ZENSUS_KEY", ui_menu_database = "Zensus 2022", - use_token = use_token) + use_token = use_token, + ...) #----------------------------------------------------------------------------- @@ -715,7 +725,8 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_genesis.rds", sys_env = "GENESIS_KEY", ui_menu_database = "GENESIS", - use_token = use_token) + use_token = use_token, + ...) } else { @@ -734,21 +745,93 @@ insert_and_save_credentials <- function(database, #' @param sys_env System environment variable name for the key #' @param ui_menu_database The database for the auth request ('GENESIS' or 'Zensus 2022') #' @param use_token Boolean. Do you want to (if possible) set an API token instead of password + username? Defaults to FALSE. +#' @param multiple #' set_credentials_auth <- function(path, sys_env, ui_menu_database, - use_token) { + use_token, + multiple = NULL) { if(isTRUE(use_token)) { - username <- gen_auth_ask(paste0("API token for ", ui_menu_database)) - password <- "" + if(multiple > 1){ + + credentials_list <- list() + + for(i in 1:multiple){ + + if(i == 1) { + i <- "general" + id_name <- "general" + } + + username <- gen_auth_ask(paste0("API token for ", ui_menu_database, " (Entry ", i, ")")) + password <- "" + + if(i != "general") { + + id_name <- gen_auth_ask(paste0("ID for the specified credential for ", ui_menu_database, " (Entry ", i, ")")) + + } + + credential_vector <- c(username = username, password = password) + + credentials_list[[i]] <- credential_vector + + if(i != "general"){ + names(credentials_list)[i] <- id_name + } + + } + + } else { + + username <- gen_auth_ask(paste0("API token for ", ui_menu_database)) + password <- "" + + + } } else { - username <- gen_auth_ask(paste0("username for ", ui_menu_database)) - password <- gen_auth_ask(paste0("password for ", ui_menu_database)) + if(multiple > 1){ + + credentials_list <- list() + + for(i in 1:multiple){ + + if(i == 1) { + i <- "general" + id_name <- "general" + } + + username <- gen_auth_ask(paste0("username for ", ui_menu_database, " (Entry ", i, ")")) + password <- gen_auth_ask(paste0("password for ", ui_menu_database, " (Entry ", i, ")")) + + if(i != "general") { + + id_name <- gen_auth_ask(paste0("ID for the specified credential for ", ui_menu_database, " (Entry ", i, ")")) + + } + + credential_vector <- c(username = username, password = password) + + credentials_list[[i]] <- credential_vector + + if(i != "general"){ + names(credentials_list)[i] <- id_name + } + + } + + } else { + + username <- gen_auth_ask(paste0("username for ", ui_menu_database)) + password <- gen_auth_ask(paste0("password for ", ui_menu_database)) + ID <- "general" + } + } @@ -772,7 +855,13 @@ set_credentials_auth <- function(path, dir.create(gen_auth_path(), showWarnings = FALSE, recursive = TRUE) - credentials_list <- list(username = username, password = password) + if(multiple == 1) { + + credentials_list <- list(c(username = username, password = password)) + names(credentials_list) <- ID + + } + if (isTRUE(use_token)) { @@ -791,3 +880,150 @@ set_credentials_auth <- function(path, } #------------------------------------------------------------------------------- + +#' check_credentials +#' +#' @param database +#' @param credential_type +#' @param credential_list +#' @param verbose +#' +check_credentials <- function(database, + credential_type, + credential_list, + verbose) { + + # Check Lenght and Values of credential_type + if(length(credential_type) != 1 & length(credential_type) != 3) { + + stop("Parameter 'credential_type' has to be of length 1 or the default vector.", + call. = FALSE) + + } + + if(!is.character(credential_type)){ + + stop("Parameter 'credential_type' has to be of type character.", + call. = FALSE) + + } + + if (!all(credential_type %in% c("general", "custom", "multiple"))) { + + stop("Parameter 'credential_type' has to be one of 'general', 'custom', 'multiple' or the default vector.", + call. = FALSE) + + } + + # ------------------------------------------------- + + # Case: General ------------------------------------------------------------- + if(identical(credential_type, c("general", "custom", "multiple")) || identical(credential_type, "general")){ + + credential_type <- "general" + credential_list <- NULL + + if(isTRUE(verbose)){ + message("Parameter 'credential_type' set to 'general' by default. Ignoring all other inputs related to credentials.") + } + + # Retrieve credentials for all specified databases + creds_obj <- lapply(database, function(db) { + temp_obj <- unlist(gen_auth_get(database = db)["general"], recursive = FALSE) + names(temp_obj) <- c("username", "password") + + return(temp_obj) + }) + + names(creds_obj) <- database + + + # Case: Custom ------------------------------------------------------------- + } else if ( identical(credential_type, "custom") ) { + + if(is.null(credential_list)){ + + stop("Parameter 'credential_list' has to be specified if 'credential_type' is set to 'custom'.", + call. = FALSE) + + } + + if(!is.list(credential_list)){ + + stop("Parameter 'credential_list' has to be of type list if 'credential_type' is set to 'custom'.", + call. = FALSE) + + } + + if(!all(names(credential_list[[1]]) %in% c("username", "password"))) { + + stop("Every entry in the 'credential_list' has to include the entries 'username' and 'password' (e.g., list('genesis' = c(username = X, password = Y))) - if 'credential_type' is set to 'custom'.", + call. = FALSE) + + } + + if(!all(names(credential_list) %in% database)) { + + stop("Every database that is requested in the parameter 'database' needs its own list entry including the entries 'username' and 'password' (e.g., list('genesis' = c(username = X, password = Y))) - if 'credential_type' is set to 'custom'.", + call. = FALSE) + + } + + creds_obj <- credential_list + + + # Case: Multiple ----------------------------------------------------------- + } else if ( identical(credential_type, "multiple") ) { + + if(is.null(credential_list)){ + + stop("Parameter 'credential_list' has to be specified if 'credential_type' is set to 'multiple'.", + call. = FALSE) + + } + + if(!is.list(credential_list)){ + + stop("Parameter 'credential_list' has to be of type list if 'credential_type' is set to 'multiple'.", + call. = FALSE) + + } + + if(!all(names(credential_list) %in% database)) { + + stop("Every database that is requested in the parameter 'database' needs its own list entry including the 'ID' of the aimed account for the specified database (e.g., list('genesis' = c(ID = 'acc2'))) - if 'credential_type' is set to 'multiple'.", + call. = FALSE) + + } + + if(!all(sapply(credential_list, length) == 1)) { + + stop("Only one 'ID' is allowed per entry in the parameter 'database' - if 'credential_type' is set to 'multiple'.", + call. = FALSE) + + } + + if(!all(sapply(credential_list, is.character) == TRUE)) { + + stop("Every entry needs to be of type 'character' - if 'credential_type' is set to 'multiple'.", + call. = FALSE) + + } + + creds_obj <- lapply(names(credential_list), function(db) { + temp_obj <- gen_auth_get(database = db) + temp_obj <- temp_obj[credential_list[[db]]] + temp_obj <- unlist(temp_obj, recursive = FALSE) + names(temp_obj) <- c("username", "password") + + return(temp_obj) + }) + + names(creds_obj) <- names(credential_list) + } + + # Return + return(creds_obj) +} + +#------------------------------------------------------------------------------- diff --git a/restatis.Rproj b/restatis.Rproj index cdf4c28..69fafd4 100644 --- a/restatis.Rproj +++ b/restatis.Rproj @@ -1,5 +1,4 @@ Version: 1.0 -ProjectId: 080084fe-a96e-4569-95da-da19def65490 RestoreWorkspace: No SaveWorkspace: No From 47e017480804a27e6c243dd1c3719373c3801be9 Mon Sep 17 00:00:00 2001 From: buhly Date: Sat, 13 Dec 2025 20:28:41 +0100 Subject: [PATCH 09/26] checking work for #60 --- R/gen_api.R | 8 ++++ R/gen_auth.R | 23 ++++++++---- R/utils_httr2.R | 98 +++++++++++++++++++++++++++++-------------------- 3 files changed, 82 insertions(+), 47 deletions(-) diff --git a/R/gen_api.R b/R/gen_api.R index b5b7db3..9038712 100644 --- a/R/gen_api.R +++ b/R/gen_api.R @@ -19,6 +19,14 @@ gen_api <- function(..., # Choose executing function based on cache option if (isTRUE(use_cache)) { + if (!exists(".gen_api_cached", envir = asNamespace("restatis"))) { + + assign(x = ".gen_api_cached", + value = memoise::memoise(.gen_api_core), + envir = asNamespace("restatis")) + + } + return(.gen_api_cached(...)) } else { diff --git a/R/gen_auth.R b/R/gen_auth.R index f623608..46c9c7d 100644 --- a/R/gen_auth.R +++ b/R/gen_auth.R @@ -4,7 +4,7 @@ #' #' @param database Character string. The database to store credentials for ('all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'st'). #' @param use_token Boolean. Do you want to (if possible) set an API token instead of password + username? Note: This is only supported by 'genesis' and 'zensus'. Defaults to FALSE. -#' @param multiple +#' @param multiple Numeric value indicating how many credentials should be added for the specified database. #' #' @details Username and password are encrypted and saved as RDS in the #' package config directory. A random string is generated and stored in the @@ -65,16 +65,17 @@ gen_auth_save <- function(database, } - if(is.null(multiple)){ + if (is.null(multiple)) { multiple <- 1 } - if (!is.double(multiple) & length(multiple) == 1){ + if (!is.double(multiple) & length(multiple) == 1) { stop("Parameter 'multiple' must be a numeric value indicating how many credentials should be added for the specified database.", call. = FALSE) + } #----------------------------------------------------------------------------- @@ -83,8 +84,10 @@ gen_auth_save <- function(database, insert_and_save_credentials(database, use_token, multiple) - for(i in 1:multiple){ + for (i in 1:multiple) { + gen_logincheck(database = database, id = i) + } @@ -94,11 +97,13 @@ gen_auth_save <- function(database, insert_and_save_credentials(database, use_token, multiple) - for(i in 1:multiple){ + for (i in 1:multiple) { + gen_logincheck(database = database, id = i) + } - } else if (database == "all"){ + } else if (database == "all") { #--------------------------------------------------------------------------- @@ -129,8 +134,10 @@ gen_auth_save <- function(database, use_token = use_token, multiple = multiple) - for(i in 1:multiple){ + for (i in 1:multiple) { + gen_logincheck(database = db_names, id = i) + } }) @@ -164,7 +171,7 @@ gen_auth_save <- function(database, #' gen_auth_get <- function(database = NULL) { - if(is.null(database)){ + if (is.null(database)) { database <- "all" diff --git a/R/utils_httr2.R b/R/utils_httr2.R index 6e6da38..cf031fe 100644 --- a/R/utils_httr2.R +++ b/R/utils_httr2.R @@ -753,25 +753,27 @@ set_credentials_auth <- function(path, use_token, multiple = NULL) { - if(isTRUE(use_token)) { + if (isTRUE(use_token)) { - if(multiple > 1){ + if (multiple > 1) { credentials_list <- list() - for(i in 1:multiple){ + for (i in 1:multiple) { + + if (i == 1) { - if(i == 1) { i <- "general" - id_name <- "general" + id_name <- "general" + } - username <- gen_auth_ask(paste0("API token for ", ui_menu_database, " (Entry ", i, ")")) + username <- gen_auth_ask(paste0("API token for ", ui_menu_database, " (Entry ", i, ").")) password <- "" - if(i != "general") { + if (i != "general") { - id_name <- gen_auth_ask(paste0("ID for the specified credential for ", ui_menu_database, " (Entry ", i, ")")) + id_name <- gen_auth_ask(paste0("ID for the specified credential for ", ui_menu_database, " (Entry ", i, ").")) } @@ -779,8 +781,10 @@ set_credentials_auth <- function(path, credentials_list[[i]] <- credential_vector - if(i != "general"){ + if (i != "general") { + names(credentials_list)[i] <- id_name + } } @@ -790,28 +794,29 @@ set_credentials_auth <- function(path, username <- gen_auth_ask(paste0("API token for ", ui_menu_database)) password <- "" - } } else { - if(multiple > 1){ + if (multiple > 1) { credentials_list <- list() - for(i in 1:multiple){ + for (i in 1:multiple) { + + if (i == 1) { - if(i == 1) { i <- "general" id_name <- "general" + } - username <- gen_auth_ask(paste0("username for ", ui_menu_database, " (Entry ", i, ")")) - password <- gen_auth_ask(paste0("password for ", ui_menu_database, " (Entry ", i, ")")) + username <- gen_auth_ask(paste0("username for ", ui_menu_database, " (Entry ", i, ").")) + password <- gen_auth_ask(paste0("password for ", ui_menu_database, " (Entry ", i, ").")) if(i != "general") { - id_name <- gen_auth_ask(paste0("ID for the specified credential for ", ui_menu_database, " (Entry ", i, ")")) + id_name <- gen_auth_ask(paste0("ID for the specified credential for ", ui_menu_database, " (Entry ", i, ").")) } @@ -819,8 +824,10 @@ set_credentials_auth <- function(path, credentials_list[[i]] <- credential_vector - if(i != "general"){ + if (i != "general") { + names(credentials_list)[i] <- id_name + } } @@ -830,8 +837,8 @@ set_credentials_auth <- function(path, username <- gen_auth_ask(paste0("username for ", ui_menu_database)) password <- gen_auth_ask(paste0("password for ", ui_menu_database)) ID <- "general" - } + } } @@ -855,9 +862,10 @@ set_credentials_auth <- function(path, dir.create(gen_auth_path(), showWarnings = FALSE, recursive = TRUE) - if(multiple == 1) { + if (multiple == 1) { credentials_list <- list(c(username = username, password = password)) + names(credentials_list) <- ID } @@ -883,10 +891,10 @@ set_credentials_auth <- function(path, #' check_credentials #' -#' @param database -#' @param credential_type -#' @param credential_list -#' @param verbose +#' @param database Database to check credentials for +#' @param credential_type Credential type +#' @param credential_list List with credentials for DB +#' @param verbose Turn verbose on or off #' check_credentials <- function(database, credential_type, @@ -894,14 +902,14 @@ check_credentials <- function(database, verbose) { # Check Lenght and Values of credential_type - if(length(credential_type) != 1 & length(credential_type) != 3) { + if (length(credential_type) != 1 & length(credential_type) != 3) { - stop("Parameter 'credential_type' has to be of length 1 or the default vector.", + stop("Parameter 'credential_type' has to be of length 1 or use the default.", call. = FALSE) } - if(!is.character(credential_type)){ + if (!is.character(credential_type)) { stop("Parameter 'credential_type' has to be of type character.", call. = FALSE) @@ -910,35 +918,44 @@ check_credentials <- function(database, if (!all(credential_type %in% c("general", "custom", "multiple"))) { - stop("Parameter 'credential_type' has to be one of 'general', 'custom', 'multiple' or the default vector.", + stop("Parameter 'credential_type' has to be one of 'general', 'custom', 'multiple' or use default.", call. = FALSE) } - # ------------------------------------------------- - # Case: General ------------------------------------------------------------- - if(identical(credential_type, c("general", "custom", "multiple")) || identical(credential_type, "general")){ + + if (identical(credential_type, c("general", "custom", "multiple")) || identical(credential_type, "general")) { credential_type <- "general" credential_list <- NULL - if(isTRUE(verbose)){ + if (isTRUE(verbose)) { + message("Parameter 'credential_type' set to 'general' by default. Ignoring all other inputs related to credentials.") + } # Retrieve credentials for all specified databases creds_obj <- lapply(database, function(db) { + + # TODO: Passe das Listenobjekt mit den Credentials pro DB an + # TODO: Gebe ihm ein Attribut auf oberster Ebene: credentials_list + # TODO: Gebe den einzelnen Elementen "Unterattribute" + # TODO: Checke die Länge der Liste um sicherzustellen, das erste Element zu erwischen + temp_obj <- unlist(gen_auth_get(database = db)["general"], recursive = FALSE) + names(temp_obj) <- c("username", "password") return(temp_obj) + }) names(creds_obj) <- database + # Case: Custom ------------------------------------------------------------- - # Case: Custom ------------------------------------------------------------- } else if ( identical(credential_type, "custom") ) { if(is.null(credential_list)){ @@ -973,37 +990,37 @@ check_credentials <- function(database, # Case: Multiple ----------------------------------------------------------- - } else if ( identical(credential_type, "multiple") ) { + } else if (identical(credential_type, "multiple")) { - if(is.null(credential_list)){ + if (is.null(credential_list)) { stop("Parameter 'credential_list' has to be specified if 'credential_type' is set to 'multiple'.", call. = FALSE) } - if(!is.list(credential_list)){ + if (!is.list(credential_list)) { stop("Parameter 'credential_list' has to be of type list if 'credential_type' is set to 'multiple'.", call. = FALSE) } - if(!all(names(credential_list) %in% database)) { + if (!all(names(credential_list) %in% database)) { stop("Every database that is requested in the parameter 'database' needs its own list entry including the 'ID' of the aimed account for the specified database (e.g., list('genesis' = c(ID = 'acc2'))) - if 'credential_type' is set to 'multiple'.", call. = FALSE) } - if(!all(sapply(credential_list, length) == 1)) { + if (!all(sapply(credential_list, length) == 1)) { stop("Only one 'ID' is allowed per entry in the parameter 'database' - if 'credential_type' is set to 'multiple'.", call. = FALSE) } - if(!all(sapply(credential_list, is.character) == TRUE)) { + if (!all(sapply(credential_list, is.character) == TRUE)) { stop("Every entry needs to be of type 'character' - if 'credential_type' is set to 'multiple'.", call. = FALSE) @@ -1011,19 +1028,22 @@ check_credentials <- function(database, } creds_obj <- lapply(names(credential_list), function(db) { + temp_obj <- gen_auth_get(database = db) temp_obj <- temp_obj[credential_list[[db]]] temp_obj <- unlist(temp_obj, recursive = FALSE) names(temp_obj) <- c("username", "password") return(temp_obj) + }) names(creds_obj) <- names(credential_list) + } - # Return return(creds_obj) + } #------------------------------------------------------------------------------- From 49abb5adb1ebbd1c891602f22332b439e2590b9d Mon Sep 17 00:00:00 2001 From: KovaZo Date: Sun, 11 Jan 2026 10:16:57 +0100 Subject: [PATCH 10/26] Revert "checking work for #60" This reverts commit 47e017480804a27e6c243dd1c3719373c3801be9. --- R/gen_api.R | 8 ---- R/gen_auth.R | 23 ++++-------- R/utils_httr2.R | 98 ++++++++++++++++++++----------------------------- 3 files changed, 47 insertions(+), 82 deletions(-) diff --git a/R/gen_api.R b/R/gen_api.R index 9038712..b5b7db3 100644 --- a/R/gen_api.R +++ b/R/gen_api.R @@ -19,14 +19,6 @@ gen_api <- function(..., # Choose executing function based on cache option if (isTRUE(use_cache)) { - if (!exists(".gen_api_cached", envir = asNamespace("restatis"))) { - - assign(x = ".gen_api_cached", - value = memoise::memoise(.gen_api_core), - envir = asNamespace("restatis")) - - } - return(.gen_api_cached(...)) } else { diff --git a/R/gen_auth.R b/R/gen_auth.R index 46c9c7d..f623608 100644 --- a/R/gen_auth.R +++ b/R/gen_auth.R @@ -4,7 +4,7 @@ #' #' @param database Character string. The database to store credentials for ('all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'st'). #' @param use_token Boolean. Do you want to (if possible) set an API token instead of password + username? Note: This is only supported by 'genesis' and 'zensus'. Defaults to FALSE. -#' @param multiple Numeric value indicating how many credentials should be added for the specified database. +#' @param multiple #' #' @details Username and password are encrypted and saved as RDS in the #' package config directory. A random string is generated and stored in the @@ -65,17 +65,16 @@ gen_auth_save <- function(database, } - if (is.null(multiple)) { + if(is.null(multiple)){ multiple <- 1 } - if (!is.double(multiple) & length(multiple) == 1) { + if (!is.double(multiple) & length(multiple) == 1){ stop("Parameter 'multiple' must be a numeric value indicating how many credentials should be added for the specified database.", call. = FALSE) - } #----------------------------------------------------------------------------- @@ -84,10 +83,8 @@ gen_auth_save <- function(database, insert_and_save_credentials(database, use_token, multiple) - for (i in 1:multiple) { - + for(i in 1:multiple){ gen_logincheck(database = database, id = i) - } @@ -97,13 +94,11 @@ gen_auth_save <- function(database, insert_and_save_credentials(database, use_token, multiple) - for (i in 1:multiple) { - + for(i in 1:multiple){ gen_logincheck(database = database, id = i) - } - } else if (database == "all") { + } else if (database == "all"){ #--------------------------------------------------------------------------- @@ -134,10 +129,8 @@ gen_auth_save <- function(database, use_token = use_token, multiple = multiple) - for (i in 1:multiple) { - + for(i in 1:multiple){ gen_logincheck(database = db_names, id = i) - } }) @@ -171,7 +164,7 @@ gen_auth_save <- function(database, #' gen_auth_get <- function(database = NULL) { - if (is.null(database)) { + if(is.null(database)){ database <- "all" diff --git a/R/utils_httr2.R b/R/utils_httr2.R index cf031fe..6e6da38 100644 --- a/R/utils_httr2.R +++ b/R/utils_httr2.R @@ -753,27 +753,25 @@ set_credentials_auth <- function(path, use_token, multiple = NULL) { - if (isTRUE(use_token)) { + if(isTRUE(use_token)) { - if (multiple > 1) { + if(multiple > 1){ credentials_list <- list() - for (i in 1:multiple) { - - if (i == 1) { + for(i in 1:multiple){ + if(i == 1) { i <- "general" - id_name <- "general" - + id_name <- "general" } - username <- gen_auth_ask(paste0("API token for ", ui_menu_database, " (Entry ", i, ").")) + username <- gen_auth_ask(paste0("API token for ", ui_menu_database, " (Entry ", i, ")")) password <- "" - if (i != "general") { + if(i != "general") { - id_name <- gen_auth_ask(paste0("ID for the specified credential for ", ui_menu_database, " (Entry ", i, ").")) + id_name <- gen_auth_ask(paste0("ID for the specified credential for ", ui_menu_database, " (Entry ", i, ")")) } @@ -781,10 +779,8 @@ set_credentials_auth <- function(path, credentials_list[[i]] <- credential_vector - if (i != "general") { - + if(i != "general"){ names(credentials_list)[i] <- id_name - } } @@ -794,29 +790,28 @@ set_credentials_auth <- function(path, username <- gen_auth_ask(paste0("API token for ", ui_menu_database)) password <- "" + } } else { - if (multiple > 1) { + if(multiple > 1){ credentials_list <- list() - for (i in 1:multiple) { - - if (i == 1) { + for(i in 1:multiple){ + if(i == 1) { i <- "general" id_name <- "general" - } - username <- gen_auth_ask(paste0("username for ", ui_menu_database, " (Entry ", i, ").")) - password <- gen_auth_ask(paste0("password for ", ui_menu_database, " (Entry ", i, ").")) + username <- gen_auth_ask(paste0("username for ", ui_menu_database, " (Entry ", i, ")")) + password <- gen_auth_ask(paste0("password for ", ui_menu_database, " (Entry ", i, ")")) if(i != "general") { - id_name <- gen_auth_ask(paste0("ID for the specified credential for ", ui_menu_database, " (Entry ", i, ").")) + id_name <- gen_auth_ask(paste0("ID for the specified credential for ", ui_menu_database, " (Entry ", i, ")")) } @@ -824,10 +819,8 @@ set_credentials_auth <- function(path, credentials_list[[i]] <- credential_vector - if (i != "general") { - + if(i != "general"){ names(credentials_list)[i] <- id_name - } } @@ -837,9 +830,9 @@ set_credentials_auth <- function(path, username <- gen_auth_ask(paste0("username for ", ui_menu_database)) password <- gen_auth_ask(paste0("password for ", ui_menu_database)) ID <- "general" - } + } auth_path <- gen_auth_path(path) @@ -862,10 +855,9 @@ set_credentials_auth <- function(path, dir.create(gen_auth_path(), showWarnings = FALSE, recursive = TRUE) - if (multiple == 1) { + if(multiple == 1) { credentials_list <- list(c(username = username, password = password)) - names(credentials_list) <- ID } @@ -891,10 +883,10 @@ set_credentials_auth <- function(path, #' check_credentials #' -#' @param database Database to check credentials for -#' @param credential_type Credential type -#' @param credential_list List with credentials for DB -#' @param verbose Turn verbose on or off +#' @param database +#' @param credential_type +#' @param credential_list +#' @param verbose #' check_credentials <- function(database, credential_type, @@ -902,14 +894,14 @@ check_credentials <- function(database, verbose) { # Check Lenght and Values of credential_type - if (length(credential_type) != 1 & length(credential_type) != 3) { + if(length(credential_type) != 1 & length(credential_type) != 3) { - stop("Parameter 'credential_type' has to be of length 1 or use the default.", + stop("Parameter 'credential_type' has to be of length 1 or the default vector.", call. = FALSE) } - if (!is.character(credential_type)) { + if(!is.character(credential_type)){ stop("Parameter 'credential_type' has to be of type character.", call. = FALSE) @@ -918,44 +910,35 @@ check_credentials <- function(database, if (!all(credential_type %in% c("general", "custom", "multiple"))) { - stop("Parameter 'credential_type' has to be one of 'general', 'custom', 'multiple' or use default.", + stop("Parameter 'credential_type' has to be one of 'general', 'custom', 'multiple' or the default vector.", call. = FALSE) } - # Case: General ------------------------------------------------------------- + # ------------------------------------------------- - if (identical(credential_type, c("general", "custom", "multiple")) || identical(credential_type, "general")) { + # Case: General ------------------------------------------------------------- + if(identical(credential_type, c("general", "custom", "multiple")) || identical(credential_type, "general")){ credential_type <- "general" credential_list <- NULL - if (isTRUE(verbose)) { - + if(isTRUE(verbose)){ message("Parameter 'credential_type' set to 'general' by default. Ignoring all other inputs related to credentials.") - } # Retrieve credentials for all specified databases creds_obj <- lapply(database, function(db) { - - # TODO: Passe das Listenobjekt mit den Credentials pro DB an - # TODO: Gebe ihm ein Attribut auf oberster Ebene: credentials_list - # TODO: Gebe den einzelnen Elementen "Unterattribute" - # TODO: Checke die Länge der Liste um sicherzustellen, das erste Element zu erwischen - temp_obj <- unlist(gen_auth_get(database = db)["general"], recursive = FALSE) - names(temp_obj) <- c("username", "password") return(temp_obj) - }) names(creds_obj) <- database - # Case: Custom ------------------------------------------------------------- + # Case: Custom ------------------------------------------------------------- } else if ( identical(credential_type, "custom") ) { if(is.null(credential_list)){ @@ -990,37 +973,37 @@ check_credentials <- function(database, # Case: Multiple ----------------------------------------------------------- - } else if (identical(credential_type, "multiple")) { + } else if ( identical(credential_type, "multiple") ) { - if (is.null(credential_list)) { + if(is.null(credential_list)){ stop("Parameter 'credential_list' has to be specified if 'credential_type' is set to 'multiple'.", call. = FALSE) } - if (!is.list(credential_list)) { + if(!is.list(credential_list)){ stop("Parameter 'credential_list' has to be of type list if 'credential_type' is set to 'multiple'.", call. = FALSE) } - if (!all(names(credential_list) %in% database)) { + if(!all(names(credential_list) %in% database)) { stop("Every database that is requested in the parameter 'database' needs its own list entry including the 'ID' of the aimed account for the specified database (e.g., list('genesis' = c(ID = 'acc2'))) - if 'credential_type' is set to 'multiple'.", call. = FALSE) } - if (!all(sapply(credential_list, length) == 1)) { + if(!all(sapply(credential_list, length) == 1)) { stop("Only one 'ID' is allowed per entry in the parameter 'database' - if 'credential_type' is set to 'multiple'.", call. = FALSE) } - if (!all(sapply(credential_list, is.character) == TRUE)) { + if(!all(sapply(credential_list, is.character) == TRUE)) { stop("Every entry needs to be of type 'character' - if 'credential_type' is set to 'multiple'.", call. = FALSE) @@ -1028,22 +1011,19 @@ check_credentials <- function(database, } creds_obj <- lapply(names(credential_list), function(db) { - temp_obj <- gen_auth_get(database = db) temp_obj <- temp_obj[credential_list[[db]]] temp_obj <- unlist(temp_obj, recursive = FALSE) names(temp_obj) <- c("username", "password") return(temp_obj) - }) names(creds_obj) <- names(credential_list) - } + # Return return(creds_obj) - } #------------------------------------------------------------------------------- From 85e6998906f58742bf02c58fd5cc9c4bf799784e Mon Sep 17 00:00:00 2001 From: KovaZo Date: Sun, 11 Jan 2026 10:18:28 +0100 Subject: [PATCH 11/26] Revert "Update of multiple and custom credentials for restatis from ZK" This reverts commit e244926c6ee944fa6946e99ecdf8bfc0957a57ee. --- R/gen_alternative_terms.R | 14 +- R/gen_api.R | 24 +--- R/gen_auth.R | 36 +---- R/gen_catalogue.R | 22 +-- R/gen_cube.R | 12 -- R/gen_find.R | 14 +- R/gen_jobs.R | 24 ---- R/gen_metadata.R | 96 +++---------- R/gen_modified_data.R | 26 ++-- R/gen_objects2stat.R | 22 +-- R/gen_objects2var.R | 22 +-- R/gen_qualitysigns.R | 12 -- R/gen_table.R | 13 -- R/gen_var2-val2.R | 66 ++------- R/utils_httr2.R | 280 +++----------------------------------- restatis.Rproj | 1 + 16 files changed, 92 insertions(+), 592 deletions(-) diff --git a/R/gen_alternative_terms.R b/R/gen_alternative_terms.R index 240d4f8..56aa790 100644 --- a/R/gen_alternative_terms.R +++ b/R/gen_alternative_terms.R @@ -6,8 +6,6 @@ #' @param similarity Boolean. Indicator if the output of the function should be sorted based on a Levenshtein edit distance based on the \code{adist()} function. Default is 'TRUE'. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -31,8 +29,6 @@ gen_alternative_terms <- function(term = NULL, similarity = TRUE, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), pagelength = 500, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, ...) { @@ -51,12 +47,6 @@ gen_alternative_terms <- function(term = NULL, error.input = TRUE, text = verbose) - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- # Loop over databases in database_vector and make respective API calls @@ -73,8 +63,8 @@ gen_alternative_terms <- function(term = NULL, # Make API call results_raw <- gen_api(endpoint = "catalogue/terms", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, selection = term, pagelength = pagelength, ...) diff --git a/R/gen_api.R b/R/gen_api.R index b5b7db3..f68eed5 100644 --- a/R/gen_api.R +++ b/R/gen_api.R @@ -37,14 +37,12 @@ gen_api <- function(..., #' #' @param endpoint Character string. The endpoint of the API that is to be queried. #' @param database The database the query should be sent to. -#' @param id #' @param ... Further parameters passed on to the final API call. #' #' @importFrom httr2 `%>%` #' .gen_api_core <- function(endpoint, database, - id = NULL, ...) { #----------------------------------------------------------------------------- @@ -89,19 +87,6 @@ gen_api <- function(..., # Set user agent user_agent <- "https://github.com/CorrelAid/restatis" - if(!is.null(id)){ - - creds <- gen_auth_get(database = database) - - username <- creds[[id]]["username"] - password <- creds[[id]]["password"] - } else { - - temp_body <- list(...) - - username <- temp_body[["username"]] - password <- temp_body[["password"]] - } #----------------------------------------------------------------------------- # First try to request with POST @@ -114,7 +99,6 @@ gen_api <- function(..., # Catch API parameter values for ... body_parameters <- list(...) - body_parameters <- body_parameters[-c(which(names(body_parameters) %in% c("username", "password")))] # Check if there are any items in ... if (length(body_parameters) > 0) { @@ -135,8 +119,8 @@ gen_api <- function(..., httr2::req_user_agent(user_agent) %>% httr2::req_url_path_append(endpoint) %>% httr2::req_headers("Content-Type" = "application/x-www-form-urlencoded", - "username" = username, - "password" = password) %>% + "username" = gen_auth_get(database = database)$username, + "password" = gen_auth_get(database = database)$password) %>% httr2::req_retry(max_tries = 3) %>% httr2::req_perform() @@ -150,7 +134,7 @@ gen_api <- function(..., httr2::request(url) %>% httr2::req_user_agent(user_agent) %>% httr2::req_url_path_append(endpoint) %>% - httr2::req_url_query(username, password, ...) %>% + httr2::req_url_query(!!!gen_auth_get(database = database), ...) %>% httr2::req_retry(max_tries = 3) %>% httr2::req_perform() @@ -159,7 +143,7 @@ gen_api <- function(..., stop(paste0("The API call(s) have been tried with GET and POST methods, but were unsuccessful (error message: '", e$message, "'). Check your specifications or try again later."), call. = FALSE) - }) + }) }) diff --git a/R/gen_auth.R b/R/gen_auth.R index f623608..2623693 100644 --- a/R/gen_auth.R +++ b/R/gen_auth.R @@ -4,7 +4,6 @@ #' #' @param database Character string. The database to store credentials for ('all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'st'). #' @param use_token Boolean. Do you want to (if possible) set an API token instead of password + username? Note: This is only supported by 'genesis' and 'zensus'. Defaults to FALSE. -#' @param multiple #' #' @details Username and password are encrypted and saved as RDS in the #' package config directory. A random string is generated and stored in the @@ -24,8 +23,7 @@ #' } #' gen_auth_save <- function(database, - use_token = FALSE, - multiple = NULL) { + use_token = FALSE) { if (missing(database)) stop("You have to specify a value for parameter 'database'.", call. = FALSE) @@ -65,38 +63,21 @@ gen_auth_save <- function(database, } - if(is.null(multiple)){ - - multiple <- 1 - - } - - if (!is.double(multiple) & length(multiple) == 1){ - - stop("Parameter 'multiple' must be a numeric value indicating how many credentials should be added for the specified database.", - call. = FALSE) - } - #----------------------------------------------------------------------------- if (database %in% c("regio", "bayern", "nrw", "bildung", "st")) { - insert_and_save_credentials(database, use_token, multiple) - - for(i in 1:multiple){ - gen_logincheck(database = database, id = i) - } + insert_and_save_credentials(database, use_token) + gen_logincheck(database = database) #----------------------------------------------------------------------------- } else if (database %in% c("zensus", "genesis")) { - insert_and_save_credentials(database, use_token, multiple) + insert_and_save_credentials(database, use_token) - for(i in 1:multiple){ - gen_logincheck(database = database, id = i) - } + gen_logincheck(database = database) } else if (database == "all"){ @@ -126,12 +107,9 @@ gen_auth_save <- function(database, message("~~ Saving credentials for the ", ui_menu_database, " database.") insert_and_save_credentials(database = db_names, - use_token = use_token, - multiple = multiple) + use_token = use_token) - for(i in 1:multiple){ - gen_logincheck(database = db_names, id = i) - } + gen_logincheck(database = db_names) }) diff --git a/R/gen_catalogue.R b/R/gen_catalogue.R index c07bee6..915f52c 100644 --- a/R/gen_catalogue.R +++ b/R/gen_catalogue.R @@ -10,8 +10,6 @@ #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -38,8 +36,6 @@ gen_catalogue <- function(code = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, ...) { @@ -68,12 +64,6 @@ gen_catalogue <- function(code = NULL, sortcriterion <- match.arg(sortcriterion) - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- # Loop over databases in database_vector and make respective API calls @@ -100,8 +90,8 @@ gen_catalogue <- function(code = NULL, # Make API call results_raw <- gen_api(endpoint = "catalogue/cubes", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, selection = code, sortcriterion = sortcriterion, area = area, @@ -156,8 +146,8 @@ gen_catalogue <- function(code = NULL, # Make API call results_raw <- gen_api(endpoint = "catalogue/statistics", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, selection = code, sortcriterion = sortcriterion, pagelength = pagelength, @@ -207,8 +197,8 @@ gen_catalogue <- function(code = NULL, # Make API call results_raw <- gen_api(endpoint = "catalogue/tables", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, selection = code, area = area, sortcriterion = sortcriterion, diff --git a/R/gen_cube.R b/R/gen_cube.R index 8249092..a605b25 100644 --- a/R/gen_cube.R +++ b/R/gen_cube.R @@ -34,8 +34,6 @@ #' with the keys separated by commas. Use of wildcard (`*`) allowed.} #' \item{\code{stand}}{Character string, format: \code{"DD.MM.YYYY"}. Only retrieve data #' updated after this date.} -#' \item{\code{credential_type}}{} -#' \item{\code{credential_list}}{} #' \item{\code{language}}{Character string. Search terms, returned messages and data #' descriptions in German (`"de"`) or English (`"en"`)?} #' \item{\code{...}}{Additional parameters for the API call (see respective API documentation). @@ -78,8 +76,6 @@ gen_cube_ <- function(name, classifyingvariable3 = NULL, classifyingkey3 = NULL, stand = NULL, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, language = Sys.getenv("RESTATIS_LANG"), ...) { @@ -102,12 +98,6 @@ gen_cube_ <- function(name, classifyingkey2 <- param_collapse_vec(classifyingkey2) classifyingkey3 <- param_collapse_vec(classifyingkey3) - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- cube_raw <- gen_api(endpoint = "data/cubefile", @@ -131,8 +121,6 @@ gen_cube_ <- function(name, classifyingkey3 = classifyingkey3, stand = stand, language = language, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, ...) #------------------------------------------------------------------------------- diff --git a/R/gen_find.R b/R/gen_find.R index 0abeec7..9b77b59 100644 --- a/R/gen_find.R +++ b/R/gen_find.R @@ -11,8 +11,6 @@ #' @param ordering A logical. Indicator if the function should return the output of the iteration ordered first based on the fact if the searched term is appearing in the title of the object and secondly on an estimator of the number of variables in this object. Default option is 'TRUE'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'TRUE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -41,8 +39,6 @@ gen_find <- function(term = NULL, ordering = TRUE, pagelength = 500, error.ignore = TRUE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, ...) { @@ -65,12 +61,6 @@ gen_find <- function(term = NULL, category <- match.arg(category) - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -95,8 +85,8 @@ gen_find <- function(term = NULL, results_raw <- gen_api(endpoint = "find/find", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, term = term, category = category, pagelength = pagelength, diff --git a/R/gen_jobs.R b/R/gen_jobs.R index d23975d..3fd1603 100644 --- a/R/gen_jobs.R +++ b/R/gen_jobs.R @@ -6,8 +6,6 @@ #' @param sortcriterion Character string. Indicator if the output should be sorted by 'type','time','status' or 'code'. This is a parameter of the API call itself. The default is 'type'. #' @param flat Boolean. Should the function return a list with jobs and metadata ('FALSE') or just a flat data.frame ('TRUE')? Defaults to FALSE. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -25,8 +23,6 @@ gen_list_jobs <- function(database, sortcriterion = c("type", "time", "status", "code"), flat = FALSE, error.ignore = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, ...) { @@ -66,19 +62,11 @@ gen_list_jobs <- function(database, } - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- results_raw <- .gen_api_core(endpoint = "catalogue/jobs", database = database, sortcriterion = sortcriterion, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, ...) results_json <- test_if_json(results_raw) @@ -130,8 +118,6 @@ gen_list_jobs <- function(database, #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. #' @param compress Boolean. Should empty rows and columns be discarded? Default is FALSE. #' @param language Character string. Defines if the decimal mark and grouping mark of integers should be represented based on the European (e.g.: '100,5', '200.000,5') or American ('100.5', '200,000.5') system. Defaults to 'Sys.getenv("RESTATIS_LANG")'. -#' @param credential_type -#' @param credential_list #' @param all_character Boolean. Should all variables be imported as 'character' variables? Avoids fuzzy data type conversions if there are leading zeros or other special characters. Defaults to TRUE. #' #' @return Returns a data.frame with the table content @@ -147,8 +133,6 @@ gen_download_job <- function(name, area = c("all", "public", "user"), compress = FALSE, language = Sys.getenv("RESTATIS_LANG"), - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, all_character = TRUE) { #----------------------------------------------------------------------------- @@ -162,12 +146,6 @@ gen_download_job <- function(name, public = "\u00F6ffentlich", user = "benutzer") - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- response <- gen_api(endpoint = "data/resultfile", @@ -176,8 +154,6 @@ gen_download_job <- function(name, area = area, compress = compress, format = "ffcsv", - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, language = language) response_type <- resp_check_data(response) diff --git a/R/gen_metadata.R b/R/gen_metadata.R index f08976c..738f031 100644 --- a/R/gen_metadata.R +++ b/R/gen_metadata.R @@ -6,8 +6,6 @@ #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param raw Boolean. Should a non-parsed API response be returned? Default option is 'FALSE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -25,8 +23,6 @@ gen_metadata_statistic <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), error.ignore = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, raw = FALSE, ...) { @@ -49,12 +45,6 @@ gen_metadata_statistic <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -71,8 +61,8 @@ gen_metadata_statistic <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/statistic", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, area = area, ...) @@ -81,8 +71,8 @@ gen_metadata_statistic <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/statistic", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, ...) @@ -149,8 +139,6 @@ gen_metadata_statistic <- function(code = NULL, #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param raw Boolean. Should a non-parsed API response be returned? Default option is 'FALSE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -168,8 +156,6 @@ gen_metadata_variable <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), error.ignore = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, raw = FALSE, ...) { @@ -192,12 +178,6 @@ gen_metadata_variable <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -214,8 +194,8 @@ gen_metadata_variable <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/variable", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, area = area, ...) @@ -224,8 +204,8 @@ gen_metadata_variable <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/variable", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, ...) @@ -300,8 +280,6 @@ gen_metadata_variable <- function(code = NULL, #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param raw Boolean. Should a non-parsed API response be returned? Default option is 'FALSE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -319,8 +297,6 @@ gen_metadata_value <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), error.ignore = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, raw = FALSE, ...) { @@ -343,12 +319,6 @@ gen_metadata_value <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -365,8 +335,8 @@ gen_metadata_value <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/value", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, area = area, ...) @@ -375,8 +345,8 @@ gen_metadata_value <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/value", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, ...) @@ -448,8 +418,6 @@ gen_metadata_value <- function(code = NULL, #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param raw Boolean. Should a non-parsed API response be returned? Default option is 'FALSE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -467,8 +435,6 @@ gen_metadata_table <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), error.ignore = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, raw = FALSE, ...) { @@ -491,12 +457,6 @@ gen_metadata_table <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -511,8 +471,8 @@ gen_metadata_table <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/table", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, area = area, ...) @@ -660,8 +620,6 @@ gen_metadata_table <- function(code = NULL, #' @param database Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), landesdatenbank.nrw.de ('nrw') or bildungsmonitoring.de ('bildung') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param raw Boolean. Should a non-parsed API response be returned? Default option is 'FALSE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -680,8 +638,6 @@ gen_metadata_cube <- function(code = NULL, database = c("all", "genesis", "regio", "nrw", "bildung"), # HUHU: Works for 'bayern' & 'st'? Not for ST, BY unclear area = c("all", "public", "user"), error.ignore = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, raw = FALSE, ...) { @@ -704,12 +660,6 @@ gen_metadata_cube <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -724,8 +674,8 @@ gen_metadata_cube <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/cube", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, area = area, ...) @@ -848,8 +798,6 @@ gen_metadata_cube <- function(code = NULL, #' @param category Character string. Specifying the specific object type of the object that you want meta data for. No default option - you need to specify the object type. Hint: The functions in 'restatis' often return information on object 'Type'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param raw Boolean. Should a non-parsed API response be returned? Default option is 'FALSE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -868,8 +816,6 @@ gen_metadata <- function(code = NULL, category = c("cube", "statistic", "table", "variable", "value"), area = c("all", "public", "user"), error.ignore = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, raw = FALSE, ...) { @@ -897,8 +843,6 @@ gen_metadata <- function(code = NULL, gen_metadata_cube(code = code, database = odb, error.ignore = error.ignore, - credential_type = credential_type, - credential_list = credential_list, verbose = verbose, raw = raw, ...) @@ -909,8 +853,6 @@ gen_metadata <- function(code = NULL, database = odb, area = area, error.ignore = error.ignore, - credential_type = credential_type, - credential_list = credential_list, verbose = verbose, raw = raw, ...) @@ -921,8 +863,6 @@ gen_metadata <- function(code = NULL, database = odb, area = area, error.ignore = error.ignore, - credential_type = credential_type, - credential_list = credential_list, verbose = verbose, raw = raw, ...) @@ -933,8 +873,6 @@ gen_metadata <- function(code = NULL, database = odb, area = area, error.ignore = error.ignore, - credential_type = credential_type, - credential_list = credential_list, verbose = verbose, raw = raw, ...) @@ -945,8 +883,6 @@ gen_metadata <- function(code = NULL, database = odb, area = area, error.ignore = error.ignore, - credential_type = credential_type, - credential_list = credential_list, verbose = verbose, raw = raw, ...) diff --git a/R/gen_modified_data.R b/R/gen_modified_data.R index 0e65613..a6594d0 100644 --- a/R/gen_modified_data.R +++ b/R/gen_modified_data.R @@ -7,8 +7,6 @@ #' @param type Character string. Specific GENESIS and regionalstatistik.de object types: 'tables', 'statistics', and 'statisticsUpdates'. Specific Zensus 2022 object types: 'tables' and 'statistics'. All types that are specific for one database can be used together through 'all', which is the default. #' @param date Character string. Specific date that is used as the last update or upload time to include an object in return. Default option is 'now', which uses the current date of your system. Alternative options are 'week_before', using the current date of your system minus 7 days, 'month_before', using the current date of your system minus 4 weeks, and 'year_before', using the current date of your system minus 52 weeks. Additionally, it is possible to fill in a specific date of format 'DD.MM.YYYY'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -33,8 +31,6 @@ gen_modified_data <- function(code = "", type = c("all", "tables", "statistics", "statisticsUpdates"), date = c("now", "week_before", "month_before", "year_before"), pagelength = 500, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, ...) { @@ -52,12 +48,6 @@ gen_modified_data <- function(code = "", error.input = TRUE, text = verbose) - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- if (date == "now") { @@ -97,8 +87,8 @@ gen_modified_data <- function(code = "", results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, selection = code, type = "Neue Tabellen", date = date, @@ -117,8 +107,8 @@ gen_modified_data <- function(code = "", results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, selection = code, type = "Neue Statistiken", date = date, @@ -140,8 +130,8 @@ gen_modified_data <- function(code = "", results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, selection = code, type = "Aktualisierte Statistiken", date = date, @@ -162,8 +152,8 @@ gen_modified_data <- function(code = "", results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, selection = code, type = "all", date = date, diff --git a/R/gen_objects2stat.R b/R/gen_objects2stat.R index 5a214f0..ecb74c1 100644 --- a/R/gen_objects2stat.R +++ b/R/gen_objects2stat.R @@ -10,8 +10,6 @@ #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -37,8 +35,6 @@ gen_objects2stat <- function(code = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, ...) { @@ -65,12 +61,6 @@ gen_objects2stat <- function(code = NULL, sortcriterion <- match.arg(sortcriterion) - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -89,8 +79,8 @@ gen_objects2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/tables2statistic", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, area = area, sortcriterion = sortcriterion, @@ -140,8 +130,8 @@ gen_objects2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables2statistic", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, area = area, sortcriterion = sortcriterion, @@ -199,8 +189,8 @@ gen_objects2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/cubes2statistic", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, area = area, sortcriterion = sortcriterion, diff --git a/R/gen_objects2var.R b/R/gen_objects2var.R index 3666a2c..2b1e517 100644 --- a/R/gen_objects2var.R +++ b/R/gen_objects2var.R @@ -10,8 +10,6 @@ #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -37,8 +35,6 @@ gen_objects2var <- function(code = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, ...) { @@ -65,12 +61,6 @@ gen_objects2var <- function(code = NULL, sortcriterion <- match.arg(sortcriterion) - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -89,8 +79,8 @@ gen_objects2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/tables2variable", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, area = area, sortcriterion = sortcriterion, @@ -140,8 +130,8 @@ gen_objects2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/statistics2variable", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, area = area, sortcriterion = sortcriterion, @@ -198,8 +188,8 @@ gen_objects2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/timeseries2variable", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, area = area, sortcriterion = sortcriterion, diff --git a/R/gen_qualitysigns.R b/R/gen_qualitysigns.R index 2ed195b..27c3d62 100644 --- a/R/gen_qualitysigns.R +++ b/R/gen_qualitysigns.R @@ -4,8 +4,6 @@ #' #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. In case of success, should a message be printed? Defaults to 'TRUE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -14,8 +12,6 @@ #' gen_signs <- function(database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), error.ignore = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, ...) { @@ -31,18 +27,10 @@ gen_signs <- function(database = c("all", "genesis", "zensus", "regio", "bayern" error.input = error.ignore, text = verbose) - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - res <- lapply(database_vector, function(db){ results_raw <- gen_api(endpoint = "catalogue/qualitysigns", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, ...) results_json <- test_if_json(results_raw) diff --git a/R/gen_table.R b/R/gen_table.R index 65810b1..3035f0b 100644 --- a/R/gen_table.R +++ b/R/gen_table.R @@ -38,8 +38,6 @@ #' (not available with the 'Zensus' database). In order to set job = TRUE #' you have to have username and password saved with gen_auth_save(), #' using API tokens with job = TRUE will result in an error.} -#' \item{\code{credential_type}}{} -#' \item{\code{credential_list}}{} #' \item{\code{all_character}}{Boolean. Should all variables be imported as #' 'character' variables? Avoids fuzzy data type conversions if there are #' leading zeros or other special characters. Defaults to TRUE.} @@ -83,8 +81,6 @@ gen_table_ <- function(name, stand = NULL, language = Sys.getenv("RESTATIS_LANG"), job = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, all_character = TRUE, ...) { @@ -120,13 +116,6 @@ gen_table_ <- function(name, classifyingkey2 <- param_collapse_vec(classifyingkey2) classifyingkey3 <- param_collapse_vec(classifyingkey3) - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - - #----------------------------------------------------------------------------- # Manage credentials related to jobs @@ -173,8 +162,6 @@ gen_table_ <- function(name, language = language, format = "ffcsv", job = job, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, ...) #----------------------------------------------------------------------------- diff --git a/R/gen_var2-val2.R b/R/gen_var2-val2.R index 2b6f4d6..b307ed5 100644 --- a/R/gen_var2-val2.R +++ b/R/gen_var2-val2.R @@ -9,8 +9,6 @@ #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -31,8 +29,6 @@ gen_var2stat <- function(code = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, ...) { @@ -58,13 +54,6 @@ gen_var2stat <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - - #----------------------------------------------------------------------------- # Processing # @@ -84,8 +73,8 @@ gen_var2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables2statistic", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, area = area, pagelength = pagelength, @@ -95,8 +84,8 @@ gen_var2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables2statistic", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, pagelength = pagelength, ...) @@ -175,8 +164,6 @@ gen_var2stat <- function(code = NULL, #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'TRUE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -195,8 +182,6 @@ gen_val2var <- function(code = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore = TRUE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, ...) { @@ -223,13 +208,6 @@ gen_val2var <- function(code = NULL, embedding <- deparse(sys.calls()) - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - - #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -246,8 +224,8 @@ gen_val2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/values2variable", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, area = area, pagelength = pagelength, @@ -257,8 +235,8 @@ gen_val2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/values2variable", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, pagelength = pagelength, ...) @@ -335,8 +313,6 @@ gen_val2var <- function(code = NULL, #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore.var Boolean. Indicator for variables if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param error.ignore.val Boolean. Indicator for values if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'TRUE', this prevents the function to stop even if a variable has no further explanation (often the case for numerical variables). Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -358,8 +334,6 @@ gen_val2var2stat <- function(code = NULL, pagelength = 500, error.ignore.var = FALSE, error.ignore.val = TRUE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, ...) { @@ -380,7 +354,6 @@ gen_val2var2stat <- function(code = NULL, sortcriterion <- match.arg(sortcriterion) - #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -391,8 +364,6 @@ gen_val2var2stat <- function(code = NULL, detailed = detailed, sortcriterion = sortcriterion, error.ignore = error.ignore.var, - credential_type = credential_type, - credential_list = credential_list, verbose = verbose, ...))) @@ -415,8 +386,6 @@ gen_val2var2stat <- function(code = NULL, area = area, sortcriterion = sortcriterion, error.ignore = error.ignore.val, - credential_type = credential_type, - credential_list = credential_list, verbose = verbose))) list_values <<- append(list_values, zwisch) @@ -451,8 +420,6 @@ gen_val2var2stat <- function(code = NULL, #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. -#' @param credential_type -#' @param credential_list #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. #' @@ -471,8 +438,6 @@ gen_search_vars <- function(code = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore = FALSE, - credential_type = c("general", "custom", "multiple"), - credential_list = NULL, verbose = TRUE, ...) { @@ -497,13 +462,6 @@ gen_search_vars <- function(code = NULL, area <- switch(area, all = "all", public = "\u00F6ffentlich", user = "benutzer") - # Check credentials - creds <- check_credentials(database, - credential_type, - credential_list, - verbose) - - #----------------------------------------------------------------------------- res <- lapply(database_vector, function(db){ @@ -522,8 +480,8 @@ gen_search_vars <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, name = code, sortcriterion = sortcriterion, area = area, @@ -534,8 +492,8 @@ gen_search_vars <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables", database = db, - username = creds[[db]]["username"], #gen_auth_get(database = db)$username, - password = creds[[db]]["password"], #gen_auth_get(database = db)$password, + username = gen_auth_get(database = db)$username, + password = gen_auth_get(database = db)$password, sortcriterion = sortcriterion, name = code, pagelength = pagelength, diff --git a/R/utils_httr2.R b/R/utils_httr2.R index 6e6da38..3b895f5 100644 --- a/R/utils_httr2.R +++ b/R/utils_httr2.R @@ -442,15 +442,14 @@ logincheck_http_error <- function(database, #--------------------------------------------------------------------------- - response <- .gen_api_core(endpoint = "helloworld/logincheck", - database = database, - ...) - - logincheck_stop_or_warn(response = response, - error = TRUE, - verbose = verbose, - database = database) + response <- .gen_api_core(endpoint = "helloworld/logincheck", + database = database, + ...) + logincheck_stop_or_warn(response = response, + error = TRUE, + verbose = verbose, + database = database) #----------------------------------------------------------------------------- @@ -473,8 +472,7 @@ logincheck_http_error <- function(database, .f = ~ logincheck_stop_or_warn(response = .x, database = .y, error = FALSE, - verbose = verbose, - )) + verbose = verbose)) #----------------------------------------------------------------------------- @@ -644,11 +642,9 @@ logincheck_stop_or_warn <- function(response, #' #' @param database The database to specify credentials for #' @param use_token Boolean. Do you want to (if possible) set an API token instead of password + username? Defaults to FALSE. -#' @param ... Additional parameters (unchecked) #' insert_and_save_credentials <- function(database, - use_token, - ...) { + use_token) { if (database == "regio") { @@ -657,8 +653,7 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_regio.rds", sys_env = "REGIO_KEY", ui_menu_database = "regionalstatistik.de", - use_token = use_token, - ...) + use_token = use_token) #----------------------------------------------------------------------------- @@ -669,8 +664,7 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_bayern.rds", sys_env = "BAYERN_KEY", ui_menu_database = "statistikdaten.bayern.de", - use_token = use_token, - ...) + use_token = use_token) #----------------------------------------------------------------------------- @@ -681,8 +675,7 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_nrw.rds", sys_env = "NRW_KEY", ui_menu_database = "landesdatenbank.nrw.de", - use_token = use_token, - ...) + use_token = use_token) #----------------------------------------------------------------------------- @@ -693,8 +686,7 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_bildung.rds", sys_env = "BILDUNG_KEY", ui_menu_database = "bildungsmonitoring.de", - use_token = use_token, - ...) + use_token = use_token) #----------------------------------------------------------------------------- @@ -705,8 +697,7 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_st.rds", sys_env = "ST_KEY", ui_menu_database = "genesis.sachsen-anhalt.de", - use_token = use_token, - ...) + use_token = use_token) #----------------------------------------------------------------------------- @@ -715,8 +706,7 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_zensus.rds", sys_env = "ZENSUS_KEY", ui_menu_database = "Zensus 2022", - use_token = use_token, - ...) + use_token = use_token) #----------------------------------------------------------------------------- @@ -725,8 +715,7 @@ insert_and_save_credentials <- function(database, set_credentials_auth(path = "auth_genesis.rds", sys_env = "GENESIS_KEY", ui_menu_database = "GENESIS", - use_token = use_token, - ...) + use_token = use_token) } else { @@ -745,93 +734,21 @@ insert_and_save_credentials <- function(database, #' @param sys_env System environment variable name for the key #' @param ui_menu_database The database for the auth request ('GENESIS' or 'Zensus 2022') #' @param use_token Boolean. Do you want to (if possible) set an API token instead of password + username? Defaults to FALSE. -#' @param multiple #' set_credentials_auth <- function(path, sys_env, ui_menu_database, - use_token, - multiple = NULL) { + use_token) { if(isTRUE(use_token)) { - if(multiple > 1){ - - credentials_list <- list() - - for(i in 1:multiple){ - - if(i == 1) { - i <- "general" - id_name <- "general" - } - - username <- gen_auth_ask(paste0("API token for ", ui_menu_database, " (Entry ", i, ")")) - password <- "" - - if(i != "general") { - - id_name <- gen_auth_ask(paste0("ID for the specified credential for ", ui_menu_database, " (Entry ", i, ")")) - - } - - credential_vector <- c(username = username, password = password) - - credentials_list[[i]] <- credential_vector - - if(i != "general"){ - names(credentials_list)[i] <- id_name - } - - } - - } else { - - username <- gen_auth_ask(paste0("API token for ", ui_menu_database)) - password <- "" - - - } + username <- gen_auth_ask(paste0("API token for ", ui_menu_database)) + password <- "" } else { - if(multiple > 1){ - - credentials_list <- list() - - for(i in 1:multiple){ - - if(i == 1) { - i <- "general" - id_name <- "general" - } - - username <- gen_auth_ask(paste0("username for ", ui_menu_database, " (Entry ", i, ")")) - password <- gen_auth_ask(paste0("password for ", ui_menu_database, " (Entry ", i, ")")) - - if(i != "general") { - - id_name <- gen_auth_ask(paste0("ID for the specified credential for ", ui_menu_database, " (Entry ", i, ")")) - - } - - credential_vector <- c(username = username, password = password) - - credentials_list[[i]] <- credential_vector - - if(i != "general"){ - names(credentials_list)[i] <- id_name - } - - } - - } else { - - username <- gen_auth_ask(paste0("username for ", ui_menu_database)) - password <- gen_auth_ask(paste0("password for ", ui_menu_database)) - ID <- "general" - } - + username <- gen_auth_ask(paste0("username for ", ui_menu_database)) + password <- gen_auth_ask(paste0("password for ", ui_menu_database)) } @@ -855,13 +772,7 @@ set_credentials_auth <- function(path, dir.create(gen_auth_path(), showWarnings = FALSE, recursive = TRUE) - if(multiple == 1) { - - credentials_list <- list(c(username = username, password = password)) - names(credentials_list) <- ID - - } - + credentials_list <- list(username = username, password = password) if (isTRUE(use_token)) { @@ -880,150 +791,3 @@ set_credentials_auth <- function(path, } #------------------------------------------------------------------------------- - -#' check_credentials -#' -#' @param database -#' @param credential_type -#' @param credential_list -#' @param verbose -#' -check_credentials <- function(database, - credential_type, - credential_list, - verbose) { - - # Check Lenght and Values of credential_type - if(length(credential_type) != 1 & length(credential_type) != 3) { - - stop("Parameter 'credential_type' has to be of length 1 or the default vector.", - call. = FALSE) - - } - - if(!is.character(credential_type)){ - - stop("Parameter 'credential_type' has to be of type character.", - call. = FALSE) - - } - - if (!all(credential_type %in% c("general", "custom", "multiple"))) { - - stop("Parameter 'credential_type' has to be one of 'general', 'custom', 'multiple' or the default vector.", - call. = FALSE) - - } - - # ------------------------------------------------- - - # Case: General ------------------------------------------------------------- - if(identical(credential_type, c("general", "custom", "multiple")) || identical(credential_type, "general")){ - - credential_type <- "general" - credential_list <- NULL - - if(isTRUE(verbose)){ - message("Parameter 'credential_type' set to 'general' by default. Ignoring all other inputs related to credentials.") - } - - # Retrieve credentials for all specified databases - creds_obj <- lapply(database, function(db) { - temp_obj <- unlist(gen_auth_get(database = db)["general"], recursive = FALSE) - names(temp_obj) <- c("username", "password") - - return(temp_obj) - }) - - names(creds_obj) <- database - - - # Case: Custom ------------------------------------------------------------- - } else if ( identical(credential_type, "custom") ) { - - if(is.null(credential_list)){ - - stop("Parameter 'credential_list' has to be specified if 'credential_type' is set to 'custom'.", - call. = FALSE) - - } - - if(!is.list(credential_list)){ - - stop("Parameter 'credential_list' has to be of type list if 'credential_type' is set to 'custom'.", - call. = FALSE) - - } - - if(!all(names(credential_list[[1]]) %in% c("username", "password"))) { - - stop("Every entry in the 'credential_list' has to include the entries 'username' and 'password' (e.g., list('genesis' = c(username = X, password = Y))) - if 'credential_type' is set to 'custom'.", - call. = FALSE) - - } - - if(!all(names(credential_list) %in% database)) { - - stop("Every database that is requested in the parameter 'database' needs its own list entry including the entries 'username' and 'password' (e.g., list('genesis' = c(username = X, password = Y))) - if 'credential_type' is set to 'custom'.", - call. = FALSE) - - } - - creds_obj <- credential_list - - - # Case: Multiple ----------------------------------------------------------- - } else if ( identical(credential_type, "multiple") ) { - - if(is.null(credential_list)){ - - stop("Parameter 'credential_list' has to be specified if 'credential_type' is set to 'multiple'.", - call. = FALSE) - - } - - if(!is.list(credential_list)){ - - stop("Parameter 'credential_list' has to be of type list if 'credential_type' is set to 'multiple'.", - call. = FALSE) - - } - - if(!all(names(credential_list) %in% database)) { - - stop("Every database that is requested in the parameter 'database' needs its own list entry including the 'ID' of the aimed account for the specified database (e.g., list('genesis' = c(ID = 'acc2'))) - if 'credential_type' is set to 'multiple'.", - call. = FALSE) - - } - - if(!all(sapply(credential_list, length) == 1)) { - - stop("Only one 'ID' is allowed per entry in the parameter 'database' - if 'credential_type' is set to 'multiple'.", - call. = FALSE) - - } - - if(!all(sapply(credential_list, is.character) == TRUE)) { - - stop("Every entry needs to be of type 'character' - if 'credential_type' is set to 'multiple'.", - call. = FALSE) - - } - - creds_obj <- lapply(names(credential_list), function(db) { - temp_obj <- gen_auth_get(database = db) - temp_obj <- temp_obj[credential_list[[db]]] - temp_obj <- unlist(temp_obj, recursive = FALSE) - names(temp_obj) <- c("username", "password") - - return(temp_obj) - }) - - names(creds_obj) <- names(credential_list) - } - - # Return - return(creds_obj) -} - -#------------------------------------------------------------------------------- diff --git a/restatis.Rproj b/restatis.Rproj index 69fafd4..cdf4c28 100644 --- a/restatis.Rproj +++ b/restatis.Rproj @@ -1,4 +1,5 @@ Version: 1.0 +ProjectId: 080084fe-a96e-4569-95da-da19def65490 RestoreWorkspace: No SaveWorkspace: No From 45df070706957074c62109ae26986c6ecd02ab6f Mon Sep 17 00:00:00 2001 From: KovaZo Date: Sun, 11 Jan 2026 14:11:24 +0100 Subject: [PATCH 12/26] Rework credential function with custom credentials. --- R/gen_alternative_terms.R | 6 +- R/gen_api.R | 35 +++++- R/gen_catalogue.R | 12 +- R/gen_cube.R | 26 +++++ R/gen_find.R | 6 +- R/gen_jobs.R | 30 +++++ R/gen_logincheck.R | 1 + R/gen_metadata.R | 48 +++++--- R/gen_modified_data.R | 15 ++- R/gen_objects2stat.R | 12 +- R/gen_objects2var.R | 12 +- R/gen_qualitysigns.R | 4 + R/gen_table.R | 57 ++++++++-- R/gen_var2-val2.R | 32 ++++-- R/utils_dataprocessing.R | 224 ++++++++++++++++++++++++++------------ restatis.Rproj | 1 - 16 files changed, 380 insertions(+), 141 deletions(-) diff --git a/R/gen_alternative_terms.R b/R/gen_alternative_terms.R index 56aa790..6dec4a5 100644 --- a/R/gen_alternative_terms.R +++ b/R/gen_alternative_terms.R @@ -5,6 +5,7 @@ #' @param term Character string. Maximum length of 15 characters. Term or word for which you are searching for alternative or related terms. Use of '*' as a placeholder is possible to generate broader search areas. #' @param similarity Boolean. Indicator if the output of the function should be sorted based on a Levenshtein edit distance based on the \code{adist()} function. Default is 'TRUE'. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -28,6 +29,7 @@ gen_alternative_terms <- function(term = NULL, similarity = TRUE, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, pagelength = 500, verbose = TRUE, ...) { @@ -44,6 +46,7 @@ gen_alternative_terms <- function(term = NULL, # Check availability of credentials for the database(s) selected database_vector <- test_database_function(database, + credential_list = credential_list, error.input = TRUE, text = verbose) @@ -63,8 +66,7 @@ gen_alternative_terms <- function(term = NULL, # Make API call results_raw <- gen_api(endpoint = "catalogue/terms", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, selection = term, pagelength = pagelength, ...) diff --git a/R/gen_api.R b/R/gen_api.R index f68eed5..ac1f6b9 100644 --- a/R/gen_api.R +++ b/R/gen_api.R @@ -19,6 +19,18 @@ gen_api <- function(..., # Choose executing function based on cache option if (isTRUE(use_cache)) { + if (!exists(".gen_api_cached", envir = asNamespace("restatis"))) { + + assign(x = ".gen_api_cached", + + + value = memoise::memoise(.gen_api_core), + + + envir = asNamespace("restatis")) + + } + return(.gen_api_cached(...)) } else { @@ -37,12 +49,14 @@ gen_api <- function(..., #' #' @param endpoint Character string. The endpoint of the API that is to be queried. #' @param database The database the query should be sent to. +#' @param credential_list A named list including username and password for the database(s) to be queried. If NULL (default), the function will try to get credentials from the environment variables. #' @param ... Further parameters passed on to the final API call. #' #' @importFrom httr2 `%>%` #' .gen_api_core <- function(endpoint, database, + credential_list = NULL, ...) { #----------------------------------------------------------------------------- @@ -87,6 +101,19 @@ gen_api <- function(..., # Set user agent user_agent <- "https://github.com/CorrelAid/restatis" + # Set custom credentials + if(!is.null(credential_list)){ + + username <- credential_list[[database]]["username"] + password <- credential_list[[database]]["password"] + + } else { + + username <- gen_auth_get(database = database)$username + password <- gen_auth_get(database = database)$password + + } + #----------------------------------------------------------------------------- # First try to request with POST @@ -119,8 +146,8 @@ gen_api <- function(..., httr2::req_user_agent(user_agent) %>% httr2::req_url_path_append(endpoint) %>% httr2::req_headers("Content-Type" = "application/x-www-form-urlencoded", - "username" = gen_auth_get(database = database)$username, - "password" = gen_auth_get(database = database)$password) %>% + "username" = username, + "password" = password) %>% httr2::req_retry(max_tries = 3) %>% httr2::req_perform() @@ -134,7 +161,7 @@ gen_api <- function(..., httr2::request(url) %>% httr2::req_user_agent(user_agent) %>% httr2::req_url_path_append(endpoint) %>% - httr2::req_url_query(!!!gen_auth_get(database = database), ...) %>% + httr2::req_url_query("username" = username, "password" = password, ...) %>% httr2::req_retry(max_tries = 3) %>% httr2::req_perform() @@ -143,7 +170,7 @@ gen_api <- function(..., stop(paste0("The API call(s) have been tried with GET and POST methods, but were unsuccessful (error message: '", e$message, "'). Check your specifications or try again later."), call. = FALSE) - }) + }) }) diff --git a/R/gen_catalogue.R b/R/gen_catalogue.R index 915f52c..5ec1259 100644 --- a/R/gen_catalogue.R +++ b/R/gen_catalogue.R @@ -8,6 +8,7 @@ #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -34,6 +35,7 @@ gen_catalogue <- function(code = NULL, area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), + credential_list = NULL, pagelength = 500, error.ignore = FALSE, verbose = TRUE, @@ -55,6 +57,7 @@ gen_catalogue <- function(code = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(input = database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -90,8 +93,7 @@ gen_catalogue <- function(code = NULL, # Make API call results_raw <- gen_api(endpoint = "catalogue/cubes", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, selection = code, sortcriterion = sortcriterion, area = area, @@ -146,8 +148,7 @@ gen_catalogue <- function(code = NULL, # Make API call results_raw <- gen_api(endpoint = "catalogue/statistics", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, selection = code, sortcriterion = sortcriterion, pagelength = pagelength, @@ -197,8 +198,7 @@ gen_catalogue <- function(code = NULL, # Make API call results_raw <- gen_api(endpoint = "catalogue/tables", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, selection = code, area = area, sortcriterion = sortcriterion, diff --git a/R/gen_cube.R b/R/gen_cube.R index a605b25..b2e14c6 100644 --- a/R/gen_cube.R +++ b/R/gen_cube.R @@ -4,6 +4,7 @@ #' #' @param name Character string for a cube object (only GENESIS, regionalstatistik.de, landesdatenbank.nrw.de or bildungsmonitoring.de) #' @param database Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw') or bildungsmonitoring.de ('bildung') database is called. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param ... Further (optional) parameters passed on to the API call: #' \describe{ #' \item{\code{area}}{Character string. The area in which the table is stored. Possible values: @@ -59,6 +60,7 @@ gen_cube <- function(name, ...) { gen_cube_ <- function(name, database = c("genesis", "regio", "nrw", "bildung", "bayern", "st"), + credential_list = NULL, area = c("public", "user"), values = TRUE, metadata = TRUE, @@ -82,6 +84,29 @@ gen_cube_ <- function(name, area <- match.arg(area) database <- match.arg(database) + if(!is.null(credential_list)){ + if(!is.list(credential_list)){ + + stop("Parameter 'credential_list' has to be of type list if 'credential_type'.", + call. = FALSE) + + } + + if(!all(sapply(credential_list, function(x) {all(c("username", "password") %in% names(x))}))) { + + stop("The database that is requested in the parameter 'database' needs its own list entry including the entries 'username' and 'password' (e.g., list('genesis' = c(username = X, password = Y))).", + call. = FALSE) + + } + + if(!database %in% names(credential_list)) { + + stop("The database that is requested in the parameter 'database' has no value in the 'credential_list'. Please check the parameters.", + call. = FALSE) + + } + } + if (!isTRUE(language == "en")) { area <- switch(area, public = "\u00F6ffentlich", user = "benutzer") @@ -102,6 +127,7 @@ gen_cube_ <- function(name, cube_raw <- gen_api(endpoint = "data/cubefile", database = database, + credential_list = credential_list, name = name, area = area, values = values, diff --git a/R/gen_find.R b/R/gen_find.R index 9b77b59..1c8522e 100644 --- a/R/gen_find.R +++ b/R/gen_find.R @@ -9,6 +9,7 @@ #' @param category Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param ordering A logical. Indicator if the function should return the output of the iteration ordered first based on the fact if the searched term is appearing in the title of the object and secondly on an estimator of the number of variables in this object. Default option is 'TRUE'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'TRUE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -37,6 +38,7 @@ gen_find <- function(term = NULL, category = c("all", "tables", "statistics", "variables", "cubes"), detailed = FALSE, ordering = TRUE, + credential_list = NULL, pagelength = 500, error.ignore = TRUE, verbose = TRUE, @@ -56,6 +58,7 @@ gen_find <- function(term = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -85,8 +88,7 @@ gen_find <- function(term = NULL, results_raw <- gen_api(endpoint = "find/find", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, term = term, category = category, pagelength = pagelength, diff --git a/R/gen_jobs.R b/R/gen_jobs.R index 3fd1603..518a28d 100644 --- a/R/gen_jobs.R +++ b/R/gen_jobs.R @@ -5,6 +5,7 @@ #' @param database Character string. Indicator if GENESIS or regionalstatistik.de database is called. Accepts only one database ('regio' or 'genesis'). #' @param sortcriterion Character string. Indicator if the output should be sorted by 'type','time','status' or 'code'. This is a parameter of the API call itself. The default is 'type'. #' @param flat Boolean. Should the function return a list with jobs and metadata ('FALSE') or just a flat data.frame ('TRUE')? Defaults to FALSE. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -22,6 +23,7 @@ gen_list_jobs <- function(database, sortcriterion = c("type", "time", "status", "code"), flat = FALSE, + credential_list = NULL, error.ignore = FALSE, verbose = TRUE, ...) { @@ -36,6 +38,7 @@ gen_list_jobs <- function(database, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(input = database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -66,6 +69,7 @@ gen_list_jobs <- function(database, results_raw <- .gen_api_core(endpoint = "catalogue/jobs", database = database, + credential_list = credential_list, sortcriterion = sortcriterion, ...) @@ -115,6 +119,7 @@ gen_list_jobs <- function(database, #' #' @param name Character string. The job code retrieved by using gen_list_jobs(). #' @param database Character string. Indicator if the GENESIS ('genesis') or regionalstatistik.de ('regio') database is called. Only one database can be addressed per function call. Default option is 'genesis'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. #' @param compress Boolean. Should empty rows and columns be discarded? Default is FALSE. #' @param language Character string. Defines if the decimal mark and grouping mark of integers should be represented based on the European (e.g.: '100,5', '200.000,5') or American ('100.5', '200,000.5') system. Defaults to 'Sys.getenv("RESTATIS_LANG")'. @@ -130,6 +135,7 @@ gen_list_jobs <- function(database, #' gen_download_job <- function(name, database = c("genesis", "regio"), + credential_list = NULL, area = c("all", "public", "user"), compress = FALSE, language = Sys.getenv("RESTATIS_LANG"), @@ -139,6 +145,29 @@ gen_download_job <- function(name, database <- match.arg(database) + if(!is.null(credential_list)){ + if(!is.list(credential_list)){ + + stop("Parameter 'credential_list' has to be of type list if 'credential_type'.", + call. = FALSE) + + } + + if(!all(sapply(credential_list, function(x) {all(c("username", "password") %in% names(x))}))) { + + stop("The database that is requested in the parameter 'database' needs its own list entry including the entries 'username' and 'password' (e.g., list('genesis' = c(username = X, password = Y))).", + call. = FALSE) + + } + + if(!database %in% names(credential_list)) { + + stop("The database that is requested in the parameter 'database' has no value in the 'credential_list'. Please check the parameters.", + call. = FALSE) + + } + } + area <- match.arg(area) area <- switch(area, @@ -150,6 +179,7 @@ gen_download_job <- function(name, response <- gen_api(endpoint = "data/resultfile", database = database, + credential_list = credential_list, name = name, area = area, compress = compress, diff --git a/R/gen_logincheck.R b/R/gen_logincheck.R index ac4eb0f..8e62c8d 100644 --- a/R/gen_logincheck.R +++ b/R/gen_logincheck.R @@ -20,6 +20,7 @@ gen_logincheck <- function(database = "all", # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(database, + credential_list = NULL, error.input = TRUE, text = verbose) diff --git a/R/gen_metadata.R b/R/gen_metadata.R index 738f031..6f5c721 100644 --- a/R/gen_metadata.R +++ b/R/gen_metadata.R @@ -4,6 +4,7 @@ #' #' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -21,6 +22,7 @@ #' gen_metadata_statistic <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -38,6 +40,7 @@ gen_metadata_statistic <- function(code = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -61,8 +64,7 @@ gen_metadata_statistic <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, area = area, ...) @@ -71,8 +73,7 @@ gen_metadata_statistic <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, ...) @@ -137,6 +138,7 @@ gen_metadata_statistic <- function(code = NULL, #' #' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -154,6 +156,7 @@ gen_metadata_statistic <- function(code = NULL, #' gen_metadata_variable <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -171,6 +174,7 @@ gen_metadata_variable <- function(code = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -194,8 +198,7 @@ gen_metadata_variable <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, area = area, ...) @@ -204,8 +207,7 @@ gen_metadata_variable <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, ...) @@ -278,6 +280,7 @@ gen_metadata_variable <- function(code = NULL, #' #' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -295,6 +298,7 @@ gen_metadata_variable <- function(code = NULL, #' gen_metadata_value <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -312,6 +316,7 @@ gen_metadata_value <- function(code = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -335,8 +340,7 @@ gen_metadata_value <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/value", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, area = area, ...) @@ -345,8 +349,7 @@ gen_metadata_value <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/value", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, ...) @@ -416,6 +419,7 @@ gen_metadata_value <- function(code = NULL, #' #' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -433,6 +437,7 @@ gen_metadata_value <- function(code = NULL, #' gen_metadata_table <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -450,6 +455,7 @@ gen_metadata_table <- function(code = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -471,8 +477,7 @@ gen_metadata_table <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/table", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, area = area, ...) @@ -618,6 +623,7 @@ gen_metadata_table <- function(code = NULL, #' #' @param code A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. #' @param database Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), landesdatenbank.nrw.de ('nrw') or bildungsmonitoring.de ('bildung') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -636,6 +642,7 @@ gen_metadata_table <- function(code = NULL, #' gen_metadata_cube <- function(code = NULL, database = c("all", "genesis", "regio", "nrw", "bildung"), # HUHU: Works for 'bayern' & 'st'? Not for ST, BY unclear + credential_list = NULL, area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -653,6 +660,7 @@ gen_metadata_cube <- function(code = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -674,8 +682,7 @@ gen_metadata_cube <- function(code = NULL, results_raw <- gen_api(endpoint = "metadata/cube", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, area = area, ...) @@ -796,6 +803,7 @@ gen_metadata_cube <- function(code = NULL, #' @param code String with a maximum length of 15 characters for a database object. Only one code per iteration. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param category Character string. Specifying the specific object type of the object that you want meta data for. No default option - you need to specify the object type. Hint: The functions in 'restatis' often return information on object 'Type'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -814,6 +822,7 @@ gen_metadata_cube <- function(code = NULL, gen_metadata <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), category = c("cube", "statistic", "table", "variable", "value"), + credential_list = NULL, area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -831,6 +840,7 @@ gen_metadata <- function(code = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -842,6 +852,8 @@ gen_metadata <- function(code = NULL, gen_metadata_cube(code = code, database = odb, + credential_list = credential_list, + area = area, error.ignore = error.ignore, verbose = verbose, raw = raw, @@ -851,6 +863,7 @@ gen_metadata <- function(code = NULL, gen_metadata_value(code = code, database = odb, + credential_list = credential_list, area = area, error.ignore = error.ignore, verbose = verbose, @@ -861,6 +874,7 @@ gen_metadata <- function(code = NULL, gen_metadata_variable(code = code, database = odb, + credential_list = credential_list, area = area, error.ignore = error.ignore, verbose = verbose, @@ -871,6 +885,7 @@ gen_metadata <- function(code = NULL, gen_metadata_table(code = code, database = odb, + credential_list = credential_list, area = area, error.ignore = error.ignore, verbose = verbose, @@ -881,6 +896,7 @@ gen_metadata <- function(code = NULL, gen_metadata_statistic(code = code, database = odb, + credential_list = credential_list, area = area, error.ignore = error.ignore, verbose = verbose, diff --git a/R/gen_modified_data.R b/R/gen_modified_data.R index a6594d0..f6d1db2 100644 --- a/R/gen_modified_data.R +++ b/R/gen_modified_data.R @@ -6,6 +6,7 @@ #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param type Character string. Specific GENESIS and regionalstatistik.de object types: 'tables', 'statistics', and 'statisticsUpdates'. Specific Zensus 2022 object types: 'tables' and 'statistics'. All types that are specific for one database can be used together through 'all', which is the default. #' @param date Character string. Specific date that is used as the last update or upload time to include an object in return. Default option is 'now', which uses the current date of your system. Alternative options are 'week_before', using the current date of your system minus 7 days, 'month_before', using the current date of your system minus 4 weeks, and 'year_before', using the current date of your system minus 52 weeks. Additionally, it is possible to fill in a specific date of format 'DD.MM.YYYY'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -30,6 +31,7 @@ gen_modified_data <- function(code = "", database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), type = c("all", "tables", "statistics", "statisticsUpdates"), date = c("now", "week_before", "month_before", "year_before"), + credential_list = NULL, pagelength = 500, verbose = TRUE, ...) { @@ -45,6 +47,7 @@ gen_modified_data <- function(code = "", # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(database, + credential_list = credential_list, error.input = TRUE, text = verbose) @@ -87,8 +90,7 @@ gen_modified_data <- function(code = "", results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, selection = code, type = "Neue Tabellen", date = date, @@ -107,8 +109,7 @@ gen_modified_data <- function(code = "", results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, selection = code, type = "Neue Statistiken", date = date, @@ -130,8 +131,7 @@ gen_modified_data <- function(code = "", results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, selection = code, type = "Aktualisierte Statistiken", date = date, @@ -152,8 +152,7 @@ gen_modified_data <- function(code = "", results_raw <- gen_api(endpoint = "catalogue/modifieddata", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, selection = code, type = "all", date = date, diff --git a/R/gen_objects2stat.R b/R/gen_objects2stat.R index ecb74c1..1af4a08 100644 --- a/R/gen_objects2stat.R +++ b/R/gen_objects2stat.R @@ -8,6 +8,7 @@ #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -33,6 +34,7 @@ gen_objects2stat <- function(code = NULL, area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), + credential_list = NULL, pagelength = 500, error.ignore = FALSE, verbose = TRUE, @@ -52,6 +54,7 @@ gen_objects2stat <- function(code = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(input = database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -79,8 +82,7 @@ gen_objects2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/tables2statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, area = area, sortcriterion = sortcriterion, @@ -130,8 +132,7 @@ gen_objects2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables2statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, area = area, sortcriterion = sortcriterion, @@ -189,8 +190,7 @@ gen_objects2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/cubes2statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, area = area, sortcriterion = sortcriterion, diff --git a/R/gen_objects2var.R b/R/gen_objects2var.R index 2b1e517..6fefdff 100644 --- a/R/gen_objects2var.R +++ b/R/gen_objects2var.R @@ -8,6 +8,7 @@ #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -33,6 +34,7 @@ gen_objects2var <- function(code = NULL, area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), + credential_list = NULL, pagelength = 500, error.ignore = FALSE, verbose = TRUE, @@ -52,6 +54,7 @@ gen_objects2var <- function(code = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(input = database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -79,8 +82,7 @@ gen_objects2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/tables2variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, area = area, sortcriterion = sortcriterion, @@ -130,8 +132,7 @@ gen_objects2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/statistics2variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, area = area, sortcriterion = sortcriterion, @@ -188,8 +189,7 @@ gen_objects2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/timeseries2variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, area = area, sortcriterion = sortcriterion, diff --git a/R/gen_qualitysigns.R b/R/gen_qualitysigns.R index 27c3d62..35096f9 100644 --- a/R/gen_qualitysigns.R +++ b/R/gen_qualitysigns.R @@ -3,6 +3,7 @@ #' @description Function to list all currently used special signs (e.g., 0, *, X, (), p, ...) and their meaning in the respective database. #' #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. In case of success, should a message be printed? Defaults to 'TRUE'. #' @param ... Additional parameters for the API call. These parameters are only affecting the call itself, no further processing. For more details see `vignette("additional_parameter")`. @@ -11,6 +12,7 @@ #' @export #' gen_signs <- function(database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, error.ignore = FALSE, verbose = TRUE, ...) { @@ -24,6 +26,7 @@ gen_signs <- function(database = c("all", "genesis", "zensus", "regio", "bayern" # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -31,6 +34,7 @@ gen_signs <- function(database = c("all", "genesis", "zensus", "regio", "bayern" results_raw <- gen_api(endpoint = "catalogue/qualitysigns", database = db, + credential_list = credential_list, ...) results_json <- test_if_json(results_raw) diff --git a/R/gen_table.R b/R/gen_table.R index 3035f0b..a4e6e98 100644 --- a/R/gen_table.R +++ b/R/gen_table.R @@ -4,6 +4,7 @@ #' #' @param name Character string. Name/code of the table. Use of wildcards (`*`) is possible. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param ... Optional parameters passed on to the API call: #' \describe{ #' \item{\code{area}}{Character string. The area in which the table is stored. Possible values: @@ -65,6 +66,7 @@ gen_table <- function(name, ...) { gen_table_ <- function(name, database = c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, area = c("all", "public", "user"), compress = FALSE, transpose = FALSE, @@ -96,6 +98,29 @@ gen_table_ <- function(name, database <- match.arg(database) + if(!is.null(credential_list)){ + if(!is.list(credential_list)){ + + stop("Parameter 'credential_list' has to be of type list if 'credential_type'.", + call. = FALSE) + + } + + if(!all(sapply(credential_list, function(x) {all(c("username", "password") %in% names(x))}))) { + + stop("The database that is requested in the parameter 'database' needs its own list entry including the entries 'username' and 'password' (e.g., list('genesis' = c(username = X, password = Y))).", + call. = FALSE) + + } + + if(!database %in% names(credential_list)) { + + stop("The database that is requested in the parameter 'database' has no value in the 'credential_list'. Please check the parameters.", + call. = FALSE) + + } + } + area <- match.arg(area) if (!isTRUE(language == "en")) { @@ -119,23 +144,32 @@ gen_table_ <- function(name, #----------------------------------------------------------------------------- # Manage credentials related to jobs - credentials <- gen_auth_get(database = database) + if(!is.null(credential_list)){ - cred_attr <- credentials %>% attributes %>% names + stop("Please check if the jobs-related credentials are identical with your provided credentials - otherwise the function will fail.", + call. = FALSE) - if (!("credential_type" %in% cred_attr)) { + } else { - stop("There has been an error specifying your credentials (missing credential type attribute). Please try again using 'gen_auth_save()'.", - call. = FALSE) + credentials <- gen_auth_get(database = database) - } + cred_attr <- credentials %>% attributes %>% names - if (isTRUE(job) & attr(credentials, "credential_type") == "token" & database == "genesis") { + if (!("credential_type" %in% cred_attr)) { - stop(paste0("It is not possible to set 'job = TRUE' when an API token is used for authentication.\n", - "Use 'gen_auth_save(\"", database, "\", use_token = FALSE)' and input username and password to enable creating jobs.\n", - "See README for more information."), - call. = FALSE) + stop("There has been an error specifying your credentials (missing credential type attribute). Please try again using 'gen_auth_save()'.", + call. = FALSE) + + } + + if (isTRUE(job) & attr(credentials, "credential_type") == "token" & database == "genesis") { + + stop(paste0("It is not possible to set 'job = TRUE' when an API token is used for authentication.\n", + "Use 'gen_auth_save(\"", database, "\", use_token = FALSE)' and input username and password to enable creating jobs.\n", + "See README for more information."), + call. = FALSE) + + } } @@ -144,6 +178,7 @@ gen_table_ <- function(name, response <- gen_api(endpoint = "data/tablefile", database = database, + credential_list = credential_list, name = name, area = area, compress = compress, diff --git a/R/gen_var2-val2.R b/R/gen_var2-val2.R index b307ed5..206a399 100644 --- a/R/gen_var2-val2.R +++ b/R/gen_var2-val2.R @@ -7,6 +7,7 @@ #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -27,6 +28,7 @@ gen_var2stat <- function(code = NULL, area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), + credential_list = NULL, pagelength = 500, error.ignore = FALSE, verbose = TRUE, @@ -45,6 +47,7 @@ gen_var2stat <- function(code = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(input = database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -73,8 +76,7 @@ gen_var2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables2statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, area = area, pagelength = pagelength, @@ -84,8 +86,7 @@ gen_var2stat <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables2statistic", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, pagelength = pagelength, ...) @@ -162,6 +163,7 @@ gen_var2stat <- function(code = NULL, #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'TRUE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -180,6 +182,7 @@ gen_val2var <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), sortcriterion = c("code", "content"), + credential_list = NULL, pagelength = 500, error.ignore = TRUE, verbose = TRUE, @@ -197,6 +200,7 @@ gen_val2var <- function(code = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(input = database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -224,8 +228,7 @@ gen_val2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/values2variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, area = area, pagelength = pagelength, @@ -235,8 +238,7 @@ gen_val2var <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/values2variable", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, pagelength = pagelength, ...) @@ -309,6 +311,7 @@ gen_val2var <- function(code = NULL, #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore.var Boolean. Indicator for variables if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. @@ -330,6 +333,7 @@ gen_val2var2stat <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), detailed = FALSE, + credential_list = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore.var = FALSE, @@ -349,6 +353,7 @@ gen_val2var2stat <- function(code = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(input = database, + credential_list = credential_list, error.input = error.ignore.var, text = verbose) @@ -360,6 +365,7 @@ gen_val2var2stat <- function(code = NULL, variables <- suppressMessages(suppressWarnings(gen_var2stat(code = code, database = database_vector, + credential_list = credential_list, area = area, detailed = detailed, sortcriterion = sortcriterion, @@ -383,6 +389,7 @@ gen_val2var2stat <- function(code = NULL, zwisch <- suppressMessages(suppressWarnings(gen_val2var(code = x, database = database_vector, + credential_list = credential_list, area = area, sortcriterion = sortcriterion, error.ignore = error.ignore.val, @@ -418,6 +425,7 @@ gen_val2var2stat <- function(code = NULL, #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param pagelength Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects. #' @param error.ignore Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE. #' @param verbose Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings. @@ -436,6 +444,7 @@ gen_search_vars <- function(code = NULL, database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), sortcriterion = c("code", "content"), + credential_list = NULL, pagelength = 500, error.ignore = FALSE, verbose = TRUE, @@ -453,6 +462,7 @@ gen_search_vars <- function(code = NULL, # database_vector will hold a vector of the specified databases to query database_vector <- test_database_function(input = database, + credential_list = credential_list, error.input = error.ignore, text = verbose) @@ -480,8 +490,7 @@ gen_search_vars <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, name = code, sortcriterion = sortcriterion, area = area, @@ -492,8 +501,7 @@ gen_search_vars <- function(code = NULL, results_raw <- gen_api(endpoint = "catalogue/variables", database = db, - username = gen_auth_get(database = db)$username, - password = gen_auth_get(database = db)$password, + credential_list = credential_list, sortcriterion = sortcriterion, name = code, pagelength = pagelength, diff --git a/R/utils_dataprocessing.R b/R/utils_dataprocessing.R index f0addd2..bbc5efe 100644 --- a/R/utils_dataprocessing.R +++ b/R/utils_dataprocessing.R @@ -187,13 +187,13 @@ forming_evas <- function(list_of) { }, - remain = keep)}) + remain = keep)}) }) }) - #----------------------------------------------------------------------- + #----------------------------------------------------------------------- } else { @@ -206,17 +206,17 @@ forming_evas <- function(list_of) { obj <- r[keep] obj <- tibble::as_tibble(obj) - }, + }, remain = keep + )} + )} )} - )} - - #------------------------------------------------------------------------- + #------------------------------------------------------------------------- } else { @@ -226,15 +226,15 @@ forming_evas <- function(list_of) { obj <- r[keep] obj <- tibble::as_tibble(obj) - }, + }, remain = keep - )} + )} - )} + )} - #--------------------------------------------------------------------------- + #--------------------------------------------------------------------------- } else { @@ -243,7 +243,7 @@ forming_evas <- function(list_of) { obj <- r[keep] obj <- tibble::as_tibble(obj) - }, + }, remain = keep) @@ -449,7 +449,7 @@ check_function_input <- function(code = NULL, stop("Parameter 'category' has to have a length of 1 to 3.", call. = FALSE) - } + } #--------------------------------------------------------------------------- @@ -491,7 +491,7 @@ check_function_input <- function(code = NULL, stop("Available categories for 'zensus' database are: 'tables' and 'statistics'.", call. = FALSE) - #----------------------------------------------------------------------- + #----------------------------------------------------------------------- } else if (length(category) == 1 && "cubes" %in% category && @@ -519,7 +519,7 @@ check_function_input <- function(code = NULL, } - #------------------------------------------------------------------------------- + #------------------------------------------------------------------------------- if("genesis" %in% database){ @@ -620,23 +620,23 @@ check_function_input <- function(code = NULL, #------------------------------------------------------------------------- - if (!all(category %in% c("all", "tables", "statistics", "variables", "cubes"))) { + if (!all(category %in% c("all", "tables", "statistics", "variables", "cubes"))) { - #--------------------------------------------------------------------- + #--------------------------------------------------------------------- - if ("genesis" %in% database){ + if ("genesis" %in% database){ - stop("Available categories for parameter 'category' for 'genesis' database are 'all', 'tables', 'statistics', 'variables', and 'cubes'.", - call. = FALSE) + stop("Available categories for parameter 'category' for 'genesis' database are 'all', 'tables', 'statistics', 'variables', and 'cubes'.", + call. = FALSE) - } + } - #--------------------------------------------------------------------- + #--------------------------------------------------------------------- - if("zensus" %in% database){ + if("zensus" %in% database){ - stop("Available categories for parameter 'category' for 'zensus' database are 'all', 'tables', 'statistics', and 'variables'.", - call. = FALSE) + stop("Available categories for parameter 'category' for 'zensus' database are 'all', 'tables', 'statistics', and 'variables'.", + call. = FALSE) } @@ -698,13 +698,13 @@ check_function_input <- function(code = NULL, if (!all(category %in% c("cube", "statistic", "table", "variable", "value"))) { - stop("Available categories for parameter 'category' for 'genesis' database are 'cube', 'table', 'statistic', 'variable', and 'value'.", - call. = FALSE) - - } + stop("Available categories for parameter 'category' for 'genesis' database are 'cube', 'table', 'statistic', 'variable', and 'value'.", + call. = FALSE) } + } + #------------------------------------------------------------------------- else if("zensus" %in% database) { @@ -804,10 +804,10 @@ check_function_input <- function(code = NULL, #--------------------------------------------------------------------------- if (!is.logical(error.ignore) || - length(error.ignore) != 1) { + length(error.ignore) != 1) { - stop("Parameter 'error.ignore' has to be of type 'logical' and of length 1.", - call. = FALSE) + stop("Parameter 'error.ignore' has to be of type 'logical' and of length 1.", + call. = FALSE) } @@ -912,7 +912,7 @@ check_function_input <- function(code = NULL, if (isTRUE(verbose)){ - message("Please note that per default the current system date is used.\nThis date is calculated automatically and may differ from manually entered data.\nManually entered data must have the format DD.MM.YYYY.") + message("Please note that per default the current system date is used.\nThis date is calculated automatically and may differ from manually entered data.\nManually entered data must have the format DD.MM.YYYY.") } @@ -939,7 +939,7 @@ check_function_input <- function(code = NULL, if (isTRUE(verbose)) { - message("Please note that this date is calculated automatically and may differ from manually entered data.\nManually entered data must have the format DD.MM.YYYY.") + message("Please note that this date is calculated automatically and may differ from manually entered data.\nManually entered data must have the format DD.MM.YYYY.") } @@ -1107,17 +1107,21 @@ titel_search <- function(x, term, text) { #' test_database_function #' #' @param input Input to test for database name +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param error.input Indicator error.ignore #' @param text Indicator verbose #' -test_database_function <- function(input, error.input, text){ +test_database_function <- function(input, + credential_list, + error.input, + text){ #----------------------------------------------------------------------------- if (!is.logical(text) || length(text) != 1) { - stop("Parameter 'verbose' has to be of type 'logical' and of length 1.", - call. = FALSE) + stop("Parameter 'verbose' has to be of type 'logical' and of length 1.", + call. = FALSE) } @@ -1229,11 +1233,93 @@ test_database_function <- function(input, error.input, text){ #----------------------------------------------------------------------------- - # Check if credentials are available for the selected databases + # Check if custom variables + if (!is.null(credential_list)) { - check <- sapply(res, function(y) { + if(isTRUE(text)) { - result <- tryCatch({ + message("Please be aware that using custom credentials is a potential security threat.") + + } + + if(!is.list(credential_list)){ + + stop("Parameter 'credential_list' has to be of type list if 'credential_type'.", + call. = FALSE) + + } + + check <- which(!res %in% names(credential_list)) + + if(length(check) != 0){ + + if (isTRUE(error.input)) { + + if (isTRUE(text)) { + + mess <- paste("The following databases are not accessible to you:", paste(res[check], collapse = ", ")) + + message(mess) + + message("The function is continued with the available databases that you specified.") + + } + + res <- res[-check] + + } else { + + mess <- paste("The following databases are not accessible to you:", paste(res[check], collapse = ", "), "\nPlease check your credentials.") + + stop(mess, call. = FALSE) + + } + + } else if(length(res) < length(credential_list)){ + + if (isTRUE(error.input)) { + + if (isTRUE(text)) { + + message("You defined more databases than you requested in the 'database'-parameter. The function is continued with all useable databases.") + + } else { + + mess <- paste("You defined more databases than you requested in the 'database'-parameter. Please evaluate your function parameter 'database' or 'credential_list'.") + + stop(mess, call. = FALSE) + + } + + } else { + + mess <- paste("None of the credentials in the 'credential_list' could be associated to the databases defined in 'database'. Please check your parameters.") + + stop(mess, call. = FALSE) + + } + + } + + + if(!all(sapply(credential_list, function(x) {all(c("username", "password") %in% names(x))}))) { + + stop("Every database that is requested in the parameter 'database' needs its own list entry including the entries 'username' and 'password' (e.g., list('genesis' = c(username = X, password = Y))).", + call. = FALSE) + + } + + return(res) + + } else { + + #----------------------------------------------------------------------------- + + # Check if credentials are available for the selected databases + + check <- sapply(res, function(y) { + + result <- tryCatch({ user <- gen_auth_get(y)$username @@ -1243,61 +1329,63 @@ test_database_function <- function(input, error.input, text){ }) - if (isFALSE(result)) { + if (isFALSE(result)) { - return(FALSE) + return(FALSE) - } else { + } else { - return(TRUE) + return(TRUE) - } + } - }) + }) - #----------------------------------------------------------------------------- + #----------------------------------------------------------------------------- - if (sum(check) == 0) { + if (sum(check) == 0) { - stop("None of the specified databases are accessible to you. Please check your credentials.", - call. = FALSE) + stop("None of the specified databases are accessible to you. Please check your credentials.", + call. = FALSE) - } else if (any(check == FALSE)) { + } else if (any(check == FALSE)) { - if (isTRUE(error.input)) { + if (isTRUE(error.input)) { - if (isTRUE(text)) { + if (isTRUE(text)) { - mess <- paste("The following databases are not accessible to you:", paste(res[!check], collapse = ", ")) + mess <- paste("The following databases are not accessible to you:", paste(res[!check], collapse = ", ")) - message(mess) + message(mess) - message("The function is continued with the available databases that you specified.") + message("The function is continued with the available databases that you specified.") - } + } - res <- res[check] + res <- res[check] - } else { + } else { + + mess <- paste("The following databases are not accessible to you:", paste(res[!check], collapse = ", "), "\nPlease check your credentials.") - mess <- paste("The following databases are not accessible to you:", paste(res[!check], collapse = ", "), "\nPlease check your credentials.") + stop(mess, call. = FALSE) - stop(mess, call. = FALSE) + } } - } + #----------------------------------------------------------------------------- - #----------------------------------------------------------------------------- + if (identical(res, c())) { - if (identical(res, c())) { + stop("You have to correctly specify a 'database' parameter. Please refer to the documentation for further information.", + call. = FALSE) - stop("You have to correctly specify a 'database' parameter. Please refer to the documentation for further information.", - call. = FALSE) + } else { - } else { + return(res) - return(res) + } } @@ -1352,3 +1440,5 @@ find_token <- function(input, error.input, text, sub_category) { } } + +#------------------------------------------------------------------------------- diff --git a/restatis.Rproj b/restatis.Rproj index cdf4c28..69fafd4 100644 --- a/restatis.Rproj +++ b/restatis.Rproj @@ -1,5 +1,4 @@ Version: 1.0 -ProjectId: 080084fe-a96e-4569-95da-da19def65490 RestoreWorkspace: No SaveWorkspace: No From 8343a96a54f0284f7c89360c607f58cd1909374e Mon Sep 17 00:00:00 2001 From: buhly Date: Sun, 1 Feb 2026 18:58:07 +0100 Subject: [PATCH 13/26] add tests, fix stuff --- DESCRIPTION | 6 +- R/gen_alternative_terms.R | 6 +- R/gen_api.R | 19 +- R/gen_auth.R | 12 +- R/gen_catalogue.R | 36 +- R/gen_cube.R | 166 +- R/gen_find.R | 124 +- R/gen_jobs.R | 24 +- R/gen_metadata.R | 20 +- R/gen_modified_data.R | 2 +- R/gen_objects2stat.R | 2 +- R/gen_objects2var.R | 2 +- R/gen_qualitysigns.R | 2 +- R/gen_table.R | 167 +- R/gen_update_evas.R | 4 +- R/gen_var2-val2.R | 8 +- R/utils_api_calls.R | 417 ++ R/{utils_httr2.R => utils_authentication.R} | 434 +- R/utils_dataprocessing.R | 340 +- R/zzz.R | 4 +- README.Rmd | 2 +- README.md | 17 +- man/check_credential_list_standalone.Rd | 16 + man/dot-gen_api_core.Rd | 4 +- man/gen_alternative_terms.Rd | 11 +- man/gen_auth_save.Rd | 4 +- man/gen_catalogue.Rd | 7 +- man/gen_cube.Rd | 121 +- man/gen_download_job.Rd | 3 + man/gen_find.Rd | 7 +- man/gen_list_jobs.Rd | 3 + man/gen_logincheck.Rd | 2 +- man/gen_metadata.Rd | 7 +- man/gen_metadata_cube.Rd | 3 + man/gen_metadata_statistic.Rd | 7 +- man/gen_metadata_table.Rd | 7 +- man/gen_metadata_value.Rd | 7 +- man/gen_metadata_variable.Rd | 7 +- man/gen_modified_data.Rd | 7 +- man/gen_objects2stat.Rd | 7 +- man/gen_objects2var.Rd | 7 +- man/gen_search_vars.Rd | 7 +- man/gen_signs.Rd | 7 +- man/gen_table.Rd | 126 +- man/gen_val2var.Rd | 7 +- man/gen_val2var2stat.Rd | 7 +- man/gen_var2stat.Rd | 7 +- man/insert_and_save_credentials.Rd | 2 +- man/logincheck_http_error.Rd | 2 +- man/logincheck_stop_or_warn.Rd | 2 +- man/resp_check_data.Rd | 2 +- man/return_table_object.Rd | 2 +- man/set_credentials_auth.Rd | 2 +- man/test_database_function.Rd | 6 +- man/test_if_error.Rd | 2 +- man/test_if_error_find.Rd | 2 +- man/test_if_error_light.Rd | 2 +- man/test_if_error_variables.Rd | 2 +- man/test_if_json.Rd | 2 +- man/test_if_okay.Rd | 2 +- man/test_if_process_further.Rd | 2 +- man/{titel_search.Rd => title_search.Rd} | 10 +- .../catalogue/tables-86e7c4-8ec1be-POST.json | 119 - .../statistics-86e7c4-5fa204-POST.json | 30 - .../catalogue/cubes-86e7c4-d265dd-POST.json | 21 - .../catalogue/cubes-86e7c4-168969-POST.json | 310 -- .../statistics-86e7c4-96cc12-POST.json | 42 - .../catalogue/tables-86e7c4-d934c9-POST.json | 119 - .../catalogue/tables-86e7c4-c36cba-POST.json | 54 - .../catalogue/tables-86e7c4-c36cba-POST.json | 54 - .../api/data/cubefile-86e7c4-e3dbae-POST.csv | 3124 ------------- .../api/find/find-86e7c4-f78925-POST.json | 933 ---- .../api/find/find-86e7c4-9c085e-POST.json | 33 - .../metadata/table-86e7c4-bf190d-POST.json | 78 - .../metadata/table-86e7c4-bf190d-POST.json | 78 - .../modifieddata-86e7c4-7172bd-POST.json | 31 - .../modifieddata-86e7c4-766308-POST.json | 25 - .../modifieddata-86e7c4-7172bd-POST.json | 31 - .../modifieddata-86e7c4-2866b4-POST.json | 23 - .../variables-86e7c4-67879c-POST.json | 3525 --------------- .../api/data/tablefile-86e7c4-23a648-POST.R | 44 - .../catalogue/terms-86e7c4-51d291-POST.json | 157 - tests/testthat/test_complete_workflows.R | 304 ++ tests/testthat/test_credential_list.R | 21 + tests/testthat/test_credentials_list.R | 110 + tests/testthat/test_gen_auth.R | 73 + .../values2variable-86e7c4-9e9b03-POST.json | 24 - .../values2variable-86e7c4-12a858-POST.json | 121 - ...ariables2statistic-86e7c4-b68131-POST.json | 117 - ...ariables2statistic-86e7c4-e5ec52-POST.json | 117 - .../cubes2statistic-86e7c4-c0c2a9-POST.json | 199 - .../tables2statistic-86e7c4-c0c2a9-POST.json | 78 - ...ariables2statistic-86e7c4-c0c2a9-POST.json | 117 - .../tables2statistic-86e7c4-c0c2a9-POST.json | 78 - .../tables2statistic-86e7c4-c0c2a9-POST.json | 78 - ...tatistics2variable-86e7c4-1f2606-POST.json | 1117 ----- .../tables2variable-86e7c4-1f2606-POST.json | 2523 ----------- ...imeseries2variable-86e7c4-1f2606-POST.json | 4023 ----------------- .../tables2variable-86e7c4-1f2606-POST.json | 2523 ----------- .../tables2variable-86e7c4-1f2606-POST.json | 2523 ----------- vignettes/.gitignore | 3 + ...parameter.Rmd => additional_parameter.qmd} | 4 +- vignettes/restatis.Rmd.orig | 107 - vignettes/{restatis.Rmd => restatis.qmd} | 6 +- 104 files changed, 1715 insertions(+), 23636 deletions(-) create mode 100644 R/utils_api_calls.R rename R/{utils_httr2.R => utils_authentication.R} (59%) create mode 100644 man/check_credential_list_standalone.Rd rename man/{titel_search.Rd => title_search.Rd} (70%) delete mode 100644 tests/testthat/catalogue1/api/catalogue/tables-86e7c4-8ec1be-POST.json delete mode 100644 tests/testthat/catalogue2/api/catalogue/statistics-86e7c4-5fa204-POST.json delete mode 100644 tests/testthat/catalogue3/api/catalogue/cubes-86e7c4-d265dd-POST.json delete mode 100644 tests/testthat/catalogue4/api/catalogue/cubes-86e7c4-168969-POST.json delete mode 100644 tests/testthat/catalogue4/api/catalogue/statistics-86e7c4-96cc12-POST.json delete mode 100644 tests/testthat/catalogue4/api/catalogue/tables-86e7c4-d934c9-POST.json delete mode 100644 tests/testthat/catalogue5/api/catalogue/tables-86e7c4-c36cba-POST.json delete mode 100644 tests/testthat/catalogue6/api/catalogue/tables-86e7c4-c36cba-POST.json delete mode 100644 tests/testthat/cube1/api/data/cubefile-86e7c4-e3dbae-POST.csv delete mode 100644 tests/testthat/find1/api/find/find-86e7c4-f78925-POST.json delete mode 100644 tests/testthat/find3/api/find/find-86e7c4-9c085e-POST.json delete mode 100644 tests/testthat/meta1/api/metadata/table-86e7c4-bf190d-POST.json delete mode 100644 tests/testthat/meta3/api/metadata/table-86e7c4-bf190d-POST.json delete mode 100644 tests/testthat/modified1/api/catalogue/modifieddata-86e7c4-7172bd-POST.json delete mode 100644 tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-766308-POST.json delete mode 100644 tests/testthat/modified3/api/catalogue/modifieddata-86e7c4-7172bd-POST.json delete mode 100644 tests/testthat/modified4/api/catalogue/modifieddata-86e7c4-2866b4-POST.json delete mode 100644 tests/testthat/searchvars1/api/catalogue/variables-86e7c4-67879c-POST.json delete mode 100644 tests/testthat/table1/api/data/tablefile-86e7c4-23a648-POST.R delete mode 100644 tests/testthat/terms1/api/catalogue/terms-86e7c4-51d291-POST.json create mode 100644 tests/testthat/test_complete_workflows.R create mode 100644 tests/testthat/test_credential_list.R create mode 100644 tests/testthat/test_credentials_list.R create mode 100644 tests/testthat/test_gen_auth.R delete mode 100644 tests/testthat/values1/api/catalogue/values2variable-86e7c4-9e9b03-POST.json delete mode 100644 tests/testthat/values2/api/catalogue/values2variable-86e7c4-12a858-POST.json delete mode 100644 tests/testthat/variables1/api/catalogue/variables2statistic-86e7c4-b68131-POST.json delete mode 100644 tests/testthat/variables3/api/catalogue/variables2statistic-86e7c4-e5ec52-POST.json delete mode 100644 tests/testthat/xy_statistic1/api/catalogue/cubes2statistic-86e7c4-c0c2a9-POST.json delete mode 100644 tests/testthat/xy_statistic1/api/catalogue/tables2statistic-86e7c4-c0c2a9-POST.json delete mode 100644 tests/testthat/xy_statistic1/api/catalogue/variables2statistic-86e7c4-c0c2a9-POST.json delete mode 100644 tests/testthat/xy_statistic2/api/catalogue/tables2statistic-86e7c4-c0c2a9-POST.json delete mode 100644 tests/testthat/xy_statistic3/api/catalogue/tables2statistic-86e7c4-c0c2a9-POST.json delete mode 100644 tests/testthat/xy_variable1/api/catalogue/statistics2variable-86e7c4-1f2606-POST.json delete mode 100644 tests/testthat/xy_variable1/api/catalogue/tables2variable-86e7c4-1f2606-POST.json delete mode 100644 tests/testthat/xy_variable1/api/catalogue/timeseries2variable-86e7c4-1f2606-POST.json delete mode 100644 tests/testthat/xy_variable2/api/catalogue/tables2variable-86e7c4-1f2606-POST.json delete mode 100644 tests/testthat/xy_variable3/api/catalogue/tables2variable-86e7c4-1f2606-POST.json rename vignettes/{additional_parameter.Rmd => additional_parameter.qmd} (99%) delete mode 100644 vignettes/restatis.Rmd.orig rename vignettes/{restatis.Rmd => restatis.qmd} (98%) diff --git a/DESCRIPTION b/DESCRIPTION index eea319c..53949e3 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -34,16 +34,16 @@ Imports: purrr Suggests: httptest2, - knitr, + quarto, rmarkdown, testthat (>= 3.0.0), rvest, usethis, withr VignetteBuilder: - knitr + quarto Config/testthat/edition: 3 Encoding: UTF-8 LazyData: true Roxygen: list(markdown = TRUE) -RoxygenNote: 7.3.2 +RoxygenNote: 7.3.3 diff --git a/R/gen_alternative_terms.R b/R/gen_alternative_terms.R index 6dec4a5..811c1ac 100644 --- a/R/gen_alternative_terms.R +++ b/R/gen_alternative_terms.R @@ -1,8 +1,8 @@ #' Find similar search terms #' -#' @description Function to find search terms that are similar or related to one another in spelling and also represented in the databases supported by {restatis}. Important note: The API call is searching for terms with the same characters. To be useful in searching for related terms it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. +#' @description Function to find search terms that are similar or related to one another in spelling and also represented in the databases supported by \pkg{restatis}. Important note: The API call is searching for terms with the same characters. To be useful in searching for related terms it is highly recommended to work with \code{*} placeholders (see examples). The placeholder can be placed before and/or after the search term. #' -#' @param term Character string. Maximum length of 15 characters. Term or word for which you are searching for alternative or related terms. Use of '*' as a placeholder is possible to generate broader search areas. +#' @param term Character string. Maximum length of 15 characters. Term or word for which you are searching for alternative or related terms. Use of \code{*} as a placeholder is possible to generate broader search areas. #' @param similarity Boolean. Indicator if the output of the function should be sorted based on a Levenshtein edit distance based on the \code{adist()} function. Default is 'TRUE'. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. #' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. @@ -53,7 +53,7 @@ gen_alternative_terms <- function(term = NULL, #----------------------------------------------------------------------------- # Loop over databases in database_vector and make respective API calls - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (isTRUE(verbose)) { diff --git a/R/gen_api.R b/R/gen_api.R index ac1f6b9..561d486 100644 --- a/R/gen_api.R +++ b/R/gen_api.R @@ -19,18 +19,6 @@ gen_api <- function(..., # Choose executing function based on cache option if (isTRUE(use_cache)) { - if (!exists(".gen_api_cached", envir = asNamespace("restatis"))) { - - assign(x = ".gen_api_cached", - - - value = memoise::memoise(.gen_api_core), - - - envir = asNamespace("restatis")) - - } - return(.gen_api_cached(...)) } else { @@ -102,7 +90,7 @@ gen_api <- function(..., user_agent <- "https://github.com/CorrelAid/restatis" # Set custom credentials - if(!is.null(credential_list)){ + if (!is.null(credential_list)) { username <- credential_list[[database]]["username"] password <- credential_list[[database]]["password"] @@ -119,6 +107,7 @@ gen_api <- function(..., # First try to request with POST # If POST errors, try GET # This allows flexibility across different database instances + # However, GET is deprecated in many instances after V5 tryCatch( # tryCatch to try POST @@ -157,11 +146,11 @@ gen_api <- function(..., expr = { - # Perform API call with GET (deprecated in many GENESIS instances as of autumn 2025) httr2::request(url) %>% httr2::req_user_agent(user_agent) %>% httr2::req_url_path_append(endpoint) %>% - httr2::req_url_query("username" = username, "password" = password, ...) %>% + httr2::req_url_query("username" = username, + "password" = password, ...) %>% httr2::req_retry(max_tries = 3) %>% httr2::req_perform() diff --git a/R/gen_auth.R b/R/gen_auth.R index 2623693..a3a80fa 100644 --- a/R/gen_auth.R +++ b/R/gen_auth.R @@ -79,7 +79,7 @@ gen_auth_save <- function(database, gen_logincheck(database = database) - } else if (database == "all"){ + } else if (database == "all") { #--------------------------------------------------------------------------- @@ -142,7 +142,7 @@ gen_auth_save <- function(database, #' gen_auth_get <- function(database = NULL) { - if(is.null(database)){ + if (is.null(database)) { database <- "all" @@ -237,7 +237,7 @@ gen_auth_get <- function(database = NULL) { #------------------------------------------------------------------------- - } else if(database == "bayern") { + } else if (database == "bayern") { auth_path <- gen_auth_path("auth_bayern.rds") @@ -253,7 +253,7 @@ gen_auth_get <- function(database = NULL) { #------------------------------------------------------------------------- - } else if(database == "nrw") { + } else if (database == "nrw") { auth_path <- gen_auth_path("auth_nrw.rds") @@ -269,7 +269,7 @@ gen_auth_get <- function(database = NULL) { #------------------------------------------------------------------------- - } else if(database == "bildung") { + } else if (database == "bildung") { auth_path <- gen_auth_path("auth_bildung.rds") @@ -285,7 +285,7 @@ gen_auth_get <- function(database = NULL) { #------------------------------------------------------------------------- - } else if(database == "st") { + } else if (database == "st") { auth_path <- gen_auth_path("auth_st.rds") diff --git a/R/gen_catalogue.R b/R/gen_catalogue.R index 5ec1259..a75c136 100644 --- a/R/gen_catalogue.R +++ b/R/gen_catalogue.R @@ -70,7 +70,7 @@ gen_catalogue <- function(code = NULL, #----------------------------------------------------------------------------- # Loop over databases in database_vector and make respective API calls - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (isTRUE(verbose)) { @@ -105,15 +105,15 @@ gen_catalogue <- function(code = NULL, empty_object <- test_if_error(results_json, para = error.ignore, verbose = verbose) - if (isTRUE(empty_object)){ + if (isTRUE(empty_object)) { list_of_cubes <- "No 'cubes' object found for your request." - } else if (isFALSE(empty_object)){ + } else if (isFALSE(empty_object)) { list_of_cubes <- results_json$Status$Content - } else if (empty_object == "DONE"){ + } else if (empty_object == "DONE") { if (isTRUE(detailed)) { @@ -158,15 +158,15 @@ gen_catalogue <- function(code = NULL, empty_object <- test_if_error(results_json, para = error.ignore, verbose = verbose) - if (isTRUE(empty_object)){ + if (isTRUE(empty_object)) { list_of_stats <- "No 'statistics' object found for your request." - } else if (isFALSE(empty_object)){ + } else if (isFALSE(empty_object)) { list_of_stats <- results_json$Status$Content - } else if (empty_object == "DONE"){ + } else if (empty_object == "DONE") { if (isTRUE(detailed)) { @@ -209,15 +209,15 @@ gen_catalogue <- function(code = NULL, empty_object <- test_if_error(results_json, para = error.ignore, verbose = verbose) - if (isTRUE(empty_object)){ + if (isTRUE(empty_object)) { list_of_tabs <- "No 'tables' object found for your request." - } else if (isFALSE(empty_object)){ + } else if (isFALSE(empty_object)) { list_of_tabs <- results_json$Status$Content - } else if (empty_object == "DONE"){ + } else if (empty_object == "DONE") { if (isTRUE(detailed)) { @@ -248,19 +248,19 @@ gen_catalogue <- function(code = NULL, if (all(c("tables", "statistics", "cubes") %in% category)) { - list_resp <- list("Cubes" = if(length(list_of_cubes) == 1){tibble::as_tibble(list_of_cubes)} else {forming_evas(list_of_cubes)}, - "Statistics" = if(length(list_of_stats) == 1){tibble::as_tibble(list_of_stats)} else {forming_evas(list_of_stats)}, - "Tables" = if(length(list_of_tabs) == 1){tibble::as_tibble(list_of_tabs)} else {forming_evas(list_of_tabs)}) + list_resp <- list("Cubes" = if (length(list_of_cubes) == 1) {tibble::as_tibble(list_of_cubes)} else {forming_evas(list_of_cubes)}, + "Statistics" = if (length(list_of_stats) == 1) {tibble::as_tibble(list_of_stats)} else {forming_evas(list_of_stats)}, + "Tables" = if (length(list_of_tabs) == 1) {tibble::as_tibble(list_of_tabs)} else {forming_evas(list_of_tabs)}) #--------------------------------------------------------------------------- } else if ("cubes" %in% category) { - if (length(list_of_cubes) == 1 && db == "zensus"){ + if (length(list_of_cubes) == 1 && db == "zensus") { list_resp <- list_of_cubes - } else if (length(list_of_cubes) == 1 ){ + } else if (length(list_of_cubes) == 1) { list_resp <- list("Cubes" = tibble::as_tibble(list_of_cubes)) @@ -273,7 +273,7 @@ gen_catalogue <- function(code = NULL, #--------------------------------------------------------------------------- } else if ("statistics" %in% category) { - if (length(list_of_stats) == 1 ){ + if (length(list_of_stats) == 1) { list_resp <- list("Statistics" = tibble::as_tibble(list_of_stats)) @@ -287,7 +287,7 @@ gen_catalogue <- function(code = NULL, #--------------------------------------------------------------------------- } else if ("tables" %in% category) { - if(length(list_of_tabs) == 1 ){ + if (length(list_of_tabs) == 1) { list_resp <- list("Tables" = tibble::as_tibble(list_of_tabs)) @@ -306,7 +306,7 @@ gen_catalogue <- function(code = NULL, attr(list_resp, "Database") <- db attr(list_resp, "Category") <- category - if (length(category) == 1 && "cubes" %in% category && db == "zensus"){ + if (length(category) == 1 && "cubes" %in% category && db == "zensus") { attr(list_resp, "Info") <- "No API call has been executed." diff --git a/R/gen_cube.R b/R/gen_cube.R index b2e14c6..ee569d3 100644 --- a/R/gen_cube.R +++ b/R/gen_cube.R @@ -3,44 +3,52 @@ #' @description Download a cube with data from GENESIS, regionalstatistik.de, landesdatenbank.nrw.de, bildungsmonitoring.de or statistikdaten.bayern.de database #' #' @param name Character string for a cube object (only GENESIS, regionalstatistik.de, landesdatenbank.nrw.de or bildungsmonitoring.de) -#' @param database Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw') or bildungsmonitoring.de ('bildung') database is called. +#' @param database Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), landesdatenbank.nrw.de ('nrw') or bildungsmonitoring.de ('bildung') database is called. #' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. -#' @param ... Further (optional) parameters passed on to the API call: -#' \describe{ -#' \item{\code{area}}{Character string. The area in which the table is stored. Possible values: -#' \itemize{ -#' \item \code{"public"}: cube in the public catalogue -#' \item \code{"user"}: cube in the user's account -#' \item \code{"all"}: both of the above -#' }} -#' \item{\code{values}}{Boolean. Should values be included?} -#' \item{\code{metadata}}{Boolean. Should metadata be included?} -#' \item{\code{additionals}}{Boolean. Should additional metadata be included?} -#' \item{\code{contents}}{Character string. Names of required statistical specifications} -#' \item{\code{startyear,endyear}}{Four-digit integers. Only retrieve data between these years.} -#' \item{\code{timeslices}}{Integer. Number of timeslices (cumulative to startyear or endyear)} -#' \item{\code{regionalvariable}}{Character string. Code of the regional variable -#' whose value is specified in \code{regionalkey} to filter the results.} -#' \item{\code{regionalkey}}{Character string. One or more regional keys. Multiple -#' values can be supplied as a character vector or as a single string, -#' with the regional keys separated by commas. Use of wildcard (`*`) allowed.} -#' \item{\code{classifyingvariable1,classifyingvariable2 -#' ,classifyingvariable3}}{Character string. Code of the subject classification -#' (SK-Merkmal) to which the selection by means of the corresponding -#' `classifyingkey` parameter is to be applied.} -#' \item{\code{classifyingkey1,classifyingkey2,classifyingkey3}}{Character string. -#' One or more values of a subject classification (e.g. "WZ93012"). Applied -#' to the corresponding `classifyingvariable` parameter. Multiple -#' keys can be supplied as a character vector or as a single string, -#' with the keys separated by commas. Use of wildcard (`*`) allowed.} -#' \item{\code{stand}}{Character string, format: \code{"DD.MM.YYYY"}. Only retrieve data -#' updated after this date.} -#' \item{\code{language}}{Character string. Search terms, returned messages and data -#' descriptions in German (`"de"`) or English (`"en"`)?} -#' \item{\code{...}}{Additional parameters for the API call (see respective API documentation). -#' A valid specification of these will not be checked by the function, so wrongful specification -#' may lead to errors.} +#' @param area Character string. The area in which the table is stored. +#' Possible values: +#' \itemize{ +#' \item \code{"public"}: cube in the public catalogue +#' \item \code{"user"}: cube in the user's account +#' \item \code{"all"}: both of the above #' } +#' @param values Boolean. Should values be included? +#' @param metadata Boolean. Should metadata be included? +#' @param additionals Boolean. Should additional metadata be included? +#' @param contents Character string. Names of required statistical specifications. +#' @param startyear Four-digit integer. Only retrieve data from this year onward. +#' @param endyear Four-digit integer. Only retrieve data up to this year. +#' @param timeslices Integer. Number of timeslices (cumulative to \code{startyear} or \code{endyear}). +#' @param regionalvariable Character string. Code of the regional variable whose value +#' is specified in \code{regionalkey} to filter the results. +#' @param regionalkey Character string. One or more regional keys. Multiple values can be +#' supplied as a character vector or as a single string, with the regional keys +#' separated by commas. Use of wildcard (\code{*}) allowed. +#' @param classifyingvariable1 Character string. Code of the subject classification +#' (SK-Merkmal) to which the selection by means of \code{classifyingkey1} is applied. +#' @param classifyingvariable2 Character string. Code of the subject classification +#' (SK-Merkmal) to which the selection by means of \code{classifyingkey2} is applied. +#' @param classifyingvariable3 Character string. Code of the subject classification +#' (SK-Merkmal) to which the selection by means of \code{classifyingkey3} is applied. +#' @param classifyingkey1 Character string. One or more values of a subject classification +#' (e.g. \code{"WZ93012"}). Applied to \code{classifyingvariable1}. Multiple keys can be +#' supplied as a character vector or as a single string, with the keys separated by +#' commas. Use of wildcard (\code{*}) allowed. +#' @param classifyingkey2 Character string. One or more values of a subject classification. +#' Applied to \code{classifyingvariable2}. Multiple keys can be supplied as a character +#' vector or as a single string, with the keys separated by commas. Use of wildcard +#' (\code{*}) allowed. +#' @param classifyingkey3 Character string. One or more values of a subject classification. +#' Applied to \code{classifyingvariable3}. Multiple keys can be supplied as a character +#' vector or as a single string, with the keys separated by commas. Use of wildcard +#' (\code{*}) allowed. +#' @param stand Character string, format \code{"DD.MM.YYYY"}. Only retrieve data updated +#' after this date. +#' @param language Character string. Search terms, returned messages and data descriptions +#' in German (\code{"de"}) or English (\code{"en"}). +#' @param ... Additional parameters for the API call (see respective API documentation). +#' A valid specification of these will not be checked by the function, so wrongful +#' specification may lead to errors. #' #' @return A [tibble][tibble::tibble()]. Non-data contents of the data cube object are saved in #' the `metadata` [attribute][base::attr()] of the data frame. @@ -52,60 +60,44 @@ #' gen_cube("47414BJ002") #' } #' -gen_cube <- function(name, ...) { - gen_cube_(name, ...) -} - -#------------------------------------------------------------------------------- - -gen_cube_ <- function(name, - database = c("genesis", "regio", "nrw", "bildung", "bayern", "st"), - credential_list = NULL, - area = c("public", "user"), - values = TRUE, - metadata = TRUE, - additionals = FALSE, - startyear = 1900, - endyear = 2100, - timeslices = NULL, - contents = NULL, - regionalvariable = NULL, - regionalkey = NULL, - classifyingvariable1 = NULL, - classifyingkey1 = NULL, - classifyingvariable2 = NULL, - classifyingkey2 = NULL, - classifyingvariable3 = NULL, - classifyingkey3 = NULL, - stand = NULL, - language = Sys.getenv("RESTATIS_LANG"), - ...) { - - area <- match.arg(area) - database <- match.arg(database) - - if(!is.null(credential_list)){ - if(!is.list(credential_list)){ +gen_cube <- function(name, + database = c("genesis", "regio", "nrw", "bildung"), + credential_list = NULL, + area = c("public", "user"), + values = TRUE, + metadata = TRUE, + additionals = FALSE, + startyear = 1900, + endyear = 2100, + timeslices = NULL, + contents = NULL, + regionalvariable = NULL, + regionalkey = NULL, + classifyingvariable1 = NULL, + classifyingkey1 = NULL, + classifyingvariable2 = NULL, + classifyingkey2 = NULL, + classifyingvariable3 = NULL, + classifyingkey3 = NULL, + stand = NULL, + language = Sys.getenv("RESTATIS_LANG"), + ...) { - stop("Parameter 'credential_list' has to be of type list if 'credential_type'.", - call. = FALSE) - - } - - if(!all(sapply(credential_list, function(x) {all(c("username", "password") %in% names(x))}))) { + #----------------------------------------------------------------------------- + # Parameter processing - stop("The database that is requested in the parameter 'database' needs its own list entry including the entries 'username' and 'password' (e.g., list('genesis' = c(username = X, password = Y))).", - call. = FALSE) + if (missing(database)) { - } + stop("It is mandatory to specifiy the 'database' parameter for 'gen_table()'.", + call. = FALSE) - if(!database %in% names(credential_list)) { + } - stop("The database that is requested in the parameter 'database' has no value in the 'credential_list'. Please check the parameters.", - call. = FALSE) + area <- match.arg(area) + database <- match.arg(database) - } - } + check_credential_list_standalone(credential_list = credential_list, + database = database) if (!isTRUE(language == "en")) { @@ -295,10 +287,8 @@ rename_cube_data_columns <- function(cube) { # Recycle default column names for each feature dqi_cols_new <- unlist(.mapply( paste, - expand.grid( - suffix = dqi_default_names, - feature_name = cube$DQI$NAME - )[, c("feature_name", "suffix")], + expand.grid(suffix = dqi_default_names, + feature_name = cube$DQI$NAME)[, c("feature_name", "suffix")], MoreArgs = list(sep = "_"))) data_cols[data_cols %in% dqi_cols] <- dqi_cols_new diff --git a/R/gen_find.R b/R/gen_find.R index 1c8522e..db572f7 100644 --- a/R/gen_find.R +++ b/R/gen_find.R @@ -66,7 +66,7 @@ gen_find <- function(term = NULL, #----------------------------------------------------------------------------- - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (verbose) { @@ -117,7 +117,7 @@ gen_find <- function(term = NULL, return(list_resp) # HUHU: It is still unclear as to whether BY provides cubes - } else if (empty_object == "FAIL" & db %in% c("zensus", "bayern", "st") ){ + } else if (empty_object == "FAIL" & db %in% c("zensus", "bayern", "st")) { list_resp <- list("Output" = paste0("There are generally no 'cubes' objects available for the '", db, "' database.")) @@ -127,7 +127,7 @@ gen_find <- function(term = NULL, return(list_resp) - } else if (isFALSE(empty_object)){ + } else if (isFALSE(empty_object)) { list_resp <- list("Output" = results_json$Status$Content) @@ -151,11 +151,11 @@ gen_find <- function(term = NULL, #--------------------------------------------------------------------------- - if("tables" %in% category) { + if ("tables" %in% category) { - if(!is.null(results_json$Tables)) { + if (!is.null(results_json$Tables)) { - if(isTRUE(detailed)){ + if (isTRUE(detailed)) { df_table <- binding_lapply(results_json$Tables, characteristics = c("Code", @@ -171,7 +171,7 @@ gen_find <- function(term = NULL, if (nrow(df_table) != 0) { - df_table$Titel <- titel_search(df_table, term, text = verbose) + df_table$Titel <- title_search(df_table, term, text = verbose) } @@ -214,7 +214,7 @@ gen_find <- function(term = NULL, if (nrow(df_table) != 0) { - df_table$Titel <- titel_search(df_table, term, text = verbose) + df_table$Titel <- title_search(df_table, term, text = verbose) } @@ -247,11 +247,11 @@ gen_find <- function(term = NULL, #--------------------------------------------------------------------------- - if("statistics" %in% category) { + if ("statistics" %in% category) { - if(!is.null(results_json$Statistics)) { + if (!is.null(results_json$Statistics)) { - if(isTRUE(detailed)){ + if (isTRUE(detailed)) { df_stats <- binding_lapply(results_json$Statistics, characteristics = c("Code", @@ -268,21 +268,21 @@ gen_find <- function(term = NULL, if (nrow(df_stats) != 0) { - df_stats$Titel <- titel_search(df_stats, term, text = verbose) + df_stats$Titel <- title_search(df_stats, term, text = verbose) } if (isTRUE(ordering)) { - df_stats <- df_stats[with(df_stats, order(-Titel, -Variablen)), c( "Code", - "Content", - "Titel", - "Information", - "Cubes", - "Variablen", - "Spezifisch", - "Object_Type")] + df_stats <- df_stats[with(df_stats, order(-Titel, -Variablen)), c("Code", + "Content", + "Titel", + "Information", + "Cubes", + "Variablen", + "Spezifisch", + "Object_Type")] } else { @@ -313,16 +313,16 @@ gen_find <- function(term = NULL, if (nrow(df_stats) != 0) { - df_stats$Titel <- titel_search(df_stats, term, text = verbose) + df_stats$Titel <- title_search(df_stats, term, text = verbose) } if (isTRUE(ordering)) { - df_stats <- df_stats[with(df_stats, order(-Titel, -Variablen)), c( "Code", - "Content", - "Object_Type")] + df_stats <- df_stats[with(df_stats, order(-Titel, -Variablen)), c("Code", + "Content", + "Object_Type")] } else { df_stats <- df_stats[, c("Code", @@ -346,11 +346,11 @@ gen_find <- function(term = NULL, #--------------------------------------------------------------------------- - if("variables" %in% category) { + if ("variables" %in% category) { - if(!is.null(results_json$Variables)) { + if (!is.null(results_json$Variables)) { - if(isTRUE(detailed)){ + if (isTRUE(detailed)) { df_variables <- binding_lapply(results_json$Variables, characteristics = c("Code", @@ -368,21 +368,21 @@ gen_find <- function(term = NULL, if (nrow(df_variables) != 0) { - df_variables$Titel <- titel_search(df_variables, term, text = verbose) + df_variables$Titel <- title_search(df_variables, term, text = verbose) } if (isTRUE(ordering)) { - df_variables <- df_variables[with(df_variables, order(-Titel, -Variablen)), c( "Code", - "Content", - "Titel", - "Values", - "Information", - "Variablen", - "Spezifisch", - "Object_Type")] + df_variables <- df_variables[with(df_variables, order(-Titel, -Variablen)), c("Code", + "Content", + "Titel", + "Values", + "Information", + "Variablen", + "Spezifisch", + "Object_Type")] } else { @@ -413,16 +413,16 @@ gen_find <- function(term = NULL, if (nrow(df_variables) != 0) { - df_variables$Titel <- titel_search(df_variables, term, text = verbose) + df_variables$Titel <- title_search(df_variables, term, text = verbose) } if (isTRUE(ordering)) { - df_variables <- df_variables[with(df_variables, order(-Titel, -Variablen)), c( "Code", - "Content", - "Object_Type")] + df_variables <- df_variables[with(df_variables, order(-Titel, -Variablen)), c("Code", + "Content", + "Object_Type")] } else { @@ -447,13 +447,13 @@ gen_find <- function(term = NULL, #--------------------------------------------------------------------------- - if("cubes" %in% category) { + if ("cubes" %in% category) { if (db == "genesis" | db == "regio" | db == "nrw" | db == "bildung") { - if(!is.null(results_json$Cubes)) { + if (!is.null(results_json$Cubes)) { - if(isTRUE(detailed)){ + if (isTRUE(detailed)) { df_cubes <- binding_lapply(results_json$Cubes, characteristics = c("Code", @@ -472,23 +472,23 @@ gen_find <- function(term = NULL, if (nrow(df_cubes) != 0) { - df_cubes$Titel <- titel_search(df_cubes, term, text = verbose) + df_cubes$Titel <- title_search(df_cubes, term, text = verbose) } if (isTRUE(ordering)) { - df_cubes <- df_cubes[with(df_cubes, order(-Titel, -Variablen)), c( "Code", - "Content", - "Titel", - "Time", - "LatestUpdate", - "State", - "Information", - "Variablen", - "Spezifisch", - "Object_Type")] + df_cubes <- df_cubes[with(df_cubes, order(-Titel, -Variablen)), c("Code", + "Content", + "Titel", + "Time", + "LatestUpdate", + "State", + "Information", + "Variablen", + "Spezifisch", + "Object_Type")] } else { @@ -521,16 +521,16 @@ gen_find <- function(term = NULL, if (nrow(df_cubes) != 0) { - df_cubes$Titel <- titel_search(df_cubes, term, text = verbose) + df_cubes$Titel <- title_search(df_cubes, term, text = verbose) } if (isTRUE(ordering)) { - df_cubes <- df_cubes[with(df_cubes, order(-Titel, -Variablen)), c( "Code", - "Content", - "Object_Type")] + df_cubes <- df_cubes[with(df_cubes, order(-Titel, -Variablen)), c("Code", + "Content", + "Object_Type")] } else { @@ -564,10 +564,10 @@ gen_find <- function(term = NULL, list_resp <- list() - if("tables" %in% category) {list_resp$Tables <- tibble::as_tibble(df_table) } - if("statistics" %in% category) {list_resp$Statistics <- tibble::as_tibble(df_stats) } - if("variables" %in% category) {list_resp$Variables <- tibble::as_tibble(df_variables) } - if("cubes" %in% category) {list_resp$Cubes <- tibble::as_tibble(df_cubes) } + if ("tables" %in% category) {list_resp$Tables <- tibble::as_tibble(df_table) } + if ("statistics" %in% category) {list_resp$Statistics <- tibble::as_tibble(df_stats) } + if ("variables" %in% category) {list_resp$Variables <- tibble::as_tibble(df_variables) } + if ("cubes" %in% category) {list_resp$Cubes <- tibble::as_tibble(df_cubes) } attr(list_resp, "Term") <- results_json$Parameter$term attr(list_resp, "Database") <- db diff --git a/R/gen_jobs.R b/R/gen_jobs.R index 518a28d..72dc148 100644 --- a/R/gen_jobs.R +++ b/R/gen_jobs.R @@ -145,28 +145,8 @@ gen_download_job <- function(name, database <- match.arg(database) - if(!is.null(credential_list)){ - if(!is.list(credential_list)){ - - stop("Parameter 'credential_list' has to be of type list if 'credential_type'.", - call. = FALSE) - - } - - if(!all(sapply(credential_list, function(x) {all(c("username", "password") %in% names(x))}))) { - - stop("The database that is requested in the parameter 'database' needs its own list entry including the entries 'username' and 'password' (e.g., list('genesis' = c(username = X, password = Y))).", - call. = FALSE) - - } - - if(!database %in% names(credential_list)) { - - stop("The database that is requested in the parameter 'database' has no value in the 'credential_list'. Please check the parameters.", - call. = FALSE) - - } - } + check_credential_list_standalone(credential_list = credential_list, + database = database) area <- match.arg(area) diff --git a/R/gen_metadata.R b/R/gen_metadata.R index 6f5c721..f3d9f27 100644 --- a/R/gen_metadata.R +++ b/R/gen_metadata.R @@ -50,7 +50,7 @@ gen_metadata_statistic <- function(code = NULL, #----------------------------------------------------------------------------- - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (isTRUE(verbose)) { @@ -85,7 +85,7 @@ gen_metadata_statistic <- function(code = NULL, #--------------------------------------------------------------------------- - if (isTRUE(empty_object)){ + if (isTRUE(empty_object)) { df_stats <- "No 'meta_information' object found for your request." @@ -184,7 +184,7 @@ gen_metadata_variable <- function(code = NULL, #----------------------------------------------------------------------------- - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (isTRUE(verbose)) { @@ -223,11 +223,11 @@ gen_metadata_variable <- function(code = NULL, df_var <- "No 'meta_information' object found for your request." - } else if (isFALSE(empty_object)){ + } else if (isFALSE(empty_object)) { df_var <- results_json$Status$Content - } else if (empty_object == "DONE"){ + } else if (empty_object == "DONE") { if (isFALSE(raw)) { @@ -242,7 +242,7 @@ gen_metadata_variable <- function(code = NULL, } - if (isFALSE(raw)){ + if (isFALSE(raw)) { list_resp <- list("General" = df_var, "Information" = results_json$Object$Information) @@ -326,7 +326,7 @@ gen_metadata_value <- function(code = NULL, #----------------------------------------------------------------------------- - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (isTRUE(verbose)) { @@ -465,7 +465,7 @@ gen_metadata_table <- function(code = NULL, #----------------------------------------------------------------------------- - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (isTRUE(verbose)) { @@ -670,7 +670,7 @@ gen_metadata_cube <- function(code = NULL, #----------------------------------------------------------------------------- - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (isTRUE(verbose)) { @@ -846,7 +846,7 @@ gen_metadata <- function(code = NULL, #----------------------------------------------------------------------------- - res <- lapply(database_vector, function(odb){ + res <- lapply(database_vector, function(odb) { if (category == "cube") { diff --git a/R/gen_modified_data.R b/R/gen_modified_data.R index f6d1db2..1c1b076 100644 --- a/R/gen_modified_data.R +++ b/R/gen_modified_data.R @@ -74,7 +74,7 @@ gen_modified_data <- function(code = "", #----------------------------------------------------------------------------- # Processing # - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (isTRUE(verbose)) { diff --git a/R/gen_objects2stat.R b/R/gen_objects2stat.R index 1af4a08..6a9e29d 100644 --- a/R/gen_objects2stat.R +++ b/R/gen_objects2stat.R @@ -66,7 +66,7 @@ gen_objects2stat <- function(code = NULL, #----------------------------------------------------------------------------- - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (isTRUE(verbose)) { diff --git a/R/gen_objects2var.R b/R/gen_objects2var.R index 6fefdff..2ff6e49 100644 --- a/R/gen_objects2var.R +++ b/R/gen_objects2var.R @@ -66,7 +66,7 @@ gen_objects2var <- function(code = NULL, #----------------------------------------------------------------------------- - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (isTRUE(verbose)) { diff --git a/R/gen_qualitysigns.R b/R/gen_qualitysigns.R index 35096f9..65eca4a 100644 --- a/R/gen_qualitysigns.R +++ b/R/gen_qualitysigns.R @@ -30,7 +30,7 @@ gen_signs <- function(database = c("all", "genesis", "zensus", "regio", "bayern" error.input = error.ignore, text = verbose) - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { results_raw <- gen_api(endpoint = "catalogue/qualitysigns", database = db, diff --git a/R/gen_table.R b/R/gen_table.R index a4e6e98..a7e1b43 100644 --- a/R/gen_table.R +++ b/R/gen_table.R @@ -5,47 +5,54 @@ #' @param name Character string. Name/code of the table. Use of wildcards (`*`) is possible. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. #' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. -#' @param ... Optional parameters passed on to the API call: -#' \describe{ -#' \item{\code{area}}{Character string. The area in which the table is stored. Possible values: -#' \itemize{ -#' \item \code{"public"}: table in the public catalogue -#' \item \code{"user"}: table in the user's account -#' \item \code{"all"}: both of the above -#' }} -#' \item{\code{compress}}{Boolean. Should empty rows and columns be discarded?} -#' \item{\code{transpose}}{Boolean. Reshape the table between "wide" and -#' "long" format.} -#' \item{\code{startyear,endyear}}{Four-digit integers. Only retrieve data between these years.} -#' \item{\code{regionalvariable}}{Character string. Code of the regional variable -#' whose value is specified in \code{regionalkey} to filter the results.} -#' \item{\code{regionalkey}}{Character string. One or more regional keys. Multiple -#' values can be supplied as a character vector or as a single string, -#' with the regional keys separated by commas. Use of wildcard (`*`) allowed.} -#' \item{\code{classifyingvariable1,classifyingvariable2 -#' ,classifyingvariable3}}{Character string. Code of the subject classification -#' (SK-Merkmal) to which the selection by means of the corresponding -#' `classifyingkey` parameter is to be applied.} -#' \item{\code{classifyingkey1,classifyingkey2,classifyingkey3}}{Character string. -#' One or more values of a subject classification (e.g. "WZ93012"). Applied -#' to the corresponding `classifyingvariable` parameter. Multiple -#' keys can be supplied as a character vector or as a single string, -#' with the keys separated by commas. Use of wildcard (`*`) allowed.} -#' \item{\code{stand}}{Character string, format: \code{"DD.MM.YYYY"}. Only retrieve data -#' updated after this date.} -#' \item{\code{language}}{Search terms, returned messages and data -#' descriptions in German (`"de"`) or English (`"en"`)?} -#' \item{\code{job}}{Boolean. Indicate as to whether a job should be created -#' (not available with the 'Zensus' database). In order to set job = TRUE -#' you have to have username and password saved with gen_auth_save(), -#' using API tokens with job = TRUE will result in an error.} -#' \item{\code{all_character}}{Boolean. Should all variables be imported as -#' 'character' variables? Avoids fuzzy data type conversions if there are -#' leading zeros or other special characters. Defaults to TRUE.} -#' \item{\code{...}}{Additional parameters for the API call (see respective API documentation). -#' A valid specification of these will not be checked by the function, so wrongful specification -#' may lead to errors.} +#' @param area Character string. The area in which the table is stored. +#' Possible values: +#' \itemize{ +#' \item \code{"public"}: table in the public catalogue +#' \item \code{"user"}: table in the user's account +#' \item \code{"all"}: both of the above #' } +#' @param compress Boolean. Should empty rows and columns be discarded? +#' @param transpose Boolean. Reshape the table between \code{"wide"} and \code{"long"} format. +#' @param startyear Four-digit integer. Only retrieve data from this year onward. +#' @param endyear Four-digit integer. Only retrieve data up to this year. +#' @param regionalvariable Character string. Code of the regional variable whose value +#' is specified in \code{regionalkey} to filter the results. +#' @param regionalkey Character string. One or more regional keys. Multiple values can be +#' supplied as a character vector or as a single string, with the regional keys +#' separated by commas. Use of wildcard (\code{*}) allowed. +#' @param classifyingvariable1 Character string. Code of the subject classification +#' (SK-Merkmal) to which the selection by means of \code{classifyingkey1} is applied. +#' @param classifyingvariable2 Character string. Code of the subject classification +#' (SK-Merkmal) to which the selection by means of \code{classifyingkey2} is applied. +#' @param classifyingvariable3 Character string. Code of the subject classification +#' (SK-Merkmal) to which the selection by means of \code{classifyingkey3} is applied. +#' @param classifyingkey1 Character string. One or more values of a subject classification +#' (e.g. \code{"WZ93012"}). Applied to \code{classifyingvariable1}. Multiple keys can be +#' supplied as a character vector or as a single string, with the keys separated by +#' commas. Use of wildcard (\code{*}) allowed. +#' @param classifyingkey2 Character string. One or more values of a subject classification. +#' Applied to \code{classifyingvariable2}. Multiple keys can be supplied as a character +#' vector or as a single string, with the keys separated by commas. Use of wildcard +#' (\code{*}) allowed. +#' @param classifyingkey3 Character string. One or more values of a subject classification. +#' Applied to \code{classifyingvariable3}. Multiple keys can be supplied as a character +#' vector or as a single string, with the keys separated by commas. Use of wildcard +#' (\code{*}) allowed. +#' @param stand Character string, format \code{"DD.MM.YYYY"}. Only retrieve data updated +#' after this date. +#' @param language Character string. Search terms, returned messages and data descriptions +#' in German (\code{"de"}) or English (\code{"en"}). +#' @param job Boolean. Indicate whether a job should be created (not available with the +#' \code{"Zensus"} database). To set \code{job = TRUE}, username and password must be +#' saved with \code{gen_auth_save()}; using API tokens with \code{job = TRUE} will +#' result in an error. +#' @param all_character Boolean. Should all variables be imported as character variables? +#' Avoids fuzzy data type conversions if there are leading zeros or other special +#' characters. Defaults to \code{TRUE}. +#' @param ... Additional parameters for the API call (see respective API documentation). +#' A valid specification of these will not be checked by the function, so wrongful +#' specification may lead to errors. #' #' @return A [tibble][tibble::tibble()]. #' @@ -56,35 +63,27 @@ #' gen_table("21311-0001", database = "genesis") #' } #' -gen_table <- function(name, ...) { - - gen_table_(name, ...) - -} - -#------------------------------------------------------------------------------- - -gen_table_ <- function(name, - database = c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), - credential_list = NULL, - area = c("all", "public", "user"), - compress = FALSE, - transpose = FALSE, - startyear = 1900, - endyear = 2100, - regionalvariable = NULL, - regionalkey = NULL, - classifyingvariable1 = NULL, - classifyingkey1 = NULL, - classifyingvariable2 = NULL, - classifyingkey2 = NULL, - classifyingvariable3 = NULL, - classifyingkey3 = NULL, - stand = NULL, - language = Sys.getenv("RESTATIS_LANG"), - job = FALSE, - all_character = TRUE, - ...) { +gen_table <- function(name, + database = c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, + area = c("all", "public", "user"), + compress = FALSE, + transpose = FALSE, + startyear = 1900, + endyear = 2100, + regionalvariable = NULL, + regionalkey = NULL, + classifyingvariable1 = NULL, + classifyingkey1 = NULL, + classifyingvariable2 = NULL, + classifyingkey2 = NULL, + classifyingvariable3 = NULL, + classifyingkey3 = NULL, + stand = NULL, + language = Sys.getenv("RESTATIS_LANG"), + job = FALSE, + all_character = TRUE, + ...) { #----------------------------------------------------------------------------- # Parameter processing @@ -98,28 +97,8 @@ gen_table_ <- function(name, database <- match.arg(database) - if(!is.null(credential_list)){ - if(!is.list(credential_list)){ - - stop("Parameter 'credential_list' has to be of type list if 'credential_type'.", - call. = FALSE) - - } - - if(!all(sapply(credential_list, function(x) {all(c("username", "password") %in% names(x))}))) { - - stop("The database that is requested in the parameter 'database' needs its own list entry including the entries 'username' and 'password' (e.g., list('genesis' = c(username = X, password = Y))).", - call. = FALSE) - - } - - if(!database %in% names(credential_list)) { - - stop("The database that is requested in the parameter 'database' has no value in the 'credential_list'. Please check the parameters.", - call. = FALSE) - - } - } + check_credential_list_standalone(credential_list = credential_list, + database = database) area <- match.arg(area) @@ -144,10 +123,10 @@ gen_table_ <- function(name, #----------------------------------------------------------------------------- # Manage credentials related to jobs - if(!is.null(credential_list)){ + if (!is.null(credential_list) & isTRUE(job)) { - stop("Please check if the jobs-related credentials are identical with your provided credentials - otherwise the function will fail.", - call. = FALSE) + warning("Please check if the jobs-related credentials are identical with your provided credentials - otherwise the function will fail.", + call. = FALSE) } else { diff --git a/R/gen_update_evas.R b/R/gen_update_evas.R index 2de1a87..63f3542 100644 --- a/R/gen_update_evas.R +++ b/R/gen_update_evas.R @@ -5,7 +5,7 @@ #' @return An updated .rda file containing the latest EVAS numbers #' @export #' -gen_update_evas <- function(){ +gen_update_evas <- function() { # Check rvest package if (!requireNamespace("rvest", quietly = TRUE)) { @@ -24,7 +24,7 @@ gen_update_evas <- function(){ # Read the HTML content of the URL html <- rvest::read_html(url) html <- rvest::html_nodes(html, "table") - html <- purrr::map_dfr(html, function(table){ rvest::html_table(table, convert = FALSE) }) + html <- purrr::map_dfr(html, function(table) { rvest::html_table(table, convert = FALSE) }) html <- html[, c("EVAS", "Beschreibung")] html$Titel <- paste(html$EVAS, html$Beschreibung, sep = " - ") attr(html, "Update_Date") <- format(Sys.Date(), "%Y%m%d") diff --git a/R/gen_var2-val2.R b/R/gen_var2-val2.R index 206a399..239ebdb 100644 --- a/R/gen_var2-val2.R +++ b/R/gen_var2-val2.R @@ -60,7 +60,7 @@ gen_var2stat <- function(code = NULL, #----------------------------------------------------------------------------- # Processing # - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (isTRUE(verbose)) { @@ -214,7 +214,7 @@ gen_val2var <- function(code = NULL, #----------------------------------------------------------------------------- - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (isTRUE(verbose)) { @@ -361,7 +361,7 @@ gen_val2var2stat <- function(code = NULL, #----------------------------------------------------------------------------- - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { variables <- suppressMessages(suppressWarnings(gen_var2stat(code = code, database = database_vector, @@ -474,7 +474,7 @@ gen_search_vars <- function(code = NULL, #----------------------------------------------------------------------------- - res <- lapply(database_vector, function(db){ + res <- lapply(database_vector, function(db) { if (isTRUE(verbose)) { diff --git a/R/utils_api_calls.R b/R/utils_api_calls.R new file mode 100644 index 0000000..5cababe --- /dev/null +++ b/R/utils_api_calls.R @@ -0,0 +1,417 @@ +#------------------------------------------------------------------------------- +# Util functions related to API calls +#------------------------------------------------------------------------------- + +#' test_if_json +#' +#' @param input Response object +#' +test_if_json <- function(input) { + + if ((httr2::resp_content_type(input) == "application/json") && !is.na(httr2::resp_content_type(input))) { + + results_json <- httr2::resp_body_json(input) + + } else { + + stop("No json-csv file detected.", call. = FALSE) + + } + + return(results_json) + +} + +#------------------------------------------------------------------------------- +#' test_if_okay +#' +#' @param input Response object +#' +test_if_okay <- function(input) { + + results_json <- ifelse(input$`User-Agent` == "https://github.com/CorrelAid/restatis", + "Yes", + "No") + + return(results_json) + +} +#------------------------------------------------------------------------------- + +#' test_if_error_find +#' +#' @param input Response object +#' @param para Parameter TRUE/FALSE +#' @param verbose Verbose TRUE/FALSE +#' +test_if_error_find <- function(input, para, verbose = NULL) { + + if (input$Status$Code != 0 && isTRUE(para) && input$Status$Code != 22) { + + stop(input$Status$Content) + + } else if (input$Status$Code != 0 && isFALSE(para) && input$Status$Code != 22) { + + if (!is.null(verbose) && isTRUE(verbose)) { + + message(input$Status$Content) + + message("Artificial token is used.") + + } + + empty_object <- FALSE + + } else { + + empty_object <- "DONE" + + } + + return(empty_object) + +} + +#------------------------------------------------------------------------------- + +#' test_if_error +#' +#' @param input Response object +#' @param para Parameter TRUE/FALSE +#' @param verbose Verbose TRUE/FALSE +#' +test_if_error <- function(input, para, verbose = NULL) { + + if (input$Status$Code == 104 && isFALSE(para)) { + + stop("No object found for your request. Check your parameters if you expected an object for this request.", + call. = FALSE) + + } else if (input$Status$Code != 0 && isFALSE(para) && input$Status$Code != 22) { + + stop(input$Status$Content, + call. = FALSE) + + } else if (input$Status$Code == 104 && isTRUE(para)) { + + if (!is.null(verbose) && isTRUE(verbose)) { + + message("No object found for your request. Check your parameters if you expected an object for this request. Artificial token is used.") + + } + + empty_object <- TRUE + + } else if (input$Status$Code != 0 && isTRUE(para) && input$Status$Code != 22) { + + if (!is.null(verbose) && isTRUE(verbose)) { + + message(input$Status$Content) + + message("Artificial token is used.") + + } + + empty_object <- FALSE + + } else { + + empty_object <- "DONE" + + } + + return(empty_object) + +} + +#------------------------------------------------------------------------------- + +#' test_if_error_variables +#' +#' @param input Response object +#' @param para Parameter TRUE/FALSE +#' +test_if_error_variables <- function(input, para) { + + if (input$Status$Code == 104) { + + empty_object <- TRUE + + } else if (input$Status$Code != 0 && input$Status$Code != 22) { + + empty_object <- FALSE + + } else { + + empty_object <- "DONE" + + } + + return(empty_object) + +} + +#------------------------------------------------------------------------------- + +#' test_if_process_further +#' +#' @param input Response object +#' @param para Parameter TRUE/FALSE +#' @param verbose Verbose TRUE/FALSE +#' +test_if_process_further <- function(input, para, verbose = NULL) { + + if (sum(unlist(lapply(input[4:8], function(x) { + + is.null(x) + + }))) == 5 && isFALSE(para)) { + + stop("No object found for your request. Check your parameters if you expected an object for this request.", + call. = FALSE) + + } else if (sum(unlist(lapply(input[4:8], function(x) { + + is.null(x) + + }))) == 5 && isTRUE(para)) { + + if (!is.null(verbose) && isTRUE(verbose)) { + + message("No object found for your request. Check your parameters if you expected an object for this request. Artificial token is used.") + + } + + empty_object <- TRUE + + } else { + + empty_object <- "DONE" + + } + + return(empty_object) + +} + +#------------------------------------------------------------------------------- + +#' test_if_error_light +#' +#' @param input Response object +#' @param verbose Verbose TRUE/FALSE +#' +test_if_error_light <- function(input, verbose = NULL) { + + if (input$Status$Code != 0 && !is.null(verbose) && isTRUE(verbose) && input$Status$Code != 22) { + + warning(input$Status$Content, + call. = FALSE) + + } + +} + +#------------------------------------------------------------------------------- + +#' resp_check_data +#' +#' @param resp Response object +#' +resp_check_data <- function(resp) { + + if (!(httr2::resp_content_type(resp) %in% c("application/zip", "text/csv", "application/json"))) { + + stop(paste0("Encountered an invalid response type (", httr2::resp_content_type(resp), ")."), + call. = FALSE) + + } + + return(httr2::resp_content_type(resp)) + +} + +#------------------------------------------------------------------------------- + +#' return_table_object +#' +#' @param response Response object +#' @param response_type Response type +#' @param language Language locale +#' @param all_character Read all variables as character? +#' +return_table_object <- function(response, + response_type, + language, + all_character) { + + #----------------------------------------------------------------------------- + # Short parameter processing of 'all character' for later use in read_delim + + if (isTRUE(all_character)) { + + all_character <- expression(readr::cols(.default = readr::col_character())) + + } else if (isFALSE(all_character)) { + + all_character <- expression(readr::cols()) + + } else { + + stop("Misspecification of parameter 'all_character'. Has to be TRUE or FALSE.", + call. = FALSE) + + } + + #----------------------------------------------------------------------------- + + if (response_type == "application/json") { + + response_parsed <- httr2::resp_body_json(response) + + if (response_parsed$Status$Code == 98) { + + error_message <- paste0("You have requested a table too big for simple download. \n", + "Consider making a range of smaller requests or use the \n", + "option to create a job by setting the 'job' parameter \n", + "of 'gen_table()' to TRUE. You can then download the job \n", + "later (use the function 'gen_list_jobs()' to check its status) \n", + "and download it using gen_download_job().") + + stop(error_message, call. = FALSE) + + } else if (response_parsed$Status$Code == 99) { + + message <- paste0("You have successfully created a job with \n", + "your request. Use the function 'gen_list_jobs()' ", + "to check its status and download it once completed.") + + message(message) + + } else if (response_parsed$Status$Code == 104) { + + stop("There are no results for your request. Please check if the requested table code is valid for the database selected.", + call. = FALSE) + + } else { + + stop(paste0("There has been an error with your request (API error code: '", + response_parsed$Status$Code, + "', error message: '", + response_parsed$Status$Content, + "').\n Please try again later or contact the package maintainer."), + call. = FALSE) + + } + + #----------------------------------------------------------------------------- + + } else if (response_type == "text/csv") { + + # There has to be a check on language to display correct decimal marks + # For German results, there needs to be a decimal mark set + + if (language == "de") { + + result <- response %>% + httr2::resp_body_string() %>% + readr::read_delim(delim = ";", + show_col_types = FALSE, + locale = readr::locale(decimal_mark = ",", + grouping_mark = "."), + name_repair = "minimal", + col_types = eval(all_character)) + + } else if (language == "en") { + + result <- response %>% + httr2::resp_body_string() %>% + readr::read_delim(delim = ";", + show_col_types = FALSE, + name_repair = "minimal", + col_types = eval(all_character)) + + } else { + + stop("Error handling language setting locale (values different from 'de' and 'en').", + call. = FALSE) + + } + + return(result) + + #----------------------------------------------------------------------------- + + # If the API response is a ZIP file, we need to temporarily save it + + } else if (response_type == "application/zip") { + + content <- httr2::resp_body_raw(response) + + temp_zip_path <- tempfile(fileext = ".zip") + + writeBin(content, + temp_zip_path) + + extract_dir <- tempdir() + + utils::unzip(temp_zip_path, + exdir = extract_dir) + + extracted_file <- list.files(extract_dir, + full.names = TRUE, + pattern = "_flat.csv") + + # We have to make sure there is only one flat csv to read in the tempdir + if (length(extracted_file) != 1) { + + stop("There are ambiguous file names (ending on '_flat.csv') in your temporary directory.", + call. = FALSE) + + } + + #--------------------------------------------------------------------------- + # Parsing of the result + + if (language == "de") { + + result <- readr::read_delim(file = extracted_file, + delim = ";", + show_col_types = FALSE, + locale = readr::locale(decimal_mark = ",", + grouping_mark = "."), + name_repair = "minimal", + col_types = eval(all_character)) + + } else if (language == "en") { + + result <- readr::read_delim(file = extracted_file, + delim = ";", + show_col_types = FALSE, + name_repair = "minimal", + col_types = eval(all_character)) + + } else { + + stop("Error handling language setting locale (values different from 'de' and 'en').", + call. = FALSE) + + } + + # Remove temporarily created .csv file from temporary directory + file.remove(extracted_file) + + return(result) + + #----------------------------------------------------------------------------- + + } else { + + stop("Unknown API response type. Please refer to the package maintainers.", + call. = FALSE) + + } # End of check application/json, application/zip, text/csv + +} + + diff --git a/R/utils_httr2.R b/R/utils_authentication.R similarity index 59% rename from R/utils_httr2.R rename to R/utils_authentication.R index 3b895f5..7d1de31 100644 --- a/R/utils_httr2.R +++ b/R/utils_authentication.R @@ -1,422 +1,315 @@ -#------------------------------------------------------------------------------- -# Util functions related to API calls -#------------------------------------------------------------------------------- - -#' test_if_json +#' Function to check if credential list provided is valid #' -#' @param input Response object +#' @param credential_list Credential list to be checked +#' @param database Database that is used for authentication #' -test_if_json <- function(input) { +check_credential_list_standalone <- function(credential_list, database) { - if ((httr2::resp_content_type(input) == "application/json") && !is.na(httr2::resp_content_type(input))) { + if (!is.null(credential_list)) { - results_json <- httr2::resp_body_json(input) + if (!is.list(credential_list)) { - } else { + stop("Parameter 'credential_list' has to be of type 'list' if 'credential_type' is set.", + call. = FALSE) - stop("No json-csv file detected.", call. = FALSE) + } - } + if (!all(sapply(credential_list, function(x) { all(c("username", "password") %in% names(x)) }))) { - return(results_json) + stop("The database that is requested in the parameter 'database' needs its own list entry including the entries 'username' and 'password' (e.g., list('genesis' = c('username' = 'X', 'password' = 'Y'))).", + call. = FALSE) -} + } -#------------------------------------------------------------------------------- -#' test_if_okay -#' -#' @param input Response object -#' -test_if_okay <- function(input) { + if (!(database %in% names(credential_list))) { - results_json <- ifelse(input$`User-Agent` == "https://github.com/CorrelAid/restatis", - "Yes", - "No" - ) + stop("The database that is requested in the parameter 'database' has no value in 'credential_list'. Please check the parameters.", + call. = FALSE) + + } - return(results_json) + } } -#------------------------------------------------------------------------------- -#' test_if_error_find +#------------------------------------------------------------------------------- +#' test_database_function #' -#' @param input Response object -#' @param para Parameter TRUE/FALSE -#' @param verbose Verbose TRUE/FALSE +#' @param input Input to test for database name +#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. +#' @param error.input Indicator error.ignore +#' @param text Indicator verbose #' -test_if_error_find <- function(input, para, verbose = NULL) { - - if (input$Status$Code != 0 && isTRUE(para) && input$Status$Code != 22) { - - stop(input$Status$Content) - - } else if (input$Status$Code != 0 && isFALSE(para) && input$Status$Code != 22) { +test_database_function <- function(input, + credential_list, + error.input, + text) { - if(!is.null(verbose) && isTRUE(verbose)) { + #----------------------------------------------------------------------------- - message(input$Status$Content) + if (!is.logical(text) || length(text) != 1) { - message("Artificial token is used.") + stop("Parameter 'verbose' has to be of type 'logical' and of length 1.", + call. = FALSE) - } + } - empty_object <- FALSE + #----------------------------------------------------------------------------- - } else { + if (!is.logical(error.input) || length(error.input) != 1) { - empty_object <- "DONE" + stop("Parameter 'error.ignore' has to be of type 'logical' and of length 1.", + call. = FALSE) } - return(empty_object) - -} - -#------------------------------------------------------------------------------- - -#' test_if_error -#' -#' @param input Response object -#' @param para Parameter TRUE/FALSE -#' @param verbose Verbose TRUE/FALSE -#' -test_if_error <- function(input, para, verbose = NULL) { + #----------------------------------------------------------------------------- - if (input$Status$Code == 104 && isFALSE(para)) { + if (sum(is.na(input)) == length(input)) { - stop("No object found for your request. Check your parameters if you expected an object for this request.", + stop("You have to correctly specifiy a 'database' parameter. Please refer to the documentation for further information.", call. = FALSE) - } else if (input$Status$Code != 0 && isFALSE(para) && input$Status$Code != 22) { - - stop(input$Status$Content, - call. = FALSE) + } - } else if (input$Status$Code == 104 && isTRUE(para)) { + #----------------------------------------------------------------------------- - if(!is.null(verbose) && isTRUE(verbose)){ + res <- c() - message("No object found for your request. Check your parameters if you expected an object for this request. Artificial token is used.") + if ("genesis" %in% input) { - } + res <- c(res, "genesis") - empty_object <- TRUE + } - } else if (input$Status$Code != 0 && isTRUE(para) && input$Status$Code != 22) { + if ("zensus" %in% input) { - if( !is.null(verbose) && isTRUE(verbose)){ + res <- c(res, "zensus") - message(input$Status$Content) + } - message("Artificial token is used.") + if ("regio" %in% input) { - } + res <- c(res, "regio") - empty_object <- FALSE + } - } else { + if ("bayern" %in% input) { - empty_object <- "DONE" + res <- c(res, "bayern") } - return(empty_object) + if ("nrw" %in% input) { -} - -#------------------------------------------------------------------------------- + res <- c(res, "nrw") -#' test_if_error_variables -#' -#' @param input Response object -#' @param para Parameter TRUE/FALSE -#' -test_if_error_variables <- function(input, para) { - - if (input$Status$Code == 104) { + } - empty_object <- TRUE + if ("bildung" %in% input) { - } else if (input$Status$Code != 0 && input$Status$Code != 22) { + res <- c(res, "bildung") - empty_object <- FALSE + } - } else { + if ("st" %in% input) { - empty_object <- "DONE" + res <- c(res, "st") } - return(empty_object) + #----------------------------------------------------------------------------- -} + if ("all" %in% input) { -#------------------------------------------------------------------------------- + if (isTRUE(text)) { -#' test_if_process_further -#' -#' @param input Response object -#' @param para Parameter TRUE/FALSE -#' @param verbose Verbose TRUE/FALSE -#' -test_if_process_further <- function(input, para, verbose = NULL) { + message("All databases accessible to you are preselected. Additional databases specified in the 'database' parameter are ignored.") - if (sum(unlist(lapply(input[4:8], function(x) { + } - is.null(x) + res <- c("genesis", + "zensus", + "regio", + "bayern", + "nrw", + "bildung", + "st") - }))) == 5 && isFALSE(para)) { + } else if (length(res) == 0 || is.null(res)) { - stop("No object found for your request. Check your parameters if you expected an object for this request.", + stop("All the databases you have specified are not part of this package.\nPlease enter valid database names ('regio', 'zensus', 'genesis','bayern', 'nrw', 'bildung', 'st' or 'all').", call. = FALSE) - } else if (sum(unlist(lapply(input[4:8], function(x) { - - is.null(x) + } else if (length(res) != length(input)) { - }))) == 5 && isTRUE(para)) { + if (isFALSE(error.input)) { - if(!is.null(verbose) && isTRUE(verbose)){ + stop("One or more of the specified databases are not part of this package. Currently only 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung', and 'st' are implemented.", + call. = FALSE) - message("No object found for your request. Check your parameters if you expected an object for this request. Artificial token is used.") + } else { - } + if (isTRUE(text)) { - empty_object <- TRUE + message("One or more of the specified databases are not part of this package. The function is continued with the available databases that you specified.") - } else { + } - empty_object <- "DONE" + } } - return(empty_object) + #----------------------------------------------------------------------------- -} + # Check if custom credential list has been provided and if the specification is valid -#------------------------------------------------------------------------------- + if (!is.null(credential_list)) { -#' test_if_error_light -#' -#' @param input Response object -#' @param verbose Verbose TRUE/FALSE -#' -test_if_error_light <- function(input, verbose = NULL) { + if (isTRUE(text)) { - if (input$Status$Code != 0 && !is.null(verbose) && isTRUE(verbose) && input$Status$Code != 22) { + message("Please be aware that using custom credentials as in 'credential_list' can be a potential security threat.\nUsing restatis::gen_auth_save() stores the credentials safely in a locked file.\nSee package README for further information on this issue.") - warning(input$Status$Content, - call. = FALSE) + } - } + if (!is.list(credential_list)) { -} + stop("Parameter 'credential_list' has to be of type 'list' if 'credential_type' is set.", + call. = FALSE) -#------------------------------------------------------------------------------- + } -#' resp_check_data -#' -#' @param resp Response object -#' -resp_check_data <- function(resp) { + #--------------------------------------------------------------------------- - if (!(httr2::resp_content_type(resp) %in% c("application/zip", "text/csv", "application/json"))) { + if (length(res) <= length(credential_list)) { - stop(paste0("Encountered an invalid response type (", httr2::resp_content_type(resp), ")."), - call. = FALSE) + if (!all(res %in% names(credential_list))) { - } - - return(httr2::resp_content_type(resp)) + missing <- setdiff(res, names(credential_list)) -} + stop(paste0("Not all databases you defined in 'database' are contained in your 'credential_list' (missing: '", + paste(missing, collapse = "', '"), + "'). Please check your parameters."), + call. = FALSE) -#------------------------------------------------------------------------------- + } -#' return_table_object -#' -#' @param response Response object -#' @param response_type Response type -#' @param language Language locale -#' @param all_character Read all variables as character? -#' -return_table_object <- function(response, - response_type, - language, - all_character) { + } - #----------------------------------------------------------------------------- - # Short parameter processing of 'all character' for later use in read_delim + #--------------------------------------------------------------------------- - if (isTRUE(all_character)) { + if (length(res) > length(credential_list) & isTRUE(error.input)) { - all_character <- expression(readr::cols(.default = readr::col_character())) + common <- intersect(res, names(credential_list)) - } else if (isFALSE(all_character)) { + message(paste0("You have defined more databases in 'database' than you have in your 'credential_list'. The function continues with those available (these are: '"), + paste(common, collapse = ", "), + "').") - all_character <- expression(readr::cols()) + res <- common - } else { + } else if (length(res) > length(credential_list) & isFALSE(error.input)) { - stop("Misspecification of parameter 'all_character'. Has to be TRUE or FALSE.", - call. = FALSE) + stop("You have defined more databases in 'database' than you have in your 'credential_list'. Please check your parameters.", + call. = FALSE) - } + } - #----------------------------------------------------------------------------- + #--------------------------------------------------------------------------- - if (response_type == "application/json") { + if (!all(sapply(credential_list, function(x) { all(c("username", "password") %in% names(x)) }))) { - response_parsed <- httr2::resp_body_json(response) + stop("Every database that is requested in the parameter 'database' needs its own list entry including the entries 'username' and 'password' (e.g., list(genesis = c(username = 'X', password = 'Y'))).", + call. = FALSE) - if (response_parsed$Status$Code == 98) { + } - error_message <- paste0("You have requested a table too big for simple download. \n", - "Consider making a range of smaller requests or use the \n", - "option to create a job by setting the 'job' parameter \n", - "of 'gen_table()' to TRUE. You can then download the job \n", - "later (use the function 'gen_list_jobs()' to check its status) \n", - "and download it using gen_download_job().") + return(res) - stop(error_message, call. = FALSE) + } else { - } else if (response_parsed$Status$Code == 99) { + #--------------------------------------------------------------------------- - message <- paste0("You have successfully created a job with \n", - "your request. Use the function 'gen_list_jobs()' ", - "to check its status and download it once completed.") + # Check if credentials are available for the selected databases - message(message) + check <- sapply(res, function(y) { - } else if (response_parsed$Status$Code == 104) { + result <- tryCatch({ - stop("There are no results for your request. Please check if the requested table code is valid for the database selected.", - call. = FALSE) + user <- gen_auth_get(y)$username - } else { + }, error = function(e) { - stop(paste0("There has been an error with your request (API error code: '", - response_parsed$Status$Code, - "', error message: '", - response_parsed$Status$Content, - "').\n Please try again later or contact the package maintainer."), - call. = FALSE) + return(FALSE) - } + }) - #----------------------------------------------------------------------------- + if (isFALSE(result)) { - } else if (response_type == "text/csv") { + return(FALSE) - # There has to be a check on language to display correct decimal marks - # For German results, there needs to be a decimal mark set + } else { - if (language == "de") { + return(TRUE) - result <- response %>% - httr2::resp_body_string() %>% - readr::read_delim(delim = ";", - show_col_types = FALSE, - locale = readr::locale(decimal_mark = ",", - grouping_mark = "."), - name_repair = "minimal", - col_types = eval(all_character)) + } - } else if (language == "en") { + }) - result <- response %>% - httr2::resp_body_string() %>% - readr::read_delim(delim = ";", - show_col_types = FALSE, - name_repair = "minimal", - col_types = eval(all_character)) + #----------------------------------------------------------------------------- - } else { + if (sum(check) == 0) { - stop("Error handling language setting locale (values different from 'de' and 'en').", + stop("None of the specified databases are accessible to you. Please check your credentials.", call. = FALSE) - } - - return(result) + } else if (any(check == FALSE)) { - #----------------------------------------------------------------------------- + if (isTRUE(error.input)) { - # If the API response is a ZIP file, we need to temporarily save it + if (isTRUE(text)) { - } else if (response_type == "application/zip") { + mess <- paste("The following databases are not accessible to you:", paste(res[!check], collapse = ", ")) - content <- httr2::resp_body_raw(response) + message(mess) - temp_zip_path <- tempfile(fileext = ".zip") + message("The function is continued with the available databases that you specified.") - writeBin(content, - temp_zip_path) + } - extract_dir <- tempdir() + res <- res[check] - utils::unzip(temp_zip_path, - exdir = extract_dir) + } else { - extracted_file <- list.files(extract_dir, - full.names = TRUE, - pattern = "_flat.csv") + mess <- paste("The following databases are not accessible to you:", paste(res[!check], collapse = ", "), "\nPlease check your credentials.") - # We have to make sure there is only one flat csv to read in the tempdir - if (length(extracted_file) != 1) { + stop(mess, call. = FALSE) - stop("There are ambiguous file names (ending on '_flat.csv') in your temporary directory.", - call. = FALSE) + } } - #--------------------------------------------------------------------------- - # Parsing of the result - - if (language == "de") { - - result <- readr::read_delim(file = extracted_file, - delim = ";", - show_col_types = FALSE, - locale = readr::locale(decimal_mark = ",", - grouping_mark = "."), - name_repair = "minimal", - col_types = eval(all_character)) + #----------------------------------------------------------------------------- - } else if (language == "en") { + if (identical(res, c())) { - result <- readr::read_delim(file = extracted_file, - delim = ";", - show_col_types = FALSE, - name_repair = "minimal", - col_types = eval(all_character)) + stop("You have to correctly specify a 'database' parameter. Please refer to the documentation for further information.", + call. = FALSE) } else { - stop("Error handling language setting locale (values different from 'de' and 'en').", - call. = FALSE) + return(res) } - # Remove temporarily created .csv file from temporary directory - file.remove(extracted_file) - - return(result) - - #----------------------------------------------------------------------------- - - } else { - - stop("Unknown API response type. Please refer to the package maintainers.", - call. = FALSE) - - } # End of check application/json, application/zip, text/csv + } } #------------------------------------------------------------------------------- +#------------------------------------------------------------------------------- + #' logincheck_http_error #' #' @param database The user input to 'gen_logincheck' @@ -464,8 +357,7 @@ logincheck_http_error <- function(database, response_bayern = .gen_api_core(endpoint = "helloworld/logincheck", database = "bayern", ...), response_nrw = .gen_api_core(endpoint = "helloworld/logincheck", database = "nrw", ...), response_bildung = .gen_api_core(endpoint = "helloworld/logincheck", database = "bildung", ...), - response_sa = .gen_api_core(endpoint = "helloworld/logincheck", database = "st", ...) - ) + response_sa = .gen_api_core(endpoint = "helloworld/logincheck", database = "st", ...)) purrr::walk2(.x = response_list, .y = databases, @@ -740,7 +632,7 @@ set_credentials_auth <- function(path, ui_menu_database, use_token) { - if(isTRUE(use_token)) { + if (isTRUE(use_token)) { username <- gen_auth_ask(paste0("API token for ", ui_menu_database)) password <- "" diff --git a/R/utils_dataprocessing.R b/R/utils_dataprocessing.R index bbc5efe..3b9a65e 100644 --- a/R/utils_dataprocessing.R +++ b/R/utils_dataprocessing.R @@ -174,13 +174,13 @@ forming_evas <- function(list_of) { #--------------------------------------------------------------------- - nestedlist <- lapply(nestedlist, function(d){ + nestedlist <- lapply(nestedlist, function(d) { - lapply(d, function(y){ + lapply(d, function(y) { - lapply(y, function(x){ + lapply(y, function(x) { - lapply(x, function(r, remain){ + lapply(x, function(r, remain) { obj <- r[keep] obj <- tibble::as_tibble(obj) @@ -197,11 +197,11 @@ forming_evas <- function(list_of) { } else { - nestedlist <- lapply(nestedlist, function(d){ + nestedlist <- lapply(nestedlist, function(d) { - lapply(d, function(y){ + lapply(d, function(y) { - lapply(y, function(r, remain){ + lapply(y, function(r, remain) { obj <- r[keep] obj <- tibble::as_tibble(obj) @@ -220,9 +220,9 @@ forming_evas <- function(list_of) { } else { - nestedlist <- lapply(nestedlist, function(d){ + nestedlist <- lapply(nestedlist, function(d) { - lapply(d, function(r, remain){ + lapply(d, function(r, remain) { obj <- r[keep] obj <- tibble::as_tibble(obj) @@ -238,7 +238,7 @@ forming_evas <- function(list_of) { } else { - nestedlist <- lapply(nestedlist, function(r, remain){ + nestedlist <- lapply(nestedlist, function(r, remain) { obj <- r[keep] obj <- tibble::as_tibble(obj) @@ -521,7 +521,7 @@ check_function_input <- function(code = NULL, #------------------------------------------------------------------------------- - if("genesis" %in% database){ + if ("genesis" %in% database) { if (!all(category %in% c("tables", "cubes", "statistics"))) { @@ -541,7 +541,7 @@ check_function_input <- function(code = NULL, #------------------------------------------------------------------------- - if("zensus" %in% database){ + if ("zensus" %in% database) { #----------------------------------------------------------------------- @@ -601,7 +601,7 @@ check_function_input <- function(code = NULL, #------------------------------------------------------------------------- - if("genesis" %in% database){ + if ("genesis" %in% database) { if (!all(category %in% c("tables", "cubes", "variables"))) { @@ -624,7 +624,7 @@ check_function_input <- function(code = NULL, #--------------------------------------------------------------------- - if ("genesis" %in% database){ + if ("genesis" %in% database) { stop("Available categories for parameter 'category' for 'genesis' database are 'all', 'tables', 'statistics', 'variables', and 'cubes'.", call. = FALSE) @@ -633,7 +633,7 @@ check_function_input <- function(code = NULL, #--------------------------------------------------------------------- - if("zensus" %in% database){ + if ("zensus" %in% database) { stop("Available categories for parameter 'category' for 'zensus' database are 'all', 'tables', 'statistics', and 'variables'.", call. = FALSE) @@ -650,7 +650,7 @@ check_function_input <- function(code = NULL, #------------------------------------------------------------------------- - if("zensus" %in% database){ + if ("zensus" %in% database) { #----------------------------------------------------------------------- @@ -692,7 +692,7 @@ check_function_input <- function(code = NULL, #------------------------------------------------------------------------- - if("genesis" %in% database){ + if ("genesis" %in% database) { #----------------------------------------------------------------------- @@ -707,7 +707,7 @@ check_function_input <- function(code = NULL, #------------------------------------------------------------------------- - else if("zensus" %in% database) { + else if ("zensus" %in% database) { if (!all(category %in% c("statistic", "table", "variable", "value"))) { @@ -752,7 +752,7 @@ check_function_input <- function(code = NULL, #--------------------------------------------------------------------------- - if ("genesis" %in% database){ + if ("genesis" %in% database) { #------------------------------------------------------------------------- @@ -767,7 +767,7 @@ check_function_input <- function(code = NULL, #--------------------------------------------------------------------------- - if ("zensus" %in% database){ + if ("zensus" %in% database) { if (!all(type %in% c("all", "tables", "statistics"))) { @@ -866,9 +866,9 @@ check_function_input <- function(code = NULL, #----------------------------------------------------------------------------- # Recommendation ---- - if(!is.null(verbose) && !is.null(error.ignore) && !is.null(database)){ + if (!is.null(verbose) && !is.null(error.ignore) && !is.null(database)) { - if(isTRUE(verbose) && isFALSE(error.ignore) && length(database) > 1){ + if (isTRUE(verbose) && isFALSE(error.ignore) && length(database) > 1) { message("If you want to search through all databases it is often useful to set the 'error.ignore' parameter to TRUE.\nThis will prevent the function from stopping if no object is found in one of the databases.") @@ -878,7 +878,7 @@ check_function_input <- function(code = NULL, #----------------------------------------------------------------------------- # raw ---- - if (!is.null(raw)){ + if (!is.null(raw)) { if (!is.logical(raw) || length(raw) != 1) { @@ -910,7 +910,7 @@ check_function_input <- function(code = NULL, if (identical(date, c("now", "week_before", "month_before", "year_before"))) { - if (isTRUE(verbose)){ + if (isTRUE(verbose)) { message("Please note that per default the current system date is used.\nThis date is calculated automatically and may differ from manually entered data.\nManually entered data must have the format DD.MM.YYYY.") @@ -1038,13 +1038,13 @@ spezifisch_create <- function(x) { #------------------------------------------------------------------------------- -#' titel_search +#' title_search #' #' @param x Element to extract $Content from #' @param term Search term #' @param text Indicator verbose #' -titel_search <- function(x, term, text) { +title_search <- function(x, term, text) { split <- unlist(strsplit(gsub(" ", "\\bund\\b", term), c("\\bund\\b|\\bUND\\b|\\bUnd\\b|\\&|\\bODER\\b|\\boder\\b|\\bOder\\b|\\|"))) @@ -1103,300 +1103,14 @@ titel_search <- function(x, term, text) { } -#------------------------------------------------------------------------------- -#' test_database_function -#' -#' @param input Input to test for database name -#' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. -#' @param error.input Indicator error.ignore -#' @param text Indicator verbose -#' -test_database_function <- function(input, - credential_list, - error.input, - text){ - - #----------------------------------------------------------------------------- - - if (!is.logical(text) || length(text) != 1) { - - stop("Parameter 'verbose' has to be of type 'logical' and of length 1.", - call. = FALSE) - - } - - #----------------------------------------------------------------------------- - - if (!is.logical(error.input) || length(error.input) != 1) { - - stop("Parameter 'error.ignore' has to be of type 'logical' and of length 1.", - call. = FALSE) - - } - - #----------------------------------------------------------------------------- - - if (sum(is.na(input)) == length(input)) { - - stop("You have to correctly specifiy a 'database' parameter. Please refer to the documentation for further information.", - call. = FALSE) - - } - - #----------------------------------------------------------------------------- - - res <- c() - - if ("genesis" %in% input) { - - res <- c(res, "genesis") - - } - - if ("zensus" %in% input) { - - res <- c(res, "zensus") - - } - - if ("regio" %in% input) { - - res <- c(res, "regio") - - } - - if ("bayern" %in% input) { - - res <- c(res, "bayern") - - } - - if ("nrw" %in% input) { - - res <- c(res, "nrw") - - } - - if ("bildung" %in% input) { - - res <- c(res, "bildung") - - } - - if ("st" %in% input) { - - res <- c(res, "st") - - } - - #----------------------------------------------------------------------------- - - if ("all" %in% input) { - - if (isTRUE(text)) { - - message("All databases accessible to you are preselected. Additional databases specified in the 'database' parameter are ignored.") - - } - - res <- c("genesis", - "zensus", - "regio", - "bayern", - "nrw", - "bildung", - "st") - - } else if (length(res) == 0 || is.null(res)) { - - stop("All the databases you have specified are not part of this package.\nPlease enter valid database names ('regio', 'zensus', 'genesis','bayern', 'nrw', 'bildung', 'st' or 'all').", - call. = FALSE) - - } else if (length(res) != length(input)) { - - if (isFALSE(error.input)) { - - stop("One or more of the specified databases are not part of this package. Currently only 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung', and 'st' are implemented.", - call. = FALSE) - - } else { - - if (isTRUE(text)) { - - message("One or more of the specified databases are not part of this package. The function is continued with the available databases that you specified.") - - } - - } - - } - - #----------------------------------------------------------------------------- - - # Check if custom variables - if (!is.null(credential_list)) { - - if(isTRUE(text)) { - - message("Please be aware that using custom credentials is a potential security threat.") - - } - - if(!is.list(credential_list)){ - - stop("Parameter 'credential_list' has to be of type list if 'credential_type'.", - call. = FALSE) - - } - - check <- which(!res %in% names(credential_list)) - - if(length(check) != 0){ - - if (isTRUE(error.input)) { - - if (isTRUE(text)) { - - mess <- paste("The following databases are not accessible to you:", paste(res[check], collapse = ", ")) - - message(mess) - - message("The function is continued with the available databases that you specified.") - - } - - res <- res[-check] - - } else { - - mess <- paste("The following databases are not accessible to you:", paste(res[check], collapse = ", "), "\nPlease check your credentials.") - - stop(mess, call. = FALSE) - - } - - } else if(length(res) < length(credential_list)){ - - if (isTRUE(error.input)) { - - if (isTRUE(text)) { - - message("You defined more databases than you requested in the 'database'-parameter. The function is continued with all useable databases.") - - } else { - - mess <- paste("You defined more databases than you requested in the 'database'-parameter. Please evaluate your function parameter 'database' or 'credential_list'.") - - stop(mess, call. = FALSE) - - } - - } else { - - mess <- paste("None of the credentials in the 'credential_list' could be associated to the databases defined in 'database'. Please check your parameters.") - - stop(mess, call. = FALSE) - - } - - } - - - if(!all(sapply(credential_list, function(x) {all(c("username", "password") %in% names(x))}))) { - - stop("Every database that is requested in the parameter 'database' needs its own list entry including the entries 'username' and 'password' (e.g., list('genesis' = c(username = X, password = Y))).", - call. = FALSE) - - } - - return(res) - - } else { - - #----------------------------------------------------------------------------- - - # Check if credentials are available for the selected databases - - check <- sapply(res, function(y) { - - result <- tryCatch({ - user <- gen_auth_get(y)$username - - }, error = function(e) { - - return(FALSE) - - }) - - if (isFALSE(result)) { - - return(FALSE) - - } else { - - return(TRUE) - - } - - }) - - #----------------------------------------------------------------------------- - - if (sum(check) == 0) { - - stop("None of the specified databases are accessible to you. Please check your credentials.", - call. = FALSE) - - } else if (any(check == FALSE)) { - - if (isTRUE(error.input)) { - - if (isTRUE(text)) { - - mess <- paste("The following databases are not accessible to you:", paste(res[!check], collapse = ", ")) - - message(mess) - - message("The function is continued with the available databases that you specified.") - - } - - res <- res[check] - - } else { - - mess <- paste("The following databases are not accessible to you:", paste(res[!check], collapse = ", "), "\nPlease check your credentials.") - - stop(mess, call. = FALSE) - - } - - } - - #----------------------------------------------------------------------------- - - if (identical(res, c())) { - - stop("You have to correctly specify a 'database' parameter. Please refer to the documentation for further information.", - call. = FALSE) - - } else { - - return(res) - - } - - } - -} #------------------------------------------------------------------------------- #' check_results #' #' @param input Input to test result structure #' -check_results <- function(input){ +check_results <- function(input) { if (length(input) > 1) { diff --git a/R/zzz.R b/R/zzz.R index 1da986d..c18a073 100644 --- a/R/zzz.R +++ b/R/zzz.R @@ -7,7 +7,9 @@ .onLoad <- function(libname, pkgname) { # Set a function whose results are to be cached - .gen_api_cached <<- memoise::memoise(.gen_api_core) + assign(".gen_api_cached", + memoise::memoise(.gen_api_core), + envir = asNamespace(pkgname)) # Set the option of use_cache for the gen_api function options(restatis.use_cache = TRUE) diff --git a/README.Rmd b/README.Rmd index 829a1b4..df65ece 100644 --- a/README.Rmd +++ b/README.Rmd @@ -92,4 +92,4 @@ In short, there are functions divided in two main parts, searching for (meta)dat ## Disclaimer -This package is in no way affiliated with the German Federal Statistical Office (Destatis) or the 'Verbund Statistische Ämter des Bundes und der Länder'. It is a simple wrapper providing R functions to access different official statistics APIs. The package authors are in no way responsible for the data that can be retrieved using its functions and do not provide support for any problems arising from the APIs' functionality itself. Conversely, support for problems related to this package is **exclusively** provided by the package authors. The license of this package solely applies to its source code. +This package is in no way affiliated with the German Federal Statistical Office (Destatis), the 'Verbund Statistische Ämter des Bundes und der Länder' or any other API provider that the package offers services for. It is a simple wrapper providing R functions to access different official statistics APIs. The package authors are in no way responsible for the data that can be retrieved using its functions and do not provide support for any problems arising from the APIs' functionality itself. Conversely, support for problems related to this package is **exclusively** provided by the package authors. The license of this package solely applies to its source code. diff --git a/README.md b/README.md index 9c95db5..d47a357 100644 --- a/README.md +++ b/README.md @@ -141,11 +141,12 @@ is no use-case for a cached version of the results of these functions ## Disclaimer This package is in no way affiliated with the German Federal Statistical -Office (Destatis) or the ‘Verbund Statistische Ämter des Bundes und der -Länder’. It is a simple wrapper providing R functions to access -different official statistics APIs. The package authors are in no way -responsible for the data that can be retrieved using its functions and -do not provide support for any problems arising from the APIs’ -functionality itself. Conversely, support for problems related to this -package is **exclusively** provided by the package authors. The license -of this package solely applies to its source code. +Office (Destatis), the ‘Verbund Statistische Ämter des Bundes und der +Länder’ or any other API provider that the package offers services for. +It is a simple wrapper providing R functions to access different +official statistics APIs. The package authors are in no way responsible +for the data that can be retrieved using its functions and do not +provide support for any problems arising from the APIs’ functionality +itself. Conversely, support for problems related to this package is +**exclusively** provided by the package authors. The license of this +package solely applies to its source code. diff --git a/man/check_credential_list_standalone.Rd b/man/check_credential_list_standalone.Rd new file mode 100644 index 0000000..673a592 --- /dev/null +++ b/man/check_credential_list_standalone.Rd @@ -0,0 +1,16 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/utils_authentication.R +\name{check_credential_list_standalone} +\alias{check_credential_list_standalone} +\title{Function to check if credential list provided is valid} +\usage{ +check_credential_list_standalone(credential_list, database) +} +\arguments{ +\item{credential_list}{Credential list to be checked} + +\item{database}{Database that is used for authentication} +} +\description{ +Function to check if credential list provided is valid +} diff --git a/man/dot-gen_api_core.Rd b/man/dot-gen_api_core.Rd index b2427b0..befc9f0 100644 --- a/man/dot-gen_api_core.Rd +++ b/man/dot-gen_api_core.Rd @@ -4,13 +4,15 @@ \alias{.gen_api_core} \title{Basic API request function} \usage{ -.gen_api_core(endpoint, database, ...) +.gen_api_core(endpoint, database, credential_list = NULL, ...) } \arguments{ \item{endpoint}{Character string. The endpoint of the API that is to be queried.} \item{database}{The database the query should be sent to.} +\item{credential_list}{A named list including username and password for the database(s) to be queried. If NULL (default), the function will try to get credentials from the environment variables.} + \item{...}{Further parameters passed on to the final API call.} } \description{ diff --git a/man/gen_alternative_terms.Rd b/man/gen_alternative_terms.Rd index 9ef5857..1c28163 100644 --- a/man/gen_alternative_terms.Rd +++ b/man/gen_alternative_terms.Rd @@ -7,18 +7,21 @@ gen_alternative_terms( term = NULL, similarity = TRUE, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, pagelength = 500, verbose = TRUE, ... ) } \arguments{ -\item{term}{Character string. Maximum length of 15 characters. Term or word for which you are searching for alternative or related terms. Use of '*' as a placeholder is possible to generate broader search areas.} +\item{term}{Character string. Maximum length of 15 characters. Term or word for which you are searching for alternative or related terms. Use of \code{*} as a placeholder is possible to generate broader search areas.} \item{similarity}{Boolean. Indicator if the output of the function should be sorted based on a Levenshtein edit distance based on the \code{adist()} function. Default is 'TRUE'.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} + +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} \item{pagelength}{Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects.} @@ -30,7 +33,7 @@ gen_alternative_terms( A list with all recollected elements from the respective database. Attributes are added to the data.frame, describing the search configuration for the returned output. } \description{ -Function to find search terms that are similar or related to one another in spelling and also represented in the databases. Important note: The API call is searching for terms with the same characters. To be useful in searching for related terms it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. +Function to find search terms that are similar or related to one another in spelling and also represented in the databases supported by \pkg{restatis}. Important note: The API call is searching for terms with the same characters. To be useful in searching for related terms it is highly recommended to work with \code{*} placeholders (see examples). The placeholder can be placed before and/or after the search term. } \examples{ \dontrun{ diff --git a/man/gen_auth_save.Rd b/man/gen_auth_save.Rd index 1752cd1..ec7f2d2 100644 --- a/man/gen_auth_save.Rd +++ b/man/gen_auth_save.Rd @@ -7,9 +7,9 @@ gen_auth_save(database, use_token = FALSE) } \arguments{ -\item{database}{Character string. The database to store credentials for ('all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'sa').} +\item{database}{Character string. The database to store credentials for ('all', 'genesis', 'zensus', 'regio', 'bayern', 'nrw', 'bildung' or 'st').} -\item{use_token}{Boolean. Do you want to (if possible) set an API token instead of password + username? Note: This is not supported by regionalstatistik.de. Defaults to FALSE.} +\item{use_token}{Boolean. Do you want to (if possible) set an API token instead of password + username? Note: This is only supported by 'genesis' and 'zensus'. Defaults to FALSE.} } \value{ Path to the RDS file in which credentials are saved, invisibly. diff --git a/man/gen_catalogue.Rd b/man/gen_catalogue.Rd index 577aead..5715c2b 100644 --- a/man/gen_catalogue.Rd +++ b/man/gen_catalogue.Rd @@ -6,11 +6,12 @@ \usage{ gen_catalogue( code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), category = c("tables", "statistics", "cubes"), area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), + credential_list = NULL, pagelength = 500, error.ignore = FALSE, verbose = TRUE, @@ -20,7 +21,7 @@ gen_catalogue( \arguments{ \item{code}{String with a maximum length of 15 characters. Only one code per iteration. "*" notations are possible.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{category}{Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} @@ -30,6 +31,8 @@ gen_catalogue( \item{sortcriterion}{Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'.} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{pagelength}{Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects.} \item{error.ignore}{Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE.} diff --git a/man/gen_cube.Rd b/man/gen_cube.Rd index 01ae4c2..41e29e6 100644 --- a/man/gen_cube.Rd +++ b/man/gen_cube.Rd @@ -4,54 +4,107 @@ \alias{gen_cube} \title{gen_cube} \usage{ -gen_cube(name, ...) +gen_cube( + name, + database = c("genesis", "regio", "nrw", "bildung"), + credential_list = NULL, + area = c("public", "user"), + values = TRUE, + metadata = TRUE, + additionals = FALSE, + startyear = 1900, + endyear = 2100, + timeslices = NULL, + contents = NULL, + regionalvariable = NULL, + regionalkey = NULL, + classifyingvariable1 = NULL, + classifyingkey1 = NULL, + classifyingvariable2 = NULL, + classifyingkey2 = NULL, + classifyingvariable3 = NULL, + classifyingkey3 = NULL, + stand = NULL, + language = Sys.getenv("RESTATIS_LANG"), + ... +) } \arguments{ -\item{name}{Character string for a cube object (only GENESIS and regionalstatistik.de)} +\item{name}{Character string for a cube object (only GENESIS, regionalstatistik.de, landesdatenbank.nrw.de or bildungsmonitoring.de)} -\item{...}{Further (optional) parameters passed on to the API call: -\describe{ -\item{\code{area}}{Character string. The area in which the table is stored. Possible values: +\item{database}{Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), landesdatenbank.nrw.de ('nrw') or bildungsmonitoring.de ('bildung') database is called.} + +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + +\item{area}{Character string. The area in which the table is stored. +Possible values: \itemize{ \item \code{"public"}: cube in the public catalogue \item \code{"user"}: cube in the user's account \item \code{"all"}: both of the above }} -\item{\code{values}}{Boolean. Should values be included?} -\item{\code{metadata}}{Boolean. Should metadata be included?} -\item{\code{additionals}}{Boolean. Should additional metadata be included?} -\item{\code{contents}}{Character string. Names of required statistical specifications} -\item{\code{startyear,endyear}}{Four-digit integers. Only retrieve data between these years.} -\item{\code{timeslices}}{Integer. Number of timeslices (cumulative to startyear or endyear)} -\item{\code{regionalvariable}}{Character string. Code of the regional variable -whose value is specified in \code{regionalkey} to filter the results.} -\item{\code{regionalkey}}{Character string. One or more regional keys. Multiple -values can be supplied as a character vector or as a single string, -with the regional keys separated by commas. Use of wildcard (\code{*}) allowed.} -\item{\code{classifyingvariable1,classifyingvariable2 - ,classifyingvariable3}}{Character string. Code of the subject classification -(SK-Merkmal) to which the selection by means of the corresponding -\code{classifyingkey} parameter is to be applied.} -\item{\code{classifyingkey1,classifyingkey2,classifyingkey3}}{Character string. -One or more values of a subject classification (e.g. "WZ93012"). Applied -to the corresponding \code{classifyingvariable} parameter. Multiple -keys can be supplied as a character vector or as a single string, -with the keys separated by commas. Use of wildcard (\code{*}) allowed.} -\item{\code{stand}}{Character string, format: \code{"DD.MM.YYYY"}. Only retrieve data -updated after this date.} -\item{\code{language}}{Character string. Search terms, returned messages and data -descriptions in German (\code{"de"}) or English (\code{"en"})?} -\item{\code{...}}{Additional parameters for the API call (see respective API documentation). -A valid specification of these will not be checked by the function, so wrongful specification -may lead to errors.} -}} + +\item{values}{Boolean. Should values be included?} + +\item{metadata}{Boolean. Should metadata be included?} + +\item{additionals}{Boolean. Should additional metadata be included?} + +\item{startyear}{Four-digit integer. Only retrieve data from this year onward.} + +\item{endyear}{Four-digit integer. Only retrieve data up to this year.} + +\item{timeslices}{Integer. Number of timeslices (cumulative to \code{startyear} or \code{endyear}).} + +\item{contents}{Character string. Names of required statistical specifications.} + +\item{regionalvariable}{Character string. Code of the regional variable whose value +is specified in \code{regionalkey} to filter the results.} + +\item{regionalkey}{Character string. One or more regional keys. Multiple values can be +supplied as a character vector or as a single string, with the regional keys +separated by commas. Use of wildcard (\code{*}) allowed.} + +\item{classifyingvariable1}{Character string. Code of the subject classification +(SK-Merkmal) to which the selection by means of \code{classifyingkey1} is applied.} + +\item{classifyingkey1}{Character string. One or more values of a subject classification +(e.g. \code{"WZ93012"}). Applied to \code{classifyingvariable1}. Multiple keys can be +supplied as a character vector or as a single string, with the keys separated by +commas. Use of wildcard (\code{*}) allowed.} + +\item{classifyingvariable2}{Character string. Code of the subject classification +(SK-Merkmal) to which the selection by means of \code{classifyingkey2} is applied.} + +\item{classifyingkey2}{Character string. One or more values of a subject classification. +Applied to \code{classifyingvariable2}. Multiple keys can be supplied as a character +vector or as a single string, with the keys separated by commas. Use of wildcard +(\code{*}) allowed.} + +\item{classifyingvariable3}{Character string. Code of the subject classification +(SK-Merkmal) to which the selection by means of \code{classifyingkey3} is applied.} + +\item{classifyingkey3}{Character string. One or more values of a subject classification. +Applied to \code{classifyingvariable3}. Multiple keys can be supplied as a character +vector or as a single string, with the keys separated by commas. Use of wildcard +(\code{*}) allowed.} + +\item{stand}{Character string, format \code{"DD.MM.YYYY"}. Only retrieve data updated +after this date.} + +\item{language}{Character string. Search terms, returned messages and data descriptions +in German (\code{"de"}) or English (\code{"en"}).} + +\item{...}{Additional parameters for the API call (see respective API documentation). +A valid specification of these will not be checked by the function, so wrongful +specification may lead to errors.} } \value{ A \link[tibble:tibble]{tibble}. Non-data contents of the data cube object are saved in the \code{metadata} \link[base:attr]{attribute} of the data frame. } \description{ -Download a cube with data from GENESIS or regionalstatistik.de database +Download a cube with data from GENESIS, regionalstatistik.de, landesdatenbank.nrw.de, bildungsmonitoring.de or statistikdaten.bayern.de database } \examples{ \dontrun{ diff --git a/man/gen_download_job.Rd b/man/gen_download_job.Rd index 44211fd..13b9d0a 100644 --- a/man/gen_download_job.Rd +++ b/man/gen_download_job.Rd @@ -7,6 +7,7 @@ gen_download_job( name, database = c("genesis", "regio"), + credential_list = NULL, area = c("all", "public", "user"), compress = FALSE, language = Sys.getenv("RESTATIS_LANG"), @@ -18,6 +19,8 @@ gen_download_job( \item{database}{Character string. Indicator if the GENESIS ('genesis') or regionalstatistik.de ('regio') database is called. Only one database can be addressed per function call. Default option is 'genesis'.} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'.} \item{compress}{Boolean. Should empty rows and columns be discarded? Default is FALSE.} diff --git a/man/gen_find.Rd b/man/gen_find.Rd index 7788a19..4139cea 100644 --- a/man/gen_find.Rd +++ b/man/gen_find.Rd @@ -6,10 +6,11 @@ \usage{ gen_find( term = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), category = c("all", "tables", "statistics", "variables", "cubes"), detailed = FALSE, ordering = TRUE, + credential_list = NULL, pagelength = 500, error.ignore = TRUE, verbose = TRUE, @@ -19,7 +20,7 @@ gen_find( \arguments{ \item{term}{A character string with no maximum character length, but a word limit of five words.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{category}{Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} @@ -27,6 +28,8 @@ gen_find( \item{ordering}{A logical. Indicator if the function should return the output of the iteration ordered first based on the fact if the searched term is appearing in the title of the object and secondly on an estimator of the number of variables in this object. Default option is 'TRUE'.} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{pagelength}{Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects.} \item{error.ignore}{Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'TRUE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE.} diff --git a/man/gen_list_jobs.Rd b/man/gen_list_jobs.Rd index 7ac719e..8142212 100644 --- a/man/gen_list_jobs.Rd +++ b/man/gen_list_jobs.Rd @@ -8,6 +8,7 @@ gen_list_jobs( database, sortcriterion = c("type", "time", "status", "code"), flat = FALSE, + credential_list = NULL, error.ignore = FALSE, verbose = TRUE, ... @@ -20,6 +21,8 @@ gen_list_jobs( \item{flat}{Boolean. Should the function return a list with jobs and metadata ('FALSE') or just a flat data.frame ('TRUE')? Defaults to FALSE.} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{error.ignore}{Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE.} \item{verbose}{Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings.} diff --git a/man/gen_logincheck.Rd b/man/gen_logincheck.Rd index 6aedceb..64383d3 100644 --- a/man/gen_logincheck.Rd +++ b/man/gen_logincheck.Rd @@ -7,7 +7,7 @@ gen_logincheck(database = "all", verbose = TRUE, ...) } \arguments{ -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{verbose}{Boolean. In case of success, should a message be printed? Defaults to 'TRUE'.} diff --git a/man/gen_metadata.Rd b/man/gen_metadata.Rd index 3b2c943..c0b13e3 100644 --- a/man/gen_metadata.Rd +++ b/man/gen_metadata.Rd @@ -6,8 +6,9 @@ \usage{ gen_metadata( code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), category = c("cube", "statistic", "table", "variable", "value"), + credential_list = NULL, area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -18,10 +19,12 @@ gen_metadata( \arguments{ \item{code}{String with a maximum length of 15 characters for a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{category}{Character string. Specifying the specific object type of the object that you want meta data for. No default option - you need to specify the object type. Hint: The functions in 'restatis' often return information on object 'Type'.} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} \item{error.ignore}{Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE.} diff --git a/man/gen_metadata_cube.Rd b/man/gen_metadata_cube.Rd index 73d6712..51639eb 100644 --- a/man/gen_metadata_cube.Rd +++ b/man/gen_metadata_cube.Rd @@ -7,6 +7,7 @@ gen_metadata_cube( code = NULL, database = c("all", "genesis", "regio", "nrw", "bildung"), + credential_list = NULL, area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -19,6 +20,8 @@ gen_metadata_cube( \item{database}{Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), landesdatenbank.nrw.de ('nrw') or bildungsmonitoring.de ('bildung') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} \item{error.ignore}{Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE.} diff --git a/man/gen_metadata_statistic.Rd b/man/gen_metadata_statistic.Rd index 084f295..35b1c05 100644 --- a/man/gen_metadata_statistic.Rd +++ b/man/gen_metadata_statistic.Rd @@ -6,7 +6,8 @@ \usage{ gen_metadata_statistic( code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -17,7 +18,9 @@ gen_metadata_statistic( \arguments{ \item{code}{A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} + +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_metadata_table.Rd b/man/gen_metadata_table.Rd index 48c7e1b..c8d2e33 100644 --- a/man/gen_metadata_table.Rd +++ b/man/gen_metadata_table.Rd @@ -6,7 +6,8 @@ \usage{ gen_metadata_table( code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -17,7 +18,9 @@ gen_metadata_table( \arguments{ \item{code}{A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} + +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_metadata_value.Rd b/man/gen_metadata_value.Rd index 81a8338..af6bf1f 100644 --- a/man/gen_metadata_value.Rd +++ b/man/gen_metadata_value.Rd @@ -6,7 +6,8 @@ \usage{ gen_metadata_value( code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -17,7 +18,9 @@ gen_metadata_value( \arguments{ \item{code}{A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} + +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_metadata_variable.Rd b/man/gen_metadata_variable.Rd index 1e6d88b..0486d5d 100644 --- a/man/gen_metadata_variable.Rd +++ b/man/gen_metadata_variable.Rd @@ -6,7 +6,8 @@ \usage{ gen_metadata_variable( code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, area = c("all", "public", "user"), error.ignore = FALSE, verbose = TRUE, @@ -17,7 +18,9 @@ gen_metadata_variable( \arguments{ \item{code}{A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} + +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_modified_data.Rd b/man/gen_modified_data.Rd index adba3c8..c382b9f 100644 --- a/man/gen_modified_data.Rd +++ b/man/gen_modified_data.Rd @@ -6,9 +6,10 @@ \usage{ gen_modified_data( code = "", - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), type = c("all", "tables", "statistics", "statisticsUpdates"), date = c("now", "week_before", "month_before", "year_before"), + credential_list = NULL, pagelength = 500, verbose = TRUE, ... @@ -17,12 +18,14 @@ gen_modified_data( \arguments{ \item{code}{A character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{type}{Character string. Specific GENESIS and regionalstatistik.de object types: 'tables', 'statistics', and 'statisticsUpdates'. Specific Zensus 2022 object types: 'tables' and 'statistics'. All types that are specific for one database can be used together through 'all', which is the default.} \item{date}{Character string. Specific date that is used as the last update or upload time to include an object in return. Default option is 'now', which uses the current date of your system. Alternative options are 'week_before', using the current date of your system minus 7 days, 'month_before', using the current date of your system minus 4 weeks, and 'year_before', using the current date of your system minus 52 weeks. Additionally, it is possible to fill in a specific date of format 'DD.MM.YYYY'.} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{pagelength}{Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects.} \item{verbose}{Boolean. Indicator if the output of the function should include detailed messages and warnings. Default option is 'TRUE'. Set the parameter to 'FALSE' to suppress additional messages and warnings.} diff --git a/man/gen_objects2stat.Rd b/man/gen_objects2stat.Rd index f3a2455..6df2989 100644 --- a/man/gen_objects2stat.Rd +++ b/man/gen_objects2stat.Rd @@ -6,11 +6,12 @@ \usage{ gen_objects2stat( code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), category = c("tables", "variables", "cubes"), area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), + credential_list = NULL, pagelength = 500, error.ignore = FALSE, verbose = TRUE, @@ -20,7 +21,7 @@ gen_objects2stat( \arguments{ \item{code}{Character string with a maximum length of 6 characters (15 characters if 'cubes' are not used as a category). Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{category}{Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} @@ -30,6 +31,8 @@ gen_objects2stat( \item{sortcriterion}{Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'.} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{pagelength}{Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects.} \item{error.ignore}{Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE.} diff --git a/man/gen_objects2var.Rd b/man/gen_objects2var.Rd index d99053a..32ff09b 100644 --- a/man/gen_objects2var.Rd +++ b/man/gen_objects2var.Rd @@ -6,11 +6,12 @@ \usage{ gen_objects2var( code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), category = c("tables", "statistics", "cubes"), area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), + credential_list = NULL, pagelength = 500, error.ignore = FALSE, verbose = TRUE, @@ -20,7 +21,7 @@ gen_objects2var( \arguments{ \item{code}{Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{category}{Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} @@ -30,6 +31,8 @@ gen_objects2var( \item{sortcriterion}{Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'.} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{pagelength}{Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects.} \item{error.ignore}{Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE.} diff --git a/man/gen_search_vars.Rd b/man/gen_search_vars.Rd index 670da87..a1bbf94 100644 --- a/man/gen_search_vars.Rd +++ b/man/gen_search_vars.Rd @@ -6,9 +6,10 @@ \usage{ gen_search_vars( code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), sortcriterion = c("code", "content"), + credential_list = NULL, pagelength = 500, error.ignore = FALSE, verbose = TRUE, @@ -18,12 +19,14 @@ gen_search_vars( \arguments{ \item{code}{Character string with a maximum length of 6 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} \item{sortcriterion}{Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'.} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{pagelength}{Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects.} \item{error.ignore}{Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE.} diff --git a/man/gen_signs.Rd b/man/gen_signs.Rd index 80f65e1..2d090a8 100644 --- a/man/gen_signs.Rd +++ b/man/gen_signs.Rd @@ -5,14 +5,17 @@ \title{gen_signs} \usage{ gen_signs( - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, error.ignore = FALSE, verbose = TRUE, ... ) } \arguments{ -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} + +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} \item{error.ignore}{Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE.} diff --git a/man/gen_table.Rd b/man/gen_table.Rd index 4b30783..aa5b97e 100644 --- a/man/gen_table.Rd +++ b/man/gen_table.Rd @@ -4,58 +4,108 @@ \alias{gen_table} \title{gen_table} \usage{ -gen_table(name, ...) +gen_table( + name, + database = c("genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), + credential_list = NULL, + area = c("all", "public", "user"), + compress = FALSE, + transpose = FALSE, + startyear = 1900, + endyear = 2100, + regionalvariable = NULL, + regionalkey = NULL, + classifyingvariable1 = NULL, + classifyingkey1 = NULL, + classifyingvariable2 = NULL, + classifyingkey2 = NULL, + classifyingvariable3 = NULL, + classifyingkey3 = NULL, + stand = NULL, + language = Sys.getenv("RESTATIS_LANG"), + job = FALSE, + all_character = TRUE, + ... +) } \arguments{ \item{name}{Character string. Name/code of the table. Use of wildcards (\code{*}) is possible.} -\item{...}{Optional parameters passed on to the Genesis API call: -\describe{ -\item{\code{area}}{Character string. The area in which the table is stored. Possible values: +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called.} + +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + +\item{area}{Character string. The area in which the table is stored. +Possible values: \itemize{ \item \code{"public"}: table in the public catalogue \item \code{"user"}: table in the user's account \item \code{"all"}: both of the above }} -\item{\code{compress}}{Boolean. Should empty rows and columns be discarded?} -\item{\code{transpose}}{Boolean. Reshape the table between "wide" and -"long" format.} -\item{\code{startyear,endyear}}{Four-digit integers. Only retrieve data between these years.} -\item{\code{regionalvariable}}{Character string. Code of the regional variable -whose value is specified in \code{regionalkey} to filter the results.} -\item{\code{regionalkey}}{Character string. One or more regional keys. Multiple -values can be supplied as a character vector or as a single string, -with the regional keys separated by commas. Use of wildcard (\code{*}) allowed.} -\item{\code{classifyingvariable1,classifyingvariable2 - ,classifyingvariable3}}{Character string. Code of the subject classification -(SK-Merkmal) to which the selection by means of the corresponding -\code{classifyingkey} parameter is to be applied.} -\item{\code{classifyingkey1,classifyingkey2,classifyingkey3}}{Character string. -One or more values of a subject classification (e.g. "WZ93012"). Applied -to the corresponding \code{classifyingvariable} parameter. Multiple -keys can be supplied as a character vector or as a single string, -with the keys separated by commas. Use of wildcard (\code{*}) allowed.} -\item{\code{stand}}{Character string, format: \code{"DD.MM.YYYY"}. Only retrieve data -updated after this date.} -\item{\code{language}}{Search terms, returned messages and data -descriptions in German (\code{"de"}) or English (\code{"en"})?} -\item{\code{job}}{Boolean. Indicate as to whether a job should be created -(not available with the 'Zensus' database). In order to set job = TRUE -you have to have username and password saved with gen_auth_save(), -using API tokens with job = TRUE will result in an error.} -\item{\code{all_character}}{Boolean. Should all variables be imported as -'character' variables? Avoids fuzzy data type conversions if there are -leading zeros or other special characters. Defaults to TRUE.} -\item{\code{...}}{Additional parameters for the API call (see respective API documentation). -A valid specification of these will not be checked by the function, so wrongful specification -may lead to errors.} -}} + +\item{compress}{Boolean. Should empty rows and columns be discarded?} + +\item{transpose}{Boolean. Reshape the table between \code{"wide"} and \code{"long"} format.} + +\item{startyear}{Four-digit integer. Only retrieve data from this year onward.} + +\item{endyear}{Four-digit integer. Only retrieve data up to this year.} + +\item{regionalvariable}{Character string. Code of the regional variable whose value +is specified in \code{regionalkey} to filter the results.} + +\item{regionalkey}{Character string. One or more regional keys. Multiple values can be +supplied as a character vector or as a single string, with the regional keys +separated by commas. Use of wildcard (\code{*}) allowed.} + +\item{classifyingvariable1}{Character string. Code of the subject classification +(SK-Merkmal) to which the selection by means of \code{classifyingkey1} is applied.} + +\item{classifyingkey1}{Character string. One or more values of a subject classification +(e.g. \code{"WZ93012"}). Applied to \code{classifyingvariable1}. Multiple keys can be +supplied as a character vector or as a single string, with the keys separated by +commas. Use of wildcard (\code{*}) allowed.} + +\item{classifyingvariable2}{Character string. Code of the subject classification +(SK-Merkmal) to which the selection by means of \code{classifyingkey2} is applied.} + +\item{classifyingkey2}{Character string. One or more values of a subject classification. +Applied to \code{classifyingvariable2}. Multiple keys can be supplied as a character +vector or as a single string, with the keys separated by commas. Use of wildcard +(\code{*}) allowed.} + +\item{classifyingvariable3}{Character string. Code of the subject classification +(SK-Merkmal) to which the selection by means of \code{classifyingkey3} is applied.} + +\item{classifyingkey3}{Character string. One or more values of a subject classification. +Applied to \code{classifyingvariable3}. Multiple keys can be supplied as a character +vector or as a single string, with the keys separated by commas. Use of wildcard +(\code{*}) allowed.} + +\item{stand}{Character string, format \code{"DD.MM.YYYY"}. Only retrieve data updated +after this date.} + +\item{language}{Character string. Search terms, returned messages and data descriptions +in German (\code{"de"}) or English (\code{"en"}).} + +\item{job}{Boolean. Indicate whether a job should be created (not available with the +\code{"Zensus"} database). To set \code{job = TRUE}, username and password must be +saved with \code{gen_auth_save()}; using API tokens with \code{job = TRUE} will +result in an error.} + +\item{all_character}{Boolean. Should all variables be imported as character variables? +Avoids fuzzy data type conversions if there are leading zeros or other special +characters. Defaults to \code{TRUE}.} + +\item{...}{Additional parameters for the API call (see respective API documentation). +A valid specification of these will not be checked by the function, so wrongful +specification may lead to errors.} } \value{ A \link[tibble:tibble]{tibble}. } \description{ -Download a table with data from GENESIS, Zensus 2022 or regionalstatistik.de databases +Download a cube with data from GENESIS, regionalstatistik.de, Zensus 2022, landesdatenbank.nrw.de, bildungsmonitoring.de, statistikdaten.bayern.de or genesis.sachsen-anhalt.de database } \examples{ \dontrun{ diff --git a/man/gen_val2var.Rd b/man/gen_val2var.Rd index 815c246..caf5c4a 100644 --- a/man/gen_val2var.Rd +++ b/man/gen_val2var.Rd @@ -6,9 +6,10 @@ \usage{ gen_val2var( code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), sortcriterion = c("code", "content"), + credential_list = NULL, pagelength = 500, error.ignore = TRUE, verbose = TRUE, @@ -18,12 +19,14 @@ gen_val2var( \arguments{ \item{code}{Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} \item{sortcriterion}{Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'.} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{pagelength}{Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects.} \item{error.ignore}{Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'TRUE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE.} diff --git a/man/gen_val2var2stat.Rd b/man/gen_val2var2stat.Rd index 15ae644..43d783d 100644 --- a/man/gen_val2var2stat.Rd +++ b/man/gen_val2var2stat.Rd @@ -6,9 +6,10 @@ \usage{ gen_val2var2stat( code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), detailed = FALSE, + credential_list = NULL, sortcriterion = c("code", "content"), pagelength = 500, error.ignore.var = FALSE, @@ -20,12 +21,14 @@ gen_val2var2stat( \arguments{ \item{code}{Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} \item{detailed}{Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'.} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{sortcriterion}{Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'.} \item{pagelength}{Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects.} diff --git a/man/gen_var2stat.Rd b/man/gen_var2stat.Rd index e13c6e6..f96d0f8 100644 --- a/man/gen_var2stat.Rd +++ b/man/gen_var2stat.Rd @@ -6,10 +6,11 @@ \usage{ gen_var2stat( code = NULL, - database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "sa"), + database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), area = c("all", "public", "user"), detailed = FALSE, sortcriterion = c("code", "content"), + credential_list = NULL, pagelength = 500, error.ignore = FALSE, verbose = TRUE, @@ -19,7 +20,7 @@ gen_var2stat( \arguments{ \item{code}{Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration.} -\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('sa') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} +\item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} @@ -27,6 +28,8 @@ gen_var2stat( \item{sortcriterion}{Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'.} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{pagelength}{Integer. Maximum length of results or objects (e.g., number of tables). Defaults to 500. Maximum of the databases is 25,000 objects.} \item{error.ignore}{Boolean. Indicator if the function should stop if an error occurs or no object for the request is found or if it should produce a token as response. Default option is 'FALSE'. Important note: This does not apply to errors generated by the API call itself (especially server or client errors with status codes 5xx or 4xx). In this case, the function call will error even if error.ignore is set to TRUE.} diff --git a/man/insert_and_save_credentials.Rd b/man/insert_and_save_credentials.Rd index fcd4f58..0e19f6a 100644 --- a/man/insert_and_save_credentials.Rd +++ b/man/insert_and_save_credentials.Rd @@ -1,5 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_httr2.R +% Please edit documentation in R/utils_authentication.R \name{insert_and_save_credentials} \alias{insert_and_save_credentials} \title{insert_and_save_credentials} diff --git a/man/logincheck_http_error.Rd b/man/logincheck_http_error.Rd index 2957c3d..3d449eb 100644 --- a/man/logincheck_http_error.Rd +++ b/man/logincheck_http_error.Rd @@ -1,5 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_httr2.R +% Please edit documentation in R/utils_authentication.R \name{logincheck_http_error} \alias{logincheck_http_error} \title{logincheck_http_error} diff --git a/man/logincheck_stop_or_warn.Rd b/man/logincheck_stop_or_warn.Rd index 0c966d0..96f88a8 100644 --- a/man/logincheck_stop_or_warn.Rd +++ b/man/logincheck_stop_or_warn.Rd @@ -1,5 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_httr2.R +% Please edit documentation in R/utils_authentication.R \name{logincheck_stop_or_warn} \alias{logincheck_stop_or_warn} \title{logincheck_stop_or_warn} diff --git a/man/resp_check_data.Rd b/man/resp_check_data.Rd index cc1deb2..48fbe54 100644 --- a/man/resp_check_data.Rd +++ b/man/resp_check_data.Rd @@ -1,5 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_httr2.R +% Please edit documentation in R/utils_api_calls.R \name{resp_check_data} \alias{resp_check_data} \title{resp_check_data} diff --git a/man/return_table_object.Rd b/man/return_table_object.Rd index 3922872..318cd6d 100644 --- a/man/return_table_object.Rd +++ b/man/return_table_object.Rd @@ -1,5 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_httr2.R +% Please edit documentation in R/utils_api_calls.R \name{return_table_object} \alias{return_table_object} \title{return_table_object} diff --git a/man/set_credentials_auth.Rd b/man/set_credentials_auth.Rd index fe3004b..e270190 100644 --- a/man/set_credentials_auth.Rd +++ b/man/set_credentials_auth.Rd @@ -1,5 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_httr2.R +% Please edit documentation in R/utils_authentication.R \name{set_credentials_auth} \alias{set_credentials_auth} \title{set_credentials_auth} diff --git a/man/test_database_function.Rd b/man/test_database_function.Rd index 61fccf5..379257e 100644 --- a/man/test_database_function.Rd +++ b/man/test_database_function.Rd @@ -1,14 +1,16 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_dataprocessing.R +% Please edit documentation in R/utils_authentication.R \name{test_database_function} \alias{test_database_function} \title{test_database_function} \usage{ -test_database_function(input, error.input, text) +test_database_function(input, credential_list, error.input, text) } \arguments{ \item{input}{Input to test for database name} +\item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} + \item{error.input}{Indicator error.ignore} \item{text}{Indicator verbose} diff --git a/man/test_if_error.Rd b/man/test_if_error.Rd index 8f25f55..25ac884 100644 --- a/man/test_if_error.Rd +++ b/man/test_if_error.Rd @@ -1,5 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_httr2.R +% Please edit documentation in R/utils_api_calls.R \name{test_if_error} \alias{test_if_error} \title{test_if_error} diff --git a/man/test_if_error_find.Rd b/man/test_if_error_find.Rd index 6905adb..6887d86 100644 --- a/man/test_if_error_find.Rd +++ b/man/test_if_error_find.Rd @@ -1,5 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_httr2.R +% Please edit documentation in R/utils_api_calls.R \name{test_if_error_find} \alias{test_if_error_find} \title{test_if_error_find} diff --git a/man/test_if_error_light.Rd b/man/test_if_error_light.Rd index 68843fd..dd79e55 100644 --- a/man/test_if_error_light.Rd +++ b/man/test_if_error_light.Rd @@ -1,5 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_httr2.R +% Please edit documentation in R/utils_api_calls.R \name{test_if_error_light} \alias{test_if_error_light} \title{test_if_error_light} diff --git a/man/test_if_error_variables.Rd b/man/test_if_error_variables.Rd index 501028c..0b789f5 100644 --- a/man/test_if_error_variables.Rd +++ b/man/test_if_error_variables.Rd @@ -1,5 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_httr2.R +% Please edit documentation in R/utils_api_calls.R \name{test_if_error_variables} \alias{test_if_error_variables} \title{test_if_error_variables} diff --git a/man/test_if_json.Rd b/man/test_if_json.Rd index c90b682..9b179e2 100644 --- a/man/test_if_json.Rd +++ b/man/test_if_json.Rd @@ -1,5 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_httr2.R +% Please edit documentation in R/utils_api_calls.R \name{test_if_json} \alias{test_if_json} \title{test_if_json} diff --git a/man/test_if_okay.Rd b/man/test_if_okay.Rd index 4a56348..14a674f 100644 --- a/man/test_if_okay.Rd +++ b/man/test_if_okay.Rd @@ -1,5 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_httr2.R +% Please edit documentation in R/utils_api_calls.R \name{test_if_okay} \alias{test_if_okay} \title{test_if_okay} diff --git a/man/test_if_process_further.Rd b/man/test_if_process_further.Rd index 430d82e..3ca6034 100644 --- a/man/test_if_process_further.Rd +++ b/man/test_if_process_further.Rd @@ -1,5 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/utils_httr2.R +% Please edit documentation in R/utils_api_calls.R \name{test_if_process_further} \alias{test_if_process_further} \title{test_if_process_further} diff --git a/man/titel_search.Rd b/man/title_search.Rd similarity index 70% rename from man/titel_search.Rd rename to man/title_search.Rd index b908e46..f7f5494 100644 --- a/man/titel_search.Rd +++ b/man/title_search.Rd @@ -1,10 +1,10 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/utils_dataprocessing.R -\name{titel_search} -\alias{titel_search} -\title{titel_search} +\name{title_search} +\alias{title_search} +\title{title_search} \usage{ -titel_search(x, term, text) +title_search(x, term, text) } \arguments{ \item{x}{Element to extract $Content from} @@ -14,5 +14,5 @@ titel_search(x, term, text) \item{text}{Indicator verbose} } \description{ -titel_search +title_search } diff --git a/tests/testthat/catalogue1/api/catalogue/tables-86e7c4-8ec1be-POST.json b/tests/testthat/catalogue1/api/catalogue/tables-86e7c4-8ec1be-POST.json deleted file mode 100644 index 0a0e4b7..0000000 --- a/tests/testthat/catalogue1/api/catalogue/tables-86e7c4-8ec1be-POST.json +++ /dev/null @@ -1,119 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "tables" - }, - "Status": { - "Code": 0, - "Content": "successfull", - "Type": "information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "611*", - "area": "all", - "searchcriterion": "code", - "sortcriterion": "code", - "pagelength": "500", - "language": "en" - }, - "List": [ - { - "Code": "61111-0001", - "Content": "Consumer price index: Germany, years", - "Time": "1991 to 2024" - }, - { - "Code": "61111-0002", - "Content": "Consumer price index: Germany, months", - "Time": "January 1991 to February 2025" - }, - { - "Code": "61111-0003", - "Content": "Consumer price index: Germany, years, individual consumption\nby purpose (COICOP 2-5-digit hierarchy)", - "Time": "1991 to 2024" - }, - { - "Code": "61111-0004", - "Content": "Consumer price index: Germany, months, individual\nconsumption by purpose (COICOP 2-5-digit hierarchy)", - "Time": "January 1991 to February 2025" - }, - { - "Code": "61111-0005", - "Content": "Consumer price index: Germany, years, individual consumption\nby purpose (COICOP 2-/3-/4-/5-/10-digit codes/special items)", - "Time": "1991 to 2024" - }, - { - "Code": "61111-0006", - "Content": "Consumer price index: Germany, months, individual\nconsumption by purpose (COICOP 2-/3-/4-/5-/10-digit codes/\nspecial items)", - "Time": "January 1991 to February 2025" - }, - { - "Code": "61111-0007", - "Content": "Weighting scheme of the consumer price index: Germany,\nyears, individual consumption by purpose (COICOP 2-5-digit\nhierarchy)", - "Time": "2020 to 2020" - }, - { - "Code": "61111-0010", - "Content": "Consumer price index: Länder, years", - "Time": "1995 to 2024" - }, - { - "Code": "61111-0011", - "Content": "Consumer price index: Länder, months", - "Time": "January 1995 to February 2025" - }, - { - "Code": "61111-0020", - "Content": "Index of net rents exclusive of heating expenses:\nLänder, years", - "Time": "2005 to 2024" - }, - { - "Code": "61111-0021", - "Content": "Index of net rents exclusive of heating expenses:\nLänder, months", - "Time": "January 2005 to February 2025" - }, - { - "Code": "61121-0001", - "Content": "Harmonised index of consumer prices: Germany, years", - "Time": "1996 to 2024" - }, - { - "Code": "61121-0002", - "Content": "Harmonised index of consumer prices: Germany, months", - "Time": "January 1996 to February 2025" - }, - { - "Code": "61121-0003", - "Content": "Harmonised index of consumer prices: Germany, years,\nEuropean classification of individual consumption by purpose\n(ECOICOP 2-5-digit hierarchy)", - "Time": "1996 to 2024" - }, - { - "Code": "61121-0004", - "Content": "Harmonised index of consumer prices: Germany, months,\nEuropean classification of individual consumption by purpose\n(ECOICOP 2-5-digit hierarchy)", - "Time": "January 1996 to February 2025" - }, - { - "Code": "61121-0005", - "Content": "Harmonised index of consumer prices: Germany, years,\nEuropean classification of individual consumption by purpose\n(ECOICOP 2-/3-/4-/5-digit codes/special items)", - "Time": "1996 to 2024" - }, - { - "Code": "61121-0006", - "Content": "Harmonised index of consumer prices: Germany, months,\nEuropean classification of individual consumption by purpose\n(ECOICOP 2-/3-/4-/5-digit codes/special items)", - "Time": "January 1996 to February 2025" - }, - { - "Code": "61131-0001", - "Content": "Index of retail prices: Germany, years, value added tax,\neconomic activities", - "Time": "1991 to 2024" - }, - { - "Code": "61131-0002", - "Content": "Index of retail prices: Germany, months, value added tax,\neconomic activities", - "Time": "January 1991 to February 2025" - } - ], - "Copyright": "© Federal Statistical Office, Wiesbaden 2025" -} diff --git a/tests/testthat/catalogue2/api/catalogue/statistics-86e7c4-5fa204-POST.json b/tests/testthat/catalogue2/api/catalogue/statistics-86e7c4-5fa204-POST.json deleted file mode 100644 index cbc63dc..0000000 --- a/tests/testthat/catalogue2/api/catalogue/statistics-86e7c4-5fa204-POST.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "statistics" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "41141", - "searchcriterion": "Code", - "sortcriterion": "Code", - "pagelength": "500", - "language": "de", - "area": "Alle" - }, - "List": [ - { - "Code": "41141", - "Content": "Landwirtschaftszählung: Haupterhebung", - "Cubes": "176", - "Information": "true" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/catalogue3/api/catalogue/cubes-86e7c4-d265dd-POST.json b/tests/testthat/catalogue3/api/catalogue/cubes-86e7c4-d265dd-POST.json deleted file mode 100644 index 5afee04..0000000 --- a/tests/testthat/catalogue3/api/catalogue/cubes-86e7c4-d265dd-POST.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "cubes" - }, - "Status": { - "Code": 104, - "Content": "Es gibt keine Objekte zum angegebenen Selektionskriterium", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "41141", - "area": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": null, - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/catalogue4/api/catalogue/cubes-86e7c4-168969-POST.json b/tests/testthat/catalogue4/api/catalogue/cubes-86e7c4-168969-POST.json deleted file mode 100644 index 231b5ce..0000000 --- a/tests/testthat/catalogue4/api/catalogue/cubes-86e7c4-168969-POST.json +++ /dev/null @@ -1,310 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "cubes" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "611*", - "area": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "61111B5001", - "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 2-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020", - "LatestUpdate": "18.04.2024 13:34:49h", - "Information": "false" - }, - { - "Code": "61111B5002", - "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 3-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020", - "LatestUpdate": "18.04.2024 13:35:14h", - "Information": "false" - }, - { - "Code": "61111B5003", - "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 4-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020", - "LatestUpdate": "18.04.2024 13:35:42h", - "Information": "false" - }, - { - "Code": "61111B5004", - "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 5-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020", - "LatestUpdate": "18.04.2024 13:36:07h", - "Information": "false" - }, - { - "Code": "61111BJ001", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Jahr", - "State": "vollständig mit Werten", - "Time": "1991-2024", - "LatestUpdate": "16.01.2025 08:00:42h", - "Information": "false" - }, - { - "Code": "61111BJ002", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 2-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "1991-2024", - "LatestUpdate": "16.01.2025 08:01:37h", - "Information": "false" - }, - { - "Code": "61111BJ003", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 3-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "1991-2024", - "LatestUpdate": "16.01.2025 08:01:43h", - "Information": "false" - }, - { - "Code": "61111BJ004", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 4-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "1991-2024", - "LatestUpdate": "16.01.2025 08:02:02h", - "Information": "false" - }, - { - "Code": "61111BJ005", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 5-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "1991-2024", - "LatestUpdate": "16.01.2025 08:01:12h", - "Information": "false" - }, - { - "Code": "61111BJ006", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszw.d.Individualkonsums,Sonderpositionen, Jahr", - "State": "vollständig mit Werten", - "Time": "1991-2024", - "LatestUpdate": "16.01.2025 08:01:48h", - "Information": "false" - }, - { - "Code": "61111BJ007", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums,10-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020-2024", - "LatestUpdate": "16.01.2025 08:01:55h", - "Information": "false" - }, - { - "Code": "61111BM001", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1991-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:46h", - "Information": "false" - }, - { - "Code": "61111BM002", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 2-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1991-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:39h", - "Information": "false" - }, - { - "Code": "61111BM003", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 3-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1991-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:56h", - "Information": "false" - }, - { - "Code": "61111BM004", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 4-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1991-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:50h", - "Information": "false" - }, - { - "Code": "61111BM005", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 5-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1991-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:28h", - "Information": "false" - }, - { - "Code": "61111BM006", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszw.d.Individualkonsums,Sonderpositionen, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1991-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:36h", - "Information": "false" - }, - { - "Code": "61111BM007", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums,10-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2020-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:32h", - "Information": "false" - }, - { - "Code": "61111LJ001", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Bundesländer, Jahr", - "State": "vollständig mit Werten", - "Time": "1995-2024", - "LatestUpdate": "16.01.2025 08:01:51h", - "Information": "false" - }, - { - "Code": "61111LJ100", - "Content": "Verbraucherpreisindex für Deutschland, Index der Nettokaltmieten, Bundesländer, Jahr", - "State": "vollständig mit Werten", - "Time": "2005-2024", - "LatestUpdate": "16.01.2025 08:03:40h", - "Information": "false" - }, - { - "Code": "61111LM001", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Bundesländer, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1995-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:43h", - "Information": "false" - }, - { - "Code": "61111LM100", - "Content": "Verbraucherpreisindex für Deutschland, Index der Nettokaltmieten, Bundesländer, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2005-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:53h", - "Information": "false" - }, - { - "Code": "61121BJ001", - "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Veränderungsrate zum Vorjahr, Deutschland insgesamt, Jahr", - "State": "vollständig mit Werten", - "Time": "1996-2024", - "LatestUpdate": "16.01.2025 08:03:01h", - "Information": "false" - }, - { - "Code": "61121BJ002", - "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Deutschland insgesamt, ECOICOP: Harmon. Verbraucherpreisindex, 2-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "1996-2024", - "LatestUpdate": "16.01.2025 08:02:54h", - "Information": "false" - }, - { - "Code": "61121BJ003", - "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Deutschland insgesamt, ECOICOP: Harmon. Verbraucherpreisindex, 3-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "1996-2024", - "LatestUpdate": "16.01.2025 08:02:47h", - "Information": "false" - }, - { - "Code": "61121BJ004", - "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Deutschland insgesamt, ECOICOP: Harmon. Verbraucherpreisindex, 4-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "1996-2024", - "LatestUpdate": "16.01.2025 08:02:57h", - "Information": "false" - }, - { - "Code": "61121BJ005", - "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Deutschland insgesamt, ECOICOP: Harmon. Verbraucherpreisindex, 5-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "1996-2024", - "LatestUpdate": "16.01.2025 08:02:41h", - "Information": "false" - }, - { - "Code": "61121BJ006", - "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Deutschland insgesamt, ECOICOP: Harmon. Verbraucherpreisindex, Sonderpos., Jahr", - "State": "vollständig mit Werten", - "Time": "1996-2024", - "LatestUpdate": "16.01.2025 08:02:44h", - "Information": "false" - }, - { - "Code": "61121BM001", - "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Veränderungsrate zum Vorjahresmonat, Veränderungsrate zum Vormonat, Deutschland insgesamt, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1996-Februar 2025", - "LatestUpdate": "13.03.2025 18:01:00h", - "Information": "false" - }, - { - "Code": "61121BM002", - "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Deutschland insgesamt, ECOICOP: Harmon. Verbraucherpreisindex, 2-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1996-Februar 2025", - "LatestUpdate": "13.03.2025 18:01:35h", - "Information": "false" - }, - { - "Code": "61121BM003", - "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Deutschland insgesamt, ECOICOP: Harmon. Verbraucherpreisindex, 3-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1996-Februar 2025", - "LatestUpdate": "13.03.2025 18:01:32h", - "Information": "false" - }, - { - "Code": "61121BM004", - "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Deutschland insgesamt, ECOICOP: Harmon. Verbraucherpreisindex, 4-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1996-Februar 2025", - "LatestUpdate": "13.03.2025 18:01:39h", - "Information": "false" - }, - { - "Code": "61121BM005", - "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Deutschland insgesamt, ECOICOP: Harmon. Verbraucherpreisindex, 5-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1996-Februar 2025", - "LatestUpdate": "13.03.2025 18:01:47h", - "Information": "false" - }, - { - "Code": "61121BM006", - "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Deutschland insgesamt, ECOICOP: Harmon. Verbraucherpreisindex, Sonderpos., Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1996-Februar 2025", - "LatestUpdate": "13.03.2025 18:01:27h", - "Information": "false" - }, - { - "Code": "61131BJ001", - "Content": "Index der Einzelhandelspreise, Index der Einzelhandelspreise, WZ2008 (ausgewählte Pos.): Einzelhandelspreise, Mehrwertsteuer, Deutschland insgesamt, Jahr", - "State": "vollständig mit Werten", - "Time": "1991-2024", - "LatestUpdate": "16.01.2025 08:03:08h", - "Information": "false" - }, - { - "Code": "61131BM001", - "Content": "Index der Einzelhandelspreise, Index der Einzelhandelspreise, WZ2008 (ausgewählte Pos.): Einzelhandelspreise, Mehrwertsteuer, Deutschland insgesamt, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1991-Februar 2025", - "LatestUpdate": "13.03.2025 18:01:43h", - "Information": "false" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/catalogue4/api/catalogue/statistics-86e7c4-96cc12-POST.json b/tests/testthat/catalogue4/api/catalogue/statistics-86e7c4-96cc12-POST.json deleted file mode 100644 index e42da55..0000000 --- a/tests/testthat/catalogue4/api/catalogue/statistics-86e7c4-96cc12-POST.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "statistics" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "611*", - "searchcriterion": "Code", - "sortcriterion": "Code", - "pagelength": "500", - "language": "de", - "area": "Alle" - }, - "List": [ - { - "Code": "61111", - "Content": "Verbraucherpreisindex für Deutschland", - "Cubes": "22", - "Information": "true" - }, - { - "Code": "61121", - "Content": "Harmonisierter Verbraucherpreisindex", - "Cubes": "12", - "Information": "true" - }, - { - "Code": "61131", - "Content": "Index der Einzelhandelspreise", - "Cubes": "2", - "Information": "false" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/catalogue4/api/catalogue/tables-86e7c4-d934c9-POST.json b/tests/testthat/catalogue4/api/catalogue/tables-86e7c4-d934c9-POST.json deleted file mode 100644 index 553d06f..0000000 --- a/tests/testthat/catalogue4/api/catalogue/tables-86e7c4-d934c9-POST.json +++ /dev/null @@ -1,119 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "tables" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "611*", - "area": "Alle", - "searchcriterion": "Code", - "sortcriterion": "Code", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "61111-0001", - "Content": "Verbraucherpreisindex: Deutschland, Jahre", - "Time": "1991 - 2024" - }, - { - "Code": "61111-0002", - "Content": "Verbraucherpreisindex: Deutschland, Monate", - "Time": "Januar 1991 - Februar 2025" - }, - { - "Code": "61111-0003", - "Content": "Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", - "Time": "1991 - 2024" - }, - { - "Code": "61111-0004", - "Content": "Verbraucherpreisindex: Deutschland, Monate,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", - "Time": "Januar 1991 - Februar 2025" - }, - { - "Code": "61111-0005", - "Content": "Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-/3-/4-/5-/10-Steller/Sonderpositionen)", - "Time": "1991 - 2024" - }, - { - "Code": "61111-0006", - "Content": "Verbraucherpreisindex: Deutschland, Monate,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-/3-/4-/5-/10-Steller/Sonderpositionen)", - "Time": "Januar 1991 - Februar 2025" - }, - { - "Code": "61111-0007", - "Content": "Wägungsschema des Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", - "Time": "2020 - 2020" - }, - { - "Code": "61111-0010", - "Content": "Verbraucherpreisindex: Bundesländer, Jahre", - "Time": "1995 - 2024" - }, - { - "Code": "61111-0011", - "Content": "Verbraucherpreisindex: Bundesländer, Monate", - "Time": "Januar 1995 - Februar 2025" - }, - { - "Code": "61111-0020", - "Content": "Index der Nettokaltmieten: Bundesländer, Jahre", - "Time": "2005 - 2024" - }, - { - "Code": "61111-0021", - "Content": "Index der Nettokaltmieten: Bundesländer, Monate", - "Time": "Januar 2005 - Februar 2025" - }, - { - "Code": "61121-0001", - "Content": "Harmonisierter Verbraucherpreisindex: Deutschland, Jahre", - "Time": "1996 - 2024" - }, - { - "Code": "61121-0002", - "Content": "Harmonisierter Verbraucherpreisindex: Deutschland, Monate", - "Time": "Januar 1996 - Februar 2025" - }, - { - "Code": "61121-0003", - "Content": "Harmonisierter Verbraucherpreisindex: Deutschland, Jahre, Europäische Klassifikation der Verwendungszwecke des Individualkonsums (ECOICOP 2-5-Steller Hierarchie)", - "Time": "1996 - 2024" - }, - { - "Code": "61121-0004", - "Content": "Harmonisierter Verbraucherpreisindex: Deutschland, Monate,\nEuropäische Klassifikation der Verwendungszwecke des\nIndividualkonsums (ECOICOP 2-5-Steller Hierarchie)", - "Time": "Januar 1996 - Februar 2025" - }, - { - "Code": "61121-0005", - "Content": "Harmonisierter Verbraucherpreisindex: Deutschland, Jahre, Europäische Klassifikation der Verwendungszwecke des Individualkonsums (ECOICOP 2-/3-/4-/5-Steller/Sonderpositionen)", - "Time": "1996 - 2024" - }, - { - "Code": "61121-0006", - "Content": "Harmonisierter Verbraucherpreisindex: Deutschland, Monate, Europäische Klassifikation der Verwendungszwecke des Individualkonsums (ECOICOP 2-/3-/4-/5-Steller/Sonderpositionen)", - "Time": "Januar 1996 - Februar 2025" - }, - { - "Code": "61131-0001", - "Content": "Index der Einzelhandelspreise: Deutschland, Jahre,\nMehrwertsteuer, Wirtschaftszweige", - "Time": "1991 - 2024" - }, - { - "Code": "61131-0002", - "Content": "Index der Einzelhandelspreise: Deutschland, Monate,\nMehrwertsteuer, Wirtschaftszweige", - "Time": "Januar 1991 - Februar 2025" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/catalogue5/api/catalogue/tables-86e7c4-c36cba-POST.json b/tests/testthat/catalogue5/api/catalogue/tables-86e7c4-c36cba-POST.json deleted file mode 100644 index 002cbe0..0000000 --- a/tests/testthat/catalogue5/api/catalogue/tables-86e7c4-c36cba-POST.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "tables" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "711*", - "area": "Alle", - "searchcriterion": "Code", - "sortcriterion": "Code", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "71141-0001", - "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Ausgaben): Deutschland, Jahre, Körperschaftsgruppen,\nAusgabearten", - "Time": "1992 - 2011" - }, - { - "Code": "71141-0002", - "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Einnahmen): Deutschland, Jahre, Körperschaftsgruppen,\nEinnahmearten", - "Time": "1992 - 2011" - }, - { - "Code": "71141-0003", - "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Finanzierungssaldo, Besondere Finanzierungsvorgänge):\nDeutschland, Jahre, Körperschaftsgruppen", - "Time": "1992 - 2011" - }, - { - "Code": "71141-0004", - "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Nettoausgaben, Personalausgaben, Baumaßnahmen):\nDeutschland, Jahre, Körperschaftsgruppen, Aufgabenbereiche", - "Time": "1992 - 2011" - }, - { - "Code": "71141-0005", - "Content": "Investitionsausgaben der öffentlichen Haushalte:\nDeutschland, Jahre, Körperschaftsgruppen, Art der\nInvestitionsausgaben", - "Time": "1984 - 2011" - }, - { - "Code": "71141-0006", - "Content": "Investitionsausgaben der öffentlichen Haushalte:\nBundesländer, Jahre, Körperschaftsgruppen, Art der\nInvestitionsausgaben", - "Time": "1984 - 2011" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/catalogue6/api/catalogue/tables-86e7c4-c36cba-POST.json b/tests/testthat/catalogue6/api/catalogue/tables-86e7c4-c36cba-POST.json deleted file mode 100644 index 002cbe0..0000000 --- a/tests/testthat/catalogue6/api/catalogue/tables-86e7c4-c36cba-POST.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "tables" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "711*", - "area": "Alle", - "searchcriterion": "Code", - "sortcriterion": "Code", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "71141-0001", - "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Ausgaben): Deutschland, Jahre, Körperschaftsgruppen,\nAusgabearten", - "Time": "1992 - 2011" - }, - { - "Code": "71141-0002", - "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Einnahmen): Deutschland, Jahre, Körperschaftsgruppen,\nEinnahmearten", - "Time": "1992 - 2011" - }, - { - "Code": "71141-0003", - "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Finanzierungssaldo, Besondere Finanzierungsvorgänge):\nDeutschland, Jahre, Körperschaftsgruppen", - "Time": "1992 - 2011" - }, - { - "Code": "71141-0004", - "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Nettoausgaben, Personalausgaben, Baumaßnahmen):\nDeutschland, Jahre, Körperschaftsgruppen, Aufgabenbereiche", - "Time": "1992 - 2011" - }, - { - "Code": "71141-0005", - "Content": "Investitionsausgaben der öffentlichen Haushalte:\nDeutschland, Jahre, Körperschaftsgruppen, Art der\nInvestitionsausgaben", - "Time": "1984 - 2011" - }, - { - "Code": "71141-0006", - "Content": "Investitionsausgaben der öffentlichen Haushalte:\nBundesländer, Jahre, Körperschaftsgruppen, Art der\nInvestitionsausgaben", - "Time": "1984 - 2011" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/cube1/api/data/cubefile-86e7c4-e3dbae-POST.csv b/tests/testthat/cube1/api/data/cubefile-86e7c4-e3dbae-POST.csv deleted file mode 100644 index 8d5a35b..0000000 --- a/tests/testthat/cube1/api/data/cubefile-86e7c4-e3dbae-POST.csv +++ /dev/null @@ -1,3124 +0,0 @@ -* Der Benutzer DE5256891X der Benutzergruppe DE0089 hat am 24.03.2025 um 22:19:22 diesen Export angestossen. -K;DQ;FACH-SCHL;GHH-ART;GHM-WERTE-JN;GENESIS-VBD;REGIOSTAT;EU-VBD;"mit Werten" -D;47414BJ002;;N;N;N;N -K;DQ-ERH;FACH-SCHL -D;47414 -K;DQA;NAME;RHF-BSR;RHF-ACHSE -D;DINSG;1;1 -D;WZ08N7;2;2 -D;WERTE4;3;3 -K;DQZ;NAME;ZI-RHF-BSR;ZI-RHF-ACHSE -D;JAHR;4;4 -K;DQI;NAME;ME-NAME;DST;TYP;NKM-STELLEN;GHH-ART;GHM-WERTE-JN -D;UMS103;2015=100;FEST;PROZENT;1;;N -K;QEI;FACH-SCHL;FACH-SCHL;FACH-SCHL;ZI-WERT;WERT;QUALITAET;GESPERRT;WERT-VERFAELSCHT -D;DG;WZ08-49-01;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-01;NOMINAL;2016;99.3;e;;0.0 -D;DG;WZ08-49-01;NOMINAL;2017;105.7;e;;0.0 -D;DG;WZ08-49-01;NOMINAL;2018;111.6;e;;0.0 -D;DG;WZ08-49-01;NOMINAL;2019;115.6;e;;0.0 -D;DG;WZ08-49-01;NOMINAL;2020;95.7;e;;0.0 -D;DG;WZ08-49-01;NOMINAL;2021;118.8;e;;0.0 -D;DG;WZ08-49-01;NOMINAL;2022;146.9;e;;0.0 -D;DG;WZ08-49-01;NOMINAL;2023;134.1;p;;0.0 -D;DG;WZ08-49-01;NOMINAL;2024;136.1;p;;0.0 -D;DG;WZ08-49-01;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-01;REAL;2016;102.0;e;;0.0 -D;DG;WZ08-49-01;REAL;2017;103.7;e;;0.0 -D;DG;WZ08-49-01;REAL;2018;109.0;e;;0.0 -D;DG;WZ08-49-01;REAL;2019;114.5;e;;0.0 -D;DG;WZ08-49-01;REAL;2020;96.2;e;;0.0 -D;DG;WZ08-49-01;REAL;2021;98.7;e;;0.0 -D;DG;WZ08-49-01;REAL;2022;113.0;e;;0.0 -D;DG;WZ08-49-01;REAL;2023;124.1;p;;0.0 -D;DG;WZ08-49-01;REAL;2024;119.3;p;;0.0 -D;DG;WZ08-49-02;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-02;NOMINAL;2016;98.1;e;;0.0 -D;DG;WZ08-49-02;NOMINAL;2017;103.1;e;;0.0 -D;DG;WZ08-49-02;NOMINAL;2018;105.5;e;;0.0 -D;DG;WZ08-49-02;NOMINAL;2019;108.2;e;;0.0 -D;DG;WZ08-49-02;NOMINAL;2020;68.2;e;;0.0 -D;DG;WZ08-49-02;NOMINAL;2021;76.4;e;;0.0 -D;DG;WZ08-49-02;NOMINAL;2022;105.3;e;;0.0 -D;DG;WZ08-49-02;NOMINAL;2023;118.3;p;;0.0 -D;DG;WZ08-49-02;NOMINAL;2024;122.8;p;;0.0 -D;DG;WZ08-49-02;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-02;REAL;2016;99.8;e;;0.0 -D;DG;WZ08-49-02;REAL;2017;102.1;e;;0.0 -D;DG;WZ08-49-02;REAL;2018;104.1;e;;0.0 -D;DG;WZ08-49-02;REAL;2019;107.2;e;;0.0 -D;DG;WZ08-49-02;REAL;2020;75.4;e;;0.0 -D;DG;WZ08-49-02;REAL;2021;82.5;e;;0.0 -D;DG;WZ08-49-02;REAL;2022;109.0;e;;0.0 -D;DG;WZ08-49-02;REAL;2023;132.3;p;;0.0 -D;DG;WZ08-49-02;REAL;2024;134.3;p;;0.0 -D;DG;WZ08-49-03;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-03;NOMINAL;2016;100.4;e;;0.0 -D;DG;WZ08-49-03;NOMINAL;2017;108.5;e;;0.0 -D;DG;WZ08-49-03;NOMINAL;2018;116.5;e;;0.0 -D;DG;WZ08-49-03;NOMINAL;2019;120.6;e;;0.0 -D;DG;WZ08-49-03;NOMINAL;2020;115.0;e;;0.0 -D;DG;WZ08-49-03;NOMINAL;2021;150.7;e;;0.0 -D;DG;WZ08-49-03;NOMINAL;2022;178.3;e;;0.0 -D;DG;WZ08-49-03;NOMINAL;2023;146.6;p;;0.0 -D;DG;WZ08-49-03;NOMINAL;2024;148.1;p;;0.0 -D;DG;WZ08-49-03;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-03;REAL;2016;104.0;e;;0.0 -D;DG;WZ08-49-03;REAL;2017;105.6;e;;0.0 -D;DG;WZ08-49-03;REAL;2018;113.3;e;;0.0 -D;DG;WZ08-49-03;REAL;2019;120.0;e;;0.0 -D;DG;WZ08-49-03;REAL;2020;111.2;e;;0.0 -D;DG;WZ08-49-03;REAL;2021;111.0;e;;0.0 -D;DG;WZ08-49-03;REAL;2022;116.8;e;;0.0 -D;DG;WZ08-49-03;REAL;2023;120.9;p;;0.0 -D;DG;WZ08-49-03;REAL;2024;112.1;p;;0.0 -D;DG;WZ08-49-04;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-04;NOMINAL;2016;103.5;e;;0.0 -D;DG;WZ08-49-04;NOMINAL;2017;107.9;e;;0.0 -D;DG;WZ08-49-04;NOMINAL;2018;114.3;e;;0.0 -D;DG;WZ08-49-04;NOMINAL;2019;117.8;e;;0.0 -D;DG;WZ08-49-04;NOMINAL;2020;94.0;e;;0.0 -D;DG;WZ08-49-04;NOMINAL;2021;102.3;e;;0.0 -D;DG;WZ08-49-04;NOMINAL;2022;129.5;e;;0.0 -D;DG;WZ08-49-04;NOMINAL;2023;148.3;p;;0.0 -D;DG;WZ08-49-04;NOMINAL;2024;151.6;p;;0.0 -D;DG;WZ08-49-04;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-04;REAL;2016;103.5;e;;0.0 -D;DG;WZ08-49-04;REAL;2017;106.6;e;;0.0 -D;DG;WZ08-49-04;REAL;2018;111.2;e;;0.0 -D;DG;WZ08-49-04;REAL;2019;113.4;e;;0.0 -D;DG;WZ08-49-04;REAL;2020;94.9;e;;0.0 -D;DG;WZ08-49-04;REAL;2021;103.6;e;;0.0 -D;DG;WZ08-49-04;REAL;2022;133.5;e;;0.0 -D;DG;WZ08-49-04;REAL;2023;146.4;p;;0.0 -D;DG;WZ08-49-04;REAL;2024;146.1;p;;0.0 -D;DG;WZ08-49-05;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-05;NOMINAL;2016;93.8;e;;0.0 -D;DG;WZ08-49-05;NOMINAL;2017;106.0;e;;0.0 -D;DG;WZ08-49-05;NOMINAL;2018;116.6;e;;0.0 -D;DG;WZ08-49-05;NOMINAL;2019;122.2;e;;0.0 -D;DG;WZ08-49-05;NOMINAL;2020;109.7;e;;0.0 -D;DG;WZ08-49-05;NOMINAL;2021;173.6;e;;0.0 -D;DG;WZ08-49-05;NOMINAL;2022;211.4;e;;0.0 -D;DG;WZ08-49-05;NOMINAL;2023;138.7;p;;0.0 -D;DG;WZ08-49-05;NOMINAL;2024;138.0;p;;0.0 -D;DG;WZ08-49-05;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-05;REAL;2016;101.6;e;;0.0 -D;DG;WZ08-49-05;REAL;2017;98.6;e;;0.0 -D;DG;WZ08-49-05;REAL;2018;111.7;e;;0.0 -D;DG;WZ08-49-05;REAL;2019;128.4;e;;0.0 -D;DG;WZ08-49-05;REAL;2020;110.1;e;;0.0 -D;DG;WZ08-49-05;REAL;2021;93.7;e;;0.0 -D;DG;WZ08-49-05;REAL;2022;104.2;e;;0.0 -D;DG;WZ08-49-05;REAL;2023;124.3;p;;0.0 -D;DG;WZ08-49-05;REAL;2024;106.8;p;;0.0 -D;DG;WZ08-49-06;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-06;NOMINAL;2016;104.8;e;;0.0 -D;DG;WZ08-49-06;NOMINAL;2017;110.2;e;;0.0 -D;DG;WZ08-49-06;NOMINAL;2018;116.5;e;;0.0 -D;DG;WZ08-49-06;NOMINAL;2019;119.5;e;;0.0 -D;DG;WZ08-49-06;NOMINAL;2020;118.6;e;;0.0 -D;DG;WZ08-49-06;NOMINAL;2021;135.0;e;;0.0 -D;DG;WZ08-49-06;NOMINAL;2022;155.9;e;;0.0 -D;DG;WZ08-49-06;NOMINAL;2023;152.0;p;;0.0 -D;DG;WZ08-49-06;NOMINAL;2024;155.0;p;;0.0 -D;DG;WZ08-49-06;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-06;REAL;2016;105.7;e;;0.0 -D;DG;WZ08-49-06;REAL;2017;110.4;e;;0.0 -D;DG;WZ08-49-06;REAL;2018;114.5;e;;0.0 -D;DG;WZ08-49-06;REAL;2019;114.1;e;;0.0 -D;DG;WZ08-49-06;REAL;2020;111.9;e;;0.0 -D;DG;WZ08-49-06;REAL;2021;123.1;e;;0.0 -D;DG;WZ08-49-06;REAL;2022;125.6;e;;0.0 -D;DG;WZ08-49-06;REAL;2023;118.5;p;;0.0 -D;DG;WZ08-49-06;REAL;2024;115.7;p;;0.0 -D;DG;WZ08-49-07;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-07;NOMINAL;2016;100.2;e;;0.0 -D;DG;WZ08-49-07;NOMINAL;2017;108.8;e;;0.0 -D;DG;WZ08-49-07;NOMINAL;2018;117.0;e;;0.0 -D;DG;WZ08-49-07;NOMINAL;2019;121.6;e;;0.0 -D;DG;WZ08-49-07;NOMINAL;2020;116.0;e;;0.0 -D;DG;WZ08-49-07;NOMINAL;2021;154.1;e;;0.0 -D;DG;WZ08-49-07;NOMINAL;2022;183.8;e;;0.0 -D;DG;WZ08-49-07;NOMINAL;2023;147.7;p;;0.0 -D;DG;WZ08-49-07;NOMINAL;2024;148.9;p;;0.0 -D;DG;WZ08-49-07;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-07;REAL;2016;104.3;e;;0.0 -D;DG;WZ08-49-07;REAL;2017;105.6;e;;0.0 -D;DG;WZ08-49-07;REAL;2018;113.8;e;;0.0 -D;DG;WZ08-49-07;REAL;2019;121.4;e;;0.0 -D;DG;WZ08-49-07;REAL;2020;112.3;e;;0.0 -D;DG;WZ08-49-07;REAL;2021;111.2;e;;0.0 -D;DG;WZ08-49-07;REAL;2022;117.2;e;;0.0 -D;DG;WZ08-49-07;REAL;2023;122.3;p;;0.0 -D;DG;WZ08-49-07;REAL;2024;112.6;p;;0.0 -D;DG;WZ08-49-08;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-08;NOMINAL;2016;102.5;e;;0.0 -D;DG;WZ08-49-08;NOMINAL;2017;105.1;e;;0.0 -D;DG;WZ08-49-08;NOMINAL;2018;109.6;e;;0.0 -D;DG;WZ08-49-08;NOMINAL;2019;114.3;e;;0.0 -D;DG;WZ08-49-08;NOMINAL;2020;105.5;e;;0.0 -D;DG;WZ08-49-08;NOMINAL;2021;112.4;e;;0.0 -D;DG;WZ08-49-08;NOMINAL;2022;128.0;e;;0.0 -D;DG;WZ08-49-08;NOMINAL;2023;134.5;p;;0.0 -D;DG;WZ08-49-08;NOMINAL;2024;136.3;p;;0.0 -D;DG;WZ08-49-08;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-49-08;REAL;2016;103.3;e;;0.0 -D;DG;WZ08-49-08;REAL;2017;104.5;e;;0.0 -D;DG;WZ08-49-08;REAL;2018;106.7;e;;0.0 -D;DG;WZ08-49-08;REAL;2019;109.0;e;;0.0 -D;DG;WZ08-49-08;REAL;2020;106.3;e;;0.0 -D;DG;WZ08-49-08;REAL;2021;112.1;e;;0.0 -D;DG;WZ08-49-08;REAL;2022;119.5;e;;0.0 -D;DG;WZ08-49-08;REAL;2023;125.3;p;;0.0 -D;DG;WZ08-49-08;REAL;2024;122.6;p;;0.0 -D;DG;WZ08-491;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-491;NOMINAL;2016;106.0;e;;0.0 -D;DG;WZ08-491;NOMINAL;2017;110.7;e;;0.0 -D;DG;WZ08-491;NOMINAL;2018;118.6;e;;0.0 -D;DG;WZ08-491;NOMINAL;2019;128.7;e;;0.0 -D;DG;WZ08-491;NOMINAL;2020;78.2;e;;0.0 -D;DG;WZ08-491;NOMINAL;2021;83.0;e;;0.0 -D;DG;WZ08-491;NOMINAL;2022;137.8;e;;0.0 -D;DG;WZ08-491;NOMINAL;2023;165.9;p;;0.0 -D;DG;WZ08-491;NOMINAL;2024;168.2;p;;0.0 -D;DG;WZ08-491;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-491;REAL;2016;107.0;e;;0.0 -D;DG;WZ08-491;REAL;2017;108.9;e;;0.0 -D;DG;WZ08-491;REAL;2018;114.7;e;;0.0 -D;DG;WZ08-491;REAL;2019;124.4;e;;0.0 -D;DG;WZ08-491;REAL;2020;88.7;e;;0.0 -D;DG;WZ08-491;REAL;2021;95.6;e;;0.0 -D;DG;WZ08-491;REAL;2022;162.5;e;;0.0 -D;DG;WZ08-491;REAL;2023;204.2;p;;0.0 -D;DG;WZ08-491;REAL;2024;202.8;p;;0.0 -D;DG;WZ08-492;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-492;NOMINAL;2016;101.8;e;;0.0 -D;DG;WZ08-492;NOMINAL;2017;106.0;e;;0.0 -D;DG;WZ08-492;NOMINAL;2018;111.3;e;;0.0 -D;DG;WZ08-492;NOMINAL;2019;110.1;e;;0.0 -D;DG;WZ08-492;NOMINAL;2020;105.0;e;;0.0 -D;DG;WZ08-492;NOMINAL;2021;115.8;e;;0.0 -D;DG;WZ08-492;NOMINAL;2022;123.8;e;;0.0 -D;DG;WZ08-492;NOMINAL;2023;136.1;p;;0.0 -D;DG;WZ08-492;NOMINAL;2024;140.0;p;;0.0 -D;DG;WZ08-492;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-492;REAL;2016;101.1;e;;0.0 -D;DG;WZ08-492;REAL;2017;105.0;e;;0.0 -D;DG;WZ08-492;REAL;2018;108.7;e;;0.0 -D;DG;WZ08-492;REAL;2019;105.8;e;;0.0 -D;DG;WZ08-492;REAL;2020;99.2;e;;0.0 -D;DG;WZ08-492;REAL;2021;109.1;e;;0.0 -D;DG;WZ08-492;REAL;2022;113.3;e;;0.0 -D;DG;WZ08-492;REAL;2023;106.2;p;;0.0 -D;DG;WZ08-492;REAL;2024;106.6;p;;0.0 -D;DG;WZ08-4931;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-4931;NOMINAL;2016;102.5;e;;0.0 -D;DG;WZ08-4931;NOMINAL;2017;102.6;e;;0.0 -D;DG;WZ08-4931;NOMINAL;2018;105.1;e;;0.0 -D;DG;WZ08-4931;NOMINAL;2019;107.8;e;;0.0 -D;DG;WZ08-4931;NOMINAL;2020;97.3;e;;0.0 -D;DG;WZ08-4931;NOMINAL;2021;104.0;e;;0.0 -D;DG;WZ08-4931;NOMINAL;2022;114.3;e;;0.0 -D;DG;WZ08-4931;NOMINAL;2023;124.7;p;;0.0 -D;DG;WZ08-4931;NOMINAL;2024;125.4;p;;0.0 -D;DG;WZ08-4932;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-4932;NOMINAL;2016;103.8;e;;0.0 -D;DG;WZ08-4932;NOMINAL;2017;109.9;e;;0.0 -D;DG;WZ08-4932;NOMINAL;2018;113.7;e;;0.0 -D;DG;WZ08-4932;NOMINAL;2019;115.5;e;;0.0 -D;DG;WZ08-4932;NOMINAL;2020;84.0;e;;0.0 -D;DG;WZ08-4932;NOMINAL;2021;86.6;e;;0.0 -D;DG;WZ08-4932;NOMINAL;2022;109.4;e;;0.0 -D;DG;WZ08-4932;NOMINAL;2023;129.0;p;;0.0 -D;DG;WZ08-4932;NOMINAL;2024;140.4;p;;0.0 -D;DG;WZ08-4939;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-4939;NOMINAL;2016;94.9;e;;0.0 -D;DG;WZ08-4939;NOMINAL;2017;89.1;e;;0.0 -D;DG;WZ08-4939;NOMINAL;2018;88.0;e;;0.0 -D;DG;WZ08-4939;NOMINAL;2019;92.2;e;;0.0 -D;DG;WZ08-4939;NOMINAL;2020;65.6;e;;0.0 -D;DG;WZ08-4939;NOMINAL;2021;68.9;e;;0.0 -D;DG;WZ08-4939;NOMINAL;2022;88.0;e;;0.0 -D;DG;WZ08-4939;NOMINAL;2023;100.7;p;;0.0 -D;DG;WZ08-4939;NOMINAL;2024;109.0;p;;0.0 -D;DG;WZ08-493;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-493;NOMINAL;2016;101.5;e;;0.0 -D;DG;WZ08-493;NOMINAL;2017;101.3;e;;0.0 -D;DG;WZ08-493;NOMINAL;2018;103.4;e;;0.0 -D;DG;WZ08-493;NOMINAL;2019;106.3;e;;0.0 -D;DG;WZ08-493;NOMINAL;2020;90.4;e;;0.0 -D;DG;WZ08-493;NOMINAL;2021;96.0;e;;0.0 -D;DG;WZ08-493;NOMINAL;2022;109.4;e;;0.0 -D;DG;WZ08-493;NOMINAL;2023;121.3;p;;0.0 -D;DG;WZ08-493;NOMINAL;2024;124.7;p;;0.0 -D;DG;WZ08-493;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-493;REAL;2016;102.4;e;;0.0 -D;DG;WZ08-493;REAL;2017;99.8;e;;0.0 -D;DG;WZ08-493;REAL;2018;100.0;e;;0.0 -D;DG;WZ08-493;REAL;2019;102.7;e;;0.0 -D;DG;WZ08-493;REAL;2020;102.8;e;;0.0 -D;DG;WZ08-493;REAL;2021;110.9;e;;0.0 -D;DG;WZ08-493;REAL;2022;129.0;e;;0.0 -D;DG;WZ08-493;REAL;2023;149.6;p;;0.0 -D;DG;WZ08-493;REAL;2024;150.9;p;;0.0 -D;DG;WZ08-4941;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-4941;NOMINAL;2016;103.4;e;;0.0 -D;DG;WZ08-4941;NOMINAL;2017;108.5;e;;0.0 -D;DG;WZ08-4941;NOMINAL;2018;114.1;e;;0.0 -D;DG;WZ08-4941;NOMINAL;2019;117.6;e;;0.0 -D;DG;WZ08-4941;NOMINAL;2020;115.2;e;;0.0 -D;DG;WZ08-4941;NOMINAL;2021;124.6;e;;0.0 -D;DG;WZ08-4941;NOMINAL;2022;141.0;e;;0.0 -D;DG;WZ08-4941;NOMINAL;2023;144.6;p;;0.0 -D;DG;WZ08-4941;NOMINAL;2024;147.2;p;;0.0 -D;DG;WZ08-4942;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-4942;NOMINAL;2016;102.3;e;;0.0 -D;DG;WZ08-4942;NOMINAL;2017;105.7;e;;0.0 -D;DG;WZ08-4942;NOMINAL;2018;106.8;e;;0.0 -D;DG;WZ08-4942;NOMINAL;2019;111.7;e;;0.0 -D;DG;WZ08-4942;NOMINAL;2020;112.8;e;;0.0 -D;DG;WZ08-4942;NOMINAL;2021;124.8;e;;0.0 -D;DG;WZ08-4942;NOMINAL;2022;140.7;e;;0.0 -D;DG;WZ08-4942;NOMINAL;2023;143.5;p;;0.0 -D;DG;WZ08-4942;NOMINAL;2024;144.2;p;;0.0 -D;DG;WZ08-494;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-494;NOMINAL;2016;103.4;e;;0.0 -D;DG;WZ08-494;NOMINAL;2017;108.4;e;;0.0 -D;DG;WZ08-494;NOMINAL;2018;113.9;e;;0.0 -D;DG;WZ08-494;NOMINAL;2019;117.5;e;;0.0 -D;DG;WZ08-494;NOMINAL;2020;115.1;e;;0.0 -D;DG;WZ08-494;NOMINAL;2021;124.6;e;;0.0 -D;DG;WZ08-494;NOMINAL;2022;141.1;e;;0.0 -D;DG;WZ08-494;NOMINAL;2023;144.6;p;;0.0 -D;DG;WZ08-494;NOMINAL;2024;147.1;p;;0.0 -D;DG;WZ08-494;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-494;REAL;2016;104.1;e;;0.0 -D;DG;WZ08-494;REAL;2017;108.5;e;;0.0 -D;DG;WZ08-494;REAL;2018;111.3;e;;0.0 -D;DG;WZ08-494;REAL;2019;111.1;e;;0.0 -D;DG;WZ08-494;REAL;2020;108.5;e;;0.0 -D;DG;WZ08-494;REAL;2021;114.3;e;;0.0 -D;DG;WZ08-494;REAL;2022;114.2;e;;0.0 -D;DG;WZ08-494;REAL;2023;110.8;p;;0.0 -D;DG;WZ08-494;REAL;2024;106.7;p;;0.0 -D;DG;WZ08-495;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-495;NOMINAL;2016;101.2;e;;0.0 -D;DG;WZ08-495;NOMINAL;2017;97.8;e;;0.0 -D;DG;WZ08-495;NOMINAL;2018;109.7;e;;0.0 -D;DG;WZ08-495;NOMINAL;2019;141.8;e;;0.0 -D;DG;WZ08-495;NOMINAL;2020;116.0;e;;0.0 -D;DG;WZ08-495;NOMINAL;2021;107.0;e;;0.0 -D;DG;WZ08-495;NOMINAL;2022;129.7;e;;0.0 -D;DG;WZ08-495;NOMINAL;2023;126.5;p;;0.0 -D;DG;WZ08-495;NOMINAL;2024;109.4;p;;0.0 -D;DG;WZ08-495;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-495;REAL;2016;101.9;e;;0.0 -D;DG;WZ08-495;REAL;2017;97.9;e;;0.0 -D;DG;WZ08-495;REAL;2018;107.2;e;;0.0 -D;DG;WZ08-495;REAL;2019;134.2;e;;0.0 -D;DG;WZ08-495;REAL;2020;109.3;e;;0.0 -D;DG;WZ08-495;REAL;2021;98.2;e;;0.0 -D;DG;WZ08-495;REAL;2022;104.8;e;;0.0 -D;DG;WZ08-495;REAL;2023;97.0;p;;0.0 -D;DG;WZ08-495;REAL;2024;79.4;p;;0.0 -D;DG;WZ08-49;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-49;NOMINAL;2016;102.7;e;;0.0 -D;DG;WZ08-49;NOMINAL;2017;105.5;e;;0.0 -D;DG;WZ08-49;NOMINAL;2018;110.2;e;;0.0 -D;DG;WZ08-49;NOMINAL;2019;114.8;e;;0.0 -D;DG;WZ08-49;NOMINAL;2020;103.9;e;;0.0 -D;DG;WZ08-49;NOMINAL;2021;111.1;e;;0.0 -D;DG;WZ08-49;NOMINAL;2022;128.2;e;;0.0 -D;DG;WZ08-49;NOMINAL;2023;136.4;p;;0.0 -D;DG;WZ08-49;NOMINAL;2024;138.3;p;;0.0 -D;DG;WZ08-49;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-49;REAL;2016;103.4;e;;0.0 -D;DG;WZ08-49;REAL;2017;104.8;e;;0.0 -D;DG;WZ08-49;REAL;2018;107.3;e;;0.0 -D;DG;WZ08-49;REAL;2019;109.6;e;;0.0 -D;DG;WZ08-49;REAL;2020;104.8;e;;0.0 -D;DG;WZ08-49;REAL;2021;111.0;e;;0.0 -D;DG;WZ08-49;REAL;2022;121.4;e;;0.0 -D;DG;WZ08-49;REAL;2023;128.1;p;;0.0 -D;DG;WZ08-49;REAL;2024;125.8;p;;0.0 -D;DG;WZ08-50-01;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-50-01;NOMINAL;2016;89.5;e;;0.0 -D;DG;WZ08-50-01;NOMINAL;2017;102.8;e;;0.0 -D;DG;WZ08-50-01;NOMINAL;2018;113.4;e;;0.0 -D;DG;WZ08-50-01;NOMINAL;2019;120.0;e;;0.0 -D;DG;WZ08-50-01;NOMINAL;2020;100.9;e;;0.0 -D;DG;WZ08-50-01;NOMINAL;2021;168.2;e;;0.0 -D;DG;WZ08-50-01;NOMINAL;2022;215.2;e;;0.0 -D;DG;WZ08-50-01;NOMINAL;2023;137.7;p;;0.0 -D;DG;WZ08-50-01;NOMINAL;2024;136.9;p;;0.0 -D;DG;WZ08-50-01;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-50-01;REAL;2016;98.3;e;;0.0 -D;DG;WZ08-50-01;REAL;2017;94.2;e;;0.0 -D;DG;WZ08-50-01;REAL;2018;107.9;e;;0.0 -D;DG;WZ08-50-01;REAL;2019;127.5;e;;0.0 -D;DG;WZ08-50-01;REAL;2020;102.0;e;;0.0 -D;DG;WZ08-50-01;REAL;2021;81.4;e;;0.0 -D;DG;WZ08-50-01;REAL;2022;96.1;e;;0.0 -D;DG;WZ08-50-01;REAL;2023;126.1;p;;0.0 -D;DG;WZ08-50-01;REAL;2024;105.8;p;;0.0 -D;DG;WZ08-50-02;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-50-02;NOMINAL;2016;76.3;e;;0.0 -D;DG;WZ08-50-02;NOMINAL;2017;86.2;e;;0.0 -D;DG;WZ08-50-02;NOMINAL;2018;90.6;e;;0.0 -D;DG;WZ08-50-02;NOMINAL;2019;106.0;e;;0.0 -D;DG;WZ08-50-02;NOMINAL;2020;39.8;e;;0.0 -D;DG;WZ08-50-02;NOMINAL;2021;49.1;e;;0.0 -D;DG;WZ08-50-02;NOMINAL;2022;111.5;e;;0.0 -D;DG;WZ08-50-02;NOMINAL;2023;146.8;p;;0.0 -D;DG;WZ08-50-02;NOMINAL;2024;161.7;p;;0.0 -D;DG;WZ08-50-02;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-50-02;REAL;2016;81.6;e;;0.0 -D;DG;WZ08-50-02;REAL;2017;79.5;e;;0.0 -D;DG;WZ08-50-02;REAL;2018;85.9;e;;0.0 -D;DG;WZ08-50-02;REAL;2019;109.0;e;;0.0 -D;DG;WZ08-50-02;REAL;2020;38.3;e;;0.0 -D;DG;WZ08-50-02;REAL;2021;25.9;e;;0.0 -D;DG;WZ08-50-02;REAL;2022;56.8;e;;0.0 -D;DG;WZ08-50-02;REAL;2023;132.1;p;;0.0 -D;DG;WZ08-50-02;REAL;2024;122.9;p;;0.0 -D;DG;WZ08-501;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-501;NOMINAL;2016;71.5;e;;0.0 -D;DG;WZ08-501;NOMINAL;2017;80.0;e;;0.0 -D;DG;WZ08-501;NOMINAL;2018;86.7;e;;0.0 -D;DG;WZ08-501;NOMINAL;2019;106.2;e;;0.0 -D;DG;WZ08-501;NOMINAL;2020;36.9;e;;0.0 -D;DG;WZ08-501;NOMINAL;2021;45.1;e;;0.0 -D;DG;WZ08-501;NOMINAL;2022;107.8;e;;0.0 -D;DG;WZ08-501;NOMINAL;2023;144.9;p;;0.0 -D;DG;WZ08-501;NOMINAL;2024;160.5;p;;0.0 -D;DG;WZ08-501;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-501;REAL;2016;78.5;e;;0.0 -D;DG;WZ08-501;REAL;2017;73.5;e;;0.0 -D;DG;WZ08-501;REAL;2018;82.7;e;;0.0 -D;DG;WZ08-501;REAL;2019;111.4;e;;0.0 -D;DG;WZ08-501;REAL;2020;36.4;e;;0.0 -D;DG;WZ08-501;REAL;2021;20.0;e;;0.0 -D;DG;WZ08-501;REAL;2022;49.2;e;;0.0 -D;DG;WZ08-501;REAL;2023;134.9;p;;0.0 -D;DG;WZ08-501;REAL;2024;124.2;p;;0.0 -D;DG;WZ08-502;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-502;NOMINAL;2016;91.6;e;;0.0 -D;DG;WZ08-502;NOMINAL;2017;105.9;e;;0.0 -D;DG;WZ08-502;NOMINAL;2018;118.1;e;;0.0 -D;DG;WZ08-502;NOMINAL;2019;125.7;e;;0.0 -D;DG;WZ08-502;NOMINAL;2020;111.1;e;;0.0 -D;DG;WZ08-502;NOMINAL;2021;190.2;e;;0.0 -D;DG;WZ08-502;NOMINAL;2022;236.4;e;;0.0 -D;DG;WZ08-502;NOMINAL;2023;139.4;p;;0.0 -D;DG;WZ08-502;NOMINAL;2024;137.4;p;;0.0 -D;DG;WZ08-502;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-502;REAL;2016;101.7;e;;0.0 -D;DG;WZ08-502;REAL;2017;96.8;e;;0.0 -D;DG;WZ08-502;REAL;2018;112.5;e;;0.0 -D;DG;WZ08-502;REAL;2019;134.6;e;;0.0 -D;DG;WZ08-502;REAL;2020;113.2;e;;0.0 -D;DG;WZ08-502;REAL;2021;89.5;e;;0.0 -D;DG;WZ08-502;REAL;2022;101.7;e;;0.0 -D;DG;WZ08-502;REAL;2023;129.3;p;;0.0 -D;DG;WZ08-502;REAL;2024;106.9;p;;0.0 -D;DG;WZ08-503;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-503;NOMINAL;2016;104.6;e;;0.0 -D;DG;WZ08-503;NOMINAL;2017;123.3;e;;0.0 -D;DG;WZ08-503;NOMINAL;2018;114.2;e;;0.0 -D;DG;WZ08-503;NOMINAL;2019;104.9;e;;0.0 -D;DG;WZ08-503;NOMINAL;2020;57.4;e;;0.0 -D;DG;WZ08-503;NOMINAL;2021;73.0;e;;0.0 -D;DG;WZ08-503;NOMINAL;2022;133.9;e;;0.0 -D;DG;WZ08-503;NOMINAL;2023;158.7;p;;0.0 -D;DG;WZ08-503;NOMINAL;2024;169.3;p;;0.0 -D;DG;WZ08-503;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-503;REAL;2016;100.5;e;;0.0 -D;DG;WZ08-503;REAL;2017;115.6;e;;0.0 -D;DG;WZ08-503;REAL;2018;105.1;e;;0.0 -D;DG;WZ08-503;REAL;2019;94.3;e;;0.0 -D;DG;WZ08-503;REAL;2020;49.8;e;;0.0 -D;DG;WZ08-503;REAL;2021;61.9;e;;0.0 -D;DG;WZ08-503;REAL;2022;102.7;e;;0.0 -D;DG;WZ08-503;REAL;2023;114.9;p;;0.0 -D;DG;WZ08-503;REAL;2024;115.0;p;;0.0 -D;DG;WZ08-504;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-504;NOMINAL;2016;83.7;e;;0.0 -D;DG;WZ08-504;NOMINAL;2017;87.9;e;;0.0 -D;DG;WZ08-504;NOMINAL;2018;89.9;e;;0.0 -D;DG;WZ08-504;NOMINAL;2019;69.9;e;;0.0 -D;DG;WZ08-504;NOMINAL;2020;66.9;e;;0.0 -D;DG;WZ08-504;NOMINAL;2021;76.5;e;;0.0 -D;DG;WZ08-504;NOMINAL;2022;109.4;e;;0.0 -D;DG;WZ08-504;NOMINAL;2023;101.1;p;;0.0 -D;DG;WZ08-504;NOMINAL;2024;92.9;p;;0.0 -D;DG;WZ08-504;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-504;REAL;2016;81.6;e;;0.0 -D;DG;WZ08-504;REAL;2017;83.6;e;;0.0 -D;DG;WZ08-504;REAL;2018;83.7;e;;0.0 -D;DG;WZ08-504;REAL;2019;63.7;e;;0.0 -D;DG;WZ08-504;REAL;2020;58.8;e;;0.0 -D;DG;WZ08-504;REAL;2021;65.8;e;;0.0 -D;DG;WZ08-504;REAL;2022;86.0;e;;0.0 -D;DG;WZ08-504;REAL;2023;73.9;p;;0.0 -D;DG;WZ08-504;REAL;2024;64.6;p;;0.0 -D;DG;WZ08-50;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-50;NOMINAL;2016;89.5;e;;0.0 -D;DG;WZ08-50;NOMINAL;2017;102.8;e;;0.0 -D;DG;WZ08-50;NOMINAL;2018;113.4;e;;0.0 -D;DG;WZ08-50;NOMINAL;2019;120.0;e;;0.0 -D;DG;WZ08-50;NOMINAL;2020;100.9;e;;0.0 -D;DG;WZ08-50;NOMINAL;2021;168.2;e;;0.0 -D;DG;WZ08-50;NOMINAL;2022;215.2;e;;0.0 -D;DG;WZ08-50;NOMINAL;2023;137.7;p;;0.0 -D;DG;WZ08-50;NOMINAL;2024;136.9;p;;0.0 -D;DG;WZ08-50;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-50;REAL;2016;98.3;e;;0.0 -D;DG;WZ08-50;REAL;2017;94.2;e;;0.0 -D;DG;WZ08-50;REAL;2018;107.9;e;;0.0 -D;DG;WZ08-50;REAL;2019;127.5;e;;0.0 -D;DG;WZ08-50;REAL;2020;102.0;e;;0.0 -D;DG;WZ08-50;REAL;2021;81.4;e;;0.0 -D;DG;WZ08-50;REAL;2022;96.1;e;;0.0 -D;DG;WZ08-50;REAL;2023;126.1;p;;0.0 -D;DG;WZ08-50;REAL;2024;105.8;p;;0.0 -D;DG;WZ08-51-01;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-51-01;NOMINAL;2016;98.7;e;;0.0 -D;DG;WZ08-51-01;NOMINAL;2017;110.9;e;;0.0 -D;DG;WZ08-51-01;NOMINAL;2018;114.6;e;;0.0 -D;DG;WZ08-51-01;NOMINAL;2019;112.5;e;;0.0 -D;DG;WZ08-51-01;NOMINAL;2020;54.8;e;;0.0 -D;DG;WZ08-51-01;NOMINAL;2021;82.6;e;;0.0 -D;DG;WZ08-51-01;NOMINAL;2022;129.8;e;;0.0 -D;DG;WZ08-51-01;NOMINAL;2023;120.0;p;;0.0 -D;DG;WZ08-51-01;NOMINAL;2024;125.8;p;;0.0 -D;DG;WZ08-51-01;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-51-01;REAL;2016;101.3;e;;0.0 -D;DG;WZ08-51-01;REAL;2017;112.5;e;;0.0 -D;DG;WZ08-51-01;REAL;2018;118.1;e;;0.0 -D;DG;WZ08-51-01;REAL;2019;116.6;e;;0.0 -D;DG;WZ08-51-01;REAL;2020;52.7;e;;0.0 -D;DG;WZ08-51-01;REAL;2021;72.5;e;;0.0 -D;DG;WZ08-51-01;REAL;2022;102.1;e;;0.0 -D;DG;WZ08-51-01;REAL;2023;104.3;p;;0.0 -D;DG;WZ08-51-01;REAL;2024;111.6;p;;0.0 -D;DG;WZ08-511;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-511;NOMINAL;2016;94.0;e;;0.0 -D;DG;WZ08-511;NOMINAL;2017;106.7;e;;0.0 -D;DG;WZ08-511;NOMINAL;2018;107.9;e;;0.0 -D;DG;WZ08-511;NOMINAL;2019;106.2;e;;0.0 -D;DG;WZ08-511;NOMINAL;2020;32.3;e;;0.0 -D;DG;WZ08-511;NOMINAL;2021;45.9;e;;0.0 -D;DG;WZ08-511;NOMINAL;2022;88.3;e;;0.0 -D;DG;WZ08-511;NOMINAL;2023;95.1;p;;0.0 -D;DG;WZ08-511;NOMINAL;2024;100.3;p;;0.0 -D;DG;WZ08-511;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-511;REAL;2016;96.5;e;;0.0 -D;DG;WZ08-511;REAL;2017;108.2;e;;0.0 -D;DG;WZ08-511;REAL;2018;111.2;e;;0.0 -D;DG;WZ08-511;REAL;2019;109.9;e;;0.0 -D;DG;WZ08-511;REAL;2020;31.5;e;;0.0 -D;DG;WZ08-511;REAL;2021;40.2;e;;0.0 -D;DG;WZ08-511;REAL;2022;69.3;e;;0.0 -D;DG;WZ08-511;REAL;2023;82.7;p;;0.0 -D;DG;WZ08-511;REAL;2024;88.9;p;;0.0 -D;DG;WZ08-5121;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5121;NOMINAL;2016;119.8;e;;0.0 -D;DG;WZ08-5121;NOMINAL;2017;130.1;e;;0.0 -D;DG;WZ08-5121;NOMINAL;2018;145.0;e;;0.0 -D;DG;WZ08-5121;NOMINAL;2019;141.5;e;;0.0 -D;DG;WZ08-5121;NOMINAL;2020;156.8;e;;0.0 -D;DG;WZ08-5121;NOMINAL;2021;249.8;e;;0.0 -D;DG;WZ08-5121;NOMINAL;2022;318.6;e;;0.0 -D;DG;WZ08-5121;NOMINAL;2023;233.7;p;;0.0 -D;DG;WZ08-5121;NOMINAL;2024;241.9;p;;0.0 -D;DG;WZ08-512;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-512;NOMINAL;2016;119.9;e;;0.0 -D;DG;WZ08-512;NOMINAL;2017;130.1;e;;0.0 -D;DG;WZ08-512;NOMINAL;2018;145.0;e;;0.0 -D;DG;WZ08-512;NOMINAL;2019;141.5;e;;0.0 -D;DG;WZ08-512;NOMINAL;2020;156.8;e;;0.0 -D;DG;WZ08-512;NOMINAL;2021;249.8;e;;0.0 -D;DG;WZ08-512;NOMINAL;2022;318.6;e;;0.0 -D;DG;WZ08-512;NOMINAL;2023;233.7;p;;0.0 -D;DG;WZ08-512;NOMINAL;2024;241.8;p;;0.0 -D;DG;WZ08-512;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-512;REAL;2016;123.2;e;;0.0 -D;DG;WZ08-512;REAL;2017;132.1;e;;0.0 -D;DG;WZ08-512;REAL;2018;149.6;e;;0.0 -D;DG;WZ08-512;REAL;2019;146.8;e;;0.0 -D;DG;WZ08-512;REAL;2020;149.0;e;;0.0 -D;DG;WZ08-512;REAL;2021;219.3;e;;0.0 -D;DG;WZ08-512;REAL;2022;251.8;e;;0.0 -D;DG;WZ08-512;REAL;2023;202.8;p;;0.0 -D;DG;WZ08-512;REAL;2024;214.9;p;;0.0 -D;DG;WZ08-51;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-51;NOMINAL;2016;98.7;e;;0.0 -D;DG;WZ08-51;NOMINAL;2017;110.9;e;;0.0 -D;DG;WZ08-51;NOMINAL;2018;114.6;e;;0.0 -D;DG;WZ08-51;NOMINAL;2019;112.5;e;;0.0 -D;DG;WZ08-51;NOMINAL;2020;54.8;e;;0.0 -D;DG;WZ08-51;NOMINAL;2021;82.6;e;;0.0 -D;DG;WZ08-51;NOMINAL;2022;129.8;e;;0.0 -D;DG;WZ08-51;NOMINAL;2023;120.0;p;;0.0 -D;DG;WZ08-51;NOMINAL;2024;125.8;p;;0.0 -D;DG;WZ08-51;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-51;REAL;2016;101.3;e;;0.0 -D;DG;WZ08-51;REAL;2017;112.5;e;;0.0 -D;DG;WZ08-51;REAL;2018;118.1;e;;0.0 -D;DG;WZ08-51;REAL;2019;116.6;e;;0.0 -D;DG;WZ08-51;REAL;2020;52.7;e;;0.0 -D;DG;WZ08-51;REAL;2021;72.5;e;;0.0 -D;DG;WZ08-51;REAL;2022;102.1;e;;0.0 -D;DG;WZ08-51;REAL;2023;104.3;p;;0.0 -D;DG;WZ08-51;REAL;2024;111.6;p;;0.0 -D;DG;WZ08-521;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-521;NOMINAL;2016;105.9;e;;0.0 -D;DG;WZ08-521;NOMINAL;2017;136.6;e;;0.0 -D;DG;WZ08-521;NOMINAL;2018;133.4;e;;0.0 -D;DG;WZ08-521;NOMINAL;2019;143.1;e;;0.0 -D;DG;WZ08-521;NOMINAL;2020;143.5;e;;0.0 -D;DG;WZ08-521;NOMINAL;2021;168.4;e;;0.0 -D;DG;WZ08-521;NOMINAL;2022;174.6;e;;0.0 -D;DG;WZ08-521;NOMINAL;2023;174.3;p;;0.0 -D;DG;WZ08-521;NOMINAL;2024;177.1;p;;0.0 -D;DG;WZ08-521;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-521;REAL;2016;105.3;e;;0.0 -D;DG;WZ08-521;REAL;2017;135.4;e;;0.0 -D;DG;WZ08-521;REAL;2018;130.4;e;;0.0 -D;DG;WZ08-521;REAL;2019;136.3;e;;0.0 -D;DG;WZ08-521;REAL;2020;134.7;e;;0.0 -D;DG;WZ08-521;REAL;2021;154.8;e;;0.0 -D;DG;WZ08-521;REAL;2022;149.3;e;;0.0 -D;DG;WZ08-521;REAL;2023;139.3;p;;0.0 -D;DG;WZ08-521;REAL;2024;137.3;p;;0.0 -D;DG;WZ08-5221;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5221;NOMINAL;2016;103.3;e;;0.0 -D;DG;WZ08-5221;NOMINAL;2017;106.5;e;;0.0 -D;DG;WZ08-5221;NOMINAL;2018;114.0;e;;0.0 -D;DG;WZ08-5221;NOMINAL;2019;117.9;e;;0.0 -D;DG;WZ08-5221;NOMINAL;2020;113.1;e;;0.0 -D;DG;WZ08-5221;NOMINAL;2021;115.7;e;;0.0 -D;DG;WZ08-5221;NOMINAL;2022;133.8;e;;0.0 -D;DG;WZ08-5221;NOMINAL;2023;129.4;p;;0.0 -D;DG;WZ08-5221;NOMINAL;2024;156.8;p;;0.0 -D;DG;WZ08-5222;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5222;NOMINAL;2016;104.2;e;;0.0 -D;DG;WZ08-5222;NOMINAL;2017;87.9;e;;0.0 -D;DG;WZ08-5222;NOMINAL;2018;87.7;e;;0.0 -D;DG;WZ08-5222;NOMINAL;2019;100.0;e;;0.0 -D;DG;WZ08-5222;NOMINAL;2020;91.2;e;;0.0 -D;DG;WZ08-5222;NOMINAL;2021;81.9;e;;0.0 -D;DG;WZ08-5222;NOMINAL;2022;111.7;e;;0.0 -D;DG;WZ08-5222;NOMINAL;2023;88.4;p;;0.0 -D;DG;WZ08-5222;NOMINAL;2024;90.6;p;;0.0 -D;DG;WZ08-5223;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5223;NOMINAL;2016;101.3;e;;0.0 -D;DG;WZ08-5223;NOMINAL;2017;106.6;e;;0.0 -D;DG;WZ08-5223;NOMINAL;2018;113.6;e;;0.0 -D;DG;WZ08-5223;NOMINAL;2019;113.8;e;;0.0 -D;DG;WZ08-5223;NOMINAL;2020;67.2;e;;0.0 -D;DG;WZ08-5223;NOMINAL;2021;74.8;e;;0.0 -D;DG;WZ08-5223;NOMINAL;2022;98.9;e;;0.0 -D;DG;WZ08-5223;NOMINAL;2023;100.0;p;;0.0 -D;DG;WZ08-5223;NOMINAL;2024;105.1;p;;0.0 -D;DG;WZ08-5224;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5224;NOMINAL;2016;104.1;e;;0.0 -D;DG;WZ08-5224;NOMINAL;2017;102.2;e;;0.0 -D;DG;WZ08-5224;NOMINAL;2018;106.4;e;;0.0 -D;DG;WZ08-5224;NOMINAL;2019;103.9;e;;0.0 -D;DG;WZ08-5224;NOMINAL;2020;100.3;e;;0.0 -D;DG;WZ08-5224;NOMINAL;2021;113.1;e;;0.0 -D;DG;WZ08-5224;NOMINAL;2022;119.3;e;;0.0 -D;DG;WZ08-5224;NOMINAL;2023;111.9;p;;0.0 -D;DG;WZ08-5224;NOMINAL;2024;117.0;p;;0.0 -D;DG;WZ08-5229;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5229;NOMINAL;2016;100.5;e;;0.0 -D;DG;WZ08-5229;NOMINAL;2017;102.2;e;;0.0 -D;DG;WZ08-5229;NOMINAL;2018;104.3;e;;0.0 -D;DG;WZ08-5229;NOMINAL;2019;101.8;e;;0.0 -D;DG;WZ08-5229;NOMINAL;2020;98.0;e;;0.0 -D;DG;WZ08-5229;NOMINAL;2021;122.9;e;;0.0 -D;DG;WZ08-5229;NOMINAL;2022;142.3;e;;0.0 -D;DG;WZ08-5229;NOMINAL;2023;129.7;p;;0.0 -D;DG;WZ08-5229;NOMINAL;2024;132.7;p;;0.0 -D;DG;WZ08-522;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-522;NOMINAL;2016;101.1;e;;0.0 -D;DG;WZ08-522;NOMINAL;2017;102.6;e;;0.0 -D;DG;WZ08-522;NOMINAL;2018;105.6;e;;0.0 -D;DG;WZ08-522;NOMINAL;2019;104.4;e;;0.0 -D;DG;WZ08-522;NOMINAL;2020;96.5;e;;0.0 -D;DG;WZ08-522;NOMINAL;2021;116.4;e;;0.0 -D;DG;WZ08-522;NOMINAL;2022;135.9;e;;0.0 -D;DG;WZ08-522;NOMINAL;2023;125.2;p;;0.0 -D;DG;WZ08-522;NOMINAL;2024;130.8;p;;0.0 -D;DG;WZ08-522;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-522;REAL;2016;103.5;e;;0.0 -D;DG;WZ08-522;REAL;2017;102.1;e;;0.0 -D;DG;WZ08-522;REAL;2018;102.2;e;;0.0 -D;DG;WZ08-522;REAL;2019;98.2;e;;0.0 -D;DG;WZ08-522;REAL;2020;87.6;e;;0.0 -D;DG;WZ08-522;REAL;2021;94.0;e;;0.0 -D;DG;WZ08-522;REAL;2022;98.1;e;;0.0 -D;DG;WZ08-522;REAL;2023;96.6;p;;0.0 -D;DG;WZ08-522;REAL;2024;95.2;p;;0.0 -D;DG;WZ08-52;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-52;NOMINAL;2016;101.5;e;;0.0 -D;DG;WZ08-52;NOMINAL;2017;105.7;e;;0.0 -D;DG;WZ08-52;NOMINAL;2018;108.2;e;;0.0 -D;DG;WZ08-52;NOMINAL;2019;108.0;e;;0.0 -D;DG;WZ08-52;NOMINAL;2020;100.8;e;;0.0 -D;DG;WZ08-52;NOMINAL;2021;121.1;e;;0.0 -D;DG;WZ08-52;NOMINAL;2022;139.4;e;;0.0 -D;DG;WZ08-52;NOMINAL;2023;129.7;p;;0.0 -D;DG;WZ08-52;NOMINAL;2024;135.0;p;;0.0 -D;DG;WZ08-52;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-52;REAL;2016;103.7;e;;0.0 -D;DG;WZ08-52;REAL;2017;105.1;e;;0.0 -D;DG;WZ08-52;REAL;2018;104.7;e;;0.0 -D;DG;WZ08-52;REAL;2019;101.7;e;;0.0 -D;DG;WZ08-52;REAL;2020;91.9;e;;0.0 -D;DG;WZ08-52;REAL;2021;99.5;e;;0.0 -D;DG;WZ08-52;REAL;2022;102.8;e;;0.0 -D;DG;WZ08-52;REAL;2023;100.5;p;;0.0 -D;DG;WZ08-52;REAL;2024;99.1;p;;0.0 -D;DG;WZ08-532;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-532;NOMINAL;2016;108.5;e;;0.0 -D;DG;WZ08-532;NOMINAL;2017;127.9;e;;0.0 -D;DG;WZ08-532;NOMINAL;2018;116.7;e;;0.0 -D;DG;WZ08-532;NOMINAL;2019;123.9;e;;0.0 -D;DG;WZ08-532;NOMINAL;2020;137.0;e;;0.0 -D;DG;WZ08-532;NOMINAL;2021;150.6;e;;0.0 -D;DG;WZ08-532;NOMINAL;2022;153.2;e;;0.0 -D;DG;WZ08-532;NOMINAL;2023;151.5;p;;0.0 -D;DG;WZ08-532;NOMINAL;2024;155.1;p;;0.0 -D;DG;WZ08-532;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-532;REAL;2016;107.1;e;;0.0 -D;DG;WZ08-532;REAL;2017;124.3;e;;0.0 -D;DG;WZ08-532;REAL;2018;111.8;e;;0.0 -D;DG;WZ08-532;REAL;2019;114.7;e;;0.0 -D;DG;WZ08-532;REAL;2020;123.2;e;;0.0 -D;DG;WZ08-532;REAL;2021;132.1;e;;0.0 -D;DG;WZ08-532;REAL;2022;127.6;e;;0.0 -D;DG;WZ08-532;REAL;2023;121.1;p;;0.0 -D;DG;WZ08-532;REAL;2024;119.6;p;;0.0 -D;DG;WZ08-53;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-53;NOMINAL;2016;108.5;e;;0.0 -D;DG;WZ08-53;NOMINAL;2017;127.9;e;;0.0 -D;DG;WZ08-53;NOMINAL;2018;116.7;e;;0.0 -D;DG;WZ08-53;NOMINAL;2019;123.9;e;;0.0 -D;DG;WZ08-53;NOMINAL;2020;137.0;e;;0.0 -D;DG;WZ08-53;NOMINAL;2021;150.6;e;;0.0 -D;DG;WZ08-53;NOMINAL;2022;153.2;e;;0.0 -D;DG;WZ08-53;NOMINAL;2023;151.5;p;;0.0 -D;DG;WZ08-53;NOMINAL;2024;155.1;p;;0.0 -D;DG;WZ08-53;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-53;REAL;2016;107.1;e;;0.0 -D;DG;WZ08-53;REAL;2017;124.3;e;;0.0 -D;DG;WZ08-53;REAL;2018;111.8;e;;0.0 -D;DG;WZ08-53;REAL;2019;114.7;e;;0.0 -D;DG;WZ08-53;REAL;2020;123.2;e;;0.0 -D;DG;WZ08-53;REAL;2021;132.1;e;;0.0 -D;DG;WZ08-53;REAL;2022;127.6;e;;0.0 -D;DG;WZ08-53;REAL;2023;121.1;p;;0.0 -D;DG;WZ08-53;REAL;2024;119.6;p;;0.0 -D;DG;WZ08-551;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-551;NOMINAL;2016;105.7;e;;0.0 -D;DG;WZ08-551;NOMINAL;2017;109.5;e;;0.0 -D;DG;WZ08-551;NOMINAL;2018;115.9;e;;0.0 -D;DG;WZ08-551;NOMINAL;2019;120.4;e;;0.0 -D;DG;WZ08-551;NOMINAL;2020;64.7;e;;0.0 -D;DG;WZ08-551;NOMINAL;2021;74.1;e;;0.0 -D;DG;WZ08-551;NOMINAL;2022;133.7;e;;0.0 -D;DG;WZ08-551;NOMINAL;2023;148.8;p;;0.0 -D;DG;WZ08-551;NOMINAL;2024;152.7;p;;0.0 -D;DG;WZ08-551;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-551;REAL;2016;103.7;e;;0.0 -D;DG;WZ08-551;REAL;2017;105.4;e;;0.0 -D;DG;WZ08-551;REAL;2018;109.2;e;;0.0 -D;DG;WZ08-551;REAL;2019;111.2;e;;0.0 -D;DG;WZ08-551;REAL;2020;58.7;e;;0.0 -D;DG;WZ08-551;REAL;2021;66.5;e;;0.0 -D;DG;WZ08-551;REAL;2022;110.7;e;;0.0 -D;DG;WZ08-551;REAL;2023;114.3;p;;0.0 -D;DG;WZ08-551;REAL;2024;116.1;p;;0.0 -D;DG;WZ08-552;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-552;NOMINAL;2016;105.7;e;;0.0 -D;DG;WZ08-552;NOMINAL;2017;107.0;e;;0.0 -D;DG;WZ08-552;NOMINAL;2018;109.8;e;;0.0 -D;DG;WZ08-552;NOMINAL;2019;114.0;e;;0.0 -D;DG;WZ08-552;NOMINAL;2020;75.8;e;;0.0 -D;DG;WZ08-552;NOMINAL;2021;90.2;e;;0.0 -D;DG;WZ08-552;NOMINAL;2022;147.1;e;;0.0 -D;DG;WZ08-552;NOMINAL;2023;155.9;p;;0.0 -D;DG;WZ08-552;NOMINAL;2024;154.7;p;;0.0 -D;DG;WZ08-552;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-552;REAL;2016;103.7;e;;0.0 -D;DG;WZ08-552;REAL;2017;102.2;e;;0.0 -D;DG;WZ08-552;REAL;2018;102.4;e;;0.0 -D;DG;WZ08-552;REAL;2019;104.2;e;;0.0 -D;DG;WZ08-552;REAL;2020;66.1;e;;0.0 -D;DG;WZ08-552;REAL;2021;76.7;e;;0.0 -D;DG;WZ08-552;REAL;2022;119.1;e;;0.0 -D;DG;WZ08-552;REAL;2023;116.8;p;;0.0 -D;DG;WZ08-552;REAL;2024;111.8;p;;0.0 -D;DG;WZ08-553;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-553;NOMINAL;2016;100.9;e;;0.0 -D;DG;WZ08-553;NOMINAL;2017;110.8;e;;0.0 -D;DG;WZ08-553;NOMINAL;2018;120.4;e;;0.0 -D;DG;WZ08-553;NOMINAL;2019;123.1;e;;0.0 -D;DG;WZ08-553;NOMINAL;2020;118.8;e;;0.0 -D;DG;WZ08-553;NOMINAL;2021;126.1;e;;0.0 -D;DG;WZ08-553;NOMINAL;2022;151.0;e;;0.0 -D;DG;WZ08-553;NOMINAL;2023;157.8;p;;0.0 -D;DG;WZ08-553;NOMINAL;2024;158.3;p;;0.0 -D;DG;WZ08-553;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-553;REAL;2016;98.7;e;;0.0 -D;DG;WZ08-553;REAL;2017;106.8;e;;0.0 -D;DG;WZ08-553;REAL;2018;114.0;e;;0.0 -D;DG;WZ08-553;REAL;2019;114.4;e;;0.0 -D;DG;WZ08-553;REAL;2020;106.1;e;;0.0 -D;DG;WZ08-553;REAL;2021;108.1;e;;0.0 -D;DG;WZ08-553;REAL;2022;122.6;e;;0.0 -D;DG;WZ08-553;REAL;2023;120.9;p;;0.0 -D;DG;WZ08-553;REAL;2024;116.7;p;;0.0 -D;DG;WZ08-55;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-55;NOMINAL;2016;105.7;e;;0.0 -D;DG;WZ08-55;NOMINAL;2017;109.4;e;;0.0 -D;DG;WZ08-55;NOMINAL;2018;115.7;e;;0.0 -D;DG;WZ08-55;NOMINAL;2019;120.1;e;;0.0 -D;DG;WZ08-55;NOMINAL;2020;66.4;e;;0.0 -D;DG;WZ08-55;NOMINAL;2021;76.1;e;;0.0 -D;DG;WZ08-55;NOMINAL;2022;134.7;e;;0.0 -D;DG;WZ08-55;NOMINAL;2023;149.3;p;;0.0 -D;DG;WZ08-55;NOMINAL;2024;152.8;p;;0.0 -D;DG;WZ08-55;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-55;REAL;2016;103.8;e;;0.0 -D;DG;WZ08-55;REAL;2017;105.4;e;;0.0 -D;DG;WZ08-55;REAL;2018;109.0;e;;0.0 -D;DG;WZ08-55;REAL;2019;110.8;e;;0.0 -D;DG;WZ08-55;REAL;2020;60.1;e;;0.0 -D;DG;WZ08-55;REAL;2021;67.9;e;;0.0 -D;DG;WZ08-55;REAL;2022;111.3;e;;0.0 -D;DG;WZ08-55;REAL;2023;114.5;p;;0.0 -D;DG;WZ08-55;REAL;2024;115.8;p;;0.0 -D;DG;WZ08-561-01;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-561-01;NOMINAL;2016;103.1;e;;0.0 -D;DG;WZ08-561-01;NOMINAL;2017;108.7;e;;0.0 -D;DG;WZ08-561-01;NOMINAL;2018;113.8;e;;0.0 -D;DG;WZ08-561-01;NOMINAL;2019;119.4;e;;0.0 -D;DG;WZ08-561-01;NOMINAL;2020;80.3;e;;0.0 -D;DG;WZ08-561-01;NOMINAL;2021;84.0;e;;0.0 -D;DG;WZ08-561-01;NOMINAL;2022;120.0;e;;0.0 -D;DG;WZ08-561-01;NOMINAL;2023;128.3;p;;0.0 -D;DG;WZ08-561-01;NOMINAL;2024;126.6;p;;0.0 -D;DG;WZ08-561-01;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-561-01;REAL;2016;100.6;e;;0.0 -D;DG;WZ08-561-01;REAL;2017;103.9;e;;0.0 -D;DG;WZ08-561-01;REAL;2018;106.4;e;;0.0 -D;DG;WZ08-561-01;REAL;2019;108.5;e;;0.0 -D;DG;WZ08-561-01;REAL;2020;69.4;e;;0.0 -D;DG;WZ08-561-01;REAL;2021;70.1;e;;0.0 -D;DG;WZ08-561-01;REAL;2022;93.8;e;;0.0 -D;DG;WZ08-561-01;REAL;2023;90.4;p;;0.0 -D;DG;WZ08-561-01;REAL;2024;88.9;p;;0.0 -D;DG;WZ08-561;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-561;NOMINAL;2016;103.3;e;;0.0 -D;DG;WZ08-561;NOMINAL;2017;109.0;e;;0.0 -D;DG;WZ08-561;NOMINAL;2018;114.1;e;;0.0 -D;DG;WZ08-561;NOMINAL;2019;120.2;e;;0.0 -D;DG;WZ08-561;NOMINAL;2020;83.6;e;;0.0 -D;DG;WZ08-561;NOMINAL;2021;87.5;e;;0.0 -D;DG;WZ08-561;NOMINAL;2022;123.3;e;;0.0 -D;DG;WZ08-561;NOMINAL;2023;132.2;p;;0.0 -D;DG;WZ08-561;NOMINAL;2024;130.6;p;;0.0 -D;DG;WZ08-561;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-561;REAL;2016;100.8;e;;0.0 -D;DG;WZ08-561;REAL;2017;104.2;e;;0.0 -D;DG;WZ08-561;REAL;2018;106.7;e;;0.0 -D;DG;WZ08-561;REAL;2019;109.3;e;;0.0 -D;DG;WZ08-561;REAL;2020;72.2;e;;0.0 -D;DG;WZ08-561;REAL;2021;73.1;e;;0.0 -D;DG;WZ08-561;REAL;2022;96.7;e;;0.0 -D;DG;WZ08-561;REAL;2023;93.0;p;;0.0 -D;DG;WZ08-561;REAL;2024;91.8;p;;0.0 -D;DG;WZ08-562;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-562;NOMINAL;2016;103.5;e;;0.0 -D;DG;WZ08-562;NOMINAL;2017;106.7;e;;0.0 -D;DG;WZ08-562;NOMINAL;2018;111.3;e;;0.0 -D;DG;WZ08-562;NOMINAL;2019;116.3;e;;0.0 -D;DG;WZ08-562;NOMINAL;2020;85.0;e;;0.0 -D;DG;WZ08-562;NOMINAL;2021;86.2;e;;0.0 -D;DG;WZ08-562;NOMINAL;2022;116.7;e;;0.0 -D;DG;WZ08-562;NOMINAL;2023;130.5;p;;0.0 -D;DG;WZ08-562;NOMINAL;2024;135.8;p;;0.0 -D;DG;WZ08-562;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-562;REAL;2016;101.6;e;;0.0 -D;DG;WZ08-562;REAL;2017;102.5;e;;0.0 -D;DG;WZ08-562;REAL;2018;105.4;e;;0.0 -D;DG;WZ08-562;REAL;2019;107.9;e;;0.0 -D;DG;WZ08-562;REAL;2020;76.9;e;;0.0 -D;DG;WZ08-562;REAL;2021;75.9;e;;0.0 -D;DG;WZ08-562;REAL;2022;95.8;e;;0.0 -D;DG;WZ08-562;REAL;2023;97.3;p;;0.0 -D;DG;WZ08-562;REAL;2024;97.4;p;;0.0 -D;DG;WZ08-563;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-563;NOMINAL;2016;101.4;e;;0.0 -D;DG;WZ08-563;NOMINAL;2017;106.6;e;;0.0 -D;DG;WZ08-563;NOMINAL;2018;111.6;e;;0.0 -D;DG;WZ08-563;NOMINAL;2019;112.8;e;;0.0 -D;DG;WZ08-563;NOMINAL;2020;54.9;e;;0.0 -D;DG;WZ08-563;NOMINAL;2021;56.6;e;;0.0 -D;DG;WZ08-563;NOMINAL;2022;94.3;e;;0.0 -D;DG;WZ08-563;NOMINAL;2023;97.0;p;;0.0 -D;DG;WZ08-563;NOMINAL;2024;94.6;p;;0.0 -D;DG;WZ08-563;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-563;REAL;2016;99.3;e;;0.0 -D;DG;WZ08-563;REAL;2017;102.3;e;;0.0 -D;DG;WZ08-563;REAL;2018;104.9;e;;0.0 -D;DG;WZ08-563;REAL;2019;103.4;e;;0.0 -D;DG;WZ08-563;REAL;2020;47.4;e;;0.0 -D;DG;WZ08-563;REAL;2021;46.0;e;;0.0 -D;DG;WZ08-563;REAL;2022;70.5;e;;0.0 -D;DG;WZ08-563;REAL;2023;70.1;p;;0.0 -D;DG;WZ08-563;REAL;2024;65.9;p;;0.0 -D;DG;WZ08-56;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-56;NOMINAL;2016;103.1;e;;0.0 -D;DG;WZ08-56;NOMINAL;2017;108.3;e;;0.0 -D;DG;WZ08-56;NOMINAL;2018;113.2;e;;0.0 -D;DG;WZ08-56;NOMINAL;2019;118.7;e;;0.0 -D;DG;WZ08-56;NOMINAL;2020;81.4;e;;0.0 -D;DG;WZ08-56;NOMINAL;2021;84.5;e;;0.0 -D;DG;WZ08-56;NOMINAL;2022;119.3;e;;0.0 -D;DG;WZ08-56;NOMINAL;2023;128.8;p;;0.0 -D;DG;WZ08-56;NOMINAL;2024;128.6;p;;0.0 -D;DG;WZ08-56;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-56;REAL;2016;100.8;e;;0.0 -D;DG;WZ08-56;REAL;2017;103.6;e;;0.0 -D;DG;WZ08-56;REAL;2018;106.2;e;;0.0 -D;DG;WZ08-56;REAL;2019;108.4;e;;0.0 -D;DG;WZ08-56;REAL;2020;71.0;e;;0.0 -D;DG;WZ08-56;REAL;2021;71.4;e;;0.0 -D;DG;WZ08-56;REAL;2022;94.2;e;;0.0 -D;DG;WZ08-56;REAL;2023;91.9;p;;0.0 -D;DG;WZ08-56;REAL;2024;90.8;p;;0.0 -D;DG;WZ08-58-02;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-58-02;NOMINAL;2016;102.6;e;;0.0 -D;DG;WZ08-58-02;NOMINAL;2017;104.8;e;;0.0 -D;DG;WZ08-58-02;NOMINAL;2018;102.7;e;;0.0 -D;DG;WZ08-58-02;NOMINAL;2019;101.8;e;;0.0 -D;DG;WZ08-58-02;NOMINAL;2020;96.2;e;;0.0 -D;DG;WZ08-58-02;NOMINAL;2021;102.2;e;;0.0 -D;DG;WZ08-58-02;NOMINAL;2022;109.2;e;;0.0 -D;DG;WZ08-58-02;NOMINAL;2023;111.1;p;;0.0 -D;DG;WZ08-58-02;NOMINAL;2024;112.2;p;;0.0 -D;DG;WZ08-58-02;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-58-02;REAL;2016;100.9;e;;0.0 -D;DG;WZ08-58-02;REAL;2017;101.7;e;;0.0 -D;DG;WZ08-58-02;REAL;2018;99.0;e;;0.0 -D;DG;WZ08-58-02;REAL;2019;96.3;e;;0.0 -D;DG;WZ08-58-02;REAL;2020;90.4;e;;0.0 -D;DG;WZ08-58-02;REAL;2021;94.7;e;;0.0 -D;DG;WZ08-58-02;REAL;2022;98.2;e;;0.0 -D;DG;WZ08-58-02;REAL;2023;96.0;p;;0.0 -D;DG;WZ08-58-02;REAL;2024;94.0;p;;0.0 -D;DG;WZ08-58-03;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-58-03;NOMINAL;2016;112.4;e;;0.0 -D;DG;WZ08-58-03;NOMINAL;2017;110.0;e;;0.0 -D;DG;WZ08-58-03;NOMINAL;2018;102.1;e;;0.0 -D;DG;WZ08-58-03;NOMINAL;2019;100.0;e;;0.0 -D;DG;WZ08-58-03;NOMINAL;2020;92.7;e;;0.0 -D;DG;WZ08-58-03;NOMINAL;2021;97.9;e;;0.0 -D;DG;WZ08-58-03;NOMINAL;2022;104.5;e;;0.0 -D;DG;WZ08-58-03;NOMINAL;2023;104.8;p;;0.0 -D;DG;WZ08-58-03;NOMINAL;2024;104.8;p;;0.0 -D;DG;WZ08-58-03;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-58-03;REAL;2016;110.5;e;;0.0 -D;DG;WZ08-58-03;REAL;2017;106.8;e;;0.0 -D;DG;WZ08-58-03;REAL;2018;98.3;e;;0.0 -D;DG;WZ08-58-03;REAL;2019;94.3;e;;0.0 -D;DG;WZ08-58-03;REAL;2020;86.7;e;;0.0 -D;DG;WZ08-58-03;REAL;2021;90.1;e;;0.0 -D;DG;WZ08-58-03;REAL;2022;93.1;e;;0.0 -D;DG;WZ08-58-03;REAL;2023;89.6;p;;0.0 -D;DG;WZ08-58-03;REAL;2024;86.7;p;;0.0 -D;DG;WZ08-58-04;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-58-04;NOMINAL;2016;109.7;e;;0.0 -D;DG;WZ08-58-04;NOMINAL;2017;104.8;e;;0.0 -D;DG;WZ08-58-04;NOMINAL;2018;114.0;e;;0.0 -D;DG;WZ08-58-04;NOMINAL;2019;115.6;e;;0.0 -D;DG;WZ08-58-04;NOMINAL;2020;117.2;e;;0.0 -D;DG;WZ08-58-04;NOMINAL;2021;125.2;e;;0.0 -D;DG;WZ08-58-04;NOMINAL;2022;137.4;e;;0.0 -D;DG;WZ08-58-04;NOMINAL;2023;146.7;p;;0.0 -D;DG;WZ08-58-04;NOMINAL;2024;154.0;p;;0.0 -D;DG;WZ08-58-04;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-58-04;REAL;2016;110.5;e;;0.0 -D;DG;WZ08-58-04;REAL;2017;105.8;e;;0.0 -D;DG;WZ08-58-04;REAL;2018;114.1;e;;0.0 -D;DG;WZ08-58-04;REAL;2019;115.0;e;;0.0 -D;DG;WZ08-58-04;REAL;2020;115.9;e;;0.0 -D;DG;WZ08-58-04;REAL;2021;122.5;e;;0.0 -D;DG;WZ08-58-04;REAL;2022;132.7;e;;0.0 -D;DG;WZ08-58-04;REAL;2023;138.5;p;;0.0 -D;DG;WZ08-58-04;REAL;2024;143.8;p;;0.0 -D;DG;WZ08-58-05;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-58-05;NOMINAL;2016;106.5;e;;0.0 -D;DG;WZ08-58-05;NOMINAL;2017;112.9;e;;0.0 -D;DG;WZ08-58-05;NOMINAL;2018;122.8;e;;0.0 -D;DG;WZ08-58-05;NOMINAL;2019;127.4;e;;0.0 -D;DG;WZ08-58-05;NOMINAL;2020;127.8;e;;0.0 -D;DG;WZ08-58-05;NOMINAL;2021;139.9;e;;0.0 -D;DG;WZ08-58-05;NOMINAL;2022;156.1;e;;0.0 -D;DG;WZ08-58-05;NOMINAL;2023;165.8;p;;0.0 -D;DG;WZ08-58-05;NOMINAL;2024;174.9;p;;0.0 -D;DG;WZ08-58-05;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-58-05;REAL;2016;107.0;e;;0.0 -D;DG;WZ08-58-05;REAL;2017;113.2;e;;0.0 -D;DG;WZ08-58-05;REAL;2018;122.4;e;;0.0 -D;DG;WZ08-58-05;REAL;2019;126.4;e;;0.0 -D;DG;WZ08-58-05;REAL;2020;126.4;e;;0.0 -D;DG;WZ08-58-05;REAL;2021;137.6;e;;0.0 -D;DG;WZ08-58-05;REAL;2022;151.9;e;;0.0 -D;DG;WZ08-58-05;REAL;2023;157.5;p;;0.0 -D;DG;WZ08-58-05;REAL;2024;162.9;p;;0.0 -D;DG;WZ08-5811;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5811;NOMINAL;2016;100.4;e;;0.0 -D;DG;WZ08-5811;NOMINAL;2017;103.4;e;;0.0 -D;DG;WZ08-5811;NOMINAL;2018;100.2;e;;0.0 -D;DG;WZ08-5811;NOMINAL;2019;98.6;e;;0.0 -D;DG;WZ08-5811;NOMINAL;2020;99.5;e;;0.0 -D;DG;WZ08-5811;NOMINAL;2021;106.6;e;;0.0 -D;DG;WZ08-5811;NOMINAL;2022;108.1;e;;0.0 -D;DG;WZ08-5811;NOMINAL;2023;113.3;p;;0.0 -D;DG;WZ08-5811;NOMINAL;2024;115.3;p;;0.0 -D;DG;WZ08-5812;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5812;NOMINAL;2016;84.0;e;;0.0 -D;DG;WZ08-5812;NOMINAL;2017;79.4;e;;0.0 -D;DG;WZ08-5812;NOMINAL;2018;71.6;e;;0.0 -D;DG;WZ08-5812;NOMINAL;2019;68.0;e;;0.0 -D;DG;WZ08-5812;NOMINAL;2020;68.9;e;;0.0 -D;DG;WZ08-5812;NOMINAL;2021;60.1;e;;0.0 -D;DG;WZ08-5812;NOMINAL;2022;55.5;e;;0.0 -D;DG;WZ08-5812;NOMINAL;2023;51.6;p;;0.0 -D;DG;WZ08-5812;NOMINAL;2024;49.8;p;;0.0 -D;DG;WZ08-5813;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5813;NOMINAL;2016;98.5;e;;0.0 -D;DG;WZ08-5813;NOMINAL;2017;100.2;e;;0.0 -D;DG;WZ08-5813;NOMINAL;2018;95.2;e;;0.0 -D;DG;WZ08-5813;NOMINAL;2019;93.2;e;;0.0 -D;DG;WZ08-5813;NOMINAL;2020;88.1;e;;0.0 -D;DG;WZ08-5813;NOMINAL;2021;92.3;e;;0.0 -D;DG;WZ08-5813;NOMINAL;2022;94.7;e;;0.0 -D;DG;WZ08-5813;NOMINAL;2023;95.4;p;;0.0 -D;DG;WZ08-5813;NOMINAL;2024;93.0;p;;0.0 -D;DG;WZ08-5814;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5814;NOMINAL;2016;99.1;e;;0.0 -D;DG;WZ08-5814;NOMINAL;2017;96.7;e;;0.0 -D;DG;WZ08-5814;NOMINAL;2018;94.3;e;;0.0 -D;DG;WZ08-5814;NOMINAL;2019;92.7;e;;0.0 -D;DG;WZ08-5814;NOMINAL;2020;89.9;e;;0.0 -D;DG;WZ08-5814;NOMINAL;2021;85.8;e;;0.0 -D;DG;WZ08-5814;NOMINAL;2022;91.2;e;;0.0 -D;DG;WZ08-5814;NOMINAL;2023;91.0;p;;0.0 -D;DG;WZ08-5814;NOMINAL;2024;90.0;p;;0.0 -D;DG;WZ08-5819;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5819;NOMINAL;2016;104.4;e;;0.0 -D;DG;WZ08-5819;NOMINAL;2017;96.8;e;;0.0 -D;DG;WZ08-5819;NOMINAL;2018;99.3;e;;0.0 -D;DG;WZ08-5819;NOMINAL;2019;96.0;e;;0.0 -D;DG;WZ08-5819;NOMINAL;2020;88.6;e;;0.0 -D;DG;WZ08-5819;NOMINAL;2021;92.6;e;;0.0 -D;DG;WZ08-5819;NOMINAL;2022;98.7;e;;0.0 -D;DG;WZ08-5819;NOMINAL;2023;97.9;p;;0.0 -D;DG;WZ08-5819;NOMINAL;2024;98.9;p;;0.0 -D;DG;WZ08-581;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-581;NOMINAL;2016;98.7;e;;0.0 -D;DG;WZ08-581;NOMINAL;2017;98.4;e;;0.0 -D;DG;WZ08-581;NOMINAL;2018;95.0;e;;0.0 -D;DG;WZ08-581;NOMINAL;2019;92.9;e;;0.0 -D;DG;WZ08-581;NOMINAL;2020;89.7;e;;0.0 -D;DG;WZ08-581;NOMINAL;2021;91.5;e;;0.0 -D;DG;WZ08-581;NOMINAL;2022;94.4;e;;0.0 -D;DG;WZ08-581;NOMINAL;2023;95.3;p;;0.0 -D;DG;WZ08-581;NOMINAL;2024;94.5;p;;0.0 -D;DG;WZ08-581;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-581;REAL;2016;96.5;e;;0.0 -D;DG;WZ08-581;REAL;2017;94.6;e;;0.0 -D;DG;WZ08-581;REAL;2018;90.1;e;;0.0 -D;DG;WZ08-581;REAL;2019;85.2;e;;0.0 -D;DG;WZ08-581;REAL;2020;81.7;e;;0.0 -D;DG;WZ08-581;REAL;2021;81.6;e;;0.0 -D;DG;WZ08-581;REAL;2022;82.0;e;;0.0 -D;DG;WZ08-581;REAL;2023;78.6;p;;0.0 -D;DG;WZ08-581;REAL;2024;74.8;p;;0.0 -D;DG;WZ08-5821;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5821;NOMINAL;2016;113.1;e;;0.0 -D;DG;WZ08-5821;NOMINAL;2017;136.7;e;;0.0 -D;DG;WZ08-5821;NOMINAL;2018;114.7;e;;0.0 -D;DG;WZ08-5821;NOMINAL;2019;101.8;e;;0.0 -D;DG;WZ08-5821;NOMINAL;2020;150.8;e;;0.0 -D;DG;WZ08-5821;NOMINAL;2021;149.8;e;;0.0 -D;DG;WZ08-5821;NOMINAL;2022;171.4;e;;0.0 -D;DG;WZ08-5821;NOMINAL;2023;197.0;p;;0.0 -D;DG;WZ08-5821;NOMINAL;2024;190.6;p;;0.0 -D;DG;WZ08-5829;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5829;NOMINAL;2016;111.0;e;;0.0 -D;DG;WZ08-5829;NOMINAL;2017;116.9;e;;0.0 -D;DG;WZ08-5829;NOMINAL;2018;114.8;e;;0.0 -D;DG;WZ08-5829;NOMINAL;2019;123.8;e;;0.0 -D;DG;WZ08-5829;NOMINAL;2020;122.0;e;;0.0 -D;DG;WZ08-5829;NOMINAL;2021;145.0;e;;0.0 -D;DG;WZ08-5829;NOMINAL;2022;153.5;e;;0.0 -D;DG;WZ08-5829;NOMINAL;2023;168.7;p;;0.0 -D;DG;WZ08-5829;NOMINAL;2024;183.8;p;;0.0 -D;DG;WZ08-582;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-582;NOMINAL;2016;111.2;e;;0.0 -D;DG;WZ08-582;NOMINAL;2017;118.6;e;;0.0 -D;DG;WZ08-582;NOMINAL;2018;114.8;e;;0.0 -D;DG;WZ08-582;NOMINAL;2019;122.0;e;;0.0 -D;DG;WZ08-582;NOMINAL;2020;124.4;e;;0.0 -D;DG;WZ08-582;NOMINAL;2021;145.4;e;;0.0 -D;DG;WZ08-582;NOMINAL;2022;155.0;e;;0.0 -D;DG;WZ08-582;NOMINAL;2023;171.0;p;;0.0 -D;DG;WZ08-582;NOMINAL;2024;184.4;p;;0.0 -D;DG;WZ08-582;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-582;REAL;2016;111.2;e;;0.0 -D;DG;WZ08-582;REAL;2017;117.8;e;;0.0 -D;DG;WZ08-582;REAL;2018;113.9;e;;0.0 -D;DG;WZ08-582;REAL;2019;121.0;e;;0.0 -D;DG;WZ08-582;REAL;2020;122.8;e;;0.0 -D;DG;WZ08-582;REAL;2021;143.3;e;;0.0 -D;DG;WZ08-582;REAL;2022;149.7;e;;0.0 -D;DG;WZ08-582;REAL;2023;159.6;p;;0.0 -D;DG;WZ08-582;REAL;2024;168.7;p;;0.0 -D;DG;WZ08-58;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-58;NOMINAL;2016;101.0;e;;0.0 -D;DG;WZ08-58;NOMINAL;2017;102.1;e;;0.0 -D;DG;WZ08-58;NOMINAL;2018;98.6;e;;0.0 -D;DG;WZ08-58;NOMINAL;2019;98.2;e;;0.0 -D;DG;WZ08-58;NOMINAL;2020;96.0;e;;0.0 -D;DG;WZ08-58;NOMINAL;2021;101.3;e;;0.0 -D;DG;WZ08-58;NOMINAL;2022;105.5;e;;0.0 -D;DG;WZ08-58;NOMINAL;2023;109.1;p;;0.0 -D;DG;WZ08-58;NOMINAL;2024;110.9;p;;0.0 -D;DG;WZ08-58;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-58;REAL;2016;99.1;e;;0.0 -D;DG;WZ08-58;REAL;2017;98.9;e;;0.0 -D;DG;WZ08-58;REAL;2018;94.4;e;;0.0 -D;DG;WZ08-58;REAL;2019;91.7;e;;0.0 -D;DG;WZ08-58;REAL;2020;89.1;e;;0.0 -D;DG;WZ08-58;REAL;2021;92.9;e;;0.0 -D;DG;WZ08-58;REAL;2022;94.4;e;;0.0 -D;DG;WZ08-58;REAL;2023;93.4;p;;0.0 -D;DG;WZ08-58;REAL;2024;91.9;p;;0.0 -D;DG;WZ08-5911;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5911;NOMINAL;2016;115.4;e;;0.0 -D;DG;WZ08-5911;NOMINAL;2017;105.0;e;;0.0 -D;DG;WZ08-5911;NOMINAL;2018;116.3;e;;0.0 -D;DG;WZ08-5911;NOMINAL;2019;120.7;e;;0.0 -D;DG;WZ08-5911;NOMINAL;2020;100.6;e;;0.0 -D;DG;WZ08-5911;NOMINAL;2021;112.8;e;;0.0 -D;DG;WZ08-5911;NOMINAL;2022;144.5;e;;0.0 -D;DG;WZ08-5911;NOMINAL;2023;149.7;p;;0.0 -D;DG;WZ08-5911;NOMINAL;2024;154.7;p;;0.0 -D;DG;WZ08-5912;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5912;NOMINAL;2016;101.7;e;;0.0 -D;DG;WZ08-5912;NOMINAL;2017;124.6;e;;0.0 -D;DG;WZ08-5912;NOMINAL;2018;126.0;e;;0.0 -D;DG;WZ08-5912;NOMINAL;2019;132.2;e;;0.0 -D;DG;WZ08-5912;NOMINAL;2020;120.6;e;;0.0 -D;DG;WZ08-5912;NOMINAL;2021;133.9;e;;0.0 -D;DG;WZ08-5912;NOMINAL;2022;162.4;e;;0.0 -D;DG;WZ08-5912;NOMINAL;2023;152.0;p;;0.0 -D;DG;WZ08-5912;NOMINAL;2024;136.2;p;;0.0 -D;DG;WZ08-5913;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5913;NOMINAL;2016;107.3;e;;0.0 -D;DG;WZ08-5913;NOMINAL;2017;92.1;e;;0.0 -D;DG;WZ08-5913;NOMINAL;2018;101.6;e;;0.0 -D;DG;WZ08-5913;NOMINAL;2019;90.1;e;;0.0 -D;DG;WZ08-5913;NOMINAL;2020;88.3;e;;0.0 -D;DG;WZ08-5913;NOMINAL;2021;81.1;e;;0.0 -D;DG;WZ08-5913;NOMINAL;2022;90.4;e;;0.0 -D;DG;WZ08-5913;NOMINAL;2023;78.0;p;;0.0 -D;DG;WZ08-5913;NOMINAL;2024;72.3;p;;0.0 -D;DG;WZ08-5914;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-5914;NOMINAL;2016;90.6;e;;0.0 -D;DG;WZ08-5914;NOMINAL;2017;92.5;e;;0.0 -D;DG;WZ08-5914;NOMINAL;2018;83.9;e;;0.0 -D;DG;WZ08-5914;NOMINAL;2019;95.9;e;;0.0 -D;DG;WZ08-5914;NOMINAL;2020;30.4;e;;0.0 -D;DG;WZ08-5914;NOMINAL;2021;45.6;e;;0.0 -D;DG;WZ08-5914;NOMINAL;2022;85.5;e;;0.0 -D;DG;WZ08-5914;NOMINAL;2023;109.0;p;;0.0 -D;DG;WZ08-5914;NOMINAL;2024;100.8;p;;0.0 -D;DG;WZ08-591;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-591;NOMINAL;2016;108.6;e;;0.0 -D;DG;WZ08-591;NOMINAL;2017;101.1;e;;0.0 -D;DG;WZ08-591;NOMINAL;2018;107.8;e;;0.0 -D;DG;WZ08-591;NOMINAL;2019;110.9;e;;0.0 -D;DG;WZ08-591;NOMINAL;2020;85.8;e;;0.0 -D;DG;WZ08-591;NOMINAL;2021;95.1;e;;0.0 -D;DG;WZ08-591;NOMINAL;2022;124.1;e;;0.0 -D;DG;WZ08-591;NOMINAL;2023;129.0;p;;0.0 -D;DG;WZ08-591;NOMINAL;2024;128.6;p;;0.0 -D;DG;WZ08-591;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-591;REAL;2016;107.0;e;;0.0 -D;DG;WZ08-591;REAL;2017;97.6;e;;0.0 -D;DG;WZ08-591;REAL;2018;102.4;e;;0.0 -D;DG;WZ08-591;REAL;2019;104.3;e;;0.0 -D;DG;WZ08-591;REAL;2020;80.4;e;;0.0 -D;DG;WZ08-591;REAL;2021;87.0;e;;0.0 -D;DG;WZ08-591;REAL;2022;107.8;e;;0.0 -D;DG;WZ08-591;REAL;2023;106.0;p;;0.0 -D;DG;WZ08-591;REAL;2024;101.1;p;;0.0 -D;DG;WZ08-592;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-592;NOMINAL;2016;96.9;e;;0.0 -D;DG;WZ08-592;NOMINAL;2017;112.4;e;;0.0 -D;DG;WZ08-592;NOMINAL;2018;120.6;e;;0.0 -D;DG;WZ08-592;NOMINAL;2019;122.9;e;;0.0 -D;DG;WZ08-592;NOMINAL;2020;119.1;e;;0.0 -D;DG;WZ08-592;NOMINAL;2021;116.8;e;;0.0 -D;DG;WZ08-592;NOMINAL;2022;133.7;e;;0.0 -D;DG;WZ08-592;NOMINAL;2023;152.0;p;;0.0 -D;DG;WZ08-592;NOMINAL;2024;140.8;p;;0.0 -D;DG;WZ08-592;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-592;REAL;2016;96.3;e;;0.0 -D;DG;WZ08-592;REAL;2017;108.2;e;;0.0 -D;DG;WZ08-592;REAL;2018;117.8;e;;0.0 -D;DG;WZ08-592;REAL;2019;112.4;e;;0.0 -D;DG;WZ08-592;REAL;2020;104.7;e;;0.0 -D;DG;WZ08-592;REAL;2021;106.0;e;;0.0 -D;DG;WZ08-592;REAL;2022;116.2;e;;0.0 -D;DG;WZ08-592;REAL;2023;129.0;p;;0.0 -D;DG;WZ08-592;REAL;2024;113.0;p;;0.0 -D;DG;WZ08-59;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-59;NOMINAL;2016;105.8;e;;0.0 -D;DG;WZ08-59;NOMINAL;2017;103.8;e;;0.0 -D;DG;WZ08-59;NOMINAL;2018;110.8;e;;0.0 -D;DG;WZ08-59;NOMINAL;2019;113.7;e;;0.0 -D;DG;WZ08-59;NOMINAL;2020;93.5;e;;0.0 -D;DG;WZ08-59;NOMINAL;2021;100.2;e;;0.0 -D;DG;WZ08-59;NOMINAL;2022;126.4;e;;0.0 -D;DG;WZ08-59;NOMINAL;2023;134.4;p;;0.0 -D;DG;WZ08-59;NOMINAL;2024;131.4;p;;0.0 -D;DG;WZ08-59;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-59;REAL;2016;104.5;e;;0.0 -D;DG;WZ08-59;REAL;2017;100.1;e;;0.0 -D;DG;WZ08-59;REAL;2018;106.0;e;;0.0 -D;DG;WZ08-59;REAL;2019;106.2;e;;0.0 -D;DG;WZ08-59;REAL;2020;86.1;e;;0.0 -D;DG;WZ08-59;REAL;2021;91.5;e;;0.0 -D;DG;WZ08-59;REAL;2022;109.7;e;;0.0 -D;DG;WZ08-59;REAL;2023;111.4;p;;0.0 -D;DG;WZ08-59;REAL;2024;103.9;p;;0.0 -D;DG;WZ08-601;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-601;NOMINAL;2016;99.4;e;;0.0 -D;DG;WZ08-601;NOMINAL;2017;96.5;e;;0.0 -D;DG;WZ08-601;NOMINAL;2018;95.9;e;;0.0 -D;DG;WZ08-601;NOMINAL;2019;68.2;e;;0.0 -D;DG;WZ08-601;NOMINAL;2020;66.1;e;;0.0 -D;DG;WZ08-601;NOMINAL;2021;68.7;e;;0.0 -D;DG;WZ08-601;NOMINAL;2022;72.2;e;;0.0 -D;DG;WZ08-601;NOMINAL;2023;74.2;p;;0.0 -D;DG;WZ08-601;NOMINAL;2024;72.5;p;;0.0 -D;DG;WZ08-601;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-601;REAL;2016;100.3;e;;0.0 -D;DG;WZ08-601;REAL;2017;97.3;e;;0.0 -D;DG;WZ08-601;REAL;2018;96.7;e;;0.0 -D;DG;WZ08-601;REAL;2019;68.8;e;;0.0 -D;DG;WZ08-601;REAL;2020;66.7;e;;0.0 -D;DG;WZ08-601;REAL;2021;67.6;e;;0.0 -D;DG;WZ08-601;REAL;2022;69.4;e;;0.0 -D;DG;WZ08-601;REAL;2023;71.3;p;;0.0 -D;DG;WZ08-601;REAL;2024;69.7;p;;0.0 -D;DG;WZ08-602;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-602;NOMINAL;2016;104.4;e;;0.0 -D;DG;WZ08-602;NOMINAL;2017;111.2;e;;0.0 -D;DG;WZ08-602;NOMINAL;2018;110.1;e;;0.0 -D;DG;WZ08-602;NOMINAL;2019;109.1;e;;0.0 -D;DG;WZ08-602;NOMINAL;2020;108.4;e;;0.0 -D;DG;WZ08-602;NOMINAL;2021;117.2;e;;0.0 -D;DG;WZ08-602;NOMINAL;2022;113.9;e;;0.0 -D;DG;WZ08-602;NOMINAL;2023;103.8;p;;0.0 -D;DG;WZ08-602;NOMINAL;2024;107.6;p;;0.0 -D;DG;WZ08-602;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-602;REAL;2016;102.2;e;;0.0 -D;DG;WZ08-602;REAL;2017;108.7;e;;0.0 -D;DG;WZ08-602;REAL;2018;108.3;e;;0.0 -D;DG;WZ08-602;REAL;2019;107.7;e;;0.0 -D;DG;WZ08-602;REAL;2020;106.5;e;;0.0 -D;DG;WZ08-602;REAL;2021;112.4;e;;0.0 -D;DG;WZ08-602;REAL;2022;107.2;e;;0.0 -D;DG;WZ08-602;REAL;2023;96.3;p;;0.0 -D;DG;WZ08-602;REAL;2024;98.0;p;;0.0 -D;DG;WZ08-60;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-60;NOMINAL;2016;103.5;e;;0.0 -D;DG;WZ08-60;NOMINAL;2017;108.7;e;;0.0 -D;DG;WZ08-60;NOMINAL;2018;107.6;e;;0.0 -D;DG;WZ08-60;NOMINAL;2019;102.1;e;;0.0 -D;DG;WZ08-60;NOMINAL;2020;101.1;e;;0.0 -D;DG;WZ08-60;NOMINAL;2021;108.8;e;;0.0 -D;DG;WZ08-60;NOMINAL;2022;106.7;e;;0.0 -D;DG;WZ08-60;NOMINAL;2023;98.7;p;;0.0 -D;DG;WZ08-60;NOMINAL;2024;101.6;p;;0.0 -D;DG;WZ08-60;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-60;REAL;2016;101.9;e;;0.0 -D;DG;WZ08-60;REAL;2017;106.8;e;;0.0 -D;DG;WZ08-60;REAL;2018;106.4;e;;0.0 -D;DG;WZ08-60;REAL;2019;101.0;e;;0.0 -D;DG;WZ08-60;REAL;2020;99.7;e;;0.0 -D;DG;WZ08-60;REAL;2021;104.7;e;;0.0 -D;DG;WZ08-60;REAL;2022;100.7;e;;0.0 -D;DG;WZ08-60;REAL;2023;92.0;p;;0.0 -D;DG;WZ08-60;REAL;2024;93.2;p;;0.0 -D;DG;WZ08-61-01;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-61-01;NOMINAL;2016;108.0;e;;0.0 -D;DG;WZ08-61-01;NOMINAL;2017;107.2;e;;0.0 -D;DG;WZ08-61-01;NOMINAL;2018;111.5;e;;0.0 -D;DG;WZ08-61-01;NOMINAL;2019;113.5;e;;0.0 -D;DG;WZ08-61-01;NOMINAL;2020;112.5;e;;0.0 -D;DG;WZ08-61-01;NOMINAL;2021;120.8;e;;0.0 -D;DG;WZ08-61-01;NOMINAL;2022;132.8;e;;0.0 -D;DG;WZ08-61-01;NOMINAL;2023;140.3;p;;0.0 -D;DG;WZ08-61-01;NOMINAL;2024;145.6;p;;0.0 -D;DG;WZ08-61-01;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-61-01;REAL;2016;107.5;e;;0.0 -D;DG;WZ08-61-01;REAL;2017;105.9;e;;0.0 -D;DG;WZ08-61-01;REAL;2018;108.8;e;;0.0 -D;DG;WZ08-61-01;REAL;2019;109.5;e;;0.0 -D;DG;WZ08-61-01;REAL;2020;107.5;e;;0.0 -D;DG;WZ08-61-01;REAL;2021;112.9;e;;0.0 -D;DG;WZ08-61-01;REAL;2022;121.1;e;;0.0 -D;DG;WZ08-61-01;REAL;2023;123.9;p;;0.0 -D;DG;WZ08-61-01;REAL;2024;126.0;p;;0.0 -D;DG;WZ08-61-02;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-61-02;NOMINAL;2016;108.1;e;;0.0 -D;DG;WZ08-61-02;NOMINAL;2017;106.5;e;;0.0 -D;DG;WZ08-61-02;NOMINAL;2018;111.5;e;;0.0 -D;DG;WZ08-61-02;NOMINAL;2019;114.4;e;;0.0 -D;DG;WZ08-61-02;NOMINAL;2020;114.7;e;;0.0 -D;DG;WZ08-61-02;NOMINAL;2021;122.5;e;;0.0 -D;DG;WZ08-61-02;NOMINAL;2022;134.7;e;;0.0 -D;DG;WZ08-61-02;NOMINAL;2023;142.5;p;;0.0 -D;DG;WZ08-61-02;NOMINAL;2024;148.5;p;;0.0 -D;DG;WZ08-61-02;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-61-02;REAL;2016;107.9;e;;0.0 -D;DG;WZ08-61-02;REAL;2017;105.8;e;;0.0 -D;DG;WZ08-61-02;REAL;2018;109.4;e;;0.0 -D;DG;WZ08-61-02;REAL;2019;111.0;e;;0.0 -D;DG;WZ08-61-02;REAL;2020;110.3;e;;0.0 -D;DG;WZ08-61-02;REAL;2021;115.4;e;;0.0 -D;DG;WZ08-61-02;REAL;2022;123.9;e;;0.0 -D;DG;WZ08-61-02;REAL;2023;127.3;p;;0.0 -D;DG;WZ08-61-02;REAL;2024;130.1;p;;0.0 -D;DG;WZ08-61-03;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-61-03;NOMINAL;2016;105.6;e;;0.0 -D;DG;WZ08-61-03;NOMINAL;2017;111.6;e;;0.0 -D;DG;WZ08-61-03;NOMINAL;2018;118.1;e;;0.0 -D;DG;WZ08-61-03;NOMINAL;2019;122.6;e;;0.0 -D;DG;WZ08-61-03;NOMINAL;2020;121.5;e;;0.0 -D;DG;WZ08-61-03;NOMINAL;2021;130.5;e;;0.0 -D;DG;WZ08-61-03;NOMINAL;2022;142.8;e;;0.0 -D;DG;WZ08-61-03;NOMINAL;2023;147.8;p;;0.0 -D;DG;WZ08-61-03;NOMINAL;2024;153.3;p;;0.0 -D;DG;WZ08-61-03;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-61-03;REAL;2016;105.0;e;;0.0 -D;DG;WZ08-61-03;REAL;2017;110.1;e;;0.0 -D;DG;WZ08-61-03;REAL;2018;115.4;e;;0.0 -D;DG;WZ08-61-03;REAL;2019;118.5;e;;0.0 -D;DG;WZ08-61-03;REAL;2020;115.9;e;;0.0 -D;DG;WZ08-61-03;REAL;2021;122.3;e;;0.0 -D;DG;WZ08-61-03;REAL;2022;131.1;e;;0.0 -D;DG;WZ08-61-03;REAL;2023;131.4;p;;0.0 -D;DG;WZ08-61-03;REAL;2024;133.4;p;;0.0 -D;DG;WZ08-611;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-611;NOMINAL;2016;90.1;e;;0.0 -D;DG;WZ08-611;NOMINAL;2017;89.3;e;;0.0 -D;DG;WZ08-611;NOMINAL;2018;95.5;e;;0.0 -D;DG;WZ08-611;NOMINAL;2019;89.9;e;;0.0 -D;DG;WZ08-611;NOMINAL;2020;91.8;e;;0.0 -D;DG;WZ08-611;NOMINAL;2021;88.4;e;;0.0 -D;DG;WZ08-611;NOMINAL;2022;90.1;e;;0.0 -D;DG;WZ08-611;NOMINAL;2023;92.0;p;;0.0 -D;DG;WZ08-611;NOMINAL;2024;97.1;p;;0.0 -D;DG;WZ08-611;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-611;REAL;2016;91.1;e;;0.0 -D;DG;WZ08-611;REAL;2017;91.5;e;;0.0 -D;DG;WZ08-611;REAL;2018;96.1;e;;0.0 -D;DG;WZ08-611;REAL;2019;89.4;e;;0.0 -D;DG;WZ08-611;REAL;2020;90.0;e;;0.0 -D;DG;WZ08-611;REAL;2021;83.7;e;;0.0 -D;DG;WZ08-611;REAL;2022;82.8;e;;0.0 -D;DG;WZ08-611;REAL;2023;83.4;p;;0.0 -D;DG;WZ08-611;REAL;2024;89.7;p;;0.0 -D;DG;WZ08-612;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-612;NOMINAL;2016;174.5;e;;0.0 -D;DG;WZ08-612;NOMINAL;2017;80.1;e;;0.0 -D;DG;WZ08-612;NOMINAL;2018;83.5;e;;0.0 -D;DG;WZ08-612;NOMINAL;2019;81.8;e;;0.0 -D;DG;WZ08-612;NOMINAL;2020;84.3;e;;0.0 -D;DG;WZ08-612;NOMINAL;2021;86.4;e;;0.0 -D;DG;WZ08-612;NOMINAL;2022;92.0;e;;0.0 -D;DG;WZ08-612;NOMINAL;2023;92.0;p;;0.0 -D;DG;WZ08-612;NOMINAL;2024;93.7;p;;0.0 -D;DG;WZ08-612;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-612;REAL;2016;176.4;e;;0.0 -D;DG;WZ08-612;REAL;2017;82.1;e;;0.0 -D;DG;WZ08-612;REAL;2018;84.0;e;;0.0 -D;DG;WZ08-612;REAL;2019;81.4;e;;0.0 -D;DG;WZ08-612;REAL;2020;82.6;e;;0.0 -D;DG;WZ08-612;REAL;2021;81.9;e;;0.0 -D;DG;WZ08-612;REAL;2022;84.5;e;;0.0 -D;DG;WZ08-612;REAL;2023;83.4;p;;0.0 -D;DG;WZ08-612;REAL;2024;86.6;p;;0.0 -D;DG;WZ08-613;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-613;NOMINAL;2016;87.1;e;;0.0 -D;DG;WZ08-613;NOMINAL;2017;117.2;e;;0.0 -D;DG;WZ08-613;NOMINAL;2018;149.1;e;;0.0 -D;DG;WZ08-613;NOMINAL;2019;136.1;e;;0.0 -D;DG;WZ08-613;NOMINAL;2020;98.6;e;;0.0 -D;DG;WZ08-613;NOMINAL;2021;97.8;e;;0.0 -D;DG;WZ08-613;NOMINAL;2022;97.6;e;;0.0 -D;DG;WZ08-613;NOMINAL;2023;109.4;p;;0.0 -D;DG;WZ08-613;NOMINAL;2024;113.6;p;;0.0 -D;DG;WZ08-613;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-613;REAL;2016;88.0;e;;0.0 -D;DG;WZ08-613;REAL;2017;120.1;e;;0.0 -D;DG;WZ08-613;REAL;2018;150.0;e;;0.0 -D;DG;WZ08-613;REAL;2019;135.3;e;;0.0 -D;DG;WZ08-613;REAL;2020;96.6;e;;0.0 -D;DG;WZ08-613;REAL;2021;92.7;e;;0.0 -D;DG;WZ08-613;REAL;2022;89.7;e;;0.0 -D;DG;WZ08-613;REAL;2023;99.1;p;;0.0 -D;DG;WZ08-613;REAL;2024;104.9;p;;0.0 -D;DG;WZ08-619;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-619;NOMINAL;2016;95.4;e;;0.0 -D;DG;WZ08-619;NOMINAL;2017;94.0;e;;0.0 -D;DG;WZ08-619;NOMINAL;2018;95.1;e;;0.0 -D;DG;WZ08-619;NOMINAL;2019;93.4;e;;0.0 -D;DG;WZ08-619;NOMINAL;2020;96.0;e;;0.0 -D;DG;WZ08-619;NOMINAL;2021;93.6;e;;0.0 -D;DG;WZ08-619;NOMINAL;2022;95.2;e;;0.0 -D;DG;WZ08-619;NOMINAL;2023;114.6;p;;0.0 -D;DG;WZ08-619;NOMINAL;2024;114.4;p;;0.0 -D;DG;WZ08-619;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-619;REAL;2016;96.5;e;;0.0 -D;DG;WZ08-619;REAL;2017;96.2;e;;0.0 -D;DG;WZ08-619;REAL;2018;95.7;e;;0.0 -D;DG;WZ08-619;REAL;2019;92.9;e;;0.0 -D;DG;WZ08-619;REAL;2020;94.0;e;;0.0 -D;DG;WZ08-619;REAL;2021;88.6;e;;0.0 -D;DG;WZ08-619;REAL;2022;87.5;e;;0.0 -D;DG;WZ08-619;REAL;2023;103.9;p;;0.0 -D;DG;WZ08-619;REAL;2024;105.7;p;;0.0 -D;DG;WZ08-61;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-61;NOMINAL;2016;115.3;e;;0.0 -D;DG;WZ08-61;NOMINAL;2017;87.6;e;;0.0 -D;DG;WZ08-61;NOMINAL;2018;92.3;e;;0.0 -D;DG;WZ08-61;NOMINAL;2019;88.5;e;;0.0 -D;DG;WZ08-61;NOMINAL;2020;90.4;e;;0.0 -D;DG;WZ08-61;NOMINAL;2021;88.8;e;;0.0 -D;DG;WZ08-61;NOMINAL;2022;91.5;e;;0.0 -D;DG;WZ08-61;NOMINAL;2023;96.0;p;;0.0 -D;DG;WZ08-61;NOMINAL;2024;99.2;p;;0.0 -D;DG;WZ08-61;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-61;REAL;2016;116.5;e;;0.0 -D;DG;WZ08-61;REAL;2017;89.8;e;;0.0 -D;DG;WZ08-61;REAL;2018;92.9;e;;0.0 -D;DG;WZ08-61;REAL;2019;88.0;e;;0.0 -D;DG;WZ08-61;REAL;2020;88.6;e;;0.0 -D;DG;WZ08-61;REAL;2021;84.1;e;;0.0 -D;DG;WZ08-61;REAL;2022;84.1;e;;0.0 -D;DG;WZ08-61;REAL;2023;87.0;p;;0.0 -D;DG;WZ08-61;REAL;2024;91.6;p;;0.0 -D;DG;WZ08-6201;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-6201;NOMINAL;2016;109.9;e;;0.0 -D;DG;WZ08-6201;NOMINAL;2017;116.8;e;;0.0 -D;DG;WZ08-6201;NOMINAL;2018;127.1;e;;0.0 -D;DG;WZ08-6201;NOMINAL;2019;136.9;e;;0.0 -D;DG;WZ08-6201;NOMINAL;2020;135.0;e;;0.0 -D;DG;WZ08-6201;NOMINAL;2021;150.1;e;;0.0 -D;DG;WZ08-6201;NOMINAL;2022;172.7;e;;0.0 -D;DG;WZ08-6201;NOMINAL;2023;184.8;p;;0.0 -D;DG;WZ08-6201;NOMINAL;2024;195.0;p;;0.0 -D;DG;WZ08-6202;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-6202;NOMINAL;2016;108.6;e;;0.0 -D;DG;WZ08-6202;NOMINAL;2017;123.4;e;;0.0 -D;DG;WZ08-6202;NOMINAL;2018;133.0;e;;0.0 -D;DG;WZ08-6202;NOMINAL;2019;139.0;e;;0.0 -D;DG;WZ08-6202;NOMINAL;2020;141.3;e;;0.0 -D;DG;WZ08-6202;NOMINAL;2021;153.1;e;;0.0 -D;DG;WZ08-6202;NOMINAL;2022;170.4;e;;0.0 -D;DG;WZ08-6202;NOMINAL;2023;174.5;p;;0.0 -D;DG;WZ08-6202;NOMINAL;2024;185.1;p;;0.0 -D;DG;WZ08-6203;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-6203;NOMINAL;2016;104.5;e;;0.0 -D;DG;WZ08-6203;NOMINAL;2017;107.9;e;;0.0 -D;DG;WZ08-6203;NOMINAL;2018;101.6;e;;0.0 -D;DG;WZ08-6203;NOMINAL;2019;106.9;e;;0.0 -D;DG;WZ08-6203;NOMINAL;2020;111.9;e;;0.0 -D;DG;WZ08-6203;NOMINAL;2021;114.3;e;;0.0 -D;DG;WZ08-6203;NOMINAL;2022;117.8;e;;0.0 -D;DG;WZ08-6203;NOMINAL;2023;129.8;p;;0.0 -D;DG;WZ08-6203;NOMINAL;2024;131.6;p;;0.0 -D;DG;WZ08-6209;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-6209;NOMINAL;2016;100.8;e;;0.0 -D;DG;WZ08-6209;NOMINAL;2017;101.9;e;;0.0 -D;DG;WZ08-6209;NOMINAL;2018;118.9;e;;0.0 -D;DG;WZ08-6209;NOMINAL;2019;115.5;e;;0.0 -D;DG;WZ08-6209;NOMINAL;2020;115.7;e;;0.0 -D;DG;WZ08-6209;NOMINAL;2021;126.0;e;;0.0 -D;DG;WZ08-6209;NOMINAL;2022;138.3;e;;0.0 -D;DG;WZ08-6209;NOMINAL;2023;147.0;p;;0.0 -D;DG;WZ08-6209;NOMINAL;2024;155.4;p;;0.0 -D;DG;WZ08-620;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-620;NOMINAL;2016;106.3;e;;0.0 -D;DG;WZ08-620;NOMINAL;2017;112.6;e;;0.0 -D;DG;WZ08-620;NOMINAL;2018;123.2;e;;0.0 -D;DG;WZ08-620;NOMINAL;2019;127.7;e;;0.0 -D;DG;WZ08-620;NOMINAL;2020;128.0;e;;0.0 -D;DG;WZ08-620;NOMINAL;2021;139.7;e;;0.0 -D;DG;WZ08-620;NOMINAL;2022;156.1;e;;0.0 -D;DG;WZ08-620;NOMINAL;2023;165.6;p;;0.0 -D;DG;WZ08-620;NOMINAL;2024;174.5;p;;0.0 -D;DG;WZ08-620;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-620;REAL;2016;106.8;e;;0.0 -D;DG;WZ08-620;REAL;2017;113.0;e;;0.0 -D;DG;WZ08-620;REAL;2018;122.9;e;;0.0 -D;DG;WZ08-620;REAL;2019;126.7;e;;0.0 -D;DG;WZ08-620;REAL;2020;126.6;e;;0.0 -D;DG;WZ08-620;REAL;2021;137.4;e;;0.0 -D;DG;WZ08-620;REAL;2022;152.0;e;;0.0 -D;DG;WZ08-620;REAL;2023;157.4;p;;0.0 -D;DG;WZ08-620;REAL;2024;162.6;p;;0.0 -D;DG;WZ08-62;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-62;NOMINAL;2016;106.3;e;;0.0 -D;DG;WZ08-62;NOMINAL;2017;112.6;e;;0.0 -D;DG;WZ08-62;NOMINAL;2018;123.2;e;;0.0 -D;DG;WZ08-62;NOMINAL;2019;127.7;e;;0.0 -D;DG;WZ08-62;NOMINAL;2020;128.0;e;;0.0 -D;DG;WZ08-62;NOMINAL;2021;139.7;e;;0.0 -D;DG;WZ08-62;NOMINAL;2022;156.1;e;;0.0 -D;DG;WZ08-62;NOMINAL;2023;165.6;p;;0.0 -D;DG;WZ08-62;NOMINAL;2024;174.5;p;;0.0 -D;DG;WZ08-62;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-62;REAL;2016;106.8;e;;0.0 -D;DG;WZ08-62;REAL;2017;113.0;e;;0.0 -D;DG;WZ08-62;REAL;2018;122.9;e;;0.0 -D;DG;WZ08-62;REAL;2019;126.7;e;;0.0 -D;DG;WZ08-62;REAL;2020;126.6;e;;0.0 -D;DG;WZ08-62;REAL;2021;137.4;e;;0.0 -D;DG;WZ08-62;REAL;2022;152.0;e;;0.0 -D;DG;WZ08-62;REAL;2023;157.4;p;;0.0 -D;DG;WZ08-62;REAL;2024;162.6;p;;0.0 -D;DG;WZ08-63-01;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-63-01;NOMINAL;2016;107.9;e;;0.0 -D;DG;WZ08-63-01;NOMINAL;2017;107.5;e;;0.0 -D;DG;WZ08-63-01;NOMINAL;2018;117.8;e;;0.0 -D;DG;WZ08-63-01;NOMINAL;2019;119.6;e;;0.0 -D;DG;WZ08-63-01;NOMINAL;2020;114.2;e;;0.0 -D;DG;WZ08-63-01;NOMINAL;2021;130.7;e;;0.0 -D;DG;WZ08-63-01;NOMINAL;2022;144.6;e;;0.0 -D;DG;WZ08-63-01;NOMINAL;2023;159.8;p;;0.0 -D;DG;WZ08-63-01;NOMINAL;2024;166.2;p;;0.0 -D;DG;WZ08-63-01;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-63-01;REAL;2016;106.4;e;;0.0 -D;DG;WZ08-63-01;REAL;2017;104.9;e;;0.0 -D;DG;WZ08-63-01;REAL;2018;113.5;e;;0.0 -D;DG;WZ08-63-01;REAL;2019;114.7;e;;0.0 -D;DG;WZ08-63-01;REAL;2020;109.8;e;;0.0 -D;DG;WZ08-63-01;REAL;2021;123.1;e;;0.0 -D;DG;WZ08-63-01;REAL;2022;134.2;e;;0.0 -D;DG;WZ08-63-01;REAL;2023;143.8;p;;0.0 -D;DG;WZ08-63-01;REAL;2024;144.3;p;;0.0 -D;DG;WZ08-63-02;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-63-02;NOMINAL;2016;111.0;e;;0.0 -D;DG;WZ08-63-02;NOMINAL;2017;116.8;e;;0.0 -D;DG;WZ08-63-02;NOMINAL;2018;142.3;e;;0.0 -D;DG;WZ08-63-02;NOMINAL;2019;141.3;e;;0.0 -D;DG;WZ08-63-02;NOMINAL;2020;151.6;e;;0.0 -D;DG;WZ08-63-02;NOMINAL;2021;172.3;e;;0.0 -D;DG;WZ08-63-02;NOMINAL;2022;195.7;e;;0.0 -D;DG;WZ08-63-02;NOMINAL;2023;227.1;p;;0.0 -D;DG;WZ08-63-02;NOMINAL;2024;236.7;p;;0.0 -D;DG;WZ08-63-02;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-63-02;REAL;2016;112.2;e;;0.0 -D;DG;WZ08-63-02;REAL;2017;118.5;e;;0.0 -D;DG;WZ08-63-02;REAL;2018;145.0;e;;0.0 -D;DG;WZ08-63-02;REAL;2019;145.1;e;;0.0 -D;DG;WZ08-63-02;REAL;2020;155.9;e;;0.0 -D;DG;WZ08-63-02;REAL;2021;177.1;e;;0.0 -D;DG;WZ08-63-02;REAL;2022;200.9;e;;0.0 -D;DG;WZ08-63-02;REAL;2023;225.3;p;;0.0 -D;DG;WZ08-63-02;REAL;2024;230.0;p;;0.0 -D;DG;WZ08-63-03;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-63-03;NOMINAL;2016;106.4;e;;0.0 -D;DG;WZ08-63-03;NOMINAL;2017;109.2;e;;0.0 -D;DG;WZ08-63-03;NOMINAL;2018;119.9;e;;0.0 -D;DG;WZ08-63-03;NOMINAL;2019;123.3;e;;0.0 -D;DG;WZ08-63-03;NOMINAL;2020;121.6;e;;0.0 -D;DG;WZ08-63-03;NOMINAL;2021;134.7;e;;0.0 -D;DG;WZ08-63-03;NOMINAL;2022;150.2;e;;0.0 -D;DG;WZ08-63-03;NOMINAL;2023;162.3;p;;0.0 -D;DG;WZ08-63-03;NOMINAL;2024;170.2;p;;0.0 -D;DG;WZ08-63-03;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-63-03;REAL;2016;106.3;e;;0.0 -D;DG;WZ08-63-03;REAL;2017;108.7;e;;0.0 -D;DG;WZ08-63-03;REAL;2018;118.4;e;;0.0 -D;DG;WZ08-63-03;REAL;2019;121.2;e;;0.0 -D;DG;WZ08-63-03;REAL;2020;119.4;e;;0.0 -D;DG;WZ08-63-03;REAL;2021;130.9;e;;0.0 -D;DG;WZ08-63-03;REAL;2022;144.3;e;;0.0 -D;DG;WZ08-63-03;REAL;2023;151.9;p;;0.0 -D;DG;WZ08-63-03;REAL;2024;155.5;p;;0.0 -D;DG;WZ08-63-04;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-63-04;NOMINAL;2016;106.3;e;;0.0 -D;DG;WZ08-63-04;NOMINAL;2017;110.7;e;;0.0 -D;DG;WZ08-63-04;NOMINAL;2018;123.1;e;;0.0 -D;DG;WZ08-63-04;NOMINAL;2019;126.6;e;;0.0 -D;DG;WZ08-63-04;NOMINAL;2020;127.5;e;;0.0 -D;DG;WZ08-63-04;NOMINAL;2021;140.1;e;;0.0 -D;DG;WZ08-63-04;NOMINAL;2022;157.1;e;;0.0 -D;DG;WZ08-63-04;NOMINAL;2023;170.1;p;;0.0 -D;DG;WZ08-63-04;NOMINAL;2024;178.7;p;;0.0 -D;DG;WZ08-63-04;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-63-04;REAL;2016;106.9;e;;0.0 -D;DG;WZ08-63-04;REAL;2017;111.1;e;;0.0 -D;DG;WZ08-63-04;REAL;2018;123.0;e;;0.0 -D;DG;WZ08-63-04;REAL;2019;126.1;e;;0.0 -D;DG;WZ08-63-04;REAL;2020;126.7;e;;0.0 -D;DG;WZ08-63-04;REAL;2021;138.6;e;;0.0 -D;DG;WZ08-63-04;REAL;2022;154.1;e;;0.0 -D;DG;WZ08-63-04;REAL;2023;162.7;p;;0.0 -D;DG;WZ08-63-04;REAL;2024;167.6;p;;0.0 -D;DG;WZ08-6311;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-6311;NOMINAL;2016;110.7;e;;0.0 -D;DG;WZ08-6311;NOMINAL;2017;105.2;e;;0.0 -D;DG;WZ08-6311;NOMINAL;2018;118.5;e;;0.0 -D;DG;WZ08-6311;NOMINAL;2019;132.7;e;;0.0 -D;DG;WZ08-6311;NOMINAL;2020;155.4;e;;0.0 -D;DG;WZ08-6311;NOMINAL;2021;170.9;e;;0.0 -D;DG;WZ08-6311;NOMINAL;2022;199.6;e;;0.0 -D;DG;WZ08-6311;NOMINAL;2023;259.5;p;;0.0 -D;DG;WZ08-6311;NOMINAL;2024;273.6;p;;0.0 -D;DG;WZ08-6312;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-6312;NOMINAL;2016;117.2;e;;0.0 -D;DG;WZ08-6312;NOMINAL;2017;141.7;e;;0.0 -D;DG;WZ08-6312;NOMINAL;2018;206.2;e;;0.0 -D;DG;WZ08-6312;NOMINAL;2019;181.6;e;;0.0 -D;DG;WZ08-6312;NOMINAL;2020;186.4;e;;0.0 -D;DG;WZ08-6312;NOMINAL;2021;220.8;e;;0.0 -D;DG;WZ08-6312;NOMINAL;2022;245.2;e;;0.0 -D;DG;WZ08-6312;NOMINAL;2023;250.4;p;;0.0 -D;DG;WZ08-6312;NOMINAL;2024;263.8;p;;0.0 -D;DG;WZ08-631;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-631;NOMINAL;2016;113.2;e;;0.0 -D;DG;WZ08-631;NOMINAL;2017;119.0;e;;0.0 -D;DG;WZ08-631;NOMINAL;2018;151.7;e;;0.0 -D;DG;WZ08-631;NOMINAL;2019;151.2;e;;0.0 -D;DG;WZ08-631;NOMINAL;2020;167.1;e;;0.0 -D;DG;WZ08-631;NOMINAL;2021;189.8;e;;0.0 -D;DG;WZ08-631;NOMINAL;2022;216.9;e;;0.0 -D;DG;WZ08-631;NOMINAL;2023;256.1;p;;0.0 -D;DG;WZ08-631;NOMINAL;2024;269.9;p;;0.0 -D;DG;WZ08-631;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-631;REAL;2016;115.0;e;;0.0 -D;DG;WZ08-631;REAL;2017;121.4;e;;0.0 -D;DG;WZ08-631;REAL;2018;155.4;e;;0.0 -D;DG;WZ08-631;REAL;2019;156.5;e;;0.0 -D;DG;WZ08-631;REAL;2020;173.1;e;;0.0 -D;DG;WZ08-631;REAL;2021;196.7;e;;0.0 -D;DG;WZ08-631;REAL;2022;225.0;e;;0.0 -D;DG;WZ08-631;REAL;2023;256.7;p;;0.0 -D;DG;WZ08-631;REAL;2024;265.1;p;;0.0 -D;DG;WZ08-6391;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-6391;NOMINAL;2016;81.1;e;;0.0 -D;DG;WZ08-6391;NOMINAL;2017;77.3;e;;0.0 -D;DG;WZ08-6391;NOMINAL;2018;77.1;e;;0.0 -D;DG;WZ08-6391;NOMINAL;2019;90.4;e;;0.0 -D;DG;WZ08-6391;NOMINAL;2020;76.6;e;;0.0 -D;DG;WZ08-6391;NOMINAL;2021;76.7;e;;0.0 -D;DG;WZ08-6391;NOMINAL;2022;77.1;e;;0.0 -D;DG;WZ08-6391;NOMINAL;2023;71.2;p;;0.0 -D;DG;WZ08-6391;NOMINAL;2024;69.3;p;;0.0 -D;DG;WZ08-6399;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-6399;NOMINAL;2016;262.5;e;;0.0 -D;DG;WZ08-6399;NOMINAL;2017;219.6;e;;0.0 -D;DG;WZ08-6399;NOMINAL;2018;112.3;e;;0.0 -D;DG;WZ08-6399;NOMINAL;2019;105.0;e;;0.0 -D;DG;WZ08-6399;NOMINAL;2020;86.4;e;;0.0 -D;DG;WZ08-6399;NOMINAL;2021;104.4;e;;0.0 -D;DG;WZ08-6399;NOMINAL;2022;108.0;e;;0.0 -D;DG;WZ08-6399;NOMINAL;2023;110.8;p;;0.0 -D;DG;WZ08-6399;NOMINAL;2024;116.4;p;;0.0 -D;DG;WZ08-639;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-639;NOMINAL;2016;236.8;e;;0.0 -D;DG;WZ08-639;NOMINAL;2017;199.4;e;;0.0 -D;DG;WZ08-639;NOMINAL;2018;107.3;e;;0.0 -D;DG;WZ08-639;NOMINAL;2019;103.0;e;;0.0 -D;DG;WZ08-639;NOMINAL;2020;85.0;e;;0.0 -D;DG;WZ08-639;NOMINAL;2021;100.5;e;;0.0 -D;DG;WZ08-639;NOMINAL;2022;103.6;e;;0.0 -D;DG;WZ08-639;NOMINAL;2023;105.2;p;;0.0 -D;DG;WZ08-639;NOMINAL;2024;109.7;p;;0.0 -D;DG;WZ08-639;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-639;REAL;2016;235.2;e;;0.0 -D;DG;WZ08-639;REAL;2017;197.0;e;;0.0 -D;DG;WZ08-639;REAL;2018;105.3;e;;0.0 -D;DG;WZ08-639;REAL;2019;99.9;e;;0.0 -D;DG;WZ08-639;REAL;2020;81.5;e;;0.0 -D;DG;WZ08-639;REAL;2021;96.1;e;;0.0 -D;DG;WZ08-639;REAL;2022;96.4;e;;0.0 -D;DG;WZ08-639;REAL;2023;95.3;p;;0.0 -D;DG;WZ08-639;REAL;2024;97.7;p;;0.0 -D;DG;WZ08-63;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-63;NOMINAL;2016;154.8;e;;0.0 -D;DG;WZ08-63;NOMINAL;2017;146.1;e;;0.0 -D;DG;WZ08-63;NOMINAL;2018;136.7;e;;0.0 -D;DG;WZ08-63;NOMINAL;2019;135.0;e;;0.0 -D;DG;WZ08-63;NOMINAL;2020;139.5;e;;0.0 -D;DG;WZ08-63;NOMINAL;2021;159.7;e;;0.0 -D;DG;WZ08-63;NOMINAL;2022;178.8;e;;0.0 -D;DG;WZ08-63;NOMINAL;2023;205.3;p;;0.0 -D;DG;WZ08-63;NOMINAL;2024;216.0;p;;0.0 -D;DG;WZ08-63;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-63;REAL;2016;155.4;e;;0.0 -D;DG;WZ08-63;REAL;2017;146.9;e;;0.0 -D;DG;WZ08-63;REAL;2018;138.5;e;;0.0 -D;DG;WZ08-63;REAL;2019;137.5;e;;0.0 -D;DG;WZ08-63;REAL;2020;142.3;e;;0.0 -D;DG;WZ08-63;REAL;2021;162.9;e;;0.0 -D;DG;WZ08-63;REAL;2022;181.7;e;;0.0 -D;DG;WZ08-63;REAL;2023;202.4;p;;0.0 -D;DG;WZ08-63;REAL;2024;208.8;p;;0.0 -D;DG;WZ08-681;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-681;NOMINAL;2016;96.6;e;;0.0 -D;DG;WZ08-681;NOMINAL;2017;80.0;e;;0.0 -D;DG;WZ08-681;NOMINAL;2018;91.8;e;;0.0 -D;DG;WZ08-681;NOMINAL;2019;95.0;e;;0.0 -D;DG;WZ08-681;NOMINAL;2020;69.4;e;;0.0 -D;DG;WZ08-681;NOMINAL;2021;72.1;e;;0.0 -D;DG;WZ08-681;NOMINAL;2022;73.5;e;;0.0 -D;DG;WZ08-681;NOMINAL;2023;72.6;p;;0.0 -D;DG;WZ08-681;NOMINAL;2024;77.6;p;;0.0 -D;DG;WZ08-681;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-681;REAL;2016;95.5;e;;0.0 -D;DG;WZ08-681;REAL;2017;78.0;e;;0.0 -D;DG;WZ08-681;REAL;2018;88.2;e;;0.0 -D;DG;WZ08-681;REAL;2019;90.0;e;;0.0 -D;DG;WZ08-681;REAL;2020;64.9;e;;0.0 -D;DG;WZ08-681;REAL;2021;66.4;e;;0.0 -D;DG;WZ08-681;REAL;2022;66.6;e;;0.0 -D;DG;WZ08-681;REAL;2023;64.6;p;;0.0 -D;DG;WZ08-681;REAL;2024;67.7;p;;0.0 -D;DG;WZ08-682;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-682;NOMINAL;2016;109.9;e;;0.0 -D;DG;WZ08-682;NOMINAL;2017;109.6;e;;0.0 -D;DG;WZ08-682;NOMINAL;2018;108.4;e;;0.0 -D;DG;WZ08-682;NOMINAL;2019;112.9;e;;0.0 -D;DG;WZ08-682;NOMINAL;2020;76.9;e;;0.0 -D;DG;WZ08-682;NOMINAL;2021;89.0;e;;0.0 -D;DG;WZ08-682;NOMINAL;2022;95.0;e;;0.0 -D;DG;WZ08-682;NOMINAL;2023;95.6;p;;0.0 -D;DG;WZ08-682;NOMINAL;2024;100.6;p;;0.0 -D;DG;WZ08-682;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-682;REAL;2016;108.6;e;;0.0 -D;DG;WZ08-682;REAL;2017;106.9;e;;0.0 -D;DG;WZ08-682;REAL;2018;104.1;e;;0.0 -D;DG;WZ08-682;REAL;2019;107.0;e;;0.0 -D;DG;WZ08-682;REAL;2020;71.8;e;;0.0 -D;DG;WZ08-682;REAL;2021;82.0;e;;0.0 -D;DG;WZ08-682;REAL;2022;86.0;e;;0.0 -D;DG;WZ08-682;REAL;2023;85.1;p;;0.0 -D;DG;WZ08-682;REAL;2024;87.7;p;;0.0 -D;DG;WZ08-6831;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-6831;NOMINAL;2016;98.5;e;;0.0 -D;DG;WZ08-6831;NOMINAL;2017;100.1;e;;0.0 -D;DG;WZ08-6831;NOMINAL;2018;106.4;e;;0.0 -D;DG;WZ08-6831;NOMINAL;2019;116.4;e;;0.0 -D;DG;WZ08-6831;NOMINAL;2020;113.2;e;;0.0 -D;DG;WZ08-6831;NOMINAL;2021;119.8;e;;0.0 -D;DG;WZ08-6831;NOMINAL;2022;119.7;e;;0.0 -D;DG;WZ08-6831;NOMINAL;2023;105.5;p;;0.0 -D;DG;WZ08-6831;NOMINAL;2024;111.0;p;;0.0 -D;DG;WZ08-6832;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-6832;NOMINAL;2016;101.7;e;;0.0 -D;DG;WZ08-6832;NOMINAL;2017;103.4;e;;0.0 -D;DG;WZ08-6832;NOMINAL;2018;125.4;e;;0.0 -D;DG;WZ08-6832;NOMINAL;2019;114.4;e;;0.0 -D;DG;WZ08-6832;NOMINAL;2020;118.0;e;;0.0 -D;DG;WZ08-6832;NOMINAL;2021;118.3;e;;0.0 -D;DG;WZ08-6832;NOMINAL;2022;127.0;e;;0.0 -D;DG;WZ08-6832;NOMINAL;2023;130.1;p;;0.0 -D;DG;WZ08-6832;NOMINAL;2024;131.3;p;;0.0 -D;DG;WZ08-683;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-683;NOMINAL;2016;100.4;e;;0.0 -D;DG;WZ08-683;NOMINAL;2017;102.1;e;;0.0 -D;DG;WZ08-683;NOMINAL;2018;117.8;e;;0.0 -D;DG;WZ08-683;NOMINAL;2019;115.2;e;;0.0 -D;DG;WZ08-683;NOMINAL;2020;116.0;e;;0.0 -D;DG;WZ08-683;NOMINAL;2021;118.9;e;;0.0 -D;DG;WZ08-683;NOMINAL;2022;124.0;e;;0.0 -D;DG;WZ08-683;NOMINAL;2023;120.2;p;;0.0 -D;DG;WZ08-683;NOMINAL;2024;123.1;p;;0.0 -D;DG;WZ08-683;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-683;REAL;2016;99.3;e;;0.0 -D;DG;WZ08-683;REAL;2017;99.5;e;;0.0 -D;DG;WZ08-683;REAL;2018;113.2;e;;0.0 -D;DG;WZ08-683;REAL;2019;109.2;e;;0.0 -D;DG;WZ08-683;REAL;2020;108.4;e;;0.0 -D;DG;WZ08-683;REAL;2021;109.6;e;;0.0 -D;DG;WZ08-683;REAL;2022;112.4;e;;0.0 -D;DG;WZ08-683;REAL;2023;107.0;p;;0.0 -D;DG;WZ08-683;REAL;2024;107.3;p;;0.0 -D;DG;WZ08-68;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-68;NOMINAL;2016;107.2;e;;0.0 -D;DG;WZ08-68;NOMINAL;2017;105.8;e;;0.0 -D;DG;WZ08-68;NOMINAL;2018;108.4;e;;0.0 -D;DG;WZ08-68;NOMINAL;2019;111.7;e;;0.0 -D;DG;WZ08-68;NOMINAL;2020;82.5;e;;0.0 -D;DG;WZ08-68;NOMINAL;2021;92.3;e;;0.0 -D;DG;WZ08-68;NOMINAL;2022;97.7;e;;0.0 -D;DG;WZ08-68;NOMINAL;2023;97.5;p;;0.0 -D;DG;WZ08-68;NOMINAL;2024;102.2;p;;0.0 -D;DG;WZ08-68;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-68;REAL;2016;106.0;e;;0.0 -D;DG;WZ08-68;REAL;2017;103.2;e;;0.0 -D;DG;WZ08-68;REAL;2018;104.2;e;;0.0 -D;DG;WZ08-68;REAL;2019;105.8;e;;0.0 -D;DG;WZ08-68;REAL;2020;77.1;e;;0.0 -D;DG;WZ08-68;REAL;2021;85.1;e;;0.0 -D;DG;WZ08-68;REAL;2022;88.5;e;;0.0 -D;DG;WZ08-68;REAL;2023;86.8;p;;0.0 -D;DG;WZ08-68;REAL;2024;89.1;p;;0.0 -D;DG;WZ08-69-01;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-69-01;NOMINAL;2016;105.5;e;;0.0 -D;DG;WZ08-69-01;NOMINAL;2017;109.5;e;;0.0 -D;DG;WZ08-69-01;NOMINAL;2018;115.5;e;;0.0 -D;DG;WZ08-69-01;NOMINAL;2019;119.1;e;;0.0 -D;DG;WZ08-69-01;NOMINAL;2020;121.0;e;;0.0 -D;DG;WZ08-69-01;NOMINAL;2021;129.6;e;;0.0 -D;DG;WZ08-69-01;NOMINAL;2022;140.7;e;;0.0 -D;DG;WZ08-69-01;NOMINAL;2023;146.8;p;;0.0 -D;DG;WZ08-69-01;NOMINAL;2024;150.8;p;;0.0 -D;DG;WZ08-69-01;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-69-01;REAL;2016;104.5;e;;0.0 -D;DG;WZ08-69-01;REAL;2017;107.5;e;;0.0 -D;DG;WZ08-69-01;REAL;2018;112.2;e;;0.0 -D;DG;WZ08-69-01;REAL;2019;114.3;e;;0.0 -D;DG;WZ08-69-01;REAL;2020;114.1;e;;0.0 -D;DG;WZ08-69-01;REAL;2021;119.5;e;;0.0 -D;DG;WZ08-69-01;REAL;2022;127.0;e;;0.0 -D;DG;WZ08-69-01;REAL;2023;128.1;p;;0.0 -D;DG;WZ08-69-01;REAL;2024;128.7;p;;0.0 -D;DG;WZ08-691;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-691;NOMINAL;2016;102.5;e;;0.0 -D;DG;WZ08-691;NOMINAL;2017;105.6;e;;0.0 -D;DG;WZ08-691;NOMINAL;2018;110.5;e;;0.0 -D;DG;WZ08-691;NOMINAL;2019;115.5;e;;0.0 -D;DG;WZ08-691;NOMINAL;2020;117.6;e;;0.0 -D;DG;WZ08-691;NOMINAL;2021;121.0;e;;0.0 -D;DG;WZ08-691;NOMINAL;2022;122.0;e;;0.0 -D;DG;WZ08-691;NOMINAL;2023;123.7;p;;0.0 -D;DG;WZ08-691;NOMINAL;2024;128.9;p;;0.0 -D;DG;WZ08-691;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-691;REAL;2016;101.7;e;;0.0 -D;DG;WZ08-691;REAL;2017;103.7;e;;0.0 -D;DG;WZ08-691;REAL;2018;107.2;e;;0.0 -D;DG;WZ08-691;REAL;2019;110.8;e;;0.0 -D;DG;WZ08-691;REAL;2020;111.5;e;;0.0 -D;DG;WZ08-691;REAL;2021;109.2;e;;0.0 -D;DG;WZ08-691;REAL;2022;107.8;e;;0.0 -D;DG;WZ08-691;REAL;2023;105.9;p;;0.0 -D;DG;WZ08-691;REAL;2024;108.1;p;;0.0 -D;DG;WZ08-692;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-692;NOMINAL;2016;103.2;e;;0.0 -D;DG;WZ08-692;NOMINAL;2017;106.5;e;;0.0 -D;DG;WZ08-692;NOMINAL;2018;111.3;e;;0.0 -D;DG;WZ08-692;NOMINAL;2019;117.1;e;;0.0 -D;DG;WZ08-692;NOMINAL;2020;123.6;e;;0.0 -D;DG;WZ08-692;NOMINAL;2021;130.0;e;;0.0 -D;DG;WZ08-692;NOMINAL;2022;141.6;e;;0.0 -D;DG;WZ08-692;NOMINAL;2023;152.8;p;;0.0 -D;DG;WZ08-692;NOMINAL;2024;159.6;p;;0.0 -D;DG;WZ08-692;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-692;REAL;2016;101.9;e;;0.0 -D;DG;WZ08-692;REAL;2017;104.3;e;;0.0 -D;DG;WZ08-692;REAL;2018;107.2;e;;0.0 -D;DG;WZ08-692;REAL;2019;111.3;e;;0.0 -D;DG;WZ08-692;REAL;2020;113.1;e;;0.0 -D;DG;WZ08-692;REAL;2021;116.5;e;;0.0 -D;DG;WZ08-692;REAL;2022;123.3;e;;0.0 -D;DG;WZ08-692;REAL;2023;127.7;p;;0.0 -D;DG;WZ08-692;REAL;2024;130.0;p;;0.0 -D;DG;WZ08-69;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-69;NOMINAL;2016;102.9;e;;0.0 -D;DG;WZ08-69;NOMINAL;2017;106.1;e;;0.0 -D;DG;WZ08-69;NOMINAL;2018;110.9;e;;0.0 -D;DG;WZ08-69;NOMINAL;2019;116.4;e;;0.0 -D;DG;WZ08-69;NOMINAL;2020;121.0;e;;0.0 -D;DG;WZ08-69;NOMINAL;2021;126.0;e;;0.0 -D;DG;WZ08-69;NOMINAL;2022;132.9;e;;0.0 -D;DG;WZ08-69;NOMINAL;2023;139.9;p;;0.0 -D;DG;WZ08-69;NOMINAL;2024;145.9;p;;0.0 -D;DG;WZ08-69;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-69;REAL;2016;101.8;e;;0.0 -D;DG;WZ08-69;REAL;2017;104.0;e;;0.0 -D;DG;WZ08-69;REAL;2018;107.2;e;;0.0 -D;DG;WZ08-69;REAL;2019;111.1;e;;0.0 -D;DG;WZ08-69;REAL;2020;112.4;e;;0.0 -D;DG;WZ08-69;REAL;2021;113.2;e;;0.0 -D;DG;WZ08-69;REAL;2022;116.4;e;;0.0 -D;DG;WZ08-69;REAL;2023;118.0;p;;0.0 -D;DG;WZ08-69;REAL;2024;120.3;p;;0.0 -D;DG;WZ08-7021;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7021;NOMINAL;2016;112.6;e;;0.0 -D;DG;WZ08-7021;NOMINAL;2017;105.6;e;;0.0 -D;DG;WZ08-7021;NOMINAL;2018;110.4;e;;0.0 -D;DG;WZ08-7021;NOMINAL;2019;114.1;e;;0.0 -D;DG;WZ08-7021;NOMINAL;2020;110.8;e;;0.0 -D;DG;WZ08-7021;NOMINAL;2021;116.9;e;;0.0 -D;DG;WZ08-7021;NOMINAL;2022;130.7;e;;0.0 -D;DG;WZ08-7021;NOMINAL;2023;137.0;p;;0.0 -D;DG;WZ08-7021;NOMINAL;2024;139.8;p;;0.0 -D;DG;WZ08-7022;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7022;NOMINAL;2016;109.7;e;;0.0 -D;DG;WZ08-7022;NOMINAL;2017;115.7;e;;0.0 -D;DG;WZ08-7022;NOMINAL;2018;123.9;e;;0.0 -D;DG;WZ08-7022;NOMINAL;2019;124.0;e;;0.0 -D;DG;WZ08-7022;NOMINAL;2020;121.7;e;;0.0 -D;DG;WZ08-7022;NOMINAL;2021;136.5;e;;0.0 -D;DG;WZ08-7022;NOMINAL;2022;155.0;e;;0.0 -D;DG;WZ08-7022;NOMINAL;2023;159.5;p;;0.0 -D;DG;WZ08-7022;NOMINAL;2024;160.0;p;;0.0 -D;DG;WZ08-702;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-702;NOMINAL;2016;109.8;e;;0.0 -D;DG;WZ08-702;NOMINAL;2017;115.2;e;;0.0 -D;DG;WZ08-702;NOMINAL;2018;123.2;e;;0.0 -D;DG;WZ08-702;NOMINAL;2019;123.6;e;;0.0 -D;DG;WZ08-702;NOMINAL;2020;121.2;e;;0.0 -D;DG;WZ08-702;NOMINAL;2021;135.5;e;;0.0 -D;DG;WZ08-702;NOMINAL;2022;153.8;e;;0.0 -D;DG;WZ08-702;NOMINAL;2023;158.4;p;;0.0 -D;DG;WZ08-702;NOMINAL;2024;159.0;p;;0.0 -D;DG;WZ08-702;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-702;REAL;2016;109.2;e;;0.0 -D;DG;WZ08-702;REAL;2017;113.5;e;;0.0 -D;DG;WZ08-702;REAL;2018;120.7;e;;0.0 -D;DG;WZ08-702;REAL;2019;119.7;e;;0.0 -D;DG;WZ08-702;REAL;2020;116.9;e;;0.0 -D;DG;WZ08-702;REAL;2021;130.0;e;;0.0 -D;DG;WZ08-702;REAL;2022;144.8;e;;0.0 -D;DG;WZ08-702;REAL;2023;144.9;p;;0.0 -D;DG;WZ08-702;REAL;2024;142.8;p;;0.0 -D;DG;WZ08-70;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-70;NOMINAL;2016;109.8;e;;0.0 -D;DG;WZ08-70;NOMINAL;2017;115.2;e;;0.0 -D;DG;WZ08-70;NOMINAL;2018;123.2;e;;0.0 -D;DG;WZ08-70;NOMINAL;2019;123.6;e;;0.0 -D;DG;WZ08-70;NOMINAL;2020;121.2;e;;0.0 -D;DG;WZ08-70;NOMINAL;2021;135.5;e;;0.0 -D;DG;WZ08-70;NOMINAL;2022;153.8;e;;0.0 -D;DG;WZ08-70;NOMINAL;2023;158.4;p;;0.0 -D;DG;WZ08-70;NOMINAL;2024;159.0;p;;0.0 -D;DG;WZ08-70;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-70;REAL;2016;109.2;e;;0.0 -D;DG;WZ08-70;REAL;2017;113.5;e;;0.0 -D;DG;WZ08-70;REAL;2018;120.7;e;;0.0 -D;DG;WZ08-70;REAL;2019;119.7;e;;0.0 -D;DG;WZ08-70;REAL;2020;116.9;e;;0.0 -D;DG;WZ08-70;REAL;2021;130.0;e;;0.0 -D;DG;WZ08-70;REAL;2022;144.8;e;;0.0 -D;DG;WZ08-70;REAL;2023;144.9;p;;0.0 -D;DG;WZ08-70;REAL;2024;142.8;p;;0.0 -D;DG;WZ08-71-01;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-71-01;NOMINAL;2016;106.0;e;;0.0 -D;DG;WZ08-71-01;NOMINAL;2017;113.9;e;;0.0 -D;DG;WZ08-71-01;NOMINAL;2018;118.1;e;;0.0 -D;DG;WZ08-71-01;NOMINAL;2019;122.1;e;;0.0 -D;DG;WZ08-71-01;NOMINAL;2020;101.9;e;;0.0 -D;DG;WZ08-71-01;NOMINAL;2021;109.4;e;;0.0 -D;DG;WZ08-71-01;NOMINAL;2022;130.2;e;;0.0 -D;DG;WZ08-71-01;NOMINAL;2023;136.4;p;;0.0 -D;DG;WZ08-71-01;NOMINAL;2024;141.8;p;;0.0 -D;DG;WZ08-71-01;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-71-01;REAL;2016;104.6;e;;0.0 -D;DG;WZ08-71-01;REAL;2017;110.7;e;;0.0 -D;DG;WZ08-71-01;REAL;2018;112.5;e;;0.0 -D;DG;WZ08-71-01;REAL;2019;114.3;e;;0.0 -D;DG;WZ08-71-01;REAL;2020;94.6;e;;0.0 -D;DG;WZ08-71-01;REAL;2021;98.4;e;;0.0 -D;DG;WZ08-71-01;REAL;2022;112.1;e;;0.0 -D;DG;WZ08-71-01;REAL;2023;112.5;p;;0.0 -D;DG;WZ08-71-01;REAL;2024;114.1;p;;0.0 -D;DG;WZ08-7111;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7111;NOMINAL;2016;106.7;e;;0.0 -D;DG;WZ08-7111;NOMINAL;2017;118.6;e;;0.0 -D;DG;WZ08-7111;NOMINAL;2018;124.9;e;;0.0 -D;DG;WZ08-7111;NOMINAL;2019;132.9;e;;0.0 -D;DG;WZ08-7111;NOMINAL;2020;133.2;e;;0.0 -D;DG;WZ08-7111;NOMINAL;2021;135.6;e;;0.0 -D;DG;WZ08-7111;NOMINAL;2022;146.3;e;;0.0 -D;DG;WZ08-7111;NOMINAL;2023;149.9;p;;0.0 -D;DG;WZ08-7111;NOMINAL;2024;148.9;p;;0.0 -D;DG;WZ08-7112;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7112;NOMINAL;2016;99.9;e;;0.0 -D;DG;WZ08-7112;NOMINAL;2017;102.7;e;;0.0 -D;DG;WZ08-7112;NOMINAL;2018;101.3;e;;0.0 -D;DG;WZ08-7112;NOMINAL;2019;107.9;e;;0.0 -D;DG;WZ08-7112;NOMINAL;2020;108.8;e;;0.0 -D;DG;WZ08-7112;NOMINAL;2021;110.8;e;;0.0 -D;DG;WZ08-7112;NOMINAL;2022;126.3;e;;0.0 -D;DG;WZ08-7112;NOMINAL;2023;132.8;p;;0.0 -D;DG;WZ08-7112;NOMINAL;2024;140.6;p;;0.0 -D;DG;WZ08-711;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-711;NOMINAL;2016;101.0;e;;0.0 -D;DG;WZ08-711;NOMINAL;2017;105.2;e;;0.0 -D;DG;WZ08-711;NOMINAL;2018;104.9;e;;0.0 -D;DG;WZ08-711;NOMINAL;2019;111.7;e;;0.0 -D;DG;WZ08-711;NOMINAL;2020;112.5;e;;0.0 -D;DG;WZ08-711;NOMINAL;2021;114.7;e;;0.0 -D;DG;WZ08-711;NOMINAL;2022;129.4;e;;0.0 -D;DG;WZ08-711;NOMINAL;2023;135.4;p;;0.0 -D;DG;WZ08-711;NOMINAL;2024;141.8;p;;0.0 -D;DG;WZ08-711;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-711;REAL;2016;99.8;e;;0.0 -D;DG;WZ08-711;REAL;2017;102.4;e;;0.0 -D;DG;WZ08-711;REAL;2018;100.4;e;;0.0 -D;DG;WZ08-711;REAL;2019;104.8;e;;0.0 -D;DG;WZ08-711;REAL;2020;104.3;e;;0.0 -D;DG;WZ08-711;REAL;2021;103.6;e;;0.0 -D;DG;WZ08-711;REAL;2022;110.3;e;;0.0 -D;DG;WZ08-711;REAL;2023;109.8;p;;0.0 -D;DG;WZ08-711;REAL;2024;111.4;p;;0.0 -D;DG;WZ08-712;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-712;NOMINAL;2016;106.1;e;;0.0 -D;DG;WZ08-712;NOMINAL;2017;107.2;e;;0.0 -D;DG;WZ08-712;NOMINAL;2018;105.8;e;;0.0 -D;DG;WZ08-712;NOMINAL;2019;109.7;e;;0.0 -D;DG;WZ08-712;NOMINAL;2020;112.1;e;;0.0 -D;DG;WZ08-712;NOMINAL;2021;116.7;e;;0.0 -D;DG;WZ08-712;NOMINAL;2022;122.5;e;;0.0 -D;DG;WZ08-712;NOMINAL;2023;132.4;p;;0.0 -D;DG;WZ08-712;NOMINAL;2024;136.4;p;;0.0 -D;DG;WZ08-712;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-712;REAL;2016;105.2;e;;0.0 -D;DG;WZ08-712;REAL;2017;106.7;e;;0.0 -D;DG;WZ08-712;REAL;2018;102.8;e;;0.0 -D;DG;WZ08-712;REAL;2019;104.5;e;;0.0 -D;DG;WZ08-712;REAL;2020;103.8;e;;0.0 -D;DG;WZ08-712;REAL;2021;106.0;e;;0.0 -D;DG;WZ08-712;REAL;2022;106.6;e;;0.0 -D;DG;WZ08-712;REAL;2023;109.6;p;;0.0 -D;DG;WZ08-712;REAL;2024;107.2;p;;0.0 -D;DG;WZ08-71;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-71;NOMINAL;2016;101.7;e;;0.0 -D;DG;WZ08-71;NOMINAL;2017;105.4;e;;0.0 -D;DG;WZ08-71;NOMINAL;2018;105.0;e;;0.0 -D;DG;WZ08-71;NOMINAL;2019;111.5;e;;0.0 -D;DG;WZ08-71;NOMINAL;2020;112.5;e;;0.0 -D;DG;WZ08-71;NOMINAL;2021;114.9;e;;0.0 -D;DG;WZ08-71;NOMINAL;2022;128.5;e;;0.0 -D;DG;WZ08-71;NOMINAL;2023;135.0;p;;0.0 -D;DG;WZ08-71;NOMINAL;2024;141.1;p;;0.0 -D;DG;WZ08-71;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-71;REAL;2016;100.6;e;;0.0 -D;DG;WZ08-71;REAL;2017;102.9;e;;0.0 -D;DG;WZ08-71;REAL;2018;100.7;e;;0.0 -D;DG;WZ08-71;REAL;2019;104.8;e;;0.0 -D;DG;WZ08-71;REAL;2020;104.3;e;;0.0 -D;DG;WZ08-71;REAL;2021;103.9;e;;0.0 -D;DG;WZ08-71;REAL;2022;109.8;e;;0.0 -D;DG;WZ08-71;REAL;2023;109.8;p;;0.0 -D;DG;WZ08-71;REAL;2024;110.8;p;;0.0 -D;DG;WZ08-7311;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7311;NOMINAL;2016;102.6;e;;0.0 -D;DG;WZ08-7311;NOMINAL;2017;98.8;e;;0.0 -D;DG;WZ08-7311;NOMINAL;2018;102.0;e;;0.0 -D;DG;WZ08-7311;NOMINAL;2019;104.2;e;;0.0 -D;DG;WZ08-7311;NOMINAL;2020;90.8;e;;0.0 -D;DG;WZ08-7311;NOMINAL;2021;99.9;e;;0.0 -D;DG;WZ08-7311;NOMINAL;2022;111.2;e;;0.0 -D;DG;WZ08-7311;NOMINAL;2023;116.0;p;;0.0 -D;DG;WZ08-7311;NOMINAL;2024;118.7;p;;0.0 -D;DG;WZ08-7312;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7312;NOMINAL;2016;114.0;e;;0.0 -D;DG;WZ08-7312;NOMINAL;2017;112.7;e;;0.0 -D;DG;WZ08-7312;NOMINAL;2018;118.6;e;;0.0 -D;DG;WZ08-7312;NOMINAL;2019;122.8;e;;0.0 -D;DG;WZ08-7312;NOMINAL;2020;114.1;e;;0.0 -D;DG;WZ08-7312;NOMINAL;2021;139.3;e;;0.0 -D;DG;WZ08-7312;NOMINAL;2022;146.8;e;;0.0 -D;DG;WZ08-7312;NOMINAL;2023;162.6;p;;0.0 -D;DG;WZ08-7312;NOMINAL;2024;172.0;p;;0.0 -D;DG;WZ08-731;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-731;NOMINAL;2016;106.6;e;;0.0 -D;DG;WZ08-731;NOMINAL;2017;103.8;e;;0.0 -D;DG;WZ08-731;NOMINAL;2018;107.9;e;;0.0 -D;DG;WZ08-731;NOMINAL;2019;110.8;e;;0.0 -D;DG;WZ08-731;NOMINAL;2020;99.0;e;;0.0 -D;DG;WZ08-731;NOMINAL;2021;113.9;e;;0.0 -D;DG;WZ08-731;NOMINAL;2022;123.8;e;;0.0 -D;DG;WZ08-731;NOMINAL;2023;132.5;p;;0.0 -D;DG;WZ08-731;NOMINAL;2024;137.6;p;;0.0 -D;DG;WZ08-731;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-731;REAL;2016;104.1;e;;0.0 -D;DG;WZ08-731;REAL;2017;99.4;e;;0.0 -D;DG;WZ08-731;REAL;2018;100.7;e;;0.0 -D;DG;WZ08-731;REAL;2019;102.3;e;;0.0 -D;DG;WZ08-731;REAL;2020;91.0;e;;0.0 -D;DG;WZ08-731;REAL;2021;101.1;e;;0.0 -D;DG;WZ08-731;REAL;2022;107.0;e;;0.0 -D;DG;WZ08-731;REAL;2023;110.6;p;;0.0 -D;DG;WZ08-731;REAL;2024;109.4;p;;0.0 -D;DG;WZ08-732;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-732;NOMINAL;2016;103.1;e;;0.0 -D;DG;WZ08-732;NOMINAL;2017;109.0;e;;0.0 -D;DG;WZ08-732;NOMINAL;2018;109.2;e;;0.0 -D;DG;WZ08-732;NOMINAL;2019;106.1;e;;0.0 -D;DG;WZ08-732;NOMINAL;2020;96.4;e;;0.0 -D;DG;WZ08-732;NOMINAL;2021;110.4;e;;0.0 -D;DG;WZ08-732;NOMINAL;2022;120.6;e;;0.0 -D;DG;WZ08-732;NOMINAL;2023;124.1;p;;0.0 -D;DG;WZ08-732;NOMINAL;2024;118.8;p;;0.0 -D;DG;WZ08-732;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-732;REAL;2016;102.5;e;;0.0 -D;DG;WZ08-732;REAL;2017;108.1;e;;0.0 -D;DG;WZ08-732;REAL;2018;108.2;e;;0.0 -D;DG;WZ08-732;REAL;2019;104.6;e;;0.0 -D;DG;WZ08-732;REAL;2020;94.7;e;;0.0 -D;DG;WZ08-732;REAL;2021;107.7;e;;0.0 -D;DG;WZ08-732;REAL;2022;114.9;e;;0.0 -D;DG;WZ08-732;REAL;2023;114.1;p;;0.0 -D;DG;WZ08-732;REAL;2024;105.4;p;;0.0 -D;DG;WZ08-73;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-73;NOMINAL;2016;106.3;e;;0.0 -D;DG;WZ08-73;NOMINAL;2017;104.2;e;;0.0 -D;DG;WZ08-73;NOMINAL;2018;108.0;e;;0.0 -D;DG;WZ08-73;NOMINAL;2019;110.4;e;;0.0 -D;DG;WZ08-73;NOMINAL;2020;98.8;e;;0.0 -D;DG;WZ08-73;NOMINAL;2021;113.6;e;;0.0 -D;DG;WZ08-73;NOMINAL;2022;123.5;e;;0.0 -D;DG;WZ08-73;NOMINAL;2023;131.9;p;;0.0 -D;DG;WZ08-73;NOMINAL;2024;136.1;p;;0.0 -D;DG;WZ08-73;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-73;REAL;2016;103.9;e;;0.0 -D;DG;WZ08-73;REAL;2017;100.1;e;;0.0 -D;DG;WZ08-73;REAL;2018;101.3;e;;0.0 -D;DG;WZ08-73;REAL;2019;102.5;e;;0.0 -D;DG;WZ08-73;REAL;2020;91.3;e;;0.0 -D;DG;WZ08-73;REAL;2021;101.7;e;;0.0 -D;DG;WZ08-73;REAL;2022;107.7;e;;0.0 -D;DG;WZ08-73;REAL;2023;110.9;p;;0.0 -D;DG;WZ08-73;REAL;2024;109.1;p;;0.0 -D;DG;WZ08-741;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-741;NOMINAL;2016;104.5;e;;0.0 -D;DG;WZ08-741;NOMINAL;2017;111.2;e;;0.0 -D;DG;WZ08-741;NOMINAL;2018;118.3;e;;0.0 -D;DG;WZ08-741;NOMINAL;2019;126.1;e;;0.0 -D;DG;WZ08-741;NOMINAL;2020;113.5;e;;0.0 -D;DG;WZ08-741;NOMINAL;2021;127.8;e;;0.0 -D;DG;WZ08-741;NOMINAL;2022;142.2;e;;0.0 -D;DG;WZ08-741;NOMINAL;2023;148.1;p;;0.0 -D;DG;WZ08-741;NOMINAL;2024;150.8;p;;0.0 -D;DG;WZ08-741;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-741;REAL;2016;104.5;e;;0.0 -D;DG;WZ08-741;REAL;2017;111.0;e;;0.0 -D;DG;WZ08-741;REAL;2018;114.6;e;;0.0 -D;DG;WZ08-741;REAL;2019;121.4;e;;0.0 -D;DG;WZ08-741;REAL;2020;108.3;e;;0.0 -D;DG;WZ08-741;REAL;2021;117.2;e;;0.0 -D;DG;WZ08-741;REAL;2022;128.8;e;;0.0 -D;DG;WZ08-741;REAL;2023;131.7;p;;0.0 -D;DG;WZ08-741;REAL;2024;135.2;p;;0.0 -D;DG;WZ08-742;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-742;NOMINAL;2016;101.2;e;;0.0 -D;DG;WZ08-742;NOMINAL;2017;105.6;e;;0.0 -D;DG;WZ08-742;NOMINAL;2018;105.4;e;;0.0 -D;DG;WZ08-742;NOMINAL;2019;109.4;e;;0.0 -D;DG;WZ08-742;NOMINAL;2020;97.7;e;;0.0 -D;DG;WZ08-742;NOMINAL;2021;102.4;e;;0.0 -D;DG;WZ08-742;NOMINAL;2022;104.8;e;;0.0 -D;DG;WZ08-742;NOMINAL;2023;102.4;p;;0.0 -D;DG;WZ08-742;NOMINAL;2024;102.0;p;;0.0 -D;DG;WZ08-742;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-742;REAL;2016;101.3;e;;0.0 -D;DG;WZ08-742;REAL;2017;105.2;e;;0.0 -D;DG;WZ08-742;REAL;2018;102.1;e;;0.0 -D;DG;WZ08-742;REAL;2019;105.3;e;;0.0 -D;DG;WZ08-742;REAL;2020;93.0;e;;0.0 -D;DG;WZ08-742;REAL;2021;93.8;e;;0.0 -D;DG;WZ08-742;REAL;2022;94.9;e;;0.0 -D;DG;WZ08-742;REAL;2023;91.0;p;;0.0 -D;DG;WZ08-742;REAL;2024;91.5;p;;0.0 -D;DG;WZ08-743;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-743;NOMINAL;2016;110.5;e;;0.0 -D;DG;WZ08-743;NOMINAL;2017;117.3;e;;0.0 -D;DG;WZ08-743;NOMINAL;2018;117.7;e;;0.0 -D;DG;WZ08-743;NOMINAL;2019;109.4;e;;0.0 -D;DG;WZ08-743;NOMINAL;2020;99.9;e;;0.0 -D;DG;WZ08-743;NOMINAL;2021;106.4;e;;0.0 -D;DG;WZ08-743;NOMINAL;2022;110.0;e;;0.0 -D;DG;WZ08-743;NOMINAL;2023;111.4;p;;0.0 -D;DG;WZ08-743;NOMINAL;2024;108.4;p;;0.0 -D;DG;WZ08-743;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-743;REAL;2016;109.1;e;;0.0 -D;DG;WZ08-743;REAL;2017;114.1;e;;0.0 -D;DG;WZ08-743;REAL;2018;112.7;e;;0.0 -D;DG;WZ08-743;REAL;2019;103.3;e;;0.0 -D;DG;WZ08-743;REAL;2020;93.8;e;;0.0 -D;DG;WZ08-743;REAL;2021;94.2;e;;0.0 -D;DG;WZ08-743;REAL;2022;94.9;e;;0.0 -D;DG;WZ08-743;REAL;2023;92.4;p;;0.0 -D;DG;WZ08-743;REAL;2024;87.0;p;;0.0 -D;DG;WZ08-749;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-749;NOMINAL;2016;105.4;e;;0.0 -D;DG;WZ08-749;NOMINAL;2017;99.4;e;;0.0 -D;DG;WZ08-749;NOMINAL;2018;98.8;e;;0.0 -D;DG;WZ08-749;NOMINAL;2019;99.9;e;;0.0 -D;DG;WZ08-749;NOMINAL;2020;105.6;e;;0.0 -D;DG;WZ08-749;NOMINAL;2021;122.8;e;;0.0 -D;DG;WZ08-749;NOMINAL;2022;142.6;e;;0.0 -D;DG;WZ08-749;NOMINAL;2023;153.5;p;;0.0 -D;DG;WZ08-749;NOMINAL;2024;161.7;p;;0.0 -D;DG;WZ08-749;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-749;REAL;2016;104.6;e;;0.0 -D;DG;WZ08-749;REAL;2017;98.0;e;;0.0 -D;DG;WZ08-749;REAL;2018;96.3;e;;0.0 -D;DG;WZ08-749;REAL;2019;96.4;e;;0.0 -D;DG;WZ08-749;REAL;2020;102.6;e;;0.0 -D;DG;WZ08-749;REAL;2021;107.9;e;;0.0 -D;DG;WZ08-749;REAL;2022;123.4;e;;0.0 -D;DG;WZ08-749;REAL;2023;130.0;p;;0.0 -D;DG;WZ08-749;REAL;2024;136.5;p;;0.0 -D;DG;WZ08-74;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-74;NOMINAL;2016;105.1;e;;0.0 -D;DG;WZ08-74;NOMINAL;2017;102.8;e;;0.0 -D;DG;WZ08-74;NOMINAL;2018;103.4;e;;0.0 -D;DG;WZ08-74;NOMINAL;2019;105.4;e;;0.0 -D;DG;WZ08-74;NOMINAL;2020;105.9;e;;0.0 -D;DG;WZ08-74;NOMINAL;2021;121.0;e;;0.0 -D;DG;WZ08-74;NOMINAL;2022;137.5;e;;0.0 -D;DG;WZ08-74;NOMINAL;2023;145.9;p;;0.0 -D;DG;WZ08-74;NOMINAL;2024;152.0;p;;0.0 -D;DG;WZ08-74;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-74;REAL;2016;104.5;e;;0.0 -D;DG;WZ08-74;REAL;2017;101.5;e;;0.0 -D;DG;WZ08-74;REAL;2018;100.6;e;;0.0 -D;DG;WZ08-74;REAL;2019;101.6;e;;0.0 -D;DG;WZ08-74;REAL;2020;102.2;e;;0.0 -D;DG;WZ08-74;REAL;2021;107.5;e;;0.0 -D;DG;WZ08-74;REAL;2022;120.4;e;;0.0 -D;DG;WZ08-74;REAL;2023;124.9;p;;0.0 -D;DG;WZ08-74;REAL;2024;129.8;p;;0.0 -D;DG;WZ08-7711;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7711;NOMINAL;2016;114.8;e;;0.0 -D;DG;WZ08-7711;NOMINAL;2017;111.2;e;;0.0 -D;DG;WZ08-7711;NOMINAL;2018;120.3;e;;0.0 -D;DG;WZ08-7711;NOMINAL;2019;139.9;e;;0.0 -D;DG;WZ08-7711;NOMINAL;2020;133.4;e;;0.0 -D;DG;WZ08-7711;NOMINAL;2021;204.6;e;;0.0 -D;DG;WZ08-7711;NOMINAL;2022;222.2;e;;0.0 -D;DG;WZ08-7711;NOMINAL;2023;235.7;p;;0.0 -D;DG;WZ08-7711;NOMINAL;2024;193.4;p;;0.0 -D;DG;WZ08-7712;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7712;NOMINAL;2016;99.1;e;;0.0 -D;DG;WZ08-7712;NOMINAL;2017;103.1;e;;0.0 -D;DG;WZ08-7712;NOMINAL;2018;108.3;e;;0.0 -D;DG;WZ08-7712;NOMINAL;2019;125.8;e;;0.0 -D;DG;WZ08-7712;NOMINAL;2020;121.2;e;;0.0 -D;DG;WZ08-7712;NOMINAL;2021;141.8;e;;0.0 -D;DG;WZ08-7712;NOMINAL;2022;156.6;e;;0.0 -D;DG;WZ08-7712;NOMINAL;2023;167.6;p;;0.0 -D;DG;WZ08-7712;NOMINAL;2024;158.1;p;;0.0 -D;DG;WZ08-771;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-771;NOMINAL;2016;112.6;e;;0.0 -D;DG;WZ08-771;NOMINAL;2017;110.0;e;;0.0 -D;DG;WZ08-771;NOMINAL;2018;118.6;e;;0.0 -D;DG;WZ08-771;NOMINAL;2019;137.9;e;;0.0 -D;DG;WZ08-771;NOMINAL;2020;131.7;e;;0.0 -D;DG;WZ08-771;NOMINAL;2021;195.8;e;;0.0 -D;DG;WZ08-771;NOMINAL;2022;213.0;e;;0.0 -D;DG;WZ08-771;NOMINAL;2023;226.1;p;;0.0 -D;DG;WZ08-771;NOMINAL;2024;188.5;p;;0.0 -D;DG;WZ08-771;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-771;REAL;2016;111.0;e;;0.0 -D;DG;WZ08-771;REAL;2017;106.9;e;;0.0 -D;DG;WZ08-771;REAL;2018;113.2;e;;0.0 -D;DG;WZ08-771;REAL;2019;128.9;e;;0.0 -D;DG;WZ08-771;REAL;2020;122.1;e;;0.0 -D;DG;WZ08-771;REAL;2021;174.1;e;;0.0 -D;DG;WZ08-771;REAL;2022;173.9;e;;0.0 -D;DG;WZ08-771;REAL;2023;171.3;p;;0.0 -D;DG;WZ08-771;REAL;2024;139.2;p;;0.0 -D;DG;WZ08-7721;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7721;NOMINAL;2016;84.2;e;;0.0 -D;DG;WZ08-7721;NOMINAL;2017;129.1;e;;0.0 -D;DG;WZ08-7721;NOMINAL;2018;175.7;e;;0.0 -D;DG;WZ08-7721;NOMINAL;2019;276.9;e;;0.0 -D;DG;WZ08-7721;NOMINAL;2020;267.2;e;;0.0 -D;DG;WZ08-7721;NOMINAL;2021;415.2;e;;0.0 -D;DG;WZ08-7721;NOMINAL;2022;529.7;e;;0.0 -D;DG;WZ08-7721;NOMINAL;2023;557.4;p;;0.0 -D;DG;WZ08-7721;NOMINAL;2024;611.6;p;;0.0 -D;DG;WZ08-7722;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7722;NOMINAL;2016;116.8;e;;0.0 -D;DG;WZ08-7722;NOMINAL;2017;228.0;e;;0.0 -D;DG;WZ08-7722;NOMINAL;2018;58.0;e;;0.0 -D;DG;WZ08-7722;NOMINAL;2019;51.9;e;;0.0 -D;DG;WZ08-7722;NOMINAL;2020;27.1;e;;0.0 -D;DG;WZ08-7722;NOMINAL;2021;18.4;e;;0.0 -D;DG;WZ08-7722;NOMINAL;2022;18.1;e;;0.0 -D;DG;WZ08-7722;NOMINAL;2023;20.2;p;;0.0 -D;DG;WZ08-7722;NOMINAL;2024;21.9;p;;0.0 -D;DG;WZ08-7729;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7729;NOMINAL;2016;112.1;e;;0.0 -D;DG;WZ08-7729;NOMINAL;2017;115.9;e;;0.0 -D;DG;WZ08-7729;NOMINAL;2018;123.3;e;;0.0 -D;DG;WZ08-7729;NOMINAL;2019;134.3;e;;0.0 -D;DG;WZ08-7729;NOMINAL;2020;149.0;e;;0.0 -D;DG;WZ08-7729;NOMINAL;2021;188.2;e;;0.0 -D;DG;WZ08-7729;NOMINAL;2022;226.6;e;;0.0 -D;DG;WZ08-7729;NOMINAL;2023;232.7;p;;0.0 -D;DG;WZ08-7729;NOMINAL;2024;240.1;p;;0.0 -D;DG;WZ08-772;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-772;NOMINAL;2016;111.3;e;;0.0 -D;DG;WZ08-772;NOMINAL;2017;127.4;e;;0.0 -D;DG;WZ08-772;NOMINAL;2018;119.4;e;;0.0 -D;DG;WZ08-772;NOMINAL;2019;132.9;e;;0.0 -D;DG;WZ08-772;NOMINAL;2020;142.6;e;;0.0 -D;DG;WZ08-772;NOMINAL;2021;182.2;e;;0.0 -D;DG;WZ08-772;NOMINAL;2022;220.4;e;;0.0 -D;DG;WZ08-772;NOMINAL;2023;227.0;p;;0.0 -D;DG;WZ08-772;NOMINAL;2024;236.0;p;;0.0 -D;DG;WZ08-772;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-772;REAL;2016;109.8;e;;0.0 -D;DG;WZ08-772;REAL;2017;124.7;e;;0.0 -D;DG;WZ08-772;REAL;2018;115.0;e;;0.0 -D;DG;WZ08-772;REAL;2019;127.0;e;;0.0 -D;DG;WZ08-772;REAL;2020;134.8;e;;0.0 -D;DG;WZ08-772;REAL;2021;167.1;e;;0.0 -D;DG;WZ08-772;REAL;2022;193.0;e;;0.0 -D;DG;WZ08-772;REAL;2023;196.5;p;;0.0 -D;DG;WZ08-772;REAL;2024;201.4;p;;0.0 -D;DG;WZ08-7731;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7731;NOMINAL;2016;59.7;e;;0.0 -D;DG;WZ08-7731;NOMINAL;2017;61.6;e;;0.0 -D;DG;WZ08-7731;NOMINAL;2018;59.1;e;;0.0 -D;DG;WZ08-7731;NOMINAL;2019;57.5;e;;0.0 -D;DG;WZ08-7731;NOMINAL;2020;72.6;e;;0.0 -D;DG;WZ08-7731;NOMINAL;2021;103.7;e;;0.0 -D;DG;WZ08-7731;NOMINAL;2022;106.7;e;;0.0 -D;DG;WZ08-7731;NOMINAL;2023;87.4;p;;0.0 -D;DG;WZ08-7731;NOMINAL;2024;103.0;p;;0.0 -D;DG;WZ08-7732;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7732;NOMINAL;2016;102.4;e;;0.0 -D;DG;WZ08-7732;NOMINAL;2017;112.3;e;;0.0 -D;DG;WZ08-7732;NOMINAL;2018;120.2;e;;0.0 -D;DG;WZ08-7732;NOMINAL;2019;152.4;e;;0.0 -D;DG;WZ08-7732;NOMINAL;2020;160.9;e;;0.0 -D;DG;WZ08-7732;NOMINAL;2021;180.1;e;;0.0 -D;DG;WZ08-7732;NOMINAL;2022;193.7;e;;0.0 -D;DG;WZ08-7732;NOMINAL;2023;204.2;p;;0.0 -D;DG;WZ08-7732;NOMINAL;2024;213.4;p;;0.0 -D;DG;WZ08-7733;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7733;NOMINAL;2016;97.2;e;;0.0 -D;DG;WZ08-7733;NOMINAL;2017;102.0;e;;0.0 -D;DG;WZ08-7733;NOMINAL;2018;112.8;e;;0.0 -D;DG;WZ08-7733;NOMINAL;2019;142.9;e;;0.0 -D;DG;WZ08-7733;NOMINAL;2020;128.2;e;;0.0 -D;DG;WZ08-7733;NOMINAL;2021;121.7;e;;0.0 -D;DG;WZ08-7733;NOMINAL;2022;134.2;e;;0.0 -D;DG;WZ08-7733;NOMINAL;2023;136.9;p;;0.0 -D;DG;WZ08-7733;NOMINAL;2024;147.7;p;;0.0 -D;DG;WZ08-7734;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7734;NOMINAL;2016;47.3;e;;0.0 -D;DG;WZ08-7734;NOMINAL;2017;55.1;e;;0.0 -D;DG;WZ08-7734;NOMINAL;2018;50.3;e;;0.0 -D;DG;WZ08-7734;NOMINAL;2019;48.6;e;;0.0 -D;DG;WZ08-7734;NOMINAL;2020;87.2;e;;0.0 -D;DG;WZ08-7734;NOMINAL;2021;63.3;e;;0.0 -D;DG;WZ08-7734;NOMINAL;2022;64.5;e;;0.0 -D;DG;WZ08-7734;NOMINAL;2023;65.1;p;;0.0 -D;DG;WZ08-7734;NOMINAL;2024;65.8;p;;0.0 -D;DG;WZ08-7735;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7735;NOMINAL;2016;66.5;e;;0.0 -D;DG;WZ08-7735;NOMINAL;2017;84.9;e;;0.0 -D;DG;WZ08-7735;NOMINAL;2018;200.4;e;;0.0 -D;DG;WZ08-7735;NOMINAL;2019;129.9;e;;0.0 -D;DG;WZ08-7735;NOMINAL;2020;45.5;e;;0.0 -D;DG;WZ08-7735;NOMINAL;2021;80.6;e;;0.0 -D;DG;WZ08-7735;NOMINAL;2022;53.5;e;;0.0 -D;DG;WZ08-7735;NOMINAL;2023;38.2;p;;0.0 -D;DG;WZ08-7735;NOMINAL;2024;53.6;p;;0.0 -D;DG;WZ08-7739;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7739;NOMINAL;2016;108.8;e;;0.0 -D;DG;WZ08-7739;NOMINAL;2017;115.0;e;;0.0 -D;DG;WZ08-7739;NOMINAL;2018;114.4;e;;0.0 -D;DG;WZ08-7739;NOMINAL;2019;128.6;e;;0.0 -D;DG;WZ08-7739;NOMINAL;2020;132.2;e;;0.0 -D;DG;WZ08-7739;NOMINAL;2021;203.3;e;;0.0 -D;DG;WZ08-7739;NOMINAL;2022;225.4;e;;0.0 -D;DG;WZ08-7739;NOMINAL;2023;234.0;p;;0.0 -D;DG;WZ08-7739;NOMINAL;2024;246.4;p;;0.0 -D;DG;WZ08-773;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-773;NOMINAL;2016;99.6;e;;0.0 -D;DG;WZ08-773;NOMINAL;2017;106.9;e;;0.0 -D;DG;WZ08-773;NOMINAL;2018;114.8;e;;0.0 -D;DG;WZ08-773;NOMINAL;2019;130.7;e;;0.0 -D;DG;WZ08-773;NOMINAL;2020;130.5;e;;0.0 -D;DG;WZ08-773;NOMINAL;2021;171.6;e;;0.0 -D;DG;WZ08-773;NOMINAL;2022;186.6;e;;0.0 -D;DG;WZ08-773;NOMINAL;2023;192.4;p;;0.0 -D;DG;WZ08-773;NOMINAL;2024;203.6;p;;0.0 -D;DG;WZ08-773;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-773;REAL;2016;99.8;e;;0.0 -D;DG;WZ08-773;REAL;2017;106.6;e;;0.0 -D;DG;WZ08-773;REAL;2018;113.9;e;;0.0 -D;DG;WZ08-773;REAL;2019;129.8;e;;0.0 -D;DG;WZ08-773;REAL;2020;130.7;e;;0.0 -D;DG;WZ08-773;REAL;2021;168.8;e;;0.0 -D;DG;WZ08-773;REAL;2022;175.9;e;;0.0 -D;DG;WZ08-773;REAL;2023;174.4;p;;0.0 -D;DG;WZ08-773;REAL;2024;183.4;p;;0.0 -D;DG;WZ08-774;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-774;NOMINAL;2016;107.1;e;;0.0 -D;DG;WZ08-774;NOMINAL;2017;122.0;e;;0.0 -D;DG;WZ08-774;NOMINAL;2018;127.9;e;;0.0 -D;DG;WZ08-774;NOMINAL;2019;98.4;e;;0.0 -D;DG;WZ08-774;NOMINAL;2020;48.9;e;;0.0 -D;DG;WZ08-774;NOMINAL;2021;51.2;e;;0.0 -D;DG;WZ08-774;NOMINAL;2022;56.7;e;;0.0 -D;DG;WZ08-774;NOMINAL;2023;54.6;p;;0.0 -D;DG;WZ08-774;NOMINAL;2024;53.4;p;;0.0 -D;DG;WZ08-774;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-774;REAL;2016;104.8;e;;0.0 -D;DG;WZ08-774;REAL;2017;118.4;e;;0.0 -D;DG;WZ08-774;REAL;2018;123.3;e;;0.0 -D;DG;WZ08-774;REAL;2019;94.3;e;;0.0 -D;DG;WZ08-774;REAL;2020;46.5;e;;0.0 -D;DG;WZ08-774;REAL;2021;48.0;e;;0.0 -D;DG;WZ08-774;REAL;2022;51.7;e;;0.0 -D;DG;WZ08-774;REAL;2023;48.5;p;;0.0 -D;DG;WZ08-774;REAL;2024;46.4;p;;0.0 -D;DG;WZ08-77;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-77;NOMINAL;2016;105.8;e;;0.0 -D;DG;WZ08-77;NOMINAL;2017;112.4;e;;0.0 -D;DG;WZ08-77;NOMINAL;2018;118.4;e;;0.0 -D;DG;WZ08-77;NOMINAL;2019;128.3;e;;0.0 -D;DG;WZ08-77;NOMINAL;2020;120.2;e;;0.0 -D;DG;WZ08-77;NOMINAL;2021;162.1;e;;0.0 -D;DG;WZ08-77;NOMINAL;2022;178.9;e;;0.0 -D;DG;WZ08-77;NOMINAL;2023;185.8;p;;0.0 -D;DG;WZ08-77;NOMINAL;2024;180.7;p;;0.0 -D;DG;WZ08-77;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-77;REAL;2016;104.9;e;;0.0 -D;DG;WZ08-77;REAL;2017;110.5;e;;0.0 -D;DG;WZ08-77;REAL;2018;115.2;e;;0.0 -D;DG;WZ08-77;REAL;2019;123.9;e;;0.0 -D;DG;WZ08-77;REAL;2020;116.2;e;;0.0 -D;DG;WZ08-77;REAL;2021;152.3;e;;0.0 -D;DG;WZ08-77;REAL;2022;158.9;e;;0.0 -D;DG;WZ08-77;REAL;2023;157.4;p;;0.0 -D;DG;WZ08-77;REAL;2024;152.3;p;;0.0 -D;DG;WZ08-781;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-781;NOMINAL;2016;114.3;e;;0.0 -D;DG;WZ08-781;NOMINAL;2017;124.6;e;;0.0 -D;DG;WZ08-781;NOMINAL;2018;141.2;e;;0.0 -D;DG;WZ08-781;NOMINAL;2019;141.8;e;;0.0 -D;DG;WZ08-781;NOMINAL;2020;120.7;e;;0.0 -D;DG;WZ08-781;NOMINAL;2021;150.8;e;;0.0 -D;DG;WZ08-781;NOMINAL;2022;175.0;e;;0.0 -D;DG;WZ08-781;NOMINAL;2023;181.9;p;;0.0 -D;DG;WZ08-781;NOMINAL;2024;172.3;p;;0.0 -D;DG;WZ08-781;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-781;REAL;2016;111.4;e;;0.0 -D;DG;WZ08-781;REAL;2017;118.5;e;;0.0 -D;DG;WZ08-781;REAL;2018;130.0;e;;0.0 -D;DG;WZ08-781;REAL;2019;126.0;e;;0.0 -D;DG;WZ08-781;REAL;2020;108.9;e;;0.0 -D;DG;WZ08-781;REAL;2021;131.3;e;;0.0 -D;DG;WZ08-781;REAL;2022;146.6;e;;0.0 -D;DG;WZ08-781;REAL;2023;144.0;p;;0.0 -D;DG;WZ08-781;REAL;2024;129.3;p;;0.0 -D;DG;WZ08-782;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-782;NOMINAL;2016;104.0;e;;0.0 -D;DG;WZ08-782;NOMINAL;2017;111.1;e;;0.0 -D;DG;WZ08-782;NOMINAL;2018;112.5;e;;0.0 -D;DG;WZ08-782;NOMINAL;2019;102.8;e;;0.0 -D;DG;WZ08-782;NOMINAL;2020;83.0;e;;0.0 -D;DG;WZ08-782;NOMINAL;2021;95.2;e;;0.0 -D;DG;WZ08-782;NOMINAL;2022;103.0;e;;0.0 -D;DG;WZ08-782;NOMINAL;2023;104.9;p;;0.0 -D;DG;WZ08-782;NOMINAL;2024;98.5;p;;0.0 -D;DG;WZ08-782;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-782;REAL;2016;101.7;e;;0.0 -D;DG;WZ08-782;REAL;2017;106.1;e;;0.0 -D;DG;WZ08-782;REAL;2018;104.3;e;;0.0 -D;DG;WZ08-782;REAL;2019;92.7;e;;0.0 -D;DG;WZ08-782;REAL;2020;72.9;e;;0.0 -D;DG;WZ08-782;REAL;2021;81.3;e;;0.0 -D;DG;WZ08-782;REAL;2022;84.5;e;;0.0 -D;DG;WZ08-782;REAL;2023;80.7;p;;0.0 -D;DG;WZ08-782;REAL;2024;72.5;p;;0.0 -D;DG;WZ08-783;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-783;NOMINAL;2016;95.9;e;;0.0 -D;DG;WZ08-783;NOMINAL;2017;115.0;e;;0.0 -D;DG;WZ08-783;NOMINAL;2018;93.5;e;;0.0 -D;DG;WZ08-783;NOMINAL;2019;84.4;e;;0.0 -D;DG;WZ08-783;NOMINAL;2020;75.9;e;;0.0 -D;DG;WZ08-783;NOMINAL;2021;83.9;e;;0.0 -D;DG;WZ08-783;NOMINAL;2022;90.8;e;;0.0 -D;DG;WZ08-783;NOMINAL;2023;93.7;p;;0.0 -D;DG;WZ08-783;NOMINAL;2024;90.0;p;;0.0 -D;DG;WZ08-783;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-783;REAL;2016;93.8;e;;0.0 -D;DG;WZ08-783;REAL;2017;109.8;e;;0.0 -D;DG;WZ08-783;REAL;2018;86.7;e;;0.0 -D;DG;WZ08-783;REAL;2019;76.1;e;;0.0 -D;DG;WZ08-783;REAL;2020;66.8;e;;0.0 -D;DG;WZ08-783;REAL;2021;71.8;e;;0.0 -D;DG;WZ08-783;REAL;2022;74.6;e;;0.0 -D;DG;WZ08-783;REAL;2023;72.3;p;;0.0 -D;DG;WZ08-783;REAL;2024;66.3;p;;0.0 -D;DG;WZ08-78;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-78;NOMINAL;2016;103.4;e;;0.0 -D;DG;WZ08-78;NOMINAL;2017;112.7;e;;0.0 -D;DG;WZ08-78;NOMINAL;2018;111.4;e;;0.0 -D;DG;WZ08-78;NOMINAL;2019;102.5;e;;0.0 -D;DG;WZ08-78;NOMINAL;2020;84.4;e;;0.0 -D;DG;WZ08-78;NOMINAL;2021;97.2;e;;0.0 -D;DG;WZ08-78;NOMINAL;2022;106.0;e;;0.0 -D;DG;WZ08-78;NOMINAL;2023;108.4;p;;0.0 -D;DG;WZ08-78;NOMINAL;2024;102.2;p;;0.0 -D;DG;WZ08-78;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-78;REAL;2016;101.1;e;;0.0 -D;DG;WZ08-78;REAL;2017;107.6;e;;0.0 -D;DG;WZ08-78;REAL;2018;103.3;e;;0.0 -D;DG;WZ08-78;REAL;2019;92.4;e;;0.0 -D;DG;WZ08-78;REAL;2020;74.3;e;;0.0 -D;DG;WZ08-78;REAL;2021;83.2;e;;0.0 -D;DG;WZ08-78;REAL;2022;87.1;e;;0.0 -D;DG;WZ08-78;REAL;2023;83.7;p;;0.0 -D;DG;WZ08-78;REAL;2024;75.4;p;;0.0 -D;DG;WZ08-7911;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7911;NOMINAL;2016;106.7;e;;0.0 -D;DG;WZ08-7911;NOMINAL;2017;112.0;e;;0.0 -D;DG;WZ08-7911;NOMINAL;2018;114.3;e;;0.0 -D;DG;WZ08-7911;NOMINAL;2019;114.4;e;;0.0 -D;DG;WZ08-7911;NOMINAL;2020;41.6;e;;0.0 -D;DG;WZ08-7911;NOMINAL;2021;50.7;e;;0.0 -D;DG;WZ08-7911;NOMINAL;2022;82.9;e;;0.0 -D;DG;WZ08-7911;NOMINAL;2023;113.5;p;;0.0 -D;DG;WZ08-7911;NOMINAL;2024;120.2;p;;0.0 -D;DG;WZ08-7912;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-7912;NOMINAL;2016;97.3;e;;0.0 -D;DG;WZ08-7912;NOMINAL;2017;104.7;e;;0.0 -D;DG;WZ08-7912;NOMINAL;2018;109.5;e;;0.0 -D;DG;WZ08-7912;NOMINAL;2019;111.3;e;;0.0 -D;DG;WZ08-7912;NOMINAL;2020;30.5;e;;0.0 -D;DG;WZ08-7912;NOMINAL;2021;57.0;e;;0.0 -D;DG;WZ08-7912;NOMINAL;2022;122.8;e;;0.0 -D;DG;WZ08-7912;NOMINAL;2023;152.1;p;;0.0 -D;DG;WZ08-7912;NOMINAL;2024;165.6;p;;0.0 -D;DG;WZ08-791;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-791;NOMINAL;2016;99.0;e;;0.0 -D;DG;WZ08-791;NOMINAL;2017;106.0;e;;0.0 -D;DG;WZ08-791;NOMINAL;2018;110.3;e;;0.0 -D;DG;WZ08-791;NOMINAL;2019;111.9;e;;0.0 -D;DG;WZ08-791;NOMINAL;2020;32.4;e;;0.0 -D;DG;WZ08-791;NOMINAL;2021;55.9;e;;0.0 -D;DG;WZ08-791;NOMINAL;2022;115.9;e;;0.0 -D;DG;WZ08-791;NOMINAL;2023;145.5;p;;0.0 -D;DG;WZ08-791;NOMINAL;2024;157.7;p;;0.0 -D;DG;WZ08-791;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-791;REAL;2016;100.7;e;;0.0 -D;DG;WZ08-791;REAL;2017;105.2;e;;0.0 -D;DG;WZ08-791;REAL;2018;106.4;e;;0.0 -D;DG;WZ08-791;REAL;2019;107.6;e;;0.0 -D;DG;WZ08-791;REAL;2020;35.3;e;;0.0 -D;DG;WZ08-791;REAL;2021;51.9;e;;0.0 -D;DG;WZ08-791;REAL;2022;100.1;e;;0.0 -D;DG;WZ08-791;REAL;2023;115.8;p;;0.0 -D;DG;WZ08-791;REAL;2024;120.2;p;;0.0 -D;DG;WZ08-799;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-799;NOMINAL;2016;109.2;e;;0.0 -D;DG;WZ08-799;NOMINAL;2017;116.3;e;;0.0 -D;DG;WZ08-799;NOMINAL;2018;122.5;e;;0.0 -D;DG;WZ08-799;NOMINAL;2019;113.9;e;;0.0 -D;DG;WZ08-799;NOMINAL;2020;43.4;e;;0.0 -D;DG;WZ08-799;NOMINAL;2021;54.7;e;;0.0 -D;DG;WZ08-799;NOMINAL;2022;94.4;e;;0.0 -D;DG;WZ08-799;NOMINAL;2023;111.1;p;;0.0 -D;DG;WZ08-799;NOMINAL;2024;125.0;p;;0.0 -D;DG;WZ08-799;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-799;REAL;2016;111.0;e;;0.0 -D;DG;WZ08-799;REAL;2017;116.3;e;;0.0 -D;DG;WZ08-799;REAL;2018;119.3;e;;0.0 -D;DG;WZ08-799;REAL;2019;110.9;e;;0.0 -D;DG;WZ08-799;REAL;2020;46.1;e;;0.0 -D;DG;WZ08-799;REAL;2021;51.4;e;;0.0 -D;DG;WZ08-799;REAL;2022;82.7;e;;0.0 -D;DG;WZ08-799;REAL;2023;87.6;p;;0.0 -D;DG;WZ08-799;REAL;2024;94.2;p;;0.0 -D;DG;WZ08-79;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-79;NOMINAL;2016;99.5;e;;0.0 -D;DG;WZ08-79;NOMINAL;2017;106.5;e;;0.0 -D;DG;WZ08-79;NOMINAL;2018;110.9;e;;0.0 -D;DG;WZ08-79;NOMINAL;2019;112.0;e;;0.0 -D;DG;WZ08-79;NOMINAL;2020;32.9;e;;0.0 -D;DG;WZ08-79;NOMINAL;2021;55.8;e;;0.0 -D;DG;WZ08-79;NOMINAL;2022;114.8;e;;0.0 -D;DG;WZ08-79;NOMINAL;2023;143.7;p;;0.0 -D;DG;WZ08-79;NOMINAL;2024;156.1;p;;0.0 -D;DG;WZ08-79;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-79;REAL;2016;101.2;e;;0.0 -D;DG;WZ08-79;REAL;2017;105.8;e;;0.0 -D;DG;WZ08-79;REAL;2018;107.1;e;;0.0 -D;DG;WZ08-79;REAL;2019;107.8;e;;0.0 -D;DG;WZ08-79;REAL;2020;35.8;e;;0.0 -D;DG;WZ08-79;REAL;2021;51.8;e;;0.0 -D;DG;WZ08-79;REAL;2022;99.2;e;;0.0 -D;DG;WZ08-79;REAL;2023;114.3;p;;0.0 -D;DG;WZ08-79;REAL;2024;118.9;p;;0.0 -D;DG;WZ08-801;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-801;NOMINAL;2016;120.7;e;;0.0 -D;DG;WZ08-801;NOMINAL;2017;115.6;e;;0.0 -D;DG;WZ08-801;NOMINAL;2018;113.4;e;;0.0 -D;DG;WZ08-801;NOMINAL;2019;120.3;e;;0.0 -D;DG;WZ08-801;NOMINAL;2020;128.1;e;;0.0 -D;DG;WZ08-801;NOMINAL;2021;143.0;e;;0.0 -D;DG;WZ08-801;NOMINAL;2022;158.0;e;;0.0 -D;DG;WZ08-801;NOMINAL;2023;177.3;p;;0.0 -D;DG;WZ08-801;NOMINAL;2024;193.9;p;;0.0 -D;DG;WZ08-801;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-801;REAL;2016;117.6;e;;0.0 -D;DG;WZ08-801;REAL;2017;109.1;e;;0.0 -D;DG;WZ08-801;REAL;2018;104.4;e;;0.0 -D;DG;WZ08-801;REAL;2019;107.2;e;;0.0 -D;DG;WZ08-801;REAL;2020;111.1;e;;0.0 -D;DG;WZ08-801;REAL;2021;121.9;e;;0.0 -D;DG;WZ08-801;REAL;2022;130.9;e;;0.0 -D;DG;WZ08-801;REAL;2023;136.4;p;;0.0 -D;DG;WZ08-801;REAL;2024;143.8;p;;0.0 -D;DG;WZ08-802;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-802;NOMINAL;2016;111.1;e;;0.0 -D;DG;WZ08-802;NOMINAL;2017;104.0;e;;0.0 -D;DG;WZ08-802;NOMINAL;2018;110.7;e;;0.0 -D;DG;WZ08-802;NOMINAL;2019;114.4;e;;0.0 -D;DG;WZ08-802;NOMINAL;2020;124.0;e;;0.0 -D;DG;WZ08-802;NOMINAL;2021;123.4;e;;0.0 -D;DG;WZ08-802;NOMINAL;2022;135.0;e;;0.0 -D;DG;WZ08-802;NOMINAL;2023;143.4;p;;0.0 -D;DG;WZ08-802;NOMINAL;2024;149.6;p;;0.0 -D;DG;WZ08-802;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-802;REAL;2016;108.2;e;;0.0 -D;DG;WZ08-802;REAL;2017;98.1;e;;0.0 -D;DG;WZ08-802;REAL;2018;102.0;e;;0.0 -D;DG;WZ08-802;REAL;2019;102.0;e;;0.0 -D;DG;WZ08-802;REAL;2020;107.5;e;;0.0 -D;DG;WZ08-802;REAL;2021;105.2;e;;0.0 -D;DG;WZ08-802;REAL;2022;111.8;e;;0.0 -D;DG;WZ08-802;REAL;2023;110.4;p;;0.0 -D;DG;WZ08-802;REAL;2024;110.9;p;;0.0 -D;DG;WZ08-803;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-803;NOMINAL;2016;114.7;e;;0.0 -D;DG;WZ08-803;NOMINAL;2017;92.0;e;;0.0 -D;DG;WZ08-803;NOMINAL;2018;89.3;e;;0.0 -D;DG;WZ08-803;NOMINAL;2019;82.7;e;;0.0 -D;DG;WZ08-803;NOMINAL;2020;83.6;e;;0.0 -D;DG;WZ08-803;NOMINAL;2021;87.7;e;;0.0 -D;DG;WZ08-803;NOMINAL;2022;94.9;e;;0.0 -D;DG;WZ08-803;NOMINAL;2023;102.7;p;;0.0 -D;DG;WZ08-803;NOMINAL;2024;108.4;p;;0.0 -D;DG;WZ08-803;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-803;REAL;2016;111.7;e;;0.0 -D;DG;WZ08-803;REAL;2017;86.8;e;;0.0 -D;DG;WZ08-803;REAL;2018;82.3;e;;0.0 -D;DG;WZ08-803;REAL;2019;73.7;e;;0.0 -D;DG;WZ08-803;REAL;2020;72.5;e;;0.0 -D;DG;WZ08-803;REAL;2021;74.7;e;;0.0 -D;DG;WZ08-803;REAL;2022;78.6;e;;0.0 -D;DG;WZ08-803;REAL;2023;79.1;p;;0.0 -D;DG;WZ08-803;REAL;2024;80.4;p;;0.0 -D;DG;WZ08-80;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-80;NOMINAL;2016;119.5;e;;0.0 -D;DG;WZ08-80;NOMINAL;2017;113.7;e;;0.0 -D;DG;WZ08-80;NOMINAL;2018;112.4;e;;0.0 -D;DG;WZ08-80;NOMINAL;2019;118.5;e;;0.0 -D;DG;WZ08-80;NOMINAL;2020;126.4;e;;0.0 -D;DG;WZ08-80;NOMINAL;2021;139.3;e;;0.0 -D;DG;WZ08-80;NOMINAL;2022;153.7;e;;0.0 -D;DG;WZ08-80;NOMINAL;2023;171.5;p;;0.0 -D;DG;WZ08-80;NOMINAL;2024;186.6;p;;0.0 -D;DG;WZ08-80;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-80;REAL;2016;116.4;e;;0.0 -D;DG;WZ08-80;REAL;2017;107.3;e;;0.0 -D;DG;WZ08-80;REAL;2018;103.5;e;;0.0 -D;DG;WZ08-80;REAL;2019;105.7;e;;0.0 -D;DG;WZ08-80;REAL;2020;109.6;e;;0.0 -D;DG;WZ08-80;REAL;2021;118.8;e;;0.0 -D;DG;WZ08-80;REAL;2022;127.3;e;;0.0 -D;DG;WZ08-80;REAL;2023;132.0;p;;0.0 -D;DG;WZ08-80;REAL;2024;138.4;p;;0.0 -D;DG;WZ08-811;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-811;NOMINAL;2016;103.8;e;;0.0 -D;DG;WZ08-811;NOMINAL;2017;107.0;e;;0.0 -D;DG;WZ08-811;NOMINAL;2018;112.2;e;;0.0 -D;DG;WZ08-811;NOMINAL;2019;123.4;e;;0.0 -D;DG;WZ08-811;NOMINAL;2020;115.1;e;;0.0 -D;DG;WZ08-811;NOMINAL;2021;123.1;e;;0.0 -D;DG;WZ08-811;NOMINAL;2022;133.4;e;;0.0 -D;DG;WZ08-811;NOMINAL;2023;143.1;p;;0.0 -D;DG;WZ08-811;NOMINAL;2024;148.8;p;;0.0 -D;DG;WZ08-811;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-811;REAL;2016;101.9;e;;0.0 -D;DG;WZ08-811;REAL;2017;103.2;e;;0.0 -D;DG;WZ08-811;REAL;2018;105.8;e;;0.0 -D;DG;WZ08-811;REAL;2019;113.7;e;;0.0 -D;DG;WZ08-811;REAL;2020;104.2;e;;0.0 -D;DG;WZ08-811;REAL;2021;108.4;e;;0.0 -D;DG;WZ08-811;REAL;2022;112.1;e;;0.0 -D;DG;WZ08-811;REAL;2023;111.3;p;;0.0 -D;DG;WZ08-811;REAL;2024;112.0;p;;0.0 -D;DG;WZ08-8121;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-8121;NOMINAL;2016;107.4;e;;0.0 -D;DG;WZ08-8121;NOMINAL;2017;109.7;e;;0.0 -D;DG;WZ08-8121;NOMINAL;2018;115.8;e;;0.0 -D;DG;WZ08-8121;NOMINAL;2019;120.9;e;;0.0 -D;DG;WZ08-8121;NOMINAL;2020;119.7;e;;0.0 -D;DG;WZ08-8121;NOMINAL;2021;135.4;e;;0.0 -D;DG;WZ08-8121;NOMINAL;2022;150.6;e;;0.0 -D;DG;WZ08-8121;NOMINAL;2023;163.3;p;;0.0 -D;DG;WZ08-8121;NOMINAL;2024;168.6;p;;0.0 -D;DG;WZ08-8122;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-8122;NOMINAL;2016;107.2;e;;0.0 -D;DG;WZ08-8122;NOMINAL;2017;106.6;e;;0.0 -D;DG;WZ08-8122;NOMINAL;2018;117.8;e;;0.0 -D;DG;WZ08-8122;NOMINAL;2019;123.3;e;;0.0 -D;DG;WZ08-8122;NOMINAL;2020;126.2;e;;0.0 -D;DG;WZ08-8122;NOMINAL;2021;132.1;e;;0.0 -D;DG;WZ08-8122;NOMINAL;2022;142.8;e;;0.0 -D;DG;WZ08-8122;NOMINAL;2023;159.7;p;;0.0 -D;DG;WZ08-8122;NOMINAL;2024;167.3;p;;0.0 -D;DG;WZ08-8129;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-8129;NOMINAL;2016;106.4;e;;0.0 -D;DG;WZ08-8129;NOMINAL;2017;117.8;e;;0.0 -D;DG;WZ08-8129;NOMINAL;2018;122.5;e;;0.0 -D;DG;WZ08-8129;NOMINAL;2019;128.7;e;;0.0 -D;DG;WZ08-8129;NOMINAL;2020;131.5;e;;0.0 -D;DG;WZ08-8129;NOMINAL;2021;139.5;e;;0.0 -D;DG;WZ08-8129;NOMINAL;2022;150.3;e;;0.0 -D;DG;WZ08-8129;NOMINAL;2023;163.0;p;;0.0 -D;DG;WZ08-8129;NOMINAL;2024;171.0;p;;0.0 -D;DG;WZ08-812;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-812;NOMINAL;2016;107.3;e;;0.0 -D;DG;WZ08-812;NOMINAL;2017;109.8;e;;0.0 -D;DG;WZ08-812;NOMINAL;2018;116.7;e;;0.0 -D;DG;WZ08-812;NOMINAL;2019;121.9;e;;0.0 -D;DG;WZ08-812;NOMINAL;2020;121.8;e;;0.0 -D;DG;WZ08-812;NOMINAL;2021;135.2;e;;0.0 -D;DG;WZ08-812;NOMINAL;2022;149.2;e;;0.0 -D;DG;WZ08-812;NOMINAL;2023;162.7;p;;0.0 -D;DG;WZ08-812;NOMINAL;2024;168.5;p;;0.0 -D;DG;WZ08-812;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-812;REAL;2016;105.2;e;;0.0 -D;DG;WZ08-812;REAL;2017;105.9;e;;0.0 -D;DG;WZ08-812;REAL;2018;110.1;e;;0.0 -D;DG;WZ08-812;REAL;2019;112.4;e;;0.0 -D;DG;WZ08-812;REAL;2020;110.3;e;;0.0 -D;DG;WZ08-812;REAL;2021;119.0;e;;0.0 -D;DG;WZ08-812;REAL;2022;125.4;e;;0.0 -D;DG;WZ08-812;REAL;2023;126.5;p;;0.0 -D;DG;WZ08-812;REAL;2024;126.8;p;;0.0 -D;DG;WZ08-813;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-813;NOMINAL;2016;155.5;e;;0.0 -D;DG;WZ08-813;NOMINAL;2017;165.1;e;;0.0 -D;DG;WZ08-813;NOMINAL;2018;182.0;e;;0.0 -D;DG;WZ08-813;NOMINAL;2019;198.7;e;;0.0 -D;DG;WZ08-813;NOMINAL;2020;214.5;e;;0.0 -D;DG;WZ08-813;NOMINAL;2021;229.3;e;;0.0 -D;DG;WZ08-813;NOMINAL;2022;251.3;e;;0.0 -D;DG;WZ08-813;NOMINAL;2023;259.5;p;;0.0 -D;DG;WZ08-813;NOMINAL;2024;268.2;p;;0.0 -D;DG;WZ08-813;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-813;REAL;2016;150.8;e;;0.0 -D;DG;WZ08-813;REAL;2017;155.7;e;;0.0 -D;DG;WZ08-813;REAL;2018;167.0;e;;0.0 -D;DG;WZ08-813;REAL;2019;177.4;e;;0.0 -D;DG;WZ08-813;REAL;2020;188.8;e;;0.0 -D;DG;WZ08-813;REAL;2021;196.9;e;;0.0 -D;DG;WZ08-813;REAL;2022;207.3;e;;0.0 -D;DG;WZ08-813;REAL;2023;197.1;p;;0.0 -D;DG;WZ08-813;REAL;2024;190.9;p;;0.0 -D;DG;WZ08-81;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-81;NOMINAL;2016;120.2;e;;0.0 -D;DG;WZ08-81;NOMINAL;2017;124.8;e;;0.0 -D;DG;WZ08-81;NOMINAL;2018;134.2;e;;0.0 -D;DG;WZ08-81;NOMINAL;2019;143.8;e;;0.0 -D;DG;WZ08-81;NOMINAL;2020;146.6;e;;0.0 -D;DG;WZ08-81;NOMINAL;2021;159.4;e;;0.0 -D;DG;WZ08-81;NOMINAL;2022;175.0;e;;0.0 -D;DG;WZ08-81;NOMINAL;2023;186.2;p;;0.0 -D;DG;WZ08-81;NOMINAL;2024;192.9;p;;0.0 -D;DG;WZ08-81;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-81;REAL;2016;117.4;e;;0.0 -D;DG;WZ08-81;REAL;2017;119.4;e;;0.0 -D;DG;WZ08-81;REAL;2018;125.2;e;;0.0 -D;DG;WZ08-81;REAL;2019;130.9;e;;0.0 -D;DG;WZ08-81;REAL;2020;131.2;e;;0.0 -D;DG;WZ08-81;REAL;2021;139.0;e;;0.0 -D;DG;WZ08-81;REAL;2022;145.9;e;;0.0 -D;DG;WZ08-81;REAL;2023;143.5;p;;0.0 -D;DG;WZ08-81;REAL;2024;142.1;p;;0.0 -D;DG;WZ08-8211;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-8211;NOMINAL;2016;79.7;e;;0.0 -D;DG;WZ08-8211;NOMINAL;2017;88.0;e;;0.0 -D;DG;WZ08-8211;NOMINAL;2018;112.0;e;;0.0 -D;DG;WZ08-8211;NOMINAL;2019;111.7;e;;0.0 -D;DG;WZ08-8211;NOMINAL;2020;102.9;e;;0.0 -D;DG;WZ08-8211;NOMINAL;2021;117.8;e;;0.0 -D;DG;WZ08-8211;NOMINAL;2022;143.5;e;;0.0 -D;DG;WZ08-8211;NOMINAL;2023;189.9;p;;0.0 -D;DG;WZ08-8211;NOMINAL;2024;177.1;p;;0.0 -D;DG;WZ08-8219;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-8219;NOMINAL;2016;87.0;e;;0.0 -D;DG;WZ08-8219;NOMINAL;2017;81.3;e;;0.0 -D;DG;WZ08-8219;NOMINAL;2018;81.3;e;;0.0 -D;DG;WZ08-8219;NOMINAL;2019;73.4;e;;0.0 -D;DG;WZ08-8219;NOMINAL;2020;71.1;e;;0.0 -D;DG;WZ08-8219;NOMINAL;2021;66.6;e;;0.0 -D;DG;WZ08-8219;NOMINAL;2022;69.3;e;;0.0 -D;DG;WZ08-8219;NOMINAL;2023;68.5;p;;0.0 -D;DG;WZ08-8219;NOMINAL;2024;70.5;p;;0.0 -D;DG;WZ08-821;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-821;NOMINAL;2016;82.7;e;;0.0 -D;DG;WZ08-821;NOMINAL;2017;85.2;e;;0.0 -D;DG;WZ08-821;NOMINAL;2018;99.4;e;;0.0 -D;DG;WZ08-821;NOMINAL;2019;95.9;e;;0.0 -D;DG;WZ08-821;NOMINAL;2020;89.8;e;;0.0 -D;DG;WZ08-821;NOMINAL;2021;96.7;e;;0.0 -D;DG;WZ08-821;NOMINAL;2022;112.9;e;;0.0 -D;DG;WZ08-821;NOMINAL;2023;139.8;p;;0.0 -D;DG;WZ08-821;NOMINAL;2024;133.2;p;;0.0 -D;DG;WZ08-821;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-821;REAL;2016;81.7;e;;0.0 -D;DG;WZ08-821;REAL;2017;82.8;e;;0.0 -D;DG;WZ08-821;REAL;2018;95.2;e;;0.0 -D;DG;WZ08-821;REAL;2019;90.6;e;;0.0 -D;DG;WZ08-821;REAL;2020;84.3;e;;0.0 -D;DG;WZ08-821;REAL;2021;85.6;e;;0.0 -D;DG;WZ08-821;REAL;2022;97.5;e;;0.0 -D;DG;WZ08-821;REAL;2023;116.0;p;;0.0 -D;DG;WZ08-821;REAL;2024;106.9;p;;0.0 -D;DG;WZ08-822;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-822;NOMINAL;2016;103.5;e;;0.0 -D;DG;WZ08-822;NOMINAL;2017;121.7;e;;0.0 -D;DG;WZ08-822;NOMINAL;2018;132.7;e;;0.0 -D;DG;WZ08-822;NOMINAL;2019;124.7;e;;0.0 -D;DG;WZ08-822;NOMINAL;2020;131.8;e;;0.0 -D;DG;WZ08-822;NOMINAL;2021;126.4;e;;0.0 -D;DG;WZ08-822;NOMINAL;2022;126.1;e;;0.0 -D;DG;WZ08-822;NOMINAL;2023;133.3;p;;0.0 -D;DG;WZ08-822;NOMINAL;2024;132.6;p;;0.0 -D;DG;WZ08-822;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-822;REAL;2016;102.1;e;;0.0 -D;DG;WZ08-822;REAL;2017;118.2;e;;0.0 -D;DG;WZ08-822;REAL;2018;127.2;e;;0.0 -D;DG;WZ08-822;REAL;2019;115.5;e;;0.0 -D;DG;WZ08-822;REAL;2020;118.5;e;;0.0 -D;DG;WZ08-822;REAL;2021;110.9;e;;0.0 -D;DG;WZ08-822;REAL;2022;105.1;e;;0.0 -D;DG;WZ08-822;REAL;2023;106.7;p;;0.0 -D;DG;WZ08-822;REAL;2024;102.2;p;;0.0 -D;DG;WZ08-823;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-823;NOMINAL;2016;107.1;e;;0.0 -D;DG;WZ08-823;NOMINAL;2017;110.3;e;;0.0 -D;DG;WZ08-823;NOMINAL;2018;111.5;e;;0.0 -D;DG;WZ08-823;NOMINAL;2019;107.3;e;;0.0 -D;DG;WZ08-823;NOMINAL;2020;50.6;e;;0.0 -D;DG;WZ08-823;NOMINAL;2021;62.9;e;;0.0 -D;DG;WZ08-823;NOMINAL;2022;107.4;e;;0.0 -D;DG;WZ08-823;NOMINAL;2023;119.9;p;;0.0 -D;DG;WZ08-823;NOMINAL;2024;137.6;p;;0.0 -D;DG;WZ08-823;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-823;REAL;2016;104.3;e;;0.0 -D;DG;WZ08-823;REAL;2017;104.7;e;;0.0 -D;DG;WZ08-823;REAL;2018;103.6;e;;0.0 -D;DG;WZ08-823;REAL;2019;97.6;e;;0.0 -D;DG;WZ08-823;REAL;2020;44.9;e;;0.0 -D;DG;WZ08-823;REAL;2021;54.3;e;;0.0 -D;DG;WZ08-823;REAL;2022;89.4;e;;0.0 -D;DG;WZ08-823;REAL;2023;95.6;p;;0.0 -D;DG;WZ08-823;REAL;2024;105.7;p;;0.0 -D;DG;WZ08-8291;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-8291;NOMINAL;2016;104.7;e;;0.0 -D;DG;WZ08-8291;NOMINAL;2017;114.3;e;;0.0 -D;DG;WZ08-8291;NOMINAL;2018;118.2;e;;0.0 -D;DG;WZ08-8291;NOMINAL;2019;109.5;e;;0.0 -D;DG;WZ08-8291;NOMINAL;2020;106.0;e;;0.0 -D;DG;WZ08-8291;NOMINAL;2021;103.0;e;;0.0 -D;DG;WZ08-8291;NOMINAL;2022;95.9;e;;0.0 -D;DG;WZ08-8291;NOMINAL;2023;100.4;p;;0.0 -D;DG;WZ08-8291;NOMINAL;2024;107.8;p;;0.0 -D;DG;WZ08-8292;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-8292;NOMINAL;2016;111.4;e;;0.0 -D;DG;WZ08-8292;NOMINAL;2017;113.9;e;;0.0 -D;DG;WZ08-8292;NOMINAL;2018;115.5;e;;0.0 -D;DG;WZ08-8292;NOMINAL;2019;121.4;e;;0.0 -D;DG;WZ08-8292;NOMINAL;2020;143.8;e;;0.0 -D;DG;WZ08-8292;NOMINAL;2021;131.6;e;;0.0 -D;DG;WZ08-8292;NOMINAL;2022;146.1;e;;0.0 -D;DG;WZ08-8292;NOMINAL;2023;165.3;p;;0.0 -D;DG;WZ08-8292;NOMINAL;2024;164.2;p;;0.0 -D;DG;WZ08-8299;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-8299;NOMINAL;2016;96.2;e;;0.0 -D;DG;WZ08-8299;NOMINAL;2017;96.7;e;;0.0 -D;DG;WZ08-8299;NOMINAL;2018;101.4;e;;0.0 -D;DG;WZ08-8299;NOMINAL;2019;103.0;e;;0.0 -D;DG;WZ08-8299;NOMINAL;2020;98.2;e;;0.0 -D;DG;WZ08-8299;NOMINAL;2021;112.0;e;;0.0 -D;DG;WZ08-8299;NOMINAL;2022;126.8;e;;0.0 -D;DG;WZ08-8299;NOMINAL;2023;141.3;p;;0.0 -D;DG;WZ08-8299;NOMINAL;2024;143.6;p;;0.0 -D;DG;WZ08-829;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-829;NOMINAL;2016;98.5;e;;0.0 -D;DG;WZ08-829;NOMINAL;2017;100.1;e;;0.0 -D;DG;WZ08-829;NOMINAL;2018;104.4;e;;0.0 -D;DG;WZ08-829;NOMINAL;2019;105.3;e;;0.0 -D;DG;WZ08-829;NOMINAL;2020;103.1;e;;0.0 -D;DG;WZ08-829;NOMINAL;2021;112.8;e;;0.0 -D;DG;WZ08-829;NOMINAL;2022;125.2;e;;0.0 -D;DG;WZ08-829;NOMINAL;2023;138.9;p;;0.0 -D;DG;WZ08-829;NOMINAL;2024;141.5;p;;0.0 -D;DG;WZ08-829;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-829;REAL;2016;97.3;e;;0.0 -D;DG;WZ08-829;REAL;2017;97.4;e;;0.0 -D;DG;WZ08-829;REAL;2018;100.1;e;;0.0 -D;DG;WZ08-829;REAL;2019;99.5;e;;0.0 -D;DG;WZ08-829;REAL;2020;96.9;e;;0.0 -D;DG;WZ08-829;REAL;2021;99.9;e;;0.0 -D;DG;WZ08-829;REAL;2022;108.1;e;;0.0 -D;DG;WZ08-829;REAL;2023;115.3;p;;0.0 -D;DG;WZ08-829;REAL;2024;113.7;p;;0.0 -D;DG;WZ08-82;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-82;NOMINAL;2016;99.8;e;;0.0 -D;DG;WZ08-82;NOMINAL;2017;103.7;e;;0.0 -D;DG;WZ08-82;NOMINAL;2018;108.7;e;;0.0 -D;DG;WZ08-82;NOMINAL;2019;107.6;e;;0.0 -D;DG;WZ08-82;NOMINAL;2020;98.3;e;;0.0 -D;DG;WZ08-82;NOMINAL;2021;106.5;e;;0.0 -D;DG;WZ08-82;NOMINAL;2022;122.2;e;;0.0 -D;DG;WZ08-82;NOMINAL;2023;135.5;p;;0.0 -D;DG;WZ08-82;NOMINAL;2024;139.6;p;;0.0 -D;DG;WZ08-82;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-82;REAL;2016;98.3;e;;0.0 -D;DG;WZ08-82;REAL;2017;100.5;e;;0.0 -D;DG;WZ08-82;REAL;2018;103.7;e;;0.0 -D;DG;WZ08-82;REAL;2019;100.9;e;;0.0 -D;DG;WZ08-82;REAL;2020;91.3;e;;0.0 -D;DG;WZ08-82;REAL;2021;94.0;e;;0.0 -D;DG;WZ08-82;REAL;2022;104.6;e;;0.0 -D;DG;WZ08-82;REAL;2023;111.4;p;;0.0 -D;DG;WZ08-82;REAL;2024;110.9;p;;0.0 -D;DG;WZ08-H-02;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-H-02;NOMINAL;2016;105.4;e;;0.0 -D;DG;WZ08-H-02;NOMINAL;2017;108.0;e;;0.0 -D;DG;WZ08-H-02;NOMINAL;2018;111.8;e;;0.0 -D;DG;WZ08-H-02;NOMINAL;2019;114.3;e;;0.0 -D;DG;WZ08-H-02;NOMINAL;2020;107.2;e;;0.0 -D;DG;WZ08-H-02;NOMINAL;2021;121.0;e;;0.0 -D;DG;WZ08-H-02;NOMINAL;2022;137.3;e;;0.0 -D;DG;WZ08-H-02;NOMINAL;2023;140.3;p;;0.0 -D;DG;WZ08-H-02;NOMINAL;2024;144.6;p;;0.0 -D;DG;WZ08-H-02;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-H-02;REAL;2016;105.5;e;;0.0 -D;DG;WZ08-H-02;REAL;2017;106.2;e;;0.0 -D;DG;WZ08-H-02;REAL;2018;108.5;e;;0.0 -D;DG;WZ08-H-02;REAL;2019;109.6;e;;0.0 -D;DG;WZ08-H-02;REAL;2020;101.9;e;;0.0 -D;DG;WZ08-H-02;REAL;2021;108.7;e;;0.0 -D;DG;WZ08-H-02;REAL;2022;117.6;e;;0.0 -D;DG;WZ08-H-02;REAL;2023;120.6;p;;0.0 -D;DG;WZ08-H-02;REAL;2024;120.4;p;;0.0 -D;DG;WZ08-H-04;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-H-04;NOMINAL;2016;105.5;e;;0.0 -D;DG;WZ08-H-04;NOMINAL;2017;107.7;e;;0.0 -D;DG;WZ08-H-04;NOMINAL;2018;111.5;e;;0.0 -D;DG;WZ08-H-04;NOMINAL;2019;114.2;e;;0.0 -D;DG;WZ08-H-04;NOMINAL;2020;102.3;e;;0.0 -D;DG;WZ08-H-04;NOMINAL;2021;115.1;e;;0.0 -D;DG;WZ08-H-04;NOMINAL;2022;131.7;e;;0.0 -D;DG;WZ08-H-04;NOMINAL;2023;134.8;p;;0.0 -D;DG;WZ08-H-04;NOMINAL;2024;138.9;p;;0.0 -D;DG;WZ08-H-04;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-H-04;REAL;2016;105.3;e;;0.0 -D;DG;WZ08-H-04;REAL;2017;105.7;e;;0.0 -D;DG;WZ08-H-04;REAL;2018;107.9;e;;0.0 -D;DG;WZ08-H-04;REAL;2019;109.1;e;;0.0 -D;DG;WZ08-H-04;REAL;2020;96.8;e;;0.0 -D;DG;WZ08-H-04;REAL;2021;103.5;e;;0.0 -D;DG;WZ08-H-04;REAL;2022;113.0;e;;0.0 -D;DG;WZ08-H-04;REAL;2023;115.2;p;;0.0 -D;DG;WZ08-H-04;REAL;2024;115.3;p;;0.0 -D;DG;WZ08-H-05;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-H-05;NOMINAL;2016;105.6;e;;0.0 -D;DG;WZ08-H-05;NOMINAL;2017;107.7;e;;0.0 -D;DG;WZ08-H-05;NOMINAL;2018;111.3;e;;0.0 -D;DG;WZ08-H-05;NOMINAL;2019;113.9;e;;0.0 -D;DG;WZ08-H-05;NOMINAL;2020;103.9;e;;0.0 -D;DG;WZ08-H-05;NOMINAL;2021;117.2;e;;0.0 -D;DG;WZ08-H-05;NOMINAL;2022;132.1;e;;0.0 -D;DG;WZ08-H-05;NOMINAL;2023;134.7;p;;0.0 -D;DG;WZ08-H-05;NOMINAL;2024;139.0;p;;0.0 -D;DG;WZ08-H-05;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-H-05;REAL;2016;105.5;e;;0.0 -D;DG;WZ08-H-05;REAL;2017;105.8;e;;0.0 -D;DG;WZ08-H-05;REAL;2018;107.9;e;;0.0 -D;DG;WZ08-H-05;REAL;2019;109.1;e;;0.0 -D;DG;WZ08-H-05;REAL;2020;98.7;e;;0.0 -D;DG;WZ08-H-05;REAL;2021;105.6;e;;0.0 -D;DG;WZ08-H-05;REAL;2022;113.8;e;;0.0 -D;DG;WZ08-H-05;REAL;2023;116.2;p;;0.0 -D;DG;WZ08-H-05;REAL;2024;116.3;p;;0.0 -D;DG;WZ08-H-06;NOMINAL;2020;82.0;e;;0.0 -D;DG;WZ08-H-06;NOMINAL;2021;91.5;e;;0.0 -D;DG;WZ08-H-06;NOMINAL;2022;120.0;e;;0.0 -D;DG;WZ08-H-06;NOMINAL;2023;129.5;p;;0.0 -D;DG;WZ08-H-06;NOMINAL;2024;132.8;p;;0.0 -D;DG;WZ08-H-06;REAL;2020;78.3;e;;0.0 -D;DG;WZ08-H-06;REAL;2021;84.8;e;;0.0 -D;DG;WZ08-H-06;REAL;2022;105.7;e;;0.0 -D;DG;WZ08-H-06;REAL;2023;111.2;p;;0.0 -D;DG;WZ08-H-06;REAL;2024;111.3;p;;0.0 -D;DG;WZ08-H-07;NOMINAL;2020;107.5;e;;0.0 -D;DG;WZ08-H-07;NOMINAL;2021;121.2;e;;0.0 -D;DG;WZ08-H-07;NOMINAL;2022;134.7;e;;0.0 -D;DG;WZ08-H-07;NOMINAL;2023;136.1;p;;0.0 -D;DG;WZ08-H-07;NOMINAL;2024;140.5;p;;0.0 -D;DG;WZ08-H-07;REAL;2020;101.5;e;;0.0 -D;DG;WZ08-H-07;REAL;2021;108.2;e;;0.0 -D;DG;WZ08-H-07;REAL;2022;114.9;e;;0.0 -D;DG;WZ08-H-07;REAL;2023;116.2;p;;0.0 -D;DG;WZ08-H-07;REAL;2024;116.4;p;;0.0 -D;DG;WZ08-H;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-H;NOMINAL;2016;101.2;e;;0.0 -D;DG;WZ08-H;NOMINAL;2017;108.1;e;;0.0 -D;DG;WZ08-H;NOMINAL;2018;110.7;e;;0.0 -D;DG;WZ08-H;NOMINAL;2019;113.4;e;;0.0 -D;DG;WZ08-H;NOMINAL;2020;102.1;e;;0.0 -D;DG;WZ08-H;NOMINAL;2021;123.1;e;;0.0 -D;DG;WZ08-H;NOMINAL;2022;144.5;e;;0.0 -D;DG;WZ08-H;NOMINAL;2023;134.2;p;;0.0 -D;DG;WZ08-H;NOMINAL;2024;137.7;p;;0.0 -D;DG;WZ08-H;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-H;REAL;2016;103.2;e;;0.0 -D;DG;WZ08-H;REAL;2017;106.4;e;;0.0 -D;DG;WZ08-H;REAL;2018;107.6;e;;0.0 -D;DG;WZ08-H;REAL;2019;109.4;e;;0.0 -D;DG;WZ08-H;REAL;2020;97.3;e;;0.0 -D;DG;WZ08-H;REAL;2021;102.6;e;;0.0 -D;DG;WZ08-H;REAL;2022;110.4;e;;0.0 -D;DG;WZ08-H;REAL;2023;114.2;p;;0.0 -D;DG;WZ08-H;REAL;2024;111.1;p;;0.0 -D;DG;WZ08-I;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-I;NOMINAL;2016;104.1;e;;0.0 -D;DG;WZ08-I;NOMINAL;2017;108.7;e;;0.0 -D;DG;WZ08-I;NOMINAL;2018;114.2;e;;0.0 -D;DG;WZ08-I;NOMINAL;2019;119.2;e;;0.0 -D;DG;WZ08-I;NOMINAL;2020;75.7;e;;0.0 -D;DG;WZ08-I;NOMINAL;2021;81.3;e;;0.0 -D;DG;WZ08-I;NOMINAL;2022;125.1;e;;0.0 -D;DG;WZ08-I;NOMINAL;2023;136.5;p;;0.0 -D;DG;WZ08-I;NOMINAL;2024;137.7;p;;0.0 -D;DG;WZ08-I;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-I;REAL;2016;101.9;e;;0.0 -D;DG;WZ08-I;REAL;2017;104.2;e;;0.0 -D;DG;WZ08-I;REAL;2018;107.2;e;;0.0 -D;DG;WZ08-I;REAL;2019;109.3;e;;0.0 -D;DG;WZ08-I;REAL;2020;66.9;e;;0.0 -D;DG;WZ08-I;REAL;2021;70.1;e;;0.0 -D;DG;WZ08-I;REAL;2022;100.7;e;;0.0 -D;DG;WZ08-I;REAL;2023;100.4;p;;0.0 -D;DG;WZ08-I;REAL;2024;100.2;p;;0.0 -D;DG;WZ08-J;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-J;NOMINAL;2016;110.3;e;;0.0 -D;DG;WZ08-J;NOMINAL;2017;106.0;e;;0.0 -D;DG;WZ08-J;NOMINAL;2018;111.4;e;;0.0 -D;DG;WZ08-J;NOMINAL;2019;112.2;e;;0.0 -D;DG;WZ08-J;NOMINAL;2020;111.9;e;;0.0 -D;DG;WZ08-J;NOMINAL;2021;119.3;e;;0.0 -D;DG;WZ08-J;NOMINAL;2022;130.3;e;;0.0 -D;DG;WZ08-J;NOMINAL;2023;137.6;p;;0.0 -D;DG;WZ08-J;NOMINAL;2024;143.4;p;;0.0 -D;DG;WZ08-J;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-J;REAL;2016;110.5;e;;0.0 -D;DG;WZ08-J;REAL;2017;106.0;e;;0.0 -D;DG;WZ08-J;REAL;2018;110.7;e;;0.0 -D;DG;WZ08-J;REAL;2019;110.5;e;;0.0 -D;DG;WZ08-J;REAL;2020;109.6;e;;0.0 -D;DG;WZ08-J;REAL;2021;115.5;e;;0.0 -D;DG;WZ08-J;REAL;2022;124.1;e;;0.0 -D;DG;WZ08-J;REAL;2023;127.9;p;;0.0 -D;DG;WZ08-J;REAL;2024;131.4;p;;0.0 -D;DG;WZ08-L;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-L;NOMINAL;2016;107.2;e;;0.0 -D;DG;WZ08-L;NOMINAL;2017;105.8;e;;0.0 -D;DG;WZ08-L;NOMINAL;2018;108.4;e;;0.0 -D;DG;WZ08-L;NOMINAL;2019;111.7;e;;0.0 -D;DG;WZ08-L;NOMINAL;2020;82.5;e;;0.0 -D;DG;WZ08-L;NOMINAL;2021;92.3;e;;0.0 -D;DG;WZ08-L;NOMINAL;2022;97.7;e;;0.0 -D;DG;WZ08-L;NOMINAL;2023;97.5;p;;0.0 -D;DG;WZ08-L;NOMINAL;2024;102.2;p;;0.0 -D;DG;WZ08-L;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-L;REAL;2016;106.0;e;;0.0 -D;DG;WZ08-L;REAL;2017;103.2;e;;0.0 -D;DG;WZ08-L;REAL;2018;104.2;e;;0.0 -D;DG;WZ08-L;REAL;2019;105.8;e;;0.0 -D;DG;WZ08-L;REAL;2020;77.1;e;;0.0 -D;DG;WZ08-L;REAL;2021;85.1;e;;0.0 -D;DG;WZ08-L;REAL;2022;88.5;e;;0.0 -D;DG;WZ08-L;REAL;2023;86.8;p;;0.0 -D;DG;WZ08-L;REAL;2024;89.1;p;;0.0 -D;DG;WZ08-M;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-M;NOMINAL;2016;104.1;e;;0.0 -D;DG;WZ08-M;NOMINAL;2017;106.6;e;;0.0 -D;DG;WZ08-M;NOMINAL;2018;109.3;e;;0.0 -D;DG;WZ08-M;NOMINAL;2019;113.7;e;;0.0 -D;DG;WZ08-M;NOMINAL;2020;113.2;e;;0.0 -D;DG;WZ08-M;NOMINAL;2021;121.0;e;;0.0 -D;DG;WZ08-M;NOMINAL;2022;133.4;e;;0.0 -D;DG;WZ08-M;NOMINAL;2023;140.2;p;;0.0 -D;DG;WZ08-M;NOMINAL;2024;145.3;p;;0.0 -D;DG;WZ08-M;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-M;REAL;2016;103.0;e;;0.0 -D;DG;WZ08-M;REAL;2017;104.2;e;;0.0 -D;DG;WZ08-M;REAL;2018;105.2;e;;0.0 -D;DG;WZ08-M;REAL;2019;107.8;e;;0.0 -D;DG;WZ08-M;REAL;2020;106.1;e;;0.0 -D;DG;WZ08-M;REAL;2021;110.0;e;;0.0 -D;DG;WZ08-M;REAL;2022;117.2;e;;0.0 -D;DG;WZ08-M;REAL;2023;118.5;p;;0.0 -D;DG;WZ08-M;REAL;2024;119.4;p;;0.0 -D;DG;WZ08-N;NOMINAL;2015;100.0;e;;0.0 -D;DG;WZ08-N;NOMINAL;2016;106.4;e;;0.0 -D;DG;WZ08-N;NOMINAL;2017;112.0;e;;0.0 -D;DG;WZ08-N;NOMINAL;2018;116.6;e;;0.0 -D;DG;WZ08-N;NOMINAL;2019;118.8;e;;0.0 -D;DG;WZ08-N;NOMINAL;2020;101.7;e;;0.0 -D;DG;WZ08-N;NOMINAL;2021;120.1;e;;0.0 -D;DG;WZ08-N;NOMINAL;2022;140.7;e;;0.0 -D;DG;WZ08-N;NOMINAL;2023;152.7;p;;0.0 -D;DG;WZ08-N;NOMINAL;2024;155.2;p;;0.0 -D;DG;WZ08-N;REAL;2015;100.0;e;;0.0 -D;DG;WZ08-N;REAL;2016;105.0;e;;0.0 -D;DG;WZ08-N;REAL;2017;108.4;e;;0.0 -D;DG;WZ08-N;REAL;2018;110.6;e;;0.0 -D;DG;WZ08-N;REAL;2019;110.8;e;;0.0 -D;DG;WZ08-N;REAL;2020;94.1;e;;0.0 -D;DG;WZ08-N;REAL;2021;107.2;e;;0.0 -D;DG;WZ08-N;REAL;2022;120.0;e;;0.0 -D;DG;WZ08-N;REAL;2023;122.6;p;;0.0 -D;DG;WZ08-N;REAL;2024;120.6;p;;0.0 diff --git a/tests/testthat/find1/api/find/find-86e7c4-f78925-POST.json b/tests/testthat/find1/api/find/find-86e7c4-f78925-POST.json deleted file mode 100644 index 50e81ea..0000000 --- a/tests/testthat/find1/api/find/find-86e7c4-f78925-POST.json +++ /dev/null @@ -1,933 +0,0 @@ -{ - "Ident": { - "Service": "find", - "Method": "find" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "term": "forst", - "category": "Alle", - "pagelength": "500", - "language": "de" - }, - "Cubes": [ - { - "Code": "12211BJ263", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Berufsbereiche (KB2010), 1-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020-2023", - "LatestUpdate": "11.07.2024 14:20:10h", - "Information": "false" - }, - { - "Code": "12211BJ264", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Geschlecht, Berufsbereiche (KB2010), 1-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020-2023", - "LatestUpdate": "11.07.2024 14:20:27h", - "Information": "false" - }, - { - "Code": "12211BJ265", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020-2023", - "LatestUpdate": "11.07.2024 14:20:42h", - "Information": "false" - }, - { - "Code": "12211BJ266", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Geschlecht, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020-2023", - "LatestUpdate": "11.07.2024 14:21:07h", - "Information": "false" - }, - { - "Code": "12211LJ263", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Berufsbereiche (KB2010), 1-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:08h", - "Information": "false" - }, - { - "Code": "12211LJ264", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Berufsbereiche (KB2010), 1-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:08h", - "Information": "false" - }, - { - "Code": "12211LJ265", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:09h", - "Information": "false" - }, - { - "Code": "12211LJ266", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:09h", - "Information": "false" - }, - { - "Code": "21331BS002", - "Content": "Statistik der Gasthörer, Gasthörer, Deutschland insgesamt, Fächergruppen, Semester", - "State": "vollständig mit Werten", - "Time": "WS 1994/95-WS 2023/24", - "LatestUpdate": "05.06.2024 08:00:23h", - "Information": "false" - }, - { - "Code": "21341BJ002", - "Content": "Statistik des Hochschulpersonals, Hauptberufl. wissenschaftl. u. künstler. Personal, Deutschland insgesamt, Geschlecht, Lehr- und Forschungsbereiche, Jahr", - "State": "vollständig mit Werten", - "Time": "1997-2023", - "LatestUpdate": "13.09.2024 08:01:28h", - "Information": "false" - }, - { - "Code": "21341BJ003", - "Content": "Statistik des Hochschulpersonals, Professoren, Deutschland insgesamt, Geschlecht, Fächergruppen, Jahr", - "State": "vollständig mit Werten", - "Time": "1997-2023", - "LatestUpdate": "13.09.2024 08:01:57h", - "Information": "false" - }, - { - "Code": "21351BJ001", - "Content": "Statistik der Habilitationen, Habilitationen, Deutschland insgesamt, Fächergruppen, Geschlecht, Nationalität, Jahr", - "State": "vollständig mit Werten", - "Time": "1992-2023", - "LatestUpdate": "02.07.2024 08:00:09h", - "Information": "false" - }, - { - "Code": "21351BJ003", - "Content": "Statistik der Habilitationen, Durchschnittsalter der habilitierten Personen, Deutschland insgesamt, Fächergruppen, Jahr", - "State": "vollständig mit Werten", - "Time": "1992-2023", - "LatestUpdate": "02.07.2024 08:00:06h", - "Information": "false" - }, - { - "Code": "21351BJ005", - "Content": "Statistik der Habilitationen, Durchschnittsalter der habilitierten Personen, Deutschland insgesamt, Fächergruppen, Geschlecht, Jahr", - "State": "vollständig mit Werten", - "Time": "1992-2023", - "LatestUpdate": "02.07.2024 08:00:03h", - "Information": "false" - }, - { - "Code": "21352BJ011", - "Content": "Statistik der Promovierenden, Promovierende, Deutschland insgesamt, Fächergruppen, Altersgruppen (u24-40m, unbekannt), Stichtag", - "State": "vollständig mit Werten", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:02:33h", - "Information": "false" - }, - { - "Code": "21352BJ012", - "Content": "Statistik der Promovierenden, Promovierende, Deutschland insgesamt, Geschlecht, Fächergruppen, Altersgruppen (u24-40m, unbekannt), Stichtag", - "State": "vollständig mit Werten", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:01:59h", - "Information": "false" - }, - { - "Code": "21352BJ013", - "Content": "Statistik der Promovierenden, Promovierende, Durchschnittsalter der Promovierenden, Deutschland insgesamt, Fächergruppen, Stichtag", - "State": "vollständig mit Werten", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:02:52h", - "Information": "false" - }, - { - "Code": "21352BJ014", - "Content": "Statistik der Promovierenden, Promovierende, Durchschnittsalter der Promovierenden, Deutschland insgesamt, Geschlecht, Fächergruppen, Stichtag", - "State": "vollständig mit Werten", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:02:08h", - "Information": "false" - }, - { - "Code": "21352BJ015", - "Content": "Statistik der Promovierenden, Promovierende, Deutschland insgesamt, Nationalität, Fächergruppen, Stichtag", - "State": "vollständig mit Werten", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:02:49h", - "Information": "false" - }, - { - "Code": "21352BJ016", - "Content": "Statistik der Promovierenden, Promovierende, Deutschland insgesamt, Geschlecht, Nationalität, Fächergruppen, Stichtag", - "State": "vollständig mit Werten", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:01:20h", - "Information": "false" - }, - { - "Code": "21371BJ003", - "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Deutschland insgesamt, Fächergruppen, Jahr", - "State": "vollständig mit Werten", - "Time": "2006-2022", - "LatestUpdate": "19.03.2024 08:00:47h", - "Information": "false" - }, - { - "Code": "21371BJ004", - "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Deutschland insgesamt, Hochschulart, Fächergruppen, Jahr", - "State": "vollständig mit Werten", - "Time": "2006-2022", - "LatestUpdate": "19.03.2024 08:00:44h", - "Information": "false" - }, - { - "Code": "21371LJ003", - "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Bundesländer, Fächergruppen, Jahr", - "State": "vollständig mit Werten", - "Time": "2006-2022", - "LatestUpdate": "19.03.2024 08:00:38h", - "Information": "false" - }, - { - "Code": "21371LJ004", - "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Bundesländer, Hochschulart, Fächergruppen, Jahr", - "State": "vollständig mit Werten", - "Time": "2006-2022", - "LatestUpdate": "19.03.2024 08:00:54h", - "Information": "false" - }, - { - "Code": "21381BJ102", - "Content": "Hochschulstatistische Kennzahlen, Laufende Ausgaben der Hochschulen je Studierenden, Laufende Ausgaben d. Hochschulen je Wiss. Personal, Laufende Ausgaben der Hochschulen je Professor, Drittmittel der Hochschulen je Wiss. Personal, Drittmittel der Hochschulen je Professor, Deutschland insgesamt, Fächergruppen, Jahr", - "State": "vollständig mit Werten", - "Time": "2011-2022", - "LatestUpdate": "17.09.2024 08:01:24h", - "Information": "false" - }, - { - "Code": "21431BJ009", - "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Deutschland insgesamt, Fächergruppen, Jahr", - "State": "vollständig mit Werten", - "Time": "2020-2023", - "LatestUpdate": "07.05.2024 08:01:35h", - "Information": "false" - }, - { - "Code": "21431BJ010", - "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Deutschland insgesamt, Geschlecht, Fächergruppen, Jahr", - "State": "vollständig mit Werten", - "Time": "2020-2023", - "LatestUpdate": "07.05.2024 08:03:24h", - "Information": "false" - }, - { - "Code": "21431BJ011", - "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Deutschland insgesamt, Nationalität, Fächergruppen, Jahr", - "State": "vollständig mit Werten", - "Time": "2020-2023", - "LatestUpdate": "07.05.2024 08:03:21h", - "Information": "false" - }, - { - "Code": "21431BJ012", - "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Deutschland insgesamt, Geschlecht, Nationalität, Fächergruppen, Jahr", - "State": "vollständig mit Werten", - "Time": "2020-2023", - "LatestUpdate": "07.05.2024 08:02:08h", - "Information": "false" - }, - { - "Code": "21811BJ007", - "Content": "Ausgaben, Einnahmen, Personal öff. Forschungseinr., Interne Ausgaben für Forschung und Entwicklung, Personal für FuE (Vollzeitäquivalente), Deutschland insgesamt, Wissenschaftszweige, Jahr", - "State": "vollständig mit Werten", - "Time": "2019-2023", - "LatestUpdate": "06.03.2025 15:06:27h", - "Information": "false" - }, - { - "Code": "21811BJ008", - "Content": "Ausgaben, Einnahmen, Personal öff. Forschungseinr., Interne Ausgaben für Forschung und Entwicklung, Personal für FuE (Vollzeitäquivalente), Deutschland insgesamt, Einrichtungsgruppe, Wissenschaftszweige, Jahr", - "State": "vollständig mit Werten", - "Time": "2019-2023", - "LatestUpdate": "06.03.2025 15:06:30h", - "Information": "false" - }, - { - "Code": "21811BJ009", - "Content": "Ausgaben, Einnahmen, Personal öff. Forschungseinr., Interne Ausgaben für Forschung und Entwicklung, Personal für FuE (Vollzeitäquivalente), Deutschland insgesamt, Einrichtungsart, Wissenschaftszweige, Jahr", - "State": "vollständig mit Werten", - "Time": "2019-2023", - "LatestUpdate": "06.03.2025 15:08:39h", - "Information": "false" - }, - { - "Code": "21811BJ034", - "Content": "Ausgaben, Einnahmen, Personal öff. Forschungseinr., Personal für FuE (Vollzeitäquivalente), Deutschland insgesamt, Wissenschaftszweige, Personalgruppen, Jahr", - "State": "vollständig mit Werten", - "Time": "2019-2023", - "LatestUpdate": "06.03.2025 15:13:36h", - "Information": "false" - }, - { - "Code": "21811LJ003", - "Content": "Ausgaben, Einnahmen, Personal öff. Forschungseinr., Interne Ausgaben für Forschung und Entwicklung, Bundesländer und Ausland, Wissenschaftszweige, Jahr", - "State": "vollständig mit Werten", - "Time": "2019-2023", - "LatestUpdate": "06.03.2025 15:15:34h", - "Information": "false" - }, - { - "Code": "41161BJ001", - "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Deutschland insgesamt, Jahr", - "State": "vollständig mit Werten", - "Time": "2022", - "LatestUpdate": "07.10.2022 11:23:33h", - "Information": "false" - }, - { - "Code": "41161BJ002", - "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Deutschland insgesamt, Waldeigentumsarten, Jahr", - "State": "vollständig mit Werten", - "Time": "2022", - "LatestUpdate": "07.10.2022 11:23:33h", - "Information": "false" - }, - { - "Code": "41161BJ003", - "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Forsteinheiten, Deutschland insgesamt, Größenklassen der Waldfläche, Jahr", - "State": "vollständig mit Werten", - "Time": "2022", - "LatestUpdate": "25.09.2022 16:01:54h", - "Information": "false" - }, - { - "Code": "41161BJ004", - "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Forsteinheiten, Deutschland insgesamt, Waldeigentumsarten, Größenklassen der Waldfläche, Jahr", - "State": "vollständig mit Werten", - "Time": "2022", - "LatestUpdate": "25.09.2022 16:01:54h", - "Information": "false" - }, - { - "Code": "41161BJ100", - "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Forstbetriebe, Deutschland insgesamt, Größenklassen der Waldfläche, Rechtsform, Jahr", - "State": "vollständig mit Werten", - "Time": "1965-2007", - "LatestUpdate": "27.10.2020 14:52:54h", - "Information": "false" - }, - { - "Code": "41161LJ001", - "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Bundesländer, Jahr", - "State": "vollständig mit Werten", - "Time": "2022", - "LatestUpdate": "07.10.2022 11:23:43h", - "Information": "false" - }, - { - "Code": "41161LJ002", - "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Bundesländer, Waldeigentumsarten, Jahr", - "State": "vollständig mit Werten", - "Time": "2022", - "LatestUpdate": "07.10.2022 11:23:43h", - "Information": "false" - }, - { - "Code": "41161LJ003", - "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Forsteinheiten, Bundesländer, Größenklassen der Waldfläche, Jahr", - "State": "vollständig mit Werten", - "Time": "2022", - "LatestUpdate": "25.09.2022 16:02:06h", - "Information": "false" - }, - { - "Code": "41161LJ004", - "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Forsteinheiten, Bundesländer, Waldeigentumsarten, Größenklassen der Waldfläche, Jahr", - "State": "vollständig mit Werten", - "Time": "2022", - "LatestUpdate": "25.09.2022 16:02:06h", - "Information": "false" - }, - { - "Code": "51000BJ160", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Jahr", - "State": "vollständig mit Werten", - "Time": "2008-2024", - "LatestUpdate": "19.03.2025 18:45:36h", - "Information": "false" - }, - { - "Code": "51000BJ161", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Jahr", - "State": "vollständig mit Werten", - "Time": "2008-2024", - "LatestUpdate": "19.03.2025 19:25:27h", - "Information": "false" - }, - { - "Code": "51000BJ180", - "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Jahr", - "State": "vollständig mit Werten", - "Time": "2006-2024", - "LatestUpdate": "19.03.2025 18:46:43h", - "Information": "false" - }, - { - "Code": "51000BJ181", - "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Jahr", - "State": "vollständig mit Werten", - "Time": "2006-2024", - "LatestUpdate": "19.03.2025 19:07:01h", - "Information": "false" - }, - { - "Code": "51000BM160", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2008-Januar 2025", - "LatestUpdate": "19.03.2025 19:35:13h", - "Information": "false" - }, - { - "Code": "51000BM161", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2008-Januar 2025", - "LatestUpdate": "19.03.2025 22:18:28h", - "Information": "false" - }, - { - "Code": "51000BM180", - "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2006-Januar 2025", - "LatestUpdate": "19.03.2025 19:40:42h", - "Information": "false" - }, - { - "Code": "51000BM181", - "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2006-Januar 2025", - "LatestUpdate": "20.03.2025 02:17:39h", - "Information": "false" - }, - { - "Code": "62361BJ009", - "Content": "Verdiensterhebung, Durchschn. Bruttostundenverdienste ohne Sonderz., Durchschn. Bruttomonatsverdienste ohne Sonderz., Mittlere Bruttostundenverdienste ohne Sonderz., Mittlere Bruttomonatsverdienste ohne Sonderz., Deutschland insgesamt, Berufsgruppen (KB2010), 3-Steller, Stichmonat", - "State": "vollständig mit Werten", - "Time": "04/2022-04/2024", - "LatestUpdate": "06.02.2025 08:00:13h", - "Information": "false" - }, - { - "Code": "62361BJ010", - "Content": "Verdiensterhebung, Durchschn. Bruttostundenverdienste ohne Sonderz., Durchschn. Bruttomonatsverdienste ohne Sonderz., Mittlere Bruttostundenverdienste ohne Sonderz., Mittlere Bruttomonatsverdienste ohne Sonderz., Deutschland insgesamt, Berufsgattungen (KB2010), 5-Steller, Stichmonat", - "State": "vollständig mit Werten", - "Time": "04/2022-04/2024", - "LatestUpdate": "06.02.2025 08:00:25h", - "Information": "false" - }, - { - "Code": "62361BJ012", - "Content": "Verdiensterhebung, Durchschn. Bruttostundenverdienste ohne Sonderz., Durchschn. Bruttomonatsverdienste ohne Sonderz., Mittlere Bruttostundenverdienste ohne Sonderz., Mittlere Bruttomonatsverdienste ohne Sonderz., Deutschland insgesamt, Geschlecht, Berufsgruppen (KB2010), 3-Steller, Stichmonat", - "State": "vollständig mit Werten", - "Time": "04/2022-04/2024", - "LatestUpdate": "06.02.2025 08:00:10h", - "Information": "false" - }, - { - "Code": "62361BJ013", - "Content": "Verdiensterhebung, Durchschn. Bruttostundenverdienste ohne Sonderz., Durchschn. Bruttomonatsverdienste ohne Sonderz., Mittlere Bruttostundenverdienste ohne Sonderz., Mittlere Bruttomonatsverdienste ohne Sonderz., Deutschland insgesamt, Geschlecht, Berufsgattungen (KB2010), 5-Steller, Stichmonat", - "State": "vollständig mit Werten", - "Time": "04/2022-04/2024", - "LatestUpdate": "06.02.2025 08:00:06h", - "Information": "false" - }, - { - "Code": "62361BJ015", - "Content": "Verdiensterhebung, Durchschn. Bruttojahresverdienste inkl. Sonderz., Mittlere Bruttojahresverdienste inkl. Sonderz., Deutschland insgesamt, Berufsgruppen (KB2010), 3-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2022-2023", - "LatestUpdate": "28.03.2024 08:04:58h", - "Information": "false" - }, - { - "Code": "62361BJ016", - "Content": "Verdiensterhebung, Durchschn. Bruttojahresverdienste inkl. Sonderz., Mittlere Bruttojahresverdienste inkl. Sonderz., Deutschland insgesamt, Berufsgattungen (KB2010), 5-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2022-2023", - "LatestUpdate": "28.03.2024 08:04:39h", - "Information": "false" - }, - { - "Code": "62361BJ018", - "Content": "Verdiensterhebung, Durchschn. Bruttojahresverdienste inkl. Sonderz., Mittlere Bruttojahresverdienste inkl. Sonderz., Deutschland insgesamt, Geschlecht, Berufsgruppen (KB2010), 3-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2022-2023", - "LatestUpdate": "28.03.2024 08:04:55h", - "Information": "false" - }, - { - "Code": "62361BJ019", - "Content": "Verdiensterhebung, Durchschn. Bruttojahresverdienste inkl. Sonderz., Mittlere Bruttojahresverdienste inkl. Sonderz., Deutschland insgesamt, Geschlecht, Berufsgattungen (KB2010), 5-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2022-2023", - "LatestUpdate": "28.03.2024 08:04:51h", - "Information": "false" - }, - { - "Code": "71141BJ006", - "Content": "Rechnungsergebnisse d.öffentlichen Gesamthaushalts, Nettoausgaben, Personalausgaben, Baumaßnahmen, Deutschland insgesamt, Körperschaftsgruppen, Aufgabenbereiche der öffentlichen Haushalte, Jahr", - "State": "vollständig mit Werten", - "Time": "1992-2011", - "LatestUpdate": "26.02.2014 15:37:23h", - "Information": "false" - }, - { - "Code": "79994BV061", - "Content": "Vergabestatistik, Genannte CPV-Codes i.vergeb. öff.Auftr. u.Konzess., Deutschland insgesamt, Auftraggeberebene, CPV-Codes (Abteilungen), Quartale, Jahr", - "State": "vollständig mit Werten", - "Time": "1. Quartal 2021-4. Quartal 2023", - "LatestUpdate": "03.02.2025 17:14:38h", - "Information": "false" - }, - { - "Code": "79994LV051", - "Content": "Vergabestatistik, Genannte CPV-Codes i.vergeb. öff.Auftr. u.Konzess., Bundesländer, Auftraggeberebene, CPV-Codes (Abteilungen), Quartale, Jahr", - "State": "vollständig mit Werten", - "Time": "1. Quartal 2021-4. Quartal 2023", - "LatestUpdate": "03.02.2025 17:14:54h", - "Information": "false" - } - ], - "Statistics": [ - { - "Code": "12211", - "Content": "Mikrozensus", - "Cubes": "523", - "Information": "true" - }, - { - "Code": "21331", - "Content": "Statistik der Gasthörer", - "Cubes": "2", - "Information": "true" - }, - { - "Code": "21341", - "Content": "Statistik des Hochschulpersonals", - "Cubes": "3", - "Information": "true" - }, - { - "Code": "21351", - "Content": "Statistik der Habilitationen", - "Cubes": "6", - "Information": "true" - }, - { - "Code": "21352", - "Content": "Statistik der Promovierenden", - "Cubes": "28", - "Information": "true" - }, - { - "Code": "21371", - "Content": "Hochschulfinanzstatistik", - "Cubes": "8", - "Information": "true" - }, - { - "Code": "21381", - "Content": "Hochschulstatistische Kennzahlen", - "Cubes": "11", - "Information": "false" - }, - { - "Code": "21431", - "Content": "Förderung nach dem Stipendienprogramm-Gesetz", - "Cubes": "37", - "Information": "true" - }, - { - "Code": "21811", - "Content": "Ausgaben, Einnahmen, Personal öff. Forschungseinr.", - "Cubes": "47", - "Information": "true" - }, - { - "Code": "41161", - "Content": "Strukturerhebung der Forstbetriebe", - "Cubes": "9", - "Information": "true" - }, - { - "Code": "51000", - "Content": "Außenhandel", - "Cubes": "79", - "Information": "true" - }, - { - "Code": "62361", - "Content": "Verdiensterhebung", - "Cubes": "152", - "Information": "true" - }, - { - "Code": "71141", - "Content": "Rechnungsergebnisse d.öffentlichen Gesamthaushalts", - "Cubes": "10", - "Information": "true" - }, - { - "Code": "79994", - "Content": "Vergabestatistik", - "Cubes": "112", - "Information": "true" - } - ], - "Tables": [ - { - "Code": "12211-0009", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Deutschland,\nJahre, Geschlecht, Stellung im Beruf, Berufe", - "Time": "" - }, - { - "Code": "12211-1009", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Berufe", - "Time": "" - }, - { - "Code": "21331-0002", - "Content": "Gasthörer: Deutschland, Semester, Fächergruppen", - "Time": "" - }, - { - "Code": "21341-0002", - "Content": "Hauptberufliches wissenschaftliches und künstlerisches\nPersonal an Hochschulen: Deutschland, Jahre, Lehr- und\nForschungsbereiche nach Fächergruppen, Geschlecht", - "Time": "" - }, - { - "Code": "21341-0003", - "Content": "Professoren: Deutschland, Jahre, Fächergruppen, Geschlecht", - "Time": "" - }, - { - "Code": "21351-0001", - "Content": "Habilitationen: Deutschland, Jahre, Fächergruppen,\nNationalität, Geschlecht", - "Time": "" - }, - { - "Code": "21351-0002", - "Content": "Durchschnittsalter der habilitierten Personen: Deutschland,\nJahre, Fächergruppen, Geschlecht", - "Time": "" - }, - { - "Code": "21352-0002", - "Content": "Promovierende: Deutschland, Stichtag, Geschlecht,\nAltersgruppen, Fächergruppen", - "Time": "" - }, - { - "Code": "21352-0003", - "Content": "Promovierende: Deutschland, Stichtag, Nationalität,\nGeschlecht, Fächergruppen und Studienbereiche", - "Time": "" - }, - { - "Code": "21352-0004", - "Content": "Durchschnittsalter der Promovierenden: Deutschland,\nStichtag, Geschlecht, Fächergruppen", - "Time": "" - }, - { - "Code": "21371-0001", - "Content": "Ausgaben der Hochschulen: Deutschland, Jahre, Hochschulart,\nFächergruppen", - "Time": "" - }, - { - "Code": "21371-0002", - "Content": "Ausgaben der Hochschulen: Bundesländer, Jahre, Hochschulart,\nFächergruppen", - "Time": "" - }, - { - "Code": "21381-0005", - "Content": "Laufende Ausgaben der Hochschulen, Drittmittel der\nHochschulen: Deutschland, Jahre, Fächergruppen", - "Time": "" - }, - { - "Code": "21431-0004", - "Content": "Stipendiaten: Deutschland, Jahre, Nationalität, Geschlecht,\nFächergruppen", - "Time": "" - }, - { - "Code": "21811-0003", - "Content": "Interne Ausgaben für Forschung und Entwicklung: Deutschland,\nJahre, Einrichtungsart, Wissenschaftszweige", - "Time": "" - }, - { - "Code": "21811-0005", - "Content": "Personal für Forschung und Entwicklung (Vollzeitäquivalente): Deutschland, Jahre, Einrichtungsart, Wissenschaftszweige", - "Time": "" - }, - { - "Code": "21811-0007", - "Content": "Personal für Forschung und Entwicklung (Vollzeitäquivalente): Deutschland, Jahre, Personalgruppen, Wissenschaftszweige", - "Time": "" - }, - { - "Code": "21811-0022", - "Content": "Interne Ausgaben für Forschung und Entwicklung: Bundesländer\nund Ausland, Jahre, Wissenschaftszweige", - "Time": "" - }, - { - "Code": "41161-0001", - "Content": "Waldfläche: Deutschland, Jahre, Waldeigentumsarten", - "Time": "" - }, - { - "Code": "41161-0002", - "Content": "Forsteinheiten, Waldfläche: Deutschland, Jahre,\nWaldeigentumsarten, Größenklassen der Waldfläche", - "Time": "" - }, - { - "Code": "41161-0010", - "Content": "Waldfläche: Bundesländer, Jahre, Waldeigentumsarten", - "Time": "" - }, - { - "Code": "41161-0011", - "Content": "Forsteinheiten, Waldfläche: Bundesländer, Jahre,\nWaldeigentumsarten, Größenklassen der Waldfläche", - "Time": "" - }, - { - "Code": "41161-0100", - "Content": "Forstbetriebe, Waldfläche: Deutschland, Jahre (bis 2007)", - "Time": "" - }, - { - "Code": "41161-0101", - "Content": "Forstbetriebe, Waldfläche: Deutschland, Jahre (bis 2007),\nRechtsform, Größenklassen der Waldfläche", - "Time": "" - }, - { - "Code": "51000-0005", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWarensystematik", - "Time": "" - }, - { - "Code": "51000-0006", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWarensystematik", - "Time": "" - }, - { - "Code": "51000-0009", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre, Land,\nWarenverzeichnis (4-/6-Steller)", - "Time": "" - }, - { - "Code": "51000-0010", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWare (4-/6-Steller), Länder", - "Time": "" - }, - { - "Code": "51000-0011", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate, Land,\nWarenverzeichnis (4-/6-Steller)", - "Time": "" - }, - { - "Code": "51000-0012", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWare (4-/6-Steller), Länder", - "Time": "" - }, - { - "Code": "51000-0013", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWarenverzeichnis (8-Steller)", - "Time": "" - }, - { - "Code": "51000-0014", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWarenverzeichnis (8-Steller)", - "Time": "" - }, - { - "Code": "51000-0015", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre, Land,\nWarenverzeichnis (8-Steller)", - "Time": "" - }, - { - "Code": "51000-0016", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWare (8-Steller), Länder", - "Time": "" - }, - { - "Code": "51000-0017", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate, Land,\nWarenverzeichnis (8-Steller)", - "Time": "" - }, - { - "Code": "51000-0018", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWare (8-Steller), Länder", - "Time": "" - }, - { - "Code": "62361-0030", - "Content": "Bruttostundenverdienste, Bruttomonatsverdienste: Deutschland, Stichmonat, Geschlecht, Berufe", - "Time": "" - }, - { - "Code": "62361-0034", - "Content": "Bruttojahresverdienste: Deutschland, Jahre, Geschlecht, Berufe", - "Time": "" - }, - { - "Code": "71141-0004", - "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Nettoausgaben, Personalausgaben, Baumaßnahmen):\nDeutschland, Jahre, Körperschaftsgruppen, Aufgabenbereiche", - "Time": "" - }, - { - "Code": "79994-0011", - "Content": "Genannte CPV-Codes in vergebenen öffentlichen Aufträgen und\nKonzessionen: Deutschland, Quartale, Auftraggeberebene,\nCPV-Codes (Abteilungen)", - "Time": "" - }, - { - "Code": "79994-0109", - "Content": "Genannte CPV-Codes in vergebenen öffentlichen Aufträgen und Konzessionen: Bundesländer, Quartale, Auftraggeberebene, CPV-Codes (Abteilungen)", - "Time": "" - } - ], - "Timeseries": null, - "Variables": [ - { - "Code": "AFGBE3", - "Content": "Aufgabenbereiche der öffentlichen Haushalte", - "Type": "sachlich", - "Values": "22", - "Information": "false" - }, - { - "Code": "BERLF1", - "Content": "Lehr- und Forschungsbereiche", - "Type": "sachlich", - "Values": "84", - "Information": "false" - }, - { - "Code": "BILFG1", - "Content": "Fächergruppen", - "Type": "sachlich", - "Values": "10", - "Information": "false" - }, - { - "Code": "BILFG2", - "Content": "Fächergruppen", - "Type": "sachlich", - "Values": "10", - "Information": "false" - }, - { - "Code": "BILFG3", - "Content": "Fächergruppen", - "Type": "sachlich", - "Values": "11", - "Information": "false" - }, - { - "Code": "BILFG4", - "Content": "Fächergruppen", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "BILFG5", - "Content": "Fächergruppen", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "BILFG6", - "Content": "Fächergruppen", - "Type": "sachlich", - "Values": "12", - "Information": "false" - }, - { - "Code": "BILFG7", - "Content": "Fächergruppen", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "BTR009", - "Content": "Forsteinheiten", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "CPV08A", - "Content": "CPV-Codes (Abteilungen)", - "Type": "sachlich", - "Values": "45", - "Information": "true" - }, - { - "Code": "KB10A1", - "Content": "Berufsbereiche (KB2010), 1-Steller", - "Type": "sachlich", - "Values": "10", - "Information": "false" - }, - { - "Code": "KB10A3", - "Content": "Berufsgruppen (KB2010), 3-Steller", - "Type": "sachlich", - "Values": "144", - "Information": "true" - }, - { - "Code": "KB10A5", - "Content": "Berufsgattungen (KB2010), 5-Steller", - "Type": "sachlich", - "Values": "1300", - "Information": "true" - }, - { - "Code": "WAM6", - "Content": "Warenverzeichnis Außenhandelsstatistik (6-Steller)", - "Type": "sachlich", - "Values": "6438", - "Information": "true" - }, - { - "Code": "WAM8", - "Content": "Warenverzeichnis Außenhandelsstatistik (8-Steller)", - "Type": "sachlich", - "Values": "14319", - "Information": "true" - }, - { - "Code": "WISZW1", - "Content": "Wissenschaftszweige", - "Type": "sachlich", - "Values": "6", - "Information": "false" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/find3/api/find/find-86e7c4-9c085e-POST.json b/tests/testthat/find3/api/find/find-86e7c4-9c085e-POST.json deleted file mode 100644 index e9865cb..0000000 --- a/tests/testthat/find3/api/find/find-86e7c4-9c085e-POST.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "Ident": { - "Service": "find", - "Method": "find" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "term": "zensus", - "category": "Alle", - "pagelength": "500", - "language": "de" - }, - "Cubes": null, - "Statistics": null, - "Tables": null, - "Timeseries": null, - "Variables": [ - { - "Code": "BEVZ01", - "Content": "Bevölkerung (Zensus)", - "Type": "Wert", - "Values": "-1", - "Information": "false" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/meta1/api/metadata/table-86e7c4-bf190d-POST.json b/tests/testthat/meta1/api/metadata/table-86e7c4-bf190d-POST.json deleted file mode 100644 index 90ec4c6..0000000 --- a/tests/testthat/meta1/api/metadata/table-86e7c4-bf190d-POST.json +++ /dev/null @@ -1,78 +0,0 @@ -{ - "Ident": { - "Service": "metadata", - "Method": "table" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "11111-0001", - "area": "Alle", - "language": "de" - }, - "Object": { - "Code": "11111-0001", - "Content": "Gebietsfläche: Bundesländer, Stichtag", - "Time": { - "From": "31.12.1995", - "To": "31.12.2022" - }, - "Valid": "false", - "Structure": { - "Head": { - "Code": "11111", - "Content": "Feststellung des Gebietsstands", - "Type": "Statistik", - "Values": null, - "Selected": null, - "Functions": null, - "Structure": [ - { - "Code": "FLC006", - "Content": "Gebietsfläche", - "Type": "Merkmal", - "Values": null, - "Selected": null, - "Functions": null, - "Structure": null, - "Updated": "see parent" - } - ], - "Updated": "see parent" - }, - "Columns": [ - { - "Code": "STAG", - "Content": "Stichtag", - "Type": "Merkmal", - "Values": "1", - "Selected": "1", - "Functions": null, - "Structure": null, - "Updated": "see parent" - } - ], - "Rows": [ - { - "Code": "DLAND", - "Content": "Bundesländer", - "Type": "Merkmal", - "Values": null, - "Selected": null, - "Functions": null, - "Structure": null, - "Updated": "see parent" - } - ], - "Subtitel": null, - "Subheading": null - }, - "Updated": "28.12.2022 09:24:14h" - }, - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/meta3/api/metadata/table-86e7c4-bf190d-POST.json b/tests/testthat/meta3/api/metadata/table-86e7c4-bf190d-POST.json deleted file mode 100644 index 90ec4c6..0000000 --- a/tests/testthat/meta3/api/metadata/table-86e7c4-bf190d-POST.json +++ /dev/null @@ -1,78 +0,0 @@ -{ - "Ident": { - "Service": "metadata", - "Method": "table" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "11111-0001", - "area": "Alle", - "language": "de" - }, - "Object": { - "Code": "11111-0001", - "Content": "Gebietsfläche: Bundesländer, Stichtag", - "Time": { - "From": "31.12.1995", - "To": "31.12.2022" - }, - "Valid": "false", - "Structure": { - "Head": { - "Code": "11111", - "Content": "Feststellung des Gebietsstands", - "Type": "Statistik", - "Values": null, - "Selected": null, - "Functions": null, - "Structure": [ - { - "Code": "FLC006", - "Content": "Gebietsfläche", - "Type": "Merkmal", - "Values": null, - "Selected": null, - "Functions": null, - "Structure": null, - "Updated": "see parent" - } - ], - "Updated": "see parent" - }, - "Columns": [ - { - "Code": "STAG", - "Content": "Stichtag", - "Type": "Merkmal", - "Values": "1", - "Selected": "1", - "Functions": null, - "Structure": null, - "Updated": "see parent" - } - ], - "Rows": [ - { - "Code": "DLAND", - "Content": "Bundesländer", - "Type": "Merkmal", - "Values": null, - "Selected": null, - "Functions": null, - "Structure": null, - "Updated": "see parent" - } - ], - "Subtitel": null, - "Subheading": null - }, - "Updated": "28.12.2022 09:24:14h" - }, - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/modified1/api/catalogue/modifieddata-86e7c4-7172bd-POST.json b/tests/testthat/modified1/api/catalogue/modifieddata-86e7c4-7172bd-POST.json deleted file mode 100644 index 2d37771..0000000 --- a/tests/testthat/modified1/api/catalogue/modifieddata-86e7c4-7172bd-POST.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "modifieddata" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "61111", - "type": "Alle", - "date": "01.01.2022", - "pagelength": "500", - "language": "de", - "area": "Alle" - }, - "List": [ - { - "Code": "61111", - "Content": "Verbraucherpreisindex für Deutschland", - "Type": "Aktualisierte Statistiken", - "Date": "14.03.2025", - "Added": "Feb 2025" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-766308-POST.json b/tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-766308-POST.json deleted file mode 100644 index 28a30eb..0000000 --- a/tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-766308-POST.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "modifieddata" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "61111", - "type": "Alle", - "date": "09.04.2025", - "pagelength": "500", - "language": "de", - "area": "Alle" - }, - "List": [ - null - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/modified3/api/catalogue/modifieddata-86e7c4-7172bd-POST.json b/tests/testthat/modified3/api/catalogue/modifieddata-86e7c4-7172bd-POST.json deleted file mode 100644 index 2d37771..0000000 --- a/tests/testthat/modified3/api/catalogue/modifieddata-86e7c4-7172bd-POST.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "modifieddata" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "61111", - "type": "Alle", - "date": "01.01.2022", - "pagelength": "500", - "language": "de", - "area": "Alle" - }, - "List": [ - { - "Code": "61111", - "Content": "Verbraucherpreisindex für Deutschland", - "Type": "Aktualisierte Statistiken", - "Date": "14.03.2025", - "Added": "Feb 2025" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/modified4/api/catalogue/modifieddata-86e7c4-2866b4-POST.json b/tests/testthat/modified4/api/catalogue/modifieddata-86e7c4-2866b4-POST.json deleted file mode 100644 index 8d8f060..0000000 --- a/tests/testthat/modified4/api/catalogue/modifieddata-86e7c4-2866b4-POST.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "modifieddata" - }, - "Status": { - "Code": 104, - "Content": "Es gibt keine Objekte zum angegebenen Selektionskriterium", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "61234", - "type": "Alle", - "date": "01.01.2022", - "pagelength": "500", - "language": "de", - "area": "Alle" - }, - "List": null, - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/searchvars1/api/catalogue/variables-86e7c4-67879c-POST.json b/tests/testthat/searchvars1/api/catalogue/variables-86e7c4-67879c-POST.json deleted file mode 100644 index 35b54a2..0000000 --- a/tests/testthat/searchvars1/api/catalogue/variables-86e7c4-67879c-POST.json +++ /dev/null @@ -1,3525 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "variables" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "", - "area": "Alle", - "searchcriterion": "Code", - "sortcriterion": "Code", - "type": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "ABF001", - "Content": "Input von Abfallentsorgungsanlagen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF002", - "Content": "Im eigenen Betrieb erzeugte Abfälle", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF003", - "Content": "Aus dem Inland angelieferter Abfall", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF004", - "Content": "Aus dem Ausland angelieferter Abfall", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF005", - "Content": "Output von Abfallentsorgungsanlagen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF006", - "Content": "Abfälle zur Beseitigung", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF007", - "Content": "Abfälle zur Verwertung", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF008", - "Content": "Beim Erstempfänger beseitigte Haushaltsabfälle", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF009", - "Content": "Beim Erstempfänger verwertete Haushaltsabfälle", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF010", - "Content": "Abfallerzeuger", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF011", - "Content": "Abfallmengen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF012", - "Content": "Abfallmengen, von Primärerzeugern erzeugt", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF013", - "Content": "Einsammler", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF014", - "Content": "Erzeugte Abfallmenge", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ABF015", - "Content": "Abfälle zu vorbereitenden Verfahren", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF016", - "Content": "Abfallaufkommen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABF017", - "Content": "Abfallverwertungsquote", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ABF018", - "Content": "Abfallrecyclingquote", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ABFAT1", - "Content": "Abfallarten", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ABFAT2", - "Content": "Abfallarten", - "Type": "sachlich", - "Values": "14", - "Information": "false" - }, - { - "Code": "ABFAT3", - "Content": "Abfallarten", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "ABFAT4", - "Content": "Abfallarten", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ABFES1", - "Content": "Art der Abfallentsorgung", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ABG001", - "Content": "Produktions- und Importabgaben", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABG002", - "Content": "Produktions- und Importabgaben abzgl. Subventionen", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ABG003", - "Content": "Abgaben auf soz.Leistungen, verbrauchsnahe Steuern", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ABG004", - "Content": "Abgabe an Sonstige", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABG005", - "Content": "Stromabgabe", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABG006", - "Content": "Wärmeabgabe", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABG007", - "Content": "Sonstige Produktionsabgaben", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABG008", - "Content": "Nettoproduktionsabgaben", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABNAT1", - "Content": "Abnehmer", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ABNGR1", - "Content": "Abnehmergruppen", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ABNGR2", - "Content": "Abnehmergruppen", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ABS002", - "Content": "Abschreibungen", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ABS008", - "Content": "Abschreibungen (Anteil am BPW)", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ABS009", - "Content": "Stromabsatz", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABS010", - "Content": "Gasabsatz", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABS011", - "Content": "Absatz von Bier", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ABS012", - "Content": "Absatz von Biermischungen", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ABS013", - "Content": "Versteuerter Bierabsatz", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ABS014", - "Content": "Steuerfreier Bierabsatz", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ABS015", - "Content": "Steuerfreier Bierabsatz in EU-Länder", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABS016", - "Content": "Steuerfreier Bierabsatz in Drittländer", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABS017", - "Content": "Steuerfreier Bierabsatz als Haustrunk", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABS019", - "Content": "Absatz von Schaumwein", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABS020", - "Content": "Versteuerter Schaumweinabsatz", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABS021", - "Content": "Steuerfreier Schaumweinabsatz", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ABSAT1", - "Content": "Absatzrichtung", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ABSATZ", - "Content": "Absatzrichtung", - "Type": "sachlich", - "Values": "5", - "Information": "true" - }, - { - "Code": "ABSBQ1", - "Content": "Bereits erworbener Ausbildungsabschluss", - "Type": "sachlich", - "Values": "9", - "Information": "true" - }, - { - "Code": "ABZ002", - "Content": "Abzüge der Arbeitnehmer", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ADAFW1", - "Content": "Art der Aufwendungen", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ADAFW2", - "Content": "Art der Aufwendungen", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ADANS1", - "Content": "Art der Anstellung", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ADANS2", - "Content": "Art der Anstellung", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ADANS3", - "Content": "Art der Tätigkeit", - "Type": "sachlich", - "Values": "11", - "Information": "false" - }, - { - "Code": "ADBES1", - "Content": "Art der Bestände", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ADFAW1", - "Content": "Art des finanziellen Aufwandes", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ADINV1", - "Content": "Art der Investitionen", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "ADOEL1", - "Content": "Verwandtschaftsverhältnis zu den Adoptiveltern", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ADP001", - "Content": "Aufgehobene Adoptionen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ADP002", - "Content": "Abgebrochene Adoptionspflegen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ADP003", - "Content": "Zur Adoption vorgemerkte Kinder und Jugendliche", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ADP004", - "Content": "Vorgemerkte Adoptionsbewerbungen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ADP005", - "Content": "In Adoptionspflege untergebrachte Kinder/Jugendl.", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ADPAT1", - "Content": "Art der Adoption", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ADPAW1", - "Content": "Art der Personalaufwendungen", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ADPAW2", - "Content": "Art der Personalaufwendungen", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ADSAW1", - "Content": "Art der Sachaufwendungen", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ADSAW2", - "Content": "Art der Sachaufwendungen", - "Type": "sachlich", - "Values": "10", - "Information": "false" - }, - { - "Code": "ADSAW6", - "Content": "Art der Sachaufwendungen", - "Type": "sachlich", - "Values": "16", - "Information": "false" - }, - { - "Code": "ADSST2", - "Content": "Soziale Stellung des Haupteinkommensbeziehers", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "ADSST3", - "Content": "Soziale Stellung des Haupteinkommensbeziehers", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ADVTN1", - "Content": "Nutzungsarten (tatsächliche Nutzung) (AdV-TN 2023)", - "Type": "sachlich", - "Values": "58", - "Information": "true" - }, - { - "Code": "ADVTN3", - "Content": "Nutzungsarten (AdV-Nutzungsartenverzeichnis 1991)", - "Type": "sachlich", - "Values": "8", - "Information": "true" - }, - { - "Code": "ADVTN4", - "Content": "Nutzungsarten (AdV-Nutzungsartenverzeichnis 1991)", - "Type": "sachlich", - "Values": "9", - "Information": "true" - }, - { - "Code": "ADVTN5", - "Content": "Nutzungsarten (AdV-Nutzungsartenverzeichnis 1991)", - "Type": "sachlich", - "Values": "5", - "Information": "true" - }, - { - "Code": "ADVTN6", - "Content": "Nutzungsarten", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ADVTN7", - "Content": "Nutzungsarten (AdV-Nutzungsartenkatalog 2009)", - "Type": "sachlich", - "Values": "32", - "Information": "true" - }, - { - "Code": "AEW006", - "Content": "Erzeuger von primär nachgewiesenen Abfallmengen", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AEW007", - "Content": "Abgegebene Abfallmenge an Entsorger", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AFGBE1", - "Content": "Aufgabenbereiche", - "Type": "sachlich", - "Values": "14", - "Information": "false" - }, - { - "Code": "AFGBE2", - "Content": "Aufgabenbereiche", - "Type": "sachlich", - "Values": "11", - "Information": "false" - }, - { - "Code": "AFGBE3", - "Content": "Aufgabenbereiche der öffentlichen Haushalte", - "Type": "sachlich", - "Values": "22", - "Information": "false" - }, - { - "Code": "AFGBE4", - "Content": "Aufgabenbereiche der öffentlichen Haushalte", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "AFGBE5", - "Content": "Aufgabenbereiche des Trägers", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "AFHMN1", - "Content": "Aufenthalt vor der Maßnahme", - "Type": "sachlich", - "Values": "12", - "Information": "false" - }, - { - "Code": "AFTAT1", - "Content": "Auftragsart", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "AFTAT2", - "Content": "Auftragsart", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "AFTAT3", - "Content": "Auftragsart", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "AGEBN1", - "Content": "Auftraggeberebene", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "AGEBN2", - "Content": "Auftraggeberebene", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "AGL001", - "Content": "Relative Armutsgefährdungslücke (60%-Median)", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AGQ001", - "Content": "Armutsgefährdungsquote", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AGQ002", - "Content": "Armutsgefährdungsquote von Personen ab 16 Jahren", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AGQ003", - "Content": "Armutsgefährdungsquote v.erwerbstät. Pers.ab 16 J.", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AGQ004", - "Content": "Armutsgefährdungsquote v.erwerbstät. Pers.ab 18 J.", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AGS001", - "Content": "Armutsgefährdungsschwelle (60%-Median)", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AKEA01", - "Content": "Arbeitskostenarten", - "Type": "sachlich", - "Values": "52", - "Information": "true" - }, - { - "Code": "AKG001", - "Content": "Wägung Index der Arbeitskosten je geleistete Std.", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AKG002", - "Content": "Wägung Index d.Bruttoverdienste je geleistete Std.", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AKG003", - "Content": "Wägung Index d. Lohnnebenkosten je geleistete Std.", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AKI001", - "Content": "Index der Arbeitskosten je geleistete Stunde", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AKI002", - "Content": "Index der Bruttoverdienste je geleistete Stunde", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AKI003", - "Content": "Index der Lohnnebenkosten je geleistete Stunde", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AKJ001", - "Content": "Adoptierte Kinder und Jugendliche", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AKNSI1", - "Content": "Sitz des Auftrag-/Konzessionsnehmers", - "Type": "sachlich", - "Values": "4", - "Information": "true" - }, - { - "Code": "AKO001", - "Content": "Arbeitskosten je Vollzeiteinheit", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AKO002", - "Content": "Arbeitskosten je geleistete Stunde", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AKO003", - "Content": "Bruttoverdienste je geleistete Stunde", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AKO004", - "Content": "Lohnnebenkosten je geleistete Stunde", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AKO007", - "Content": "Bruttoarbeitskosten je Vollzeiteinheit", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AKO008", - "Content": "Nettoarbeitskosten je geleistete Stunde", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AKTIV1", - "Content": "Aktivitäten", - "Type": "sachlich", - "Values": "57", - "Information": "false" - }, - { - "Code": "ALDGR1", - "Content": "Größenklassen des Ackerlandes", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "ALT001", - "Content": "Altersjahre (u1-u27)", - "Type": "sachlich", - "Values": "22", - "Information": "false" - }, - { - "Code": "ALT004", - "Content": "Altersgruppen (u20-80m)", - "Type": "sachlich", - "Values": "12", - "Information": "false" - }, - { - "Code": "ALT011", - "Content": "Altersgruppen (u1-u18)", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "ALT012", - "Content": "Altersgruppen (u20-70m)", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "ALT013", - "Content": "Altersjahre (u1-85m)", - "Type": "sachlich", - "Values": "86", - "Information": "false" - }, - { - "Code": "ALT019", - "Content": "Altersjahre (u17-24m)", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "ALT020", - "Content": "Altersgruppen (u6-18m)", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ALT021", - "Content": "Altersgruppen (u18-65m)", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ALT022", - "Content": "Altersgruppen (u20-60m)", - "Type": "sachlich", - "Values": "10", - "Information": "false" - }, - { - "Code": "ALT023", - "Content": "Altersgruppen (18-75m)", - "Type": "sachlich", - "Values": "13", - "Information": "false" - }, - { - "Code": "ALT024", - "Content": "Altersgruppen (14-70m)", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "ALT026", - "Content": "Altersgruppen (u18-60m, unbekannt)", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "ALT027", - "Content": "Altersgruppen (u1-85m, unbekannt)", - "Type": "sachlich", - "Values": "18", - "Information": "false" - }, - { - "Code": "ALT028", - "Content": "Altersgruppen (u6-61m, unbekannt)", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "ALT029", - "Content": "Altersgruppen (u24-40m, unbekannt)", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "ALT030", - "Content": "Altersgruppen (u6-18)", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ALT031", - "Content": "Altersgruppen (u3-65m)", - "Type": "sachlich", - "Values": "11", - "Information": "false" - }, - { - "Code": "ALT032", - "Content": "Altersgruppen (u3-u14)", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ALT033", - "Content": "Altersgruppen (u4-65m)", - "Type": "sachlich", - "Values": "12", - "Information": "false" - }, - { - "Code": "ALT034", - "Content": "Altersgruppen (15-65m)", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "ALT035", - "Content": "Altersgruppen (u25-65m)", - "Type": "sachlich", - "Values": "10", - "Information": "false" - }, - { - "Code": "ALT036", - "Content": "Altersgruppen (u5-95m)", - "Type": "sachlich", - "Values": "28", - "Information": "false" - }, - { - "Code": "ALT037", - "Content": "Altersgruppen (u15-85m)", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "ALT038", - "Content": "Altersgruppen (u25-65m)", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "ALT039", - "Content": "Altersgruppen (16-65m)", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ALT040", - "Content": "Altersgruppen (u3-75m)", - "Type": "sachlich", - "Values": "11", - "Information": "false" - }, - { - "Code": "ALT041", - "Content": "Altersgruppen (u18-65m)", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ALT042", - "Content": "Altersgruppen (u3-12m)", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ALT043", - "Content": "Alter der Empfänger im ersten Bezugsmonat", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "ALT044", - "Content": "Alter d.anspruchsbegr.Kinder im ersten Bezugsmonat", - "Type": "sachlich", - "Values": "2", - "Information": "true" - }, - { - "Code": "ALT045", - "Content": "Altersgruppen (u18-65m)", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ALT046", - "Content": "Altersgruppen (u18-65m)", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ALT047", - "Content": "Altersgruppen (u15-65m)", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "ALT049", - "Content": "Altersgruppen (u30-60m)", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ALT050", - "Content": "Altersgruppen (u18-90m)", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "ALT051", - "Content": "Altersgruppen der Zuschauer", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ALT052", - "Content": "Alter des Haupteinkommensbeziehers (18-80m)", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "ALT058", - "Content": "Altersgruppen (u3-27m)", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "ALT059", - "Content": "Altersgruppen (u3-18)", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "ALT060", - "Content": "Altersgruppen (u7-18m)", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ALT061", - "Content": "Altersgruppen (u5-95m)", - "Type": "sachlich", - "Values": "20", - "Information": "false" - }, - { - "Code": "ALT062", - "Content": "Altersgruppen (u20-65m)", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "ALT063", - "Content": "Altersgruppen (15-u50, 15-u70)", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ALT064", - "Content": "Altersgruppen (15-65m)", - "Type": "sachlich", - "Values": "11", - "Information": "false" - }, - { - "Code": "ALT065", - "Content": "Altersgruppen (15-75m)", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "ALT066", - "Content": "Altersgruppen (u15-65m)", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "ALT067", - "Content": "Altersgruppen (u15-65m)", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ALT068", - "Content": "Altersgruppen (u15-75m)", - "Type": "sachlich", - "Values": "14", - "Information": "false" - }, - { - "Code": "ALT069", - "Content": "Altersgruppen (u20-85m)", - "Type": "sachlich", - "Values": "15", - "Information": "false" - }, - { - "Code": "ALT070", - "Content": "Altersgruppen (u17-50m)", - "Type": "sachlich", - "Values": "10", - "Information": "false" - }, - { - "Code": "ALT071", - "Content": "Altersgruppen (u18-65m)", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ALT072", - "Content": "Altersgruppen (16-u75)", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ALT073", - "Content": "Altersgruppen (u15-45m)", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "ALT074", - "Content": "Altersgruppen (10-65m)", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "ALT100", - "Content": "Altersjahre (u1-100m, unbekannt)", - "Type": "sachlich", - "Values": "102", - "Information": "false" - }, - { - "Code": "ALT101", - "Content": "Altersjahre (u1-100m)", - "Type": "sachlich", - "Values": "101", - "Information": "false" - }, - { - "Code": "ALT102", - "Content": "Altersjahre (u1-95m, unbekannt)", - "Type": "sachlich", - "Values": "97", - "Information": "false" - }, - { - "Code": "ALT103", - "Content": "Altersjahre (u1-90m)", - "Type": "sachlich", - "Values": "91", - "Information": "false" - }, - { - "Code": "ALT104", - "Content": "Altersjahre (u1-95m)", - "Type": "sachlich", - "Values": "96", - "Information": "false" - }, - { - "Code": "ALT112", - "Content": "Altersgruppen (u1-95m)", - "Type": "sachlich", - "Values": "22", - "Information": "false" - }, - { - "Code": "ALT116", - "Content": "Altersgruppen (u5-90m)", - "Type": "sachlich", - "Values": "19", - "Information": "false" - }, - { - "Code": "ALT117", - "Content": "Altersgruppen (u1-u18)", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "ALT118", - "Content": "Altersgruppen (14-50m)", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "ALT18M", - "Content": "Altersgruppen (u18-18m)", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ALT577", - "Content": "Vollendetes Alter", - "Type": "sachlich", - "Values": "101", - "Information": "false" - }, - { - "Code": "ALTAB2", - "Content": "Altersgruppen", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ALTBM1", - "Content": "Alter der Bäume", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ALTD01", - "Content": "Alter", - "Type": "sachlich", - "Values": "35", - "Information": "false" - }, - { - "Code": "ALTEF4", - "Content": "Alter der Ehefrau", - "Type": "sachlich", - "Values": "14", - "Information": "false" - }, - { - "Code": "ALTEM4", - "Content": "Alter des Ehemannes", - "Type": "sachlich", - "Values": "14", - "Information": "false" - }, - { - "Code": "ALTFR1", - "Content": "Altersgruppen der Frauen (25-75)", - "Type": "sachlich", - "Values": "10", - "Information": "false" - }, - { - "Code": "ALTGR1", - "Content": "Altersgruppen", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ALTJH8", - "Content": "Altersgruppen (u12-21m)", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ALTJK1", - "Content": "Alter des jüngsten Kindes", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ALTJK2", - "Content": "Alter des jüngsten Kindes", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ALTJK3", - "Content": "Alter des jüngsten Kindes", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "ALTKI1", - "Content": "Altersgruppen der Kinder", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ALTMT3", - "Content": "Alter der Mutter", - "Type": "sachlich", - "Values": "38", - "Information": "false" - }, - { - "Code": "ALTMZ1", - "Content": "Altersgruppen (u25-65m)", - "Type": "sachlich", - "Values": "4", - "Information": "true" - }, - { - "Code": "ALTNK1", - "Content": "Alter der Nichtschulkinder", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "ALTSK1", - "Content": "Alter der Schulkinder", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "ALTUN1", - "Content": "Alter der Unternehmen", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ALTVT1", - "Content": "Alter des Vaters", - "Type": "sachlich", - "Values": "55", - "Information": "false" - }, - { - "Code": "ALTWL1", - "Content": "Altersgruppen (18-60m)", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ALTWL2", - "Content": "Altersgruppen (18-70m)", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "ALTX07", - "Content": "Altersgruppen (u20-65m)", - "Type": "sachlich", - "Values": "11", - "Information": "false" - }, - { - "Code": "ALTX18", - "Content": "Altersgruppen (u15-75m, unbekannt)", - "Type": "sachlich", - "Values": "11", - "Information": "false" - }, - { - "Code": "ALTX20", - "Content": "Altersgruppen (u3-75m)", - "Type": "sachlich", - "Values": "17", - "Information": "false" - }, - { - "Code": "ALTX29", - "Content": "Altersgruppen (u15-65m)", - "Type": "sachlich", - "Values": "12", - "Information": "true" - }, - { - "Code": "ALTX31", - "Content": "Altersgruppen (15-u45, 15-u50)", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ALTX32", - "Content": "Altersgruppen (u20-75m)", - "Type": "sachlich", - "Values": "13", - "Information": "true" - }, - { - "Code": "ALTX33", - "Content": "Altersgruppen (u3-21m)", - "Type": "sachlich", - "Values": "7", - "Information": "true" - }, - { - "Code": "ALTX35", - "Content": "Altersgruppen (u6-65m)", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "ANBA01", - "Content": "Anbauform", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ANBA02", - "Content": "Anbauform", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ANBA03", - "Content": "Anbauform", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ANBFL1", - "Content": "Art der Anbaufläche", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ANBTR1", - "Content": "Anbieter", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ANG001", - "Content": "Adoptierte mit gerichtlich ersetzter Einwilligung", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ANGEB1", - "Content": "Art des Angebots", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ANGEB2", - "Content": "Angebote", - "Type": "sachlich", - "Values": "6", - "Information": "true" - }, - { - "Code": "ANGEU1", - "Content": "EU-Angebote", - "Type": "sachlich", - "Values": "7", - "Information": "true" - }, - { - "Code": "ANGZS1", - "Content": "Angebotszustand", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ANKMU1", - "Content": "KMU-Angebote", - "Type": "sachlich", - "Values": "8", - "Information": "true" - }, - { - "Code": "ANL007", - "Content": "Abfallentsorgungsanlagen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ANL008", - "Content": "Abfallentsorgungsanlagen mit Output", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ANL009", - "Content": "Bauschuttaufbereitungsanlagen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ANL010", - "Content": "Bauschuttaufbereitungsanlagen mit Output", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ANL011", - "Content": "Asphaltmischanlagen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ANL012", - "Content": "Input von Asphaltmischanlagen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ANL013", - "Content": "Anlagengröße", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ANL014", - "Content": "Stromeinspeisende Anlagen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ANL015", - "Content": "Anlagen zur Elektrizitäts- und Wärmeerzeugung", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ANL016", - "Content": "Geprüfte Anlagen z. Umgang mit wassergef. Stoffen", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ANLAT1", - "Content": "Anlagenart", - "Type": "sachlich", - "Values": "15", - "Information": "false" - }, - { - "Code": "ANLAT2", - "Content": "Anlagenart", - "Type": "sachlich", - "Values": "39", - "Information": "false" - }, - { - "Code": "ANLAT3", - "Content": "Anlagenart", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ANLAT4", - "Content": "Anlagenarten", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ANLAT5", - "Content": "Anlagenarten", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ANLAT6", - "Content": "Anlagenart", - "Type": "sachlich", - "Values": "10", - "Information": "false" - }, - { - "Code": "ANLAT7", - "Content": "Anlagenart", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ANLAT8", - "Content": "Anlagenart", - "Type": "sachlich", - "Values": "11", - "Information": "false" - }, - { - "Code": "ANNIV1", - "Content": "Anforderungsniveau", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "APFSO1", - "Content": "Apfelsorten", - "Type": "sachlich", - "Values": "20", - "Information": "false" - }, - { - "Code": "ARB004", - "Content": "Arbeitstage", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ARBAT1", - "Content": "Art der geleisteten Arbeitsstunden", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ARBBR1", - "Content": "Arbeitsbereich", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "ARBBR2", - "Content": "Arbeitsbereich", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "ARBEF1", - "Content": "Entfernung zur Arbeitsstätte", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "ARBGR2", - "Content": "Arbeitergruppen (Landwirtschaft)", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ARBK01", - "Content": "Arbeitskräftegruppen", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "ARBK02", - "Content": "Arbeitskräftegruppen", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ARBK03", - "Content": "Art der Arbeitskräfte", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ARBK04", - "Content": "Art der Arbeitskräfte", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ARBNS1", - "Content": "Abend-, Nacht- und Schichtarbeit", - "Type": "sachlich", - "Values": "9", - "Information": "true" - }, - { - "Code": "ARBST1", - "Content": "Geleistete Arbeitsstunden", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ARBST2", - "Content": "Geleistete Arbeitsstunden je Person", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ARBVK1", - "Content": "Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst.", - "Type": "sachlich", - "Values": "10", - "Information": "true" - }, - { - "Code": "ARBWF1", - "Content": "Wochenend- und Feiertagsarbeit", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "ARBWG1", - "Content": "Zeitaufwand für den Hinweg zur Arbeitsstätte", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ARMGF1", - "Content": "Armut oder soziale Ausgrenzung", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ARSTW1", - "Content": "Größenkl. der geleisteten Arbeitsstunden je Woche", - "Type": "sachlich", - "Values": "7", - "Information": "true" - }, - { - "Code": "ARSTW2", - "Content": "Größenklassen der bezahlten Stunden je Woche", - "Type": "sachlich", - "Values": "61", - "Information": "false" - }, - { - "Code": "ARTDH3", - "Content": "Art der Hilfe", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "ARTDH5", - "Content": "Art der Hilfe", - "Type": "sachlich", - "Values": "23", - "Information": "false" - }, - { - "Code": "ARTDH6", - "Content": "Art der Hilfe (1994-2004)", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ARTDH7", - "Content": "Art der Eingliederungshilfe f. behinderte Menschen", - "Type": "sachlich", - "Values": "15", - "Information": "true" - }, - { - "Code": "ARTDH8", - "Content": "Art der Hilfe zur Pflege", - "Type": "sachlich", - "Values": "13", - "Information": "false" - }, - { - "Code": "ARTDU1", - "Content": "Art des Umsatzes", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ARTDV1", - "Content": "Art des Vollzugs", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ASG001", - "Content": "Ausgaben", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG002", - "Content": "Ausgaben für den Umweltschutz", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG003", - "Content": "Anteil der Ausgaben für den Umweltschutz am BIP", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG004", - "Content": "Ausgaben der öffentlichen Haushalte", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG005", - "Content": "Ausgabearten der öffentlichen Haushalte", - "Type": "sachlich", - "Values": "19", - "Information": "false" - }, - { - "Code": "ASG006", - "Content": "Versorgungsausgaben des öffentlichen Dienstes", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG007", - "Content": "Laufende Ausgaben für den Umweltschutz", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG008", - "Content": "Sonstige Ausgaben", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG009", - "Content": "Ausgaben des Staates", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG010", - "Content": "Nettoausgaben", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG011", - "Content": "Personalausgaben", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG012", - "Content": "Besondere Finanzierungsvorgänge (Ausgaben)", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG013", - "Content": "Nettoausgaben je Einwohner", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG014", - "Content": "Öffentliche Ausgaben für Kultur", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG015", - "Content": "Öffentliche Ausgaben für Kultur je Einwohner", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG016", - "Content": "Anteil der öff. Ausgaben für Kultur am BIP", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG017", - "Content": "Anteil der öff. Ausg. für Kultur am Gesamthaushalt", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG018", - "Content": "Investitionsausgaben der öffentlichen Haushalte", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG019", - "Content": "Art der Investitionsausgaben der öff. Haushalte", - "Type": "sachlich", - "Values": "7", - "Information": "true" - }, - { - "Code": "ASG020", - "Content": "Durchschnittliche monatliche Haushaltsausgaben", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG021", - "Content": "Ausgaben der Kriegsopferfürsorge", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG022", - "Content": "Ausgaben (Auszahlungen)", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG023", - "Content": "Interne Ausgaben für Forschung und Entwicklung", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG024", - "Content": "Anteil der internen Ausgaben für FuE am BIP", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG025", - "Content": "Ausgaben je Beschäftigten in FuE", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG026", - "Content": "Ausgaben der Hochschulen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG027", - "Content": "Reiseausgaben", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG028", - "Content": "Ausgaben der öffentlichen Haushalte für Bildung", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG029", - "Content": "Ausgaben der öff. Haushalte für Bildung je Einw.", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG030", - "Content": "Anteil d.Ausgaben d. öff. Haushalte f.Bild. am BIP", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG031", - "Content": "Anteil d.Ausgaben d. öff. HH f.Bild. am GesamtHH", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG032", - "Content": "Ausgaben für öffentliche Schulen je Schüler", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG033", - "Content": "Nettoausgaben der Eingliederungshilfe", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASG050", - "Content": "Laufende Ausgaben der Hochschulen je Studierenden", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG051", - "Content": "Laufende Ausgaben d. Hochschulen je Wiss. Personal", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG052", - "Content": "Laufende Ausgaben der Hochschulen je Professor", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG053", - "Content": "Drittmittel der Hochschulen je Wiss. Personal", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASG054", - "Content": "Drittmittel der Hochschulen je Professor", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ASGAT1", - "Content": "Ausgabenart", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ASGAT2", - "Content": "Ausgabenkategorie", - "Type": "sachlich", - "Values": "5", - "Information": "true" - }, - { - "Code": "ASGAT3", - "Content": "Art der Ausgaben", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ASGAT4", - "Content": "Art der Ausgaben", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "ASGBR1", - "Content": "Ausgabenbereiche der Kinder- und Jugendhilfe", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "ASGHH3", - "Content": "Ausgewählte Haushaltsausgaben", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "ASL001", - "Content": "Auslastung der Haltungskapazität", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "ASYLS1", - "Content": "Leistungsart", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "ATG001", - "Content": "Ausstattungsgrad je 100 Haushalte", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "ATG002", - "Content": "Ausstattungsbestand je 100 Haushalte", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AUB001", - "Content": "Auftragsbestand", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AUB002", - "Content": "Reichweiten der Auftragsbestände", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AUB101", - "Content": "Auftragsbestand: Wertindex", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AUB102", - "Content": "Auftragsbestand: Volumenindex", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AUF001", - "Content": "Auftragseingang", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AUF006", - "Content": "Aufkommen von Energie", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AUF007", - "Content": "Aufkommen an Haushaltsabfällen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AUF008", - "Content": "Aufkommen an Haushaltsabfällen je Einwohner", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AUF101", - "Content": "Auftragseingang: Wertindex", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AUF102", - "Content": "Auftragseingang: Volumenindex", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AUF201", - "Content": "Auftragseingang ohne Großaufträge: Wertindex", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AUF202", - "Content": "Auftragseingang ohne Großaufträge: Volumenindex", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AUFAT1", - "Content": "Aufwendungsarten", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "AUFAT3", - "Content": "Art der Umweltschutzaufwendungen", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "AUFAT4", - "Content": "Art der Umweltschutzaufwendungen", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "AUFDA3", - "Content": "Aufenthaltsdauer", - "Type": "sachlich", - "Values": "9", - "Information": "true" - }, - { - "Code": "AUFDA4", - "Content": "Aufenthaltsdauer", - "Type": "sachlich", - "Values": "12", - "Information": "true" - }, - { - "Code": "AUFDA5", - "Content": "Aufenthaltsdauer (Abgrenzung Einbürgerungen)", - "Type": "sachlich", - "Values": "6", - "Information": "true" - }, - { - "Code": "AUFST1", - "Content": "Aufenthaltsrechtlicher Status", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "AUFST2", - "Content": "Aufenthaltsrechtlicher Status", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "AUFW01", - "Content": "Aufwendungen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AUFW02", - "Content": "Aufwendungen (Unternehmen ab 250.000 EUR Umsatz)", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AUFW03", - "Content": "Aufwendungen anteilig am Umsatz", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AUFW04", - "Content": "Aufwendungen je Praxis anteilig an den Einnahmen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AUFW05", - "Content": "Aufwendungen für Leiharbeitnehmer", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AUFW06", - "Content": "Aufwendungen für Leistungen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AUFW07", - "Content": "Lfd. Aufwendungen f. d. Umweltschutz im Prod. Gew.", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "AUS002", - "Content": "Aussteiger", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "AUSB1", - "Content": "Ausbildungsbereich", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "AUSB7", - "Content": "Art der Ausbildung", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "BAF001", - "Content": "Betriebe mit abgedeckten Freilandflächen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BAG001", - "Content": "Bruttoausgaben", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BAG002", - "Content": "Bruttoausgaben nach d. Asylbewerberleistungsgesetz", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BAG003", - "Content": "Bruttoausgaben je Einwohner", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BAG004", - "Content": "Bruttoausgaben für Bestattungskosten", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BAG005", - "Content": "Bruttoausgaben der Eingliederungshilfe", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BAM001", - "Content": "Bäume", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BASIS1", - "Content": "Basisjahr", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "BAU003", - "Content": "Baumaßnahmen", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BAU005", - "Content": "Neue Gebäude", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BAU006", - "Content": "Gebäude/Gebäudeteile", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BAU009", - "Content": "Wohngebäude", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BAU012", - "Content": "Input von Bauschuttaufbereitungsanlagen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BAU013", - "Content": "Kapazität von Bauschuttaufbereitungsanlagen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BAU014", - "Content": "Output von Bauschuttaufbereitungsanlagen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BAU015", - "Content": "Gebäude", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BAU016", - "Content": "Gebäude/Baumaßnahmen", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BAU017", - "Content": "Bauinvestitionen des Staates in Wohnbauten", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BAU018", - "Content": "Bauinvestitionen des Staates in Nichtwohnbauten", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BAU019", - "Content": "Bauinvestitionen d.nichtstaatl.Sekt. in Wohnbauten", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BAU020", - "Content": "Bauinvest. d.nichtstaatl.Sekt. in Nichtwohnbauten", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BAUAR1", - "Content": "Gebäudearten", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "BAUAR4", - "Content": "Bauarbeiten (Hochbau)", - "Type": "sachlich", - "Values": "41", - "Information": "false" - }, - { - "Code": "BAUAR5", - "Content": "Ingenieurbau", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "BAUAR9", - "Content": "Bauarten", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "BAUAT1", - "Content": "Bauart", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "BAUAT3", - "Content": "Bauart", - "Type": "sachlich", - "Values": "10", - "Information": "false" - }, - { - "Code": "BAUAX1", - "Content": "Bauarten", - "Type": "sachlich", - "Values": "11", - "Information": "false" - }, - { - "Code": "BAUBH1", - "Content": "Bauherr", - "Type": "sachlich", - "Values": "21", - "Information": "false" - }, - { - "Code": "BAUBH2", - "Content": "Bauherr", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "BAUBR1", - "Content": "Baubereiche", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "BAUFL1", - "Content": "Art der Baufläche", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "BAUGB1", - "Content": "Gebäudeart", - "Type": "sachlich", - "Values": "28", - "Information": "false" - }, - { - "Code": "BAUGB2", - "Content": "Gebäudeart", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "BAUGB3", - "Content": "Gebäudeart", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "BAUGB4", - "Content": "Gebäudeart", - "Type": "sachlich", - "Values": "14", - "Information": "false" - }, - { - "Code": "BAUGB5", - "Content": "Gebäudeart", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "BAUGB6", - "Content": "Gebäudeart", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "BAUGB7", - "Content": "Gebäudeart", - "Type": "sachlich", - "Values": "17", - "Information": "false" - }, - { - "Code": "BAUHR1", - "Content": "Bauherr", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "BAUIN1", - "Content": "Bauarbeiten (Instandhaltung)", - "Type": "sachlich", - "Values": "34", - "Information": "false" - }, - { - "Code": "BAUIN2", - "Content": "Instandhaltung von Wohngebäuden", - "Type": "sachlich", - "Values": "2", - "Information": "true" - }, - { - "Code": "BAULA2", - "Content": "Baulandarten", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "BAULS2", - "Content": "Außenanlagen", - "Type": "sachlich", - "Values": "16", - "Information": "false" - }, - { - "Code": "BAULS5", - "Content": "Bauleistungsart", - "Type": "sachlich", - "Values": "183", - "Information": "false" - }, - { - "Code": "BAUST1", - "Content": "Überwiegend verwendeter Baustoff", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "BAUTB1", - "Content": "Bauarbeiten (Tiefbau)", - "Type": "sachlich", - "Values": "18", - "Information": "false" - }, - { - "Code": "BAUTK1", - "Content": "Bautätigkeiten", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "BBU001", - "Content": "Bruttobetriebsüberschuss", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BBU002", - "Content": "Bruttobetriebsüberschuss (Anteil am Umsatz)", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BBU003", - "Content": "Bruttobetriebsüberschuss je tätige Person", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BDF001", - "Content": "Durchschnittlicher Bruttobedarf", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BDF002", - "Content": "Durchschnittlicher Nettobedarf", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BDFGK1", - "Content": "Größenklassen des Nettobedarfs", - "Type": "sachlich", - "Values": "10", - "Information": "false" - }, - { - "Code": "BDFGK2", - "Content": "Größenklassen des Bruttobedarfs", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "BEEAT1", - "Content": "Strauchbeerenart", - "Type": "sachlich", - "Values": "13", - "Information": "false" - }, - { - "Code": "BEFAT1", - "Content": "Art der Beförderung", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "BEFMT1", - "Content": "Beförderungsmittel", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "BEHRD1", - "Content": "Einleitungsbehörde", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "BEL001", - "Content": "Außergewöhnliche Belastungen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BELAT1", - "Content": "Art der außergewöhnlichen Belastungen", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "BEORT1", - "Content": "Berichtsort bzw. Geltungsbereich (leichtes Heizöl)", - "Type": "räumlich", - "Values": "17", - "Information": "false" - }, - { - "Code": "BEORT2", - "Content": "Berichtsort bzw. Geltungsbereich (schweres Heizöl)", - "Type": "räumlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "BER100", - "Content": "Wirtschaftsbereiche", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "BERAB2", - "Content": "Berufsabschluss", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "BERAB3", - "Content": "Berufsausbildung", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "BERAB4", - "Content": "Berufsausbildung", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "BEREP1", - "Content": "Berufstätigkeit des Ehepartners", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "BERLF1", - "Content": "Lehr- und Forschungsbereiche", - "Type": "sachlich", - "Values": "84", - "Information": "false" - }, - { - "Code": "BERMT1", - "Content": "Berufsgruppe der Mutter", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "BERRE1", - "Content": "Reglementierung der Berufe", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "BERST2", - "Content": "Stellung im Beruf", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "BERST3", - "Content": "Stellung im Beruf", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "BERST5", - "Content": "Stellung im Beruf", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "BERST6", - "Content": "Stellung im Beruf", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "BERST8", - "Content": "Stellung im Beruf", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "BERST9", - "Content": "Stellung im Beruf", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "BERVT1", - "Content": "Berufsgruppe des Vaters", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "BES003", - "Content": "Beschäftigte im öffentlichen Dienst", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BES007", - "Content": "Beschäftigte, Veränderungsrate zum Vorjahr", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BES008", - "Content": "Beschäftigte, Veränderungsrate z. Vorjahresquartal", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BES009", - "Content": "Beschäftigte, Veränderungsrate zum Vorquartal", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BES019", - "Content": "Beschäftigte im Aufgabenbereich Polizei", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BES020", - "Content": "Besch. im Aufg.ber. Polizei (Vollzeitäquivalente)", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BES021", - "Content": "Gesundheitspersonal", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BES022", - "Content": "Gesundheitspersonal (Vollzeitäquivalente)", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BES030", - "Content": "Abhängige Beschäftigungsverhältnisse inkl. Auszub.", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BES031", - "Content": "Abhängige Beschäftigungsverhältnisse", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BES032", - "Content": "Abhäng. Beschäftigungsverhältnisse mit Niedriglohn", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BES033", - "Content": "Anteil abh. Beschäftigungsverhältn.mit Niedriglohn", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BES100", - "Content": "Beschäftigtenindex", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BESBR1", - "Content": "Beschäftigungsbereich", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "BESBR2", - "Content": "Beschäftigungsbereich", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "BESBR3", - "Content": "Beschäftigungsbereich", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "BESG12", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "BESG13", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "BESG14", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "BESG15", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "BESG16", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "BESGK2", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "BESGK7", - "Content": "Beschäftigtengrößenklassen der Unternehmen", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "BESGN1", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "BESGN3", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "BESGN4", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "BESGR1", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "BESGR2", - "Content": "Beschäftigtengrößenklassen (bis 2018)", - "Type": "sachlich", - "Values": "4", - "Information": "true" - }, - { - "Code": "BESGR3", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "BESGR4", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "BESGR5", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "BESGR8", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "BESGR9", - "Content": "Beschäftigtengrößenklassen", - "Type": "sachlich", - "Values": "7", - "Information": "false" - }, - { - "Code": "BESTD1", - "Content": "Stand der Erledigung", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "BESTD2", - "Content": "Stand der Erledigung", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "BESUM2", - "Content": "Beschäftigungsumfang", - "Type": "sachlich", - "Values": "3", - "Information": "false" - }, - { - "Code": "BESUM3", - "Content": "Beschäftigungsumfang", - "Type": "sachlich", - "Values": "9", - "Information": "false" - }, - { - "Code": "BESUM4", - "Content": "Beschäftigungsumfang", - "Type": "sachlich", - "Values": "2", - "Information": "true" - }, - { - "Code": "BESUM5", - "Content": "Beschäftigungsumfang", - "Type": "sachlich", - "Values": "3", - "Information": "true" - }, - { - "Code": "BESUM6", - "Content": "Beschäftigungsumfang", - "Type": "sachlich", - "Values": "2", - "Information": "true" - }, - { - "Code": "BESUM7", - "Content": "Beschäftigungsumfang", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "BESVH6", - "Content": "Beschäftigungsverhältnis", - "Type": "sachlich", - "Values": "8", - "Information": "false" - }, - { - "Code": "BESVH7", - "Content": "Beschäftigungsverhältnis", - "Type": "sachlich", - "Values": "4", - "Information": "false" - }, - { - "Code": "BESVH8", - "Content": "Beschäftigungsverhältnis", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "BESVH9", - "Content": "Beschäftigungsverhältnis", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "BESZL1", - "Content": "Beschäftigtenzahl", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "BETAT1", - "Content": "Art der Mittagsbetreuung", - "Type": "sachlich", - "Values": "2", - "Information": "false" - }, - { - "Code": "BETR01", - "Content": "Betriebe", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BETTG1", - "Content": "Betreuungstage pro Woche", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "BETZT1", - "Content": "Vertraglich vereinbarte Betreuungszeit", - "Type": "sachlich", - "Values": "5", - "Information": "false" - }, - { - "Code": "BEV001", - "Content": "Lebendgeborene", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV002", - "Content": "Gestorbene", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV003", - "Content": "Eheschließungen", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV004", - "Content": "Ehescheidungen", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV005", - "Content": "Familien", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV006", - "Content": "Lebendgeborene je 1000 Frauen", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BEV007", - "Content": "Endgültige Kinderzahl (je Frau)", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BEV008", - "Content": "Einbürgerungen von Ausländern", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV010", - "Content": "Binnenwanderung", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BEV011", - "Content": "Fortzüge in das Ausland", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV012", - "Content": "Wanderungssaldo Ausland", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BEV013", - "Content": "Zuzüge", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BEV014", - "Content": "Fortzüge", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BEV015", - "Content": "Wanderungssaldo", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BEV016", - "Content": "Zuzüge aus einem anderen Bundesland", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BEV017", - "Content": "Fortzüge in ein anderes Bundesland", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BEV018", - "Content": "Wanderungssaldo Bundesländer", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BEV019", - "Content": "Alleinerziehende", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV020", - "Content": "Bevölkerung", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV021", - "Content": "Bevölkerungsdichte", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV023", - "Content": "Bevölkerung (15 bis unter 65 Jahre)", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV024", - "Content": "Bevölkerung in Gemeinschaftsunterkünften", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BEV026", - "Content": "Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush.", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV027", - "Content": "Ausländer", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV028", - "Content": "Durchschnittliche Bevölkerung", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "BEV029", - "Content": "Zuzüge aus dem Ausland", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV030", - "Content": "Schutzsuchende", - "Type": "Wert", - "Values": "-1", - "Information": "true" - }, - { - "Code": "BEV031", - "Content": "Mehrlingsgeburten", - "Type": "Wert", - "Values": "-1", - "Information": "false" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/table1/api/data/tablefile-86e7c4-23a648-POST.R b/tests/testthat/table1/api/data/tablefile-86e7c4-23a648-POST.R deleted file mode 100644 index 442ede6..0000000 --- a/tests/testthat/table1/api/data/tablefile-86e7c4-23a648-POST.R +++ /dev/null @@ -1,44 +0,0 @@ -structure(list(method = "POST", url = "/api/data/tablefile?username=ABCDEF&password=1234abcd&username=ABCDEF&password=1234abcdNA", - status_code = 200L, headers = structure(list(Date = "Mon, 24 Mar 2025 21:56:44 GMT", - Server = "Apache", `Content-Disposition` = "attachment; filename=61111-0001_1742853407559_en_flat.zip", - `Content-Length` = "392", `Content-Type` = "application/zip"), class = "httr2_headers"), - body = as.raw(c(0x50, 0x4b, 0x03, 0x04, 0x14, 0x00, 0x08, - 0x08, 0x08, 0x00, 0x17, 0xb7, 0x78, 0x5a, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, - 0x00, 0x00, 0x00, 0x36, 0x31, 0x31, 0x31, 0x31, 0x2d, 0x30, - 0x30, 0x30, 0x31, 0x5f, 0x31, 0x37, 0x34, 0x32, 0x38, 0x35, - 0x33, 0x34, 0x30, 0x37, 0x35, 0x35, 0x39, 0x5f, 0x65, 0x6e, - 0x5f, 0x66, 0x6c, 0x61, 0x74, 0x2e, 0x63, 0x73, 0x76, 0x7b, - 0xbf, 0x7b, 0x7f, 0x71, 0x49, 0x62, 0x49, 0x66, 0x71, 0x49, - 0x66, 0x72, 0x71, 0x7c, 0x72, 0x7e, 0x4a, 0xaa, 0x35, 0x12, - 0x3f, 0x27, 0x31, 0x29, 0x35, 0xc7, 0xba, 0x24, 0x33, 0x37, - 0x15, 0x22, 0x05, 0x66, 0x21, 0x04, 0xad, 0x0d, 0xe3, 0xcb, - 0x12, 0x8b, 0x32, 0x13, 0x93, 0x72, 0xa0, 0xf2, 0x48, 0x7c, - 0x88, 0x2a, 0x24, 0x81, 0xc4, 0x92, 0x92, 0xa2, 0xcc, 0xa4, - 0xd2, 0x12, 0x4c, 0xa5, 0x08, 0x19, 0x88, 0xa6, 0xb2, 0xc4, - 0x9c, 0xd2, 0x54, 0x08, 0x19, 0x5f, 0x9a, 0x97, 0x59, 0x02, - 0x65, 0xa2, 0x5a, 0x85, 0x26, 0x06, 0xd6, 0xc9, 0x65, 0x66, - 0x08, 0x04, 0xd6, 0xce, 0xf9, 0x79, 0xc5, 0xa5, 0xb9, 0xa9, - 0x45, 0x0a, 0x05, 0x45, 0x99, 0xc9, 0xa9, 0x0a, 0x99, 0x79, - 0x29, 0xa9, 0x15, 0x0a, 0x69, 0xf9, 0x45, 0x0a, 0xee, 0xa9, - 0x45, 0xb9, 0x89, 0x79, 0x95, 0xd6, 0x5e, 0x8e, 0x1e, 0x41, - 0xd6, 0x91, 0xa9, 0x89, 0x45, 0xd6, 0x46, 0x06, 0x46, 0x26, - 0xd6, 0x2e, 0x9e, 0x7e, 0xc1, 0xee, 0xd6, 0x30, 0x49, 0x17, - 0x04, 0xd3, 0xd0, 0xd0, 0x52, 0xcf, 0x18, 0xa4, 0xc6, 0xc0, - 0xd6, 0xd0, 0xc0, 0xc0, 0x3a, 0x20, 0xc8, 0xd5, 0x33, 0x18, - 0xbb, 0xf1, 0xd4, 0xb6, 0xd9, 0x48, 0xcf, 0xc8, 0x5a, 0x15, - 0x66, 0x61, 0x66, 0x1e, 0x59, 0xc6, 0x1b, 0xe3, 0xf3, 0x98, - 0x99, 0x9e, 0x39, 0xed, 0x3c, 0x86, 0xc7, 0x66, 0x53, 0x3d, - 0x4b, 0x14, 0x8f, 0x01, 0x00, 0x50, 0x4b, 0x07, 0x08, 0x07, - 0x63, 0x6d, 0x73, 0xce, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, - 0x00, 0x50, 0x4b, 0x01, 0x02, 0x14, 0x00, 0x14, 0x00, 0x08, - 0x08, 0x08, 0x00, 0x17, 0xb7, 0x78, 0x5a, 0x07, 0x63, 0x6d, - 0x73, 0xce, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x24, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x31, 0x31, - 0x31, 0x31, 0x2d, 0x30, 0x30, 0x30, 0x31, 0x5f, 0x31, 0x37, - 0x34, 0x32, 0x38, 0x35, 0x33, 0x34, 0x30, 0x37, 0x35, 0x35, - 0x39, 0x5f, 0x65, 0x6e, 0x5f, 0x66, 0x6c, 0x61, 0x74, 0x2e, - 0x63, 0x73, 0x76, 0x50, 0x4b, 0x05, 0x06, 0x00, 0x00, 0x00, - 0x00, 0x01, 0x00, 0x01, 0x00, 0x52, 0x00, 0x00, 0x00, 0x20, - 0x01, 0x00, 0x00, 0x00, 0x00)), cache = new.env(parent = emptyenv())), class = "httr2_response") diff --git a/tests/testthat/terms1/api/catalogue/terms-86e7c4-51d291-POST.json b/tests/testthat/terms1/api/catalogue/terms-86e7c4-51d291-POST.json deleted file mode 100644 index a31b832..0000000 --- a/tests/testthat/terms1/api/catalogue/terms-86e7c4-51d291-POST.json +++ /dev/null @@ -1,157 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "terms" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "selection": "forst*", - "pagelength": "500", - "language": "de", - "area": "Alle" - }, - "List": [ - { - "Content": "forst" - }, - { - "Content": "forst- und jagdwirtschaft, landschaftspflege" - }, - { - "Content": "forstbaumschulen" - }, - { - "Content": "forstbetriebe" - }, - { - "Content": "forsteinheiten" - }, - { - "Content": "forsten" - }, - { - "Content": "forstgehölze" - }, - { - "Content": "forstgehölze st" - }, - { - "Content": "forstgehölzpflanzen" - }, - { - "Content": "forstl" - }, - { - "Content": "forstmaschinen" - }, - { - "Content": "forstpflanzen" - }, - { - "Content": "forstsamen" - }, - { - "Content": "forstschlepper" - }, - { - "Content": "forststruktur" - }, - { - "Content": "forstw" - }, - { - "Content": "forstw.fahrzeuge" - }, - { - "Content": "forstwirt" - }, - { - "Content": "forstwirte" - }, - { - "Content": "forstwirtsch" - }, - { - "Content": "forstwirtschaft" - }, - { - "Content": "forstwirtschaft - experte" - }, - { - "Content": "forstwirtschaft - fachkraft" - }, - { - "Content": "forstwirtschaft - helfer" - }, - { - "Content": "forstwirtschaft - spezialist" - }, - { - "Content": "forstwirtschaft und holzeinschlag" - }, - { - "Content": "forstwirtschaftl" - }, - { - "Content": "forstwirtschaftl. erzeugnisse und dienstleistungen" - }, - { - "Content": "forstwirtschaftl.maschinen" - }, - { - "Content": "forstwirtschaftliche" - }, - { - "Content": "forstwirtschaftliche betriebsfläche" - }, - { - "Content": "forstwirtschaftliche erzeugnisse" - }, - { - "Content": "forstwirtschaftlichen" - }, - { - "Content": "forstwirtschaftlicher" - }, - { - "Content": "forstwirtschaftsabfälle" - }, - { - "Content": "forstwirtschaftsberufe" - }, - { - "Content": "forstwirtschaftserzeugnisse" - }, - { - "Content": "forstwirtschaftsfahrzeuge" - }, - { - "Content": "forstwirtschaftsfläche" - }, - { - "Content": "forstwirtschaftsmaschinen" - }, - { - "Content": "forstwirtschaftsmaschinenteile" - }, - { - "Content": "forstwissenschaft" - }, - { - "Content": "forstwissenschaft, -wirtschaft" - }, - { - "Content": "forstwissenschaft, holzwirtschaft" - }, - { - "Content": "forstwissenschaften" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/test_complete_workflows.R b/tests/testthat/test_complete_workflows.R new file mode 100644 index 0000000..b4a9f7d --- /dev/null +++ b/tests/testthat/test_complete_workflows.R @@ -0,0 +1,304 @@ +# Complete workflow tests --------------------------------------------------- + +test_that("complete data discovery and retrieval workflow", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + skip_if_not(file.exists(gen_auth_path("auth_genesis.rds")), + "No genesis credentials!") + + # 1. Find data about population + search_results <- gen_find(database = "genesis", + term = "Bevölkerung") + + expect_type(search_results, "list") + expect_s3_class(search_results$Tables, "data.frame") + expect_true(nrow(search_results$Tables) > 0) + + # 2. Get metadata about first result + if (nrow(search_results$Tables) > 0) { + + first_code <- search_results$Tables$Code[1] + + metadata <- gen_metadata(code = first_code, + database = "genesis", + category = "table") + + expect_type(metadata, "list") + + } + +}) + +#------------------------------------------------------------------------------- + +test_that("authentication and data access workflow", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + skip_if_not(file.exists(gen_auth_path("auth_genesis.rds")), + "No genesis credentials!") + + # 1. Check login + login_ok <- gen_logincheck(database = "genesis") + expect_true(login_ok) + + # 2. If logged in, retrieve data + if (login_ok) { + + catalogue <- gen_catalogue(code = "12411-0008", + database = "genesis", + category = "tables") + + expect_type(catalogue, "list") + expect_true(nrow(catalogue[["Tables"]][[1]][[1]][[1]][[1]]) > 0) + + } + +}) + +#------------------------------------------------------------------------------- + +test_that("table retrieval with filtering workflow", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + skip_if_not(file.exists(gen_auth_path("auth_genesis.rds")), + "No genesis credentials!") + + # Get table with year filter + table_data <- gen_table(name = "12411-0001", + database = "genesis", + startyear = 2020, + endyear = 2021, + language = "en") + + expect_s3_class(table_data, "data.frame") + + # Verify year filtering worked (if years are in the data) + if ("time" %in% names(table_data)) { + + years <- substr(table_data$time, 1, 4) + + expect_true(all(years == c("2021", "2020"))) + + } + +}) + +#------------------------------------------------------------------------------- + +test_that("relationship exploration workflow", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + skip_if_not(file.exists(gen_auth_path("auth_genesis.rds")), + "No genesis credentials!") + + # 1. Find statistics related to code + stats <- gen_objects2stat(code = "12411", + database = "genesis") + + expect_type(stats, "list") + + # 2. Search for variables + vars <- gen_search_vars(name = "12411", + database = "genesis") + + expect_type(vars, "list") + +}) + +# Error recovery tests ------------------------------------------------------ + +test_that("system recovers from API errors gracefully", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + skip_if_not(file.exists(gen_auth_path("auth_genesis.rds")), + "No genesis credentials!") + + # Try invalid request + result1 <- tryCatch(gen_table(name = "invalid-table", database = "genesis"), + error = function(e) NULL) + + # System should still work after error + result2 <- gen_logincheck(database = "genesis") + expect_type(result2, "logical") + +}) + +# Data consistency tests ---------------------------------------------------- + +test_that("caching works as intended", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + skip_if_not(file.exists(gen_auth_path("auth_genesis.rds")), + "No genesis credentials!") + + # Clear cache if it exists + if (getOption("restatis.use_cache", TRUE)) { + + options(restatis.use_cache = FALSE) + + } + + start_time <- Sys.time() + + result1 <- gen_catalogue(code = "12411-0001", + database = "genesis", + category = "tables") + + end_time <- Sys.time() + + first_call <- end_time - start_time + + start_time <- Sys.time() + + result2 <- gen_catalogue(code = "12411-0001", + database = "genesis", + category = "tables") + + end_time <- Sys.time() + + second_call <- end_time - start_time + + # Results should be identical + expect_true(second_call < first_call) + + # Re-enable cache + options(restatis.use_cache = TRUE) + +}) + +#------------------------------------------------------------------------------- + +test_that("detailed vs. non-detailed queries are consistent", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + skip_if_not(file.exists(gen_auth_path("auth_genesis.rds")), + "No genesis credentials!") + + basic <- gen_catalogue(code = "12411-0001", + database = "genesis", + category = "tables", + detailed = FALSE) + + detailed <- gen_catalogue(code = "12411-0001", + database = "genesis", + category = "tables", + detailed = TRUE) + + # Detailed should have more columns + expect_true(ncol(detailed[["Tables"]][[1]][[1]][[1]][[1]]) >= + ncol(basic[["Tables"]][[1]][[1]][[1]][[1]])) + + # Should have same number of rows + expect_equal(nrow(basic[["Tables"]][[1]][[1]][[1]][[1]]), + nrow(detailed[["Tables"]][[1]][[1]][[1]][[1]])) + +}) + +# Performance tests --------------------------------------------------------- + +test_that("functions handle large datasets efficiently", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + skip_if_not(file.exists(gen_auth_path("auth_genesis.rds")), + "No genesis credentials!") + + # Request potentially large catalogue + start <- Sys.time() + result <- gen_catalogue(code = "12411-0001", + database = "genesis", + category = "tables") + + elapsed <- difftime(Sys.time(), start, units = "secs") + + # Should complete in reasonable time (< 30 seconds) + expect_true(elapsed < 30) + + # Should return data + expect_type(result, "list") + +}) + +# Cross-database compatibility tests --------------------------------------- + +test_that("same function works across all databases", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + + databases <- c("genesis", "zensus", "regio") + + for (db in databases) { + + skip_if_not(file.exists(gen_auth_path(paste0("auth_", db, ".rds"))), + paste("No", db, "credentials!")) + + # gen_signs should work for all + result <- gen_signs(database = db) + expect_s3_class(result$Output, "data.frame") + expect_true(nrow(result$Output) > 0) + + # gen_logincheck should work for all + login <- gen_logincheck(database = db) + expect_type(login, "logical") + } + +}) + +#------------------------------------------------------------------------------- + +test_that("error messages are consistent across databases", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + + databases <- c("genesis", "zensus", "regio") + + for (db in databases) { + skip_if_not(file.exists(gen_auth_path(paste0("auth_", db, ".rds"))), + paste("No", db, "credentials!")) + + # Test with invalid table name + result <- tryCatch(gen_table(name = "invalid-99999", database = db), + error = function(e) e$message) + + # Should get some error message + expect_true(is.character(result)) + expect_true(nchar(result) > 0) + + } + +}) + +# Job workflow tests -------------------------------------------------------- + +test_that("job creation and retrieval workflow", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + skip_if_not(file.exists(gen_auth_path("auth_genesis.rds")), + "No genesis credentials!") + + # List jobs + jobs <- gen_list_jobs(database = "genesis", flat = TRUE) + expect_s3_class(jobs, "data.frame") + +}) diff --git a/tests/testthat/test_credential_list.R b/tests/testthat/test_credential_list.R new file mode 100644 index 0000000..eb0b978 --- /dev/null +++ b/tests/testthat/test_credential_list.R @@ -0,0 +1,21 @@ +#------------------------------------------------------------------------------- +# Tests related to API calls using 'credential_list' +#------------------------------------------------------------------------------- + +test_that("restatis functions respond correctly to ill-defined credentials_list", { + + skip_on_cran() + skip_on_ci() + + expect_error(gen_objects2var(code = "7DLAND", + database = "genesis", + credential_list = c("genesis" = "foobar")), + regex = "Parameter 'credential_list' has to be of type list if 'credential_type'.") + + expect_error(gen_objects2var(code = "7DLAND", + database = "genesis", + credential_list = list("regio" = c("password" = "foo", + "username" = "bar"))), + regex = "The following databases are not accessible to you") + +}) diff --git a/tests/testthat/test_credentials_list.R b/tests/testthat/test_credentials_list.R new file mode 100644 index 0000000..6fd9c45 --- /dev/null +++ b/tests/testthat/test_credentials_list.R @@ -0,0 +1,110 @@ +test_that("functions error correctly on erroneous credential_list parameter values", { + + #----------------------------------------------------------------------------- + + expect_error( + + result <- gen_catalogue(code = "12*", + database = "genesis", + verbose = FALSE, + credential_list = list(regio = c(username = "bar", password = "foo"))), + regexp = "Not all databases you defined in 'database' are contained in your 'credential_list'." + + ) + + expect_error( + + result <- gen_catalogue(code = "12*", + database = c("genesis", "zensus"), + category = "tables", + verbose = FALSE, + credential_list = list(regio = c(username = "bar", password = "foo"), + nrw = c(username = "foo", password = "bar"), + bayern = c(username = "foo", password = "bar"))), + regexp = "Not all databases you defined in 'database' are contained in your 'credential_list'" + + ) + + expect_error( + + result <- gen_catalogue(code = "12*", + database = c("genesis", "zensus"), + category = "tables", + verbose = FALSE, + credential_list = list(genesis = c(username = "bar", password = "foo"), + zensus = c(username = "foo", password = "bar"))), + regexp = "No json-csv file detected." + + ) + + expect_error( + + result <- gen_catalogue(code = "12*", + database = c("genesis", "regio"), + verbose = FALSE, + credential_list = list(regio = c(username = "bar", username = "foo"), + genesis = c(username = "foo", username = "bar"))), + regexp = "Every database that is requested in the parameter 'database' needs its own list entry including the entries" + + ) + + #----------------------------------------------------------------------------- + + expect_error( + + result <- gen_catalogue(code = "12*", + database = c("genesis", "zensus"), + category = "tables", + verbose = FALSE, + credential_list = list(genesis = c(username = "foo", password = "bar"))), + regexp = "You have defined more databases in 'database' than you have in your 'credential_list'." + + ) + +}) + +#------------------------------------------------------------------------------- + +test_that("functions messages correctly on special credential_list parameter values", { + + skip_on_cran() + skip_on_ci() + + #----------------------------------------------------------------------------- + + expect_message( + + expect_error( + + gen_catalogue(code = "12*", + database = "genesis", + credential_list = list(genesis = c(username = "bar", password = "foo"))), + regexp = "No json-csv file detected" + + ), + + regexp = "can be a potential security threat" + + ) + + #----------------------------------------------------------------------------- + + expect_message( + + expect_error( + + result <- gen_catalogue(code = "12*", + database = c("genesis", "zensus"), + category = "tables", + error.ignore = TRUE, + verbose = FALSE, + credential_list = list(genesis = c(username = "foo", password = "bar"))), + regexp = "No json-csv file detected." + + ), + + regexp = "The function continues with those available" + + ) + +}) diff --git a/tests/testthat/test_gen_auth.R b/tests/testthat/test_gen_auth.R new file mode 100644 index 0000000..badfd6c --- /dev/null +++ b/tests/testthat/test_gen_auth.R @@ -0,0 +1,73 @@ +# Test gen_auth_path -------------------------------------------------------- + +test_that("gen_auth_path returns correct file path", { + + skip_on_ci() + skip_on_cran() + + path <- gen_auth_path() + expect_true(grepl("restatis", path)) + expect_true(dir.exists(dirname(path)) || !file.exists(path)) + +}) + +test_that("gen_auth_path handles additional arguments", { + + skip_on_ci() + skip_on_cran() + + path <- gen_auth_path("test.rds") + expect_true(grepl("test.rds$", path)) + +}) + +# Test gen_auth_save -------------------------------------------------------- + +test_that("gen_auth_save validates database parameter", { + + expect_error(gen_auth_save(database = "invalid"), + "database") + +}) + +# Test gen_auth_get --------------------------------------------------------- +test_that("gen_auth_get returns credentials when they exist", { + + skip_on_ci() + skip_on_cran() + + # This requires saved credentials to test properly + skip_if_not(file.exists(gen_auth_path("auth_genesis.rds")), + "No genesis credentials saved!") + + creds <- gen_auth_get(database = "genesis") + expect_type(creds, "list") + expect_true(all(c("username", "password") %in% names(creds) | + "token" %in% names(creds))) + +}) + +test_that("gen_auth_get validates database parameter", { + + expect_error(gen_auth_get(database = "invalid"), + "database") + +}) + +test_that("gen_auth_get accepts all valid databases", { + + skip_on_ci() + skip_on_cran() + + valid_dbs <- c("genesis", "zensus", "regio") + + for (db in valid_dbs) { + + skip_if_not(file.exists(gen_auth_path(paste0("auth_", db, ".rds"))), + paste("No", db, "credentials!")) + + expect_silent(gen_auth_get(database = db)) + + } + +}) diff --git a/tests/testthat/values1/api/catalogue/values2variable-86e7c4-9e9b03-POST.json b/tests/testthat/values1/api/catalogue/values2variable-86e7c4-9e9b03-POST.json deleted file mode 100644 index 4c3a02d..0000000 --- a/tests/testthat/values1/api/catalogue/values2variable-86e7c4-9e9b03-POST.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "values2variable" - }, - "Status": { - "Code": 103, - "Content": "No objects found. (At least one parameter contains invalid values. It was changed to perform the service.: sortcriterion)", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "61111", - "selection": "", - "area": "all", - "searchcriterion": "code", - "sortcriterion": "code", - "pagelength": "500", - "language": "en" - }, - "List": null, - "Copyright": "© Federal Statistical Office, Wiesbaden 2025" -} diff --git a/tests/testthat/values2/api/catalogue/values2variable-86e7c4-12a858-POST.json b/tests/testthat/values2/api/catalogue/values2variable-86e7c4-12a858-POST.json deleted file mode 100644 index 62a3673..0000000 --- a/tests/testthat/values2/api/catalogue/values2variable-86e7c4-12a858-POST.json +++ /dev/null @@ -1,121 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "values2variable" - }, - "Status": { - "Code": 22, - "Content": "erfolgreich (Mindestens ein Parameter enthält ungültige Werte. Er wurde angepasst, um den Service starten zu können.: sortcriterion)", - "Type": "Warnung" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "DLAND", - "selection": "", - "area": "Alle", - "searchcriterion": "Code", - "sortcriterion": "Code", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "08", - "Content": "Baden-Württemberg", - "Variables": "9", - "Information": "false" - }, - { - "Code": "09", - "Content": "Bayern", - "Variables": "9", - "Information": "false" - }, - { - "Code": "11", - "Content": "Berlin", - "Variables": "11", - "Information": "false" - }, - { - "Code": "12", - "Content": "Brandenburg", - "Variables": "9", - "Information": "false" - }, - { - "Code": "04", - "Content": "Bremen", - "Variables": "12", - "Information": "false" - }, - { - "Code": "02", - "Content": "Hamburg", - "Variables": "12", - "Information": "false" - }, - { - "Code": "06", - "Content": "Hessen", - "Variables": "9", - "Information": "false" - }, - { - "Code": "13", - "Content": "Mecklenburg-Vorpommern", - "Variables": "12", - "Information": "false" - }, - { - "Code": "03", - "Content": "Niedersachsen", - "Variables": "10", - "Information": "false" - }, - { - "Code": "05", - "Content": "Nordrhein-Westfalen", - "Variables": "9", - "Information": "false" - }, - { - "Code": "07", - "Content": "Rheinland-Pfalz", - "Variables": "9", - "Information": "false" - }, - { - "Code": "10", - "Content": "Saarland", - "Variables": "11", - "Information": "false" - }, - { - "Code": "14", - "Content": "Sachsen", - "Variables": "9", - "Information": "false" - }, - { - "Code": "15", - "Content": "Sachsen-Anhalt", - "Variables": "11", - "Information": "false" - }, - { - "Code": "01", - "Content": "Schleswig-Holstein", - "Variables": "12", - "Information": "false" - }, - { - "Code": "16", - "Content": "Thüringen", - "Variables": "11", - "Information": "false" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/variables1/api/catalogue/variables2statistic-86e7c4-b68131-POST.json b/tests/testthat/variables1/api/catalogue/variables2statistic-86e7c4-b68131-POST.json deleted file mode 100644 index 2e98038..0000000 --- a/tests/testthat/variables1/api/catalogue/variables2statistic-86e7c4-b68131-POST.json +++ /dev/null @@ -1,117 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "variables2statistic" - }, - "Status": { - "Code": 22, - "Content": "erfolgreich (Mindestens ein Parameter enthält ungültige Werte. Er wurde angepasst, um den Service starten zu können.: sortcriterion)", - "Type": "Warnung" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "61111", - "selection": "", - "area": "Alle", - "searchcriterion": "Code", - "sortcriterion": "Code", - "type": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "CC13A2", - "Content": "Verwendungszwecke des Individualkonsums, 2-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13A3", - "Content": "Verwendungszwecke des Individualkonsums, 3-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13A4", - "Content": "Verwendungszwecke des Individualkonsums, 4-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13A5", - "Content": "Verwendungszwecke des Individualkonsums, 5-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13B1", - "Content": "Verwendungszw.d.Individualkonsums,Sonderpositionen", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13Z1", - "Content": "Verwendungszwecke des Individualkonsums,10-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "DINSG", - "Content": "Deutschland insgesamt", - "Type": "räumlich insgesamt", - "Values": "-1", - "Information": "false" - }, - { - "Code": "DLAND", - "Content": "Bundesländer", - "Type": "räumlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "JAHR", - "Content": "Jahr", - "Type": "zeitidentifizierend", - "Values": "-1", - "Information": "false" - }, - { - "Code": "MONAT", - "Content": "Monate", - "Type": "zeitlich", - "Values": "-1", - "Information": "false" - }, - { - "Code": "PRE034", - "Content": "Index der Nettokaltmieten", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "PRE999", - "Content": "Gewichtung", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "PREIS1", - "Content": "Verbraucherpreisindex", - "Type": "Wert", - "Values": "-1", - "Information": "true" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/variables3/api/catalogue/variables2statistic-86e7c4-e5ec52-POST.json b/tests/testthat/variables3/api/catalogue/variables2statistic-86e7c4-e5ec52-POST.json deleted file mode 100644 index 2e98038..0000000 --- a/tests/testthat/variables3/api/catalogue/variables2statistic-86e7c4-e5ec52-POST.json +++ /dev/null @@ -1,117 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "variables2statistic" - }, - "Status": { - "Code": 22, - "Content": "erfolgreich (Mindestens ein Parameter enthält ungültige Werte. Er wurde angepasst, um den Service starten zu können.: sortcriterion)", - "Type": "Warnung" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "61111", - "selection": "", - "area": "Alle", - "searchcriterion": "Code", - "sortcriterion": "Code", - "type": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "CC13A2", - "Content": "Verwendungszwecke des Individualkonsums, 2-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13A3", - "Content": "Verwendungszwecke des Individualkonsums, 3-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13A4", - "Content": "Verwendungszwecke des Individualkonsums, 4-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13A5", - "Content": "Verwendungszwecke des Individualkonsums, 5-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13B1", - "Content": "Verwendungszw.d.Individualkonsums,Sonderpositionen", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13Z1", - "Content": "Verwendungszwecke des Individualkonsums,10-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "DINSG", - "Content": "Deutschland insgesamt", - "Type": "räumlich insgesamt", - "Values": "-1", - "Information": "false" - }, - { - "Code": "DLAND", - "Content": "Bundesländer", - "Type": "räumlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "JAHR", - "Content": "Jahr", - "Type": "zeitidentifizierend", - "Values": "-1", - "Information": "false" - }, - { - "Code": "MONAT", - "Content": "Monate", - "Type": "zeitlich", - "Values": "-1", - "Information": "false" - }, - { - "Code": "PRE034", - "Content": "Index der Nettokaltmieten", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "PRE999", - "Content": "Gewichtung", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "PREIS1", - "Content": "Verbraucherpreisindex", - "Type": "Wert", - "Values": "-1", - "Information": "true" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/xy_statistic1/api/catalogue/cubes2statistic-86e7c4-c0c2a9-POST.json b/tests/testthat/xy_statistic1/api/catalogue/cubes2statistic-86e7c4-c0c2a9-POST.json deleted file mode 100644 index 32802b7..0000000 --- a/tests/testthat/xy_statistic1/api/catalogue/cubes2statistic-86e7c4-c0c2a9-POST.json +++ /dev/null @@ -1,199 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "cubes2statistic" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "61111", - "selection": "", - "area": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "61111B5001", - "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 2-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020", - "LatestUpdate": "18.04.2024 13:34:49h", - "Information": "false" - }, - { - "Code": "61111B5002", - "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 3-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020", - "LatestUpdate": "18.04.2024 13:35:14h", - "Information": "false" - }, - { - "Code": "61111B5003", - "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 4-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020", - "LatestUpdate": "18.04.2024 13:35:42h", - "Information": "false" - }, - { - "Code": "61111B5004", - "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 5-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020", - "LatestUpdate": "18.04.2024 13:36:07h", - "Information": "false" - }, - { - "Code": "61111BJ001", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Jahr", - "State": "vollständig mit Werten", - "Time": "1991-2024", - "LatestUpdate": "16.01.2025 08:00:42h", - "Information": "false" - }, - { - "Code": "61111BJ002", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 2-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "1991-2024", - "LatestUpdate": "16.01.2025 08:01:37h", - "Information": "false" - }, - { - "Code": "61111BJ003", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 3-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "1991-2024", - "LatestUpdate": "16.01.2025 08:01:43h", - "Information": "false" - }, - { - "Code": "61111BJ004", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 4-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "1991-2024", - "LatestUpdate": "16.01.2025 08:02:02h", - "Information": "false" - }, - { - "Code": "61111BJ005", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 5-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "1991-2024", - "LatestUpdate": "16.01.2025 08:01:12h", - "Information": "false" - }, - { - "Code": "61111BJ006", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszw.d.Individualkonsums,Sonderpositionen, Jahr", - "State": "vollständig mit Werten", - "Time": "1991-2024", - "LatestUpdate": "16.01.2025 08:01:48h", - "Information": "false" - }, - { - "Code": "61111BJ007", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums,10-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2020-2024", - "LatestUpdate": "16.01.2025 08:01:55h", - "Information": "false" - }, - { - "Code": "61111BM001", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1991-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:46h", - "Information": "false" - }, - { - "Code": "61111BM002", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 2-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1991-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:39h", - "Information": "false" - }, - { - "Code": "61111BM003", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 3-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1991-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:56h", - "Information": "false" - }, - { - "Code": "61111BM004", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 4-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1991-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:50h", - "Information": "false" - }, - { - "Code": "61111BM005", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 5-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1991-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:28h", - "Information": "false" - }, - { - "Code": "61111BM006", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszw.d.Individualkonsums,Sonderpositionen, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1991-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:36h", - "Information": "false" - }, - { - "Code": "61111BM007", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums,10-Steller, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2020-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:32h", - "Information": "false" - }, - { - "Code": "61111LJ001", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Bundesländer, Jahr", - "State": "vollständig mit Werten", - "Time": "1995-2024", - "LatestUpdate": "16.01.2025 08:01:51h", - "Information": "false" - }, - { - "Code": "61111LJ100", - "Content": "Verbraucherpreisindex für Deutschland, Index der Nettokaltmieten, Bundesländer, Jahr", - "State": "vollständig mit Werten", - "Time": "2005-2024", - "LatestUpdate": "16.01.2025 08:03:40h", - "Information": "false" - }, - { - "Code": "61111LM001", - "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Bundesländer, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 1995-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:43h", - "Information": "false" - }, - { - "Code": "61111LM100", - "Content": "Verbraucherpreisindex für Deutschland, Index der Nettokaltmieten, Bundesländer, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2005-Februar 2025", - "LatestUpdate": "13.03.2025 18:00:53h", - "Information": "false" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/xy_statistic1/api/catalogue/tables2statistic-86e7c4-c0c2a9-POST.json b/tests/testthat/xy_statistic1/api/catalogue/tables2statistic-86e7c4-c0c2a9-POST.json deleted file mode 100644 index 282fd56..0000000 --- a/tests/testthat/xy_statistic1/api/catalogue/tables2statistic-86e7c4-c0c2a9-POST.json +++ /dev/null @@ -1,78 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "tables2statistic" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "61111", - "selection": "", - "area": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "61111-0001", - "Content": "Verbraucherpreisindex: Deutschland, Jahre", - "Time": "1991 - 2024" - }, - { - "Code": "61111-0002", - "Content": "Verbraucherpreisindex: Deutschland, Monate", - "Time": "Januar 1991 - Februar 2025" - }, - { - "Code": "61111-0003", - "Content": "Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", - "Time": "1991 - 2024" - }, - { - "Code": "61111-0004", - "Content": "Verbraucherpreisindex: Deutschland, Monate,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", - "Time": "Januar 1991 - Februar 2025" - }, - { - "Code": "61111-0005", - "Content": "Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-/3-/4-/5-/10-Steller/Sonderpositionen)", - "Time": "1991 - 2024" - }, - { - "Code": "61111-0006", - "Content": "Verbraucherpreisindex: Deutschland, Monate,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-/3-/4-/5-/10-Steller/Sonderpositionen)", - "Time": "Januar 1991 - Februar 2025" - }, - { - "Code": "61111-0007", - "Content": "Wägungsschema des Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", - "Time": "2020 - 2020" - }, - { - "Code": "61111-0010", - "Content": "Verbraucherpreisindex: Bundesländer, Jahre", - "Time": "1995 - 2024" - }, - { - "Code": "61111-0011", - "Content": "Verbraucherpreisindex: Bundesländer, Monate", - "Time": "Januar 1995 - Februar 2025" - }, - { - "Code": "61111-0020", - "Content": "Index der Nettokaltmieten: Bundesländer, Jahre", - "Time": "2005 - 2024" - }, - { - "Code": "61111-0021", - "Content": "Index der Nettokaltmieten: Bundesländer, Monate", - "Time": "Januar 2005 - Februar 2025" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/xy_statistic1/api/catalogue/variables2statistic-86e7c4-c0c2a9-POST.json b/tests/testthat/xy_statistic1/api/catalogue/variables2statistic-86e7c4-c0c2a9-POST.json deleted file mode 100644 index 34d02b3..0000000 --- a/tests/testthat/xy_statistic1/api/catalogue/variables2statistic-86e7c4-c0c2a9-POST.json +++ /dev/null @@ -1,117 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "variables2statistic" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "61111", - "selection": "", - "area": "Alle", - "searchcriterion": "Code", - "sortcriterion": "Code", - "type": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "CC13A2", - "Content": "Verwendungszwecke des Individualkonsums, 2-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13A3", - "Content": "Verwendungszwecke des Individualkonsums, 3-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13A4", - "Content": "Verwendungszwecke des Individualkonsums, 4-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13A5", - "Content": "Verwendungszwecke des Individualkonsums, 5-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13B1", - "Content": "Verwendungszw.d.Individualkonsums,Sonderpositionen", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "CC13Z1", - "Content": "Verwendungszwecke des Individualkonsums,10-Steller", - "Type": "sachlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "DINSG", - "Content": "Deutschland insgesamt", - "Type": "räumlich insgesamt", - "Values": "-1", - "Information": "false" - }, - { - "Code": "DLAND", - "Content": "Bundesländer", - "Type": "räumlich", - "Values": "-1", - "Information": "true" - }, - { - "Code": "JAHR", - "Content": "Jahr", - "Type": "zeitidentifizierend", - "Values": "-1", - "Information": "false" - }, - { - "Code": "MONAT", - "Content": "Monate", - "Type": "zeitlich", - "Values": "-1", - "Information": "false" - }, - { - "Code": "PRE034", - "Content": "Index der Nettokaltmieten", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "PRE999", - "Content": "Gewichtung", - "Type": "Wert", - "Values": "-1", - "Information": "false" - }, - { - "Code": "PREIS1", - "Content": "Verbraucherpreisindex", - "Type": "Wert", - "Values": "-1", - "Information": "true" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/xy_statistic2/api/catalogue/tables2statistic-86e7c4-c0c2a9-POST.json b/tests/testthat/xy_statistic2/api/catalogue/tables2statistic-86e7c4-c0c2a9-POST.json deleted file mode 100644 index 282fd56..0000000 --- a/tests/testthat/xy_statistic2/api/catalogue/tables2statistic-86e7c4-c0c2a9-POST.json +++ /dev/null @@ -1,78 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "tables2statistic" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "61111", - "selection": "", - "area": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "61111-0001", - "Content": "Verbraucherpreisindex: Deutschland, Jahre", - "Time": "1991 - 2024" - }, - { - "Code": "61111-0002", - "Content": "Verbraucherpreisindex: Deutschland, Monate", - "Time": "Januar 1991 - Februar 2025" - }, - { - "Code": "61111-0003", - "Content": "Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", - "Time": "1991 - 2024" - }, - { - "Code": "61111-0004", - "Content": "Verbraucherpreisindex: Deutschland, Monate,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", - "Time": "Januar 1991 - Februar 2025" - }, - { - "Code": "61111-0005", - "Content": "Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-/3-/4-/5-/10-Steller/Sonderpositionen)", - "Time": "1991 - 2024" - }, - { - "Code": "61111-0006", - "Content": "Verbraucherpreisindex: Deutschland, Monate,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-/3-/4-/5-/10-Steller/Sonderpositionen)", - "Time": "Januar 1991 - Februar 2025" - }, - { - "Code": "61111-0007", - "Content": "Wägungsschema des Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", - "Time": "2020 - 2020" - }, - { - "Code": "61111-0010", - "Content": "Verbraucherpreisindex: Bundesländer, Jahre", - "Time": "1995 - 2024" - }, - { - "Code": "61111-0011", - "Content": "Verbraucherpreisindex: Bundesländer, Monate", - "Time": "Januar 1995 - Februar 2025" - }, - { - "Code": "61111-0020", - "Content": "Index der Nettokaltmieten: Bundesländer, Jahre", - "Time": "2005 - 2024" - }, - { - "Code": "61111-0021", - "Content": "Index der Nettokaltmieten: Bundesländer, Monate", - "Time": "Januar 2005 - Februar 2025" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/xy_statistic3/api/catalogue/tables2statistic-86e7c4-c0c2a9-POST.json b/tests/testthat/xy_statistic3/api/catalogue/tables2statistic-86e7c4-c0c2a9-POST.json deleted file mode 100644 index 282fd56..0000000 --- a/tests/testthat/xy_statistic3/api/catalogue/tables2statistic-86e7c4-c0c2a9-POST.json +++ /dev/null @@ -1,78 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "tables2statistic" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "61111", - "selection": "", - "area": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "61111-0001", - "Content": "Verbraucherpreisindex: Deutschland, Jahre", - "Time": "1991 - 2024" - }, - { - "Code": "61111-0002", - "Content": "Verbraucherpreisindex: Deutschland, Monate", - "Time": "Januar 1991 - Februar 2025" - }, - { - "Code": "61111-0003", - "Content": "Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", - "Time": "1991 - 2024" - }, - { - "Code": "61111-0004", - "Content": "Verbraucherpreisindex: Deutschland, Monate,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", - "Time": "Januar 1991 - Februar 2025" - }, - { - "Code": "61111-0005", - "Content": "Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-/3-/4-/5-/10-Steller/Sonderpositionen)", - "Time": "1991 - 2024" - }, - { - "Code": "61111-0006", - "Content": "Verbraucherpreisindex: Deutschland, Monate,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-/3-/4-/5-/10-Steller/Sonderpositionen)", - "Time": "Januar 1991 - Februar 2025" - }, - { - "Code": "61111-0007", - "Content": "Wägungsschema des Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", - "Time": "2020 - 2020" - }, - { - "Code": "61111-0010", - "Content": "Verbraucherpreisindex: Bundesländer, Jahre", - "Time": "1995 - 2024" - }, - { - "Code": "61111-0011", - "Content": "Verbraucherpreisindex: Bundesländer, Monate", - "Time": "Januar 1995 - Februar 2025" - }, - { - "Code": "61111-0020", - "Content": "Index der Nettokaltmieten: Bundesländer, Jahre", - "Time": "2005 - 2024" - }, - { - "Code": "61111-0021", - "Content": "Index der Nettokaltmieten: Bundesländer, Monate", - "Time": "Januar 2005 - Februar 2025" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/xy_variable1/api/catalogue/statistics2variable-86e7c4-1f2606-POST.json b/tests/testthat/xy_variable1/api/catalogue/statistics2variable-86e7c4-1f2606-POST.json deleted file mode 100644 index 49c7027..0000000 --- a/tests/testthat/xy_variable1/api/catalogue/statistics2variable-86e7c4-1f2606-POST.json +++ /dev/null @@ -1,1117 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "statistics2variable" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "DLAND", - "selection": "", - "area": "Alle", - "searchcriterion": "Code", - "sortcriterion": "Code", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "11111", - "Content": "Feststellung des Gebietsstands", - "Cubes": "3", - "Information": "true" - }, - { - "Code": "12211", - "Content": "Mikrozensus", - "Cubes": "523", - "Information": "true" - }, - { - "Code": "12231", - "Content": "IKT-Nutzung in privaten Haushalten", - "Cubes": "44", - "Information": "true" - }, - { - "Code": "12251", - "Content": "Arbeitsmarktstatistik des Mikrozensus", - "Cubes": "60", - "Information": "false" - }, - { - "Code": "12411", - "Content": "Fortschreibung des Bevölkerungsstandes", - "Cubes": "28", - "Information": "true" - }, - { - "Code": "12421", - "Content": "Bevölkerungsvorausberechnungen", - "Cubes": "16", - "Information": "true" - }, - { - "Code": "12521", - "Content": "Ausländerstatistik", - "Cubes": "98", - "Information": "true" - }, - { - "Code": "12531", - "Content": "Statistik über Schutzsuchende", - "Cubes": "78", - "Information": "true" - }, - { - "Code": "12611", - "Content": "Statistik der Eheschließungen", - "Cubes": "7", - "Information": "true" - }, - { - "Code": "12612", - "Content": "Statistik der Geburten", - "Cubes": "37", - "Information": "true" - }, - { - "Code": "12613", - "Content": "Statistik der Sterbefälle", - "Cubes": "17", - "Information": "true" - }, - { - "Code": "12621", - "Content": "Sterbetafeln", - "Cubes": "3", - "Information": "true" - }, - { - "Code": "12631", - "Content": "Statistik rechtskräftiger Urteile in Ehesachen", - "Cubes": "6", - "Information": "true" - }, - { - "Code": "12651", - "Content": "Begründung von Lebenspartnerschaften", - "Cubes": "3", - "Information": "true" - }, - { - "Code": "12661", - "Content": "Aufhebung von Lebenspartnerschaften", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "12711", - "Content": "Wanderungsstatistik", - "Cubes": "65", - "Information": "true" - }, - { - "Code": "13111", - "Content": "Statistik d. sozialversicherungspfl. Beschäftigten", - "Cubes": "13", - "Information": "true" - }, - { - "Code": "13211", - "Content": "Arbeitsmarktstatistik der Bundesagentur für Arbeit", - "Cubes": "16", - "Information": "true" - }, - { - "Code": "13311", - "Content": "Länderberechnung Erwerbstätige", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "14111", - "Content": "Allgemeine Bundestagswahlstatistik", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "14121", - "Content": "Repräsentative Bundestagswahlstatistik", - "Cubes": "10", - "Information": "true" - }, - { - "Code": "14211", - "Content": "Allgemeine Europawahlstatistik", - "Cubes": "2", - "Information": "true" - }, - { - "Code": "14221", - "Content": "Repräsentative Europawahlstatistik", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "21111", - "Content": "Statistik der allgemeinbildenden Schulen", - "Cubes": "96", - "Information": "true" - }, - { - "Code": "21121", - "Content": "Statistik der beruflichen Schulen", - "Cubes": "36", - "Information": "true" - }, - { - "Code": "21211", - "Content": "Berufsbildungsstatistik", - "Cubes": "48", - "Information": "true" - }, - { - "Code": "21241", - "Content": "Pflegeausbildungsstatistik", - "Cubes": "18", - "Information": "true" - }, - { - "Code": "21311", - "Content": "Statistik der Studenten", - "Cubes": "48", - "Information": "true" - }, - { - "Code": "21321", - "Content": "Statistik der Prüfungen", - "Cubes": "5", - "Information": "true" - }, - { - "Code": "21351", - "Content": "Statistik der Habilitationen", - "Cubes": "6", - "Information": "true" - }, - { - "Code": "21352", - "Content": "Statistik der Promovierenden", - "Cubes": "28", - "Information": "true" - }, - { - "Code": "21353", - "Content": "Statistik der Hochschulräte", - "Cubes": "8", - "Information": "true" - }, - { - "Code": "21354", - "Content": "Statistik der Berufsakademien", - "Cubes": "10", - "Information": "true" - }, - { - "Code": "21371", - "Content": "Hochschulfinanzstatistik", - "Cubes": "8", - "Information": "true" - }, - { - "Code": "21381", - "Content": "Hochschulstatistische Kennzahlen", - "Cubes": "11", - "Information": "false" - }, - { - "Code": "21411", - "Content": "Statistik der Bundesausbildungsförderung (BAföG)", - "Cubes": "51", - "Information": "true" - }, - { - "Code": "21421", - "Content": "Statistik der Aufstiegsfortbildungsförderung", - "Cubes": "30", - "Information": "true" - }, - { - "Code": "21431", - "Content": "Förderung nach dem Stipendienprogramm-Gesetz", - "Cubes": "37", - "Information": "true" - }, - { - "Code": "21611", - "Content": "Kulturstatistik", - "Cubes": "24", - "Information": "true" - }, - { - "Code": "21621", - "Content": "Berichterstattung über öffentliche Kulturausgaben", - "Cubes": "6", - "Information": "true" - }, - { - "Code": "21711", - "Content": "Bildungsberichterstattung für nationale Zwecke", - "Cubes": "13", - "Information": "false" - }, - { - "Code": "21821", - "Content": "Berichterstattung über Forschung und Entwicklung", - "Cubes": "5", - "Information": "true" - }, - { - "Code": "22111", - "Content": "Statistik d. Ausgaben u. Einnahmen der Sozialhilfe", - "Cubes": "36", - "Information": "true" - }, - { - "Code": "22121", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt", - "Cubes": "26", - "Information": "true" - }, - { - "Code": "22131", - "Content": "Statistik d. Empfänger v. Leist.(5.-9.Kap.SGB XII)", - "Cubes": "20", - "Information": "true" - }, - { - "Code": "22151", - "Content": "Grundsicherung im Alter und bei Erwerbsminderung", - "Cubes": "98", - "Information": "true" - }, - { - "Code": "22161", - "Content": "Statistik der Empf. v.Eingliederungshilfe (SGB IX)", - "Cubes": "24", - "Information": "true" - }, - { - "Code": "22162", - "Content": "Stat.d.Ausg.u.Einn.d.Eingliederungshilfe (SGB IX)", - "Cubes": "3", - "Information": "true" - }, - { - "Code": "22211", - "Content": "Ausgaben und Einnahmen für Asylbewerberleistungen", - "Cubes": "12", - "Information": "true" - }, - { - "Code": "22221", - "Content": "Statistik der Empfänger von Asylbewerberleistungen", - "Cubes": "91", - "Information": "true" - }, - { - "Code": "22231", - "Content": "Stat.d. Empfänger von besonderen Asylbewerberlstg.", - "Cubes": "6", - "Information": "true" - }, - { - "Code": "22311", - "Content": "Wohngeld zum 31.12.", - "Cubes": "23", - "Information": "true" - }, - { - "Code": "22411", - "Content": "Statistik über ambulante Pflegeeinrichtungen", - "Cubes": "22", - "Information": "true" - }, - { - "Code": "22412", - "Content": "Statistik über stationäre Pflegeeinrichtungen", - "Cubes": "24", - "Information": "true" - }, - { - "Code": "22421", - "Content": "Statistik über d. Empfänger v.Pflegegeldleistungen", - "Cubes": "20", - "Information": "true" - }, - { - "Code": "22517", - "Content": "Statistik der erzieherischen Hilfen", - "Cubes": "12", - "Information": "true" - }, - { - "Code": "22518", - "Content": "Stat. ü. d. Schutzauftrag bei Kindeswohlgefährdung", - "Cubes": "26", - "Information": "true" - }, - { - "Code": "22521", - "Content": "Statistik der Adoptionen", - "Cubes": "36", - "Information": "true" - }, - { - "Code": "22522", - "Content": "Statistik der Pflegeerlaubnis, Vormundschaften etc", - "Cubes": "13", - "Information": "true" - }, - { - "Code": "22523", - "Content": "Statistik der vorläufigen Schutzmaßnahmen", - "Cubes": "31", - "Information": "true" - }, - { - "Code": "22541", - "Content": "Kinder und tätige Personen in Tageseinrichtungen", - "Cubes": "67", - "Information": "true" - }, - { - "Code": "22542", - "Content": "Statistik der Träger der Jugendhilfe", - "Cubes": "29", - "Information": "true" - }, - { - "Code": "22543", - "Content": "Kinder und tätige Personen in Kindertagespflege", - "Cubes": "29", - "Information": "true" - }, - { - "Code": "22551", - "Content": "Ausgaben und Einnahmen der Kinder- und Jugendhilfe", - "Cubes": "20", - "Information": "true" - }, - { - "Code": "22922", - "Content": "Statistik zum Elterngeld", - "Cubes": "98", - "Information": "true" - }, - { - "Code": "22923", - "Content": "Statistik zum Betreuungsgeld", - "Cubes": "3", - "Information": "true" - }, - { - "Code": "22971", - "Content": "Statistik untergebrachter wohnungsloser Personen", - "Cubes": "107", - "Information": "true" - }, - { - "Code": "23131", - "Content": "Diagnosen der Krankenhauspatienten", - "Cubes": "70", - "Information": "true" - }, - { - "Code": "23141", - "Content": "Fallpauschalenbezogene Krankenhausstatistik (DRG)", - "Cubes": "88", - "Information": "true" - }, - { - "Code": "23311", - "Content": "Statistik der Schwangerschaftsabbrüche", - "Cubes": "12", - "Information": "true" - }, - { - "Code": "24111", - "Content": "Statistik der Zahl der Gerichte", - "Cubes": "1", - "Information": "true" - }, - { - "Code": "24211", - "Content": "Statistik bei den Staats- und Amtsanwaltschaften", - "Cubes": "6", - "Information": "true" - }, - { - "Code": "24221", - "Content": "Statistik über Straf- und Bußgeldverfahren", - "Cubes": "6", - "Information": "true" - }, - { - "Code": "24231", - "Content": "Statistik über Zivilsachen", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "24241", - "Content": "Statistik über Familiensachen", - "Cubes": "6", - "Information": "true" - }, - { - "Code": "24251", - "Content": "Statistik in der Verwaltungsgerichtsbarkeit", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "24261", - "Content": "Statistik in der Finanzgerichtsbarkeit", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "24271", - "Content": "Statistik in der Sozialgerichtsbarkeit", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "24281", - "Content": "Statistik in der Arbeitsgerichtsbarkeit", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "24321", - "Content": "Strafvollzugsstatistik", - "Cubes": "3", - "Information": "true" - }, - { - "Code": "31111", - "Content": "Statistik der Baugenehmigungen", - "Cubes": "29", - "Information": "true" - }, - { - "Code": "31121", - "Content": "Statistik der Baufertigstellungen", - "Cubes": "22", - "Information": "true" - }, - { - "Code": "31131", - "Content": "Statistik des Bauüberhangs", - "Cubes": "8", - "Information": "true" - }, - { - "Code": "31141", - "Content": "Statistik des Bauabgangs", - "Cubes": "8", - "Information": "true" - }, - { - "Code": "31231", - "Content": "Fortschreibung Wohngebäude- und Wohnungsbestand", - "Cubes": "25", - "Information": "true" - }, - { - "Code": "32111", - "Content": "Erhebung der Abfallentsorgung", - "Cubes": "8", - "Information": "true" - }, - { - "Code": "32121", - "Content": "Erhebung der öffentlich-rechtl. Abfallentsorgung", - "Cubes": "5", - "Information": "true" - }, - { - "Code": "32131", - "Content": "Erh. d. Einsammlung v. Transport- u.Umverpackungen", - "Cubes": "6", - "Information": "true" - }, - { - "Code": "32136", - "Content": "Erhebung über zurückgenommene Verkaufsverpackungen", - "Cubes": "10", - "Information": "true" - }, - { - "Code": "32137", - "Content": "Erhebung gewerblich eingesammelter Verpackungen", - "Cubes": "10", - "Information": "true" - }, - { - "Code": "32141", - "Content": "Aufbereitung,Verwertung v. Bau- u. Abbruchabfällen", - "Cubes": "7", - "Information": "true" - }, - { - "Code": "32151", - "Content": "Erhebung der gefährlichen Abfälle", - "Cubes": "12", - "Information": "true" - }, - { - "Code": "32161", - "Content": "Erhebung über die Abfallerzeugung", - "Cubes": "6", - "Information": "true" - }, - { - "Code": "32211", - "Content": "Erhebung der öffentlichen Wasserversorgung", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "32212", - "Content": "Erhebung der öffentlichen Abwasserentsorgung", - "Cubes": "2", - "Information": "true" - }, - { - "Code": "32213", - "Content": "Erhebung der öffentlichen Abwasserbehandlung", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "32214", - "Content": "Erhebung der öff. Abwasserentsorgung - Klärschlamm", - "Cubes": "1", - "Information": "true" - }, - { - "Code": "32221", - "Content": "Erh. nichtöff. Wasserversorgung,Abwasserentsorgung", - "Cubes": "12", - "Information": "true" - }, - { - "Code": "32251", - "Content": "Wassereigenversorgung u.-entsorgung priv.Haushalte", - "Cubes": "1", - "Information": "true" - }, - { - "Code": "32331", - "Content": "Erh. der Anlagen zum Umgang mit wassergef. Stoffen", - "Cubes": "40", - "Information": "true" - }, - { - "Code": "32421", - "Content": "Erhebung bestimmter klimawirksamer Stoffe", - "Cubes": "16", - "Information": "true" - }, - { - "Code": "32531", - "Content": "Erh. der Güter und Leistungen für den Umweltschutz", - "Cubes": "17", - "Information": "true" - }, - { - "Code": "33111", - "Content": "Flächenerhebung nach Art der tatsächlichen Nutzung", - "Cubes": "12", - "Information": "true" - }, - { - "Code": "41122", - "Content": "Repräsentative Agrarstrukturerhebung (ASE b. 2007)", - "Cubes": "40", - "Information": "true" - }, - { - "Code": "41141", - "Content": "Landwirtschaftszählung: Haupterhebung", - "Cubes": "176", - "Information": "true" - }, - { - "Code": "41145", - "Content": "Landwirtschaftszählung: Gartenbau", - "Cubes": "22", - "Information": "true" - }, - { - "Code": "41161", - "Content": "Strukturerhebung der Forstbetriebe", - "Cubes": "9", - "Information": "true" - }, - { - "Code": "41213", - "Content": "Allgemeine Zierpflanzenerhebung", - "Cubes": "25", - "Information": "true" - }, - { - "Code": "41215", - "Content": "Gemüseerhebung", - "Cubes": "16", - "Information": "true" - }, - { - "Code": "41221", - "Content": "Baumschulerhebung", - "Cubes": "8", - "Information": "true" - }, - { - "Code": "41231", - "Content": "Baumobstanbauerhebung", - "Cubes": "12", - "Information": "true" - }, - { - "Code": "41232", - "Content": "Erhebung über Strauchbeeren", - "Cubes": "14", - "Information": "true" - }, - { - "Code": "41241", - "Content": "Ernte-u.Betriebsbericht: Feldfrüchte und Grünland", - "Cubes": "10", - "Information": "true" - }, - { - "Code": "41243", - "Content": "Ernte- und Betriebsbericht: Baumobst", - "Cubes": "6", - "Information": "true" - }, - { - "Code": "41244", - "Content": "Ernte- und Betriebsbericht: Reben und Weinmost", - "Cubes": "18", - "Information": "true" - }, - { - "Code": "41252", - "Content": "Rebflächenerhebung (Weinbaukataster)", - "Cubes": "9", - "Information": "true" - }, - { - "Code": "41253", - "Content": "Erhebung der Weinernte", - "Cubes": "18", - "Information": "true" - }, - { - "Code": "41254", - "Content": "Erhebung der Weinerzeugung", - "Cubes": "12", - "Information": "true" - }, - { - "Code": "41255", - "Content": "Erhebung der Weinbestände", - "Cubes": "42", - "Information": "true" - }, - { - "Code": "41261", - "Content": "Holzeinschlagsstatistik (forstl. Erzeugerbetriebe)", - "Cubes": "40", - "Information": "true" - }, - { - "Code": "41271", - "Content": "Bodennutzungshaupterhebung", - "Cubes": "17", - "Information": "true" - }, - { - "Code": "41311", - "Content": "Allg. und Repräs. Erhebung über die Viehbestände", - "Cubes": "6", - "Information": "true" - }, - { - "Code": "41312", - "Content": "Viehbestandserhebung Rinder", - "Cubes": "18", - "Information": "true" - }, - { - "Code": "41313", - "Content": "Viehbestandserhebung Schweine", - "Cubes": "10", - "Information": "true" - }, - { - "Code": "41314", - "Content": "Viehbestandserhebung Schafe", - "Cubes": "6", - "Information": "true" - }, - { - "Code": "41321", - "Content": "Geflügelstatistik: Erhebung in Brütereien", - "Cubes": "10", - "Information": "true" - }, - { - "Code": "41322", - "Content": "Geflügelstatistik: Erh. in Geflügelschlachtereien", - "Cubes": "16", - "Information": "true" - }, - { - "Code": "41323", - "Content": "Geflügelstatistik: Untern. mit Legehennenhaltung", - "Cubes": "14", - "Information": "true" - }, - { - "Code": "41331", - "Content": "Schlachtungs- und Schlachtgewichtsstatistik", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "41362", - "Content": "Erhebung über die Erzeugung in Aquakulturbetrieben", - "Cubes": "10", - "Information": "true" - }, - { - "Code": "42111", - "Content": "Monatsbericht im Verarbeitenden Gewerbe", - "Cubes": "28", - "Information": "true" - }, - { - "Code": "42191", - "Content": "Indizes aus der Lkw-Mauterhebung", - "Cubes": "4", - "Information": "false" - }, - { - "Code": "42271", - "Content": "Jahresbericht für Betriebe im Verarb. Gewerbe", - "Cubes": "14", - "Information": "true" - }, - { - "Code": "42321", - "Content": "Düngemittelstatistik", - "Cubes": "12", - "Information": "true" - }, - { - "Code": "42341", - "Content": "Holzbearbeitungsstatistik", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "44111", - "Content": "Monatsbericht im Bauhauptgewerbe", - "Cubes": "12", - "Information": "true" - }, - { - "Code": "44141", - "Content": "Statistik über den Auftragsbestand im Bauhauptgew.", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "44231", - "Content": "Ergänzungserhebung im Bauhauptgewerbe", - "Cubes": "12", - "Information": "true" - }, - { - "Code": "44241", - "Content": "Jährl. Erhebung im Ausbaugewerbe u.bei Bauträgern", - "Cubes": "5", - "Information": "true" - }, - { - "Code": "45211", - "Content": "Monatsstatistik Großhandel und Handelsvermittlung", - "Cubes": "17", - "Information": "true" - }, - { - "Code": "45212", - "Content": "Monatsstatistik im Einzelhandel", - "Cubes": "17", - "Information": "true" - }, - { - "Code": "45213", - "Content": "Monatsstatistik im Gastgewerbe", - "Cubes": "17", - "Information": "true" - }, - { - "Code": "45214", - "Content": "Monatsstatistik im Kfz-Handel,Instandh.,Reparatur", - "Cubes": "17", - "Information": "true" - }, - { - "Code": "45341", - "Content": "Jahresstatistik im Handel", - "Cubes": "16", - "Information": "true" - }, - { - "Code": "45412", - "Content": "Monatserhebung im Tourismus", - "Cubes": "20", - "Information": "true" - }, - { - "Code": "46161", - "Content": "Schieneninfrastrukturstatistik", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "46181", - "Content": "Personenverkehr mit Bussen und Bahnen", - "Cubes": "14", - "Information": "true" - }, - { - "Code": "46241", - "Content": "Statistik der Straßenverkehrsunfälle", - "Cubes": "19", - "Information": "true" - }, - { - "Code": "46251", - "Content": "Statistik des Kraftfahrzeug- und Anhängerbestandes", - "Cubes": "20", - "Information": "true" - }, - { - "Code": "46271", - "Content": "Statistik der Straßen des überörtlichen Verkehrs", - "Cubes": "1", - "Information": "true" - }, - { - "Code": "47415", - "Content": "Strukturerhebung im Dienstleistungsbereich", - "Cubes": "161", - "Information": "true" - }, - { - "Code": "49911", - "Content": "Fleischuntersuchungsstatistik", - "Cubes": "21", - "Information": "true" - }, - { - "Code": "52111", - "Content": "Unternehmensregister-System (URS)", - "Cubes": "18", - "Information": "true" - }, - { - "Code": "52311", - "Content": "Gewerbeanzeigenstatistik", - "Cubes": "116", - "Information": "true" - }, - { - "Code": "52411", - "Content": "Statistik über beantragte Insolvenzverfahren", - "Cubes": "49", - "Information": "true" - }, - { - "Code": "53111", - "Content": "Handwerkszählung", - "Cubes": "19", - "Information": "true" - }, - { - "Code": "61111", - "Content": "Verbraucherpreisindex für Deutschland", - "Cubes": "22", - "Information": "true" - }, - { - "Code": "61511", - "Content": "Statistik der Kaufwerte für Bauland", - "Cubes": "65", - "Information": "true" - }, - { - "Code": "61521", - "Content": "Kaufwerte für landwirtschaftliche Grundstücke", - "Cubes": "14", - "Information": "true" - }, - { - "Code": "62111", - "Content": "Verdienststrukturerhebung", - "Cubes": "56", - "Information": "true" - }, - { - "Code": "62361", - "Content": "Verdiensterhebung", - "Cubes": "152", - "Information": "true" - }, - { - "Code": "62411", - "Content": "Arbeitskostenerhebung", - "Cubes": "24", - "Information": "true" - }, - { - "Code": "71141", - "Content": "Rechnungsergebnisse d.öffentlichen Gesamthaushalts", - "Cubes": "10", - "Information": "true" - }, - { - "Code": "71211", - "Content": "Statistik über das Steueraufkommen", - "Cubes": "11", - "Information": "true" - }, - { - "Code": "71231", - "Content": "Realsteuervergleich", - "Cubes": "8", - "Information": "true" - }, - { - "Code": "71311", - "Content": "Vierteljährl. Schulden d. öffentl. Gesamthaushalts", - "Cubes": "18", - "Information": "true" - }, - { - "Code": "71321", - "Content": "Jährliche Schulden d. öffentlichen Gesamthaushalts", - "Cubes": "21", - "Information": "true" - }, - { - "Code": "71329", - "Content": "Jährl. Schulden der sonst. öff. Fonds, Einr., Unt.", - "Cubes": "8", - "Information": "true" - }, - { - "Code": "71411", - "Content": "Finanzvermögen des öffentlichen Gesamthaushalts", - "Cubes": "17", - "Information": "true" - }, - { - "Code": "71811", - "Content": "Jahresabschlüsse kfm. b. Extrahh., sonst. öff. FEU", - "Cubes": "72", - "Information": "true" - }, - { - "Code": "73121", - "Content": "Statistik ü. Personengesellschaften,Gemeinschaften", - "Cubes": "10", - "Information": "true" - }, - { - "Code": "73151", - "Content": "Lohnsteuerstatistik (Anmeldungen)", - "Cubes": "8", - "Information": "true" - }, - { - "Code": "73311", - "Content": "Umsatzsteuerstatistik (Voranmeldungen)", - "Cubes": "36", - "Information": "true" - }, - { - "Code": "73321", - "Content": "Umsatzsteuerstatistik (Veranlagungen)", - "Cubes": "42", - "Information": "true" - }, - { - "Code": "73511", - "Content": "Gewerbesteuerstatistik", - "Cubes": "8", - "Information": "true" - }, - { - "Code": "74111", - "Content": "Personalstandstatistik des öffentlichen Dienstes", - "Cubes": "20", - "Information": "true" - }, - { - "Code": "79994", - "Content": "Vergabestatistik", - "Cubes": "112", - "Information": "true" - }, - { - "Code": "82111", - "Content": "VGR der Länder: Entstehungsrechnung", - "Cubes": "4", - "Information": "true" - }, - { - "Code": "82411", - "Content": "VGR der Länder: Umverteilungsrechnung", - "Cubes": "2", - "Information": "true" - }, - { - "Code": "85221", - "Content": "Ausmaß der Ökosysteme", - "Cubes": "8", - "Information": "true" - }, - { - "Code": "91211", - "Content": "Wissenschafts- und Technologieindikatoren", - "Cubes": "2", - "Information": "true" - }, - { - "Code": "91311", - "Content": "Kulturindikatoren", - "Cubes": "2", - "Information": "true" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/xy_variable1/api/catalogue/tables2variable-86e7c4-1f2606-POST.json b/tests/testthat/xy_variable1/api/catalogue/tables2variable-86e7c4-1f2606-POST.json deleted file mode 100644 index 2dea818..0000000 --- a/tests/testthat/xy_variable1/api/catalogue/tables2variable-86e7c4-1f2606-POST.json +++ /dev/null @@ -1,2523 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "tables2variable" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "DLAND", - "selection": "", - "area": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "11111-0001", - "Content": "Gebietsfläche: Bundesländer, Stichtag", - "Time": "31.12.1995 - 31.12.2022" - }, - { - "Code": "12211-0902", - "Content": "Bevölkerung in Gemeinschaftsunterkünften: Bundesländer,\nJahre, Hauptstatus, Geschlecht, Altersgruppen", - "Time": "2017 - 2023" - }, - { - "Code": "12211-0903", - "Content": "Bevölkerung in Gemeinschaftsunterkünften: Bundesländer,\nJahre, Art der Gemeinschaftsunterkunft, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "12211-1001", - "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen, Nichterwerbspersonen aus Hauptwohnsitzhaushalten: Bundesländer, Jahre, Geschlecht, Altersgruppen", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1002", - "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen, Nichterwerbspersonen aus Hauptwohnsitzhaushalten: Bundesländer, Jahre, Überwiegender Lebensunterhalt, Altersgruppen", - "Time": "2023 - 2023" - }, - { - "Code": "12211-1003", - "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen,\nNichterwerbspersonen aus Hauptwohnsitzhaush.: Bundesländer,\nJahre, Geschlecht, Größenkl. persönl. monatl. Nettoeinkommen", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1004", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Stellung im Beruf", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1005", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Art der geleisteten\nArbeitsstunden, Größenkl. d.geleisteten Arbeitsstd. je Woche", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1006", - "Content": "Geleistete Arbeitsstunden je Woche von Erwerbstätigen aus\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Geschlecht,\nStellung im Beruf, Art der geleisteten Arbeitsstunden", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1007", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Erwerbsformen", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1008", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Größenklassen des\npersönlichen monatlichen Nettoeinkommens", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1009", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Berufe", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1010", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Größenklassen der in\nder Arbeitsstätte tätigen Personen", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1011", - "Content": "Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten:\nBundesländer, Jahre, Geschlecht, Altersgruppen,\nBeschäftigungsumfang", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1012", - "Content": "Erwerbslose aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Dauer der Erwerbslosigkeit", - "Time": "2021 - 2023" - }, - { - "Code": "12211-9004", - "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen,\nNichterwerbspersonen: Bundesländer, Jahre (bis 2019)", - "Time": "04/1991 - 2019" - }, - { - "Code": "12211-9014", - "Content": "Bevölkerung (ab 15 Jahren): Bundesländer, Jahre (bis 2019),\nGeschlecht, Allgemeine Schulausbildung", - "Time": "2005 - 2019" - }, - { - "Code": "12211-9015", - "Content": "Bevölkerung (ab 15 Jahren): Bundesländer, Jahre (bis 2019),\nGeschlecht, Beruflicher Bildungsabschluss", - "Time": "2005 - 2019" - }, - { - "Code": "12211-9033", - "Content": "Privathaushalte: Bundesländer, Jahre (bis 2019)", - "Time": "05/1970 - 2019" - }, - { - "Code": "12211-9034", - "Content": "Privathaushalte: Bundesländer, Jahre (bis 2019), Haushaltsgröße", - "Time": "04/1991 - 2019" - }, - { - "Code": "12211-9041", - "Content": "Bevölkerung in Familien/Lebensformen: Bundesländer, Jahre (bis 2019), Lebensformen", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9044", - "Content": "Familien, Paare, Alleinerziehende: Bundesländer, Jahre (bis 2019), Vorhandensein von Kindern", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9047", - "Content": "Ehepaare, Lebensgemeinschaften, Gemischtgeschlechtliche\nLebensgemeinschaften: Bundesländer, Jahre (bis 2019),\nVorhandensein von Kindern", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9051", - "Content": "Alleinerziehende: Bundesländer, Jahre (bis 2019),\nGeschlecht, Vorhandensein von Kindern", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9053", - "Content": "Alleinstehende: Bundesländer, Jahre (bis 2019), Geschlecht,\nHaushaltsgröße", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9056", - "Content": "Ledige Kinder in Familien: Bundesländer, Jahre (bis 2019),\nFamilienformen", - "Time": "04/1996 - 2019" - }, - { - "Code": "12231-0101", - "Content": "Bevölkerung von 16 bis unter 75 Jahren in\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Altersgruppen,\nPrivate Internetaktivitäten in den letzten drei Monaten", - "Time": "2022 - 2024" - }, - { - "Code": "12231-0102", - "Content": "Bevölkerung von 16 bis unter 75 Jahren in\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Altersgruppen,\nPrivate Internetkäufe in den letzten drei Monaten", - "Time": "2022 - 2024" - }, - { - "Code": "12231-0103", - "Content": "Bevölkerung von 16 bis unter 75 Jahren in\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Altersgruppen,\nArt der Computer- und Internetkenntnisse", - "Time": "2023 - 2023" - }, - { - "Code": "12251-0101", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Wochenend- und\nFeiertagsarbeit", - "Time": "2021 - 2023" - }, - { - "Code": "12251-0102", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Abend-, Nacht- und\nSchichtarbeit", - "Time": "2021 - 2023" - }, - { - "Code": "12251-0103", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Erwerbsarbeit zu\nHause", - "Time": "2021 - 2023" - }, - { - "Code": "12251-0107", - "Content": "Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten:\nBundesländer, Jahre, Geschlecht, Altersgruppen, Art des\nArbeitsvertrages", - "Time": "2021 - 2023" - }, - { - "Code": "12411-0010", - "Content": "Bevölkerung: Bundesländer, Stichtag", - "Time": "31.12.1958 - 31.12.2023" - }, - { - "Code": "12411-0011", - "Content": "Bevölkerung: Bundesländer, Stichtag, Geschlecht", - "Time": "31.12.1967 - 31.12.2023" - }, - { - "Code": "12411-0012", - "Content": "Bevölkerung: Bundesländer, Stichtag, Altersjahre", - "Time": "31.12.1967 - 31.12.2023" - }, - { - "Code": "12411-0013", - "Content": "Bevölkerung: Bundesländer, Stichtag, Geschlecht, Altersjahre", - "Time": "31.12.1967 - 31.12.2023" - }, - { - "Code": "12411-0014", - "Content": "Bevölkerung: Bundesländer, Stichtag, Nationalität,\nGeschlecht, Altersjahre", - "Time": "31.12.2000 - 31.12.2023" - }, - { - "Code": "12411-0021", - "Content": "Bevölkerung: Bundesländer, Stichtag zum Quartalsende,\nGeschlecht", - "Time": "31.03.1991 - 30.09.2024" - }, - { - "Code": "12411-0042", - "Content": "Durchschnittliche Bevölkerung: Bundesländer, Jahre,\nNationalität, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "12411-0050", - "Content": "Bevölkerungsdichte: Bundesländer, Stichtag", - "Time": "31.12.1995 - 31.12.2022" - }, - { - "Code": "12421-0003", - "Content": "Vorausberechneter Bevölkerungsstand: Bundesländer, Stichtag,\nVarianten der Bevölkerungsvorausberechnung", - "Time": "31.12.2022 - 31.12.2070" - }, - { - "Code": "12421-0004", - "Content": "Vorausberechneter Bevölkerungsstand: Bundesländer, Stichtag,\nVarianten der Bevölkerungsvorausberechnung, Geschlecht,\nAltersjahre", - "Time": "31.12.2022 - 31.12.2070" - }, - { - "Code": "12421-0101", - "Content": "Vorausberechnete Privathaushalte: Bundesländer, Jahre,\nVarianten der Haushaltsvorausberechnung, Haushaltsgröße", - "Time": "2019 - 2040" - }, - { - "Code": "12521-0020", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht/Altersjahre/\nFamilienstand", - "Time": "30.09.1980 - 31.12.2023" - }, - { - "Code": "12521-0021", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht/Altersjahre/\nFamilienstand, Ländergruppierungen/Staatsangehörigkeit", - "Time": "30.09.1980 - 31.12.2023" - }, - { - "Code": "12521-0022", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht, Altersjahre,\nLändergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0023", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht, Altersjahre,\nMigrantengeneration, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0024", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht,\nFamilienstand, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0025", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht,\nAufenthaltsdauer/Aufenthaltsdauer (Abgrenzung\nEinbürgerungen), Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0026", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht,\nAufenthaltstitel/Ausgewählte Aufenthaltstitel,\nLändergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0027", - "Content": "Ausländer: Bundesländer, Jahre, Geschlecht,\nRegisterbewegungen (regional), Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "2013 - 2023" - }, - { - "Code": "12521-0028", - "Content": "Ausländer: Bundesländer, Jahre, Geschlecht, Altersjahre,\nRegisterzu- und abgänge (regional), Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "2013 - 2023" - }, - { - "Code": "12521-0029", - "Content": "Ausländer: Bundesländer, Jahre, Geschlecht,\nAufenthaltsdauer, Registerabgänge (regional),\nLändergruppierungen/Staatsangehörigkeit", - "Time": "2013 - 2023" - }, - { - "Code": "12521-0030", - "Content": "Durchschnittsalter der Ausländer: Bundesländer, Stichtag,\nGeschlecht, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0031", - "Content": "Durchschnittliche Aufenthaltsdauer der Ausländer:\nBundesländer, Stichtag, Geschlecht, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12531-0020", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht/\nAltersjahre/Familienstand", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0021", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht/\nAltersjahre/Familienstand, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0022", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nAltersjahre, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0023", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nAltersjahre, Migrantengeneration, Ländergruppierungen\n/Staatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0024", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nFamilienstand, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0025", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nAufenthaltsdauer/Aufenthaltsdauer (Abgrenzung\nEinbürgerungen), Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0026", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nSchutzstatus/Schutzstatuskategorie, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0027", - "Content": "Durchschnittsalter der Schutzsuchenden: Bundesländer,\nStichtag, Geschlecht, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0028", - "Content": "Durchschnittliche Aufenthaltsdauer der Schutzsuchenden:\nBundesländer, Stichtag, Geschlecht, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12611-0010", - "Content": "Eheschließungen: Bundesländer, Jahre", - "Time": "1990 - 2023" - }, - { - "Code": "12611-0011", - "Content": "Eheschließungen: Bundesländer, Monate", - "Time": "Januar 1990 - November 2024" - }, - { - "Code": "12612-0100", - "Content": "Lebendgeborene: Bundesländer, Jahre, Geschlecht", - "Time": "1990 - 2023" - }, - { - "Code": "12612-0101", - "Content": "Lebendgeborene: Bundesländer, Monate, Geschlecht", - "Time": "Januar 1990 - November 2024" - }, - { - "Code": "12612-0102", - "Content": "Lebendgeborene: Bundesländer, Jahre, Familienstand der\nEltern", - "Time": "1991 - 2023" - }, - { - "Code": "12612-0103", - "Content": "Lebendgeborene: Bundesländer, Jahre, Staatsangehörigkeit des\nKindes und der Eltern", - "Time": "1990 - 2023" - }, - { - "Code": "12612-0104", - "Content": "Zusammengefasste Geburtenziffern (je Frau): Bundesländer,\nJahre, Altersgruppen", - "Time": "1991 - 2023" - }, - { - "Code": "12612-0105", - "Content": "Nettoreproduktionsrate: Bundesländer, Jahre (bis 2010),\nAltersgruppen", - "Time": "2004 - 2010" - }, - { - "Code": "12612-0106", - "Content": "Totgeborene: Bundesländer, Jahre", - "Time": "1990 - 2023" - }, - { - "Code": "12613-0010", - "Content": "Gestorbene: Bundesländer, Jahre", - "Time": "1990 - 2024" - }, - { - "Code": "12613-0011", - "Content": "Gestorbene: Bundesländer, Jahre, Geschlecht", - "Time": "1990 - 2024" - }, - { - "Code": "12613-0012", - "Content": "Gestorbene: Bundesländer, Monate", - "Time": "Januar 1990 - Januar 2025" - }, - { - "Code": "12613-0013", - "Content": "Gestorbene: Bundesländer, Monate, Geschlecht", - "Time": "Januar 1990 - Januar 2025" - }, - { - "Code": "12621-0004", - "Content": "Durchschnittliche Lebenserwartung bei Geburt\n(Periodensterbetafel): Bundesländer, Jahre, Geschlecht", - "Time": "2002/04 - 2021/23" - }, - { - "Code": "12631-0010", - "Content": "Ehescheidungen: Bundesländer, Jahre", - "Time": "1990 - 2023" - }, - { - "Code": "12631-0011", - "Content": "Ehescheidungen: Bundesländer, Jahre, Ehedauer", - "Time": "1997 - 2023" - }, - { - "Code": "12631-0012", - "Content": "Ehescheidungen: Bundesländer, Jahre, Gemeinsame\nminderjährige Kinder", - "Time": "1997 - 2023" - }, - { - "Code": "12651-0003", - "Content": "Begründungen von Lebenspartnerschaften: Bundesländer, Jahre (bis 2017), Geschlecht", - "Time": "2014 - 2017" - }, - { - "Code": "12661-0002", - "Content": "Aufhebungen von Lebenspartnerschaften: Bundesländer, Jahre,\nGeschlecht", - "Time": "2014 - 2023" - }, - { - "Code": "12711-0020", - "Content": "Gesamtwanderungen über die Grenzen der Bundesländer: Bundesländer, Jahre, Nationalität, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "12711-0021", - "Content": "Wanderungen zwischen den Bundesländern: Bundesländer, Jahre, Nationalität, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "12711-0023", - "Content": "Wanderungen zwischen Deutschland und dem Ausland:\nBundesländer, Jahre, Nationalität, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "13111-0005", - "Content": "Sozialversicherungspflichtig Beschäftigte am Arbeitsort:\nBundesländer, Stichtag, Geschlecht", - "Time": "31.03.2008 - 30.06.2024" - }, - { - "Code": "13111-0006", - "Content": "Sozialversicherungspflichtig Beschäftigte am Arbeitsort:\nBundesländer, Stichtag, Wirtschaftsabschnitte", - "Time": "31.03.2008 - 30.06.2024" - }, - { - "Code": "13211-0007", - "Content": "Arbeitslose, Arbeitslosenquoten, Gemeldete Arbeitsstellen:\nBundesländer, Jahre", - "Time": "1991 - 2024" - }, - { - "Code": "13211-0008", - "Content": "Arbeitslose, Arbeitslosenquoten, Gemeldete Arbeitsstellen:\nBundesländer, Monate", - "Time": "Januar 2005 - Februar 2025" - }, - { - "Code": "13211-0009", - "Content": "Arbeitslose: Bundesländer, Jahre, Geschlecht", - "Time": "1991 - 2024" - }, - { - "Code": "13211-0010", - "Content": "Arbeitslose: Bundesländer, Monate, Geschlecht", - "Time": "Januar 2005 - Februar 2025" - }, - { - "Code": "13211-0011", - "Content": "Arbeitslosenquote aller zivilen Erwerbspersonen:\nBundesländer, Jahre, Geschlecht", - "Time": "1991 - 2024" - }, - { - "Code": "13211-0012", - "Content": "Arbeitslosenquote aller zivilen Erwerbspersonen:\nBundesländer, Monate, Geschlecht", - "Time": "Januar 2005 - Februar 2025" - }, - { - "Code": "13311-0002", - "Content": "Erwerbstätige, Arbeitnehmer, Selbständige und mithelfende\nFamilienangehörige (im Inland): Bundesländer, Jahre,\nWirtschaftszweige", - "Time": "1991 - 2023" - }, - { - "Code": "14111-0003", - "Content": "Wahlberechtigte, Wähler, Wahlbeteiligung, Erststimmen,\nZweitstimmen (Allgemeine Bundestagswahlstatistik):\nBundesländer, Stichtag", - "Time": "22.09.2013 - 23.02.2025" - }, - { - "Code": "14111-0004", - "Content": "Gültige Erststimmen, gültige Zweitstimmen (Allgemeine\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien", - "Time": "22.09.2013 - 23.02.2025" - }, - { - "Code": "14121-0004", - "Content": "Gültige Zweitstimmen (Repräsentative\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien,\nGeschlecht", - "Time": "22.09.2002 - 26.09.2021" - }, - { - "Code": "14121-0005", - "Content": "Gültige Zweitstimmen (Repräsentative\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien,\nAltersgruppen", - "Time": "22.09.2013 - 26.09.2021" - }, - { - "Code": "14121-0006", - "Content": "Gültige Zweitstimmen (Repräsentative\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien,\nGeschlecht, Altersgruppen", - "Time": "22.09.2013 - 26.09.2021" - }, - { - "Code": "14211-0002", - "Content": "Gültige Stimmen (Allgemeine Europawahlstatistik):\nBundesländer, Stichtag, Parteien", - "Time": "12.06.1994 - 09.06.2024" - }, - { - "Code": "14221-0002", - "Content": "Anteil gültiger Stimmen (Repräsentative\nEuropawahlstatistik): Bundesländer, Stichtag, Parteien,\nGeschlecht, Altersgruppen", - "Time": "25.05.2014 - 26.05.2019" - }, - { - "Code": "21111-0010", - "Content": "Schüler, Schulanfänger, Absolventen und Abgänger:\nBundesländer, Schuljahr, Geschlecht", - "Time": "1997/98 - 2023/24" - }, - { - "Code": "21111-0011", - "Content": "Schüler: Bundesländer, Schuljahr, Geschlecht, Schulart,\nJahrgangsstufen", - "Time": "1998/99 - 2023/24" - }, - { - "Code": "21111-0012", - "Content": "Schulanfänger: Bundesländer, Schuljahr, Geschlecht, Schulart, Einschulungsart", - "Time": "1999/00 - 2023/24" - }, - { - "Code": "21111-0013", - "Content": "Absolventen und Abgänger: Bundesländer, Schuljahr,\nGeschlecht, Schulart, Schulabschlüsse", - "Time": "1997/98 - 2022/23" - }, - { - "Code": "21111-0014", - "Content": "Wiederholer: Bundesländer, Schuljahr, Geschlecht, Schulart,\nJahrgangsstufen", - "Time": "1998/99 - 2023/24" - }, - { - "Code": "21111-0015", - "Content": "Schüler mit Fremdsprachen-Unterricht: Bundesländer,\nSchuljahr, Fremdsprachen, Schulart, Jahrgangsstufen", - "Time": "1998/99 - 2023/24" - }, - { - "Code": "21111-0016", - "Content": "Schüler mit sonderpädagogischer Förderung: Bundesländer,\nSchuljahr, Schulart, Förderschwerpunkte", - "Time": "2000/01 - 2023/24" - }, - { - "Code": "21111-0017", - "Content": "Schüler mit sonderpädagogischer Förderung: Bundesländer, Schuljahr, Geschlecht, Schulart, Förderschwerpunkte", - "Time": "2014/15 - 2023/24" - }, - { - "Code": "21121-0010", - "Content": "Schüler in beruflichen Schulen: Bundesländer, Schuljahr,\nSchulart", - "Time": "2001/02 - 2023/24" - }, - { - "Code": "21121-0011", - "Content": "Schüler in beruflichen Schulen: Bundesländer, Schuljahr,\nGeschlecht, Schulart", - "Time": "2001/02 - 2023/24" - }, - { - "Code": "21121-0012", - "Content": "Schüler in beruflichen Schulen: Bundesländer, Schuljahr,\nNationalität, Geschlecht, Schulart, Zeitform des Unterrichts", - "Time": "2001/02 - 2023/24" - }, - { - "Code": "21121-0013", - "Content": "Schüler mit Fremdsprachen-Unterricht: Bundesländer,\nSchuljahr, Schulart, Fremdsprachen", - "Time": "2009/10 - 2023/24" - }, - { - "Code": "21211-0101", - "Content": "Auszubildende: Bundesländer, Stichtag, Nationalität, Geschlecht, Ausbildungsbereich", - "Time": "31.12.2008 - 31.12.2023" - }, - { - "Code": "21211-0102", - "Content": "Auszubildende: Bundesländer, Stichtag, Geschlecht, Altersjahre", - "Time": "31.12.2008 - 31.12.2023" - }, - { - "Code": "21211-0103", - "Content": "Auszubildende: Bundesländer, Stichtag, Geschlecht, Schulabschluss", - "Time": "31.12.2008 - 31.12.2023" - }, - { - "Code": "21211-0104", - "Content": "Ausbildungsverträge: Bundesländer, Jahre, Nationalität, Geschlecht, Ausbildungsbereich", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0105", - "Content": "Ausbildungsverträge: Bundesländer, Jahre, Geschlecht, Altersjahre", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0106", - "Content": "Ausbildungsverträge: Bundesländer, Jahre, Geschlecht, Schulabschluss", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0107", - "Content": "Bestandene Abschlussprüfung: Bundesländer, Jahre, Nationalität, Geschlecht, Ausbildungsbereich", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0108", - "Content": "Bestandene Abschlussprüfung: Bundesländer, Jahre, Geschlecht, Altersjahre", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0109", - "Content": "Bestandene Abschlussprüfung: Bundesländer, Jahre, Geschlecht, Schulabschluss", - "Time": "2008 - 2023" - }, - { - "Code": "21241-0020", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag, beendete Ausbildungen, Ausbildungseintritte (inkl. vorzeitige Lösungen): Bundesländer, Stichtag", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0021", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Geschlecht", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0022", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0023", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Ausbildungsumfang", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0024", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem\nAusbildungsvertrag: Bundesländer, Stichtag, Erhalt von\nFördermitteln", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0025", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Art der Trägerschaft der Pflegeschulen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0026", - "Content": "Beendete Ausbildungen in Pflegeberufen: Bundesländer, Stichtag, Prüfungsergebnis", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0027", - "Content": "Pflegeschulen: Bundesländer, Stichtag, Art der Trägerschaft\nder Pflegeschulen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21311-0005", - "Content": "Studierende: Bundesländer, Semester, Nationalität,\nGeschlecht", - "Time": "WS 1998/99 - WS 2023/24" - }, - { - "Code": "21311-0006", - "Content": "Studierende: Bundesländer, Semester, Nationalität,\nGeschlecht, Studienfach", - "Time": "WS 1998/99 - WS 2023/24" - }, - { - "Code": "21311-0014", - "Content": "Studienanfänger: Bundesländer, Semester, Nationalität,\nGeschlecht", - "Time": "WS 1998/99 - WS 2023/24" - }, - { - "Code": "21311-0015", - "Content": "Studienanfänger: Bundesländer, Semester, Nationalität,\nGeschlecht, Studienfach", - "Time": "WS 1998/99 - WS 2023/24" - }, - { - "Code": "21321-0005", - "Content": "Prüfungen an Hochschulen: Bundesländer, Jahre, Nationalität,\nGeschlecht, Prüfungsergebnis", - "Time": "1999 - 2023" - }, - { - "Code": "21321-0006", - "Content": "Prüfungen an Hochschulen: Bundesländer, Jahre, Nationalität,\nGeschlecht, Prüfungsergebnis, Studienfach", - "Time": "1999 - 2023" - }, - { - "Code": "21321-0007", - "Content": "Prüfungen an Hochschulen: Bundesländer, Jahre, Nationalität,\nGeschlecht, Prüfungsergebnis, Abgelegte Abschlussprüfung", - "Time": "1999 - 2023" - }, - { - "Code": "21351-0003", - "Content": "Habilitationen: Bundesländer, Jahre, Geschlecht", - "Time": "1992 - 2023" - }, - { - "Code": "21352-0005", - "Content": "Promovierende: Bundesländer, Stichtag, Nationalität,\nGeschlecht, Hochschulart", - "Time": "01.12.2019 - 01.12.2023" - }, - { - "Code": "21353-0002", - "Content": "Hochschulräte: Bundesländer, Jahre, Hochschulart, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21354-0001", - "Content": "Studierende, Studienanfänger an Berufsakademien:\nBundesländer, Jahre, Nationalität, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21354-0002", - "Content": "Bestandene Prüfungen an Berufsakademien: Bundesländer,\nJahre, Art der Prüfung, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21354-0003", - "Content": "Personal an Berufsakademien: Bundesländer, Jahre, Art des\nPersonals, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21354-0004", - "Content": "Studierende je Lehrperson (Betreuungsrelation) an\nBerufsakademien: Bundesländer, Jahre, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21371-0002", - "Content": "Ausgaben der Hochschulen: Bundesländer, Jahre, Hochschulart,\nFächergruppen", - "Time": "2006 - 2022" - }, - { - "Code": "21381-0010", - "Content": "Absolventenquote: Bundesländer, Jahre, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "21381-0011", - "Content": "Studienanfängerquote (Hochschulzugangsberechtigung):\nBundesländer, Jahre, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "21381-0012", - "Content": "Studienanfängerquote: Bundesländer, Jahre, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "21381-0013", - "Content": "Studienberechtigtenquote: Bundesländer, Jahre,\nSchulabschluss", - "Time": "2006 - 2023" - }, - { - "Code": "21381-0014", - "Content": "Laufende Ausgaben der Hochschulen, Drittmittel der\nHochschulen: Bundesländer, Jahre", - "Time": "2011 - 2022" - }, - { - "Code": "21411-0020", - "Content": "BAföG - Geförderte Personen und finanzieller Aufwand:\nBundesländer, Jahre, Personenkreis", - "Time": "1991 - 2023" - }, - { - "Code": "21421-0021", - "Content": "Aufstiegs-BAföG - Geförderte Personen, finanzieller Aufwand:\nBundesländer, Jahre, Bewilligung/Inanspruchnahme,\nVoll-/Teilzeit, Art des finanziellen Aufwandes", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0022", - "Content": "Aufstiegs-BAföG - Geförderte Personen, finanzieller Aufwand:\nBundesländer, Jahre, Bewilligung/Inanspr., Voll-/Teilzeit,\nArt des finanziellen Aufwandes, Fortbildungsstätten", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0023", - "Content": "Aufstiegs-BAföG - Geförderte Personen, finanzieller Aufwand:\nBundesländer, Jahre, Bewilligung/Inanspr., Voll-/Teilzeit,\nArt des finanziellen Aufwandes, Fortbildungsziele", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0024", - "Content": "Aufstiegs-BAföG - Geförderte Personen (Bewilligung):\nBundesländer, Jahre, Voll-/Teilzeit, Geschlecht,\nFortbildungsstätten", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0025", - "Content": "Aufstiegs-BAföG - Geförderte Personen (Bewilligung)\n(Vollzeit): Bundesländer, Jahre, Geschlecht,\nEinkommensgrößenklassen", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0026", - "Content": "Aufstiegs-BAföG - Geförderte Personen, monatlicher\nFörderungsbetrag: Bundesländer, Jahre, Bewilligung/\nInanspruchnahme, Art der Förderung, Fortbildungsstätten", - "Time": "2003 - 2023" - }, - { - "Code": "21431-0020", - "Content": "Stipendiaten, Mittelgeber: Bundesländer, Jahre, Hochschulart", - "Time": "2011 - 2023" - }, - { - "Code": "21431-0021", - "Content": "Stipendiaten: Bundesländer, Jahre, Geschlecht, Hochschulart", - "Time": "2011 - 2023" - }, - { - "Code": "21611-0003", - "Content": "Kinos, Leinwände, Sitzplätze der Kinos, Filmbesuche,\nDurchschnittlicher Kino-Eintrittspreis, Einnahmen:\nBundesländer, Jahre", - "Time": "2000 - 2023" - }, - { - "Code": "21611-0102", - "Content": "Museen, Ausstellungen, Museumsbesuche: Bundesländer, Jahre", - "Time": "2002 - 2022" - }, - { - "Code": "21611-0111", - "Content": "Öffentlich geförderte Theaterunternehmen, Spielstätten,\nVeranstaltungen am Ort, Theaterbesuche: Bundesländer, Jahre", - "Time": "2000 - 2022" - }, - { - "Code": "21611-0122", - "Content": "Öffentlich geförderte Musikschulen, Lehrer, Schüler:\nBundesländer, Jahre", - "Time": "2000 - 2022" - }, - { - "Code": "21611-0123", - "Content": "Schüler in öffentlich geförderten Musikschulen:\nBundesländer, Jahre, Altersgruppen", - "Time": "2000 - 2022" - }, - { - "Code": "21611-0201", - "Content": "Haupt- und Zweigstellen der Bibliotheken, Meldende\nBibliotheken, Bestand, Entleiher, Bibliotheksbesuche:\nBundesländer, Jahre, Bibliotheksarten", - "Time": "2000 - 2023" - }, - { - "Code": "21621-0003", - "Content": "Öffentliche Ausgaben für Kultur: Bundesländer, Jahre,\nKulturbereiche", - "Time": "2005 - 2021" - }, - { - "Code": "21711-0010", - "Content": "Ausgaben der öffentlichen Haushalte für Bildung:\nBundesländer, Jahre, Körperschaftsgruppen, Aufgabenbereiche\nder öffentlichen Haushalte", - "Time": "1995 - 2024" - }, - { - "Code": "21711-0011", - "Content": "Ausgaben für öffentliche Schulen je Schüler: Bundesländer,\nJahre", - "Time": "2010 - 2023" - }, - { - "Code": "21821-0002", - "Content": "Interne Ausgaben und Personal für Forschung und Entwicklung:\nBundesländer, Jahre, Sektoren", - "Time": "1995 - 2022" - }, - { - "Code": "21821-0100", - "Content": "Patentanmeldungen: Bundesländer, Jahre", - "Time": "2000 - 2023" - }, - { - "Code": "22111-0020", - "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Sozialhilfe:\nBundesländer, Jahre", - "Time": "1994 - 2023" - }, - { - "Code": "22111-0021", - "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Sozialhilfe:\nBundesländer, Jahre, Ort der Leistungserbringung", - "Time": "1994 - 2023" - }, - { - "Code": "22111-0022", - "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Sozialhilfe:\nBundesländer, Jahre, Sozialhilfearten", - "Time": "2005 - 2023" - }, - { - "Code": "22111-0023", - "Content": "Bruttoausgaben der Sozialhilfe: Bundesländer, Jahre (bis\n2004), Sozialhilfearten, Sozialhilfeträger, Ort der\nLeistungserbringung", - "Time": "1994 - 2004" - }, - { - "Code": "22121-0010", - "Content": "Empfänger von Hilfe zum Lebensunterhalt: Bundesländer,\nStichtag, Ort der Leistungserbringung, Geschlecht,\nAltersgruppen", - "Time": "31.12.1995 - 31.12.2023" - }, - { - "Code": "22121-0011", - "Content": "Empfänger von Hilfe zum Lebensunterhalt: Bundesländer,\nStichtag, Ort der Leistungserbringung, Geschlecht,\nNationalität", - "Time": "31.12.1995 - 31.12.2023" - }, - { - "Code": "22121-0012", - "Content": "Personengemeinschaften von Empfängern von Hilfe zum Lebensunterhalt: Bundesländer, Stichtag, Ort der Leistungserbringung", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22131-0010", - "Content": "Empfänger von Leistungen nach dem 5. bis 9. Kapitel SGB XII:\nBundesländer, Jahre, Art der Hilfe, Geschlecht", - "Time": "2005 - 2023" - }, - { - "Code": "22131-0011", - "Content": "Empfänger von Leistungen nach dem 5. bis 9. Kapitel SGB XII:\nBundesländer, Stichtag, Art der Hilfe, Geschlecht", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22131-0012", - "Content": "Empfänger von Leistungen nach dem 5. bis 9. Kapitel SGB XII:\nBundesländer, Jahre, Art der Hilfe,\nOrt der Leistungserbringung", - "Time": "2005 - 2023" - }, - { - "Code": "22131-0013", - "Content": "Empfänger von Leistungen für Bestattungskosten,\nBruttoausgaben für Bestattungskosten: Bundesländer, Jahre", - "Time": "2005 - 2023" - }, - { - "Code": "22151-0030", - "Content": "Empfänger von Grundsicherung: Bundesländer, Stichtag\n(bis 31.12.2014), Nationalität, Geschlecht, Altersgruppen", - "Time": "31.12.2003 - 31.12.2014" - }, - { - "Code": "22151-0031", - "Content": "Quote der Empfänger von Grundsicherung: Bundesländer,\nStichtag (bis 31.12.2014), Nationalität, Geschlecht,\nAltersgruppen", - "Time": "31.12.2003 - 31.12.2014" - }, - { - "Code": "22151-0032", - "Content": "Empfänger von Grundsicherung: Bundesländer, Berichtsmonat\nim Quartal, Geschlecht/Altersgruppen/Ort der\nLeistungserbringung/Sozialhilfeträger", - "Time": "März 2015 - September 2024" - }, - { - "Code": "22151-0033", - "Content": "Empfänger von Grundsicherung: Bundesländer, Berichtsmonat im\nQuartal, Ort der Leistungserbringung, Geschlecht,\nAltersgruppen", - "Time": "März 2015 - September 2024" - }, - { - "Code": "22151-0034", - "Content": "Durchschnittlicher Nettobedarf, Bruttobedarf, angerechnetes\nEinkommen: Bundesländer, Berichtsmonat im Quartal", - "Time": "März 2015 - September 2024" - }, - { - "Code": "22151-0035", - "Content": "Quote der Empfänger von Grundsicherung: Bundesländer,\nBerichtsmonat im Quartal, Nationalität, Geschlecht,\nAltersgruppen", - "Time": "Dezember 2015 - Dezember 2023" - }, - { - "Code": "22161-0010", - "Content": "Empfänger von Eingliederungshilfe: Bundesländer, Jahre,\nGeschlecht, Altersgruppen", - "Time": "2020 - 2023" - }, - { - "Code": "22161-0011", - "Content": "Empfänger von Eingliederungshilfe: Bundesländer, Stichtag,\nGeschlecht, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22162-0010", - "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Eingliederungshilfe: Bundesländer, Jahre", - "Time": "2020 - 2023" - }, - { - "Code": "22211-0010", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Ort der Leistungserbringung", - "Time": "1994 - 2023" - }, - { - "Code": "22211-0011", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Leistungsart", - "Time": "1994 - 2023" - }, - { - "Code": "22211-0012", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Art des Trägers", - "Time": "1994 - 2023" - }, - { - "Code": "22211-0013", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Ausgabenart", - "Time": "1994 - 2023" - }, - { - "Code": "22211-0014", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Hilfearten", - "Time": "1994 - 2023" - }, - { - "Code": "22221-0100", - "Content": "Empfänger von Regelleistungen nach dem\nAsylbewerberleistungsgesetz: Bundesländer, Stichtag (bis\n31.12.2019), Geschlecht", - "Time": "31.12.1994 - 31.12.2019" - }, - { - "Code": "22221-0101", - "Content": "Empfänger von Regelleistungen nach dem Asylbewerberleistungsgesetz: Bundesländer, Stichtag (bis 31.12.2019), Art der Unterbringung", - "Time": "31.12.1994 - 31.12.2019" - }, - { - "Code": "22221-0110", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0111", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Art der Unterbringung", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0112", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Leistungsart", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0113", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Staatsangehörigkeit nach Kontinenten", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0114", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt\n(AsylbLG): Bundesländer, Stichtag, Altersgruppen,\nLeistungsart", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0115", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Erwerbsstatus", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0116", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag, Geschlecht, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0117", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag, Altersgruppen, Hilfearten", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0118", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag, Aufenthaltsrechtlicher Status", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0119", - "Content": "Empfänger von Asylbewerberleistungen: Bundesländer, Stichtag, Geschlecht, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0120", - "Content": "Empfänger von Asylbewerberleistungen: Bundesländer, Stichtag, Geschlecht, Art der Unterbringung", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0121", - "Content": "Empfänger von Asylbewerberleistungen: Bundesländer,\nStichtag, Geschlecht, Staatsangehörigkeit nach Kontinenten", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22231-0010", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag (bis 31.12.2019), Altersgruppen", - "Time": "31.12.1994 - 31.12.2019" - }, - { - "Code": "22231-0011", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag (bis 31.12.2019), Hilfearten", - "Time": "31.12.1994 - 31.12.2019" - }, - { - "Code": "22311-0010", - "Content": "Haushalte mit Wohngeld, Anteil an den Privathaushalten:\nBundesländer, Stichtag, Wohngeldart", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22311-0011", - "Content": "Haushalte mit Wohngeld: Bundesländer, Stichtag, Wohngeldart, Art des Zuschusses", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22311-0012", - "Content": "Haushalte mit Wohngeld: Bundesländer, Stichtag, Wohngeldart, Geschlecht der Antragsteller", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22311-0013", - "Content": "Haushalte mit Wohngeld: Bundesländer, Stichtag, Wohngeldart, Haushaltsgröße", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22411-0010", - "Content": "Ambulante Dienste, Pflegebedürftige: Bundesländer, Stichtag,\nTräger", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22411-0011", - "Content": "Pflegebedürftige (ambulant): Bundesländer, Stichtag, Pflegestufe/Pflegegrad", - "Time": "15.12.2017 - 15.12.2023" - }, - { - "Code": "22411-0012", - "Content": "Pflegebedürftige (ambulant): Bundesländer, Stichtag, Geschlecht, Altersgruppen", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22411-0013", - "Content": "Personal in ambulanten Pflegeeinrichtungen: Bundesländer,\nStichtag, Beschäftigungsverhältnis", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22411-0014", - "Content": "Personal in ambulanten Pflegeeinrichtungen: Bundesländer,\nStichtag, Geschlecht, Überwiegender Tätigkeitsbereich", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22411-0015", - "Content": "Personal in ambulanten Pflegeeinrichtungen: Bundesländer, Stichtag, Altersgruppen", - "Time": "15.12.2013 - 15.12.2023" - }, - { - "Code": "22412-0010", - "Content": "Pflegeheime, Verfügbare Plätze, Pflegebedürftige:\nBundesländer, Stichtag, Art der Pflegeleistung", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0011", - "Content": "Pflegeheime, Verfügbare Plätze: Bundesländer, Stichtag,\nTräger", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0012", - "Content": "Pflegebedürftige (stationär): Bundesländer, Stichtag,\nPflegestufe/Pflegegrad", - "Time": "15.12.2017 - 15.12.2023" - }, - { - "Code": "22412-0013", - "Content": "Pflegebedürftige (stationär): Bundesländer, Stichtag,\nGeschlecht, Altersgruppen", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0014", - "Content": "Personal der stationären Pflegeeinrichtungen: Bundesländer,\nStichtag, Beschäftigungsverhältnis", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0015", - "Content": "Personal der stationären Pflegeeinrichtungen: Bundesländer,\nStichtag, Geschlecht, Überwiegender Tätigkeitsbereich", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0016", - "Content": "Personal der stationären Pflegeeinrichtungen: Bundesländer,\nStichtag, Altersgruppen", - "Time": "15.12.2013 - 15.12.2023" - }, - { - "Code": "22421-0010", - "Content": "Pflegebedürftige: Bundesländer, Stichtag, Geschlecht,\nAltersgruppen, Art der Versorgung von Pflegebedürftigen", - "Time": "31.12.1999 - 31.12.2023" - }, - { - "Code": "22421-0011", - "Content": "Pflegebedürftige: Bundesländer, Stichtag, Pflegestufe/Pflegegrad", - "Time": "31.12.2017 - 31.12.2023" - }, - { - "Code": "22421-0012", - "Content": "Pflegequote: Bundesländer, Stichtag, Geschlecht,\nAltersgruppen", - "Time": "31.12.1999 - 31.12.2023" - }, - { - "Code": "22517-0005", - "Content": "Erzieherische Hilfen/Beratungen: Bundesländer, Jahre,\nGeschlecht, Altersjahre, Art der Hilfe", - "Time": "2008 - 2017" - }, - { - "Code": "22517-0006", - "Content": "Erzieherische Hilfen/Beratungen: Bundesländer, Jahre,\nGeschlecht, Migrationshintergrund, Art der Hilfe", - "Time": "2008 - 2017" - }, - { - "Code": "22518-0010", - "Content": "Verfahren zur Einschätzung der Kindeswohlgefährdung:\nBundesländer, Jahre, Gefährdungseinschätzung", - "Time": "2012 - 2023" - }, - { - "Code": "22518-0011", - "Content": "Verfahren zur Einschätzung der Kindeswohlgefährdung:\nBundesländer, Jahre, Gefährdungseinschätzung, Art der\nKindeswohlgefährdung", - "Time": "2012 - 2023" - }, - { - "Code": "22521-0020", - "Content": "Adoptierte Kinder und Jugendliche: Bundesländer, Jahre,\nGeschlecht", - "Time": "2010 - 2023" - }, - { - "Code": "22521-0021", - "Content": "Adoptierte Kinder und Jugendliche: Bundesländer, Jahre (bis\n2017), Altersgruppen", - "Time": "2010 - 2017" - }, - { - "Code": "22521-0022", - "Content": "Adoptierte Kinder und Jugendliche: Bundesländer, Jahre (bis\n2017), Nationalität, Art der Unterbringung vor der Adoption", - "Time": "2010 - 2017" - }, - { - "Code": "22522-0010", - "Content": "Kinder und Jugendliche: Bundesländer, Stichtag, Maßnahmen für Kinder und Jugendliche", - "Time": "31.12.2012 - 31.12.2023" - }, - { - "Code": "22522-0011", - "Content": "Tagespflegepersonen mit Pflegeerlaubnis: Bundesländer, Stichtag", - "Time": "31.12.2012 - 31.12.2023" - }, - { - "Code": "22522-0012", - "Content": "Sorgeerklärungen: Bundesländer, Jahre", - "Time": "2013 - 2023" - }, - { - "Code": "22522-0013", - "Content": "Maßnahmen des Familiengerichts bei Kindeswohlgefährdung:\nBundesländer, Jahre, Art der eingeleiteten Maßnahmen", - "Time": "2012 - 2023" - }, - { - "Code": "22523-0030", - "Content": "Vorläufige Schutzmaßnahmen für Kinder und Jugendliche:\nBundesländer, Jahre, Anlass der Maßnahme", - "Time": "2010 - 2023" - }, - { - "Code": "22523-0031", - "Content": "Vorläufige Schutzmaßnahmen für Kinder und Jugendliche:\nBundesländer, Jahre, Anregung der Maßnahme", - "Time": "2010 - 2022" - }, - { - "Code": "22541-0100", - "Content": "Tageseinrichtungen, Kinder, Genehmigte Plätze: Bundesländer,\nStichtag", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0101", - "Content": "Tageseinrichtungen: Bundesländer, Stichtag, Art des Trägers", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0102", - "Content": "Tageseinrichtungen: Bundesländer, Stichtag, Öffnungszeiten\nder Tageseinrichtung", - "Time": "01.03.2019 - 01.03.2024" - }, - { - "Code": "22541-0103", - "Content": "Tageseinrichtungen: Bundesländer, Stichtag, Altersgruppen\nder Kinder", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0104", - "Content": "Tätige Personen: Bundesländer, Stichtag, Arbeitsbereich", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0105", - "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Geschlecht", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0106", - "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Altersgruppen", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0107", - "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Höchster Berufsausbildungsabschluss", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0108", - "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Stellung im Beruf", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0109", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag, Art\ndes Trägers", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0110", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag,\nVertraglich vereinbarte Betreuungszeit", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0111", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag,\nGeschlecht", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0112", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag, Alter\nder Nichtschul- und Schulkinder", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0113", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag,\nHerkunft der Eltern", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0114", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag, In der\nFamilie vorrangig gesprochene Sprache", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22542-0003", - "Content": "Einrichtungen der Kinder- und Jugendhilfe, Genehmigte\nPlätze, Tätige Personen, Pädagogisches und\nVerwaltungspersonal: Bundesländer, Stichtag (bis 31.12.2020)", - "Time": "31.12.2010 - 31.12.2020" - }, - { - "Code": "22542-0004", - "Content": "Einrichtungen der Kinder- und Jugendhilfe: Bundesländer,\nStichtag (bis 31.12.2020), Art der Einrichtung", - "Time": "31.12.2010 - 31.12.2020" - }, - { - "Code": "22542-0019", - "Content": "Einrichtungen der Jugendhilfe, Gruppen, Soll-Stellen,\ngenehmigte Plätze, belegte Plätze: Bundesländer, Stichtag", - "Time": "15.12.2022 - 15.12.2022" - }, - { - "Code": "22543-0020", - "Content": "Kinder in öffentlich geförderter Kindertagespflege:\nBundesländer, Stichtag, Altersgruppen", - "Time": "01.03.2008 - 01.03.2024" - }, - { - "Code": "22543-0021", - "Content": "Kinder in öffentlich geförderter Kindertagespflege:\nBundesländer, Stichtag, Geschlecht, Migrationshintergrund", - "Time": "01.03.2012 - 01.03.2024" - }, - { - "Code": "22543-0022", - "Content": "Kinder in öffentlich geförderter Kindertagespflege:\nBundesländer, Stichtag, In der Familie vorrangig\ngesprochene Sprache", - "Time": "01.03.2012 - 01.03.2024" - }, - { - "Code": "22543-0023", - "Content": "Tagespflegepersonen: Bundesländer, Stichtag, Geschlecht", - "Time": "01.03.2012 - 01.03.2024" - }, - { - "Code": "22543-0024", - "Content": "Tagespflegepersonen: Bundesländer, Stichtag, Altersgruppen", - "Time": "01.03.2012 - 01.03.2024" - }, - { - "Code": "22551-0003", - "Content": "Ausgaben (Auszahlungen) der Kinder- und Jugendhilfe: Bundesländer, Jahre, Ausgabenbereiche, Art der Hilfe, Art der Ausgaben", - "Time": "2009 - 2023" - }, - { - "Code": "22551-0004", - "Content": "Einnahmen (Einzahlungen) der Kinder- und Jugendhilfe:\nBundesländer, Jahre, Art der Hilfe, Art der Einnahmen", - "Time": "2009 - 2023" - }, - { - "Code": "22922-0020", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht", - "Time": "2009 - 2021" - }, - { - "Code": "22922-0021", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht", - "Time": "1. Quartal 2009 - 3. Quartal 2022" - }, - { - "Code": "22922-0022", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht, Erwerbstätigkeit", - "Time": "2009 - 2021" - }, - { - "Code": "22922-0023", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht, Erwerbstätigkeit", - "Time": "1. Quartal 2009 - 3. Quartal 2022" - }, - { - "Code": "22922-0024", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht, Grundlage der Berechnung des\nElterngeldanspruchs", - "Time": "2009 - 2021" - }, - { - "Code": "22922-0025", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht, Grundlage der Berechnung des\nElterngeldanspruchs", - "Time": "1. Quartal 2009 - 3. Quartal 2022" - }, - { - "Code": "22922-0026", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht, Höhe des monatlichen Elterngeldanspruchs", - "Time": "2009 - 2021" - }, - { - "Code": "22922-0027", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht, Höhe des monatlichen\nElterngeldanspruchs", - "Time": "1. Quartal 2009 - 3. Quartal 2022" - }, - { - "Code": "22922-0028", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre (bis 2014), Geschlecht, Bezugsdauer des Elterngeldes", - "Time": "2009 - 2014" - }, - { - "Code": "22922-0029", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale (bis 2.Q. 2015), Geschlecht, Bezugsdauer des\nElterngeldes", - "Time": "1. Quartal 2009 - 2. Quartal 2015" - }, - { - "Code": "22922-0030", - "Content": "Väterbeteiligung: Bundesländer, Jahre", - "Time": "2008 - 2021" - }, - { - "Code": "22922-0031", - "Content": "Väterbeteiligung: Bundesländer, Quartale", - "Time": "1. Quartal 2016 - 3. Quartal 2022" - }, - { - "Code": "22922-0111", - "Content": "Elterngeldempfänger: Bundesländer, Jahre, Geschlecht,\nErwerbstätigkeit", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0112", - "Content": "Elterngeldempfänger: Bundesländer, Quartale, Geschlecht,\nErwerbstätigkeit", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22922-0113", - "Content": "Elterngeldempfänger: Bundesländer, Jahre, Geschlecht,\nArt der Inanspruchnahme", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0114", - "Content": "Elterngeldempfänger: Bundesländer, Quartale, Geschlecht,\nArt der Inanspruchnahme", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22922-0115", - "Content": "Elterngeldempfänger: Bundesländer, Jahre, Geschlecht,\nArt der Inanspruchnahme, Höhe des monatlichen\nElterngeldanspruchs", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0116", - "Content": "Elterngeldempfänger: Bundesländer, Quartale, Geschlecht,\nArt der Inanspruchnahme, Höhe des monatlichen\nElterngeldanspruchs", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22922-0117", - "Content": "Durchschnittliche Höhe des Elterngeldanspruchs:\nBundesländer, Jahre, Geschlecht, Art der Inanspruchnahme,\nErwerbstätigkeit", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0118", - "Content": "Durchschnittliche Höhe des Elterngeldanspruchs:\nBundesländer, Quartale, Geschlecht, Art der Inanspruchnahme,\nErwerbstätigkeit", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22922-0119", - "Content": "Durchschnittliche voraussichtliche Elterngeld-Bezugsdauer:\nBundesländer, Jahre, Geschlecht, Art der Inanspruchnahme", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0120", - "Content": "Durchschnittliche voraussichtliche Elterngeld-Bezugsdauer:\nBundesländer, Quartale, Geschlecht, Art der Inanspruchnahme", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22923-0003", - "Content": "Betreuungsgeldempfänger: Bundesländer, Quartale (bis 4.Q. 2017), Nationalität", - "Time": "1. Quartal 2014 - 4. Quartal 2017" - }, - { - "Code": "22971-0050", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0051", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Haushaltstyp", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0052", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Haushaltsgröße", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0053", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Anbieter", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0054", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Art der Überlassung", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0055", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Dauer der Unterbringung", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "23131-0010", - "Content": "Krankenhauspatienten: Bundesländer, Jahre,\nHauptdiagnose ICD-10 (1-3-Steller Hierarchie)", - "Time": "2000 - 2023" - }, - { - "Code": "23131-0011", - "Content": "Krankenhauspatienten: Bundesländer, Jahre, Geschlecht,\nAltersgruppen, Hauptdiagnose ICD-10 (1-3-Steller Hierarchie)", - "Time": "2000 - 2023" - }, - { - "Code": "23131-0012", - "Content": "Krankenhauspatienten: Bundesländer, Jahre, Geschlecht,\nWohnort des Patienten", - "Time": "2000 - 2023" - }, - { - "Code": "23141-0010", - "Content": "Nebendiagnosen der vollstationären Patienten: Bundesländer,\nJahre, Nebendiagnosen ICD-10 (1-3-Steller Hierarchie)", - "Time": "2005 - 2023" - }, - { - "Code": "23141-0011", - "Content": "Nebendiagnosen der vollstationären Patienten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Nebendiagnosen ICD-10\n(1-3-Steller Hierarchie)", - "Time": "2005 - 2023" - }, - { - "Code": "23141-0110", - "Content": "Operationen und Prozeduren an vollstationären Patienten:\nBundesländer, Jahre, Operationen und Prozeduren\n(1-4-Steller Hierarchie)", - "Time": "2005 - 2023" - }, - { - "Code": "23141-0111", - "Content": "Operationen und Prozeduren an vollstationären Patienten:\nBundesländer, Jahre, Geschlecht, Altersgruppen, Operationen\nund Prozeduren (1-4-Steller Hierarchie)", - "Time": "2005 - 2023" - }, - { - "Code": "23311-0005", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Jahre", - "Time": "1996 - 2023" - }, - { - "Code": "23311-0006", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Jahre,\nFamilienstand/Herkunfts-Bundesland oder Ausland", - "Time": "1996 - 2023" - }, - { - "Code": "23311-0007", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Jahre,\nFamilienstand, Herkunfts-Bundesland oder Ausland", - "Time": "1996 - 2023" - }, - { - "Code": "23311-0008", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Quartale", - "Time": "1. Quartal 1996 - 3. Quartal 2024" - }, - { - "Code": "23311-0009", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Quartale,\nFamilienstand/Herkunfts-Bundesland oder Ausland", - "Time": "1. Quartal 1996 - 3. Quartal 2024" - }, - { - "Code": "23311-0010", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Quartale,\nFamilienstand, Herkunfts-Bundesland oder Ausland", - "Time": "1. Quartal 1996 - 3. Quartal 2024" - }, - { - "Code": "24111-0001", - "Content": "Gerichte: Bundesländer, Stichtag (bis 31.12.2012), Gerichtsart", - "Time": "31.12.2000 - 31.12.2012" - }, - { - "Code": "24211-0010", - "Content": "Von der Staats- und Amtsanwaltschaft erledigte\nErmittlungsverfahren: Bundesländer, Jahre, Sachgebiete", - "Time": "2018 - 2023" - }, - { - "Code": "24211-0011", - "Content": "Von der Staats- und Amtsanwaltschaft erledigte\nErmittlungsverfahren: Bundesländer, Jahre,\nEinleitungsbehörde", - "Time": "2018 - 2023" - }, - { - "Code": "24211-0012", - "Content": "Ermittlungsverfahren: Bundesländer, Jahre, Zuständigkeit,\nStand der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24221-0010", - "Content": "Vor dem Amtsgericht erledigte Strafverfahren: Bundesländer,\nJahre, Sachgebiete", - "Time": "2017 - 2023" - }, - { - "Code": "24221-0011", - "Content": "Strafverfahren vor dem Amtsgericht: Bundesländer, Jahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24231-0010", - "Content": "Vor dem Amtsgericht erledigte Verfahren in Zivilsachen:\nBundesländer, Jahre, Art der Erledigung, Sachgebiete", - "Time": "2017 - 2023" - }, - { - "Code": "24231-0011", - "Content": "Zivilsachen vor dem Amtsgericht: Bundesländer, Jahre, Stand\nder Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24241-0010", - "Content": "Vor dem Amtsgericht erledigte Verfahren in Familiensachen:\nBundesländer, Jahre, Art der Erledigung", - "Time": "2014 - 2023" - }, - { - "Code": "24241-0011", - "Content": "Familiensachen vor dem Amtsgericht: Bundesländer, Jahre,\nStand der Erledigung", - "Time": "2014 - 2023" - }, - { - "Code": "24251-0010", - "Content": "Vor dem Verwaltungsgericht erledigte Hauptverfahren:\nBundesländer, Jahre, Art der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24251-0011", - "Content": "Hauptverfahren vor dem Verwaltungsgericht: Bundesländer,\nJahre, Stand der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24251-0012", - "Content": "Eilverfahren vor dem Verwaltungsgericht: Bundesländer,\nJahre, Stand der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24261-0010", - "Content": "Vor dem Finanzgericht erledigte Klagen: Bundesländer, Jahre,\nArt der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24261-0011", - "Content": "Klagen vor dem Finanzgericht: Bundesländer, Jahre, Stand der\nErledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24271-0010", - "Content": "Vor dem Sozialgericht erledigte Klageverfahren:\nBundesländer, Jahre, Art der Erledigung, Sachgebiete", - "Time": "2017 - 2023" - }, - { - "Code": "24271-0011", - "Content": "Klageverfahren vor dem Sozialgericht: Bundesländer, Jahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24271-0012", - "Content": "Eilverfahren vor dem Sozialgericht: Bundesländer, Jahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24281-0010", - "Content": "Vor dem Arbeitsgericht erledigte Urteilsverfahren:\nBundesländer, Jahre, Art der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24281-0011", - "Content": "Urteilsverfahren vor dem Arbeitsgericht: Bundesländer,\nJahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24281-0012", - "Content": "Beschlussverfahren vor dem Arbeitsgericht: Deutschland,\nJahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24321-0002", - "Content": "Strafgefangene und Sicherungsverwahrte: Bundesländer,\nStichtag, Nationalität, Geschlecht, Altersgruppen, Art des\nVollzugs", - "Time": "31.03.2017 - 31.03.2024" - }, - { - "Code": "24321-0003", - "Content": "Justizvollzugsanstalten, Belegungskapazität, Belegung:\nBundesländer, Stichtag", - "Time": "31.12.1999 - 30.11.2015" - }, - { - "Code": "31111-0100", - "Content": "Baugenehmigungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Gebäudeart", - "Time": "2008 - 2024" - }, - { - "Code": "31111-0101", - "Content": "Baugenehmigungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Bauherr", - "Time": "2008 - 2024" - }, - { - "Code": "31111-0102", - "Content": "Baugenehmigungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Gebäudeart", - "Time": "2015 - 2024" - }, - { - "Code": "31111-0103", - "Content": "Baugenehmigungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Bauherr", - "Time": "2015 - 2024" - }, - { - "Code": "31111-0104", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Energieverwendung, Energieart", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0105", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Überwiegend verwendeter Baustoff", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0106", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Art der Beheizung", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0107", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Geschosszahl", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0108", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Haustyp", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0109", - "Content": "Baugenehmigungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Gebäudeart, Anzahl der Räume", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0110", - "Content": "Baugenehmigungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Bauherr, Anzahl der Räume", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0120", - "Content": "Baugenehmigungen im Hochbau: Bundesländer, Monate,\nBautätigkeiten, Gebäudeart", - "Time": "Januar 2003 - Januar 2025" - }, - { - "Code": "31111-0121", - "Content": "Baugenehmigungen im Hochbau: Bundesländer, Monate,\nBautätigkeiten, Bauherr", - "Time": "Januar 2003 - Januar 2025" - }, - { - "Code": "31111-0122", - "Content": "Baugenehmigungen im Fertigteilbau (Neubau): Bundesländer,\nMonate, Gebäudeart", - "Time": "Januar 2003 - Januar 2025" - }, - { - "Code": "31121-0100", - "Content": "Baufertigstellungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Gebäudeart", - "Time": "2008 - 2023" - }, - { - "Code": "31121-0101", - "Content": "Baufertigstellungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Bauherr", - "Time": "2008 - 2023" - }, - { - "Code": "31121-0102", - "Content": "Baufertigstellungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Gebäudeart", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0103", - "Content": "Baufertigstellungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Bauherr", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0104", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Energieverwendung, Energieart", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0105", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Überwiegend verwendeter Baustoff", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0106", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Art der Beheizung", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0107", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Geschosszahl", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0108", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Haustyp", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0109", - "Content": "Baufertigstellungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Gebäudeart, Anzahl der Räume", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0110", - "Content": "Baufertigstellungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Bauherr, Anzahl der Räume", - "Time": "2015 - 2023" - }, - { - "Code": "31131-0004", - "Content": "Bauüberhang an genehmigten Bauvorhaben im Hochbau: Bundesländer, Stichtag", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31131-0005", - "Content": "Bauüberhang an genehmigten Bauvorhaben im Hochbau: Bundesländer, Stichtag, Gebäudeart", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31131-0006", - "Content": "Bauüberhang an genehmigten Bauvorhaben im Hochbau: Bundesländer, Stichtag, Gebäudeart, Bauherr", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31141-0004", - "Content": "Abgang von Gebäuden/Gebäudeteilen im Hochbau: Bundesländer, Jahre", - "Time": "2015 - 2023" - }, - { - "Code": "31141-0005", - "Content": "Abgang von Gebäuden/Gebäudeteilen im Hochbau: Bundesländer, Jahre, Gebäudeart", - "Time": "2015 - 2023" - }, - { - "Code": "31141-0006", - "Content": "Abgang von Gebäuden/Gebäudeteilen im Hochbau: Bundesländer, Jahre, Gebäudeart, Eigentümer", - "Time": "2015 - 2023" - }, - { - "Code": "31231-0010", - "Content": "Wohnungen in Wohn- und Nichtwohngebäuden, Wohnfläche, Räume:\nBundesländer, Stichtag", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31231-0011", - "Content": "Wohnungen in Wohn- und Nichtwohngebäuden, Wohnfläche, Räume:\nBundesländer, Stichtag, Bestandsveränderungen", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31231-0012", - "Content": "Wohnungen in Wohn- und Nichtwohngebäuden: Bundesländer,\nStichtag, Anzahl der Räume", - "Time": "31.12.1995 - 31.12.2023" - }, - { - "Code": "31231-0013", - "Content": "Wohnungen in Wohn- und Nichtwohngebäuden: Bundesländer,\nStichtag, Anzahl der Räume, Bestandsveränderungen", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31231-0014", - "Content": "Wohngebäude, Wohnungen, Wohnfläche: Bundesländer, Stichtag,\nAnzahl der Wohnungen", - "Time": "31.12.1995 - 31.12.2023" - }, - { - "Code": "31231-0015", - "Content": "Wohngebäude, Wohnungen, Wohnfläche: Bundesländer, Stichtag,\nAnzahl der Wohnungen, Bestandsveränderungen", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31231-0016", - "Content": "Wohnungen in Nichtwohngebäuden, Wohnfläche: Bundesländer,\nStichtag, Bestandsveränderungen", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "32111-0010", - "Content": "Abfallentsorgung: Bundesländer, Jahre", - "Time": "2018 - 2022" - }, - { - "Code": "32111-0011", - "Content": "Abfallentsorgung: Bundesländer, Jahre, Anlagenart", - "Time": "2006 - 2022" - }, - { - "Code": "32121-0002", - "Content": "Aufkommen an Haushaltsabfällen: Bundesländer, Jahre", - "Time": "2004 - 2023" - }, - { - "Code": "32121-0003", - "Content": "Aufkommen an Haushaltsabfällen: Bundesländer, Jahre,\nAbfallarten", - "Time": "2004 - 2023" - }, - { - "Code": "32131-0003", - "Content": "Eingesammelte Transport- und Umverpackungen: Bundesländer,\nJahre, Verbleib der Verpackungen", - "Time": "2001 - 2020" - }, - { - "Code": "32136-0010", - "Content": "Unternehmen, Erfasste Verkaufsverpackungen von privaten\nEndverbrauchern: Bundesländer, Jahre", - "Time": "2010 - 2020" - }, - { - "Code": "32136-0011", - "Content": "Erfasste Verkaufsverpackungen von privaten Endverbrauchern:\nBundesländer, Jahre, Art der Verkaufsverpackungen", - "Time": "2010 - 2020" - }, - { - "Code": "32137-0010", - "Content": "Verkaufs-, Transport- und Umverpackungen, Pfandpflichtige\nEinweggetränkeverpackungen: Bundesländer, Jahre,\nVerwertungsarten, Art des Verpackungsmaterials", - "Time": "2022 - 2022" - }, - { - "Code": "32137-0011", - "Content": "Ausgesonderte Mehrwegverpackungen: Bundesländer, Jahre", - "Time": "2022 - 2022" - }, - { - "Code": "32141-0004", - "Content": "Bauschuttaufbereitungsanlagen, Asphaltmischanlagen:\nBundesländer, Jahre", - "Time": "2006 - 2022" - }, - { - "Code": "32151-0003", - "Content": "Abfallerzeuger, Abfallmengen (gefährliche Abfälle):\nBundesländer, Jahre", - "Time": "2006 - 2022" - }, - { - "Code": "32151-0005", - "Content": "Erzeuger von primär nachgewiesenen Abfallmengen,\nAbgegebene Abfallmenge an Entsorger (gefährliche Abfälle):\nBundesländer, Jahre (bis 2008)", - "Time": "2005 - 2008" - }, - { - "Code": "32161-0004", - "Content": "Betriebe, erzeugte Abfallmenge: Bundesländer, Jahre", - "Time": "2010 - 2022" - }, - { - "Code": "32211-0001", - "Content": "Wassergewinnung, Einwohner mit Anschluss an die öffentliche\nWasserversorgung, Wasserabgabe: Bundesländer, Jahre", - "Time": "2007 - 2022" - }, - { - "Code": "32211-0002", - "Content": "Wassergewinnung: Bundesländer, Jahre, Wasserarten", - "Time": "2007 - 2022" - }, - { - "Code": "32212-0001", - "Content": "An öffentliche Kanalisation angeschlossene Einwohner,\nSchmutzwasser: Bundesländer, Jahre, Art der\nAbwasserentsorgung", - "Time": "2013 - 2019" - }, - { - "Code": "32213-0001", - "Content": "Länge des Kanalnetzes, Abwasserbehandlungsanlagen,\nAngeschlossene Einwohnerwerte, Jahresabwassermenge,\nSchmutzwasser: Bundesländer, Jahre", - "Time": "2007 - 2022" - }, - { - "Code": "32213-0002", - "Content": "Abwasserbehandlungsanlagen, Angeschlossene Einwohnerwerte,\nJahresabwassermenge, Schmutzwasser: Bundesländer, Jahre,\nArt der Abwasserbehandlung", - "Time": "2007 - 2022" - }, - { - "Code": "32214-0001", - "Content": "Trockenmasse des aus Abwasserbehandlungsanlagen direkt\nentsorgten Klärschlamms: Bundesländer, Jahre,\nEntsorgungsarten des Klärschlamms", - "Time": "2006 - 2023" - }, - { - "Code": "32221-0001", - "Content": "Wasseraufkommen, Betriebe mit Wasseraufkommen: Bundesländer,\nJahre (bis 2019), Wassergewinnung und -bezug", - "Time": "2007 - 2019" - }, - { - "Code": "32221-0002", - "Content": "Wasseraufkommen: Bundesländer, Jahre (bis 2019),\nEigengewinnung und Fremdbezug", - "Time": "2007 - 2019" - }, - { - "Code": "32221-0003", - "Content": "Wasseraufkommen: Bundesländer, Jahre, Verwendungsarten", - "Time": "2007 - 2022" - }, - { - "Code": "32221-0004", - "Content": "Frischwassereinsatz: Bundesländer, Jahre, Wassernutzung", - "Time": "2007 - 2022" - }, - { - "Code": "32221-0005", - "Content": "Unbehandeltes Abwasser: Bundesländer, Jahre (bis 2019),\nAbwassereinleitungsarten", - "Time": "2007 - 2019" - }, - { - "Code": "32251-0001", - "Content": "Einwohner mit Anschluss an die öffentliche Kanalisation,\nEinwohner mit Anschluss an zentrale\nAbwasserbehandlungsanlagen: Bundesländer, Jahre", - "Time": "2007 - 2022" - }, - { - "Code": "32331-0020", - "Content": "Geprüfte Anlagen zum Umgang mit wassergefährdenden Stoffen:\nBundesländer, Jahre, Art der Prüfung", - "Time": "2018 - 2023" - }, - { - "Code": "32331-0021", - "Content": "Geprüfte Anlagen zum Umgang mit wassergefährdenden Stoffen:\nBundesländer, Jahre, Standort", - "Time": "2018 - 2023" - }, - { - "Code": "32331-0022", - "Content": "Geprüfte Anlagen zum Umgang mit wassergefährdenden Stoffen:\nBundesländer, Jahre, Ergebnis der Prüfung", - "Time": "2018 - 2023" - }, - { - "Code": "32421-0010", - "Content": "Verwendung, Einfuhr und Ausfuhr klimawirksamer Stoffe:\nBundesländer, Jahre, Stoffgruppen", - "Time": "2022 - 2023" - }, - { - "Code": "32421-0011", - "Content": "Verwendung, Einfuhr und Ausfuhr klimawirksamer Stoffe: Bundesländer, Jahre, Wirtschaftszweig des Unternehmens, Stoffgruppen", - "Time": "2022 - 2023" - }, - { - "Code": "32421-0012", - "Content": "Verwendung klimawirksamer Stoffe: Bundesländer, Jahre,\nStoffgruppen, Einsatzbereiche", - "Time": "2022 - 2023" - }, - { - "Code": "32421-0013", - "Content": "Verwendung klimawirksamer Stoffe: Bundesländer, Jahre,\nWirtschaftszweig des Unternehmens, Einsatzbereiche", - "Time": "2022 - 2023" - }, - { - "Code": "32531-0010", - "Content": "Einheiten, Beschäftigte, Umsatz im Bereich Umweltschutz:\nBundesländer, Jahre", - "Time": "2006 - 2022" - }, - { - "Code": "32531-0011", - "Content": "Umweltschutzbezogener Umsatz: Bundesländer, Jahre (bis\n2010), Umsatzarten", - "Time": "2006 - 2010" - }, - { - "Code": "32531-0012", - "Content": "Umweltschutzbezogener Umsatz: Bundesländer, Jahre,\nUmweltbereiche", - "Time": "2022 - 2022" - }, - { - "Code": "33111-0002", - "Content": "Bodenfläche (tatsächliche Nutzung): Bundesländer, Stichtag (bis 31.12.2015), Nutzungsarten (AdV-Nutzungsartenverzeichnis 1991)", - "Time": "31.12.1992 - 31.12.2015" - }, - { - "Code": "33111-0004", - "Content": "Siedlungs- und Verkehrsfläche: Bundesländer, Stichtag\n(bis 31.12.2015), Nutzungsarten\n(AdV-Nutzungsartenverzeichnis 1991)", - "Time": "31.12.1992 - 31.12.2015" - }, - { - "Code": "33111-0006", - "Content": "Bodenfläche (tatsächliche Nutzung): Bundesländer, Stichtag (bis 31.12.2022), Nutzungsarten (AdV-Nutzungsartenkatalog 2009)", - "Time": "31.12.2016 - 31.12.2022" - }, - { - "Code": "33111-0008", - "Content": "Bodenfläche: Bundesländer, Stichtag, Nutzungsarten\n(tatsächliche Nutzung) (AdV-TN 2023)", - "Time": "31.12.2023 - 31.12.2023" - }, - { - "Code": "41122-0005", - "Content": "Landwirtschaftliche Betriebe, Landwirtsch. genutzte Fläche\n(Rep. ASE): Bundesländer, Jahre (bis 2007), Rechtsform,\nGrößenklassen der landwirtschaftlich genutzten Fläche", - "Time": "1979 - 2007" - }, - { - "Code": "41122-0006", - "Content": "Arbeitskräfte (Rep. ASE): Bundesländer, Jahre (bis 2007),\nArbeitskräftegruppen, Geschlecht, Rechtsform, Größenklassen\nder landwirtschaftlich genutzten Fläche", - "Time": "1979 - 2007" - }, - { - "Code": "41122-0007", - "Content": "Betriebliche Arbeitsleistung (Rep. ASE): Bundesländer,\nJahre (bis 2007), Arbeitskräftegruppen, Rechtsform,\nGrößenklassen der landwirtschaftlich genutzten Fläche", - "Time": "1979 - 2007" - }, - { - "Code": "41122-0008", - "Content": "Betriebliche Arbeitsleistung (Rep. ASE): Bundesländer,\nJahre (bis 1995), Arbeitskräftegruppen, Geschlecht,\nRechtsform, Größenklassen der landwirtsch. genutzten Fläche", - "Time": "1979 - 1995" - }, - { - "Code": "41141-0101", - "Content": "Landwirtschaftliche Betriebe, Fläche: Bundesländer, Jahre,\nBodennutzungsarten", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0102", - "Content": "Landwirtschaftliche Betriebe, Fläche: Bundesländer, Jahre,\nBodennutzungsarten, Größenklassen der landwirtschaftlich\ngenutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0103", - "Content": "Landwirtschaftliche Betriebe mit Ackerland, Fläche:\nBundesländer, Jahre, Ackerkulturen, Größenklassen des\nAckerlandes", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0104", - "Content": "Landwirtschaftliche Betriebe mit Viehhaltung, Viehbestand:\nBundesländer, Stichtag, Tierarten", - "Time": "01.03.2010 - 01.03.2023" - }, - { - "Code": "41141-0105", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nLandwirtschaftlich genutzte Fläche: Bundesländer, Jahre,\nGrößenklassen der landwirtschaftlich genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0106", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nLandwirtschaftlich genutzte Fläche (LF): Bundesländer,\nJahre, Betriebswirtschaftliche Ausrichtung", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0107", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nFläche, Ökologisch bewirtschaftete Fläche: Bundesländer,\nJahre, Bodennutzungsarten", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0108", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nTiere in Betrieben mit ökologischem Landbau, Tiere in\nökologischer Haltung: Bundesländer, Stichtag, Tierarten", - "Time": "01.03.2010 - 01.03.2023" - }, - { - "Code": "41141-0109", - "Content": "Landwirtschaftliche Betriebe, Landwirtsch. genutzte Fläche,\nFläche im jew. Eigentumsverhältnis: Bundesländer, Jahre,\nEigentumsverhältnisse, Rechtsformen, Größenklassen der LF", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0110", - "Content": "Landwirtschaftliche Betriebe mit gepachteten Flächen, Pachtentgelt: Bundesländer, Jahre, Bodennutzungsarten, Rechtsformen, Größenklassen der landw. genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0111", - "Content": "Landwirtschaftliche Betriebe, Fläche: Bundesländer, Jahre,\nBodennutzungsarten, Rechtsformen, Größenklassen der\nlandwirtschaftlich genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0112", - "Content": "Landwirtschaftliche Betriebe, Tiere: Bundesländer, Stichtag,\nTierarten, Rechtsformen, Größenklassen der\nlandwirtschaftlich genutzten Fläche", - "Time": "01.03.2010 - 01.03.2023" - }, - { - "Code": "41141-0113", - "Content": "Landwirtschaftliche Betriebe, Landwirtschaftlich genutzte\nFläche, Arbeitskräfte, Arbeitsleistung: Bundesländer, Jahre,\nRechtsformen, Größenklassen der landwirt. genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0114", - "Content": "Landwirtschaftliche Betriebe: Bundesländer, Jahre,\nGrößenklassen des Standardoutputs, Rechtsformen,\nBetriebswirtschaftliche Ausrichtung", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0115", - "Content": "Landwirtschaftliche Betriebe mit Bewässerung, Bewässerte\nFläche: Bundesländer, Jahre, Größenklassen der\nlandwirtschaftlich genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0116", - "Content": "Landwirtschaftliche Betriebe mit Dauerkulturen,\nDauerkulturfläche: Bundesländer, Jahre, Dauerkulturarten,\nGrößenklassen der Dauerkulturen", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0117", - "Content": "Landwirtschaftliche Betriebe mit Dauergrünland, Dauergrünlandfläche: Bundesländer, Jahre, Dauergrünlandarten, Größenklassen der Dauergrünlandfläche", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0118", - "Content": "Landwirtschaftliche Betriebe mit Viehhaltung, Viehbestand,\nLandwirtschaftlich genutzte Fläche: Bundesländer, Stichtag,\nTierarten, Bestandsgrößenklassen", - "Time": "01.03.2020 - 01.03.2023" - }, - { - "Code": "41141-0119", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau, LF:\nBundesländer, Jahre, Umfang der ökologischen\nBewirtschaftung, Größenklassen der LF", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0120", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau, LF:\nBundesländer, Jahre, Umfang der ökologischen\nBewirtschaftung, Betriebswirtschaftliche Ausrichtung", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0121", - "Content": "Landwirtschaftliche Betriebe mit ökologischer Viehhaltung:\nBundesländer, Stichtag, Größenklassen der LF", - "Time": "01.03.2020 - 01.03.2023" - }, - { - "Code": "41141-0122", - "Content": "Landwirtschaftliche Betriebe mit ökologischer Viehhaltung:\nBundesländer, Stichtag, Betriebswirtschaftliche Ausrichtung", - "Time": "01.03.2020 - 01.03.2023" - }, - { - "Code": "41141-0123", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau und\nPacht, Gepachtete LF, Pachtentgelt: Bundesländer, Jahre,\nGrößenklassen der LF", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0124", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau und\nPacht, Gepachtete LF, Pachtentgelt: Bundesländer, Jahre,\nBetriebswirtschaftliche Ausrichtung", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0125", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau, LF,\nArbeitskräfte, Arbeitsleistung: Bundesländer, Jahre,\nRechtsformen, Größenklassen der LF", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0126", - "Content": "Landw. Betriebe mit Angabe des Jahrespachtentgeltes,\nGepachtete LF: Bundesländer, Jahre, Bodennutzungsarten,\nRechtsformen, Größenklassen des durch. Jahrespachtentgeltes", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0127", - "Content": "Arbeitskräfte: Bundesländer, Jahre, Geschlecht,\nAltersgruppen, Rechtsformen, Art der Arbeitskräfte,\nBeschäftigungsumfang", - "Time": "2020 - 2023" - }, - { - "Code": "41145-0011", - "Content": "Betriebe, Nutzfläche (Gartenbau): Bundesländer, Jahre,\nBetriebsarten, Größenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0012", - "Content": "Gartenbaubetriebe, Nutzfläche: Bundesländer, Jahre,\nBetrieblicher Schwerpunkt der Gartenbaubetriebe,\nGrößenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0013", - "Content": "Gartenbaubetriebe mit Schwerpunkt Erzeugung, Nutzfläche:\nBundesländer, Jahre, Betriebstypen, Größenklassen der\ngärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0014", - "Content": "Gartenbaubetriebe mit Schwerpunkt Handel u.Dienstleistungen:\nBundesländer, Jahre, Betriebstypen, Größenklassen der\ngärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0015", - "Content": "Arbeitskräfte in Gartenbaubetrieben: Bundesländer, Jahre,\nBetriebl. Schwerpunkt der Gartenbaubetriebe, Beschäftigungs-\numfang, Größenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0016", - "Content": "Familienarbeitskräfte, Betriebliche Arbeitsleistung in\nGartenbaubetrieben:Bundesländer, Jahre, Betriebl.Schwerpunkt\nder Gartenbaubetriebe, Größenklassen der gärtn. Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0017", - "Content": "Arbeitskräfte in Gartenbaubetrieben mit Schwerpunkt\nErzeugung: Bundesländer, Jahre, Betriebstypen, Größenklassen\nder gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0018", - "Content": "Betriebe mit Anbau von Gartenbauerzeugnissen, Anbauflächen:\nBundesländer, Jahre, Größenklassen der gärtnerischen\nNutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0019", - "Content": "Betriebe mit Anbau v.Gartenbauerzeugnissen und Flächen unter\nGlas und/oder abgedeckten Freilandflächen: Bundesländer,\nJahre, Größenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0020", - "Content": "Betriebe (Einzelunternehmen) mit Anbau von Gartenbau-\nerzeugnissen: Bundesländer, Jahre, Betriebsform,\nGrößenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41161-0010", - "Content": "Waldfläche: Bundesländer, Jahre, Waldeigentumsarten", - "Time": "2022 - 2022" - }, - { - "Code": "41161-0011", - "Content": "Forsteinheiten, Waldfläche: Bundesländer, Jahre,\nWaldeigentumsarten, Größenklassen der Waldfläche", - "Time": "2022 - 2022" - }, - { - "Code": "41213-0008", - "Content": "Betriebe mit Grundflächen des Zierpflanzenanbaus:\nBundesländer, Jahre, Anbauform, Verwendungszweck", - "Time": "2008 - 2021" - }, - { - "Code": "41213-0009", - "Content": "Betriebe mit Erzeugung von Zimmerpflanzen: Bundesländer,\nJahre, Verwendungszweck, Pflanzenarten", - "Time": "2008 - 2021" - }, - { - "Code": "41213-0010", - "Content": "Betriebe mit Erzeugung von Beet- und Balkonpflanzen und\nStauden: Bundesländer, Jahre, Verwendungszweck,\nPflanzenarten", - "Time": "2008 - 2021" - }, - { - "Code": "41213-0011", - "Content": "Betriebe mit Anbauflächen von Schnittblumen: Bundesländer,\nJahre, Anbauform, Pflanzenarten", - "Time": "2008 - 2021" - }, - { - "Code": "41215-0010", - "Content": "Betriebe mit Gemüseanbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre", - "Time": "2010 - 2024" - }, - { - "Code": "41215-0011", - "Content": "Betriebe mit Gemüseanbau im Freiland, Anbaufläche, Erntemenge: Bundesländer, Jahre, Gemüsearten", - "Time": "2010 - 2024" - }, - { - "Code": "41215-0012", - "Content": "Betriebe mit Gemüseanbau unter Schutzabdeckungen, Anbaufläche, Erntemenge: Bundesländer, Jahre, Gemüsearten", - "Time": "2010 - 2024" - }, - { - "Code": "41215-0013", - "Content": "Betriebe mit Gemüseanbau (vollständig ökologisch), Anbaufläche, Erntemenge: Bundesländer, Jahre", - "Time": "2023 - 2024" - }, - { - "Code": "41215-0014", - "Content": "Betriebe mit Erdbeeranbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre, Anbauform", - "Time": "2006 - 2024" - }, - { - "Code": "41215-0015", - "Content": "Betriebe mit Erdbeeranbau (vollständig ökologisch), Anbaufläche, Erntemenge: Bundesländer, Jahre, Anbauform", - "Time": "2012 - 2024" - }, - { - "Code": "41221-0010", - "Content": "Betriebe mit Baumschulen, Baumschulfläche: Bundesländer,\nJahre, Art der Anbaufläche, Nutzungsarten", - "Time": "2017 - 2021" - }, - { - "Code": "41231-0010", - "Content": "Betriebe mit Baumobstflächen: Bundesländer, Jahre, Baumobstarten", - "Time": "1972 - 2022" - }, - { - "Code": "41231-0011", - "Content": "Betriebe mit Baumobstflächen, Anbaufläche: Bundesländer,\nJahre, Tafel-Kernobstarten, Pflanzdichteklassen", - "Time": "2022 - 2022" - }, - { - "Code": "41231-0012", - "Content": "Betriebe mit Baumobstflächen, Anbaufläche: Bundesländer,\nJahre, Verwertungs-Kernobstarten, Pflanzdichteklassen", - "Time": "2022 - 2022" - }, - { - "Code": "41231-0013", - "Content": "Betriebe mit Baumobstflächen, Anbaufläche: Bundesländer,\nJahre, Kernobstarten, Alter der Bäume", - "Time": "2022 - 2022" - }, - { - "Code": "41231-0014", - "Content": "Anbaufläche, Bäume (Baumobstanbau): Bundesländer, Jahre,\nBaumobstarten", - "Time": "1972 - 2022" - }, - { - "Code": "41232-0010", - "Content": "Betriebe mit Strauchbeerenanbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre", - "Time": "2012 - 2024" - }, - { - "Code": "41232-0011", - "Content": "Betriebe mit Strauchbeerenanbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre, Anbauform, Strauchbeerenart", - "Time": "2012 - 2024" - }, - { - "Code": "41232-0012", - "Content": "Erntemenge (Strauchbeeren): Bundesländer, Jahre, Art der\nVerwendung", - "Time": "2012 - 2024" - }, - { - "Code": "41232-0013", - "Content": "Betriebe mit ökologischem Strauchbeerenanbau, Ökologische Anbaufläche, Ökologisch erzeugte Erntemenge: Bundesländer, Jahre", - "Time": "2012 - 2024" - }, - { - "Code": "41232-0014", - "Content": "Betriebe mit ökologischem Strauchbeerenanbau, Ökologische\nAnbaufläche, Ökologisch erzeugte Erntemenge: Bundesländer,\nJahre, Anbauform, Strauchbeerenart", - "Time": "2012 - 2024" - }, - { - "Code": "41241-0010", - "Content": "Anbaufläche, Erntemenge, Ertrag je Hektar (Feldfrüchte und\nGrünland): Bundesländer, Jahre, Fruchtarten", - "Time": "2010 - 2024" - }, - { - "Code": "41241-0011", - "Content": "Erntemenge von Raufutter: Bundesländer, Jahre, Fruchtarten,\nVerwendungszweck", - "Time": "2010 - 2024" - }, - { - "Code": "41243-0010", - "Content": "Anbaufläche, Erntemenge (Baumobst): Bundesländer, Jahre,\nBaumobstarten", - "Time": "2005 - 2024" - }, - { - "Code": "41243-0011", - "Content": "Erntemenge (Baumobst): Bundesländer, Jahre, Baumobstarten,\nArt der Verwendung", - "Time": "2007 - 2024" - }, - { - "Code": "41243-0012", - "Content": "Anbaufläche, Erntemenge (Baumobst): Bundesländer, Jahre,\nApfelsorten", - "Time": "2007 - 2024" - }, - { - "Code": "41244-0010", - "Content": "Rebfläche im Ertrag, Weinmostertrag je Hektar, Erntemenge an Weinmost: Bundesländer, Jahre, Art des Weinmosts", - "Time": "2019 - 2024" - }, - { - "Code": "41244-0011", - "Content": "Rebfläche im Ertrag, Weinmostertrag je Hektar, Erntemenge an Weinmost: Bundesländer, Jahre, Rebsorte", - "Time": "2019 - 2024" - }, - { - "Code": "41244-0012", - "Content": "Erntemenge an Weinmost, Durchschnittliches Mostgewicht:\nBundesländer, Jahre, Art des Weinmosts, Mostqualität", - "Time": "2019 - 2024" - }, - { - "Code": "41244-0013", - "Content": "Erntemenge an Weinmost, Durchschnittliches Mostgewicht:\nBundesländer, Jahre, Rebsorte, Mostqualität", - "Time": "2019 - 2024" - }, - { - "Code": "41252-0010", - "Content": "Mit Keltertrauben bestockte Rebfläche: Bundesländer, Jahre,\nRebsorte", - "Time": "1991 - 2024" - }, - { - "Code": "41253-0010", - "Content": "Erntemenge an Weinmost, Weinmostertrag je Hektar, Rebfläche\nim Ertrag: Bundesländer, Jahre, Art des Weinmosts", - "Time": "1991 - 2024" - }, - { - "Code": "41253-0011", - "Content": "Erntemenge an Weinmost, Weinmostertrag je Hektar, Rebfläche\nim Ertrag: Bundesländer, Jahre, Rebsorte", - "Time": "2022 - 2024" - }, - { - "Code": "41253-0012", - "Content": "Erntemenge an Weinmost: Bundesländer, Jahre, Mostqualität,\nArt des Weinmosts", - "Time": "2022 - 2024" - }, - { - "Code": "41253-0013", - "Content": "Erntemenge an Weinmost: Bundesländer, Jahre, Mostqualität,\nRebsorte", - "Time": "2022 - 2024" - }, - { - "Code": "41254-0003", - "Content": "Erzeugter Wein: Bundesländer, Jahre, Rebsorte,\nWeinkategorien", - "Time": "2010 - 2024" - }, - { - "Code": "41255-0010", - "Content": "Weinbestand: Bundesländer, Jahre, Rebsorte", - "Time": "1991 - 2024" - }, - { - "Code": "41255-0011", - "Content": "Weinbestand: Bundesländer, Jahre, Rebsorte, Bestandsort,\nHerkunft des Weins", - "Time": "2021 - 2024" - }, - { - "Code": "41255-0012", - "Content": "Weinbestand: Bundesländer, Jahre, Rebsorte, Bestandsort,\nKategorien des Bezeichnungsschutzes", - "Time": "2021 - 2024" - }, - { - "Code": "41255-0013", - "Content": "Bestand an Schaumwein: Bundesländer, Jahre, Bestandsort, Herkunft des Weins", - "Time": "2021 - 2024" - }, - { - "Code": "41255-0014", - "Content": "Bestand an Traubenmost: Bundesländer, Jahre, Bestandsort,\nRebsorte", - "Time": "2023 - 2024" - }, - { - "Code": "41261-0010", - "Content": "Holzeinschlag: Bundesländer, Jahre, Holzartengruppen", - "Time": "1998 - 2023" - }, - { - "Code": "41261-0011", - "Content": "Holzeinschlag: Bundesländer, Jahre, Holzsorten, Holzartengruppen, Waldeigentumsarten", - "Time": "2006 - 2023" - }, - { - "Code": "41261-0012", - "Content": "Schadholzeinschlag: Bundesländer, Jahre, Einschlagsursache,\nHolzartengruppen, Waldeigentumsarten", - "Time": "2006 - 2023" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/xy_variable1/api/catalogue/timeseries2variable-86e7c4-1f2606-POST.json b/tests/testthat/xy_variable1/api/catalogue/timeseries2variable-86e7c4-1f2606-POST.json deleted file mode 100644 index 930660e..0000000 --- a/tests/testthat/xy_variable1/api/catalogue/timeseries2variable-86e7c4-1f2606-POST.json +++ /dev/null @@ -1,4023 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "timeseries2variable" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "DLAND", - "selection": "", - "area": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "11111LJ001", - "Content": "Feststellung des Gebietsstands, Gebietsfläche, Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2022", - "LatestUpdate": "14.12.2023 10:12:15h", - "Information": "false" - }, - { - "Code": "12211LJ001", - "Content": "Mikrozensus, Bevölkerung, Erwerbspersonen, Erwerbstätige, Erwerbslose, Nichterwerbspersonen, Bundesländer, Stichmonat", - "State": "undefiniert", - "Time": "04/1991-03/2004", - "LatestUpdate": "22.03.2005 11:46:17h", - "Information": "false" - }, - { - "Code": "12211LJ002", - "Content": "Mikrozensus, Privathaushalte, Bundesländer, Stichmonat", - "State": "undefiniert", - "Time": "05/1970-03/2004", - "LatestUpdate": "09.11.2020 11:43:47h", - "Information": "false" - }, - { - "Code": "12211LJ003", - "Content": "Mikrozensus, Privathaushalte, Bundesländer, Haushaltsgröße, Stichmonat", - "State": "undefiniert", - "Time": "04/1991-03/2004", - "LatestUpdate": "09.11.2020 11:44:19h", - "Information": "false" - }, - { - "Code": "12211LJ004", - "Content": "Mikrozensus, Bevölkerung in Familien/Lebensformen, Bundesländer, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "09.11.2020 11:46:13h", - "Information": "false" - }, - { - "Code": "12211LJ005", - "Content": "Mikrozensus, Bevölkerung in Familien/Lebensformen, Bundesländer, Lebensformen, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "09.11.2020 11:46:47h", - "Information": "false" - }, - { - "Code": "12211LJ006", - "Content": "Mikrozensus, Familien, Bundesländer, Vorhandensein von Kindern, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "09.11.2020 11:47:04h", - "Information": "false" - }, - { - "Code": "12211LJ007", - "Content": "Mikrozensus, Paare, Bundesländer, Vorhandensein von Kindern, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "09.11.2020 11:47:17h", - "Information": "false" - }, - { - "Code": "12211LJ008", - "Content": "Mikrozensus, Ehepaare, Lebensgemeinschaften, Gemischtgeschlechtliche Lebensgemeinschaften, Bundesländer, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "09.11.2020 11:47:33h", - "Information": "false" - }, - { - "Code": "12211LJ009", - "Content": "Mikrozensus, Ehepaare, Lebensgemeinschaften, Gemischtgeschlechtliche Lebensgemeinschaften, Bundesländer, Vorhandensein von Kindern, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "09.11.2020 11:48:49h", - "Information": "false" - }, - { - "Code": "12211LJ010", - "Content": "Mikrozensus, Alleinerziehende, Bundesländer, Vorhandensein von Kindern, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "09.11.2020 11:49:06h", - "Information": "false" - }, - { - "Code": "12211LJ011", - "Content": "Mikrozensus, Alleinerziehende, Bundesländer, Vorhandensein von Kindern, Geschlecht, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "17.06.2021 16:45:09h", - "Information": "false" - }, - { - "Code": "12211LJ012", - "Content": "Mikrozensus, Alleinstehende, Bundesländer, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "09.11.2020 11:50:28h", - "Information": "false" - }, - { - "Code": "12211LJ013", - "Content": "Mikrozensus, Alleinstehende, Bundesländer, Geschlecht, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "09.11.2020 11:51:03h", - "Information": "false" - }, - { - "Code": "12211LJ014", - "Content": "Mikrozensus, Alleinstehende, Bundesländer, Haushaltsgröße, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "09.11.2020 11:52:36h", - "Information": "false" - }, - { - "Code": "12211LJ015", - "Content": "Mikrozensus, Alleinstehende, Bundesländer, Haushaltsgröße, Geschlecht, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "09.11.2020 11:52:53h", - "Information": "false" - }, - { - "Code": "12211LJ016", - "Content": "Mikrozensus, Ledige Kinder in der Familie, Ledige Kinder unter 18 Jahren in der Familie, Bundesländer, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "09.11.2020 11:53:13h", - "Information": "false" - }, - { - "Code": "12211LJ017", - "Content": "Mikrozensus, Ledige Kinder in der Familie, Ledige Kinder unter 18 Jahren in der Familie, Bundesländer, Familienformen, Stichmonat", - "State": "undefiniert", - "Time": "04/1996-03/2004", - "LatestUpdate": "09.11.2020 11:53:34h", - "Information": "false" - }, - { - "Code": "12211LJ018", - "Content": "Mikrozensus, Bevölkerung, Erwerbspersonen, Erwerbstätige, Erwerbslose, Nichterwerbspersonen, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:32:58h", - "Information": "false" - }, - { - "Code": "12211LJ019", - "Content": "Mikrozensus, Bevölkerung (ab 15 Jahren), Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "25.11.2020 16:54:17h", - "Information": "false" - }, - { - "Code": "12211LJ020", - "Content": "Mikrozensus, Bevölkerung (ab 15 Jahren), Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "25.11.2020 16:54:15h", - "Information": "false" - }, - { - "Code": "12211LJ021", - "Content": "Mikrozensus, Bevölkerung (ab 15 Jahren), Bundesländer, Allgemeine Schulausbildung, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "25.11.2020 16:54:16h", - "Information": "false" - }, - { - "Code": "12211LJ022", - "Content": "Mikrozensus, Bevölkerung (ab 15 Jahren), Bundesländer, Geschlecht, Allgemeine Schulausbildung, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "25.11.2020 16:54:11h", - "Information": "false" - }, - { - "Code": "12211LJ023", - "Content": "Mikrozensus, Bevölkerung (ab 15 Jahren), Bundesländer, Beruflicher Bildungsabschluss, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "25.11.2020 16:54:14h", - "Information": "false" - }, - { - "Code": "12211LJ024", - "Content": "Mikrozensus, Bevölkerung (ab 15 Jahren), Bundesländer, Geschlecht, Beruflicher Bildungsabschluss, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "25.11.2020 16:54:13h", - "Information": "false" - }, - { - "Code": "12211LJ025", - "Content": "Mikrozensus, Privathaushalte, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:44:43h", - "Information": "false" - }, - { - "Code": "12211LJ026", - "Content": "Mikrozensus, Privathaushalte, Bundesländer, Haushaltsgröße, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:45:05h", - "Information": "false" - }, - { - "Code": "12211LJ027", - "Content": "Mikrozensus, Bevölkerung in Familien/Lebensformen, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:53:58h", - "Information": "false" - }, - { - "Code": "12211LJ028", - "Content": "Mikrozensus, Bevölkerung in Familien/Lebensformen, Bundesländer, Lebensformen, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:54:40h", - "Information": "false" - }, - { - "Code": "12211LJ029", - "Content": "Mikrozensus, Familien, Bundesländer, Vorhandensein von Kindern, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:54:54h", - "Information": "false" - }, - { - "Code": "12211LJ030", - "Content": "Mikrozensus, Paare, Bundesländer, Vorhandensein von Kindern, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:55:15h", - "Information": "false" - }, - { - "Code": "12211LJ031", - "Content": "Mikrozensus, Ehepaare, Lebensgemeinschaften, Gemischtgeschlechtliche Lebensgemeinschaften, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:55:36h", - "Information": "false" - }, - { - "Code": "12211LJ032", - "Content": "Mikrozensus, Ehepaare, Lebensgemeinschaften, Gemischtgeschlechtliche Lebensgemeinschaften, Bundesländer, Vorhandensein von Kindern, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:56:00h", - "Information": "false" - }, - { - "Code": "12211LJ033", - "Content": "Mikrozensus, Alleinerziehende, Bundesländer, Vorhandensein von Kindern, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:56:14h", - "Information": "false" - }, - { - "Code": "12211LJ034", - "Content": "Mikrozensus, Alleinerziehende, Bundesländer, Vorhandensein von Kindern, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:56:32h", - "Information": "false" - }, - { - "Code": "12211LJ035", - "Content": "Mikrozensus, Alleinstehende, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:57:58h", - "Information": "false" - }, - { - "Code": "12211LJ036", - "Content": "Mikrozensus, Alleinstehende, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:58:56h", - "Information": "false" - }, - { - "Code": "12211LJ037", - "Content": "Mikrozensus, Alleinstehende, Bundesländer, Haushaltsgröße, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 11:59:13h", - "Information": "false" - }, - { - "Code": "12211LJ038", - "Content": "Mikrozensus, Alleinstehende, Bundesländer, Haushaltsgröße, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 12:00:39h", - "Information": "false" - }, - { - "Code": "12211LJ039", - "Content": "Mikrozensus, Ledige Kinder in der Familie, Ledige Kinder unter 18 Jahren in der Familie, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 12:00:56h", - "Information": "false" - }, - { - "Code": "12211LJ040", - "Content": "Mikrozensus, Ledige Kinder in der Familie, Ledige Kinder unter 18 Jahren in der Familie, Bundesländer, Familienformen, Jahr", - "State": "undefiniert", - "Time": "2005-2019", - "LatestUpdate": "09.11.2020 12:01:10h", - "Information": "false" - }, - { - "Code": "12211LJ041", - "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "28.03.2024 15:20:37h", - "Information": "false" - }, - { - "Code": "12211LJ042", - "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "28.03.2024 15:20:34h", - "Information": "false" - }, - { - "Code": "12211LJ043", - "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Altersgruppen (u25-65m), Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "28.03.2024 15:20:27h", - "Information": "false" - }, - { - "Code": "12211LJ044", - "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Art der Gemeinschaftsunterkunft, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "28.03.2024 15:20:24h", - "Information": "false" - }, - { - "Code": "12211LJ045", - "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Hauptstatus, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "28.03.2024 15:20:31h", - "Information": "false" - }, - { - "Code": "12211LJ046", - "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Geschlecht, Altersgruppen (u25-65m), Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "28.03.2024 15:20:17h", - "Information": "false" - }, - { - "Code": "12211LJ047", - "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Geschlecht, Art der Gemeinschaftsunterkunft, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "28.03.2024 15:20:21h", - "Information": "false" - }, - { - "Code": "12211LJ048", - "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Geschlecht, Hauptstatus, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "28.03.2024 15:21:17h", - "Information": "false" - }, - { - "Code": "12211LJ049", - "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Altersgruppen (u25-65m), Hauptstatus, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "28.03.2024 15:21:21h", - "Information": "false" - }, - { - "Code": "12211LJ050", - "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Geschlecht, Altersgruppen (u25-65m), Hauptstatus, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "28.03.2024 15:21:25h", - "Information": "false" - }, - { - "Code": "12211LJ240", - "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:27:30h", - "Information": "false" - }, - { - "Code": "12211LJ241", - "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:27:21h", - "Information": "false" - }, - { - "Code": "12211LJ242", - "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (u15-75m), Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:27:17h", - "Information": "false" - }, - { - "Code": "12211LJ243", - "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (u15-75m), Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:27:27h", - "Information": "false" - }, - { - "Code": "12211LJ244", - "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (u15-65m), Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:27:13h", - "Information": "false" - }, - { - "Code": "12211LJ245", - "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Überwiegender Lebensunterhalt (bis 2022), Jahr", - "State": "undefiniert", - "Time": "2021-2022", - "LatestUpdate": "16.02.2024 14:18:02h", - "Information": "false" - }, - { - "Code": "12211LJ246", - "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (u15-65m), Überwiegender Lebensunterhalt (bis 2022), Jahr", - "State": "undefiniert", - "Time": "2021-2022", - "LatestUpdate": "16.02.2024 14:19:03h", - "Information": "false" - }, - { - "Code": "12211LJ247", - "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Größenklassen des persönl. monatl. Nettoeinkommens, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:27:09h", - "Information": "false" - }, - { - "Code": "12211LJ248", - "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Größenklassen des persönl. monatl. Nettoeinkommens, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:27:04h", - "Information": "false" - }, - { - "Code": "12211LJ249", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:26:18h", - "Information": "false" - }, - { - "Code": "12211LJ250", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:09:03h", - "Information": "false" - }, - { - "Code": "12211LJ251", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:09:06h", - "Information": "false" - }, - { - "Code": "12211LJ252", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:26:07h", - "Information": "false" - }, - { - "Code": "12211LJ253", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Stellung im Beruf, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:26:22h", - "Information": "false" - }, - { - "Code": "12211LJ254", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Stellung im Beruf, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:26:15h", - "Information": "false" - }, - { - "Code": "12211LJ255", - "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Überwiegender Lebensunterhalt, Jahr", - "State": "undefiniert", - "Time": "2023", - "LatestUpdate": "11.04.2024 16:34:01h", - "Information": "false" - }, - { - "Code": "12211LJ256", - "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (u15-65m), Überwiegender Lebensunterhalt, Jahr", - "State": "undefiniert", - "Time": "2023", - "LatestUpdate": "11.04.2024 16:34:01h", - "Information": "false" - }, - { - "Code": "12211LJ257", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Größenkl. der in der Arbeitsstätte tätigen Pers., Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.07.2024 10:42:05h", - "Information": "false" - }, - { - "Code": "12211LJ258", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Größenkl. der in der Arbeitsstätte tätigen Pers., Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.07.2024 10:42:06h", - "Information": "false" - }, - { - "Code": "12211LJ259", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Größenkl. der in der Arbeitsstätte tätigen Pers., Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.07.2024 10:42:06h", - "Information": "false" - }, - { - "Code": "12211LJ260", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Größenkl. der in der Arbeitsstätte tätigen Pers., Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.07.2024 10:42:06h", - "Information": "false" - }, - { - "Code": "12211LJ261", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Größenklassen des persönl. monatl. Nettoeinkommens, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:07h", - "Information": "false" - }, - { - "Code": "12211LJ262", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Größenklassen des persönl. monatl. Nettoeinkommens, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:08h", - "Information": "false" - }, - { - "Code": "12211LJ263", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Berufsbereiche (KB2010), 1-Steller, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:08h", - "Information": "false" - }, - { - "Code": "12211LJ264", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Berufsbereiche (KB2010), 1-Steller, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:08h", - "Information": "false" - }, - { - "Code": "12211LJ265", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:09h", - "Information": "false" - }, - { - "Code": "12211LJ266", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:09h", - "Information": "false" - }, - { - "Code": "12211LJ267", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Berufshauptgruppen (KB2010), 2-Steller, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:09h", - "Information": "false" - }, - { - "Code": "12211LJ268", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Berufshauptgruppen (KB2010), 2-Steller, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:10h", - "Information": "false" - }, - { - "Code": "12211LJ269", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Berufshauptgruppen (KB2010), 2-Steller, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:10h", - "Information": "false" - }, - { - "Code": "12211LJ270", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Berufshauptgruppen (KB2010), 2-Steller, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:11h", - "Information": "false" - }, - { - "Code": "12211LJ275", - "Content": "Mikrozensus, Geleistete Arbeitsstunden, Geleistete Arbeitsstunden je Person, Bundesländer, Art der geleisteten Arbeitsstunden, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:11h", - "Information": "false" - }, - { - "Code": "12211LJ276", - "Content": "Mikrozensus, Geleistete Arbeitsstunden, Geleistete Arbeitsstunden je Person, Bundesländer, Geschlecht, Art der geleisteten Arbeitsstunden, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:11h", - "Information": "false" - }, - { - "Code": "12211LJ277", - "Content": "Mikrozensus, Geleistete Arbeitsstunden, Geleistete Arbeitsstunden je Person, Bundesländer, Stellung im Beruf, Art der geleisteten Arbeitsstunden, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:12h", - "Information": "false" - }, - { - "Code": "12211LJ278", - "Content": "Mikrozensus, Geleistete Arbeitsstunden, Geleistete Arbeitsstunden je Person, Bundesländer, Geschlecht, Stellung im Beruf, Art der geleisteten Arbeitsstunden, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:13h", - "Information": "false" - }, - { - "Code": "12211LJ279", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Art der geleisteten Arbeitsstunden, Größenkl. der geleisteten Arbeitsstunden je Woche, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:13h", - "Information": "false" - }, - { - "Code": "12211LJ280", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Art der geleisteten Arbeitsstunden, Größenkl. der geleisteten Arbeitsstunden je Woche, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:14h", - "Information": "false" - }, - { - "Code": "12211LJ281", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Art der geleisteten Arbeitsstunden, Größenkl. der geleisteten Arbeitsstunden je Woche, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:14h", - "Information": "false" - }, - { - "Code": "12211LJ282", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Art der geleisteten Arbeitsstunden, Größenkl. der geleisteten Arbeitsstunden je Woche, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:15h", - "Information": "false" - }, - { - "Code": "12211LJ283", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-65m), Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:15h", - "Information": "false" - }, - { - "Code": "12211LJ284", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-65m), Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:15h", - "Information": "false" - }, - { - "Code": "12211LJ285", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Erwerbsformen, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:16h", - "Information": "false" - }, - { - "Code": "12211LJ286", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Erwerbsformen, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:17h", - "Information": "false" - }, - { - "Code": "12211LJ287", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-65m), Erwerbsformen, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:18h", - "Information": "false" - }, - { - "Code": "12211LJ288", - "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-65m), Erwerbsformen, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:19h", - "Information": "false" - }, - { - "Code": "12211LJ297", - "Content": "Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Beschäftigungsumfang, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:20h", - "Information": "false" - }, - { - "Code": "12211LJ298", - "Content": "Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Beschäftigungsumfang, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:21h", - "Information": "false" - }, - { - "Code": "12211LJ299", - "Content": "Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Beschäftigungsumfang, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:21h", - "Information": "false" - }, - { - "Code": "12211LJ300", - "Content": "Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Beschäftigungsumfang, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:22h", - "Information": "false" - }, - { - "Code": "12211LJ301", - "Content": "Mikrozensus, Erwerbslose aus Hauptwohnsitzhaushalten, Bundesländer, Dauer der Erwerbslosigkeit, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:22h", - "Information": "false" - }, - { - "Code": "12211LJ302", - "Content": "Mikrozensus, Erwerbslose aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Dauer der Erwerbslosigkeit, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:23h", - "Information": "false" - }, - { - "Code": "12211LJ303", - "Content": "Mikrozensus, Erwerbslose aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-65m), Dauer der Erwerbslosigkeit, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:23h", - "Information": "false" - }, - { - "Code": "12211LJ304", - "Content": "Mikrozensus, Erwerbslose aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-65m), Dauer der Erwerbslosigkeit, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "02.09.2024 13:46:23h", - "Information": "false" - }, - { - "Code": "12231L2001", - "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Art der Computer- und Internetkenntnisse, Jahr", - "State": "undefiniert", - "Time": "2023", - "LatestUpdate": "06.12.2023 16:08:58h", - "Information": "false" - }, - { - "Code": "12231L2002", - "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Altersgruppen (16-u75), Art der Computer- und Internetkenntnisse, Jahr", - "State": "undefiniert", - "Time": "2023", - "LatestUpdate": "06.12.2023 16:08:58h", - "Information": "false" - }, - { - "Code": "12231LJ030", - "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2022-2024", - "LatestUpdate": "28.11.2024 08:01:02h", - "Information": "false" - }, - { - "Code": "12231LJ031", - "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Altersgruppen (16-u75), Jahr", - "State": "undefiniert", - "Time": "2022-2024", - "LatestUpdate": "28.11.2024 08:00:40h", - "Information": "false" - }, - { - "Code": "12231LJ032", - "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Priv. Internetaktivitäten i.d.letzten drei Monaten, Jahr", - "State": "undefiniert", - "Time": "2022-2024", - "LatestUpdate": "28.11.2024 08:00:59h", - "Information": "false" - }, - { - "Code": "12231LJ033", - "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Altersgruppen (16-u75), Priv. Internetaktivitäten i.d.letzten drei Monaten, Jahr", - "State": "undefiniert", - "Time": "2022-2024", - "LatestUpdate": "28.11.2024 08:00:33h", - "Information": "false" - }, - { - "Code": "12231LJ034", - "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Private Internetkäufe in den letzten drei Monaten, Jahr", - "State": "undefiniert", - "Time": "2022-2024", - "LatestUpdate": "28.11.2024 08:00:44h", - "Information": "false" - }, - { - "Code": "12231LJ035", - "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Altersgruppen (16-u75), Private Internetkäufe in den letzten drei Monaten, Jahr", - "State": "undefiniert", - "Time": "2022-2024", - "LatestUpdate": "28.11.2024 08:00:37h", - "Information": "false" - }, - { - "Code": "12251LJ001", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:33:06h", - "Information": "false" - }, - { - "Code": "12251LJ002", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:33:13h", - "Information": "false" - }, - { - "Code": "12251LJ003", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:33:10h", - "Information": "false" - }, - { - "Code": "12251LJ004", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:33:18h", - "Information": "false" - }, - { - "Code": "12251LJ009", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Wochenend- und Feiertagsarbeit, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:34:19h", - "Information": "false" - }, - { - "Code": "12251LJ010", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Wochenend- und Feiertagsarbeit, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:35:17h", - "Information": "false" - }, - { - "Code": "12251LJ011", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Wochenend- und Feiertagsarbeit, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:36:04h", - "Information": "false" - }, - { - "Code": "12251LJ012", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Wochenend- und Feiertagsarbeit, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:35:06h", - "Information": "false" - }, - { - "Code": "12251LJ013", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Abend-, Nacht- und Schichtarbeit, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:35:10h", - "Information": "false" - }, - { - "Code": "12251LJ014", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Abend-, Nacht- und Schichtarbeit, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:35:13h", - "Information": "false" - }, - { - "Code": "12251LJ015", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Abend-, Nacht- und Schichtarbeit, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:36:17h", - "Information": "false" - }, - { - "Code": "12251LJ016", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Abend-, Nacht- und Schichtarbeit, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:36:12h", - "Information": "false" - }, - { - "Code": "12251LJ017", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Erwerbsarbeit zu Hause, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:36:27h", - "Information": "false" - }, - { - "Code": "12251LJ018", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Erwerbsarbeit zu Hause, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:36:24h", - "Information": "false" - }, - { - "Code": "12251LJ019", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Erwerbsarbeit zu Hause, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:36:21h", - "Information": "false" - }, - { - "Code": "12251LJ020", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Erwerbsarbeit zu Hause, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:37:15h", - "Information": "false" - }, - { - "Code": "12251LJ021", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:38:02h", - "Information": "false" - }, - { - "Code": "12251LJ022", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:37:05h", - "Information": "false" - }, - { - "Code": "12251LJ023", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:37:09h", - "Information": "false" - }, - { - "Code": "12251LJ024", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:37:20h", - "Information": "false" - }, - { - "Code": "12251LJ025", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Art des Arbeitsvertrages, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:37:02h", - "Information": "false" - }, - { - "Code": "12251LJ026", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Art des Arbeitsvertrages, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:38:06h", - "Information": "false" - }, - { - "Code": "12251LJ027", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Art des Arbeitsvertrages, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:38:11h", - "Information": "false" - }, - { - "Code": "12251LJ028", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Art des Arbeitsvertrages, Jahr", - "State": "undefiniert", - "Time": "2021-2023", - "LatestUpdate": "11.04.2024 15:38:18h", - "Information": "false" - }, - { - "Code": "12411LJ001", - "Content": "Fortschreibung des Bevölkerungsstandes, Bevölkerungsstand, Bundesländer, Altersjahre (u1-90m), Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "31.12.1967-31.12.2023", - "LatestUpdate": "22.01.2025 16:01:53h", - "Information": "false" - }, - { - "Code": "12411LJ002", - "Content": "Fortschreibung des Bevölkerungsstandes, Bevölkerungsstand, Bundesländer, Altersjahre (u1-90m), Nationalität, Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "31.12.2000-31.12.2023", - "LatestUpdate": "22.01.2025 16:04:11h", - "Information": "false" - }, - { - "Code": "12411LJ003", - "Content": "Fortschreibung des Bevölkerungsstandes, Bevölkerungsstand, Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "31.12.1958-31.12.2023", - "LatestUpdate": "22.01.2025 15:59:42h", - "Information": "false" - }, - { - "Code": "12411LJ004", - "Content": "Fortschreibung des Bevölkerungsstandes, Durchschnittliche Bevölkerung, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "22.01.2025 15:58:52h", - "Information": "false" - }, - { - "Code": "12411LJ005", - "Content": "Fortschreibung des Bevölkerungsstandes, Durchschnittliche Bevölkerung, Bundesländer, Nationalität, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "22.01.2025 15:55:44h", - "Information": "false" - }, - { - "Code": "12411LJ006", - "Content": "Fortschreibung des Bevölkerungsstandes, Durchschnittliche Bevölkerung, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "22.01.2025 15:58:56h", - "Information": "false" - }, - { - "Code": "12411LJ007", - "Content": "Fortschreibung des Bevölkerungsstandes, Durchschnittliche Bevölkerung, Bundesländer, Nationalität, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "22.01.2025 15:57:44h", - "Information": "false" - }, - { - "Code": "12411LJ050", - "Content": "Fortschreibung des Bevölkerungsstandes, Bevölkerungsdichte, Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2022", - "LatestUpdate": "14.12.2023 10:11:08h", - "Information": "false" - }, - { - "Code": "12411LV001", - "Content": "Fortschreibung des Bevölkerungsstandes, Bevölkerungsstand, Bundesländer, Geschlecht, Stichtag zum Quartalsende", - "State": "undefiniert", - "Time": "31.03.1991-30.09.2024", - "LatestUpdate": "26.02.2025 18:00:06h", - "Information": "false" - }, - { - "Code": "12411LV002", - "Content": "Fortschreibung des Bevölkerungsstandes, Bevölkerungsstand, Bundesländer, Stichtag zum Quartalsende", - "State": "undefiniert", - "Time": "31.03.1991-30.09.2024", - "LatestUpdate": "26.02.2025 18:00:02h", - "Information": "false" - }, - { - "Code": "12421LJ001", - "Content": "Bevölkerungsvorausberechnungen, Vorausberechneter Bevölkerungsstand, Bundesländer, Varianten der Bevölkerungsvorausberechnung, Stichtag", - "State": "undefiniert", - "Time": "31.12.2022-31.12.2070", - "LatestUpdate": "02.12.2022 15:05:11h", - "Information": "false" - }, - { - "Code": "12421LJ002", - "Content": "Bevölkerungsvorausberechnungen, Vorausberechneter Bevölkerungsstand, Bundesländer, Varianten der Bevölkerungsvorausberechnung, Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "31.12.2022-31.12.2070", - "LatestUpdate": "02.12.2022 15:05:24h", - "Information": "false" - }, - { - "Code": "12421LJ003", - "Content": "Bevölkerungsvorausberechnungen, Vorausberechneter Bevölkerungsstand, Bundesländer, Varianten der Bevölkerungsvorausberechnung, Altersjahre (u1-100m), Stichtag", - "State": "undefiniert", - "Time": "31.12.2022-31.12.2070", - "LatestUpdate": "02.12.2022 15:05:34h", - "Information": "false" - }, - { - "Code": "12421LJ004", - "Content": "Bevölkerungsvorausberechnungen, Vorausberechneter Bevölkerungsstand, Bundesländer, Varianten der Bevölkerungsvorausberechnung, Altersjahre (u1-100m), Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "31.12.2022-31.12.2070", - "LatestUpdate": "02.12.2022 15:05:43h", - "Information": "false" - }, - { - "Code": "12421LJ100", - "Content": "Bevölkerungsvorausberechnungen, Vorausberechnete Privathaushalte, Bundesländer, Varianten der Haushaltsvorausberechnung, Jahr", - "State": "undefiniert", - "Time": "2019-2040", - "LatestUpdate": "28.02.2020 16:37:25h", - "Information": "false" - }, - { - "Code": "12421LJ101", - "Content": "Bevölkerungsvorausberechnungen, Vorausberechnete Privathaushalte, Bundesländer, Varianten der Haushaltsvorausberechnung, Haushaltsgröße, Jahr", - "State": "undefiniert", - "Time": "2019-2040", - "LatestUpdate": "28.02.2020 16:37:25h", - "Information": "false" - }, - { - "Code": "12521LJ001", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:14:52h", - "Information": "false" - }, - { - "Code": "12521LJ002", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:43:38h", - "Information": "false" - }, - { - "Code": "12521LJ003", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:45:42h", - "Information": "false" - }, - { - "Code": "12521LJ004", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Migrantengeneration, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 15:48:57h", - "Information": "false" - }, - { - "Code": "12521LJ005", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Migrantengeneration, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 15:54:43h", - "Information": "false" - }, - { - "Code": "12521LJ006", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Migrantengeneration, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:45:32h", - "Information": "false" - }, - { - "Code": "12521LJ007", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:49:15h", - "Information": "false" - }, - { - "Code": "12521LJ008", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:47:21h", - "Information": "false" - }, - { - "Code": "12521LJ009", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:46:41h", - "Information": "false" - }, - { - "Code": "12521LJ010", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer (Abgrenzung Einbürgerungen), Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:44:35h", - "Information": "false" - }, - { - "Code": "12521LJ011", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer (Abgrenzung Einbürgerungen), Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:39:26h", - "Information": "false" - }, - { - "Code": "12521LJ012", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer (Abgrenzung Einbürgerungen), Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:44:39h", - "Information": "false" - }, - { - "Code": "12521LJ013", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Ländergruppierungen, Ausgewählte Aufenthaltstitel, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:39:07h", - "Information": "false" - }, - { - "Code": "12521LJ014", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Familienstand, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:46:34h", - "Information": "false" - }, - { - "Code": "12521LJ015", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Familienstand, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:45:01h", - "Information": "false" - }, - { - "Code": "12521LJ016", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Familienstand, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:46:37h", - "Information": "false" - }, - { - "Code": "12521LJ017", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Registerbewegungen (regional), Staatsangehörigkeit, Jahr", - "State": "undefiniert", - "Time": "2013-2023", - "LatestUpdate": "08.07.2024 12:10:56h", - "Information": "false" - }, - { - "Code": "12521LJ018", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Registerbewegungen (regional), Ländergruppierungen, Jahr", - "State": "undefiniert", - "Time": "2013-2023", - "LatestUpdate": "08.07.2024 12:00:42h", - "Information": "false" - }, - { - "Code": "12521LJ019", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Registerbewegungen (regional), Jahr", - "State": "undefiniert", - "Time": "2013-2023", - "LatestUpdate": "08.07.2024 12:00:48h", - "Information": "false" - }, - { - "Code": "12521LJ020", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Registerzu- und abgänge (regional), Staatsangehörigkeit, Jahr", - "State": "undefiniert", - "Time": "2013-2023", - "LatestUpdate": "08.07.2024 12:05:31h", - "Information": "false" - }, - { - "Code": "12521LJ021", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Registerzu- und abgänge (regional), Ländergruppierungen, Jahr", - "State": "undefiniert", - "Time": "2013-2023", - "LatestUpdate": "08.07.2024 14:43:28h", - "Information": "false" - }, - { - "Code": "12521LJ022", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Registerzu- und abgänge (regional), Jahr", - "State": "undefiniert", - "Time": "2013-2023", - "LatestUpdate": "08.07.2024 12:11:59h", - "Information": "false" - }, - { - "Code": "12521LJ023", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer, Registerabgänge (regional), Staatsangehörigkeit, Jahr", - "State": "undefiniert", - "Time": "2013-2023", - "LatestUpdate": "08.07.2024 12:04:15h", - "Information": "false" - }, - { - "Code": "12521LJ024", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer, Registerabgänge (regional), Ländergruppierungen, Jahr", - "State": "undefiniert", - "Time": "2013-2023", - "LatestUpdate": "08.07.2024 12:08:17h", - "Information": "false" - }, - { - "Code": "12521LJ025", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer, Registerabgänge (regional), Jahr", - "State": "undefiniert", - "Time": "2013-2023", - "LatestUpdate": "08.07.2024 12:08:26h", - "Information": "false" - }, - { - "Code": "12521LJ026", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "30.09.1980-31.12.2023", - "LatestUpdate": "30.04.2024 14:58:03h", - "Information": "false" - }, - { - "Code": "12521LJ027", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "30.09.1980-31.12.2023", - "LatestUpdate": "30.04.2024 14:59:43h", - "Information": "false" - }, - { - "Code": "12521LJ028", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "30.09.1980-31.12.2023", - "LatestUpdate": "30.04.2024 14:57:49h", - "Information": "false" - }, - { - "Code": "12521LJ029", - "Content": "Ausländerstatistik, Durchschnittsalter der Ausländer, Durchschnittliche Aufenthaltsdauer der Ausländer, Bundesländer, Geschlecht, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:59:37h", - "Information": "false" - }, - { - "Code": "12521LJ030", - "Content": "Ausländerstatistik, Durchschnittsalter der Ausländer, Durchschnittliche Aufenthaltsdauer der Ausländer, Bundesländer, Geschlecht, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:49:31h", - "Information": "false" - }, - { - "Code": "12521LJ031", - "Content": "Ausländerstatistik, Durchschnittsalter der Ausländer, Durchschnittliche Aufenthaltsdauer der Ausländer, Bundesländer, Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:49:18h", - "Information": "false" - }, - { - "Code": "12521LJ032", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "30.09.1980-31.12.2023", - "LatestUpdate": "30.04.2024 14:51:39h", - "Information": "false" - }, - { - "Code": "12521LJ033", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "30.09.1980-31.12.2023", - "LatestUpdate": "30.04.2024 14:51:30h", - "Information": "false" - }, - { - "Code": "12521LJ034", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "30.09.1980-31.12.2023", - "LatestUpdate": "30.04.2024 14:57:46h", - "Information": "false" - }, - { - "Code": "12521LJ035", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Altersjahre (u1-95m, unbekannt), Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:55:50h", - "Information": "false" - }, - { - "Code": "12521LJ036", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Altersjahre (u1-95m, unbekannt), Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:57:43h", - "Information": "false" - }, - { - "Code": "12521LJ037", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Altersjahre (u1-95m, unbekannt), Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:58:10h", - "Information": "false" - }, - { - "Code": "12521LJ038", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Familienstand, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 15:00:12h", - "Information": "false" - }, - { - "Code": "12521LJ039", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Familienstand, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:58:23h", - "Information": "false" - }, - { - "Code": "12521LJ040", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Familienstand, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:49:22h", - "Information": "false" - }, - { - "Code": "12521LJ041", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Staatsangehörigkeit, Aufenthaltstitel, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2019", - "LatestUpdate": "22.04.2020 14:43:18h", - "Information": "false" - }, - { - "Code": "12521LJ042", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Ländergruppierungen, Aufenthaltstitel, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2019", - "LatestUpdate": "16.02.2021 18:31:33h", - "Information": "false" - }, - { - "Code": "12521LJ043", - "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Staatsangehörigkeit, Ausgewählte Aufenthaltstitel, Stichtag", - "State": "undefiniert", - "Time": "31.12.1998-31.12.2023", - "LatestUpdate": "30.04.2024 14:51:25h", - "Information": "false" - }, - { - "Code": "12531LJ001", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:32:29h", - "Information": "false" - }, - { - "Code": "12531LJ002", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:34:58h", - "Information": "false" - }, - { - "Code": "12531LJ003", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:32:38h", - "Information": "false" - }, - { - "Code": "12531LJ004", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Migrantengeneration, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:25:43h", - "Information": "false" - }, - { - "Code": "12531LJ005", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Migrantengeneration, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:29:58h", - "Information": "false" - }, - { - "Code": "12531LJ006", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Migrantengeneration, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:26:53h", - "Information": "false" - }, - { - "Code": "12531LJ007", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Aufenthaltsdauer, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:26:41h", - "Information": "false" - }, - { - "Code": "12531LJ008", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Aufenthaltsdauer, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:37:58h", - "Information": "false" - }, - { - "Code": "12531LJ009", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Aufenthaltsdauer, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:38:11h", - "Information": "false" - }, - { - "Code": "12531LJ010", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Aufenthaltsdauer (Abgrenzung Einbürgerungen), Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:36:33h", - "Information": "false" - }, - { - "Code": "12531LJ011", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Aufenthaltsdauer (Abgrenzung Einbürgerungen), Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:35:31h", - "Information": "false" - }, - { - "Code": "12531LJ012", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Aufenthaltsdauer (Abgrenzung Einbürgerungen), Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:37:18h", - "Information": "false" - }, - { - "Code": "12531LJ013", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Ländergruppierungen, Schutzstatuskategorie, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:37:01h", - "Information": "false" - }, - { - "Code": "12531LJ014", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Familienstand, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:38:36h", - "Information": "false" - }, - { - "Code": "12531LJ015", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Familienstand, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:35:13h", - "Information": "false" - }, - { - "Code": "12531LJ016", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Familienstand, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:35:17h", - "Information": "false" - }, - { - "Code": "12531LJ026", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:37:30h", - "Information": "false" - }, - { - "Code": "12531LJ027", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:38:04h", - "Information": "false" - }, - { - "Code": "12531LJ028", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:38:07h", - "Information": "false" - }, - { - "Code": "12531LJ029", - "Content": "Statistik über Schutzsuchende, Durchschnittsalter der Schutzsuchenden, Durchschnittl. Aufenthaltsdauer d. Schutzsuchenden, Bundesländer, Geschlecht, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:35:49h", - "Information": "false" - }, - { - "Code": "12531LJ030", - "Content": "Statistik über Schutzsuchende, Durchschnittsalter der Schutzsuchenden, Durchschnittl. Aufenthaltsdauer d. Schutzsuchenden, Bundesländer, Geschlecht, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:43:51h", - "Information": "false" - }, - { - "Code": "12531LJ031", - "Content": "Statistik über Schutzsuchende, Durchschnittsalter der Schutzsuchenden, Durchschnittl. Aufenthaltsdauer d. Schutzsuchenden, Bundesländer, Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:43:34h", - "Information": "false" - }, - { - "Code": "12531LJ032", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:43:31h", - "Information": "false" - }, - { - "Code": "12531LJ033", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:43:39h", - "Information": "false" - }, - { - "Code": "12531LJ034", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:41:02h", - "Information": "false" - }, - { - "Code": "12531LJ035", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Altersjahre (u1-95m, unbekannt), Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:40:59h", - "Information": "false" - }, - { - "Code": "12531LJ036", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Altersjahre (u1-95m, unbekannt), Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:43:26h", - "Information": "false" - }, - { - "Code": "12531LJ037", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Altersjahre (u1-95m, unbekannt), Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:43:45h", - "Information": "false" - }, - { - "Code": "12531LJ038", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Familienstand, Staatsangehörigkeit, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:41:17h", - "Information": "false" - }, - { - "Code": "12531LJ039", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Familienstand, Ländergruppierungen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:37:14h", - "Information": "false" - }, - { - "Code": "12531LJ040", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Familienstand, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:45:49h", - "Information": "false" - }, - { - "Code": "12531LJ041", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Staatsangehörigkeit, Schutzstatus, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:44:54h", - "Information": "false" - }, - { - "Code": "12531LJ042", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Ländergruppierungen, Schutzstatus, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:45:46h", - "Information": "false" - }, - { - "Code": "12531LJ043", - "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Staatsangehörigkeit, Schutzstatuskategorie, Stichtag", - "State": "undefiniert", - "Time": "31.12.2007-31.12.2023", - "LatestUpdate": "22.05.2024 14:42:04h", - "Information": "false" - }, - { - "Code": "12611LJ002", - "Content": "Statistik der Eheschließungen, Eheschließungen, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "1990-2023", - "LatestUpdate": "27.06.2024 08:07:25h", - "Information": "false" - }, - { - "Code": "12611LM001", - "Content": "Statistik der Eheschließungen, Eheschließungen, Bundesländer, Monate, Jahr", - "State": "undefiniert", - "Time": "Januar 1990-November 2024", - "LatestUpdate": "19.02.2025 18:00:58h", - "Information": "false" - }, - { - "Code": "12612LJ001", - "Content": "Statistik der Geburten, Lebendgeborene, Totgeborene, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "1990-2023", - "LatestUpdate": "03.07.2024 08:00:09h", - "Information": "false" - }, - { - "Code": "12612LJ002", - "Content": "Statistik der Geburten, Lebendgeborene, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "1990-2023", - "LatestUpdate": "03.07.2024 08:00:18h", - "Information": "false" - }, - { - "Code": "12612LJ003", - "Content": "Statistik der Geburten, Lebendgeborene, Bundesländer, Familienstand der Eltern, Jahr", - "State": "undefiniert", - "Time": "1991-2023", - "LatestUpdate": "03.07.2024 08:01:02h", - "Information": "false" - }, - { - "Code": "12612LJ004", - "Content": "Statistik der Geburten, Lebendgeborene, Bundesländer, Staatsangehörigkeit des Kindes und der Eltern, Jahr", - "State": "undefiniert", - "Time": "1990-2023", - "LatestUpdate": "03.07.2024 08:00:32h", - "Information": "false" - }, - { - "Code": "12612LJ005", - "Content": "Statistik der Geburten, Zusammengefasste Geburtenziffer (je Frau), Bundesländer, Altersgruppen (15-u45, 15-u50), Jahr", - "State": "undefiniert", - "Time": "1991-2023", - "LatestUpdate": "23.01.2025 08:01:13h", - "Information": "false" - }, - { - "Code": "12612LJ006", - "Content": "Statistik der Geburten, Nettoreproduktionsrate, Bundesländer, Altersgruppen (15-u45, 15-u50), Jahr", - "State": "undefiniert", - "Time": "2004-2010", - "LatestUpdate": "24.04.2017 15:27:17h", - "Information": "false" - }, - { - "Code": "12612LM001", - "Content": "Statistik der Geburten, Lebendgeborene, Bundesländer, Monate, Jahr", - "State": "undefiniert", - "Time": "Januar 1990-November 2024", - "LatestUpdate": "19.02.2025 18:01:23h", - "Information": "false" - }, - { - "Code": "12612LM002", - "Content": "Statistik der Geburten, Lebendgeborene, Bundesländer, Geschlecht, Monate, Jahr", - "State": "undefiniert", - "Time": "Januar 1990-November 2024", - "LatestUpdate": "19.02.2025 18:00:54h", - "Information": "false" - }, - { - "Code": "12613LJ001", - "Content": "Statistik der Sterbefälle, Gestorbene, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "1990-2024", - "LatestUpdate": "18.03.2025 11:35:30h", - "Information": "false" - }, - { - "Code": "12613LJ002", - "Content": "Statistik der Sterbefälle, Gestorbene, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "1990-2024", - "LatestUpdate": "18.03.2025 11:35:33h", - "Information": "false" - }, - { - "Code": "12613LM001", - "Content": "Statistik der Sterbefälle, Gestorbene, Bundesländer, Monate, Jahr", - "State": "undefiniert", - "Time": "Januar 1990-Januar 2025", - "LatestUpdate": "18.03.2025 11:40:35h", - "Information": "false" - }, - { - "Code": "12613LM002", - "Content": "Statistik der Sterbefälle, Gestorbene, Bundesländer, Geschlecht, Monate, Jahr", - "State": "undefiniert", - "Time": "Januar 1990-Januar 2025", - "LatestUpdate": "18.03.2025 11:40:38h", - "Information": "false" - }, - { - "Code": "12621LJ001", - "Content": "Sterbetafeln, Durchschnittliche Lebenserwartung bei Geburt, Bundesländer, Geschlecht, Jahre (Zeitraum)", - "State": "undefiniert", - "Time": "2002/04-2021/23", - "LatestUpdate": "21.08.2024 08:02:50h", - "Information": "false" - }, - { - "Code": "12631LJ001", - "Content": "Statistik rechtskräftiger Urteile in Ehesachen, Ehescheidungen, Ehedauer, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "1997-2023", - "LatestUpdate": "27.06.2024 08:06:36h", - "Information": "false" - }, - { - "Code": "12631LJ002", - "Content": "Statistik rechtskräftiger Urteile in Ehesachen, Ehescheidungen, Gemeinsame minderjährige Kinder, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "1997-2023", - "LatestUpdate": "27.06.2024 08:06:25h", - "Information": "false" - }, - { - "Code": "12631LJ003", - "Content": "Statistik rechtskräftiger Urteile in Ehesachen, Ehescheidungen, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "1990-2023", - "LatestUpdate": "27.06.2024 08:06:28h", - "Information": "false" - }, - { - "Code": "12651LJ001", - "Content": "Begründung von Lebenspartnerschaften, Begründungen von Lebenspartnerschaften, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2014-2017", - "LatestUpdate": "29.08.2018 11:37:32h", - "Information": "false" - }, - { - "Code": "12661LJ001", - "Content": "Aufhebung von Lebenspartnerschaften, Aufhebungen von Lebenspartnerschaften, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2014-2023", - "LatestUpdate": "27.06.2024 08:07:10h", - "Information": "false" - }, - { - "Code": "12661LJ002", - "Content": "Aufhebung von Lebenspartnerschaften, Aufhebungen von Lebenspartnerschaften, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2014-2023", - "LatestUpdate": "27.06.2024 08:07:13h", - "Information": "false" - }, - { - "Code": "12711LJ001", - "Content": "Wanderungsstatistik, Zuzüge aus dem Ausland, Fortzüge in das Ausland, Wanderungssaldo Ausland, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "27.06.2024 08:04:29h", - "Information": "false" - }, - { - "Code": "12711LJ002", - "Content": "Wanderungsstatistik, Zuzüge aus dem Ausland, Fortzüge in das Ausland, Wanderungssaldo Ausland, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "27.06.2024 08:05:07h", - "Information": "false" - }, - { - "Code": "12711LJ003", - "Content": "Wanderungsstatistik, Zuzüge aus dem Ausland, Fortzüge in das Ausland, Wanderungssaldo Ausland, Bundesländer, Nationalität, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "27.06.2024 08:04:19h", - "Information": "false" - }, - { - "Code": "12711LJ004", - "Content": "Wanderungsstatistik, Zuzüge aus dem Ausland, Fortzüge in das Ausland, Wanderungssaldo Ausland, Bundesländer, Geschlecht, Nationalität, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "27.06.2024 08:05:33h", - "Information": "false" - }, - { - "Code": "12711LJ100", - "Content": "Wanderungsstatistik, Zuzüge aus einem anderen Bundesland, Fortzüge in ein anderes Bundesland, Wanderungssaldo Bundesländer, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "27.06.2024 08:04:22h", - "Information": "false" - }, - { - "Code": "12711LJ101", - "Content": "Wanderungsstatistik, Zuzüge aus einem anderen Bundesland, Fortzüge in ein anderes Bundesland, Wanderungssaldo Bundesländer, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "27.06.2024 08:05:11h", - "Information": "false" - }, - { - "Code": "12711LJ102", - "Content": "Wanderungsstatistik, Zuzüge aus einem anderen Bundesland, Fortzüge in ein anderes Bundesland, Wanderungssaldo Bundesländer, Bundesländer, Nationalität, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "27.06.2024 08:05:17h", - "Information": "false" - }, - { - "Code": "12711LJ103", - "Content": "Wanderungsstatistik, Zuzüge aus einem anderen Bundesland, Fortzüge in ein anderes Bundesland, Wanderungssaldo Bundesländer, Bundesländer, Geschlecht, Nationalität, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "27.06.2024 08:05:23h", - "Information": "false" - }, - { - "Code": "12711LJ200", - "Content": "Wanderungsstatistik, Zuzüge, Fortzüge, Wanderungssaldo, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "27.06.2024 08:05:14h", - "Information": "false" - }, - { - "Code": "12711LJ201", - "Content": "Wanderungsstatistik, Zuzüge, Fortzüge, Wanderungssaldo, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "27.06.2024 08:05:20h", - "Information": "false" - }, - { - "Code": "12711LJ202", - "Content": "Wanderungsstatistik, Zuzüge, Fortzüge, Wanderungssaldo, Bundesländer, Nationalität, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "27.06.2024 08:05:30h", - "Information": "false" - }, - { - "Code": "12711LJ203", - "Content": "Wanderungsstatistik, Zuzüge, Fortzüge, Wanderungssaldo, Bundesländer, Geschlecht, Nationalität, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "27.06.2024 08:05:27h", - "Information": "false" - }, - { - "Code": "13111LV001", - "Content": "Statistik d. sozialversicherungspfl. Beschäftigten, Sozialvers.pflichtig Beschäftigte am Arbeitsort, Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "31.03.2008-30.06.2024", - "LatestUpdate": "22.01.2025 14:00:42h", - "Information": "false" - }, - { - "Code": "13111LV002", - "Content": "Statistik d. sozialversicherungspfl. Beschäftigten, Sozialvers.pflichtig Beschäftigte am Arbeitsort, Bundesländer, Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "31.03.2008-30.06.2024", - "LatestUpdate": "22.01.2025 14:00:49h", - "Information": "false" - }, - { - "Code": "13111LV003", - "Content": "Statistik d. sozialversicherungspfl. Beschäftigten, Sozialvers.pflichtig Beschäftigte am Arbeitsort, Bundesländer, WZ2008 (Abschnitte): Sozialvers.pfl. Beschäftigte, Stichtag", - "State": "undefiniert", - "Time": "31.03.2008-30.06.2024", - "LatestUpdate": "22.01.2025 14:00:45h", - "Information": "false" - }, - { - "Code": "13211LJ001", - "Content": "Arbeitsmarktstatistik der Bundesagentur für Arbeit, Arbeitslose, Arbeitslosenquote aller zivilen Erwerbspersonen, Arbeitslosenquote d. abhängigen ziv. Erwerbspers., Gemeldete Arbeitsstellen, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "1991-2024", - "LatestUpdate": "08.01.2025 08:01:36h", - "Information": "false" - }, - { - "Code": "13211LJ002", - "Content": "Arbeitsmarktstatistik der Bundesagentur für Arbeit, Arbeitslose, Arbeitslosenquote aller zivilen Erwerbspersonen, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "1991-2024", - "LatestUpdate": "08.01.2025 08:01:23h", - "Information": "false" - }, - { - "Code": "13211LM001", - "Content": "Arbeitsmarktstatistik der Bundesagentur für Arbeit, Arbeitslose, Arbeitslosenquote aller zivilen Erwerbspersonen, Arbeitslosenquote d. abhängigen ziv. Erwerbspers., Gemeldete Arbeitsstellen, Bundesländer, Monate, Jahr", - "State": "undefiniert", - "Time": "Januar 2005-Februar 2025", - "LatestUpdate": "05.03.2025 11:31:28h", - "Information": "false" - }, - { - "Code": "13211LM002", - "Content": "Arbeitsmarktstatistik der Bundesagentur für Arbeit, Arbeitslose, Arbeitslosenquote aller zivilen Erwerbspersonen, Bundesländer, Geschlecht, Monate, Jahr", - "State": "undefiniert", - "Time": "Januar 2005-Februar 2025", - "LatestUpdate": "28.02.2025 14:26:02h", - "Information": "false" - }, - { - "Code": "13311LJ001", - "Content": "Länderberechnung Erwerbstätige, Erwerbstätige (Inlandskonzept), Arbeitnehmer (Inlandskonzept), Selbständige u.mithelf.Familienangehörige (Inland), Bundesländer, Jahr", - "State": "undefiniert", - "Time": "1991-2023", - "LatestUpdate": "26.03.2024 14:46:25h", - "Information": "false" - }, - { - "Code": "13311LJ002", - "Content": "Länderberechnung Erwerbstätige, Erwerbstätige (Inlandskonzept), Arbeitnehmer (Inlandskonzept), Selbständige u.mithelf.Familienangehörige (Inland), Bundesländer, WZ2008 (Abschnitte, Zusammenfass.): VGR der Länder, Jahr", - "State": "undefiniert", - "Time": "1991-2023", - "LatestUpdate": "26.03.2024 14:46:21h", - "Information": "false" - }, - { - "Code": "14111LW001", - "Content": "Allgemeine Bundestagswahlstatistik, Wahlberechtigte, Wähler, Wahlbeteiligung, Gültige Erststimmen, Anteil gültiger Erststimmen, Gültige Zweitstimmen, Anteil gültiger Zweitstimmen, Ungültige Erststimmen, Anteil ungültiger Erststimmen, Ungültige Zweitstimmen, Anteil ungültiger Zweitstimmen, Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "22.09.2013-23.02.2025", - "LatestUpdate": "19.03.2025 08:43:34h", - "Information": "false" - }, - { - "Code": "14111LW002", - "Content": "Allgemeine Bundestagswahlstatistik, Gültige Erststimmen, Anteil gültiger Erststimmen, Gültige Zweitstimmen, Anteil gültiger Zweitstimmen, Bundesländer, Parteien (Allgemeine Bundestagswahlstatistik), Stichtag", - "State": "undefiniert", - "Time": "22.09.2013-23.02.2025", - "LatestUpdate": "19.03.2025 08:43:37h", - "Information": "false" - }, - { - "Code": "14121LW001", - "Content": "Repräsentative Bundestagswahlstatistik, Anteil gültiger Zweitstimmen, Gültige Zweitstimmen, Bundesländer, Parteien, Altersgruppen (18-60m), Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "22.09.2002-27.09.2009", - "LatestUpdate": "10.10.2017 14:58:18h", - "Information": "false" - }, - { - "Code": "14121LW002", - "Content": "Repräsentative Bundestagswahlstatistik, Anteil gültiger Zweitstimmen, Gültige Zweitstimmen, Bundesländer, Parteien, Altersgruppen (18-60m), Stichtag", - "State": "undefiniert", - "Time": "22.09.2002-27.09.2009", - "LatestUpdate": "10.10.2017 14:58:20h", - "Information": "false" - }, - { - "Code": "14121LW003", - "Content": "Repräsentative Bundestagswahlstatistik, Anteil gültiger Zweitstimmen, Gültige Zweitstimmen, Bundesländer, Parteien, Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "22.09.2002-26.09.2021", - "LatestUpdate": "28.01.2022 13:42:08h", - "Information": "false" - }, - { - "Code": "14121LW004", - "Content": "Repräsentative Bundestagswahlstatistik, Anteil gültiger Zweitstimmen, Gültige Zweitstimmen, Bundesländer, Parteien, Altersgruppen (18-70m), Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "22.09.2013-26.09.2021", - "LatestUpdate": "28.01.2022 13:42:10h", - "Information": "false" - }, - { - "Code": "14121LW005", - "Content": "Repräsentative Bundestagswahlstatistik, Anteil gültiger Zweitstimmen, Gültige Zweitstimmen, Bundesländer, Parteien, Altersgruppen (18-70m), Stichtag", - "State": "undefiniert", - "Time": "22.09.2013-26.09.2021", - "LatestUpdate": "28.01.2022 13:43:06h", - "Information": "false" - }, - { - "Code": "14211LW001", - "Content": "Allgemeine Europawahlstatistik, Gültige Stimmen, Anteil gültiger Stimmen, Parteien (Allgemeine Europawahlstatistik), Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "12.06.1994-09.06.2024", - "LatestUpdate": "05.07.2024 12:03:38h", - "Information": "false" - }, - { - "Code": "14221LW001", - "Content": "Repräsentative Europawahlstatistik, Anteil gültiger Stimmen, Bundesländer, Geschlecht, Altersgruppen (18-60m), Parteien, Stichtag", - "State": "undefiniert", - "Time": "13.06.1999-07.06.2009", - "LatestUpdate": "30.09.2019 15:26:17h", - "Information": "false" - }, - { - "Code": "14221LW002", - "Content": "Repräsentative Europawahlstatistik, Anteil gültiger Stimmen, Bundesländer, Geschlecht, Altersgruppen (18-70m), Parteien, Stichtag", - "State": "undefiniert", - "Time": "25.05.2014-26.05.2019", - "LatestUpdate": "02.10.2019 10:00:28h", - "Information": "false" - }, - { - "Code": "21111LJ001", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:13:40h", - "Information": "false" - }, - { - "Code": "21111LJ002", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Geschlecht, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:12:27h", - "Information": "false" - }, - { - "Code": "21111LJ003", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Jahrgangsstufen, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:12:50h", - "Information": "false" - }, - { - "Code": "21111LJ004", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Schulart, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:13:51h", - "Information": "false" - }, - { - "Code": "21111LJ005", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Geschlecht, Jahrgangsstufen, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:13:55h", - "Information": "false" - }, - { - "Code": "21111LJ006", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Geschlecht, Schulart, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:13:48h", - "Information": "false" - }, - { - "Code": "21111LJ007", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Jahrgangsstufen, Schulart, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:13:25h", - "Information": "false" - }, - { - "Code": "21111LJ008", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Geschlecht, Jahrgangsstufen, Schulart, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:12:41h", - "Information": "false" - }, - { - "Code": "21111LJ009", - "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1999/00-2023/24", - "LatestUpdate": "11.10.2024 08:12:30h", - "Information": "false" - }, - { - "Code": "21111LJ010", - "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Geschlecht, Schuljahr", - "State": "undefiniert", - "Time": "1999/00-2023/24", - "LatestUpdate": "11.10.2024 08:13:28h", - "Information": "false" - }, - { - "Code": "21111LJ011", - "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Einschulungsart, Schuljahr", - "State": "undefiniert", - "Time": "1999/00-2023/24", - "LatestUpdate": "11.10.2024 08:13:37h", - "Information": "false" - }, - { - "Code": "21111LJ012", - "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Schulart (Einschulung), Schuljahr", - "State": "undefiniert", - "Time": "1999/00-2023/24", - "LatestUpdate": "11.10.2024 08:13:34h", - "Information": "false" - }, - { - "Code": "21111LJ013", - "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Geschlecht, Einschulungsart, Schuljahr", - "State": "undefiniert", - "Time": "1999/00-2023/24", - "LatestUpdate": "11.10.2024 08:12:57h", - "Information": "false" - }, - { - "Code": "21111LJ014", - "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Geschlecht, Schulart (Einschulung), Schuljahr", - "State": "undefiniert", - "Time": "1999/00-2023/24", - "LatestUpdate": "11.10.2024 08:12:54h", - "Information": "false" - }, - { - "Code": "21111LJ015", - "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Einschulungsart, Schulart (Einschulung), Schuljahr", - "State": "undefiniert", - "Time": "1999/00-2023/24", - "LatestUpdate": "11.10.2024 08:13:31h", - "Information": "false" - }, - { - "Code": "21111LJ016", - "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Geschlecht, Einschulungsart, Schulart (Einschulung), Schuljahr", - "State": "undefiniert", - "Time": "1999/00-2023/24", - "LatestUpdate": "11.10.2024 08:13:44h", - "Information": "false" - }, - { - "Code": "21111LJ017", - "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1997/98-2022/23", - "LatestUpdate": "11.10.2024 08:14:38h", - "Information": "false" - }, - { - "Code": "21111LJ018", - "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Geschlecht, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1997/98-2022/23", - "LatestUpdate": "11.10.2024 08:14:26h", - "Information": "false" - }, - { - "Code": "21111LJ019", - "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Schulabschlüsse, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1997/98-2022/23", - "LatestUpdate": "11.10.2024 08:14:49h", - "Information": "false" - }, - { - "Code": "21111LJ020", - "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Schulart (mit Abschlussmöglichkeit), Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1997/98-2022/23", - "LatestUpdate": "11.10.2024 08:14:22h", - "Information": "false" - }, - { - "Code": "21111LJ021", - "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Geschlecht, Schulabschlüsse, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1997/98-2022/23", - "LatestUpdate": "11.10.2024 08:14:56h", - "Information": "false" - }, - { - "Code": "21111LJ022", - "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Geschlecht, Schulart (mit Abschlussmöglichkeit), Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1997/98-2022/23", - "LatestUpdate": "11.10.2024 08:14:52h", - "Information": "false" - }, - { - "Code": "21111LJ023", - "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Schulabschlüsse, Schulart (mit Abschlussmöglichkeit), Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1997/98-2022/23", - "LatestUpdate": "11.10.2024 08:14:30h", - "Information": "false" - }, - { - "Code": "21111LJ024", - "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Geschlecht, Schulabschlüsse, Schulart (mit Abschlussmöglichkeit), Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1997/98-2022/23", - "LatestUpdate": "11.10.2024 08:14:35h", - "Information": "false" - }, - { - "Code": "21111LJ025", - "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:14:46h", - "Information": "false" - }, - { - "Code": "21111LJ026", - "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Geschlecht, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:16:29h", - "Information": "false" - }, - { - "Code": "21111LJ027", - "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Jahrgangsstufen, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:16:26h", - "Information": "false" - }, - { - "Code": "21111LJ028", - "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Schulart, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:15:44h", - "Information": "false" - }, - { - "Code": "21111LJ029", - "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Geschlecht, Jahrgangsstufen, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:15:37h", - "Information": "false" - }, - { - "Code": "21111LJ030", - "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Geschlecht, Schulart, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:16:32h", - "Information": "false" - }, - { - "Code": "21111LJ031", - "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Jahrgangsstufen, Schulart, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:16:55h", - "Information": "false" - }, - { - "Code": "21111LJ032", - "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Geschlecht, Jahrgangsstufen, Schulart, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:16:46h", - "Information": "false" - }, - { - "Code": "21111LJ033", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:15:29h", - "Information": "false" - }, - { - "Code": "21111LJ034", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Jahrgangsstufen, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:15:23h", - "Information": "false" - }, - { - "Code": "21111LJ035", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Schulart, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:15:26h", - "Information": "false" - }, - { - "Code": "21111LJ036", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Fremdsprachen, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:15:41h", - "Information": "false" - }, - { - "Code": "21111LJ037", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Jahrgangsstufen, Schulart, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:16:51h", - "Information": "false" - }, - { - "Code": "21111LJ038", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Jahrgangsstufen, Fremdsprachen, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:17:05h", - "Information": "false" - }, - { - "Code": "21111LJ039", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Schulart, Fremdsprachen, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:15:49h", - "Information": "false" - }, - { - "Code": "21111LJ040", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Jahrgangsstufen, Schulart, Fremdsprachen, Schuljahr", - "State": "undefiniert", - "Time": "1998/99-2023/24", - "LatestUpdate": "11.10.2024 08:17:38h", - "Information": "false" - }, - { - "Code": "21111LJ041", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2000/01-2023/24", - "LatestUpdate": "11.10.2024 08:16:37h", - "Information": "false" - }, - { - "Code": "21111LJ042", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Geschlecht, Schuljahr", - "State": "undefiniert", - "Time": "2014/15-2023/24", - "LatestUpdate": "11.10.2024 08:16:40h", - "Information": "false" - }, - { - "Code": "21111LJ043", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Schulart, Schuljahr", - "State": "undefiniert", - "Time": "2000/01-2023/24", - "LatestUpdate": "11.10.2024 08:16:58h", - "Information": "false" - }, - { - "Code": "21111LJ044", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Förderschwerpunkte, Schuljahr", - "State": "undefiniert", - "Time": "2000/01-2023/24", - "LatestUpdate": "11.10.2024 08:15:33h", - "Information": "false" - }, - { - "Code": "21111LJ045", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Geschlecht, Schulart, Schuljahr", - "State": "undefiniert", - "Time": "2014/15-2023/24", - "LatestUpdate": "11.10.2024 08:15:57h", - "Information": "false" - }, - { - "Code": "21111LJ046", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Geschlecht, Förderschwerpunkte, Schuljahr", - "State": "undefiniert", - "Time": "2014/15-2023/24", - "LatestUpdate": "11.10.2024 08:15:53h", - "Information": "false" - }, - { - "Code": "21111LJ047", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Schulart, Förderschwerpunkte, Schuljahr", - "State": "undefiniert", - "Time": "2000/01-2023/24", - "LatestUpdate": "11.10.2024 08:14:43h", - "Information": "false" - }, - { - "Code": "21111LJ048", - "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Geschlecht, Schulart, Förderschwerpunkte, Schuljahr", - "State": "undefiniert", - "Time": "2014/15-2023/24", - "LatestUpdate": "11.10.2024 08:17:26h", - "Information": "false" - }, - { - "Code": "21121LJ001", - "Content": "Statistik der beruflichen Schulen, Schüler, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:02:25h", - "Information": "false" - }, - { - "Code": "21121LJ002", - "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:03:32h", - "Information": "false" - }, - { - "Code": "21121LJ003", - "Content": "Statistik der beruflichen Schulen, Schüler, Geschlecht, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:03:25h", - "Information": "false" - }, - { - "Code": "21121LJ004", - "Content": "Statistik der beruflichen Schulen, Schüler, Zeitform des Unterrichts, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:02:18h", - "Information": "false" - }, - { - "Code": "21121LJ005", - "Content": "Statistik der beruflichen Schulen, Schüler, Nationalität, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:03:18h", - "Information": "false" - }, - { - "Code": "21121LJ006", - "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Geschlecht, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:03:21h", - "Information": "false" - }, - { - "Code": "21121LJ007", - "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Zeitform des Unterrichts, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:03:35h", - "Information": "false" - }, - { - "Code": "21121LJ008", - "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Nationalität, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:02:49h", - "Information": "false" - }, - { - "Code": "21121LJ009", - "Content": "Statistik der beruflichen Schulen, Schüler, Geschlecht, Zeitform des Unterrichts, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:03:28h", - "Information": "false" - }, - { - "Code": "21121LJ010", - "Content": "Statistik der beruflichen Schulen, Schüler, Geschlecht, Nationalität, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:01:29h", - "Information": "false" - }, - { - "Code": "21121LJ011", - "Content": "Statistik der beruflichen Schulen, Schüler, Zeitform des Unterrichts, Nationalität, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:01:49h", - "Information": "false" - }, - { - "Code": "21121LJ012", - "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Geschlecht, Zeitform des Unterrichts, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:02:22h", - "Information": "false" - }, - { - "Code": "21121LJ013", - "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Geschlecht, Nationalität, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:02:36h", - "Information": "false" - }, - { - "Code": "21121LJ014", - "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Zeitform des Unterrichts, Nationalität, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:02:28h", - "Information": "false" - }, - { - "Code": "21121LJ015", - "Content": "Statistik der beruflichen Schulen, Schüler, Geschlecht, Zeitform des Unterrichts, Nationalität, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:02:32h", - "Information": "false" - }, - { - "Code": "21121LJ016", - "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Geschlecht, Zeitform des Unterrichts, Nationalität, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2001/02-2023/24", - "LatestUpdate": "29.10.2024 08:02:41h", - "Information": "false" - }, - { - "Code": "21121LJ017", - "Content": "Statistik der beruflichen Schulen, Schüler mit Fremdsprachen-Unterricht, Fremdsprachen, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2009/10-2023/24", - "LatestUpdate": "29.10.2024 08:02:52h", - "Information": "false" - }, - { - "Code": "21121LJ018", - "Content": "Statistik der beruflichen Schulen, Schüler mit Fremdsprachen-Unterricht, Schulart (beruflich), Fremdsprachen, Bundesländer, Schuljahr", - "State": "undefiniert", - "Time": "2009/10-2023/24", - "LatestUpdate": "29.10.2024 08:02:45h", - "Information": "false" - }, - { - "Code": "21211LJ001", - "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "31.12.2008-31.12.2023", - "LatestUpdate": "28.08.2024 18:01:44h", - "Information": "false" - }, - { - "Code": "21211LJ002", - "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "31.12.2008-31.12.2023", - "LatestUpdate": "28.08.2024 18:02:03h", - "Information": "false" - }, - { - "Code": "21211LJ003", - "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Nationalität, Stichtag", - "State": "undefiniert", - "Time": "31.12.2008-31.12.2023", - "LatestUpdate": "28.08.2024 18:02:44h", - "Information": "false" - }, - { - "Code": "21211LJ004", - "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Geschlecht, Nationalität, Stichtag", - "State": "undefiniert", - "Time": "31.12.2008-31.12.2023", - "LatestUpdate": "28.08.2024 18:02:41h", - "Information": "false" - }, - { - "Code": "21211LJ005", - "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Ausbildungsbereich, Stichtag", - "State": "undefiniert", - "Time": "31.12.2008-31.12.2023", - "LatestUpdate": "28.08.2024 18:01:54h", - "Information": "false" - }, - { - "Code": "21211LJ006", - "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Geschlecht, Ausbildungsbereich, Stichtag", - "State": "undefiniert", - "Time": "31.12.2008-31.12.2023", - "LatestUpdate": "28.08.2024 18:00:59h", - "Information": "false" - }, - { - "Code": "21211LJ007", - "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Nationalität, Ausbildungsbereich, Stichtag", - "State": "undefiniert", - "Time": "31.12.2008-31.12.2023", - "LatestUpdate": "28.08.2024 18:01:41h", - "Information": "false" - }, - { - "Code": "21211LJ008", - "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Geschlecht, Nationalität, Ausbildungsbereich, Stichtag", - "State": "undefiniert", - "Time": "31.12.2008-31.12.2023", - "LatestUpdate": "28.08.2024 18:01:51h", - "Information": "false" - }, - { - "Code": "21211LJ009", - "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Altersjahre (u17-24m), Stichtag", - "State": "undefiniert", - "Time": "31.12.2008-31.12.2023", - "LatestUpdate": "28.08.2024 18:00:56h", - "Information": "false" - }, - { - "Code": "21211LJ010", - "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Geschlecht, Altersjahre (u17-24m), Stichtag", - "State": "undefiniert", - "Time": "31.12.2008-31.12.2023", - "LatestUpdate": "28.08.2024 18:02:06h", - "Information": "false" - }, - { - "Code": "21211LJ011", - "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Schulabschluss, Stichtag", - "State": "undefiniert", - "Time": "31.12.2008-31.12.2023", - "LatestUpdate": "28.08.2024 18:02:47h", - "Information": "false" - }, - { - "Code": "21211LJ012", - "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Geschlecht, Schulabschluss, Stichtag", - "State": "undefiniert", - "Time": "31.12.2008-31.12.2023", - "LatestUpdate": "28.08.2024 18:02:38h", - "Information": "false" - }, - { - "Code": "21211LJ101", - "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2008-2023", - "LatestUpdate": "28.08.2024 18:16:58h", - "Information": "false" - }, - { - "Code": "21211LJ102", - "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2008-2023", - "LatestUpdate": "28.08.2024 18:17:42h", - "Information": "false" - }, - { - "Code": "21211LJ103", - "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Nationalität, Jahr", - "State": "undefiniert", - "Time": "2008-2023", - "LatestUpdate": "28.08.2024 18:17:45h", - "Information": "false" - }, - { - "Code": "21211LJ104", - "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Geschlecht, Nationalität, Jahr", - "State": "undefiniert", - "Time": "2008-2023", - "LatestUpdate": "28.08.2024 18:16:55h", - "Information": "false" - }, - { - "Code": "21211LJ105", - "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Ausbildungsbereich, Jahr", - "State": "undefiniert", - "Time": "2008-2023", - "LatestUpdate": "28.08.2024 18:16:07h", - "Information": "false" - }, - { - "Code": "21211LJ106", - "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Geschlecht, Ausbildungsbereich, Jahr", - "State": "undefiniert", - "Time": "2008-2023", - "LatestUpdate": "28.08.2024 18:16:38h", - "Information": "false" - }, - { - "Code": "21211LJ107", - "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Nationalität, Ausbildungsbereich, Jahr", - "State": "undefiniert", - "Time": "2008-2023", - "LatestUpdate": "28.08.2024 18:16:42h", - "Information": "false" - }, - { - "Code": "21211LJ108", - "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Geschlecht, Nationalität, Ausbildungsbereich, Jahr", - "State": "undefiniert", - "Time": "2008-2023", - "LatestUpdate": "28.08.2024 18:15:58h", - "Information": "false" - }, - { - "Code": "21211LJ109", - "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Altersjahre (u17-24m), Jahr", - "State": "undefiniert", - "Time": "2008-2023", - "LatestUpdate": "28.08.2024 18:15:47h", - "Information": "false" - }, - { - "Code": "21211LJ110", - "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Geschlecht, Altersjahre (u17-24m), Jahr", - "State": "undefiniert", - "Time": "2008-2023", - "LatestUpdate": "28.08.2024 18:17:39h", - "Information": "false" - }, - { - "Code": "21211LJ111", - "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Schulabschluss, Jahr", - "State": "undefiniert", - "Time": "2008-2023", - "LatestUpdate": "28.08.2024 18:16:46h", - "Information": "false" - }, - { - "Code": "21211LJ112", - "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Geschlecht, Schulabschluss, Jahr", - "State": "undefiniert", - "Time": "2008-2023", - "LatestUpdate": "28.08.2024 18:17:49h", - "Information": "false" - }, - { - "Code": "21241LJ001", - "Content": "Pflegeausbildungsstatistik, Auszubildende m.neu abgeschloss.Ausbildungsvertrag, Beendete Ausbildungen, Ausbildungseintritte (inkl. vorzeitige Lösungen), Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "31.12.2020-31.12.2023", - "LatestUpdate": "23.07.2024 11:17:36h", - "Information": "false" - }, - { - "Code": "21241LJ002", - "Content": "Pflegeausbildungsstatistik, Auszubildende m.neu abgeschloss.Ausbildungsvertrag, Bundesländer, Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "31.12.2020-31.12.2023", - "LatestUpdate": "23.07.2024 11:17:39h", - "Information": "false" - }, - { - "Code": "21241LJ003", - "Content": "Pflegeausbildungsstatistik, Auszubildende m.neu abgeschloss.Ausbildungsvertrag, Bundesländer, Altersgruppen (u17-50m), Stichtag", - "State": "undefiniert", - "Time": "31.12.2020-31.12.2023", - "LatestUpdate": "23.07.2024 11:18:37h", - "Information": "false" - }, - { - "Code": "21241LJ004", - "Content": "Pflegeausbildungsstatistik, Auszubildende m.neu abgeschloss.Ausbildungsvertrag, Bundesländer, Ausbildungsumfang, Stichtag", - "State": "undefiniert", - "Time": "31.12.2020-31.12.2023", - "LatestUpdate": "23.07.2024 11:17:45h", - "Information": "false" - }, - { - "Code": "21241LJ005", - "Content": "Pflegeausbildungsstatistik, Auszubildende m.neu abgeschloss.Ausbildungsvertrag, Bundesländer, Erhalt von Fördermitteln, Stichtag", - "State": "undefiniert", - "Time": "31.12.2020-31.12.2023", - "LatestUpdate": "23.07.2024 11:18:33h", - "Information": "false" - }, - { - "Code": "21241LJ006", - "Content": "Pflegeausbildungsstatistik, Auszubildende m.neu abgeschloss.Ausbildungsvertrag, Bundesländer, Art der Trägerschaft der Pflegeschulen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2020-31.12.2023", - "LatestUpdate": "23.07.2024 11:17:42h", - "Information": "false" - }, - { - "Code": "21241LJ007", - "Content": "Pflegeausbildungsstatistik, Beendete Ausbildungen, Bundesländer, Prüfungsergebnis, Stichtag", - "State": "undefiniert", - "Time": "31.12.2020-31.12.2023", - "LatestUpdate": "23.07.2024 11:17:33h", - "Information": "false" - }, - { - "Code": "21241LJ008", - "Content": "Pflegeausbildungsstatistik, Pflegeschulen, Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "31.12.2020-31.12.2023", - "LatestUpdate": "23.07.2024 11:16:39h", - "Information": "false" - }, - { - "Code": "21241LJ009", - "Content": "Pflegeausbildungsstatistik, Pflegeschulen, Bundesländer, Art der Trägerschaft der Pflegeschulen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2020-31.12.2023", - "LatestUpdate": "23.07.2024 11:18:40h", - "Information": "false" - }, - { - "Code": "21311LS001", - "Content": "Statistik der Studenten, Studierende, Bundesländer, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:08:45h", - "Information": "false" - }, - { - "Code": "21311LS002", - "Content": "Statistik der Studenten, Studierende, Bundesländer, Geschlecht, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:09:06h", - "Information": "false" - }, - { - "Code": "21311LS003", - "Content": "Statistik der Studenten, Studierende, Bundesländer, Nationalität, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:09:03h", - "Information": "false" - }, - { - "Code": "21311LS004", - "Content": "Statistik der Studenten, Studierende, Bundesländer, Nationalität, Geschlecht, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:08:42h", - "Information": "false" - }, - { - "Code": "21311LS005", - "Content": "Statistik der Studenten, Studierende, Bundesländer, Studienfach, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:09:18h", - "Information": "false" - }, - { - "Code": "21311LS006", - "Content": "Statistik der Studenten, Studierende, Bundesländer, Studienfach, Geschlecht, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:08:59h", - "Information": "false" - }, - { - "Code": "21311LS007", - "Content": "Statistik der Studenten, Studierende, Bundesländer, Studienfach, Nationalität, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:10:18h", - "Information": "false" - }, - { - "Code": "21311LS008", - "Content": "Statistik der Studenten, Studierende, Bundesländer, Studienfach, Nationalität, Geschlecht, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:08:38h", - "Information": "false" - }, - { - "Code": "21311LS101", - "Content": "Statistik der Studenten, Studienanfänger, Bundesländer, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:10:21h", - "Information": "false" - }, - { - "Code": "21311LS102", - "Content": "Statistik der Studenten, Studienanfänger, Geschlecht, Bundesländer, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:09:09h", - "Information": "false" - }, - { - "Code": "21311LS103", - "Content": "Statistik der Studenten, Studienanfänger, Nationalität, Bundesländer, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:09:21h", - "Information": "false" - }, - { - "Code": "21311LS104", - "Content": "Statistik der Studenten, Studienanfänger, Geschlecht, Nationalität, Bundesländer, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:11:16h", - "Information": "false" - }, - { - "Code": "21311LS105", - "Content": "Statistik der Studenten, Studienanfänger, Studienfach, Bundesländer, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:11:13h", - "Information": "false" - }, - { - "Code": "21311LS106", - "Content": "Statistik der Studenten, Studienanfänger, Geschlecht, Studienfach, Bundesländer, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:11:05h", - "Information": "false" - }, - { - "Code": "21311LS107", - "Content": "Statistik der Studenten, Studienanfänger, Nationalität, Studienfach, Bundesländer, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:10:33h", - "Information": "false" - }, - { - "Code": "21311LS108", - "Content": "Statistik der Studenten, Studienanfänger, Geschlecht, Nationalität, Studienfach, Bundesländer, Semester", - "State": "undefiniert", - "Time": "WS 1998/99-WS 2023/24", - "LatestUpdate": "09.08.2024 08:10:52h", - "Information": "false" - }, - { - "Code": "21321LJ004", - "Content": "Statistik der Prüfungen, Prüfungen, Bundesländer, Studienfach, Nationalität, Geschlecht, Prüfungsergebnis, Jahr", - "State": "undefiniert", - "Time": "1999-2023", - "LatestUpdate": "16.09.2024 08:02:18h", - "Information": "false" - }, - { - "Code": "21321LJ006", - "Content": "Statistik der Prüfungen, Prüfungen, Bundesländer, Nationalität, Geschlecht, Prüfungsergebnis, Abgelegte Abschlussprüfung, Jahr", - "State": "undefiniert", - "Time": "1999-2023", - "LatestUpdate": "16.09.2024 08:01:28h", - "Information": "false" - }, - { - "Code": "21351LJ001", - "Content": "Statistik der Habilitationen, Habilitationen, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "1992-2023", - "LatestUpdate": "02.07.2024 08:00:12h", - "Information": "false" - }, - { - "Code": "21352LJ001", - "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:03:08h", - "Information": "false" - }, - { - "Code": "21352LJ002", - "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:03:43h", - "Information": "false" - }, - { - "Code": "21352LJ003", - "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Nationalität, Stichtag", - "State": "undefiniert", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:03:47h", - "Information": "false" - }, - { - "Code": "21352LJ004", - "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Hochschulart, Stichtag", - "State": "undefiniert", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:02:59h", - "Information": "false" - }, - { - "Code": "21352LJ005", - "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Geschlecht, Nationalität, Stichtag", - "State": "undefiniert", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:03:33h", - "Information": "false" - }, - { - "Code": "21352LJ006", - "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Geschlecht, Hochschulart, Stichtag", - "State": "undefiniert", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:03:40h", - "Information": "false" - }, - { - "Code": "21352LJ007", - "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Nationalität, Hochschulart, Stichtag", - "State": "undefiniert", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:03:37h", - "Information": "false" - }, - { - "Code": "21352LJ008", - "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Geschlecht, Nationalität, Hochschulart, Stichtag", - "State": "undefiniert", - "Time": "01.12.2019-01.12.2023", - "LatestUpdate": "16.08.2024 08:03:03h", - "Information": "false" - }, - { - "Code": "21353LJ001", - "Content": "Statistik der Hochschulräte, Hochschulräte, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "12.03.2024 08:02:17h", - "Information": "false" - }, - { - "Code": "21353LJ002", - "Content": "Statistik der Hochschulräte, Hochschulräte, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "12.03.2024 08:02:14h", - "Information": "false" - }, - { - "Code": "21353LJ003", - "Content": "Statistik der Hochschulräte, Hochschulräte, Bundesländer, Hochschulart, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "12.03.2024 08:02:08h", - "Information": "false" - }, - { - "Code": "21353LJ004", - "Content": "Statistik der Hochschulräte, Hochschulräte, Bundesländer, Geschlecht, Hochschulart, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "12.03.2024 08:02:05h", - "Information": "false" - }, - { - "Code": "21354LJ001", - "Content": "Statistik der Berufsakademien, Studierende, Studienanfänger, Bundesländer, Geschlecht, Nationalität, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "23.05.2024 08:00:49h", - "Information": "false" - }, - { - "Code": "21354LJ002", - "Content": "Statistik der Berufsakademien, Bestandene Prüfungen, Bundesländer, Geschlecht, Art der Prüfung, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "23.05.2024 08:00:41h", - "Information": "false" - }, - { - "Code": "21354LJ003", - "Content": "Statistik der Berufsakademien, Personal, Bundesländer, Geschlecht, Art des Personals, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "23.05.2024 08:00:53h", - "Information": "false" - }, - { - "Code": "21354LJ004", - "Content": "Statistik der Berufsakademien, Studierende je Lehrperson (Betreuungsrelation), Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "23.05.2024 08:00:37h", - "Information": "false" - }, - { - "Code": "21354LJ005", - "Content": "Statistik der Berufsakademien, Studierende je Lehrperson (Betreuungsrelation), Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2017-2023", - "LatestUpdate": "23.05.2024 08:00:25h", - "Information": "false" - }, - { - "Code": "21371LJ001", - "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2006-2022", - "LatestUpdate": "19.03.2024 08:00:58h", - "Information": "false" - }, - { - "Code": "21371LJ002", - "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Bundesländer, Hochschulart, Jahr", - "State": "undefiniert", - "Time": "2006-2022", - "LatestUpdate": "19.03.2024 08:00:50h", - "Information": "false" - }, - { - "Code": "21371LJ003", - "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Bundesländer, Fächergruppen, Jahr", - "State": "undefiniert", - "Time": "2006-2022", - "LatestUpdate": "19.03.2024 08:00:38h", - "Information": "false" - }, - { - "Code": "21371LJ004", - "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Bundesländer, Hochschulart, Fächergruppen, Jahr", - "State": "undefiniert", - "Time": "2006-2022", - "LatestUpdate": "19.03.2024 08:00:54h", - "Information": "false" - }, - { - "Code": "21381LJ001", - "Content": "Hochschulstatistische Kennzahlen, Absolventenquote, Studienanfängerquote (Hochschulzugangsberechtig.), Studienanfängerquote, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "22.01.2025 14:33:45h", - "Information": "false" - }, - { - "Code": "21381LJ002", - "Content": "Hochschulstatistische Kennzahlen, Absolventenquote, Studienanfängerquote (Hochschulzugangsberechtig.), Studienanfängerquote, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "22.01.2025 14:31:46h", - "Information": "false" - }, - { - "Code": "21381LJ003", - "Content": "Hochschulstatistische Kennzahlen, Studienberechtigtenquote, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2006-2023", - "LatestUpdate": "22.01.2025 14:30:45h", - "Information": "false" - }, - { - "Code": "21381LJ004", - "Content": "Hochschulstatistische Kennzahlen, Studienberechtigtenquote, Bundesländer, Schulabschluss, Jahr", - "State": "undefiniert", - "Time": "2006-2023", - "LatestUpdate": "22.01.2025 14:33:42h", - "Information": "false" - }, - { - "Code": "21381LJ101", - "Content": "Hochschulstatistische Kennzahlen, Laufende Ausgaben der Hochschulen je Studierenden, Laufende Ausgaben d. Hochschulen je Wiss. Personal, Laufende Ausgaben der Hochschulen je Professor, Drittmittel der Hochschulen je Wiss. Personal, Drittmittel der Hochschulen je Professor, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2011-2022", - "LatestUpdate": "17.09.2024 08:01:38h", - "Information": "false" - }, - { - "Code": "21411LJ001", - "Content": "Statistik der Bundesausbildungsförderung (BAföG), Geförderte Personen, Personen mit Vollförderung, Personen mit Teilförderung, Geförderte Personen (durchschnittl. Monatsbestand), Finanzieller Aufwand, Durchschnittl. monatl. Förderungsbetrag pro Person, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "1991-2023", - "LatestUpdate": "05.08.2024 08:05:11h", - "Information": "false" - }, - { - "Code": "21411LJ002", - "Content": "Statistik der Bundesausbildungsförderung (BAföG), Geförderte Personen, Personen mit Vollförderung, Personen mit Teilförderung, Geförderte Personen (durchschnittl. Monatsbestand), Finanzieller Aufwand, Durchschnittl. monatl. Förderungsbetrag pro Person, Bundesländer, Personenkreis, Jahr", - "State": "undefiniert", - "Time": "1991-2023", - "LatestUpdate": "05.08.2024 08:05:08h", - "Information": "false" - }, - { - "Code": "21421LJ001", - "Content": "Statistik der Aufstiegsfortbildungsförderung, Geförderte Personen, Bundesländer, Bewilligung/Inanspruchnahme, Form der Fortbildungsmaßnahme, Fortbildungsstätten, Jahr", - "State": "undefiniert", - "Time": "2003-2023", - "LatestUpdate": "28.06.2024 08:04:27h", - "Information": "false" - }, - { - "Code": "21421LJ002", - "Content": "Statistik der Aufstiegsfortbildungsförderung, Geförderte Personen, Bundesländer, Bewilligung/Inanspruchnahme, Form der Fortbildungsmaßnahme, Fortbildungsziele, Jahr", - "State": "undefiniert", - "Time": "2003-2023", - "LatestUpdate": "28.06.2024 08:04:13h", - "Information": "false" - }, - { - "Code": "21421LJ003", - "Content": "Statistik der Aufstiegsfortbildungsförderung, Geförderte Personen, Bundesländer, Bewilligung/Inanspruchnahme, Form der Fortbildungsmaßnahme, Fortbildungsstätten, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2003-2023", - "LatestUpdate": "28.06.2024 08:04:18h", - "Information": "false" - }, - { - "Code": "21421LJ004", - "Content": "Statistik der Aufstiegsfortbildungsförderung, Geförderte Personen, Bundesländer, Bewilligung/Inanspruchnahme, Form der Fortbildungsmaßnahme, Einkommensgrößenklassen, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2003-2023", - "LatestUpdate": "28.06.2024 08:03:40h", - "Information": "false" - }, - { - "Code": "21421LJ005", - "Content": "Statistik der Aufstiegsfortbildungsförderung, Finanzieller Aufwand, Bundesländer, Bewilligung/Inanspruchnahme, Jahr", - "State": "undefiniert", - "Time": "2003-2023", - "LatestUpdate": "28.06.2024 08:03:52h", - "Information": "false" - }, - { - "Code": "21421LJ006", - "Content": "Statistik der Aufstiegsfortbildungsförderung, Finanzieller Aufwand, Bundesländer, Bewilligung/Inanspruchnahme, Art des finanziellen Aufwandes, Jahr", - "State": "undefiniert", - "Time": "2003-2023", - "LatestUpdate": "28.06.2024 08:02:39h", - "Information": "false" - }, - { - "Code": "21421LJ007", - "Content": "Statistik der Aufstiegsfortbildungsförderung, Finanzieller Aufwand, Bundesländer, Bewilligung/Inanspruchnahme, Fortbildungsstätten, Jahr", - "State": "undefiniert", - "Time": "2003-2023", - "LatestUpdate": "28.06.2024 08:02:49h", - "Information": "false" - }, - { - "Code": "21421LJ008", - "Content": "Statistik der Aufstiegsfortbildungsförderung, Finanzieller Aufwand, Bundesländer, Bewilligung/Inanspruchnahme, Fortbildungsziele, Jahr", - "State": "undefiniert", - "Time": "2003-2023", - "LatestUpdate": "28.06.2024 08:04:08h", - "Information": "false" - }, - { - "Code": "21421LJ009", - "Content": "Statistik der Aufstiegsfortbildungsförderung, Finanzieller Aufwand, Bundesländer, Bewilligung/Inanspruchnahme, Art des finanziellen Aufwandes, Fortbildungsstätten, Jahr", - "State": "undefiniert", - "Time": "2003-2023", - "LatestUpdate": "28.06.2024 08:03:36h", - "Information": "false" - }, - { - "Code": "21421LJ010", - "Content": "Statistik der Aufstiegsfortbildungsförderung, Finanzieller Aufwand, Bundesländer, Bewilligung/Inanspruchnahme, Art des finanziellen Aufwandes, Fortbildungsziele, Jahr", - "State": "undefiniert", - "Time": "2003-2023", - "LatestUpdate": "28.06.2024 08:04:23h", - "Information": "false" - }, - { - "Code": "21421LJ011", - "Content": "Statistik der Aufstiegsfortbildungsförderung, Geförderte Personen (durchschnittl. Monatsbestand), Durchschnittl. monatl. Förderungsbetrag pro Person, Bundesländer, Bewilligung/Inanspruchnahme, Art der Förderung, Jahr", - "State": "undefiniert", - "Time": "2003-2023", - "LatestUpdate": "28.06.2024 08:03:49h", - "Information": "false" - }, - { - "Code": "21421LJ012", - "Content": "Statistik der Aufstiegsfortbildungsförderung, Geförderte Personen (durchschnittl. Monatsbestand), Durchschnittl. monatl. Förderungsbetrag pro Person, Bundesländer, Bewilligung/Inanspruchnahme, Fortbildungsstätten, Art der Förderung, Jahr", - "State": "undefiniert", - "Time": "2003-2023", - "LatestUpdate": "28.06.2024 08:03:45h", - "Information": "false" - }, - { - "Code": "21431LJ001", - "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Mittelgeber, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2011-2023", - "LatestUpdate": "07.05.2024 08:04:29h", - "Information": "false" - }, - { - "Code": "21431LJ002", - "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Bundesländer, Geschlecht, Jahr", - "State": "undefiniert", - "Time": "2011-2023", - "LatestUpdate": "07.05.2024 08:04:18h", - "Information": "false" - }, - { - "Code": "21431LJ003", - "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Mittelgeber, Bundesländer, Hochschulart, Jahr", - "State": "undefiniert", - "Time": "2011-2023", - "LatestUpdate": "07.05.2024 08:04:08h", - "Information": "false" - }, - { - "Code": "21431LJ004", - "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Bundesländer, Geschlecht, Hochschulart, Jahr", - "State": "undefiniert", - "Time": "2011-2023", - "LatestUpdate": "07.05.2024 08:04:35h", - "Information": "false" - }, - { - "Code": "21611LJ001", - "Content": "Kulturstatistik, Leinwände, Kinos, Sitzplätze der Kinos, Filmbesuche, Filmbesuche je Einwohner, Durchschnittlicher Kino-Eintrittspreis, Bruttoeinnahmen aus dem Filmbesuch, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "27.08.2024 16:29:24h", - "Information": "false" - }, - { - "Code": "21611LJ100", - "Content": "Kulturstatistik, Museen, Ausstellungen, Museumsbesuche, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2002-2022", - "LatestUpdate": "16.07.2024 11:43:32h", - "Information": "false" - }, - { - "Code": "21611LJ110", - "Content": "Kulturstatistik, Öffentlich geförderte Theaterunternehmen, Spielstätten, Veranstaltungen am Ort, Theaterbesuche, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2000-2022", - "LatestUpdate": "07.02.2024 12:44:12h", - "Information": "false" - }, - { - "Code": "21611LJ120", - "Content": "Kulturstatistik, Öffentlich geförderte Musikschulen, Lehrer in öffentlich geförderten Musikschulen, Schüler in öffentlich geförderten Musikschulen, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2000-2022", - "LatestUpdate": "27.08.2024 16:30:19h", - "Information": "false" - }, - { - "Code": "21611LJ121", - "Content": "Kulturstatistik, Schüler in öffentlich geförderten Musikschulen, Bundesländer, Altersgruppen (u6-61m, unbekannt), Jahr", - "State": "undefiniert", - "Time": "2000-2022", - "LatestUpdate": "27.08.2024 16:30:22h", - "Information": "false" - }, - { - "Code": "21611LJ200", - "Content": "Kulturstatistik, Haupt- und Zweigstellen der Bibliotheken, Meldende Bibliotheken, Bestand, Entleiher, Bibliotheksbesuche, Bundesländer, Bibliotheksarten, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "17.07.2024 08:02:51h", - "Information": "false" - }, - { - "Code": "21621LJ001", - "Content": "Berichterstattung über öffentliche Kulturausgaben, Öffentliche Ausgaben für Kultur, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2005-2021", - "LatestUpdate": "10.12.2024 08:02:40h", - "Information": "false" - }, - { - "Code": "21621LJ002", - "Content": "Berichterstattung über öffentliche Kulturausgaben, Öffentliche Ausgaben für Kultur, Bundesländer, Kulturbereiche, Jahr", - "State": "undefiniert", - "Time": "2005-2021", - "LatestUpdate": "10.12.2024 08:02:03h", - "Information": "false" - }, - { - "Code": "21711LJ001", - "Content": "Bildungsberichterstattung für nationale Zwecke, Ausgaben der öffentlichen Haushalte für Bildung, Ausgaben der öff. Haushalte für Bildung je Einw., Anteil d.Ausgaben d. öff. Haushalte f.Bild. am BIP, Anteil d.Ausgaben d. öff. HH f.Bild. am GesamtHH, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "1995-2024", - "LatestUpdate": "27.01.2025 08:03:04h", - "Information": "false" - }, - { - "Code": "21711LJ002", - "Content": "Bildungsberichterstattung für nationale Zwecke, Ausgaben der öffentlichen Haushalte für Bildung, Ausgaben der öff. Haushalte für Bildung je Einw., Anteil d.Ausgaben d. öff. Haushalte f.Bild. am BIP, Anteil d.Ausgaben d. öff. HH f.Bild. am GesamtHH, Bundesländer, Aufgabenbereiche der öffentlichen Haushalte, Jahr", - "State": "undefiniert", - "Time": "1995-2024", - "LatestUpdate": "27.01.2025 08:02:52h", - "Information": "false" - }, - { - "Code": "21711LJ003", - "Content": "Bildungsberichterstattung für nationale Zwecke, Ausgaben der öffentlichen Haushalte für Bildung, Ausgaben der öff. Haushalte für Bildung je Einw., Anteil d.Ausgaben d. öff. Haushalte f.Bild. am BIP, Anteil d.Ausgaben d. öff. HH f.Bild. am GesamtHH, Bundesländer, Körperschaftsgruppen, Jahr", - "State": "undefiniert", - "Time": "1995-2024", - "LatestUpdate": "27.01.2025 08:02:56h", - "Information": "false" - }, - { - "Code": "21711LJ004", - "Content": "Bildungsberichterstattung für nationale Zwecke, Ausgaben der öffentlichen Haushalte für Bildung, Ausgaben der öff. Haushalte für Bildung je Einw., Anteil d.Ausgaben d. öff. Haushalte f.Bild. am BIP, Anteil d.Ausgaben d. öff. HH f.Bild. am GesamtHH, Bundesländer, Aufgabenbereiche der öffentlichen Haushalte, Körperschaftsgruppen, Jahr", - "State": "undefiniert", - "Time": "1995-2024", - "LatestUpdate": "27.01.2025 08:03:01h", - "Information": "false" - }, - { - "Code": "21711LJ005", - "Content": "Bildungsberichterstattung für nationale Zwecke, Ausgaben für öffentliche Schulen je Schüler, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2010-2023", - "LatestUpdate": "21.03.2025 18:00:27h", - "Information": "false" - }, - { - "Code": "21821LJ001", - "Content": "Berichterstattung über Forschung und Entwicklung, Interne Ausgaben für Forschung und Entwicklung, Anteil der internen Ausgaben für FuE am BIP, Personal für FuE (Vollzeitäquivalente), Ausgaben je Beschäftigten in FuE, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "1995-2022", - "LatestUpdate": "27.05.2024 12:52:19h", - "Information": "false" - }, - { - "Code": "21821LJ002", - "Content": "Berichterstattung über Forschung und Entwicklung, Interne Ausgaben für Forschung und Entwicklung, Anteil der internen Ausgaben für FuE am BIP, Personal für FuE (Vollzeitäquivalente), Ausgaben je Beschäftigten in FuE, Bundesländer, Sektoren, Jahr", - "State": "undefiniert", - "Time": "1995-2022", - "LatestUpdate": "27.05.2024 12:53:18h", - "Information": "false" - }, - { - "Code": "21821LJ100", - "Content": "Berichterstattung über Forschung und Entwicklung, Patentanmeldungen, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2000-2023", - "LatestUpdate": "31.10.2024 09:06:38h", - "Information": "false" - }, - { - "Code": "22111LJ001", - "Content": "Statistik d. Ausgaben u. Einnahmen der Sozialhilfe, Bruttoausgaben, Bruttoausgaben je Einwohner, Einnahmen, Nettoausgaben, Nettoausgaben je Einwohner, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "1994-2023", - "LatestUpdate": "02.08.2024 08:00:23h", - "Information": "false" - }, - { - "Code": "22111LJ002", - "Content": "Statistik d. Ausgaben u. Einnahmen der Sozialhilfe, Bruttoausgaben, Einnahmen, Nettoausgaben, Bundesländer, Ort der Leistungserbringung, Jahr", - "State": "undefiniert", - "Time": "1994-2023", - "LatestUpdate": "02.08.2024 08:00:26h", - "Information": "false" - }, - { - "Code": "22111LJ003", - "Content": "Statistik d. Ausgaben u. Einnahmen der Sozialhilfe, Bruttoausgaben, Bundesländer, Sozialhilfeträger, Jahr", - "State": "undefiniert", - "Time": "1994-2004", - "LatestUpdate": "30.01.2015 10:29:16h", - "Information": "false" - }, - { - "Code": "22111LJ004", - "Content": "Statistik d. Ausgaben u. Einnahmen der Sozialhilfe, Bruttoausgaben, Bundesländer, Sozialhilfearten (1994-2004), Jahr", - "State": "undefiniert", - "Time": "1994-2004", - "LatestUpdate": "30.01.2015 10:29:19h", - "Information": "false" - }, - { - "Code": "22111LJ005", - "Content": "Statistik d. Ausgaben u. Einnahmen der Sozialhilfe, Bruttoausgaben, Einnahmen, Nettoausgaben, Bundesländer, Sozialhilfearten, Jahr", - "State": "undefiniert", - "Time": "2005-2023", - "LatestUpdate": "02.08.2024 08:00:32h", - "Information": "false" - }, - { - "Code": "22111LJ006", - "Content": "Statistik d. Ausgaben u. Einnahmen der Sozialhilfe, Bruttoausgaben, Bundesländer, Ort der Leistungserbringung, Sozialhilfeträger, Jahr", - "State": "undefiniert", - "Time": "1994-2004", - "LatestUpdate": "30.01.2015 10:29:23h", - "Information": "false" - }, - { - "Code": "22111LJ007", - "Content": "Statistik d. Ausgaben u. Einnahmen der Sozialhilfe, Bruttoausgaben, Bundesländer, Ort der Leistungserbringung, Sozialhilfearten (1994-2004), Jahr", - "State": "undefiniert", - "Time": "1994-2004", - "LatestUpdate": "30.01.2015 10:29:27h", - "Information": "false" - }, - { - "Code": "22111LJ008", - "Content": "Statistik d. Ausgaben u. Einnahmen der Sozialhilfe, Bruttoausgaben, Bundesländer, Sozialhilfeträger, Sozialhilfearten (1994-2004), Jahr", - "State": "undefiniert", - "Time": "1994-2004", - "LatestUpdate": "30.01.2015 10:29:31h", - "Information": "false" - }, - { - "Code": "22111LJ009", - "Content": "Statistik d. Ausgaben u. Einnahmen der Sozialhilfe, Bruttoausgaben, Bundesländer, Ort der Leistungserbringung, Sozialhilfeträger, Sozialhilfearten (1994-2004), Jahr", - "State": "undefiniert", - "Time": "1994-2004", - "LatestUpdate": "30.01.2015 10:29:35h", - "Information": "false" - }, - { - "Code": "22121LJ001", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt, Empfänger von Hilfe zum Lebensunterhalt, Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2023", - "LatestUpdate": "08.08.2024 08:03:34h", - "Information": "false" - }, - { - "Code": "22121LJ002", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt, Empfänger von Hilfe zum Lebensunterhalt, Bundesländer, Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2023", - "LatestUpdate": "08.08.2024 08:02:28h", - "Information": "false" - }, - { - "Code": "22121LJ003", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt, Empfänger von Hilfe zum Lebensunterhalt, Bundesländer, Nationalität, Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2023", - "LatestUpdate": "08.08.2024 08:02:35h", - "Information": "false" - }, - { - "Code": "22121LJ004", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt, Empfänger von Hilfe zum Lebensunterhalt, Bundesländer, Ort der Leistungserbringung, Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2023", - "LatestUpdate": "08.08.2024 08:02:46h", - "Information": "false" - }, - { - "Code": "22121LJ005", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt, Empfänger von Hilfe zum Lebensunterhalt, Bundesländer, Altersgruppen (u18-65m), Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2023", - "LatestUpdate": "08.08.2024 08:03:24h", - "Information": "false" - }, - { - "Code": "22121LJ006", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt, Empfänger von Hilfe zum Lebensunterhalt, Bundesländer, Geschlecht, Nationalität, Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2023", - "LatestUpdate": "08.08.2024 08:03:21h", - "Information": "false" - }, - { - "Code": "22121LJ007", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt, Empfänger von Hilfe zum Lebensunterhalt, Bundesländer, Geschlecht, Ort der Leistungserbringung, Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2023", - "LatestUpdate": "08.08.2024 08:02:53h", - "Information": "false" - }, - { - "Code": "22121LJ008", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt, Empfänger von Hilfe zum Lebensunterhalt, Bundesländer, Geschlecht, Altersgruppen (u18-65m), Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2023", - "LatestUpdate": "08.08.2024 08:03:27h", - "Information": "false" - }, - { - "Code": "22121LJ009", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt, Empfänger von Hilfe zum Lebensunterhalt, Bundesländer, Nationalität, Ort der Leistungserbringung, Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2023", - "LatestUpdate": "08.08.2024 08:02:38h", - "Information": "false" - }, - { - "Code": "22121LJ010", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt, Empfänger von Hilfe zum Lebensunterhalt, Bundesländer, Ort der Leistungserbringung, Altersgruppen (u18-65m), Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2023", - "LatestUpdate": "08.08.2024 08:02:50h", - "Information": "false" - }, - { - "Code": "22121LJ011", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt, Empfänger von Hilfe zum Lebensunterhalt, Bundesländer, Geschlecht, Nationalität, Ort der Leistungserbringung, Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2023", - "LatestUpdate": "08.08.2024 08:02:42h", - "Information": "false" - }, - { - "Code": "22121LJ012", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt, Empfänger von Hilfe zum Lebensunterhalt, Bundesländer, Geschlecht, Ort der Leistungserbringung, Altersgruppen (u18-65m), Stichtag", - "State": "undefiniert", - "Time": "31.12.1995-31.12.2023", - "LatestUpdate": "08.08.2024 08:03:31h", - "Information": "false" - }, - { - "Code": "22121LJ013", - "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt, Personengemeinschaften von Hilfeempfängern, Bundesländer, Ort der Leistungserbringung, Stichtag", - "State": "undefiniert", - "Time": "31.12.2005-31.12.2023", - "LatestUpdate": "08.08.2024 08:03:17h", - "Information": "false" - }, - { - "Code": "22131LJ001", - "Content": "Statistik d. Empfänger v. Leist.(5.-9.Kap.SGB XII), Empfänger von Hilfeleistungen, Bundesländer, Art der Hilfe (1994-2004), Jahr", - "State": "undefiniert", - "Time": "1994-2004", - "LatestUpdate": "24.08.2016 16:18:48h", - "Information": "false" - }, - { - "Code": "22131LJ002", - "Content": "Statistik d. Empfänger v. Leist.(5.-9.Kap.SGB XII), Empfänger von Hilfeleistungen, Bundesländer, Geschlecht, Art der Hilfe (1994-2004), Jahr", - "State": "undefiniert", - "Time": "1994-2004", - "LatestUpdate": "25.08.2016 15:53:16h", - "Information": "false" - }, - { - "Code": "22131LJ003", - "Content": "Statistik d. Empfänger v. Leist.(5.-9.Kap.SGB XII), Empfänger von Hilfeleistungen, Bundesländer, Art der Hilfe, Jahr", - "State": "undefiniert", - "Time": "2005-2023", - "LatestUpdate": "09.10.2024 08:02:38h", - "Information": "false" - }, - { - "Code": "22131LJ004", - "Content": "Statistik d. Empfänger v. Leist.(5.-9.Kap.SGB XII), Empfänger von Hilfeleistungen, Bundesländer, Geschlecht, Art der Hilfe, Jahr", - "State": "undefiniert", - "Time": "2005-2023", - "LatestUpdate": "09.10.2024 08:03:19h", - "Information": "false" - }, - { - "Code": "22131LJ005", - "Content": "Statistik d. Empfänger v. Leist.(5.-9.Kap.SGB XII), Empfänger von Hilfeleistungen, Bundesländer, Art der Hilfe, Stichtag", - "State": "undefiniert", - "Time": "31.12.2005-31.12.2023", - "LatestUpdate": "09.10.2024 08:03:35h", - "Information": "false" - }, - { - "Code": "22131LJ006", - "Content": "Statistik d. Empfänger v. Leist.(5.-9.Kap.SGB XII), Empfänger von Hilfeleistungen, Bundesländer, Geschlecht, Art der Hilfe, Stichtag", - "State": "undefiniert", - "Time": "31.12.2005-31.12.2023", - "LatestUpdate": "09.10.2024 08:03:38h", - "Information": "false" - }, - { - "Code": "22131LJ007", - "Content": "Statistik d. Empfänger v. Leist.(5.-9.Kap.SGB XII), Empfänger von Hilfeleistungen, Bundesländer, Art der Hilfe, Ort der Leistungserbringung, Jahr", - "State": "undefiniert", - "Time": "2005-2023", - "LatestUpdate": "09.10.2024 08:03:16h", - "Information": "false" - }, - { - "Code": "22131LJ008", - "Content": "Statistik d. Empfänger v. Leist.(5.-9.Kap.SGB XII), Empfänger von Leistungen für Bestattungskosten, Bruttoausgaben für Bestattungskosten, Bundesländer, Jahr", - "State": "undefiniert", - "Time": "2005-2023", - "LatestUpdate": "09.10.2024 08:02:45h", - "Information": "false" - }, - { - "Code": "22151LJ001", - "Content": "Grundsicherung im Alter und bei Erwerbsminderung, Empfänger von Grundsicherung, Quote der Empfänger von Grundsicherung, Bundesländer, Stichtag", - "State": "undefiniert", - "Time": "31.12.2003-31.12.2014", - "LatestUpdate": "31.05.2016 12:08:12h", - "Information": "false" - }, - { - "Code": "22151LJ002", - "Content": "Grundsicherung im Alter und bei Erwerbsminderung, Empfänger von Grundsicherung, Quote der Empfänger von Grundsicherung, Bundesländer, Geschlecht, Stichtag", - "State": "undefiniert", - "Time": "31.12.2003-31.12.2014", - "LatestUpdate": "31.05.2016 12:08:13h", - "Information": "false" - }, - { - "Code": "22151LJ003", - "Content": "Grundsicherung im Alter und bei Erwerbsminderung, Empfänger von Grundsicherung, Quote der Empfänger von Grundsicherung, Bundesländer, Nationalität, Stichtag", - "State": "undefiniert", - "Time": "31.12.2003-31.12.2014", - "LatestUpdate": "31.05.2016 12:08:15h", - "Information": "false" - }, - { - "Code": "22151LJ004", - "Content": "Grundsicherung im Alter und bei Erwerbsminderung, Empfänger von Grundsicherung, Quote der Empfänger von Grundsicherung, Bundesländer, Altersgruppen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2003-31.12.2014", - "LatestUpdate": "31.05.2016 12:08:16h", - "Information": "false" - }, - { - "Code": "22151LJ005", - "Content": "Grundsicherung im Alter und bei Erwerbsminderung, Empfänger von Grundsicherung, Quote der Empfänger von Grundsicherung, Bundesländer, Geschlecht, Nationalität, Stichtag", - "State": "undefiniert", - "Time": "31.12.2003-31.12.2014", - "LatestUpdate": "31.05.2016 12:06:47h", - "Information": "false" - }, - { - "Code": "22151LJ006", - "Content": "Grundsicherung im Alter und bei Erwerbsminderung, Empfänger von Grundsicherung, Quote der Empfänger von Grundsicherung, Bundesländer, Geschlecht, Altersgruppen, Stichtag", - "State": "undefiniert", - "Time": "31.12.2003-31.12.2014", - "LatestUpdate": "31.05.2016 12:06:51h", - "Information": "false" - }, - { - "Code": "22151LJ007", - "Content": "Grundsicherung im Alter und bei Erwerbsminderung, Empfänger von Grundsicherung, Quote der Empfänger von Grundsicherung, Bundesländer, Altersgruppen, Nationalität, Stichtag", - "State": "undefiniert", - "Time": "31.12.2003-31.12.2014", - "LatestUpdate": "31.05.2016 12:06:49h", - "Information": "false" - }, - { - "Code": "22151LJ008", - "Content": "Grundsicherung im Alter und bei Erwerbsminderung, Empfänger von Grundsicherung, Quote der Empfänger von Grundsicherung, Bundesländer, Geschlecht, Altersgruppen, Nationalität, Stichtag", - "State": "undefiniert", - "Time": "31.12.2003-31.12.2014", - "LatestUpdate": "31.05.2016 12:08:22h", - "Information": "false" - }, - { - "Code": "22151LV001", - "Content": "Grundsicherung im Alter und bei Erwerbsminderung, Empfänger von Grundsicherung, Quote der Empfänger von Grundsicherung, Durchschnittlicher Bruttobedarf, Durchschnittlicher Nettobedarf, Durch.angerechn.Eink.(Leist.-ber.m.angerech.Eink.), Bundesländer, Berichtsmonat im Quartal, Jahr", - "State": "undefiniert", - "Time": "März 2015-September 2024", - "LatestUpdate": "03.01.2025 08:08:21h", - "Information": "false" - }, - { - "Code": "22151LV002", - "Content": "Grundsicherung im Alter und bei Erwerbsminderung, Empfänger von Grundsicherung, Quote der Empfänger von Grundsicherung, Bundesländer, Geschlecht, Berichtsmonat im Quartal, Jahr", - "State": "undefiniert", - "Time": "März 2015-September 2024", - "LatestUpdate": "03.01.2025 08:08:13h", - "Information": "false" - }, - { - "Code": "22151LV003", - "Content": "Grundsicherung im Alter und bei Erwerbsminderung, Quote der Empfänger von Grundsicherung, Bundesländer, Nationalität, Berichtsmonat im Quartal, Jahr", - "State": "undefiniert", - "Time": "Dezember 2015-Dezember 2023", - "LatestUpdate": "21.08.2024 08:01:02h", - "Information": "false" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/xy_variable2/api/catalogue/tables2variable-86e7c4-1f2606-POST.json b/tests/testthat/xy_variable2/api/catalogue/tables2variable-86e7c4-1f2606-POST.json deleted file mode 100644 index 2dea818..0000000 --- a/tests/testthat/xy_variable2/api/catalogue/tables2variable-86e7c4-1f2606-POST.json +++ /dev/null @@ -1,2523 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "tables2variable" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "DLAND", - "selection": "", - "area": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "11111-0001", - "Content": "Gebietsfläche: Bundesländer, Stichtag", - "Time": "31.12.1995 - 31.12.2022" - }, - { - "Code": "12211-0902", - "Content": "Bevölkerung in Gemeinschaftsunterkünften: Bundesländer,\nJahre, Hauptstatus, Geschlecht, Altersgruppen", - "Time": "2017 - 2023" - }, - { - "Code": "12211-0903", - "Content": "Bevölkerung in Gemeinschaftsunterkünften: Bundesländer,\nJahre, Art der Gemeinschaftsunterkunft, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "12211-1001", - "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen, Nichterwerbspersonen aus Hauptwohnsitzhaushalten: Bundesländer, Jahre, Geschlecht, Altersgruppen", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1002", - "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen, Nichterwerbspersonen aus Hauptwohnsitzhaushalten: Bundesländer, Jahre, Überwiegender Lebensunterhalt, Altersgruppen", - "Time": "2023 - 2023" - }, - { - "Code": "12211-1003", - "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen,\nNichterwerbspersonen aus Hauptwohnsitzhaush.: Bundesländer,\nJahre, Geschlecht, Größenkl. persönl. monatl. Nettoeinkommen", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1004", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Stellung im Beruf", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1005", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Art der geleisteten\nArbeitsstunden, Größenkl. d.geleisteten Arbeitsstd. je Woche", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1006", - "Content": "Geleistete Arbeitsstunden je Woche von Erwerbstätigen aus\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Geschlecht,\nStellung im Beruf, Art der geleisteten Arbeitsstunden", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1007", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Erwerbsformen", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1008", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Größenklassen des\npersönlichen monatlichen Nettoeinkommens", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1009", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Berufe", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1010", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Größenklassen der in\nder Arbeitsstätte tätigen Personen", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1011", - "Content": "Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten:\nBundesländer, Jahre, Geschlecht, Altersgruppen,\nBeschäftigungsumfang", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1012", - "Content": "Erwerbslose aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Dauer der Erwerbslosigkeit", - "Time": "2021 - 2023" - }, - { - "Code": "12211-9004", - "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen,\nNichterwerbspersonen: Bundesländer, Jahre (bis 2019)", - "Time": "04/1991 - 2019" - }, - { - "Code": "12211-9014", - "Content": "Bevölkerung (ab 15 Jahren): Bundesländer, Jahre (bis 2019),\nGeschlecht, Allgemeine Schulausbildung", - "Time": "2005 - 2019" - }, - { - "Code": "12211-9015", - "Content": "Bevölkerung (ab 15 Jahren): Bundesländer, Jahre (bis 2019),\nGeschlecht, Beruflicher Bildungsabschluss", - "Time": "2005 - 2019" - }, - { - "Code": "12211-9033", - "Content": "Privathaushalte: Bundesländer, Jahre (bis 2019)", - "Time": "05/1970 - 2019" - }, - { - "Code": "12211-9034", - "Content": "Privathaushalte: Bundesländer, Jahre (bis 2019), Haushaltsgröße", - "Time": "04/1991 - 2019" - }, - { - "Code": "12211-9041", - "Content": "Bevölkerung in Familien/Lebensformen: Bundesländer, Jahre (bis 2019), Lebensformen", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9044", - "Content": "Familien, Paare, Alleinerziehende: Bundesländer, Jahre (bis 2019), Vorhandensein von Kindern", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9047", - "Content": "Ehepaare, Lebensgemeinschaften, Gemischtgeschlechtliche\nLebensgemeinschaften: Bundesländer, Jahre (bis 2019),\nVorhandensein von Kindern", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9051", - "Content": "Alleinerziehende: Bundesländer, Jahre (bis 2019),\nGeschlecht, Vorhandensein von Kindern", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9053", - "Content": "Alleinstehende: Bundesländer, Jahre (bis 2019), Geschlecht,\nHaushaltsgröße", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9056", - "Content": "Ledige Kinder in Familien: Bundesländer, Jahre (bis 2019),\nFamilienformen", - "Time": "04/1996 - 2019" - }, - { - "Code": "12231-0101", - "Content": "Bevölkerung von 16 bis unter 75 Jahren in\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Altersgruppen,\nPrivate Internetaktivitäten in den letzten drei Monaten", - "Time": "2022 - 2024" - }, - { - "Code": "12231-0102", - "Content": "Bevölkerung von 16 bis unter 75 Jahren in\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Altersgruppen,\nPrivate Internetkäufe in den letzten drei Monaten", - "Time": "2022 - 2024" - }, - { - "Code": "12231-0103", - "Content": "Bevölkerung von 16 bis unter 75 Jahren in\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Altersgruppen,\nArt der Computer- und Internetkenntnisse", - "Time": "2023 - 2023" - }, - { - "Code": "12251-0101", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Wochenend- und\nFeiertagsarbeit", - "Time": "2021 - 2023" - }, - { - "Code": "12251-0102", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Abend-, Nacht- und\nSchichtarbeit", - "Time": "2021 - 2023" - }, - { - "Code": "12251-0103", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Erwerbsarbeit zu\nHause", - "Time": "2021 - 2023" - }, - { - "Code": "12251-0107", - "Content": "Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten:\nBundesländer, Jahre, Geschlecht, Altersgruppen, Art des\nArbeitsvertrages", - "Time": "2021 - 2023" - }, - { - "Code": "12411-0010", - "Content": "Bevölkerung: Bundesländer, Stichtag", - "Time": "31.12.1958 - 31.12.2023" - }, - { - "Code": "12411-0011", - "Content": "Bevölkerung: Bundesländer, Stichtag, Geschlecht", - "Time": "31.12.1967 - 31.12.2023" - }, - { - "Code": "12411-0012", - "Content": "Bevölkerung: Bundesländer, Stichtag, Altersjahre", - "Time": "31.12.1967 - 31.12.2023" - }, - { - "Code": "12411-0013", - "Content": "Bevölkerung: Bundesländer, Stichtag, Geschlecht, Altersjahre", - "Time": "31.12.1967 - 31.12.2023" - }, - { - "Code": "12411-0014", - "Content": "Bevölkerung: Bundesländer, Stichtag, Nationalität,\nGeschlecht, Altersjahre", - "Time": "31.12.2000 - 31.12.2023" - }, - { - "Code": "12411-0021", - "Content": "Bevölkerung: Bundesländer, Stichtag zum Quartalsende,\nGeschlecht", - "Time": "31.03.1991 - 30.09.2024" - }, - { - "Code": "12411-0042", - "Content": "Durchschnittliche Bevölkerung: Bundesländer, Jahre,\nNationalität, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "12411-0050", - "Content": "Bevölkerungsdichte: Bundesländer, Stichtag", - "Time": "31.12.1995 - 31.12.2022" - }, - { - "Code": "12421-0003", - "Content": "Vorausberechneter Bevölkerungsstand: Bundesländer, Stichtag,\nVarianten der Bevölkerungsvorausberechnung", - "Time": "31.12.2022 - 31.12.2070" - }, - { - "Code": "12421-0004", - "Content": "Vorausberechneter Bevölkerungsstand: Bundesländer, Stichtag,\nVarianten der Bevölkerungsvorausberechnung, Geschlecht,\nAltersjahre", - "Time": "31.12.2022 - 31.12.2070" - }, - { - "Code": "12421-0101", - "Content": "Vorausberechnete Privathaushalte: Bundesländer, Jahre,\nVarianten der Haushaltsvorausberechnung, Haushaltsgröße", - "Time": "2019 - 2040" - }, - { - "Code": "12521-0020", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht/Altersjahre/\nFamilienstand", - "Time": "30.09.1980 - 31.12.2023" - }, - { - "Code": "12521-0021", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht/Altersjahre/\nFamilienstand, Ländergruppierungen/Staatsangehörigkeit", - "Time": "30.09.1980 - 31.12.2023" - }, - { - "Code": "12521-0022", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht, Altersjahre,\nLändergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0023", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht, Altersjahre,\nMigrantengeneration, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0024", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht,\nFamilienstand, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0025", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht,\nAufenthaltsdauer/Aufenthaltsdauer (Abgrenzung\nEinbürgerungen), Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0026", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht,\nAufenthaltstitel/Ausgewählte Aufenthaltstitel,\nLändergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0027", - "Content": "Ausländer: Bundesländer, Jahre, Geschlecht,\nRegisterbewegungen (regional), Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "2013 - 2023" - }, - { - "Code": "12521-0028", - "Content": "Ausländer: Bundesländer, Jahre, Geschlecht, Altersjahre,\nRegisterzu- und abgänge (regional), Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "2013 - 2023" - }, - { - "Code": "12521-0029", - "Content": "Ausländer: Bundesländer, Jahre, Geschlecht,\nAufenthaltsdauer, Registerabgänge (regional),\nLändergruppierungen/Staatsangehörigkeit", - "Time": "2013 - 2023" - }, - { - "Code": "12521-0030", - "Content": "Durchschnittsalter der Ausländer: Bundesländer, Stichtag,\nGeschlecht, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0031", - "Content": "Durchschnittliche Aufenthaltsdauer der Ausländer:\nBundesländer, Stichtag, Geschlecht, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12531-0020", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht/\nAltersjahre/Familienstand", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0021", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht/\nAltersjahre/Familienstand, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0022", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nAltersjahre, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0023", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nAltersjahre, Migrantengeneration, Ländergruppierungen\n/Staatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0024", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nFamilienstand, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0025", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nAufenthaltsdauer/Aufenthaltsdauer (Abgrenzung\nEinbürgerungen), Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0026", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nSchutzstatus/Schutzstatuskategorie, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0027", - "Content": "Durchschnittsalter der Schutzsuchenden: Bundesländer,\nStichtag, Geschlecht, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0028", - "Content": "Durchschnittliche Aufenthaltsdauer der Schutzsuchenden:\nBundesländer, Stichtag, Geschlecht, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12611-0010", - "Content": "Eheschließungen: Bundesländer, Jahre", - "Time": "1990 - 2023" - }, - { - "Code": "12611-0011", - "Content": "Eheschließungen: Bundesländer, Monate", - "Time": "Januar 1990 - November 2024" - }, - { - "Code": "12612-0100", - "Content": "Lebendgeborene: Bundesländer, Jahre, Geschlecht", - "Time": "1990 - 2023" - }, - { - "Code": "12612-0101", - "Content": "Lebendgeborene: Bundesländer, Monate, Geschlecht", - "Time": "Januar 1990 - November 2024" - }, - { - "Code": "12612-0102", - "Content": "Lebendgeborene: Bundesländer, Jahre, Familienstand der\nEltern", - "Time": "1991 - 2023" - }, - { - "Code": "12612-0103", - "Content": "Lebendgeborene: Bundesländer, Jahre, Staatsangehörigkeit des\nKindes und der Eltern", - "Time": "1990 - 2023" - }, - { - "Code": "12612-0104", - "Content": "Zusammengefasste Geburtenziffern (je Frau): Bundesländer,\nJahre, Altersgruppen", - "Time": "1991 - 2023" - }, - { - "Code": "12612-0105", - "Content": "Nettoreproduktionsrate: Bundesländer, Jahre (bis 2010),\nAltersgruppen", - "Time": "2004 - 2010" - }, - { - "Code": "12612-0106", - "Content": "Totgeborene: Bundesländer, Jahre", - "Time": "1990 - 2023" - }, - { - "Code": "12613-0010", - "Content": "Gestorbene: Bundesländer, Jahre", - "Time": "1990 - 2024" - }, - { - "Code": "12613-0011", - "Content": "Gestorbene: Bundesländer, Jahre, Geschlecht", - "Time": "1990 - 2024" - }, - { - "Code": "12613-0012", - "Content": "Gestorbene: Bundesländer, Monate", - "Time": "Januar 1990 - Januar 2025" - }, - { - "Code": "12613-0013", - "Content": "Gestorbene: Bundesländer, Monate, Geschlecht", - "Time": "Januar 1990 - Januar 2025" - }, - { - "Code": "12621-0004", - "Content": "Durchschnittliche Lebenserwartung bei Geburt\n(Periodensterbetafel): Bundesländer, Jahre, Geschlecht", - "Time": "2002/04 - 2021/23" - }, - { - "Code": "12631-0010", - "Content": "Ehescheidungen: Bundesländer, Jahre", - "Time": "1990 - 2023" - }, - { - "Code": "12631-0011", - "Content": "Ehescheidungen: Bundesländer, Jahre, Ehedauer", - "Time": "1997 - 2023" - }, - { - "Code": "12631-0012", - "Content": "Ehescheidungen: Bundesländer, Jahre, Gemeinsame\nminderjährige Kinder", - "Time": "1997 - 2023" - }, - { - "Code": "12651-0003", - "Content": "Begründungen von Lebenspartnerschaften: Bundesländer, Jahre (bis 2017), Geschlecht", - "Time": "2014 - 2017" - }, - { - "Code": "12661-0002", - "Content": "Aufhebungen von Lebenspartnerschaften: Bundesländer, Jahre,\nGeschlecht", - "Time": "2014 - 2023" - }, - { - "Code": "12711-0020", - "Content": "Gesamtwanderungen über die Grenzen der Bundesländer: Bundesländer, Jahre, Nationalität, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "12711-0021", - "Content": "Wanderungen zwischen den Bundesländern: Bundesländer, Jahre, Nationalität, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "12711-0023", - "Content": "Wanderungen zwischen Deutschland und dem Ausland:\nBundesländer, Jahre, Nationalität, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "13111-0005", - "Content": "Sozialversicherungspflichtig Beschäftigte am Arbeitsort:\nBundesländer, Stichtag, Geschlecht", - "Time": "31.03.2008 - 30.06.2024" - }, - { - "Code": "13111-0006", - "Content": "Sozialversicherungspflichtig Beschäftigte am Arbeitsort:\nBundesländer, Stichtag, Wirtschaftsabschnitte", - "Time": "31.03.2008 - 30.06.2024" - }, - { - "Code": "13211-0007", - "Content": "Arbeitslose, Arbeitslosenquoten, Gemeldete Arbeitsstellen:\nBundesländer, Jahre", - "Time": "1991 - 2024" - }, - { - "Code": "13211-0008", - "Content": "Arbeitslose, Arbeitslosenquoten, Gemeldete Arbeitsstellen:\nBundesländer, Monate", - "Time": "Januar 2005 - Februar 2025" - }, - { - "Code": "13211-0009", - "Content": "Arbeitslose: Bundesländer, Jahre, Geschlecht", - "Time": "1991 - 2024" - }, - { - "Code": "13211-0010", - "Content": "Arbeitslose: Bundesländer, Monate, Geschlecht", - "Time": "Januar 2005 - Februar 2025" - }, - { - "Code": "13211-0011", - "Content": "Arbeitslosenquote aller zivilen Erwerbspersonen:\nBundesländer, Jahre, Geschlecht", - "Time": "1991 - 2024" - }, - { - "Code": "13211-0012", - "Content": "Arbeitslosenquote aller zivilen Erwerbspersonen:\nBundesländer, Monate, Geschlecht", - "Time": "Januar 2005 - Februar 2025" - }, - { - "Code": "13311-0002", - "Content": "Erwerbstätige, Arbeitnehmer, Selbständige und mithelfende\nFamilienangehörige (im Inland): Bundesländer, Jahre,\nWirtschaftszweige", - "Time": "1991 - 2023" - }, - { - "Code": "14111-0003", - "Content": "Wahlberechtigte, Wähler, Wahlbeteiligung, Erststimmen,\nZweitstimmen (Allgemeine Bundestagswahlstatistik):\nBundesländer, Stichtag", - "Time": "22.09.2013 - 23.02.2025" - }, - { - "Code": "14111-0004", - "Content": "Gültige Erststimmen, gültige Zweitstimmen (Allgemeine\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien", - "Time": "22.09.2013 - 23.02.2025" - }, - { - "Code": "14121-0004", - "Content": "Gültige Zweitstimmen (Repräsentative\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien,\nGeschlecht", - "Time": "22.09.2002 - 26.09.2021" - }, - { - "Code": "14121-0005", - "Content": "Gültige Zweitstimmen (Repräsentative\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien,\nAltersgruppen", - "Time": "22.09.2013 - 26.09.2021" - }, - { - "Code": "14121-0006", - "Content": "Gültige Zweitstimmen (Repräsentative\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien,\nGeschlecht, Altersgruppen", - "Time": "22.09.2013 - 26.09.2021" - }, - { - "Code": "14211-0002", - "Content": "Gültige Stimmen (Allgemeine Europawahlstatistik):\nBundesländer, Stichtag, Parteien", - "Time": "12.06.1994 - 09.06.2024" - }, - { - "Code": "14221-0002", - "Content": "Anteil gültiger Stimmen (Repräsentative\nEuropawahlstatistik): Bundesländer, Stichtag, Parteien,\nGeschlecht, Altersgruppen", - "Time": "25.05.2014 - 26.05.2019" - }, - { - "Code": "21111-0010", - "Content": "Schüler, Schulanfänger, Absolventen und Abgänger:\nBundesländer, Schuljahr, Geschlecht", - "Time": "1997/98 - 2023/24" - }, - { - "Code": "21111-0011", - "Content": "Schüler: Bundesländer, Schuljahr, Geschlecht, Schulart,\nJahrgangsstufen", - "Time": "1998/99 - 2023/24" - }, - { - "Code": "21111-0012", - "Content": "Schulanfänger: Bundesländer, Schuljahr, Geschlecht, Schulart, Einschulungsart", - "Time": "1999/00 - 2023/24" - }, - { - "Code": "21111-0013", - "Content": "Absolventen und Abgänger: Bundesländer, Schuljahr,\nGeschlecht, Schulart, Schulabschlüsse", - "Time": "1997/98 - 2022/23" - }, - { - "Code": "21111-0014", - "Content": "Wiederholer: Bundesländer, Schuljahr, Geschlecht, Schulart,\nJahrgangsstufen", - "Time": "1998/99 - 2023/24" - }, - { - "Code": "21111-0015", - "Content": "Schüler mit Fremdsprachen-Unterricht: Bundesländer,\nSchuljahr, Fremdsprachen, Schulart, Jahrgangsstufen", - "Time": "1998/99 - 2023/24" - }, - { - "Code": "21111-0016", - "Content": "Schüler mit sonderpädagogischer Förderung: Bundesländer,\nSchuljahr, Schulart, Förderschwerpunkte", - "Time": "2000/01 - 2023/24" - }, - { - "Code": "21111-0017", - "Content": "Schüler mit sonderpädagogischer Förderung: Bundesländer, Schuljahr, Geschlecht, Schulart, Förderschwerpunkte", - "Time": "2014/15 - 2023/24" - }, - { - "Code": "21121-0010", - "Content": "Schüler in beruflichen Schulen: Bundesländer, Schuljahr,\nSchulart", - "Time": "2001/02 - 2023/24" - }, - { - "Code": "21121-0011", - "Content": "Schüler in beruflichen Schulen: Bundesländer, Schuljahr,\nGeschlecht, Schulart", - "Time": "2001/02 - 2023/24" - }, - { - "Code": "21121-0012", - "Content": "Schüler in beruflichen Schulen: Bundesländer, Schuljahr,\nNationalität, Geschlecht, Schulart, Zeitform des Unterrichts", - "Time": "2001/02 - 2023/24" - }, - { - "Code": "21121-0013", - "Content": "Schüler mit Fremdsprachen-Unterricht: Bundesländer,\nSchuljahr, Schulart, Fremdsprachen", - "Time": "2009/10 - 2023/24" - }, - { - "Code": "21211-0101", - "Content": "Auszubildende: Bundesländer, Stichtag, Nationalität, Geschlecht, Ausbildungsbereich", - "Time": "31.12.2008 - 31.12.2023" - }, - { - "Code": "21211-0102", - "Content": "Auszubildende: Bundesländer, Stichtag, Geschlecht, Altersjahre", - "Time": "31.12.2008 - 31.12.2023" - }, - { - "Code": "21211-0103", - "Content": "Auszubildende: Bundesländer, Stichtag, Geschlecht, Schulabschluss", - "Time": "31.12.2008 - 31.12.2023" - }, - { - "Code": "21211-0104", - "Content": "Ausbildungsverträge: Bundesländer, Jahre, Nationalität, Geschlecht, Ausbildungsbereich", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0105", - "Content": "Ausbildungsverträge: Bundesländer, Jahre, Geschlecht, Altersjahre", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0106", - "Content": "Ausbildungsverträge: Bundesländer, Jahre, Geschlecht, Schulabschluss", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0107", - "Content": "Bestandene Abschlussprüfung: Bundesländer, Jahre, Nationalität, Geschlecht, Ausbildungsbereich", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0108", - "Content": "Bestandene Abschlussprüfung: Bundesländer, Jahre, Geschlecht, Altersjahre", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0109", - "Content": "Bestandene Abschlussprüfung: Bundesländer, Jahre, Geschlecht, Schulabschluss", - "Time": "2008 - 2023" - }, - { - "Code": "21241-0020", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag, beendete Ausbildungen, Ausbildungseintritte (inkl. vorzeitige Lösungen): Bundesländer, Stichtag", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0021", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Geschlecht", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0022", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0023", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Ausbildungsumfang", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0024", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem\nAusbildungsvertrag: Bundesländer, Stichtag, Erhalt von\nFördermitteln", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0025", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Art der Trägerschaft der Pflegeschulen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0026", - "Content": "Beendete Ausbildungen in Pflegeberufen: Bundesländer, Stichtag, Prüfungsergebnis", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0027", - "Content": "Pflegeschulen: Bundesländer, Stichtag, Art der Trägerschaft\nder Pflegeschulen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21311-0005", - "Content": "Studierende: Bundesländer, Semester, Nationalität,\nGeschlecht", - "Time": "WS 1998/99 - WS 2023/24" - }, - { - "Code": "21311-0006", - "Content": "Studierende: Bundesländer, Semester, Nationalität,\nGeschlecht, Studienfach", - "Time": "WS 1998/99 - WS 2023/24" - }, - { - "Code": "21311-0014", - "Content": "Studienanfänger: Bundesländer, Semester, Nationalität,\nGeschlecht", - "Time": "WS 1998/99 - WS 2023/24" - }, - { - "Code": "21311-0015", - "Content": "Studienanfänger: Bundesländer, Semester, Nationalität,\nGeschlecht, Studienfach", - "Time": "WS 1998/99 - WS 2023/24" - }, - { - "Code": "21321-0005", - "Content": "Prüfungen an Hochschulen: Bundesländer, Jahre, Nationalität,\nGeschlecht, Prüfungsergebnis", - "Time": "1999 - 2023" - }, - { - "Code": "21321-0006", - "Content": "Prüfungen an Hochschulen: Bundesländer, Jahre, Nationalität,\nGeschlecht, Prüfungsergebnis, Studienfach", - "Time": "1999 - 2023" - }, - { - "Code": "21321-0007", - "Content": "Prüfungen an Hochschulen: Bundesländer, Jahre, Nationalität,\nGeschlecht, Prüfungsergebnis, Abgelegte Abschlussprüfung", - "Time": "1999 - 2023" - }, - { - "Code": "21351-0003", - "Content": "Habilitationen: Bundesländer, Jahre, Geschlecht", - "Time": "1992 - 2023" - }, - { - "Code": "21352-0005", - "Content": "Promovierende: Bundesländer, Stichtag, Nationalität,\nGeschlecht, Hochschulart", - "Time": "01.12.2019 - 01.12.2023" - }, - { - "Code": "21353-0002", - "Content": "Hochschulräte: Bundesländer, Jahre, Hochschulart, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21354-0001", - "Content": "Studierende, Studienanfänger an Berufsakademien:\nBundesländer, Jahre, Nationalität, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21354-0002", - "Content": "Bestandene Prüfungen an Berufsakademien: Bundesländer,\nJahre, Art der Prüfung, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21354-0003", - "Content": "Personal an Berufsakademien: Bundesländer, Jahre, Art des\nPersonals, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21354-0004", - "Content": "Studierende je Lehrperson (Betreuungsrelation) an\nBerufsakademien: Bundesländer, Jahre, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21371-0002", - "Content": "Ausgaben der Hochschulen: Bundesländer, Jahre, Hochschulart,\nFächergruppen", - "Time": "2006 - 2022" - }, - { - "Code": "21381-0010", - "Content": "Absolventenquote: Bundesländer, Jahre, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "21381-0011", - "Content": "Studienanfängerquote (Hochschulzugangsberechtigung):\nBundesländer, Jahre, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "21381-0012", - "Content": "Studienanfängerquote: Bundesländer, Jahre, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "21381-0013", - "Content": "Studienberechtigtenquote: Bundesländer, Jahre,\nSchulabschluss", - "Time": "2006 - 2023" - }, - { - "Code": "21381-0014", - "Content": "Laufende Ausgaben der Hochschulen, Drittmittel der\nHochschulen: Bundesländer, Jahre", - "Time": "2011 - 2022" - }, - { - "Code": "21411-0020", - "Content": "BAföG - Geförderte Personen und finanzieller Aufwand:\nBundesländer, Jahre, Personenkreis", - "Time": "1991 - 2023" - }, - { - "Code": "21421-0021", - "Content": "Aufstiegs-BAföG - Geförderte Personen, finanzieller Aufwand:\nBundesländer, Jahre, Bewilligung/Inanspruchnahme,\nVoll-/Teilzeit, Art des finanziellen Aufwandes", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0022", - "Content": "Aufstiegs-BAföG - Geförderte Personen, finanzieller Aufwand:\nBundesländer, Jahre, Bewilligung/Inanspr., Voll-/Teilzeit,\nArt des finanziellen Aufwandes, Fortbildungsstätten", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0023", - "Content": "Aufstiegs-BAföG - Geförderte Personen, finanzieller Aufwand:\nBundesländer, Jahre, Bewilligung/Inanspr., Voll-/Teilzeit,\nArt des finanziellen Aufwandes, Fortbildungsziele", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0024", - "Content": "Aufstiegs-BAföG - Geförderte Personen (Bewilligung):\nBundesländer, Jahre, Voll-/Teilzeit, Geschlecht,\nFortbildungsstätten", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0025", - "Content": "Aufstiegs-BAföG - Geförderte Personen (Bewilligung)\n(Vollzeit): Bundesländer, Jahre, Geschlecht,\nEinkommensgrößenklassen", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0026", - "Content": "Aufstiegs-BAföG - Geförderte Personen, monatlicher\nFörderungsbetrag: Bundesländer, Jahre, Bewilligung/\nInanspruchnahme, Art der Förderung, Fortbildungsstätten", - "Time": "2003 - 2023" - }, - { - "Code": "21431-0020", - "Content": "Stipendiaten, Mittelgeber: Bundesländer, Jahre, Hochschulart", - "Time": "2011 - 2023" - }, - { - "Code": "21431-0021", - "Content": "Stipendiaten: Bundesländer, Jahre, Geschlecht, Hochschulart", - "Time": "2011 - 2023" - }, - { - "Code": "21611-0003", - "Content": "Kinos, Leinwände, Sitzplätze der Kinos, Filmbesuche,\nDurchschnittlicher Kino-Eintrittspreis, Einnahmen:\nBundesländer, Jahre", - "Time": "2000 - 2023" - }, - { - "Code": "21611-0102", - "Content": "Museen, Ausstellungen, Museumsbesuche: Bundesländer, Jahre", - "Time": "2002 - 2022" - }, - { - "Code": "21611-0111", - "Content": "Öffentlich geförderte Theaterunternehmen, Spielstätten,\nVeranstaltungen am Ort, Theaterbesuche: Bundesländer, Jahre", - "Time": "2000 - 2022" - }, - { - "Code": "21611-0122", - "Content": "Öffentlich geförderte Musikschulen, Lehrer, Schüler:\nBundesländer, Jahre", - "Time": "2000 - 2022" - }, - { - "Code": "21611-0123", - "Content": "Schüler in öffentlich geförderten Musikschulen:\nBundesländer, Jahre, Altersgruppen", - "Time": "2000 - 2022" - }, - { - "Code": "21611-0201", - "Content": "Haupt- und Zweigstellen der Bibliotheken, Meldende\nBibliotheken, Bestand, Entleiher, Bibliotheksbesuche:\nBundesländer, Jahre, Bibliotheksarten", - "Time": "2000 - 2023" - }, - { - "Code": "21621-0003", - "Content": "Öffentliche Ausgaben für Kultur: Bundesländer, Jahre,\nKulturbereiche", - "Time": "2005 - 2021" - }, - { - "Code": "21711-0010", - "Content": "Ausgaben der öffentlichen Haushalte für Bildung:\nBundesländer, Jahre, Körperschaftsgruppen, Aufgabenbereiche\nder öffentlichen Haushalte", - "Time": "1995 - 2024" - }, - { - "Code": "21711-0011", - "Content": "Ausgaben für öffentliche Schulen je Schüler: Bundesländer,\nJahre", - "Time": "2010 - 2023" - }, - { - "Code": "21821-0002", - "Content": "Interne Ausgaben und Personal für Forschung und Entwicklung:\nBundesländer, Jahre, Sektoren", - "Time": "1995 - 2022" - }, - { - "Code": "21821-0100", - "Content": "Patentanmeldungen: Bundesländer, Jahre", - "Time": "2000 - 2023" - }, - { - "Code": "22111-0020", - "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Sozialhilfe:\nBundesländer, Jahre", - "Time": "1994 - 2023" - }, - { - "Code": "22111-0021", - "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Sozialhilfe:\nBundesländer, Jahre, Ort der Leistungserbringung", - "Time": "1994 - 2023" - }, - { - "Code": "22111-0022", - "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Sozialhilfe:\nBundesländer, Jahre, Sozialhilfearten", - "Time": "2005 - 2023" - }, - { - "Code": "22111-0023", - "Content": "Bruttoausgaben der Sozialhilfe: Bundesländer, Jahre (bis\n2004), Sozialhilfearten, Sozialhilfeträger, Ort der\nLeistungserbringung", - "Time": "1994 - 2004" - }, - { - "Code": "22121-0010", - "Content": "Empfänger von Hilfe zum Lebensunterhalt: Bundesländer,\nStichtag, Ort der Leistungserbringung, Geschlecht,\nAltersgruppen", - "Time": "31.12.1995 - 31.12.2023" - }, - { - "Code": "22121-0011", - "Content": "Empfänger von Hilfe zum Lebensunterhalt: Bundesländer,\nStichtag, Ort der Leistungserbringung, Geschlecht,\nNationalität", - "Time": "31.12.1995 - 31.12.2023" - }, - { - "Code": "22121-0012", - "Content": "Personengemeinschaften von Empfängern von Hilfe zum Lebensunterhalt: Bundesländer, Stichtag, Ort der Leistungserbringung", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22131-0010", - "Content": "Empfänger von Leistungen nach dem 5. bis 9. Kapitel SGB XII:\nBundesländer, Jahre, Art der Hilfe, Geschlecht", - "Time": "2005 - 2023" - }, - { - "Code": "22131-0011", - "Content": "Empfänger von Leistungen nach dem 5. bis 9. Kapitel SGB XII:\nBundesländer, Stichtag, Art der Hilfe, Geschlecht", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22131-0012", - "Content": "Empfänger von Leistungen nach dem 5. bis 9. Kapitel SGB XII:\nBundesländer, Jahre, Art der Hilfe,\nOrt der Leistungserbringung", - "Time": "2005 - 2023" - }, - { - "Code": "22131-0013", - "Content": "Empfänger von Leistungen für Bestattungskosten,\nBruttoausgaben für Bestattungskosten: Bundesländer, Jahre", - "Time": "2005 - 2023" - }, - { - "Code": "22151-0030", - "Content": "Empfänger von Grundsicherung: Bundesländer, Stichtag\n(bis 31.12.2014), Nationalität, Geschlecht, Altersgruppen", - "Time": "31.12.2003 - 31.12.2014" - }, - { - "Code": "22151-0031", - "Content": "Quote der Empfänger von Grundsicherung: Bundesländer,\nStichtag (bis 31.12.2014), Nationalität, Geschlecht,\nAltersgruppen", - "Time": "31.12.2003 - 31.12.2014" - }, - { - "Code": "22151-0032", - "Content": "Empfänger von Grundsicherung: Bundesländer, Berichtsmonat\nim Quartal, Geschlecht/Altersgruppen/Ort der\nLeistungserbringung/Sozialhilfeträger", - "Time": "März 2015 - September 2024" - }, - { - "Code": "22151-0033", - "Content": "Empfänger von Grundsicherung: Bundesländer, Berichtsmonat im\nQuartal, Ort der Leistungserbringung, Geschlecht,\nAltersgruppen", - "Time": "März 2015 - September 2024" - }, - { - "Code": "22151-0034", - "Content": "Durchschnittlicher Nettobedarf, Bruttobedarf, angerechnetes\nEinkommen: Bundesländer, Berichtsmonat im Quartal", - "Time": "März 2015 - September 2024" - }, - { - "Code": "22151-0035", - "Content": "Quote der Empfänger von Grundsicherung: Bundesländer,\nBerichtsmonat im Quartal, Nationalität, Geschlecht,\nAltersgruppen", - "Time": "Dezember 2015 - Dezember 2023" - }, - { - "Code": "22161-0010", - "Content": "Empfänger von Eingliederungshilfe: Bundesländer, Jahre,\nGeschlecht, Altersgruppen", - "Time": "2020 - 2023" - }, - { - "Code": "22161-0011", - "Content": "Empfänger von Eingliederungshilfe: Bundesländer, Stichtag,\nGeschlecht, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22162-0010", - "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Eingliederungshilfe: Bundesländer, Jahre", - "Time": "2020 - 2023" - }, - { - "Code": "22211-0010", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Ort der Leistungserbringung", - "Time": "1994 - 2023" - }, - { - "Code": "22211-0011", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Leistungsart", - "Time": "1994 - 2023" - }, - { - "Code": "22211-0012", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Art des Trägers", - "Time": "1994 - 2023" - }, - { - "Code": "22211-0013", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Ausgabenart", - "Time": "1994 - 2023" - }, - { - "Code": "22211-0014", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Hilfearten", - "Time": "1994 - 2023" - }, - { - "Code": "22221-0100", - "Content": "Empfänger von Regelleistungen nach dem\nAsylbewerberleistungsgesetz: Bundesländer, Stichtag (bis\n31.12.2019), Geschlecht", - "Time": "31.12.1994 - 31.12.2019" - }, - { - "Code": "22221-0101", - "Content": "Empfänger von Regelleistungen nach dem Asylbewerberleistungsgesetz: Bundesländer, Stichtag (bis 31.12.2019), Art der Unterbringung", - "Time": "31.12.1994 - 31.12.2019" - }, - { - "Code": "22221-0110", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0111", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Art der Unterbringung", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0112", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Leistungsart", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0113", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Staatsangehörigkeit nach Kontinenten", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0114", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt\n(AsylbLG): Bundesländer, Stichtag, Altersgruppen,\nLeistungsart", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0115", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Erwerbsstatus", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0116", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag, Geschlecht, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0117", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag, Altersgruppen, Hilfearten", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0118", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag, Aufenthaltsrechtlicher Status", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0119", - "Content": "Empfänger von Asylbewerberleistungen: Bundesländer, Stichtag, Geschlecht, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0120", - "Content": "Empfänger von Asylbewerberleistungen: Bundesländer, Stichtag, Geschlecht, Art der Unterbringung", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0121", - "Content": "Empfänger von Asylbewerberleistungen: Bundesländer,\nStichtag, Geschlecht, Staatsangehörigkeit nach Kontinenten", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22231-0010", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag (bis 31.12.2019), Altersgruppen", - "Time": "31.12.1994 - 31.12.2019" - }, - { - "Code": "22231-0011", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag (bis 31.12.2019), Hilfearten", - "Time": "31.12.1994 - 31.12.2019" - }, - { - "Code": "22311-0010", - "Content": "Haushalte mit Wohngeld, Anteil an den Privathaushalten:\nBundesländer, Stichtag, Wohngeldart", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22311-0011", - "Content": "Haushalte mit Wohngeld: Bundesländer, Stichtag, Wohngeldart, Art des Zuschusses", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22311-0012", - "Content": "Haushalte mit Wohngeld: Bundesländer, Stichtag, Wohngeldart, Geschlecht der Antragsteller", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22311-0013", - "Content": "Haushalte mit Wohngeld: Bundesländer, Stichtag, Wohngeldart, Haushaltsgröße", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22411-0010", - "Content": "Ambulante Dienste, Pflegebedürftige: Bundesländer, Stichtag,\nTräger", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22411-0011", - "Content": "Pflegebedürftige (ambulant): Bundesländer, Stichtag, Pflegestufe/Pflegegrad", - "Time": "15.12.2017 - 15.12.2023" - }, - { - "Code": "22411-0012", - "Content": "Pflegebedürftige (ambulant): Bundesländer, Stichtag, Geschlecht, Altersgruppen", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22411-0013", - "Content": "Personal in ambulanten Pflegeeinrichtungen: Bundesländer,\nStichtag, Beschäftigungsverhältnis", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22411-0014", - "Content": "Personal in ambulanten Pflegeeinrichtungen: Bundesländer,\nStichtag, Geschlecht, Überwiegender Tätigkeitsbereich", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22411-0015", - "Content": "Personal in ambulanten Pflegeeinrichtungen: Bundesländer, Stichtag, Altersgruppen", - "Time": "15.12.2013 - 15.12.2023" - }, - { - "Code": "22412-0010", - "Content": "Pflegeheime, Verfügbare Plätze, Pflegebedürftige:\nBundesländer, Stichtag, Art der Pflegeleistung", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0011", - "Content": "Pflegeheime, Verfügbare Plätze: Bundesländer, Stichtag,\nTräger", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0012", - "Content": "Pflegebedürftige (stationär): Bundesländer, Stichtag,\nPflegestufe/Pflegegrad", - "Time": "15.12.2017 - 15.12.2023" - }, - { - "Code": "22412-0013", - "Content": "Pflegebedürftige (stationär): Bundesländer, Stichtag,\nGeschlecht, Altersgruppen", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0014", - "Content": "Personal der stationären Pflegeeinrichtungen: Bundesländer,\nStichtag, Beschäftigungsverhältnis", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0015", - "Content": "Personal der stationären Pflegeeinrichtungen: Bundesländer,\nStichtag, Geschlecht, Überwiegender Tätigkeitsbereich", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0016", - "Content": "Personal der stationären Pflegeeinrichtungen: Bundesländer,\nStichtag, Altersgruppen", - "Time": "15.12.2013 - 15.12.2023" - }, - { - "Code": "22421-0010", - "Content": "Pflegebedürftige: Bundesländer, Stichtag, Geschlecht,\nAltersgruppen, Art der Versorgung von Pflegebedürftigen", - "Time": "31.12.1999 - 31.12.2023" - }, - { - "Code": "22421-0011", - "Content": "Pflegebedürftige: Bundesländer, Stichtag, Pflegestufe/Pflegegrad", - "Time": "31.12.2017 - 31.12.2023" - }, - { - "Code": "22421-0012", - "Content": "Pflegequote: Bundesländer, Stichtag, Geschlecht,\nAltersgruppen", - "Time": "31.12.1999 - 31.12.2023" - }, - { - "Code": "22517-0005", - "Content": "Erzieherische Hilfen/Beratungen: Bundesländer, Jahre,\nGeschlecht, Altersjahre, Art der Hilfe", - "Time": "2008 - 2017" - }, - { - "Code": "22517-0006", - "Content": "Erzieherische Hilfen/Beratungen: Bundesländer, Jahre,\nGeschlecht, Migrationshintergrund, Art der Hilfe", - "Time": "2008 - 2017" - }, - { - "Code": "22518-0010", - "Content": "Verfahren zur Einschätzung der Kindeswohlgefährdung:\nBundesländer, Jahre, Gefährdungseinschätzung", - "Time": "2012 - 2023" - }, - { - "Code": "22518-0011", - "Content": "Verfahren zur Einschätzung der Kindeswohlgefährdung:\nBundesländer, Jahre, Gefährdungseinschätzung, Art der\nKindeswohlgefährdung", - "Time": "2012 - 2023" - }, - { - "Code": "22521-0020", - "Content": "Adoptierte Kinder und Jugendliche: Bundesländer, Jahre,\nGeschlecht", - "Time": "2010 - 2023" - }, - { - "Code": "22521-0021", - "Content": "Adoptierte Kinder und Jugendliche: Bundesländer, Jahre (bis\n2017), Altersgruppen", - "Time": "2010 - 2017" - }, - { - "Code": "22521-0022", - "Content": "Adoptierte Kinder und Jugendliche: Bundesländer, Jahre (bis\n2017), Nationalität, Art der Unterbringung vor der Adoption", - "Time": "2010 - 2017" - }, - { - "Code": "22522-0010", - "Content": "Kinder und Jugendliche: Bundesländer, Stichtag, Maßnahmen für Kinder und Jugendliche", - "Time": "31.12.2012 - 31.12.2023" - }, - { - "Code": "22522-0011", - "Content": "Tagespflegepersonen mit Pflegeerlaubnis: Bundesländer, Stichtag", - "Time": "31.12.2012 - 31.12.2023" - }, - { - "Code": "22522-0012", - "Content": "Sorgeerklärungen: Bundesländer, Jahre", - "Time": "2013 - 2023" - }, - { - "Code": "22522-0013", - "Content": "Maßnahmen des Familiengerichts bei Kindeswohlgefährdung:\nBundesländer, Jahre, Art der eingeleiteten Maßnahmen", - "Time": "2012 - 2023" - }, - { - "Code": "22523-0030", - "Content": "Vorläufige Schutzmaßnahmen für Kinder und Jugendliche:\nBundesländer, Jahre, Anlass der Maßnahme", - "Time": "2010 - 2023" - }, - { - "Code": "22523-0031", - "Content": "Vorläufige Schutzmaßnahmen für Kinder und Jugendliche:\nBundesländer, Jahre, Anregung der Maßnahme", - "Time": "2010 - 2022" - }, - { - "Code": "22541-0100", - "Content": "Tageseinrichtungen, Kinder, Genehmigte Plätze: Bundesländer,\nStichtag", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0101", - "Content": "Tageseinrichtungen: Bundesländer, Stichtag, Art des Trägers", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0102", - "Content": "Tageseinrichtungen: Bundesländer, Stichtag, Öffnungszeiten\nder Tageseinrichtung", - "Time": "01.03.2019 - 01.03.2024" - }, - { - "Code": "22541-0103", - "Content": "Tageseinrichtungen: Bundesländer, Stichtag, Altersgruppen\nder Kinder", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0104", - "Content": "Tätige Personen: Bundesländer, Stichtag, Arbeitsbereich", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0105", - "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Geschlecht", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0106", - "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Altersgruppen", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0107", - "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Höchster Berufsausbildungsabschluss", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0108", - "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Stellung im Beruf", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0109", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag, Art\ndes Trägers", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0110", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag,\nVertraglich vereinbarte Betreuungszeit", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0111", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag,\nGeschlecht", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0112", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag, Alter\nder Nichtschul- und Schulkinder", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0113", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag,\nHerkunft der Eltern", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0114", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag, In der\nFamilie vorrangig gesprochene Sprache", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22542-0003", - "Content": "Einrichtungen der Kinder- und Jugendhilfe, Genehmigte\nPlätze, Tätige Personen, Pädagogisches und\nVerwaltungspersonal: Bundesländer, Stichtag (bis 31.12.2020)", - "Time": "31.12.2010 - 31.12.2020" - }, - { - "Code": "22542-0004", - "Content": "Einrichtungen der Kinder- und Jugendhilfe: Bundesländer,\nStichtag (bis 31.12.2020), Art der Einrichtung", - "Time": "31.12.2010 - 31.12.2020" - }, - { - "Code": "22542-0019", - "Content": "Einrichtungen der Jugendhilfe, Gruppen, Soll-Stellen,\ngenehmigte Plätze, belegte Plätze: Bundesländer, Stichtag", - "Time": "15.12.2022 - 15.12.2022" - }, - { - "Code": "22543-0020", - "Content": "Kinder in öffentlich geförderter Kindertagespflege:\nBundesländer, Stichtag, Altersgruppen", - "Time": "01.03.2008 - 01.03.2024" - }, - { - "Code": "22543-0021", - "Content": "Kinder in öffentlich geförderter Kindertagespflege:\nBundesländer, Stichtag, Geschlecht, Migrationshintergrund", - "Time": "01.03.2012 - 01.03.2024" - }, - { - "Code": "22543-0022", - "Content": "Kinder in öffentlich geförderter Kindertagespflege:\nBundesländer, Stichtag, In der Familie vorrangig\ngesprochene Sprache", - "Time": "01.03.2012 - 01.03.2024" - }, - { - "Code": "22543-0023", - "Content": "Tagespflegepersonen: Bundesländer, Stichtag, Geschlecht", - "Time": "01.03.2012 - 01.03.2024" - }, - { - "Code": "22543-0024", - "Content": "Tagespflegepersonen: Bundesländer, Stichtag, Altersgruppen", - "Time": "01.03.2012 - 01.03.2024" - }, - { - "Code": "22551-0003", - "Content": "Ausgaben (Auszahlungen) der Kinder- und Jugendhilfe: Bundesländer, Jahre, Ausgabenbereiche, Art der Hilfe, Art der Ausgaben", - "Time": "2009 - 2023" - }, - { - "Code": "22551-0004", - "Content": "Einnahmen (Einzahlungen) der Kinder- und Jugendhilfe:\nBundesländer, Jahre, Art der Hilfe, Art der Einnahmen", - "Time": "2009 - 2023" - }, - { - "Code": "22922-0020", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht", - "Time": "2009 - 2021" - }, - { - "Code": "22922-0021", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht", - "Time": "1. Quartal 2009 - 3. Quartal 2022" - }, - { - "Code": "22922-0022", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht, Erwerbstätigkeit", - "Time": "2009 - 2021" - }, - { - "Code": "22922-0023", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht, Erwerbstätigkeit", - "Time": "1. Quartal 2009 - 3. Quartal 2022" - }, - { - "Code": "22922-0024", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht, Grundlage der Berechnung des\nElterngeldanspruchs", - "Time": "2009 - 2021" - }, - { - "Code": "22922-0025", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht, Grundlage der Berechnung des\nElterngeldanspruchs", - "Time": "1. Quartal 2009 - 3. Quartal 2022" - }, - { - "Code": "22922-0026", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht, Höhe des monatlichen Elterngeldanspruchs", - "Time": "2009 - 2021" - }, - { - "Code": "22922-0027", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht, Höhe des monatlichen\nElterngeldanspruchs", - "Time": "1. Quartal 2009 - 3. Quartal 2022" - }, - { - "Code": "22922-0028", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre (bis 2014), Geschlecht, Bezugsdauer des Elterngeldes", - "Time": "2009 - 2014" - }, - { - "Code": "22922-0029", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale (bis 2.Q. 2015), Geschlecht, Bezugsdauer des\nElterngeldes", - "Time": "1. Quartal 2009 - 2. Quartal 2015" - }, - { - "Code": "22922-0030", - "Content": "Väterbeteiligung: Bundesländer, Jahre", - "Time": "2008 - 2021" - }, - { - "Code": "22922-0031", - "Content": "Väterbeteiligung: Bundesländer, Quartale", - "Time": "1. Quartal 2016 - 3. Quartal 2022" - }, - { - "Code": "22922-0111", - "Content": "Elterngeldempfänger: Bundesländer, Jahre, Geschlecht,\nErwerbstätigkeit", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0112", - "Content": "Elterngeldempfänger: Bundesländer, Quartale, Geschlecht,\nErwerbstätigkeit", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22922-0113", - "Content": "Elterngeldempfänger: Bundesländer, Jahre, Geschlecht,\nArt der Inanspruchnahme", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0114", - "Content": "Elterngeldempfänger: Bundesländer, Quartale, Geschlecht,\nArt der Inanspruchnahme", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22922-0115", - "Content": "Elterngeldempfänger: Bundesländer, Jahre, Geschlecht,\nArt der Inanspruchnahme, Höhe des monatlichen\nElterngeldanspruchs", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0116", - "Content": "Elterngeldempfänger: Bundesländer, Quartale, Geschlecht,\nArt der Inanspruchnahme, Höhe des monatlichen\nElterngeldanspruchs", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22922-0117", - "Content": "Durchschnittliche Höhe des Elterngeldanspruchs:\nBundesländer, Jahre, Geschlecht, Art der Inanspruchnahme,\nErwerbstätigkeit", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0118", - "Content": "Durchschnittliche Höhe des Elterngeldanspruchs:\nBundesländer, Quartale, Geschlecht, Art der Inanspruchnahme,\nErwerbstätigkeit", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22922-0119", - "Content": "Durchschnittliche voraussichtliche Elterngeld-Bezugsdauer:\nBundesländer, Jahre, Geschlecht, Art der Inanspruchnahme", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0120", - "Content": "Durchschnittliche voraussichtliche Elterngeld-Bezugsdauer:\nBundesländer, Quartale, Geschlecht, Art der Inanspruchnahme", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22923-0003", - "Content": "Betreuungsgeldempfänger: Bundesländer, Quartale (bis 4.Q. 2017), Nationalität", - "Time": "1. Quartal 2014 - 4. Quartal 2017" - }, - { - "Code": "22971-0050", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0051", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Haushaltstyp", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0052", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Haushaltsgröße", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0053", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Anbieter", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0054", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Art der Überlassung", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0055", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Dauer der Unterbringung", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "23131-0010", - "Content": "Krankenhauspatienten: Bundesländer, Jahre,\nHauptdiagnose ICD-10 (1-3-Steller Hierarchie)", - "Time": "2000 - 2023" - }, - { - "Code": "23131-0011", - "Content": "Krankenhauspatienten: Bundesländer, Jahre, Geschlecht,\nAltersgruppen, Hauptdiagnose ICD-10 (1-3-Steller Hierarchie)", - "Time": "2000 - 2023" - }, - { - "Code": "23131-0012", - "Content": "Krankenhauspatienten: Bundesländer, Jahre, Geschlecht,\nWohnort des Patienten", - "Time": "2000 - 2023" - }, - { - "Code": "23141-0010", - "Content": "Nebendiagnosen der vollstationären Patienten: Bundesländer,\nJahre, Nebendiagnosen ICD-10 (1-3-Steller Hierarchie)", - "Time": "2005 - 2023" - }, - { - "Code": "23141-0011", - "Content": "Nebendiagnosen der vollstationären Patienten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Nebendiagnosen ICD-10\n(1-3-Steller Hierarchie)", - "Time": "2005 - 2023" - }, - { - "Code": "23141-0110", - "Content": "Operationen und Prozeduren an vollstationären Patienten:\nBundesländer, Jahre, Operationen und Prozeduren\n(1-4-Steller Hierarchie)", - "Time": "2005 - 2023" - }, - { - "Code": "23141-0111", - "Content": "Operationen und Prozeduren an vollstationären Patienten:\nBundesländer, Jahre, Geschlecht, Altersgruppen, Operationen\nund Prozeduren (1-4-Steller Hierarchie)", - "Time": "2005 - 2023" - }, - { - "Code": "23311-0005", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Jahre", - "Time": "1996 - 2023" - }, - { - "Code": "23311-0006", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Jahre,\nFamilienstand/Herkunfts-Bundesland oder Ausland", - "Time": "1996 - 2023" - }, - { - "Code": "23311-0007", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Jahre,\nFamilienstand, Herkunfts-Bundesland oder Ausland", - "Time": "1996 - 2023" - }, - { - "Code": "23311-0008", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Quartale", - "Time": "1. Quartal 1996 - 3. Quartal 2024" - }, - { - "Code": "23311-0009", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Quartale,\nFamilienstand/Herkunfts-Bundesland oder Ausland", - "Time": "1. Quartal 1996 - 3. Quartal 2024" - }, - { - "Code": "23311-0010", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Quartale,\nFamilienstand, Herkunfts-Bundesland oder Ausland", - "Time": "1. Quartal 1996 - 3. Quartal 2024" - }, - { - "Code": "24111-0001", - "Content": "Gerichte: Bundesländer, Stichtag (bis 31.12.2012), Gerichtsart", - "Time": "31.12.2000 - 31.12.2012" - }, - { - "Code": "24211-0010", - "Content": "Von der Staats- und Amtsanwaltschaft erledigte\nErmittlungsverfahren: Bundesländer, Jahre, Sachgebiete", - "Time": "2018 - 2023" - }, - { - "Code": "24211-0011", - "Content": "Von der Staats- und Amtsanwaltschaft erledigte\nErmittlungsverfahren: Bundesländer, Jahre,\nEinleitungsbehörde", - "Time": "2018 - 2023" - }, - { - "Code": "24211-0012", - "Content": "Ermittlungsverfahren: Bundesländer, Jahre, Zuständigkeit,\nStand der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24221-0010", - "Content": "Vor dem Amtsgericht erledigte Strafverfahren: Bundesländer,\nJahre, Sachgebiete", - "Time": "2017 - 2023" - }, - { - "Code": "24221-0011", - "Content": "Strafverfahren vor dem Amtsgericht: Bundesländer, Jahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24231-0010", - "Content": "Vor dem Amtsgericht erledigte Verfahren in Zivilsachen:\nBundesländer, Jahre, Art der Erledigung, Sachgebiete", - "Time": "2017 - 2023" - }, - { - "Code": "24231-0011", - "Content": "Zivilsachen vor dem Amtsgericht: Bundesländer, Jahre, Stand\nder Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24241-0010", - "Content": "Vor dem Amtsgericht erledigte Verfahren in Familiensachen:\nBundesländer, Jahre, Art der Erledigung", - "Time": "2014 - 2023" - }, - { - "Code": "24241-0011", - "Content": "Familiensachen vor dem Amtsgericht: Bundesländer, Jahre,\nStand der Erledigung", - "Time": "2014 - 2023" - }, - { - "Code": "24251-0010", - "Content": "Vor dem Verwaltungsgericht erledigte Hauptverfahren:\nBundesländer, Jahre, Art der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24251-0011", - "Content": "Hauptverfahren vor dem Verwaltungsgericht: Bundesländer,\nJahre, Stand der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24251-0012", - "Content": "Eilverfahren vor dem Verwaltungsgericht: Bundesländer,\nJahre, Stand der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24261-0010", - "Content": "Vor dem Finanzgericht erledigte Klagen: Bundesländer, Jahre,\nArt der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24261-0011", - "Content": "Klagen vor dem Finanzgericht: Bundesländer, Jahre, Stand der\nErledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24271-0010", - "Content": "Vor dem Sozialgericht erledigte Klageverfahren:\nBundesländer, Jahre, Art der Erledigung, Sachgebiete", - "Time": "2017 - 2023" - }, - { - "Code": "24271-0011", - "Content": "Klageverfahren vor dem Sozialgericht: Bundesländer, Jahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24271-0012", - "Content": "Eilverfahren vor dem Sozialgericht: Bundesländer, Jahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24281-0010", - "Content": "Vor dem Arbeitsgericht erledigte Urteilsverfahren:\nBundesländer, Jahre, Art der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24281-0011", - "Content": "Urteilsverfahren vor dem Arbeitsgericht: Bundesländer,\nJahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24281-0012", - "Content": "Beschlussverfahren vor dem Arbeitsgericht: Deutschland,\nJahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24321-0002", - "Content": "Strafgefangene und Sicherungsverwahrte: Bundesländer,\nStichtag, Nationalität, Geschlecht, Altersgruppen, Art des\nVollzugs", - "Time": "31.03.2017 - 31.03.2024" - }, - { - "Code": "24321-0003", - "Content": "Justizvollzugsanstalten, Belegungskapazität, Belegung:\nBundesländer, Stichtag", - "Time": "31.12.1999 - 30.11.2015" - }, - { - "Code": "31111-0100", - "Content": "Baugenehmigungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Gebäudeart", - "Time": "2008 - 2024" - }, - { - "Code": "31111-0101", - "Content": "Baugenehmigungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Bauherr", - "Time": "2008 - 2024" - }, - { - "Code": "31111-0102", - "Content": "Baugenehmigungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Gebäudeart", - "Time": "2015 - 2024" - }, - { - "Code": "31111-0103", - "Content": "Baugenehmigungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Bauherr", - "Time": "2015 - 2024" - }, - { - "Code": "31111-0104", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Energieverwendung, Energieart", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0105", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Überwiegend verwendeter Baustoff", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0106", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Art der Beheizung", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0107", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Geschosszahl", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0108", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Haustyp", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0109", - "Content": "Baugenehmigungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Gebäudeart, Anzahl der Räume", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0110", - "Content": "Baugenehmigungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Bauherr, Anzahl der Räume", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0120", - "Content": "Baugenehmigungen im Hochbau: Bundesländer, Monate,\nBautätigkeiten, Gebäudeart", - "Time": "Januar 2003 - Januar 2025" - }, - { - "Code": "31111-0121", - "Content": "Baugenehmigungen im Hochbau: Bundesländer, Monate,\nBautätigkeiten, Bauherr", - "Time": "Januar 2003 - Januar 2025" - }, - { - "Code": "31111-0122", - "Content": "Baugenehmigungen im Fertigteilbau (Neubau): Bundesländer,\nMonate, Gebäudeart", - "Time": "Januar 2003 - Januar 2025" - }, - { - "Code": "31121-0100", - "Content": "Baufertigstellungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Gebäudeart", - "Time": "2008 - 2023" - }, - { - "Code": "31121-0101", - "Content": "Baufertigstellungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Bauherr", - "Time": "2008 - 2023" - }, - { - "Code": "31121-0102", - "Content": "Baufertigstellungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Gebäudeart", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0103", - "Content": "Baufertigstellungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Bauherr", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0104", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Energieverwendung, Energieart", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0105", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Überwiegend verwendeter Baustoff", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0106", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Art der Beheizung", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0107", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Geschosszahl", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0108", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Haustyp", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0109", - "Content": "Baufertigstellungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Gebäudeart, Anzahl der Räume", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0110", - "Content": "Baufertigstellungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Bauherr, Anzahl der Räume", - "Time": "2015 - 2023" - }, - { - "Code": "31131-0004", - "Content": "Bauüberhang an genehmigten Bauvorhaben im Hochbau: Bundesländer, Stichtag", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31131-0005", - "Content": "Bauüberhang an genehmigten Bauvorhaben im Hochbau: Bundesländer, Stichtag, Gebäudeart", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31131-0006", - "Content": "Bauüberhang an genehmigten Bauvorhaben im Hochbau: Bundesländer, Stichtag, Gebäudeart, Bauherr", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31141-0004", - "Content": "Abgang von Gebäuden/Gebäudeteilen im Hochbau: Bundesländer, Jahre", - "Time": "2015 - 2023" - }, - { - "Code": "31141-0005", - "Content": "Abgang von Gebäuden/Gebäudeteilen im Hochbau: Bundesländer, Jahre, Gebäudeart", - "Time": "2015 - 2023" - }, - { - "Code": "31141-0006", - "Content": "Abgang von Gebäuden/Gebäudeteilen im Hochbau: Bundesländer, Jahre, Gebäudeart, Eigentümer", - "Time": "2015 - 2023" - }, - { - "Code": "31231-0010", - "Content": "Wohnungen in Wohn- und Nichtwohngebäuden, Wohnfläche, Räume:\nBundesländer, Stichtag", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31231-0011", - "Content": "Wohnungen in Wohn- und Nichtwohngebäuden, Wohnfläche, Räume:\nBundesländer, Stichtag, Bestandsveränderungen", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31231-0012", - "Content": "Wohnungen in Wohn- und Nichtwohngebäuden: Bundesländer,\nStichtag, Anzahl der Räume", - "Time": "31.12.1995 - 31.12.2023" - }, - { - "Code": "31231-0013", - "Content": "Wohnungen in Wohn- und Nichtwohngebäuden: Bundesländer,\nStichtag, Anzahl der Räume, Bestandsveränderungen", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31231-0014", - "Content": "Wohngebäude, Wohnungen, Wohnfläche: Bundesländer, Stichtag,\nAnzahl der Wohnungen", - "Time": "31.12.1995 - 31.12.2023" - }, - { - "Code": "31231-0015", - "Content": "Wohngebäude, Wohnungen, Wohnfläche: Bundesländer, Stichtag,\nAnzahl der Wohnungen, Bestandsveränderungen", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31231-0016", - "Content": "Wohnungen in Nichtwohngebäuden, Wohnfläche: Bundesländer,\nStichtag, Bestandsveränderungen", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "32111-0010", - "Content": "Abfallentsorgung: Bundesländer, Jahre", - "Time": "2018 - 2022" - }, - { - "Code": "32111-0011", - "Content": "Abfallentsorgung: Bundesländer, Jahre, Anlagenart", - "Time": "2006 - 2022" - }, - { - "Code": "32121-0002", - "Content": "Aufkommen an Haushaltsabfällen: Bundesländer, Jahre", - "Time": "2004 - 2023" - }, - { - "Code": "32121-0003", - "Content": "Aufkommen an Haushaltsabfällen: Bundesländer, Jahre,\nAbfallarten", - "Time": "2004 - 2023" - }, - { - "Code": "32131-0003", - "Content": "Eingesammelte Transport- und Umverpackungen: Bundesländer,\nJahre, Verbleib der Verpackungen", - "Time": "2001 - 2020" - }, - { - "Code": "32136-0010", - "Content": "Unternehmen, Erfasste Verkaufsverpackungen von privaten\nEndverbrauchern: Bundesländer, Jahre", - "Time": "2010 - 2020" - }, - { - "Code": "32136-0011", - "Content": "Erfasste Verkaufsverpackungen von privaten Endverbrauchern:\nBundesländer, Jahre, Art der Verkaufsverpackungen", - "Time": "2010 - 2020" - }, - { - "Code": "32137-0010", - "Content": "Verkaufs-, Transport- und Umverpackungen, Pfandpflichtige\nEinweggetränkeverpackungen: Bundesländer, Jahre,\nVerwertungsarten, Art des Verpackungsmaterials", - "Time": "2022 - 2022" - }, - { - "Code": "32137-0011", - "Content": "Ausgesonderte Mehrwegverpackungen: Bundesländer, Jahre", - "Time": "2022 - 2022" - }, - { - "Code": "32141-0004", - "Content": "Bauschuttaufbereitungsanlagen, Asphaltmischanlagen:\nBundesländer, Jahre", - "Time": "2006 - 2022" - }, - { - "Code": "32151-0003", - "Content": "Abfallerzeuger, Abfallmengen (gefährliche Abfälle):\nBundesländer, Jahre", - "Time": "2006 - 2022" - }, - { - "Code": "32151-0005", - "Content": "Erzeuger von primär nachgewiesenen Abfallmengen,\nAbgegebene Abfallmenge an Entsorger (gefährliche Abfälle):\nBundesländer, Jahre (bis 2008)", - "Time": "2005 - 2008" - }, - { - "Code": "32161-0004", - "Content": "Betriebe, erzeugte Abfallmenge: Bundesländer, Jahre", - "Time": "2010 - 2022" - }, - { - "Code": "32211-0001", - "Content": "Wassergewinnung, Einwohner mit Anschluss an die öffentliche\nWasserversorgung, Wasserabgabe: Bundesländer, Jahre", - "Time": "2007 - 2022" - }, - { - "Code": "32211-0002", - "Content": "Wassergewinnung: Bundesländer, Jahre, Wasserarten", - "Time": "2007 - 2022" - }, - { - "Code": "32212-0001", - "Content": "An öffentliche Kanalisation angeschlossene Einwohner,\nSchmutzwasser: Bundesländer, Jahre, Art der\nAbwasserentsorgung", - "Time": "2013 - 2019" - }, - { - "Code": "32213-0001", - "Content": "Länge des Kanalnetzes, Abwasserbehandlungsanlagen,\nAngeschlossene Einwohnerwerte, Jahresabwassermenge,\nSchmutzwasser: Bundesländer, Jahre", - "Time": "2007 - 2022" - }, - { - "Code": "32213-0002", - "Content": "Abwasserbehandlungsanlagen, Angeschlossene Einwohnerwerte,\nJahresabwassermenge, Schmutzwasser: Bundesländer, Jahre,\nArt der Abwasserbehandlung", - "Time": "2007 - 2022" - }, - { - "Code": "32214-0001", - "Content": "Trockenmasse des aus Abwasserbehandlungsanlagen direkt\nentsorgten Klärschlamms: Bundesländer, Jahre,\nEntsorgungsarten des Klärschlamms", - "Time": "2006 - 2023" - }, - { - "Code": "32221-0001", - "Content": "Wasseraufkommen, Betriebe mit Wasseraufkommen: Bundesländer,\nJahre (bis 2019), Wassergewinnung und -bezug", - "Time": "2007 - 2019" - }, - { - "Code": "32221-0002", - "Content": "Wasseraufkommen: Bundesländer, Jahre (bis 2019),\nEigengewinnung und Fremdbezug", - "Time": "2007 - 2019" - }, - { - "Code": "32221-0003", - "Content": "Wasseraufkommen: Bundesländer, Jahre, Verwendungsarten", - "Time": "2007 - 2022" - }, - { - "Code": "32221-0004", - "Content": "Frischwassereinsatz: Bundesländer, Jahre, Wassernutzung", - "Time": "2007 - 2022" - }, - { - "Code": "32221-0005", - "Content": "Unbehandeltes Abwasser: Bundesländer, Jahre (bis 2019),\nAbwassereinleitungsarten", - "Time": "2007 - 2019" - }, - { - "Code": "32251-0001", - "Content": "Einwohner mit Anschluss an die öffentliche Kanalisation,\nEinwohner mit Anschluss an zentrale\nAbwasserbehandlungsanlagen: Bundesländer, Jahre", - "Time": "2007 - 2022" - }, - { - "Code": "32331-0020", - "Content": "Geprüfte Anlagen zum Umgang mit wassergefährdenden Stoffen:\nBundesländer, Jahre, Art der Prüfung", - "Time": "2018 - 2023" - }, - { - "Code": "32331-0021", - "Content": "Geprüfte Anlagen zum Umgang mit wassergefährdenden Stoffen:\nBundesländer, Jahre, Standort", - "Time": "2018 - 2023" - }, - { - "Code": "32331-0022", - "Content": "Geprüfte Anlagen zum Umgang mit wassergefährdenden Stoffen:\nBundesländer, Jahre, Ergebnis der Prüfung", - "Time": "2018 - 2023" - }, - { - "Code": "32421-0010", - "Content": "Verwendung, Einfuhr und Ausfuhr klimawirksamer Stoffe:\nBundesländer, Jahre, Stoffgruppen", - "Time": "2022 - 2023" - }, - { - "Code": "32421-0011", - "Content": "Verwendung, Einfuhr und Ausfuhr klimawirksamer Stoffe: Bundesländer, Jahre, Wirtschaftszweig des Unternehmens, Stoffgruppen", - "Time": "2022 - 2023" - }, - { - "Code": "32421-0012", - "Content": "Verwendung klimawirksamer Stoffe: Bundesländer, Jahre,\nStoffgruppen, Einsatzbereiche", - "Time": "2022 - 2023" - }, - { - "Code": "32421-0013", - "Content": "Verwendung klimawirksamer Stoffe: Bundesländer, Jahre,\nWirtschaftszweig des Unternehmens, Einsatzbereiche", - "Time": "2022 - 2023" - }, - { - "Code": "32531-0010", - "Content": "Einheiten, Beschäftigte, Umsatz im Bereich Umweltschutz:\nBundesländer, Jahre", - "Time": "2006 - 2022" - }, - { - "Code": "32531-0011", - "Content": "Umweltschutzbezogener Umsatz: Bundesländer, Jahre (bis\n2010), Umsatzarten", - "Time": "2006 - 2010" - }, - { - "Code": "32531-0012", - "Content": "Umweltschutzbezogener Umsatz: Bundesländer, Jahre,\nUmweltbereiche", - "Time": "2022 - 2022" - }, - { - "Code": "33111-0002", - "Content": "Bodenfläche (tatsächliche Nutzung): Bundesländer, Stichtag (bis 31.12.2015), Nutzungsarten (AdV-Nutzungsartenverzeichnis 1991)", - "Time": "31.12.1992 - 31.12.2015" - }, - { - "Code": "33111-0004", - "Content": "Siedlungs- und Verkehrsfläche: Bundesländer, Stichtag\n(bis 31.12.2015), Nutzungsarten\n(AdV-Nutzungsartenverzeichnis 1991)", - "Time": "31.12.1992 - 31.12.2015" - }, - { - "Code": "33111-0006", - "Content": "Bodenfläche (tatsächliche Nutzung): Bundesländer, Stichtag (bis 31.12.2022), Nutzungsarten (AdV-Nutzungsartenkatalog 2009)", - "Time": "31.12.2016 - 31.12.2022" - }, - { - "Code": "33111-0008", - "Content": "Bodenfläche: Bundesländer, Stichtag, Nutzungsarten\n(tatsächliche Nutzung) (AdV-TN 2023)", - "Time": "31.12.2023 - 31.12.2023" - }, - { - "Code": "41122-0005", - "Content": "Landwirtschaftliche Betriebe, Landwirtsch. genutzte Fläche\n(Rep. ASE): Bundesländer, Jahre (bis 2007), Rechtsform,\nGrößenklassen der landwirtschaftlich genutzten Fläche", - "Time": "1979 - 2007" - }, - { - "Code": "41122-0006", - "Content": "Arbeitskräfte (Rep. ASE): Bundesländer, Jahre (bis 2007),\nArbeitskräftegruppen, Geschlecht, Rechtsform, Größenklassen\nder landwirtschaftlich genutzten Fläche", - "Time": "1979 - 2007" - }, - { - "Code": "41122-0007", - "Content": "Betriebliche Arbeitsleistung (Rep. ASE): Bundesländer,\nJahre (bis 2007), Arbeitskräftegruppen, Rechtsform,\nGrößenklassen der landwirtschaftlich genutzten Fläche", - "Time": "1979 - 2007" - }, - { - "Code": "41122-0008", - "Content": "Betriebliche Arbeitsleistung (Rep. ASE): Bundesländer,\nJahre (bis 1995), Arbeitskräftegruppen, Geschlecht,\nRechtsform, Größenklassen der landwirtsch. genutzten Fläche", - "Time": "1979 - 1995" - }, - { - "Code": "41141-0101", - "Content": "Landwirtschaftliche Betriebe, Fläche: Bundesländer, Jahre,\nBodennutzungsarten", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0102", - "Content": "Landwirtschaftliche Betriebe, Fläche: Bundesländer, Jahre,\nBodennutzungsarten, Größenklassen der landwirtschaftlich\ngenutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0103", - "Content": "Landwirtschaftliche Betriebe mit Ackerland, Fläche:\nBundesländer, Jahre, Ackerkulturen, Größenklassen des\nAckerlandes", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0104", - "Content": "Landwirtschaftliche Betriebe mit Viehhaltung, Viehbestand:\nBundesländer, Stichtag, Tierarten", - "Time": "01.03.2010 - 01.03.2023" - }, - { - "Code": "41141-0105", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nLandwirtschaftlich genutzte Fläche: Bundesländer, Jahre,\nGrößenklassen der landwirtschaftlich genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0106", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nLandwirtschaftlich genutzte Fläche (LF): Bundesländer,\nJahre, Betriebswirtschaftliche Ausrichtung", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0107", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nFläche, Ökologisch bewirtschaftete Fläche: Bundesländer,\nJahre, Bodennutzungsarten", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0108", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nTiere in Betrieben mit ökologischem Landbau, Tiere in\nökologischer Haltung: Bundesländer, Stichtag, Tierarten", - "Time": "01.03.2010 - 01.03.2023" - }, - { - "Code": "41141-0109", - "Content": "Landwirtschaftliche Betriebe, Landwirtsch. genutzte Fläche,\nFläche im jew. Eigentumsverhältnis: Bundesländer, Jahre,\nEigentumsverhältnisse, Rechtsformen, Größenklassen der LF", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0110", - "Content": "Landwirtschaftliche Betriebe mit gepachteten Flächen, Pachtentgelt: Bundesländer, Jahre, Bodennutzungsarten, Rechtsformen, Größenklassen der landw. genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0111", - "Content": "Landwirtschaftliche Betriebe, Fläche: Bundesländer, Jahre,\nBodennutzungsarten, Rechtsformen, Größenklassen der\nlandwirtschaftlich genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0112", - "Content": "Landwirtschaftliche Betriebe, Tiere: Bundesländer, Stichtag,\nTierarten, Rechtsformen, Größenklassen der\nlandwirtschaftlich genutzten Fläche", - "Time": "01.03.2010 - 01.03.2023" - }, - { - "Code": "41141-0113", - "Content": "Landwirtschaftliche Betriebe, Landwirtschaftlich genutzte\nFläche, Arbeitskräfte, Arbeitsleistung: Bundesländer, Jahre,\nRechtsformen, Größenklassen der landwirt. genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0114", - "Content": "Landwirtschaftliche Betriebe: Bundesländer, Jahre,\nGrößenklassen des Standardoutputs, Rechtsformen,\nBetriebswirtschaftliche Ausrichtung", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0115", - "Content": "Landwirtschaftliche Betriebe mit Bewässerung, Bewässerte\nFläche: Bundesländer, Jahre, Größenklassen der\nlandwirtschaftlich genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0116", - "Content": "Landwirtschaftliche Betriebe mit Dauerkulturen,\nDauerkulturfläche: Bundesländer, Jahre, Dauerkulturarten,\nGrößenklassen der Dauerkulturen", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0117", - "Content": "Landwirtschaftliche Betriebe mit Dauergrünland, Dauergrünlandfläche: Bundesländer, Jahre, Dauergrünlandarten, Größenklassen der Dauergrünlandfläche", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0118", - "Content": "Landwirtschaftliche Betriebe mit Viehhaltung, Viehbestand,\nLandwirtschaftlich genutzte Fläche: Bundesländer, Stichtag,\nTierarten, Bestandsgrößenklassen", - "Time": "01.03.2020 - 01.03.2023" - }, - { - "Code": "41141-0119", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau, LF:\nBundesländer, Jahre, Umfang der ökologischen\nBewirtschaftung, Größenklassen der LF", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0120", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau, LF:\nBundesländer, Jahre, Umfang der ökologischen\nBewirtschaftung, Betriebswirtschaftliche Ausrichtung", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0121", - "Content": "Landwirtschaftliche Betriebe mit ökologischer Viehhaltung:\nBundesländer, Stichtag, Größenklassen der LF", - "Time": "01.03.2020 - 01.03.2023" - }, - { - "Code": "41141-0122", - "Content": "Landwirtschaftliche Betriebe mit ökologischer Viehhaltung:\nBundesländer, Stichtag, Betriebswirtschaftliche Ausrichtung", - "Time": "01.03.2020 - 01.03.2023" - }, - { - "Code": "41141-0123", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau und\nPacht, Gepachtete LF, Pachtentgelt: Bundesländer, Jahre,\nGrößenklassen der LF", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0124", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau und\nPacht, Gepachtete LF, Pachtentgelt: Bundesländer, Jahre,\nBetriebswirtschaftliche Ausrichtung", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0125", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau, LF,\nArbeitskräfte, Arbeitsleistung: Bundesländer, Jahre,\nRechtsformen, Größenklassen der LF", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0126", - "Content": "Landw. Betriebe mit Angabe des Jahrespachtentgeltes,\nGepachtete LF: Bundesländer, Jahre, Bodennutzungsarten,\nRechtsformen, Größenklassen des durch. Jahrespachtentgeltes", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0127", - "Content": "Arbeitskräfte: Bundesländer, Jahre, Geschlecht,\nAltersgruppen, Rechtsformen, Art der Arbeitskräfte,\nBeschäftigungsumfang", - "Time": "2020 - 2023" - }, - { - "Code": "41145-0011", - "Content": "Betriebe, Nutzfläche (Gartenbau): Bundesländer, Jahre,\nBetriebsarten, Größenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0012", - "Content": "Gartenbaubetriebe, Nutzfläche: Bundesländer, Jahre,\nBetrieblicher Schwerpunkt der Gartenbaubetriebe,\nGrößenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0013", - "Content": "Gartenbaubetriebe mit Schwerpunkt Erzeugung, Nutzfläche:\nBundesländer, Jahre, Betriebstypen, Größenklassen der\ngärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0014", - "Content": "Gartenbaubetriebe mit Schwerpunkt Handel u.Dienstleistungen:\nBundesländer, Jahre, Betriebstypen, Größenklassen der\ngärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0015", - "Content": "Arbeitskräfte in Gartenbaubetrieben: Bundesländer, Jahre,\nBetriebl. Schwerpunkt der Gartenbaubetriebe, Beschäftigungs-\numfang, Größenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0016", - "Content": "Familienarbeitskräfte, Betriebliche Arbeitsleistung in\nGartenbaubetrieben:Bundesländer, Jahre, Betriebl.Schwerpunkt\nder Gartenbaubetriebe, Größenklassen der gärtn. Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0017", - "Content": "Arbeitskräfte in Gartenbaubetrieben mit Schwerpunkt\nErzeugung: Bundesländer, Jahre, Betriebstypen, Größenklassen\nder gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0018", - "Content": "Betriebe mit Anbau von Gartenbauerzeugnissen, Anbauflächen:\nBundesländer, Jahre, Größenklassen der gärtnerischen\nNutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0019", - "Content": "Betriebe mit Anbau v.Gartenbauerzeugnissen und Flächen unter\nGlas und/oder abgedeckten Freilandflächen: Bundesländer,\nJahre, Größenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0020", - "Content": "Betriebe (Einzelunternehmen) mit Anbau von Gartenbau-\nerzeugnissen: Bundesländer, Jahre, Betriebsform,\nGrößenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41161-0010", - "Content": "Waldfläche: Bundesländer, Jahre, Waldeigentumsarten", - "Time": "2022 - 2022" - }, - { - "Code": "41161-0011", - "Content": "Forsteinheiten, Waldfläche: Bundesländer, Jahre,\nWaldeigentumsarten, Größenklassen der Waldfläche", - "Time": "2022 - 2022" - }, - { - "Code": "41213-0008", - "Content": "Betriebe mit Grundflächen des Zierpflanzenanbaus:\nBundesländer, Jahre, Anbauform, Verwendungszweck", - "Time": "2008 - 2021" - }, - { - "Code": "41213-0009", - "Content": "Betriebe mit Erzeugung von Zimmerpflanzen: Bundesländer,\nJahre, Verwendungszweck, Pflanzenarten", - "Time": "2008 - 2021" - }, - { - "Code": "41213-0010", - "Content": "Betriebe mit Erzeugung von Beet- und Balkonpflanzen und\nStauden: Bundesländer, Jahre, Verwendungszweck,\nPflanzenarten", - "Time": "2008 - 2021" - }, - { - "Code": "41213-0011", - "Content": "Betriebe mit Anbauflächen von Schnittblumen: Bundesländer,\nJahre, Anbauform, Pflanzenarten", - "Time": "2008 - 2021" - }, - { - "Code": "41215-0010", - "Content": "Betriebe mit Gemüseanbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre", - "Time": "2010 - 2024" - }, - { - "Code": "41215-0011", - "Content": "Betriebe mit Gemüseanbau im Freiland, Anbaufläche, Erntemenge: Bundesländer, Jahre, Gemüsearten", - "Time": "2010 - 2024" - }, - { - "Code": "41215-0012", - "Content": "Betriebe mit Gemüseanbau unter Schutzabdeckungen, Anbaufläche, Erntemenge: Bundesländer, Jahre, Gemüsearten", - "Time": "2010 - 2024" - }, - { - "Code": "41215-0013", - "Content": "Betriebe mit Gemüseanbau (vollständig ökologisch), Anbaufläche, Erntemenge: Bundesländer, Jahre", - "Time": "2023 - 2024" - }, - { - "Code": "41215-0014", - "Content": "Betriebe mit Erdbeeranbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre, Anbauform", - "Time": "2006 - 2024" - }, - { - "Code": "41215-0015", - "Content": "Betriebe mit Erdbeeranbau (vollständig ökologisch), Anbaufläche, Erntemenge: Bundesländer, Jahre, Anbauform", - "Time": "2012 - 2024" - }, - { - "Code": "41221-0010", - "Content": "Betriebe mit Baumschulen, Baumschulfläche: Bundesländer,\nJahre, Art der Anbaufläche, Nutzungsarten", - "Time": "2017 - 2021" - }, - { - "Code": "41231-0010", - "Content": "Betriebe mit Baumobstflächen: Bundesländer, Jahre, Baumobstarten", - "Time": "1972 - 2022" - }, - { - "Code": "41231-0011", - "Content": "Betriebe mit Baumobstflächen, Anbaufläche: Bundesländer,\nJahre, Tafel-Kernobstarten, Pflanzdichteklassen", - "Time": "2022 - 2022" - }, - { - "Code": "41231-0012", - "Content": "Betriebe mit Baumobstflächen, Anbaufläche: Bundesländer,\nJahre, Verwertungs-Kernobstarten, Pflanzdichteklassen", - "Time": "2022 - 2022" - }, - { - "Code": "41231-0013", - "Content": "Betriebe mit Baumobstflächen, Anbaufläche: Bundesländer,\nJahre, Kernobstarten, Alter der Bäume", - "Time": "2022 - 2022" - }, - { - "Code": "41231-0014", - "Content": "Anbaufläche, Bäume (Baumobstanbau): Bundesländer, Jahre,\nBaumobstarten", - "Time": "1972 - 2022" - }, - { - "Code": "41232-0010", - "Content": "Betriebe mit Strauchbeerenanbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre", - "Time": "2012 - 2024" - }, - { - "Code": "41232-0011", - "Content": "Betriebe mit Strauchbeerenanbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre, Anbauform, Strauchbeerenart", - "Time": "2012 - 2024" - }, - { - "Code": "41232-0012", - "Content": "Erntemenge (Strauchbeeren): Bundesländer, Jahre, Art der\nVerwendung", - "Time": "2012 - 2024" - }, - { - "Code": "41232-0013", - "Content": "Betriebe mit ökologischem Strauchbeerenanbau, Ökologische Anbaufläche, Ökologisch erzeugte Erntemenge: Bundesländer, Jahre", - "Time": "2012 - 2024" - }, - { - "Code": "41232-0014", - "Content": "Betriebe mit ökologischem Strauchbeerenanbau, Ökologische\nAnbaufläche, Ökologisch erzeugte Erntemenge: Bundesländer,\nJahre, Anbauform, Strauchbeerenart", - "Time": "2012 - 2024" - }, - { - "Code": "41241-0010", - "Content": "Anbaufläche, Erntemenge, Ertrag je Hektar (Feldfrüchte und\nGrünland): Bundesländer, Jahre, Fruchtarten", - "Time": "2010 - 2024" - }, - { - "Code": "41241-0011", - "Content": "Erntemenge von Raufutter: Bundesländer, Jahre, Fruchtarten,\nVerwendungszweck", - "Time": "2010 - 2024" - }, - { - "Code": "41243-0010", - "Content": "Anbaufläche, Erntemenge (Baumobst): Bundesländer, Jahre,\nBaumobstarten", - "Time": "2005 - 2024" - }, - { - "Code": "41243-0011", - "Content": "Erntemenge (Baumobst): Bundesländer, Jahre, Baumobstarten,\nArt der Verwendung", - "Time": "2007 - 2024" - }, - { - "Code": "41243-0012", - "Content": "Anbaufläche, Erntemenge (Baumobst): Bundesländer, Jahre,\nApfelsorten", - "Time": "2007 - 2024" - }, - { - "Code": "41244-0010", - "Content": "Rebfläche im Ertrag, Weinmostertrag je Hektar, Erntemenge an Weinmost: Bundesländer, Jahre, Art des Weinmosts", - "Time": "2019 - 2024" - }, - { - "Code": "41244-0011", - "Content": "Rebfläche im Ertrag, Weinmostertrag je Hektar, Erntemenge an Weinmost: Bundesländer, Jahre, Rebsorte", - "Time": "2019 - 2024" - }, - { - "Code": "41244-0012", - "Content": "Erntemenge an Weinmost, Durchschnittliches Mostgewicht:\nBundesländer, Jahre, Art des Weinmosts, Mostqualität", - "Time": "2019 - 2024" - }, - { - "Code": "41244-0013", - "Content": "Erntemenge an Weinmost, Durchschnittliches Mostgewicht:\nBundesländer, Jahre, Rebsorte, Mostqualität", - "Time": "2019 - 2024" - }, - { - "Code": "41252-0010", - "Content": "Mit Keltertrauben bestockte Rebfläche: Bundesländer, Jahre,\nRebsorte", - "Time": "1991 - 2024" - }, - { - "Code": "41253-0010", - "Content": "Erntemenge an Weinmost, Weinmostertrag je Hektar, Rebfläche\nim Ertrag: Bundesländer, Jahre, Art des Weinmosts", - "Time": "1991 - 2024" - }, - { - "Code": "41253-0011", - "Content": "Erntemenge an Weinmost, Weinmostertrag je Hektar, Rebfläche\nim Ertrag: Bundesländer, Jahre, Rebsorte", - "Time": "2022 - 2024" - }, - { - "Code": "41253-0012", - "Content": "Erntemenge an Weinmost: Bundesländer, Jahre, Mostqualität,\nArt des Weinmosts", - "Time": "2022 - 2024" - }, - { - "Code": "41253-0013", - "Content": "Erntemenge an Weinmost: Bundesländer, Jahre, Mostqualität,\nRebsorte", - "Time": "2022 - 2024" - }, - { - "Code": "41254-0003", - "Content": "Erzeugter Wein: Bundesländer, Jahre, Rebsorte,\nWeinkategorien", - "Time": "2010 - 2024" - }, - { - "Code": "41255-0010", - "Content": "Weinbestand: Bundesländer, Jahre, Rebsorte", - "Time": "1991 - 2024" - }, - { - "Code": "41255-0011", - "Content": "Weinbestand: Bundesländer, Jahre, Rebsorte, Bestandsort,\nHerkunft des Weins", - "Time": "2021 - 2024" - }, - { - "Code": "41255-0012", - "Content": "Weinbestand: Bundesländer, Jahre, Rebsorte, Bestandsort,\nKategorien des Bezeichnungsschutzes", - "Time": "2021 - 2024" - }, - { - "Code": "41255-0013", - "Content": "Bestand an Schaumwein: Bundesländer, Jahre, Bestandsort, Herkunft des Weins", - "Time": "2021 - 2024" - }, - { - "Code": "41255-0014", - "Content": "Bestand an Traubenmost: Bundesländer, Jahre, Bestandsort,\nRebsorte", - "Time": "2023 - 2024" - }, - { - "Code": "41261-0010", - "Content": "Holzeinschlag: Bundesländer, Jahre, Holzartengruppen", - "Time": "1998 - 2023" - }, - { - "Code": "41261-0011", - "Content": "Holzeinschlag: Bundesländer, Jahre, Holzsorten, Holzartengruppen, Waldeigentumsarten", - "Time": "2006 - 2023" - }, - { - "Code": "41261-0012", - "Content": "Schadholzeinschlag: Bundesländer, Jahre, Einschlagsursache,\nHolzartengruppen, Waldeigentumsarten", - "Time": "2006 - 2023" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/xy_variable3/api/catalogue/tables2variable-86e7c4-1f2606-POST.json b/tests/testthat/xy_variable3/api/catalogue/tables2variable-86e7c4-1f2606-POST.json deleted file mode 100644 index 2dea818..0000000 --- a/tests/testthat/xy_variable3/api/catalogue/tables2variable-86e7c4-1f2606-POST.json +++ /dev/null @@ -1,2523 +0,0 @@ -{ - "Ident": { - "Service": "catalogue", - "Method": "tables2variable" - }, - "Status": { - "Code": 0, - "Content": "erfolgreich", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "name": "DLAND", - "selection": "", - "area": "Alle", - "pagelength": "500", - "language": "de" - }, - "List": [ - { - "Code": "11111-0001", - "Content": "Gebietsfläche: Bundesländer, Stichtag", - "Time": "31.12.1995 - 31.12.2022" - }, - { - "Code": "12211-0902", - "Content": "Bevölkerung in Gemeinschaftsunterkünften: Bundesländer,\nJahre, Hauptstatus, Geschlecht, Altersgruppen", - "Time": "2017 - 2023" - }, - { - "Code": "12211-0903", - "Content": "Bevölkerung in Gemeinschaftsunterkünften: Bundesländer,\nJahre, Art der Gemeinschaftsunterkunft, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "12211-1001", - "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen, Nichterwerbspersonen aus Hauptwohnsitzhaushalten: Bundesländer, Jahre, Geschlecht, Altersgruppen", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1002", - "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen, Nichterwerbspersonen aus Hauptwohnsitzhaushalten: Bundesländer, Jahre, Überwiegender Lebensunterhalt, Altersgruppen", - "Time": "2023 - 2023" - }, - { - "Code": "12211-1003", - "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen,\nNichterwerbspersonen aus Hauptwohnsitzhaush.: Bundesländer,\nJahre, Geschlecht, Größenkl. persönl. monatl. Nettoeinkommen", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1004", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Stellung im Beruf", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1005", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Art der geleisteten\nArbeitsstunden, Größenkl. d.geleisteten Arbeitsstd. je Woche", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1006", - "Content": "Geleistete Arbeitsstunden je Woche von Erwerbstätigen aus\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Geschlecht,\nStellung im Beruf, Art der geleisteten Arbeitsstunden", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1007", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Erwerbsformen", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1008", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Größenklassen des\npersönlichen monatlichen Nettoeinkommens", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1009", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Berufe", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1010", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Größenklassen der in\nder Arbeitsstätte tätigen Personen", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1011", - "Content": "Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten:\nBundesländer, Jahre, Geschlecht, Altersgruppen,\nBeschäftigungsumfang", - "Time": "2021 - 2023" - }, - { - "Code": "12211-1012", - "Content": "Erwerbslose aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Dauer der Erwerbslosigkeit", - "Time": "2021 - 2023" - }, - { - "Code": "12211-9004", - "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen,\nNichterwerbspersonen: Bundesländer, Jahre (bis 2019)", - "Time": "04/1991 - 2019" - }, - { - "Code": "12211-9014", - "Content": "Bevölkerung (ab 15 Jahren): Bundesländer, Jahre (bis 2019),\nGeschlecht, Allgemeine Schulausbildung", - "Time": "2005 - 2019" - }, - { - "Code": "12211-9015", - "Content": "Bevölkerung (ab 15 Jahren): Bundesländer, Jahre (bis 2019),\nGeschlecht, Beruflicher Bildungsabschluss", - "Time": "2005 - 2019" - }, - { - "Code": "12211-9033", - "Content": "Privathaushalte: Bundesländer, Jahre (bis 2019)", - "Time": "05/1970 - 2019" - }, - { - "Code": "12211-9034", - "Content": "Privathaushalte: Bundesländer, Jahre (bis 2019), Haushaltsgröße", - "Time": "04/1991 - 2019" - }, - { - "Code": "12211-9041", - "Content": "Bevölkerung in Familien/Lebensformen: Bundesländer, Jahre (bis 2019), Lebensformen", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9044", - "Content": "Familien, Paare, Alleinerziehende: Bundesländer, Jahre (bis 2019), Vorhandensein von Kindern", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9047", - "Content": "Ehepaare, Lebensgemeinschaften, Gemischtgeschlechtliche\nLebensgemeinschaften: Bundesländer, Jahre (bis 2019),\nVorhandensein von Kindern", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9051", - "Content": "Alleinerziehende: Bundesländer, Jahre (bis 2019),\nGeschlecht, Vorhandensein von Kindern", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9053", - "Content": "Alleinstehende: Bundesländer, Jahre (bis 2019), Geschlecht,\nHaushaltsgröße", - "Time": "04/1996 - 2019" - }, - { - "Code": "12211-9056", - "Content": "Ledige Kinder in Familien: Bundesländer, Jahre (bis 2019),\nFamilienformen", - "Time": "04/1996 - 2019" - }, - { - "Code": "12231-0101", - "Content": "Bevölkerung von 16 bis unter 75 Jahren in\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Altersgruppen,\nPrivate Internetaktivitäten in den letzten drei Monaten", - "Time": "2022 - 2024" - }, - { - "Code": "12231-0102", - "Content": "Bevölkerung von 16 bis unter 75 Jahren in\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Altersgruppen,\nPrivate Internetkäufe in den letzten drei Monaten", - "Time": "2022 - 2024" - }, - { - "Code": "12231-0103", - "Content": "Bevölkerung von 16 bis unter 75 Jahren in\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Altersgruppen,\nArt der Computer- und Internetkenntnisse", - "Time": "2023 - 2023" - }, - { - "Code": "12251-0101", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Wochenend- und\nFeiertagsarbeit", - "Time": "2021 - 2023" - }, - { - "Code": "12251-0102", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Abend-, Nacht- und\nSchichtarbeit", - "Time": "2021 - 2023" - }, - { - "Code": "12251-0103", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Erwerbsarbeit zu\nHause", - "Time": "2021 - 2023" - }, - { - "Code": "12251-0107", - "Content": "Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten:\nBundesländer, Jahre, Geschlecht, Altersgruppen, Art des\nArbeitsvertrages", - "Time": "2021 - 2023" - }, - { - "Code": "12411-0010", - "Content": "Bevölkerung: Bundesländer, Stichtag", - "Time": "31.12.1958 - 31.12.2023" - }, - { - "Code": "12411-0011", - "Content": "Bevölkerung: Bundesländer, Stichtag, Geschlecht", - "Time": "31.12.1967 - 31.12.2023" - }, - { - "Code": "12411-0012", - "Content": "Bevölkerung: Bundesländer, Stichtag, Altersjahre", - "Time": "31.12.1967 - 31.12.2023" - }, - { - "Code": "12411-0013", - "Content": "Bevölkerung: Bundesländer, Stichtag, Geschlecht, Altersjahre", - "Time": "31.12.1967 - 31.12.2023" - }, - { - "Code": "12411-0014", - "Content": "Bevölkerung: Bundesländer, Stichtag, Nationalität,\nGeschlecht, Altersjahre", - "Time": "31.12.2000 - 31.12.2023" - }, - { - "Code": "12411-0021", - "Content": "Bevölkerung: Bundesländer, Stichtag zum Quartalsende,\nGeschlecht", - "Time": "31.03.1991 - 30.09.2024" - }, - { - "Code": "12411-0042", - "Content": "Durchschnittliche Bevölkerung: Bundesländer, Jahre,\nNationalität, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "12411-0050", - "Content": "Bevölkerungsdichte: Bundesländer, Stichtag", - "Time": "31.12.1995 - 31.12.2022" - }, - { - "Code": "12421-0003", - "Content": "Vorausberechneter Bevölkerungsstand: Bundesländer, Stichtag,\nVarianten der Bevölkerungsvorausberechnung", - "Time": "31.12.2022 - 31.12.2070" - }, - { - "Code": "12421-0004", - "Content": "Vorausberechneter Bevölkerungsstand: Bundesländer, Stichtag,\nVarianten der Bevölkerungsvorausberechnung, Geschlecht,\nAltersjahre", - "Time": "31.12.2022 - 31.12.2070" - }, - { - "Code": "12421-0101", - "Content": "Vorausberechnete Privathaushalte: Bundesländer, Jahre,\nVarianten der Haushaltsvorausberechnung, Haushaltsgröße", - "Time": "2019 - 2040" - }, - { - "Code": "12521-0020", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht/Altersjahre/\nFamilienstand", - "Time": "30.09.1980 - 31.12.2023" - }, - { - "Code": "12521-0021", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht/Altersjahre/\nFamilienstand, Ländergruppierungen/Staatsangehörigkeit", - "Time": "30.09.1980 - 31.12.2023" - }, - { - "Code": "12521-0022", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht, Altersjahre,\nLändergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0023", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht, Altersjahre,\nMigrantengeneration, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0024", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht,\nFamilienstand, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0025", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht,\nAufenthaltsdauer/Aufenthaltsdauer (Abgrenzung\nEinbürgerungen), Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0026", - "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht,\nAufenthaltstitel/Ausgewählte Aufenthaltstitel,\nLändergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0027", - "Content": "Ausländer: Bundesländer, Jahre, Geschlecht,\nRegisterbewegungen (regional), Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "2013 - 2023" - }, - { - "Code": "12521-0028", - "Content": "Ausländer: Bundesländer, Jahre, Geschlecht, Altersjahre,\nRegisterzu- und abgänge (regional), Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "2013 - 2023" - }, - { - "Code": "12521-0029", - "Content": "Ausländer: Bundesländer, Jahre, Geschlecht,\nAufenthaltsdauer, Registerabgänge (regional),\nLändergruppierungen/Staatsangehörigkeit", - "Time": "2013 - 2023" - }, - { - "Code": "12521-0030", - "Content": "Durchschnittsalter der Ausländer: Bundesländer, Stichtag,\nGeschlecht, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12521-0031", - "Content": "Durchschnittliche Aufenthaltsdauer der Ausländer:\nBundesländer, Stichtag, Geschlecht, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.1998 - 31.12.2023" - }, - { - "Code": "12531-0020", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht/\nAltersjahre/Familienstand", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0021", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht/\nAltersjahre/Familienstand, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0022", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nAltersjahre, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0023", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nAltersjahre, Migrantengeneration, Ländergruppierungen\n/Staatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0024", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nFamilienstand, Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0025", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nAufenthaltsdauer/Aufenthaltsdauer (Abgrenzung\nEinbürgerungen), Ländergruppierungen/Staatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0026", - "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nSchutzstatus/Schutzstatuskategorie, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0027", - "Content": "Durchschnittsalter der Schutzsuchenden: Bundesländer,\nStichtag, Geschlecht, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12531-0028", - "Content": "Durchschnittliche Aufenthaltsdauer der Schutzsuchenden:\nBundesländer, Stichtag, Geschlecht, Ländergruppierungen/\nStaatsangehörigkeit", - "Time": "31.12.2007 - 31.12.2023" - }, - { - "Code": "12611-0010", - "Content": "Eheschließungen: Bundesländer, Jahre", - "Time": "1990 - 2023" - }, - { - "Code": "12611-0011", - "Content": "Eheschließungen: Bundesländer, Monate", - "Time": "Januar 1990 - November 2024" - }, - { - "Code": "12612-0100", - "Content": "Lebendgeborene: Bundesländer, Jahre, Geschlecht", - "Time": "1990 - 2023" - }, - { - "Code": "12612-0101", - "Content": "Lebendgeborene: Bundesländer, Monate, Geschlecht", - "Time": "Januar 1990 - November 2024" - }, - { - "Code": "12612-0102", - "Content": "Lebendgeborene: Bundesländer, Jahre, Familienstand der\nEltern", - "Time": "1991 - 2023" - }, - { - "Code": "12612-0103", - "Content": "Lebendgeborene: Bundesländer, Jahre, Staatsangehörigkeit des\nKindes und der Eltern", - "Time": "1990 - 2023" - }, - { - "Code": "12612-0104", - "Content": "Zusammengefasste Geburtenziffern (je Frau): Bundesländer,\nJahre, Altersgruppen", - "Time": "1991 - 2023" - }, - { - "Code": "12612-0105", - "Content": "Nettoreproduktionsrate: Bundesländer, Jahre (bis 2010),\nAltersgruppen", - "Time": "2004 - 2010" - }, - { - "Code": "12612-0106", - "Content": "Totgeborene: Bundesländer, Jahre", - "Time": "1990 - 2023" - }, - { - "Code": "12613-0010", - "Content": "Gestorbene: Bundesländer, Jahre", - "Time": "1990 - 2024" - }, - { - "Code": "12613-0011", - "Content": "Gestorbene: Bundesländer, Jahre, Geschlecht", - "Time": "1990 - 2024" - }, - { - "Code": "12613-0012", - "Content": "Gestorbene: Bundesländer, Monate", - "Time": "Januar 1990 - Januar 2025" - }, - { - "Code": "12613-0013", - "Content": "Gestorbene: Bundesländer, Monate, Geschlecht", - "Time": "Januar 1990 - Januar 2025" - }, - { - "Code": "12621-0004", - "Content": "Durchschnittliche Lebenserwartung bei Geburt\n(Periodensterbetafel): Bundesländer, Jahre, Geschlecht", - "Time": "2002/04 - 2021/23" - }, - { - "Code": "12631-0010", - "Content": "Ehescheidungen: Bundesländer, Jahre", - "Time": "1990 - 2023" - }, - { - "Code": "12631-0011", - "Content": "Ehescheidungen: Bundesländer, Jahre, Ehedauer", - "Time": "1997 - 2023" - }, - { - "Code": "12631-0012", - "Content": "Ehescheidungen: Bundesländer, Jahre, Gemeinsame\nminderjährige Kinder", - "Time": "1997 - 2023" - }, - { - "Code": "12651-0003", - "Content": "Begründungen von Lebenspartnerschaften: Bundesländer, Jahre (bis 2017), Geschlecht", - "Time": "2014 - 2017" - }, - { - "Code": "12661-0002", - "Content": "Aufhebungen von Lebenspartnerschaften: Bundesländer, Jahre,\nGeschlecht", - "Time": "2014 - 2023" - }, - { - "Code": "12711-0020", - "Content": "Gesamtwanderungen über die Grenzen der Bundesländer: Bundesländer, Jahre, Nationalität, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "12711-0021", - "Content": "Wanderungen zwischen den Bundesländern: Bundesländer, Jahre, Nationalität, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "12711-0023", - "Content": "Wanderungen zwischen Deutschland und dem Ausland:\nBundesländer, Jahre, Nationalität, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "13111-0005", - "Content": "Sozialversicherungspflichtig Beschäftigte am Arbeitsort:\nBundesländer, Stichtag, Geschlecht", - "Time": "31.03.2008 - 30.06.2024" - }, - { - "Code": "13111-0006", - "Content": "Sozialversicherungspflichtig Beschäftigte am Arbeitsort:\nBundesländer, Stichtag, Wirtschaftsabschnitte", - "Time": "31.03.2008 - 30.06.2024" - }, - { - "Code": "13211-0007", - "Content": "Arbeitslose, Arbeitslosenquoten, Gemeldete Arbeitsstellen:\nBundesländer, Jahre", - "Time": "1991 - 2024" - }, - { - "Code": "13211-0008", - "Content": "Arbeitslose, Arbeitslosenquoten, Gemeldete Arbeitsstellen:\nBundesländer, Monate", - "Time": "Januar 2005 - Februar 2025" - }, - { - "Code": "13211-0009", - "Content": "Arbeitslose: Bundesländer, Jahre, Geschlecht", - "Time": "1991 - 2024" - }, - { - "Code": "13211-0010", - "Content": "Arbeitslose: Bundesländer, Monate, Geschlecht", - "Time": "Januar 2005 - Februar 2025" - }, - { - "Code": "13211-0011", - "Content": "Arbeitslosenquote aller zivilen Erwerbspersonen:\nBundesländer, Jahre, Geschlecht", - "Time": "1991 - 2024" - }, - { - "Code": "13211-0012", - "Content": "Arbeitslosenquote aller zivilen Erwerbspersonen:\nBundesländer, Monate, Geschlecht", - "Time": "Januar 2005 - Februar 2025" - }, - { - "Code": "13311-0002", - "Content": "Erwerbstätige, Arbeitnehmer, Selbständige und mithelfende\nFamilienangehörige (im Inland): Bundesländer, Jahre,\nWirtschaftszweige", - "Time": "1991 - 2023" - }, - { - "Code": "14111-0003", - "Content": "Wahlberechtigte, Wähler, Wahlbeteiligung, Erststimmen,\nZweitstimmen (Allgemeine Bundestagswahlstatistik):\nBundesländer, Stichtag", - "Time": "22.09.2013 - 23.02.2025" - }, - { - "Code": "14111-0004", - "Content": "Gültige Erststimmen, gültige Zweitstimmen (Allgemeine\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien", - "Time": "22.09.2013 - 23.02.2025" - }, - { - "Code": "14121-0004", - "Content": "Gültige Zweitstimmen (Repräsentative\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien,\nGeschlecht", - "Time": "22.09.2002 - 26.09.2021" - }, - { - "Code": "14121-0005", - "Content": "Gültige Zweitstimmen (Repräsentative\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien,\nAltersgruppen", - "Time": "22.09.2013 - 26.09.2021" - }, - { - "Code": "14121-0006", - "Content": "Gültige Zweitstimmen (Repräsentative\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien,\nGeschlecht, Altersgruppen", - "Time": "22.09.2013 - 26.09.2021" - }, - { - "Code": "14211-0002", - "Content": "Gültige Stimmen (Allgemeine Europawahlstatistik):\nBundesländer, Stichtag, Parteien", - "Time": "12.06.1994 - 09.06.2024" - }, - { - "Code": "14221-0002", - "Content": "Anteil gültiger Stimmen (Repräsentative\nEuropawahlstatistik): Bundesländer, Stichtag, Parteien,\nGeschlecht, Altersgruppen", - "Time": "25.05.2014 - 26.05.2019" - }, - { - "Code": "21111-0010", - "Content": "Schüler, Schulanfänger, Absolventen und Abgänger:\nBundesländer, Schuljahr, Geschlecht", - "Time": "1997/98 - 2023/24" - }, - { - "Code": "21111-0011", - "Content": "Schüler: Bundesländer, Schuljahr, Geschlecht, Schulart,\nJahrgangsstufen", - "Time": "1998/99 - 2023/24" - }, - { - "Code": "21111-0012", - "Content": "Schulanfänger: Bundesländer, Schuljahr, Geschlecht, Schulart, Einschulungsart", - "Time": "1999/00 - 2023/24" - }, - { - "Code": "21111-0013", - "Content": "Absolventen und Abgänger: Bundesländer, Schuljahr,\nGeschlecht, Schulart, Schulabschlüsse", - "Time": "1997/98 - 2022/23" - }, - { - "Code": "21111-0014", - "Content": "Wiederholer: Bundesländer, Schuljahr, Geschlecht, Schulart,\nJahrgangsstufen", - "Time": "1998/99 - 2023/24" - }, - { - "Code": "21111-0015", - "Content": "Schüler mit Fremdsprachen-Unterricht: Bundesländer,\nSchuljahr, Fremdsprachen, Schulart, Jahrgangsstufen", - "Time": "1998/99 - 2023/24" - }, - { - "Code": "21111-0016", - "Content": "Schüler mit sonderpädagogischer Förderung: Bundesländer,\nSchuljahr, Schulart, Förderschwerpunkte", - "Time": "2000/01 - 2023/24" - }, - { - "Code": "21111-0017", - "Content": "Schüler mit sonderpädagogischer Förderung: Bundesländer, Schuljahr, Geschlecht, Schulart, Förderschwerpunkte", - "Time": "2014/15 - 2023/24" - }, - { - "Code": "21121-0010", - "Content": "Schüler in beruflichen Schulen: Bundesländer, Schuljahr,\nSchulart", - "Time": "2001/02 - 2023/24" - }, - { - "Code": "21121-0011", - "Content": "Schüler in beruflichen Schulen: Bundesländer, Schuljahr,\nGeschlecht, Schulart", - "Time": "2001/02 - 2023/24" - }, - { - "Code": "21121-0012", - "Content": "Schüler in beruflichen Schulen: Bundesländer, Schuljahr,\nNationalität, Geschlecht, Schulart, Zeitform des Unterrichts", - "Time": "2001/02 - 2023/24" - }, - { - "Code": "21121-0013", - "Content": "Schüler mit Fremdsprachen-Unterricht: Bundesländer,\nSchuljahr, Schulart, Fremdsprachen", - "Time": "2009/10 - 2023/24" - }, - { - "Code": "21211-0101", - "Content": "Auszubildende: Bundesländer, Stichtag, Nationalität, Geschlecht, Ausbildungsbereich", - "Time": "31.12.2008 - 31.12.2023" - }, - { - "Code": "21211-0102", - "Content": "Auszubildende: Bundesländer, Stichtag, Geschlecht, Altersjahre", - "Time": "31.12.2008 - 31.12.2023" - }, - { - "Code": "21211-0103", - "Content": "Auszubildende: Bundesländer, Stichtag, Geschlecht, Schulabschluss", - "Time": "31.12.2008 - 31.12.2023" - }, - { - "Code": "21211-0104", - "Content": "Ausbildungsverträge: Bundesländer, Jahre, Nationalität, Geschlecht, Ausbildungsbereich", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0105", - "Content": "Ausbildungsverträge: Bundesländer, Jahre, Geschlecht, Altersjahre", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0106", - "Content": "Ausbildungsverträge: Bundesländer, Jahre, Geschlecht, Schulabschluss", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0107", - "Content": "Bestandene Abschlussprüfung: Bundesländer, Jahre, Nationalität, Geschlecht, Ausbildungsbereich", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0108", - "Content": "Bestandene Abschlussprüfung: Bundesländer, Jahre, Geschlecht, Altersjahre", - "Time": "2008 - 2023" - }, - { - "Code": "21211-0109", - "Content": "Bestandene Abschlussprüfung: Bundesländer, Jahre, Geschlecht, Schulabschluss", - "Time": "2008 - 2023" - }, - { - "Code": "21241-0020", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag, beendete Ausbildungen, Ausbildungseintritte (inkl. vorzeitige Lösungen): Bundesländer, Stichtag", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0021", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Geschlecht", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0022", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0023", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Ausbildungsumfang", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0024", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem\nAusbildungsvertrag: Bundesländer, Stichtag, Erhalt von\nFördermitteln", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0025", - "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Art der Trägerschaft der Pflegeschulen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0026", - "Content": "Beendete Ausbildungen in Pflegeberufen: Bundesländer, Stichtag, Prüfungsergebnis", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21241-0027", - "Content": "Pflegeschulen: Bundesländer, Stichtag, Art der Trägerschaft\nder Pflegeschulen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "21311-0005", - "Content": "Studierende: Bundesländer, Semester, Nationalität,\nGeschlecht", - "Time": "WS 1998/99 - WS 2023/24" - }, - { - "Code": "21311-0006", - "Content": "Studierende: Bundesländer, Semester, Nationalität,\nGeschlecht, Studienfach", - "Time": "WS 1998/99 - WS 2023/24" - }, - { - "Code": "21311-0014", - "Content": "Studienanfänger: Bundesländer, Semester, Nationalität,\nGeschlecht", - "Time": "WS 1998/99 - WS 2023/24" - }, - { - "Code": "21311-0015", - "Content": "Studienanfänger: Bundesländer, Semester, Nationalität,\nGeschlecht, Studienfach", - "Time": "WS 1998/99 - WS 2023/24" - }, - { - "Code": "21321-0005", - "Content": "Prüfungen an Hochschulen: Bundesländer, Jahre, Nationalität,\nGeschlecht, Prüfungsergebnis", - "Time": "1999 - 2023" - }, - { - "Code": "21321-0006", - "Content": "Prüfungen an Hochschulen: Bundesländer, Jahre, Nationalität,\nGeschlecht, Prüfungsergebnis, Studienfach", - "Time": "1999 - 2023" - }, - { - "Code": "21321-0007", - "Content": "Prüfungen an Hochschulen: Bundesländer, Jahre, Nationalität,\nGeschlecht, Prüfungsergebnis, Abgelegte Abschlussprüfung", - "Time": "1999 - 2023" - }, - { - "Code": "21351-0003", - "Content": "Habilitationen: Bundesländer, Jahre, Geschlecht", - "Time": "1992 - 2023" - }, - { - "Code": "21352-0005", - "Content": "Promovierende: Bundesländer, Stichtag, Nationalität,\nGeschlecht, Hochschulart", - "Time": "01.12.2019 - 01.12.2023" - }, - { - "Code": "21353-0002", - "Content": "Hochschulräte: Bundesländer, Jahre, Hochschulart, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21354-0001", - "Content": "Studierende, Studienanfänger an Berufsakademien:\nBundesländer, Jahre, Nationalität, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21354-0002", - "Content": "Bestandene Prüfungen an Berufsakademien: Bundesländer,\nJahre, Art der Prüfung, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21354-0003", - "Content": "Personal an Berufsakademien: Bundesländer, Jahre, Art des\nPersonals, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21354-0004", - "Content": "Studierende je Lehrperson (Betreuungsrelation) an\nBerufsakademien: Bundesländer, Jahre, Geschlecht", - "Time": "2017 - 2023" - }, - { - "Code": "21371-0002", - "Content": "Ausgaben der Hochschulen: Bundesländer, Jahre, Hochschulart,\nFächergruppen", - "Time": "2006 - 2022" - }, - { - "Code": "21381-0010", - "Content": "Absolventenquote: Bundesländer, Jahre, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "21381-0011", - "Content": "Studienanfängerquote (Hochschulzugangsberechtigung):\nBundesländer, Jahre, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "21381-0012", - "Content": "Studienanfängerquote: Bundesländer, Jahre, Geschlecht", - "Time": "2000 - 2023" - }, - { - "Code": "21381-0013", - "Content": "Studienberechtigtenquote: Bundesländer, Jahre,\nSchulabschluss", - "Time": "2006 - 2023" - }, - { - "Code": "21381-0014", - "Content": "Laufende Ausgaben der Hochschulen, Drittmittel der\nHochschulen: Bundesländer, Jahre", - "Time": "2011 - 2022" - }, - { - "Code": "21411-0020", - "Content": "BAföG - Geförderte Personen und finanzieller Aufwand:\nBundesländer, Jahre, Personenkreis", - "Time": "1991 - 2023" - }, - { - "Code": "21421-0021", - "Content": "Aufstiegs-BAföG - Geförderte Personen, finanzieller Aufwand:\nBundesländer, Jahre, Bewilligung/Inanspruchnahme,\nVoll-/Teilzeit, Art des finanziellen Aufwandes", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0022", - "Content": "Aufstiegs-BAföG - Geförderte Personen, finanzieller Aufwand:\nBundesländer, Jahre, Bewilligung/Inanspr., Voll-/Teilzeit,\nArt des finanziellen Aufwandes, Fortbildungsstätten", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0023", - "Content": "Aufstiegs-BAföG - Geförderte Personen, finanzieller Aufwand:\nBundesländer, Jahre, Bewilligung/Inanspr., Voll-/Teilzeit,\nArt des finanziellen Aufwandes, Fortbildungsziele", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0024", - "Content": "Aufstiegs-BAföG - Geförderte Personen (Bewilligung):\nBundesländer, Jahre, Voll-/Teilzeit, Geschlecht,\nFortbildungsstätten", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0025", - "Content": "Aufstiegs-BAföG - Geförderte Personen (Bewilligung)\n(Vollzeit): Bundesländer, Jahre, Geschlecht,\nEinkommensgrößenklassen", - "Time": "2003 - 2023" - }, - { - "Code": "21421-0026", - "Content": "Aufstiegs-BAföG - Geförderte Personen, monatlicher\nFörderungsbetrag: Bundesländer, Jahre, Bewilligung/\nInanspruchnahme, Art der Förderung, Fortbildungsstätten", - "Time": "2003 - 2023" - }, - { - "Code": "21431-0020", - "Content": "Stipendiaten, Mittelgeber: Bundesländer, Jahre, Hochschulart", - "Time": "2011 - 2023" - }, - { - "Code": "21431-0021", - "Content": "Stipendiaten: Bundesländer, Jahre, Geschlecht, Hochschulart", - "Time": "2011 - 2023" - }, - { - "Code": "21611-0003", - "Content": "Kinos, Leinwände, Sitzplätze der Kinos, Filmbesuche,\nDurchschnittlicher Kino-Eintrittspreis, Einnahmen:\nBundesländer, Jahre", - "Time": "2000 - 2023" - }, - { - "Code": "21611-0102", - "Content": "Museen, Ausstellungen, Museumsbesuche: Bundesländer, Jahre", - "Time": "2002 - 2022" - }, - { - "Code": "21611-0111", - "Content": "Öffentlich geförderte Theaterunternehmen, Spielstätten,\nVeranstaltungen am Ort, Theaterbesuche: Bundesländer, Jahre", - "Time": "2000 - 2022" - }, - { - "Code": "21611-0122", - "Content": "Öffentlich geförderte Musikschulen, Lehrer, Schüler:\nBundesländer, Jahre", - "Time": "2000 - 2022" - }, - { - "Code": "21611-0123", - "Content": "Schüler in öffentlich geförderten Musikschulen:\nBundesländer, Jahre, Altersgruppen", - "Time": "2000 - 2022" - }, - { - "Code": "21611-0201", - "Content": "Haupt- und Zweigstellen der Bibliotheken, Meldende\nBibliotheken, Bestand, Entleiher, Bibliotheksbesuche:\nBundesländer, Jahre, Bibliotheksarten", - "Time": "2000 - 2023" - }, - { - "Code": "21621-0003", - "Content": "Öffentliche Ausgaben für Kultur: Bundesländer, Jahre,\nKulturbereiche", - "Time": "2005 - 2021" - }, - { - "Code": "21711-0010", - "Content": "Ausgaben der öffentlichen Haushalte für Bildung:\nBundesländer, Jahre, Körperschaftsgruppen, Aufgabenbereiche\nder öffentlichen Haushalte", - "Time": "1995 - 2024" - }, - { - "Code": "21711-0011", - "Content": "Ausgaben für öffentliche Schulen je Schüler: Bundesländer,\nJahre", - "Time": "2010 - 2023" - }, - { - "Code": "21821-0002", - "Content": "Interne Ausgaben und Personal für Forschung und Entwicklung:\nBundesländer, Jahre, Sektoren", - "Time": "1995 - 2022" - }, - { - "Code": "21821-0100", - "Content": "Patentanmeldungen: Bundesländer, Jahre", - "Time": "2000 - 2023" - }, - { - "Code": "22111-0020", - "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Sozialhilfe:\nBundesländer, Jahre", - "Time": "1994 - 2023" - }, - { - "Code": "22111-0021", - "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Sozialhilfe:\nBundesländer, Jahre, Ort der Leistungserbringung", - "Time": "1994 - 2023" - }, - { - "Code": "22111-0022", - "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Sozialhilfe:\nBundesländer, Jahre, Sozialhilfearten", - "Time": "2005 - 2023" - }, - { - "Code": "22111-0023", - "Content": "Bruttoausgaben der Sozialhilfe: Bundesländer, Jahre (bis\n2004), Sozialhilfearten, Sozialhilfeträger, Ort der\nLeistungserbringung", - "Time": "1994 - 2004" - }, - { - "Code": "22121-0010", - "Content": "Empfänger von Hilfe zum Lebensunterhalt: Bundesländer,\nStichtag, Ort der Leistungserbringung, Geschlecht,\nAltersgruppen", - "Time": "31.12.1995 - 31.12.2023" - }, - { - "Code": "22121-0011", - "Content": "Empfänger von Hilfe zum Lebensunterhalt: Bundesländer,\nStichtag, Ort der Leistungserbringung, Geschlecht,\nNationalität", - "Time": "31.12.1995 - 31.12.2023" - }, - { - "Code": "22121-0012", - "Content": "Personengemeinschaften von Empfängern von Hilfe zum Lebensunterhalt: Bundesländer, Stichtag, Ort der Leistungserbringung", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22131-0010", - "Content": "Empfänger von Leistungen nach dem 5. bis 9. Kapitel SGB XII:\nBundesländer, Jahre, Art der Hilfe, Geschlecht", - "Time": "2005 - 2023" - }, - { - "Code": "22131-0011", - "Content": "Empfänger von Leistungen nach dem 5. bis 9. Kapitel SGB XII:\nBundesländer, Stichtag, Art der Hilfe, Geschlecht", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22131-0012", - "Content": "Empfänger von Leistungen nach dem 5. bis 9. Kapitel SGB XII:\nBundesländer, Jahre, Art der Hilfe,\nOrt der Leistungserbringung", - "Time": "2005 - 2023" - }, - { - "Code": "22131-0013", - "Content": "Empfänger von Leistungen für Bestattungskosten,\nBruttoausgaben für Bestattungskosten: Bundesländer, Jahre", - "Time": "2005 - 2023" - }, - { - "Code": "22151-0030", - "Content": "Empfänger von Grundsicherung: Bundesländer, Stichtag\n(bis 31.12.2014), Nationalität, Geschlecht, Altersgruppen", - "Time": "31.12.2003 - 31.12.2014" - }, - { - "Code": "22151-0031", - "Content": "Quote der Empfänger von Grundsicherung: Bundesländer,\nStichtag (bis 31.12.2014), Nationalität, Geschlecht,\nAltersgruppen", - "Time": "31.12.2003 - 31.12.2014" - }, - { - "Code": "22151-0032", - "Content": "Empfänger von Grundsicherung: Bundesländer, Berichtsmonat\nim Quartal, Geschlecht/Altersgruppen/Ort der\nLeistungserbringung/Sozialhilfeträger", - "Time": "März 2015 - September 2024" - }, - { - "Code": "22151-0033", - "Content": "Empfänger von Grundsicherung: Bundesländer, Berichtsmonat im\nQuartal, Ort der Leistungserbringung, Geschlecht,\nAltersgruppen", - "Time": "März 2015 - September 2024" - }, - { - "Code": "22151-0034", - "Content": "Durchschnittlicher Nettobedarf, Bruttobedarf, angerechnetes\nEinkommen: Bundesländer, Berichtsmonat im Quartal", - "Time": "März 2015 - September 2024" - }, - { - "Code": "22151-0035", - "Content": "Quote der Empfänger von Grundsicherung: Bundesländer,\nBerichtsmonat im Quartal, Nationalität, Geschlecht,\nAltersgruppen", - "Time": "Dezember 2015 - Dezember 2023" - }, - { - "Code": "22161-0010", - "Content": "Empfänger von Eingliederungshilfe: Bundesländer, Jahre,\nGeschlecht, Altersgruppen", - "Time": "2020 - 2023" - }, - { - "Code": "22161-0011", - "Content": "Empfänger von Eingliederungshilfe: Bundesländer, Stichtag,\nGeschlecht, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22162-0010", - "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Eingliederungshilfe: Bundesländer, Jahre", - "Time": "2020 - 2023" - }, - { - "Code": "22211-0010", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Ort der Leistungserbringung", - "Time": "1994 - 2023" - }, - { - "Code": "22211-0011", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Leistungsart", - "Time": "1994 - 2023" - }, - { - "Code": "22211-0012", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Art des Trägers", - "Time": "1994 - 2023" - }, - { - "Code": "22211-0013", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Ausgabenart", - "Time": "1994 - 2023" - }, - { - "Code": "22211-0014", - "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Hilfearten", - "Time": "1994 - 2023" - }, - { - "Code": "22221-0100", - "Content": "Empfänger von Regelleistungen nach dem\nAsylbewerberleistungsgesetz: Bundesländer, Stichtag (bis\n31.12.2019), Geschlecht", - "Time": "31.12.1994 - 31.12.2019" - }, - { - "Code": "22221-0101", - "Content": "Empfänger von Regelleistungen nach dem Asylbewerberleistungsgesetz: Bundesländer, Stichtag (bis 31.12.2019), Art der Unterbringung", - "Time": "31.12.1994 - 31.12.2019" - }, - { - "Code": "22221-0110", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0111", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Art der Unterbringung", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0112", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Leistungsart", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0113", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Staatsangehörigkeit nach Kontinenten", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0114", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt\n(AsylbLG): Bundesländer, Stichtag, Altersgruppen,\nLeistungsart", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0115", - "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Erwerbsstatus", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0116", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag, Geschlecht, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0117", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag, Altersgruppen, Hilfearten", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0118", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag, Aufenthaltsrechtlicher Status", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0119", - "Content": "Empfänger von Asylbewerberleistungen: Bundesländer, Stichtag, Geschlecht, Altersgruppen", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0120", - "Content": "Empfänger von Asylbewerberleistungen: Bundesländer, Stichtag, Geschlecht, Art der Unterbringung", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22221-0121", - "Content": "Empfänger von Asylbewerberleistungen: Bundesländer,\nStichtag, Geschlecht, Staatsangehörigkeit nach Kontinenten", - "Time": "31.12.2020 - 31.12.2023" - }, - { - "Code": "22231-0010", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag (bis 31.12.2019), Altersgruppen", - "Time": "31.12.1994 - 31.12.2019" - }, - { - "Code": "22231-0011", - "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag (bis 31.12.2019), Hilfearten", - "Time": "31.12.1994 - 31.12.2019" - }, - { - "Code": "22311-0010", - "Content": "Haushalte mit Wohngeld, Anteil an den Privathaushalten:\nBundesländer, Stichtag, Wohngeldart", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22311-0011", - "Content": "Haushalte mit Wohngeld: Bundesländer, Stichtag, Wohngeldart, Art des Zuschusses", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22311-0012", - "Content": "Haushalte mit Wohngeld: Bundesländer, Stichtag, Wohngeldart, Geschlecht der Antragsteller", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22311-0013", - "Content": "Haushalte mit Wohngeld: Bundesländer, Stichtag, Wohngeldart, Haushaltsgröße", - "Time": "31.12.2005 - 31.12.2023" - }, - { - "Code": "22411-0010", - "Content": "Ambulante Dienste, Pflegebedürftige: Bundesländer, Stichtag,\nTräger", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22411-0011", - "Content": "Pflegebedürftige (ambulant): Bundesländer, Stichtag, Pflegestufe/Pflegegrad", - "Time": "15.12.2017 - 15.12.2023" - }, - { - "Code": "22411-0012", - "Content": "Pflegebedürftige (ambulant): Bundesländer, Stichtag, Geschlecht, Altersgruppen", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22411-0013", - "Content": "Personal in ambulanten Pflegeeinrichtungen: Bundesländer,\nStichtag, Beschäftigungsverhältnis", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22411-0014", - "Content": "Personal in ambulanten Pflegeeinrichtungen: Bundesländer,\nStichtag, Geschlecht, Überwiegender Tätigkeitsbereich", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22411-0015", - "Content": "Personal in ambulanten Pflegeeinrichtungen: Bundesländer, Stichtag, Altersgruppen", - "Time": "15.12.2013 - 15.12.2023" - }, - { - "Code": "22412-0010", - "Content": "Pflegeheime, Verfügbare Plätze, Pflegebedürftige:\nBundesländer, Stichtag, Art der Pflegeleistung", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0011", - "Content": "Pflegeheime, Verfügbare Plätze: Bundesländer, Stichtag,\nTräger", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0012", - "Content": "Pflegebedürftige (stationär): Bundesländer, Stichtag,\nPflegestufe/Pflegegrad", - "Time": "15.12.2017 - 15.12.2023" - }, - { - "Code": "22412-0013", - "Content": "Pflegebedürftige (stationär): Bundesländer, Stichtag,\nGeschlecht, Altersgruppen", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0014", - "Content": "Personal der stationären Pflegeeinrichtungen: Bundesländer,\nStichtag, Beschäftigungsverhältnis", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0015", - "Content": "Personal der stationären Pflegeeinrichtungen: Bundesländer,\nStichtag, Geschlecht, Überwiegender Tätigkeitsbereich", - "Time": "15.12.1999 - 15.12.2023" - }, - { - "Code": "22412-0016", - "Content": "Personal der stationären Pflegeeinrichtungen: Bundesländer,\nStichtag, Altersgruppen", - "Time": "15.12.2013 - 15.12.2023" - }, - { - "Code": "22421-0010", - "Content": "Pflegebedürftige: Bundesländer, Stichtag, Geschlecht,\nAltersgruppen, Art der Versorgung von Pflegebedürftigen", - "Time": "31.12.1999 - 31.12.2023" - }, - { - "Code": "22421-0011", - "Content": "Pflegebedürftige: Bundesländer, Stichtag, Pflegestufe/Pflegegrad", - "Time": "31.12.2017 - 31.12.2023" - }, - { - "Code": "22421-0012", - "Content": "Pflegequote: Bundesländer, Stichtag, Geschlecht,\nAltersgruppen", - "Time": "31.12.1999 - 31.12.2023" - }, - { - "Code": "22517-0005", - "Content": "Erzieherische Hilfen/Beratungen: Bundesländer, Jahre,\nGeschlecht, Altersjahre, Art der Hilfe", - "Time": "2008 - 2017" - }, - { - "Code": "22517-0006", - "Content": "Erzieherische Hilfen/Beratungen: Bundesländer, Jahre,\nGeschlecht, Migrationshintergrund, Art der Hilfe", - "Time": "2008 - 2017" - }, - { - "Code": "22518-0010", - "Content": "Verfahren zur Einschätzung der Kindeswohlgefährdung:\nBundesländer, Jahre, Gefährdungseinschätzung", - "Time": "2012 - 2023" - }, - { - "Code": "22518-0011", - "Content": "Verfahren zur Einschätzung der Kindeswohlgefährdung:\nBundesländer, Jahre, Gefährdungseinschätzung, Art der\nKindeswohlgefährdung", - "Time": "2012 - 2023" - }, - { - "Code": "22521-0020", - "Content": "Adoptierte Kinder und Jugendliche: Bundesländer, Jahre,\nGeschlecht", - "Time": "2010 - 2023" - }, - { - "Code": "22521-0021", - "Content": "Adoptierte Kinder und Jugendliche: Bundesländer, Jahre (bis\n2017), Altersgruppen", - "Time": "2010 - 2017" - }, - { - "Code": "22521-0022", - "Content": "Adoptierte Kinder und Jugendliche: Bundesländer, Jahre (bis\n2017), Nationalität, Art der Unterbringung vor der Adoption", - "Time": "2010 - 2017" - }, - { - "Code": "22522-0010", - "Content": "Kinder und Jugendliche: Bundesländer, Stichtag, Maßnahmen für Kinder und Jugendliche", - "Time": "31.12.2012 - 31.12.2023" - }, - { - "Code": "22522-0011", - "Content": "Tagespflegepersonen mit Pflegeerlaubnis: Bundesländer, Stichtag", - "Time": "31.12.2012 - 31.12.2023" - }, - { - "Code": "22522-0012", - "Content": "Sorgeerklärungen: Bundesländer, Jahre", - "Time": "2013 - 2023" - }, - { - "Code": "22522-0013", - "Content": "Maßnahmen des Familiengerichts bei Kindeswohlgefährdung:\nBundesländer, Jahre, Art der eingeleiteten Maßnahmen", - "Time": "2012 - 2023" - }, - { - "Code": "22523-0030", - "Content": "Vorläufige Schutzmaßnahmen für Kinder und Jugendliche:\nBundesländer, Jahre, Anlass der Maßnahme", - "Time": "2010 - 2023" - }, - { - "Code": "22523-0031", - "Content": "Vorläufige Schutzmaßnahmen für Kinder und Jugendliche:\nBundesländer, Jahre, Anregung der Maßnahme", - "Time": "2010 - 2022" - }, - { - "Code": "22541-0100", - "Content": "Tageseinrichtungen, Kinder, Genehmigte Plätze: Bundesländer,\nStichtag", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0101", - "Content": "Tageseinrichtungen: Bundesländer, Stichtag, Art des Trägers", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0102", - "Content": "Tageseinrichtungen: Bundesländer, Stichtag, Öffnungszeiten\nder Tageseinrichtung", - "Time": "01.03.2019 - 01.03.2024" - }, - { - "Code": "22541-0103", - "Content": "Tageseinrichtungen: Bundesländer, Stichtag, Altersgruppen\nder Kinder", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0104", - "Content": "Tätige Personen: Bundesländer, Stichtag, Arbeitsbereich", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0105", - "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Geschlecht", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0106", - "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Altersgruppen", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0107", - "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Höchster Berufsausbildungsabschluss", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0108", - "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Stellung im Beruf", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0109", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag, Art\ndes Trägers", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0110", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag,\nVertraglich vereinbarte Betreuungszeit", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0111", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag,\nGeschlecht", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0112", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag, Alter\nder Nichtschul- und Schulkinder", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0113", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag,\nHerkunft der Eltern", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22541-0114", - "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag, In der\nFamilie vorrangig gesprochene Sprache", - "Time": "01.03.2014 - 01.03.2024" - }, - { - "Code": "22542-0003", - "Content": "Einrichtungen der Kinder- und Jugendhilfe, Genehmigte\nPlätze, Tätige Personen, Pädagogisches und\nVerwaltungspersonal: Bundesländer, Stichtag (bis 31.12.2020)", - "Time": "31.12.2010 - 31.12.2020" - }, - { - "Code": "22542-0004", - "Content": "Einrichtungen der Kinder- und Jugendhilfe: Bundesländer,\nStichtag (bis 31.12.2020), Art der Einrichtung", - "Time": "31.12.2010 - 31.12.2020" - }, - { - "Code": "22542-0019", - "Content": "Einrichtungen der Jugendhilfe, Gruppen, Soll-Stellen,\ngenehmigte Plätze, belegte Plätze: Bundesländer, Stichtag", - "Time": "15.12.2022 - 15.12.2022" - }, - { - "Code": "22543-0020", - "Content": "Kinder in öffentlich geförderter Kindertagespflege:\nBundesländer, Stichtag, Altersgruppen", - "Time": "01.03.2008 - 01.03.2024" - }, - { - "Code": "22543-0021", - "Content": "Kinder in öffentlich geförderter Kindertagespflege:\nBundesländer, Stichtag, Geschlecht, Migrationshintergrund", - "Time": "01.03.2012 - 01.03.2024" - }, - { - "Code": "22543-0022", - "Content": "Kinder in öffentlich geförderter Kindertagespflege:\nBundesländer, Stichtag, In der Familie vorrangig\ngesprochene Sprache", - "Time": "01.03.2012 - 01.03.2024" - }, - { - "Code": "22543-0023", - "Content": "Tagespflegepersonen: Bundesländer, Stichtag, Geschlecht", - "Time": "01.03.2012 - 01.03.2024" - }, - { - "Code": "22543-0024", - "Content": "Tagespflegepersonen: Bundesländer, Stichtag, Altersgruppen", - "Time": "01.03.2012 - 01.03.2024" - }, - { - "Code": "22551-0003", - "Content": "Ausgaben (Auszahlungen) der Kinder- und Jugendhilfe: Bundesländer, Jahre, Ausgabenbereiche, Art der Hilfe, Art der Ausgaben", - "Time": "2009 - 2023" - }, - { - "Code": "22551-0004", - "Content": "Einnahmen (Einzahlungen) der Kinder- und Jugendhilfe:\nBundesländer, Jahre, Art der Hilfe, Art der Einnahmen", - "Time": "2009 - 2023" - }, - { - "Code": "22922-0020", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht", - "Time": "2009 - 2021" - }, - { - "Code": "22922-0021", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht", - "Time": "1. Quartal 2009 - 3. Quartal 2022" - }, - { - "Code": "22922-0022", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht, Erwerbstätigkeit", - "Time": "2009 - 2021" - }, - { - "Code": "22922-0023", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht, Erwerbstätigkeit", - "Time": "1. Quartal 2009 - 3. Quartal 2022" - }, - { - "Code": "22922-0024", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht, Grundlage der Berechnung des\nElterngeldanspruchs", - "Time": "2009 - 2021" - }, - { - "Code": "22922-0025", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht, Grundlage der Berechnung des\nElterngeldanspruchs", - "Time": "1. Quartal 2009 - 3. Quartal 2022" - }, - { - "Code": "22922-0026", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht, Höhe des monatlichen Elterngeldanspruchs", - "Time": "2009 - 2021" - }, - { - "Code": "22922-0027", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht, Höhe des monatlichen\nElterngeldanspruchs", - "Time": "1. Quartal 2009 - 3. Quartal 2022" - }, - { - "Code": "22922-0028", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre (bis 2014), Geschlecht, Bezugsdauer des Elterngeldes", - "Time": "2009 - 2014" - }, - { - "Code": "22922-0029", - "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale (bis 2.Q. 2015), Geschlecht, Bezugsdauer des\nElterngeldes", - "Time": "1. Quartal 2009 - 2. Quartal 2015" - }, - { - "Code": "22922-0030", - "Content": "Väterbeteiligung: Bundesländer, Jahre", - "Time": "2008 - 2021" - }, - { - "Code": "22922-0031", - "Content": "Väterbeteiligung: Bundesländer, Quartale", - "Time": "1. Quartal 2016 - 3. Quartal 2022" - }, - { - "Code": "22922-0111", - "Content": "Elterngeldempfänger: Bundesländer, Jahre, Geschlecht,\nErwerbstätigkeit", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0112", - "Content": "Elterngeldempfänger: Bundesländer, Quartale, Geschlecht,\nErwerbstätigkeit", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22922-0113", - "Content": "Elterngeldempfänger: Bundesländer, Jahre, Geschlecht,\nArt der Inanspruchnahme", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0114", - "Content": "Elterngeldempfänger: Bundesländer, Quartale, Geschlecht,\nArt der Inanspruchnahme", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22922-0115", - "Content": "Elterngeldempfänger: Bundesländer, Jahre, Geschlecht,\nArt der Inanspruchnahme, Höhe des monatlichen\nElterngeldanspruchs", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0116", - "Content": "Elterngeldempfänger: Bundesländer, Quartale, Geschlecht,\nArt der Inanspruchnahme, Höhe des monatlichen\nElterngeldanspruchs", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22922-0117", - "Content": "Durchschnittliche Höhe des Elterngeldanspruchs:\nBundesländer, Jahre, Geschlecht, Art der Inanspruchnahme,\nErwerbstätigkeit", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0118", - "Content": "Durchschnittliche Höhe des Elterngeldanspruchs:\nBundesländer, Quartale, Geschlecht, Art der Inanspruchnahme,\nErwerbstätigkeit", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22922-0119", - "Content": "Durchschnittliche voraussichtliche Elterngeld-Bezugsdauer:\nBundesländer, Jahre, Geschlecht, Art der Inanspruchnahme", - "Time": "2016 - 2024" - }, - { - "Code": "22922-0120", - "Content": "Durchschnittliche voraussichtliche Elterngeld-Bezugsdauer:\nBundesländer, Quartale, Geschlecht, Art der Inanspruchnahme", - "Time": "1. Quartal 2017 - 4. Quartal 2024" - }, - { - "Code": "22923-0003", - "Content": "Betreuungsgeldempfänger: Bundesländer, Quartale (bis 4.Q. 2017), Nationalität", - "Time": "1. Quartal 2014 - 4. Quartal 2017" - }, - { - "Code": "22971-0050", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0051", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Haushaltstyp", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0052", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Haushaltsgröße", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0053", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Anbieter", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0054", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Art der Überlassung", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "22971-0055", - "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Dauer der Unterbringung", - "Time": "31.01.2022 - 31.01.2024" - }, - { - "Code": "23131-0010", - "Content": "Krankenhauspatienten: Bundesländer, Jahre,\nHauptdiagnose ICD-10 (1-3-Steller Hierarchie)", - "Time": "2000 - 2023" - }, - { - "Code": "23131-0011", - "Content": "Krankenhauspatienten: Bundesländer, Jahre, Geschlecht,\nAltersgruppen, Hauptdiagnose ICD-10 (1-3-Steller Hierarchie)", - "Time": "2000 - 2023" - }, - { - "Code": "23131-0012", - "Content": "Krankenhauspatienten: Bundesländer, Jahre, Geschlecht,\nWohnort des Patienten", - "Time": "2000 - 2023" - }, - { - "Code": "23141-0010", - "Content": "Nebendiagnosen der vollstationären Patienten: Bundesländer,\nJahre, Nebendiagnosen ICD-10 (1-3-Steller Hierarchie)", - "Time": "2005 - 2023" - }, - { - "Code": "23141-0011", - "Content": "Nebendiagnosen der vollstationären Patienten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Nebendiagnosen ICD-10\n(1-3-Steller Hierarchie)", - "Time": "2005 - 2023" - }, - { - "Code": "23141-0110", - "Content": "Operationen und Prozeduren an vollstationären Patienten:\nBundesländer, Jahre, Operationen und Prozeduren\n(1-4-Steller Hierarchie)", - "Time": "2005 - 2023" - }, - { - "Code": "23141-0111", - "Content": "Operationen und Prozeduren an vollstationären Patienten:\nBundesländer, Jahre, Geschlecht, Altersgruppen, Operationen\nund Prozeduren (1-4-Steller Hierarchie)", - "Time": "2005 - 2023" - }, - { - "Code": "23311-0005", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Jahre", - "Time": "1996 - 2023" - }, - { - "Code": "23311-0006", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Jahre,\nFamilienstand/Herkunfts-Bundesland oder Ausland", - "Time": "1996 - 2023" - }, - { - "Code": "23311-0007", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Jahre,\nFamilienstand, Herkunfts-Bundesland oder Ausland", - "Time": "1996 - 2023" - }, - { - "Code": "23311-0008", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Quartale", - "Time": "1. Quartal 1996 - 3. Quartal 2024" - }, - { - "Code": "23311-0009", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Quartale,\nFamilienstand/Herkunfts-Bundesland oder Ausland", - "Time": "1. Quartal 1996 - 3. Quartal 2024" - }, - { - "Code": "23311-0010", - "Content": "Schwangerschaftsabbrüche: Bundesländer, Quartale,\nFamilienstand, Herkunfts-Bundesland oder Ausland", - "Time": "1. Quartal 1996 - 3. Quartal 2024" - }, - { - "Code": "24111-0001", - "Content": "Gerichte: Bundesländer, Stichtag (bis 31.12.2012), Gerichtsart", - "Time": "31.12.2000 - 31.12.2012" - }, - { - "Code": "24211-0010", - "Content": "Von der Staats- und Amtsanwaltschaft erledigte\nErmittlungsverfahren: Bundesländer, Jahre, Sachgebiete", - "Time": "2018 - 2023" - }, - { - "Code": "24211-0011", - "Content": "Von der Staats- und Amtsanwaltschaft erledigte\nErmittlungsverfahren: Bundesländer, Jahre,\nEinleitungsbehörde", - "Time": "2018 - 2023" - }, - { - "Code": "24211-0012", - "Content": "Ermittlungsverfahren: Bundesländer, Jahre, Zuständigkeit,\nStand der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24221-0010", - "Content": "Vor dem Amtsgericht erledigte Strafverfahren: Bundesländer,\nJahre, Sachgebiete", - "Time": "2017 - 2023" - }, - { - "Code": "24221-0011", - "Content": "Strafverfahren vor dem Amtsgericht: Bundesländer, Jahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24231-0010", - "Content": "Vor dem Amtsgericht erledigte Verfahren in Zivilsachen:\nBundesländer, Jahre, Art der Erledigung, Sachgebiete", - "Time": "2017 - 2023" - }, - { - "Code": "24231-0011", - "Content": "Zivilsachen vor dem Amtsgericht: Bundesländer, Jahre, Stand\nder Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24241-0010", - "Content": "Vor dem Amtsgericht erledigte Verfahren in Familiensachen:\nBundesländer, Jahre, Art der Erledigung", - "Time": "2014 - 2023" - }, - { - "Code": "24241-0011", - "Content": "Familiensachen vor dem Amtsgericht: Bundesländer, Jahre,\nStand der Erledigung", - "Time": "2014 - 2023" - }, - { - "Code": "24251-0010", - "Content": "Vor dem Verwaltungsgericht erledigte Hauptverfahren:\nBundesländer, Jahre, Art der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24251-0011", - "Content": "Hauptverfahren vor dem Verwaltungsgericht: Bundesländer,\nJahre, Stand der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24251-0012", - "Content": "Eilverfahren vor dem Verwaltungsgericht: Bundesländer,\nJahre, Stand der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24261-0010", - "Content": "Vor dem Finanzgericht erledigte Klagen: Bundesländer, Jahre,\nArt der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24261-0011", - "Content": "Klagen vor dem Finanzgericht: Bundesländer, Jahre, Stand der\nErledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24271-0010", - "Content": "Vor dem Sozialgericht erledigte Klageverfahren:\nBundesländer, Jahre, Art der Erledigung, Sachgebiete", - "Time": "2017 - 2023" - }, - { - "Code": "24271-0011", - "Content": "Klageverfahren vor dem Sozialgericht: Bundesländer, Jahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24271-0012", - "Content": "Eilverfahren vor dem Sozialgericht: Bundesländer, Jahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24281-0010", - "Content": "Vor dem Arbeitsgericht erledigte Urteilsverfahren:\nBundesländer, Jahre, Art der Erledigung", - "Time": "2018 - 2023" - }, - { - "Code": "24281-0011", - "Content": "Urteilsverfahren vor dem Arbeitsgericht: Bundesländer,\nJahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24281-0012", - "Content": "Beschlussverfahren vor dem Arbeitsgericht: Deutschland,\nJahre, Stand der Erledigung", - "Time": "2017 - 2023" - }, - { - "Code": "24321-0002", - "Content": "Strafgefangene und Sicherungsverwahrte: Bundesländer,\nStichtag, Nationalität, Geschlecht, Altersgruppen, Art des\nVollzugs", - "Time": "31.03.2017 - 31.03.2024" - }, - { - "Code": "24321-0003", - "Content": "Justizvollzugsanstalten, Belegungskapazität, Belegung:\nBundesländer, Stichtag", - "Time": "31.12.1999 - 30.11.2015" - }, - { - "Code": "31111-0100", - "Content": "Baugenehmigungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Gebäudeart", - "Time": "2008 - 2024" - }, - { - "Code": "31111-0101", - "Content": "Baugenehmigungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Bauherr", - "Time": "2008 - 2024" - }, - { - "Code": "31111-0102", - "Content": "Baugenehmigungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Gebäudeart", - "Time": "2015 - 2024" - }, - { - "Code": "31111-0103", - "Content": "Baugenehmigungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Bauherr", - "Time": "2015 - 2024" - }, - { - "Code": "31111-0104", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Energieverwendung, Energieart", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0105", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Überwiegend verwendeter Baustoff", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0106", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Art der Beheizung", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0107", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Geschosszahl", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0108", - "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Haustyp", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0109", - "Content": "Baugenehmigungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Gebäudeart, Anzahl der Räume", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0110", - "Content": "Baugenehmigungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Bauherr, Anzahl der Räume", - "Time": "2015 - 2023" - }, - { - "Code": "31111-0120", - "Content": "Baugenehmigungen im Hochbau: Bundesländer, Monate,\nBautätigkeiten, Gebäudeart", - "Time": "Januar 2003 - Januar 2025" - }, - { - "Code": "31111-0121", - "Content": "Baugenehmigungen im Hochbau: Bundesländer, Monate,\nBautätigkeiten, Bauherr", - "Time": "Januar 2003 - Januar 2025" - }, - { - "Code": "31111-0122", - "Content": "Baugenehmigungen im Fertigteilbau (Neubau): Bundesländer,\nMonate, Gebäudeart", - "Time": "Januar 2003 - Januar 2025" - }, - { - "Code": "31121-0100", - "Content": "Baufertigstellungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Gebäudeart", - "Time": "2008 - 2023" - }, - { - "Code": "31121-0101", - "Content": "Baufertigstellungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Bauherr", - "Time": "2008 - 2023" - }, - { - "Code": "31121-0102", - "Content": "Baufertigstellungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Gebäudeart", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0103", - "Content": "Baufertigstellungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Bauherr", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0104", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Energieverwendung, Energieart", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0105", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Überwiegend verwendeter Baustoff", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0106", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Art der Beheizung", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0107", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Geschosszahl", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0108", - "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Haustyp", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0109", - "Content": "Baufertigstellungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Gebäudeart, Anzahl der Räume", - "Time": "2015 - 2023" - }, - { - "Code": "31121-0110", - "Content": "Baufertigstellungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Bauherr, Anzahl der Räume", - "Time": "2015 - 2023" - }, - { - "Code": "31131-0004", - "Content": "Bauüberhang an genehmigten Bauvorhaben im Hochbau: Bundesländer, Stichtag", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31131-0005", - "Content": "Bauüberhang an genehmigten Bauvorhaben im Hochbau: Bundesländer, Stichtag, Gebäudeart", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31131-0006", - "Content": "Bauüberhang an genehmigten Bauvorhaben im Hochbau: Bundesländer, Stichtag, Gebäudeart, Bauherr", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31141-0004", - "Content": "Abgang von Gebäuden/Gebäudeteilen im Hochbau: Bundesländer, Jahre", - "Time": "2015 - 2023" - }, - { - "Code": "31141-0005", - "Content": "Abgang von Gebäuden/Gebäudeteilen im Hochbau: Bundesländer, Jahre, Gebäudeart", - "Time": "2015 - 2023" - }, - { - "Code": "31141-0006", - "Content": "Abgang von Gebäuden/Gebäudeteilen im Hochbau: Bundesländer, Jahre, Gebäudeart, Eigentümer", - "Time": "2015 - 2023" - }, - { - "Code": "31231-0010", - "Content": "Wohnungen in Wohn- und Nichtwohngebäuden, Wohnfläche, Räume:\nBundesländer, Stichtag", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31231-0011", - "Content": "Wohnungen in Wohn- und Nichtwohngebäuden, Wohnfläche, Räume:\nBundesländer, Stichtag, Bestandsveränderungen", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31231-0012", - "Content": "Wohnungen in Wohn- und Nichtwohngebäuden: Bundesländer,\nStichtag, Anzahl der Räume", - "Time": "31.12.1995 - 31.12.2023" - }, - { - "Code": "31231-0013", - "Content": "Wohnungen in Wohn- und Nichtwohngebäuden: Bundesländer,\nStichtag, Anzahl der Räume, Bestandsveränderungen", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31231-0014", - "Content": "Wohngebäude, Wohnungen, Wohnfläche: Bundesländer, Stichtag,\nAnzahl der Wohnungen", - "Time": "31.12.1995 - 31.12.2023" - }, - { - "Code": "31231-0015", - "Content": "Wohngebäude, Wohnungen, Wohnfläche: Bundesländer, Stichtag,\nAnzahl der Wohnungen, Bestandsveränderungen", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "31231-0016", - "Content": "Wohnungen in Nichtwohngebäuden, Wohnfläche: Bundesländer,\nStichtag, Bestandsveränderungen", - "Time": "31.12.2015 - 31.12.2023" - }, - { - "Code": "32111-0010", - "Content": "Abfallentsorgung: Bundesländer, Jahre", - "Time": "2018 - 2022" - }, - { - "Code": "32111-0011", - "Content": "Abfallentsorgung: Bundesländer, Jahre, Anlagenart", - "Time": "2006 - 2022" - }, - { - "Code": "32121-0002", - "Content": "Aufkommen an Haushaltsabfällen: Bundesländer, Jahre", - "Time": "2004 - 2023" - }, - { - "Code": "32121-0003", - "Content": "Aufkommen an Haushaltsabfällen: Bundesländer, Jahre,\nAbfallarten", - "Time": "2004 - 2023" - }, - { - "Code": "32131-0003", - "Content": "Eingesammelte Transport- und Umverpackungen: Bundesländer,\nJahre, Verbleib der Verpackungen", - "Time": "2001 - 2020" - }, - { - "Code": "32136-0010", - "Content": "Unternehmen, Erfasste Verkaufsverpackungen von privaten\nEndverbrauchern: Bundesländer, Jahre", - "Time": "2010 - 2020" - }, - { - "Code": "32136-0011", - "Content": "Erfasste Verkaufsverpackungen von privaten Endverbrauchern:\nBundesländer, Jahre, Art der Verkaufsverpackungen", - "Time": "2010 - 2020" - }, - { - "Code": "32137-0010", - "Content": "Verkaufs-, Transport- und Umverpackungen, Pfandpflichtige\nEinweggetränkeverpackungen: Bundesländer, Jahre,\nVerwertungsarten, Art des Verpackungsmaterials", - "Time": "2022 - 2022" - }, - { - "Code": "32137-0011", - "Content": "Ausgesonderte Mehrwegverpackungen: Bundesländer, Jahre", - "Time": "2022 - 2022" - }, - { - "Code": "32141-0004", - "Content": "Bauschuttaufbereitungsanlagen, Asphaltmischanlagen:\nBundesländer, Jahre", - "Time": "2006 - 2022" - }, - { - "Code": "32151-0003", - "Content": "Abfallerzeuger, Abfallmengen (gefährliche Abfälle):\nBundesländer, Jahre", - "Time": "2006 - 2022" - }, - { - "Code": "32151-0005", - "Content": "Erzeuger von primär nachgewiesenen Abfallmengen,\nAbgegebene Abfallmenge an Entsorger (gefährliche Abfälle):\nBundesländer, Jahre (bis 2008)", - "Time": "2005 - 2008" - }, - { - "Code": "32161-0004", - "Content": "Betriebe, erzeugte Abfallmenge: Bundesländer, Jahre", - "Time": "2010 - 2022" - }, - { - "Code": "32211-0001", - "Content": "Wassergewinnung, Einwohner mit Anschluss an die öffentliche\nWasserversorgung, Wasserabgabe: Bundesländer, Jahre", - "Time": "2007 - 2022" - }, - { - "Code": "32211-0002", - "Content": "Wassergewinnung: Bundesländer, Jahre, Wasserarten", - "Time": "2007 - 2022" - }, - { - "Code": "32212-0001", - "Content": "An öffentliche Kanalisation angeschlossene Einwohner,\nSchmutzwasser: Bundesländer, Jahre, Art der\nAbwasserentsorgung", - "Time": "2013 - 2019" - }, - { - "Code": "32213-0001", - "Content": "Länge des Kanalnetzes, Abwasserbehandlungsanlagen,\nAngeschlossene Einwohnerwerte, Jahresabwassermenge,\nSchmutzwasser: Bundesländer, Jahre", - "Time": "2007 - 2022" - }, - { - "Code": "32213-0002", - "Content": "Abwasserbehandlungsanlagen, Angeschlossene Einwohnerwerte,\nJahresabwassermenge, Schmutzwasser: Bundesländer, Jahre,\nArt der Abwasserbehandlung", - "Time": "2007 - 2022" - }, - { - "Code": "32214-0001", - "Content": "Trockenmasse des aus Abwasserbehandlungsanlagen direkt\nentsorgten Klärschlamms: Bundesländer, Jahre,\nEntsorgungsarten des Klärschlamms", - "Time": "2006 - 2023" - }, - { - "Code": "32221-0001", - "Content": "Wasseraufkommen, Betriebe mit Wasseraufkommen: Bundesländer,\nJahre (bis 2019), Wassergewinnung und -bezug", - "Time": "2007 - 2019" - }, - { - "Code": "32221-0002", - "Content": "Wasseraufkommen: Bundesländer, Jahre (bis 2019),\nEigengewinnung und Fremdbezug", - "Time": "2007 - 2019" - }, - { - "Code": "32221-0003", - "Content": "Wasseraufkommen: Bundesländer, Jahre, Verwendungsarten", - "Time": "2007 - 2022" - }, - { - "Code": "32221-0004", - "Content": "Frischwassereinsatz: Bundesländer, Jahre, Wassernutzung", - "Time": "2007 - 2022" - }, - { - "Code": "32221-0005", - "Content": "Unbehandeltes Abwasser: Bundesländer, Jahre (bis 2019),\nAbwassereinleitungsarten", - "Time": "2007 - 2019" - }, - { - "Code": "32251-0001", - "Content": "Einwohner mit Anschluss an die öffentliche Kanalisation,\nEinwohner mit Anschluss an zentrale\nAbwasserbehandlungsanlagen: Bundesländer, Jahre", - "Time": "2007 - 2022" - }, - { - "Code": "32331-0020", - "Content": "Geprüfte Anlagen zum Umgang mit wassergefährdenden Stoffen:\nBundesländer, Jahre, Art der Prüfung", - "Time": "2018 - 2023" - }, - { - "Code": "32331-0021", - "Content": "Geprüfte Anlagen zum Umgang mit wassergefährdenden Stoffen:\nBundesländer, Jahre, Standort", - "Time": "2018 - 2023" - }, - { - "Code": "32331-0022", - "Content": "Geprüfte Anlagen zum Umgang mit wassergefährdenden Stoffen:\nBundesländer, Jahre, Ergebnis der Prüfung", - "Time": "2018 - 2023" - }, - { - "Code": "32421-0010", - "Content": "Verwendung, Einfuhr und Ausfuhr klimawirksamer Stoffe:\nBundesländer, Jahre, Stoffgruppen", - "Time": "2022 - 2023" - }, - { - "Code": "32421-0011", - "Content": "Verwendung, Einfuhr und Ausfuhr klimawirksamer Stoffe: Bundesländer, Jahre, Wirtschaftszweig des Unternehmens, Stoffgruppen", - "Time": "2022 - 2023" - }, - { - "Code": "32421-0012", - "Content": "Verwendung klimawirksamer Stoffe: Bundesländer, Jahre,\nStoffgruppen, Einsatzbereiche", - "Time": "2022 - 2023" - }, - { - "Code": "32421-0013", - "Content": "Verwendung klimawirksamer Stoffe: Bundesländer, Jahre,\nWirtschaftszweig des Unternehmens, Einsatzbereiche", - "Time": "2022 - 2023" - }, - { - "Code": "32531-0010", - "Content": "Einheiten, Beschäftigte, Umsatz im Bereich Umweltschutz:\nBundesländer, Jahre", - "Time": "2006 - 2022" - }, - { - "Code": "32531-0011", - "Content": "Umweltschutzbezogener Umsatz: Bundesländer, Jahre (bis\n2010), Umsatzarten", - "Time": "2006 - 2010" - }, - { - "Code": "32531-0012", - "Content": "Umweltschutzbezogener Umsatz: Bundesländer, Jahre,\nUmweltbereiche", - "Time": "2022 - 2022" - }, - { - "Code": "33111-0002", - "Content": "Bodenfläche (tatsächliche Nutzung): Bundesländer, Stichtag (bis 31.12.2015), Nutzungsarten (AdV-Nutzungsartenverzeichnis 1991)", - "Time": "31.12.1992 - 31.12.2015" - }, - { - "Code": "33111-0004", - "Content": "Siedlungs- und Verkehrsfläche: Bundesländer, Stichtag\n(bis 31.12.2015), Nutzungsarten\n(AdV-Nutzungsartenverzeichnis 1991)", - "Time": "31.12.1992 - 31.12.2015" - }, - { - "Code": "33111-0006", - "Content": "Bodenfläche (tatsächliche Nutzung): Bundesländer, Stichtag (bis 31.12.2022), Nutzungsarten (AdV-Nutzungsartenkatalog 2009)", - "Time": "31.12.2016 - 31.12.2022" - }, - { - "Code": "33111-0008", - "Content": "Bodenfläche: Bundesländer, Stichtag, Nutzungsarten\n(tatsächliche Nutzung) (AdV-TN 2023)", - "Time": "31.12.2023 - 31.12.2023" - }, - { - "Code": "41122-0005", - "Content": "Landwirtschaftliche Betriebe, Landwirtsch. genutzte Fläche\n(Rep. ASE): Bundesländer, Jahre (bis 2007), Rechtsform,\nGrößenklassen der landwirtschaftlich genutzten Fläche", - "Time": "1979 - 2007" - }, - { - "Code": "41122-0006", - "Content": "Arbeitskräfte (Rep. ASE): Bundesländer, Jahre (bis 2007),\nArbeitskräftegruppen, Geschlecht, Rechtsform, Größenklassen\nder landwirtschaftlich genutzten Fläche", - "Time": "1979 - 2007" - }, - { - "Code": "41122-0007", - "Content": "Betriebliche Arbeitsleistung (Rep. ASE): Bundesländer,\nJahre (bis 2007), Arbeitskräftegruppen, Rechtsform,\nGrößenklassen der landwirtschaftlich genutzten Fläche", - "Time": "1979 - 2007" - }, - { - "Code": "41122-0008", - "Content": "Betriebliche Arbeitsleistung (Rep. ASE): Bundesländer,\nJahre (bis 1995), Arbeitskräftegruppen, Geschlecht,\nRechtsform, Größenklassen der landwirtsch. genutzten Fläche", - "Time": "1979 - 1995" - }, - { - "Code": "41141-0101", - "Content": "Landwirtschaftliche Betriebe, Fläche: Bundesländer, Jahre,\nBodennutzungsarten", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0102", - "Content": "Landwirtschaftliche Betriebe, Fläche: Bundesländer, Jahre,\nBodennutzungsarten, Größenklassen der landwirtschaftlich\ngenutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0103", - "Content": "Landwirtschaftliche Betriebe mit Ackerland, Fläche:\nBundesländer, Jahre, Ackerkulturen, Größenklassen des\nAckerlandes", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0104", - "Content": "Landwirtschaftliche Betriebe mit Viehhaltung, Viehbestand:\nBundesländer, Stichtag, Tierarten", - "Time": "01.03.2010 - 01.03.2023" - }, - { - "Code": "41141-0105", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nLandwirtschaftlich genutzte Fläche: Bundesländer, Jahre,\nGrößenklassen der landwirtschaftlich genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0106", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nLandwirtschaftlich genutzte Fläche (LF): Bundesländer,\nJahre, Betriebswirtschaftliche Ausrichtung", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0107", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nFläche, Ökologisch bewirtschaftete Fläche: Bundesländer,\nJahre, Bodennutzungsarten", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0108", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nTiere in Betrieben mit ökologischem Landbau, Tiere in\nökologischer Haltung: Bundesländer, Stichtag, Tierarten", - "Time": "01.03.2010 - 01.03.2023" - }, - { - "Code": "41141-0109", - "Content": "Landwirtschaftliche Betriebe, Landwirtsch. genutzte Fläche,\nFläche im jew. Eigentumsverhältnis: Bundesländer, Jahre,\nEigentumsverhältnisse, Rechtsformen, Größenklassen der LF", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0110", - "Content": "Landwirtschaftliche Betriebe mit gepachteten Flächen, Pachtentgelt: Bundesländer, Jahre, Bodennutzungsarten, Rechtsformen, Größenklassen der landw. genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0111", - "Content": "Landwirtschaftliche Betriebe, Fläche: Bundesländer, Jahre,\nBodennutzungsarten, Rechtsformen, Größenklassen der\nlandwirtschaftlich genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0112", - "Content": "Landwirtschaftliche Betriebe, Tiere: Bundesländer, Stichtag,\nTierarten, Rechtsformen, Größenklassen der\nlandwirtschaftlich genutzten Fläche", - "Time": "01.03.2010 - 01.03.2023" - }, - { - "Code": "41141-0113", - "Content": "Landwirtschaftliche Betriebe, Landwirtschaftlich genutzte\nFläche, Arbeitskräfte, Arbeitsleistung: Bundesländer, Jahre,\nRechtsformen, Größenklassen der landwirt. genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0114", - "Content": "Landwirtschaftliche Betriebe: Bundesländer, Jahre,\nGrößenklassen des Standardoutputs, Rechtsformen,\nBetriebswirtschaftliche Ausrichtung", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0115", - "Content": "Landwirtschaftliche Betriebe mit Bewässerung, Bewässerte\nFläche: Bundesländer, Jahre, Größenklassen der\nlandwirtschaftlich genutzten Fläche", - "Time": "2010 - 2023" - }, - { - "Code": "41141-0116", - "Content": "Landwirtschaftliche Betriebe mit Dauerkulturen,\nDauerkulturfläche: Bundesländer, Jahre, Dauerkulturarten,\nGrößenklassen der Dauerkulturen", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0117", - "Content": "Landwirtschaftliche Betriebe mit Dauergrünland, Dauergrünlandfläche: Bundesländer, Jahre, Dauergrünlandarten, Größenklassen der Dauergrünlandfläche", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0118", - "Content": "Landwirtschaftliche Betriebe mit Viehhaltung, Viehbestand,\nLandwirtschaftlich genutzte Fläche: Bundesländer, Stichtag,\nTierarten, Bestandsgrößenklassen", - "Time": "01.03.2020 - 01.03.2023" - }, - { - "Code": "41141-0119", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau, LF:\nBundesländer, Jahre, Umfang der ökologischen\nBewirtschaftung, Größenklassen der LF", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0120", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau, LF:\nBundesländer, Jahre, Umfang der ökologischen\nBewirtschaftung, Betriebswirtschaftliche Ausrichtung", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0121", - "Content": "Landwirtschaftliche Betriebe mit ökologischer Viehhaltung:\nBundesländer, Stichtag, Größenklassen der LF", - "Time": "01.03.2020 - 01.03.2023" - }, - { - "Code": "41141-0122", - "Content": "Landwirtschaftliche Betriebe mit ökologischer Viehhaltung:\nBundesländer, Stichtag, Betriebswirtschaftliche Ausrichtung", - "Time": "01.03.2020 - 01.03.2023" - }, - { - "Code": "41141-0123", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau und\nPacht, Gepachtete LF, Pachtentgelt: Bundesländer, Jahre,\nGrößenklassen der LF", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0124", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau und\nPacht, Gepachtete LF, Pachtentgelt: Bundesländer, Jahre,\nBetriebswirtschaftliche Ausrichtung", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0125", - "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau, LF,\nArbeitskräfte, Arbeitsleistung: Bundesländer, Jahre,\nRechtsformen, Größenklassen der LF", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0126", - "Content": "Landw. Betriebe mit Angabe des Jahrespachtentgeltes,\nGepachtete LF: Bundesländer, Jahre, Bodennutzungsarten,\nRechtsformen, Größenklassen des durch. Jahrespachtentgeltes", - "Time": "2020 - 2023" - }, - { - "Code": "41141-0127", - "Content": "Arbeitskräfte: Bundesländer, Jahre, Geschlecht,\nAltersgruppen, Rechtsformen, Art der Arbeitskräfte,\nBeschäftigungsumfang", - "Time": "2020 - 2023" - }, - { - "Code": "41145-0011", - "Content": "Betriebe, Nutzfläche (Gartenbau): Bundesländer, Jahre,\nBetriebsarten, Größenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0012", - "Content": "Gartenbaubetriebe, Nutzfläche: Bundesländer, Jahre,\nBetrieblicher Schwerpunkt der Gartenbaubetriebe,\nGrößenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0013", - "Content": "Gartenbaubetriebe mit Schwerpunkt Erzeugung, Nutzfläche:\nBundesländer, Jahre, Betriebstypen, Größenklassen der\ngärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0014", - "Content": "Gartenbaubetriebe mit Schwerpunkt Handel u.Dienstleistungen:\nBundesländer, Jahre, Betriebstypen, Größenklassen der\ngärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0015", - "Content": "Arbeitskräfte in Gartenbaubetrieben: Bundesländer, Jahre,\nBetriebl. Schwerpunkt der Gartenbaubetriebe, Beschäftigungs-\numfang, Größenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0016", - "Content": "Familienarbeitskräfte, Betriebliche Arbeitsleistung in\nGartenbaubetrieben:Bundesländer, Jahre, Betriebl.Schwerpunkt\nder Gartenbaubetriebe, Größenklassen der gärtn. Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0017", - "Content": "Arbeitskräfte in Gartenbaubetrieben mit Schwerpunkt\nErzeugung: Bundesländer, Jahre, Betriebstypen, Größenklassen\nder gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0018", - "Content": "Betriebe mit Anbau von Gartenbauerzeugnissen, Anbauflächen:\nBundesländer, Jahre, Größenklassen der gärtnerischen\nNutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0019", - "Content": "Betriebe mit Anbau v.Gartenbauerzeugnissen und Flächen unter\nGlas und/oder abgedeckten Freilandflächen: Bundesländer,\nJahre, Größenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41145-0020", - "Content": "Betriebe (Einzelunternehmen) mit Anbau von Gartenbau-\nerzeugnissen: Bundesländer, Jahre, Betriebsform,\nGrößenklassen der gärtnerischen Nutzfläche", - "Time": "2005 - 2005" - }, - { - "Code": "41161-0010", - "Content": "Waldfläche: Bundesländer, Jahre, Waldeigentumsarten", - "Time": "2022 - 2022" - }, - { - "Code": "41161-0011", - "Content": "Forsteinheiten, Waldfläche: Bundesländer, Jahre,\nWaldeigentumsarten, Größenklassen der Waldfläche", - "Time": "2022 - 2022" - }, - { - "Code": "41213-0008", - "Content": "Betriebe mit Grundflächen des Zierpflanzenanbaus:\nBundesländer, Jahre, Anbauform, Verwendungszweck", - "Time": "2008 - 2021" - }, - { - "Code": "41213-0009", - "Content": "Betriebe mit Erzeugung von Zimmerpflanzen: Bundesländer,\nJahre, Verwendungszweck, Pflanzenarten", - "Time": "2008 - 2021" - }, - { - "Code": "41213-0010", - "Content": "Betriebe mit Erzeugung von Beet- und Balkonpflanzen und\nStauden: Bundesländer, Jahre, Verwendungszweck,\nPflanzenarten", - "Time": "2008 - 2021" - }, - { - "Code": "41213-0011", - "Content": "Betriebe mit Anbauflächen von Schnittblumen: Bundesländer,\nJahre, Anbauform, Pflanzenarten", - "Time": "2008 - 2021" - }, - { - "Code": "41215-0010", - "Content": "Betriebe mit Gemüseanbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre", - "Time": "2010 - 2024" - }, - { - "Code": "41215-0011", - "Content": "Betriebe mit Gemüseanbau im Freiland, Anbaufläche, Erntemenge: Bundesländer, Jahre, Gemüsearten", - "Time": "2010 - 2024" - }, - { - "Code": "41215-0012", - "Content": "Betriebe mit Gemüseanbau unter Schutzabdeckungen, Anbaufläche, Erntemenge: Bundesländer, Jahre, Gemüsearten", - "Time": "2010 - 2024" - }, - { - "Code": "41215-0013", - "Content": "Betriebe mit Gemüseanbau (vollständig ökologisch), Anbaufläche, Erntemenge: Bundesländer, Jahre", - "Time": "2023 - 2024" - }, - { - "Code": "41215-0014", - "Content": "Betriebe mit Erdbeeranbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre, Anbauform", - "Time": "2006 - 2024" - }, - { - "Code": "41215-0015", - "Content": "Betriebe mit Erdbeeranbau (vollständig ökologisch), Anbaufläche, Erntemenge: Bundesländer, Jahre, Anbauform", - "Time": "2012 - 2024" - }, - { - "Code": "41221-0010", - "Content": "Betriebe mit Baumschulen, Baumschulfläche: Bundesländer,\nJahre, Art der Anbaufläche, Nutzungsarten", - "Time": "2017 - 2021" - }, - { - "Code": "41231-0010", - "Content": "Betriebe mit Baumobstflächen: Bundesländer, Jahre, Baumobstarten", - "Time": "1972 - 2022" - }, - { - "Code": "41231-0011", - "Content": "Betriebe mit Baumobstflächen, Anbaufläche: Bundesländer,\nJahre, Tafel-Kernobstarten, Pflanzdichteklassen", - "Time": "2022 - 2022" - }, - { - "Code": "41231-0012", - "Content": "Betriebe mit Baumobstflächen, Anbaufläche: Bundesländer,\nJahre, Verwertungs-Kernobstarten, Pflanzdichteklassen", - "Time": "2022 - 2022" - }, - { - "Code": "41231-0013", - "Content": "Betriebe mit Baumobstflächen, Anbaufläche: Bundesländer,\nJahre, Kernobstarten, Alter der Bäume", - "Time": "2022 - 2022" - }, - { - "Code": "41231-0014", - "Content": "Anbaufläche, Bäume (Baumobstanbau): Bundesländer, Jahre,\nBaumobstarten", - "Time": "1972 - 2022" - }, - { - "Code": "41232-0010", - "Content": "Betriebe mit Strauchbeerenanbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre", - "Time": "2012 - 2024" - }, - { - "Code": "41232-0011", - "Content": "Betriebe mit Strauchbeerenanbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre, Anbauform, Strauchbeerenart", - "Time": "2012 - 2024" - }, - { - "Code": "41232-0012", - "Content": "Erntemenge (Strauchbeeren): Bundesländer, Jahre, Art der\nVerwendung", - "Time": "2012 - 2024" - }, - { - "Code": "41232-0013", - "Content": "Betriebe mit ökologischem Strauchbeerenanbau, Ökologische Anbaufläche, Ökologisch erzeugte Erntemenge: Bundesländer, Jahre", - "Time": "2012 - 2024" - }, - { - "Code": "41232-0014", - "Content": "Betriebe mit ökologischem Strauchbeerenanbau, Ökologische\nAnbaufläche, Ökologisch erzeugte Erntemenge: Bundesländer,\nJahre, Anbauform, Strauchbeerenart", - "Time": "2012 - 2024" - }, - { - "Code": "41241-0010", - "Content": "Anbaufläche, Erntemenge, Ertrag je Hektar (Feldfrüchte und\nGrünland): Bundesländer, Jahre, Fruchtarten", - "Time": "2010 - 2024" - }, - { - "Code": "41241-0011", - "Content": "Erntemenge von Raufutter: Bundesländer, Jahre, Fruchtarten,\nVerwendungszweck", - "Time": "2010 - 2024" - }, - { - "Code": "41243-0010", - "Content": "Anbaufläche, Erntemenge (Baumobst): Bundesländer, Jahre,\nBaumobstarten", - "Time": "2005 - 2024" - }, - { - "Code": "41243-0011", - "Content": "Erntemenge (Baumobst): Bundesländer, Jahre, Baumobstarten,\nArt der Verwendung", - "Time": "2007 - 2024" - }, - { - "Code": "41243-0012", - "Content": "Anbaufläche, Erntemenge (Baumobst): Bundesländer, Jahre,\nApfelsorten", - "Time": "2007 - 2024" - }, - { - "Code": "41244-0010", - "Content": "Rebfläche im Ertrag, Weinmostertrag je Hektar, Erntemenge an Weinmost: Bundesländer, Jahre, Art des Weinmosts", - "Time": "2019 - 2024" - }, - { - "Code": "41244-0011", - "Content": "Rebfläche im Ertrag, Weinmostertrag je Hektar, Erntemenge an Weinmost: Bundesländer, Jahre, Rebsorte", - "Time": "2019 - 2024" - }, - { - "Code": "41244-0012", - "Content": "Erntemenge an Weinmost, Durchschnittliches Mostgewicht:\nBundesländer, Jahre, Art des Weinmosts, Mostqualität", - "Time": "2019 - 2024" - }, - { - "Code": "41244-0013", - "Content": "Erntemenge an Weinmost, Durchschnittliches Mostgewicht:\nBundesländer, Jahre, Rebsorte, Mostqualität", - "Time": "2019 - 2024" - }, - { - "Code": "41252-0010", - "Content": "Mit Keltertrauben bestockte Rebfläche: Bundesländer, Jahre,\nRebsorte", - "Time": "1991 - 2024" - }, - { - "Code": "41253-0010", - "Content": "Erntemenge an Weinmost, Weinmostertrag je Hektar, Rebfläche\nim Ertrag: Bundesländer, Jahre, Art des Weinmosts", - "Time": "1991 - 2024" - }, - { - "Code": "41253-0011", - "Content": "Erntemenge an Weinmost, Weinmostertrag je Hektar, Rebfläche\nim Ertrag: Bundesländer, Jahre, Rebsorte", - "Time": "2022 - 2024" - }, - { - "Code": "41253-0012", - "Content": "Erntemenge an Weinmost: Bundesländer, Jahre, Mostqualität,\nArt des Weinmosts", - "Time": "2022 - 2024" - }, - { - "Code": "41253-0013", - "Content": "Erntemenge an Weinmost: Bundesländer, Jahre, Mostqualität,\nRebsorte", - "Time": "2022 - 2024" - }, - { - "Code": "41254-0003", - "Content": "Erzeugter Wein: Bundesländer, Jahre, Rebsorte,\nWeinkategorien", - "Time": "2010 - 2024" - }, - { - "Code": "41255-0010", - "Content": "Weinbestand: Bundesländer, Jahre, Rebsorte", - "Time": "1991 - 2024" - }, - { - "Code": "41255-0011", - "Content": "Weinbestand: Bundesländer, Jahre, Rebsorte, Bestandsort,\nHerkunft des Weins", - "Time": "2021 - 2024" - }, - { - "Code": "41255-0012", - "Content": "Weinbestand: Bundesländer, Jahre, Rebsorte, Bestandsort,\nKategorien des Bezeichnungsschutzes", - "Time": "2021 - 2024" - }, - { - "Code": "41255-0013", - "Content": "Bestand an Schaumwein: Bundesländer, Jahre, Bestandsort, Herkunft des Weins", - "Time": "2021 - 2024" - }, - { - "Code": "41255-0014", - "Content": "Bestand an Traubenmost: Bundesländer, Jahre, Bestandsort,\nRebsorte", - "Time": "2023 - 2024" - }, - { - "Code": "41261-0010", - "Content": "Holzeinschlag: Bundesländer, Jahre, Holzartengruppen", - "Time": "1998 - 2023" - }, - { - "Code": "41261-0011", - "Content": "Holzeinschlag: Bundesländer, Jahre, Holzsorten, Holzartengruppen, Waldeigentumsarten", - "Time": "2006 - 2023" - }, - { - "Code": "41261-0012", - "Content": "Schadholzeinschlag: Bundesländer, Jahre, Einschlagsursache,\nHolzartengruppen, Waldeigentumsarten", - "Time": "2006 - 2023" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/vignettes/.gitignore b/vignettes/.gitignore index 097b241..1f10023 100644 --- a/vignettes/.gitignore +++ b/vignettes/.gitignore @@ -1,2 +1,5 @@ *.html *.R +vignettes/*_files/ +vignettes/*_cache/ +vignettes/*.html diff --git a/vignettes/additional_parameter.Rmd b/vignettes/additional_parameter.qmd similarity index 99% rename from vignettes/additional_parameter.Rmd rename to vignettes/additional_parameter.qmd index 0c56595..8b3f160 100644 --- a/vignettes/additional_parameter.Rmd +++ b/vignettes/additional_parameter.qmd @@ -2,8 +2,8 @@ title: "Additional Parameters for API Calls with {restatis}" output: rmarkdown::html_vignette vignette: > - %\VignetteIndexEntry{vignette-additional_parameter} - %\VignetteEngine{knitr::rmarkdown} + %\VignetteIndexEntry{Additional Parameters for API Calls with {restatis}} + %\VignetteEngine{quarto::html} %\VignetteEncoding{UTF-8} --- diff --git a/vignettes/restatis.Rmd.orig b/vignettes/restatis.Rmd.orig deleted file mode 100644 index 8838dd5..0000000 --- a/vignettes/restatis.Rmd.orig +++ /dev/null @@ -1,107 +0,0 @@ ---- -title: "Basic restatis Workflow" -output: rmarkdown::html_vignette -vignette: > - %\VignetteIndexEntry{vignette-busfahrer} - %\VignetteEngine{knitr::rmarkdown} - %\VignetteEncoding{UTF-8} ---- - -```{r, include = FALSE} -knitr::opts_chunk$set( - collapse = TRUE, - comment = "#>" -) - -options( - max.print = 32 -) -``` - -```{r setup} -library(restatis) -``` - -## Introduction - -This vignette describes the basic workflow for finding, exploring, and retrieving data from the GENESIS API using [restatis](https://correlaid.github.io/restatis/). - -For the scenario in this vignette, we are going to be a researcher trying to find data on the income of bus drivers, called "Busfahrer". - -## Premilinary: finding relevant search terms - -First, we can and should explore if and how our keyword is represented in the GENESIS database. We want to see if our keywords are related in any way to other words, and we need to be more precise in our search process; or in case we already have a particular keyword, if there are related keywords that could be included in our search to expand our data collection. - -To be as broad as possible, we want to search for any term in the database that contains our keyword. To do this, we can use a "*" wildcard at the beginning and end of the search term: - -```{r Finding alternative terms} -gen_alternative_terms(term = "*busfahrer*") -``` - -Based on the results, our original keyword "busfahrer" is already specific enough, and no additional specifications are necessary. - -Had we started with the keyword "bus" - the vehicle itself - we can see that the database has several related terms that might be helpful to narrow our search radius further. In this example, it might be helpful to see that there are at least three different types of buses that are searchable: "fernbus", "schienenbus" and "kraftomnibusse". - -```{r} -gen_alternative_terms(term = "*bus*") -``` - -## Search for data objects - -Now that we have our specific keyword for our search, we can search the database for exactly that term. We want the results to be ordered so that items with a title that includes our search term are at the top. We also want to explore all object types for now: - -```{r} -search_results <- gen_find( - term = "busfahrer", - detailed = FALSE, - ordering = TRUE, - category = "all" -) - -search_results -``` - -We can see that we find results for our keyword "busfahrer" in each category of objects (statistics, tables, variables, and cubes). Based on the promising content description of the first cube object, our next step will be to check what it contains before requesting the data. - -As a side note, most of the functions in this package will return objects with additional attributes that represent the parameters and additional information of your GENESIS API query. So check the attributes if you ever need help recognising how you got the output. - -## Checking object metadata - -To check whether GENESIS data objects are relevant to your interest, you should obtain the metadata for these objects before requesting the data itself. The metadata for each type of object stores different key characteristics that will help you understand what the object is about. - -For our question about the income of bus drivers, we want to check the metadata of the first cube object we got from the find function: - -```{r} -gen_metadata( - code = search_results$Cubes$Code[1], - category = search_results$Cubes$Object_Type[1] -) -``` - -## Retrieving data - -We are now pretty sure that this cube object will help us find information about our research question. The next step is to get the data from the GENESIS API. - -Based on the fact that we want a cube object, we now use the `gen_cube()` function. For other GENESIS object types, use the corresponding functions (e.g., `gen_table()` for tables). - -Important note: It is not possible to get a whole GENESIS statistic object, but it is possible to collect the different related cube objects independently and then try to recombine them. - -```{r} -gen_cube(search_results$Cubes$Code[1]) -``` - -TODO: Create helpers to decipher column names. - -## Appendix: check for changes in previously collected data - -As a small additional step, we would like to check one week later if the collected data objects have been updated in the last week. We can also check if additional interesting data objects for our interest/keyword have been added to the database. To do this, we need to specify the code of the objects we are looking for and the time we want to look for updates. - -If we only want to check if something related has been updated, we only need to use the first part of the code until we are sure that it only covers the topic we are interested in. For example, use "62361*" if you want to check if some updated objects have been published for the specific statistic "Verdiensterhebung". - -For convenience, the functions have already implemented the most common `date` specifications, such as "week_before", "month_before", or "year_before". If you prefer a fixed date, you can enter it as a string in the format "DD-MM-YYYY". - -For example, we might want to check to see if something new has been published about our collected cube object. So we use only the first part of the code "62361*": - -```{r} -gen_modified_data(code = "62361", date = "week_before") -``` diff --git a/vignettes/restatis.Rmd b/vignettes/restatis.qmd similarity index 98% rename from vignettes/restatis.Rmd rename to vignettes/restatis.qmd index 6f8d4a8..7f7ce3f 100644 --- a/vignettes/restatis.Rmd +++ b/vignettes/restatis.qmd @@ -1,9 +1,9 @@ --- -title: "Basic restatis Workflow" +title: "Basic {restatis} workflow" output: rmarkdown::html_vignette vignette: > - %\VignetteIndexEntry{vignette-busfahrer} - %\VignetteEngine{knitr::rmarkdown} + %\VignetteIndexEntry{Basic restatis workflow} + %\VignetteEngine{quarto::html} %\VignetteEncoding{UTF-8} --- From 4491199f9996cea65435dc2a8a22f2f28b84b0ae Mon Sep 17 00:00:00 2001 From: buhly Date: Tue, 3 Feb 2026 22:53:57 +0100 Subject: [PATCH 14/26] add to README --- R/utils_authentication.R | 39 ++++++++++------------- README.Rmd | 30 ++++++++++++++++- README.md | 69 +++++++++++++++++++++++++++++++++------- 3 files changed, 102 insertions(+), 36 deletions(-) diff --git a/R/utils_authentication.R b/R/utils_authentication.R index 7d1de31..823d2b6 100644 --- a/R/utils_authentication.R +++ b/R/utils_authentication.R @@ -181,11 +181,22 @@ test_database_function <- function(input, #--------------------------------------------------------------------------- - if (length(res) <= length(credential_list)) { + if (!all(res %in% names(credential_list))) { - if (!all(res %in% names(credential_list))) { + missing <- setdiff(res, names(credential_list)) + common <- intersect(res, names(credential_list)) + + if (isTRUE(error.input)) { + + message(paste0("Not all databases you defined in 'database' are contained in your 'credential_list' (missing: '", + paste(missing, collapse = "', '"), + "'). Functions continues with those available ('", + paste0(common, collapse = "', '"), + "').")) + + res <- common - missing <- setdiff(res, names(credential_list)) + } else if (isFALSE(error.input)) { stop(paste0("Not all databases you defined in 'database' are contained in your 'credential_list' (missing: '", paste(missing, collapse = "', '"), @@ -198,26 +209,8 @@ test_database_function <- function(input, #--------------------------------------------------------------------------- - if (length(res) > length(credential_list) & isTRUE(error.input)) { - - common <- intersect(res, names(credential_list)) - - message(paste0("You have defined more databases in 'database' than you have in your 'credential_list'. The function continues with those available (these are: '"), - paste(common, collapse = ", "), - "').") - - res <- common - - } else if (length(res) > length(credential_list) & isFALSE(error.input)) { - - stop("You have defined more databases in 'database' than you have in your 'credential_list'. Please check your parameters.", - call. = FALSE) - - } - - #--------------------------------------------------------------------------- - - if (!all(sapply(credential_list, function(x) { all(c("username", "password") %in% names(x)) }))) { + if (!all(sapply(credential_list, + function(x) { all(c("username", "password") %in% names(x)) }))) { stop("Every database that is requested in the parameter 'database' needs its own list entry including the entries 'username' and 'password' (e.g., list(genesis = c(username = 'X', password = 'Y'))).", call. = FALSE) diff --git a/README.Rmd b/README.Rmd index df65ece..e4c73a5 100644 --- a/README.Rmd +++ b/README.Rmd @@ -60,7 +60,35 @@ devtools::install_github("CorrelAid/restatis") To access each one of the APIs, you need to have an account that you can create on the homepage (see links to them above) and store your username and password for use in R with `restatis::gen_auth_save()` (see `?gen_auth_save` for more details). -**Note:** The GENESIS and Zensus 2022 databases do support authentication with an API token as well. You can set the token as credential by using setting the parameter `use_token = TRUE` for `restatis::gen_auth_save()`. The token itself can be found when logging into the respective webpage with your account and by clicking on *Webservice (API)* (EN) or *Webservice-Schnittstelle (API)* (DE) in the bottom left corner. **Important:** The GENESIS database will not let you create jobs when using API tokens to authenticate. This is why `{restatis}` will check your credential type once you set `job = TRUE` for `gen_table()` and error in case a token is used. To enable the use of jobs, use `gen_auth_save()` and input your username and password (by setting `use_token = FALSE`). +#### API tokens +The GENESIS and Zensus 2022 databases do support authentication with an API token as well. You can set the token as credential by using setting the parameter `use_token = TRUE` for `restatis::gen_auth_save()`. The token itself can be found when logging into the respective webpage with your account and by clicking on *Webservice (API)* (EN) or *Webservice-Schnittstelle (API)* (DE) in the bottom left corner. **Important:** The GENESIS database will not let you create jobs when using API tokens to authenticate. This is why `{restatis}` will check your credential type once you set `job = TRUE` for `gen_table()` and error in case a token is used. To enable the use of jobs, use `gen_auth_save()` and input your username and password (by setting `use_token = FALSE`). + +#### Credentials as parameters +In the first versions of {restatis}, it was impossible to set the credentials as a parameter. This is because we wanted to emphasise the secure storage of credentials that is the default of the package. However, we became aware of certain use-cases (e.g., automated piplines via GitHub Actions and the like) that made it necessary to set the credentials as a parameter. For this reason, in version 0.4.0 we introduced the `credential_list` parameter for {restatis}'s functions. Using this parameter, users can provide their credentials independently of `gen_auth_save`. **Note:** We do only encourage this in very rare cases since it is advisable to safely store the credentials. In case you use `credential_list`, always make sure that the credentials do not appear anywhere in clear text! + +The `credentials_list` has to have the exact following structure: + +```r +custom_credentials <- list(genesis = c(username = 'abc123', password = 'qwerty1234'), + regio = c(username = 'abc123', password = 'qwerty1234')) + +``` +Now when using the custom credentials, you pass the list to the respective function parameter: + +```r +# Example call with custom credentials +res <- restatis::gen_find(term = "diagnosen", + database = "genesis", + credential_list = custom_credentials) + +# This also works with multiple databases in `databases` +res2 <- restatis::gen_find(term = "krankenhäuser", + database = c("genesis", "regio"), + credential_list = custom_credentials) + +``` + +You have to make sure that the database(s) you specify in `database` is/are listed in `credential_list`, otherwise the function call fails. In some cases, you can specify the `error.ignore` parameter. If it is set to `TRUE`, the function will continue to execute for those databases that are available, even if some are not. ### Main features diff --git a/README.md b/README.md index d47a357..0871372 100644 --- a/README.md +++ b/README.md @@ -71,18 +71,63 @@ create on the homepage (see links to them above) and store your username and password for use in R with `restatis::gen_auth_save()` (see `?gen_auth_save` for more details). -**Note:** The GENESIS and Zensus 2022 databases do support -authentication with an API token as well. You can set the token as -credential by using setting the parameter `use_token = TRUE` for -`restatis::gen_auth_save()`. The token itself can be found when logging -into the respective webpage with your account and by clicking on -*Webservice (API)* (EN) or *Webservice-Schnittstelle (API)* (DE) in the -bottom left corner. **Important:** The GENESIS database will not let you -create jobs when using API tokens to authenticate. This is why -`{restatis}` will check your credential type once you set `job = TRUE` -for `gen_table()` and error in case a token is used. To enable the use -of jobs, use `gen_auth_save()` and input your username and password (by -setting `use_token = FALSE`). +#### API tokens + +The GENESIS and Zensus 2022 databases do support authentication with an +API token as well. You can set the token as credential by using setting +the parameter `use_token = TRUE` for `restatis::gen_auth_save()`. The +token itself can be found when logging into the respective webpage with +your account and by clicking on *Webservice (API)* (EN) or +*Webservice-Schnittstelle (API)* (DE) in the bottom left corner. +**Important:** The GENESIS database will not let you create jobs when +using API tokens to authenticate. This is why `{restatis}` will check +your credential type once you set `job = TRUE` for `gen_table()` and +error in case a token is used. To enable the use of jobs, use +`gen_auth_save()` and input your username and password (by setting +`use_token = FALSE`). + +#### Credentials as parameters + +In the first versions of {restatis}, it was impossible to set the +credentials as a parameter. This is because we wanted to emphasise the +secure storage of credentials that is the default of the package. +However, we became aware of certain use-cases (e.g., automated piplines +via GitHub Actions and the like) that made it necessary to set the +credentials as a parameter. For this reason, in version 0.4.0 we +introduced the `credential_list` parameter for {restatis}’s functions. +Using this parameter, users can provide their credentials independently +of `gen_auth_save`. **Note:** We do only encourage this in very rare +cases since it is advisable to safely store the credentials. In case you +use `credential_list`, always make sure that the credentials do not +appear anywhere in clear text! + +The `credentials_list` has to have the exact following structure: + +``` r +custom_credentials <- list(genesis = c(username = 'abc123', password = 'qwerty1234'), + regio = c(username = 'abc123', password = 'qwerty1234')) +``` + +Now when using the custom credentials, you pass the list to the +respective function parameter: + +``` r +# Example call with custom credentials +res <- restatis::gen_find(term = "diagnosen", + database = "genesis", + credential_list = custom_credentials) + +# This also works with multiple databases in `databases` +res2 <- restatis::gen_find(term = "krankenhäuser", + database = c("genesis", "regio"), + credential_list = custom_credentials) +``` + +You have to make sure that the database(s) you specify in `database` +is/are listed in `credential_list`, otherwise the function call fails. +In some cases, you can specify the `error.ignore` parameter. If it is +set to `TRUE`, the function will continue to execute for those databases +that are available, even if some are not. ### Main features From 91f19324f1607936dea6545ea603f5a25a6176a7 Mon Sep 17 00:00:00 2001 From: buhly Date: Sun, 8 Feb 2026 21:20:13 +0100 Subject: [PATCH 15/26] work on tests and cleanup --- R/gen_catalogue.R | 2 - R/gen_find.R | 4 - R/gen_metadata.R | 2 +- R/gen_objects2stat.R | 2 - R/gen_objects2var.R | 2 - R/utils_dataprocessing.R | 4 +- tests/testthat/test_credential_list.R | 119 ++++++++++++++++++++++++- tests/testthat/test_credentials_list.R | 110 ----------------------- tests/testthat/test_databases.R | 48 ++++++++++ 9 files changed, 166 insertions(+), 127 deletions(-) delete mode 100644 tests/testthat/test_credentials_list.R create mode 100644 tests/testthat/test_databases.R diff --git a/R/gen_catalogue.R b/R/gen_catalogue.R index a75c136..efcd106 100644 --- a/R/gen_catalogue.R +++ b/R/gen_catalogue.R @@ -82,8 +82,6 @@ gen_catalogue <- function(code = NULL, #--------------------------------------------------------------------------- - # HUHU: Does it work also for 'bayern' & 'st'? - # There are definitely no cubes for ST, BY is still unclear if ("cubes" %in% category && db %in% c("zensus", "bayern", "st")) { list_of_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") diff --git a/R/gen_find.R b/R/gen_find.R index db572f7..2d325df 100644 --- a/R/gen_find.R +++ b/R/gen_find.R @@ -78,8 +78,6 @@ gen_find <- function(term = NULL, #--------------------------------------------------------------------------- - # HUHU: Does it work also for 'bayern' & 'st'? - # Definitely no cubes for ST, BY is unclear if (db %in% c("zensus", "bayern", "st") && category == "cubes") { empty_object <- "FAIL" @@ -116,7 +114,6 @@ gen_find <- function(term = NULL, return(list_resp) - # HUHU: It is still unclear as to whether BY provides cubes } else if (empty_object == "FAIL" & db %in% c("zensus", "bayern", "st")) { list_resp <- list("Output" = paste0("There are generally no 'cubes' objects available for the '", db, "' database.")) @@ -552,7 +549,6 @@ gen_find <- function(term = NULL, } - # HUHU: It is still unclear as to whether BY provides cubes } else if (db %in% c("zensus", "bayern", "st")) { df_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") diff --git a/R/gen_metadata.R b/R/gen_metadata.R index f3d9f27..6941634 100644 --- a/R/gen_metadata.R +++ b/R/gen_metadata.R @@ -641,7 +641,7 @@ gen_metadata_table <- function(code = NULL, #' } #' gen_metadata_cube <- function(code = NULL, - database = c("all", "genesis", "regio", "nrw", "bildung"), # HUHU: Works for 'bayern' & 'st'? Not for ST, BY unclear + database = c("all", "genesis", "regio", "nrw", "bildung"), credential_list = NULL, area = c("all", "public", "user"), error.ignore = FALSE, diff --git a/R/gen_objects2stat.R b/R/gen_objects2stat.R index 6a9e29d..ed630ba 100644 --- a/R/gen_objects2stat.R +++ b/R/gen_objects2stat.R @@ -180,8 +180,6 @@ gen_objects2stat <- function(code = NULL, #--------------------------------------------------------------------------- - # HUHU: Does it work also for 'bayern' & 'st'? - # No cubes in ST, unclear for BY if ("cubes" %in% category && db %in% c("zensus", "bayern", "st")) { df_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") diff --git a/R/gen_objects2var.R b/R/gen_objects2var.R index 2ff6e49..73a465e 100644 --- a/R/gen_objects2var.R +++ b/R/gen_objects2var.R @@ -179,8 +179,6 @@ gen_objects2var <- function(code = NULL, #--------------------------------------------------------------------------- - # HUHU: Does it work also for 'bayern' & 'st'? - # No cubes in ST, unclear for BY if ("cubes" %in% category && db %in% c("zensus", "bayern", "st")) { df_cubes <- paste("There are generally no 'cubes' objects available for the '", db, "' database.") diff --git a/R/utils_dataprocessing.R b/R/utils_dataprocessing.R index 3b9a65e..e06da22 100644 --- a/R/utils_dataprocessing.R +++ b/R/utils_dataprocessing.R @@ -312,7 +312,7 @@ check_function_input <- function(code = NULL, #--------------------------------------------------------------------------- - if (length(verbose == 1)) { + if (length(verbose) == 1) { #------------------------------------------------------------------------- @@ -778,8 +778,6 @@ check_function_input <- function(code = NULL, } - # HUHU: Check for other databases missing - } #----------------------------------------------------------------------------- diff --git a/tests/testthat/test_credential_list.R b/tests/testthat/test_credential_list.R index eb0b978..18bc1d7 100644 --- a/tests/testthat/test_credential_list.R +++ b/tests/testthat/test_credential_list.R @@ -2,7 +2,120 @@ # Tests related to API calls using 'credential_list' #------------------------------------------------------------------------------- -test_that("restatis functions respond correctly to ill-defined credentials_list", { +test_that("functions error correctly on erroneous credential_list parameter values", { + + #----------------------------------------------------------------------------- + + expect_error( + + result <- gen_catalogue(code = "12*", + database = "genesis", + verbose = FALSE, + credential_list = list(regio = c(username = "bar", password = "foo"))), + regexp = "Not all databases you defined in 'database' are contained in your 'credential_list'." + + ) + + expect_error( + + result <- gen_catalogue(code = "12*", + database = c("genesis", "zensus"), + category = "tables", + verbose = FALSE, + credential_list = list(regio = c(username = "bar", password = "foo"), + nrw = c(username = "foo", password = "bar"), + bayern = c(username = "foo", password = "bar"))), + regexp = "Not all databases you defined in 'database' are contained in your 'credential_list'" + + ) + + expect_error( + + result <- gen_catalogue(code = "12*", + database = c("genesis", "zensus"), + category = "tables", + verbose = FALSE, + credential_list = list(genesis = c(username = "bar", password = "foo"), + zensus = c(username = "foo", password = "bar"))), + regexp = "No json-csv file detected." + + ) + + expect_error( + + result <- gen_catalogue(code = "12*", + database = c("genesis", "regio"), + verbose = FALSE, + credential_list = list(regio = c(username = "bar", username = "foo"), + genesis = c(username = "foo", username = "bar"))), + regexp = "Every database that is requested in the parameter 'database' needs its own list entry including the entries" + + ) + + #----------------------------------------------------------------------------- + + expect_error( + + result <- gen_catalogue(code = "12*", + database = c("genesis", "zensus"), + category = "tables", + verbose = FALSE, + credential_list = list(genesis = c(username = "foo", password = "bar"))), + regexp = "Not all databases you defined in 'database' are contained in your 'credential_list'" + + ) + +}) + +#------------------------------------------------------------------------------- + +test_that("functions messages correctly on special credential_list parameter values", { + + skip_on_cran() + skip_on_ci() + + #----------------------------------------------------------------------------- + + expect_message( + + expect_error( + + gen_catalogue(code = "12*", + database = "genesis", + credential_list = list(genesis = c(username = "bar", password = "foo"))), + regexp = "No json-csv file detected" + + ), + + regexp = "can be a potential security threat" + + ) + + #----------------------------------------------------------------------------- + + expect_message( + + expect_error( + + result <- gen_catalogue(code = "12*", + database = c("genesis", "zensus"), + category = "tables", + error.ignore = TRUE, + verbose = FALSE, + credential_list = list(genesis = c(username = "foo", password = "bar"))), + regexp = "No json-csv file detected." + + ), + + regexp = "Functions continues with those available" + + ) + +}) + +#------------------------------------------------------------------------------- + +test_that("restatis functions respond correctly to ill-defined credential_list", { skip_on_cran() skip_on_ci() @@ -10,12 +123,12 @@ test_that("restatis functions respond correctly to ill-defined credentials_list" expect_error(gen_objects2var(code = "7DLAND", database = "genesis", credential_list = c("genesis" = "foobar")), - regex = "Parameter 'credential_list' has to be of type list if 'credential_type'.") + regex = "Parameter 'credential_list' has to be of type 'list' if 'credential_type' is set.") expect_error(gen_objects2var(code = "7DLAND", database = "genesis", credential_list = list("regio" = c("password" = "foo", "username" = "bar"))), - regex = "The following databases are not accessible to you") + regex = "Not all databases you defined in 'database' are contained in your 'credential_list'") }) diff --git a/tests/testthat/test_credentials_list.R b/tests/testthat/test_credentials_list.R deleted file mode 100644 index 6fd9c45..0000000 --- a/tests/testthat/test_credentials_list.R +++ /dev/null @@ -1,110 +0,0 @@ -test_that("functions error correctly on erroneous credential_list parameter values", { - - #----------------------------------------------------------------------------- - - expect_error( - - result <- gen_catalogue(code = "12*", - database = "genesis", - verbose = FALSE, - credential_list = list(regio = c(username = "bar", password = "foo"))), - regexp = "Not all databases you defined in 'database' are contained in your 'credential_list'." - - ) - - expect_error( - - result <- gen_catalogue(code = "12*", - database = c("genesis", "zensus"), - category = "tables", - verbose = FALSE, - credential_list = list(regio = c(username = "bar", password = "foo"), - nrw = c(username = "foo", password = "bar"), - bayern = c(username = "foo", password = "bar"))), - regexp = "Not all databases you defined in 'database' are contained in your 'credential_list'" - - ) - - expect_error( - - result <- gen_catalogue(code = "12*", - database = c("genesis", "zensus"), - category = "tables", - verbose = FALSE, - credential_list = list(genesis = c(username = "bar", password = "foo"), - zensus = c(username = "foo", password = "bar"))), - regexp = "No json-csv file detected." - - ) - - expect_error( - - result <- gen_catalogue(code = "12*", - database = c("genesis", "regio"), - verbose = FALSE, - credential_list = list(regio = c(username = "bar", username = "foo"), - genesis = c(username = "foo", username = "bar"))), - regexp = "Every database that is requested in the parameter 'database' needs its own list entry including the entries" - - ) - - #----------------------------------------------------------------------------- - - expect_error( - - result <- gen_catalogue(code = "12*", - database = c("genesis", "zensus"), - category = "tables", - verbose = FALSE, - credential_list = list(genesis = c(username = "foo", password = "bar"))), - regexp = "You have defined more databases in 'database' than you have in your 'credential_list'." - - ) - -}) - -#------------------------------------------------------------------------------- - -test_that("functions messages correctly on special credential_list parameter values", { - - skip_on_cran() - skip_on_ci() - - #----------------------------------------------------------------------------- - - expect_message( - - expect_error( - - gen_catalogue(code = "12*", - database = "genesis", - credential_list = list(genesis = c(username = "bar", password = "foo"))), - regexp = "No json-csv file detected" - - ), - - regexp = "can be a potential security threat" - - ) - - #----------------------------------------------------------------------------- - - expect_message( - - expect_error( - - result <- gen_catalogue(code = "12*", - database = c("genesis", "zensus"), - category = "tables", - error.ignore = TRUE, - verbose = FALSE, - credential_list = list(genesis = c(username = "foo", password = "bar"))), - regexp = "No json-csv file detected." - - ), - - regexp = "The function continues with those available" - - ) - -}) diff --git a/tests/testthat/test_databases.R b/tests/testthat/test_databases.R new file mode 100644 index 0000000..8252163 --- /dev/null +++ b/tests/testthat/test_databases.R @@ -0,0 +1,48 @@ +#------------------------------------------------------------------------------- +# Test basic functionality for databases other than genesis, regio and zensus +#------------------------------------------------------------------------------- + +test_that("the 'nrw' database performs as expected", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + + expect_type( + + res1 <- gen_find(term = "diagnose", + database = "nrw", + category = "tables"), + type = "list" + + ) + + expect_s3_class( + + res2 <- gen_table(name = "23131-03i", + database = "nrw", + startyear = 2024), + class = "data.frame" + + ) + + expect_type( + + res3 <- gen_catalogue(code = "", + database = "nrw", + category = "cubes"), + type = "list" + + ) + + expect_s3_class( + + res4 <- gen_cube(name = "11111GJ001", + database = "nrw"), + class = "data.frame" + + ) + +}) + +#------------------------------------------------------------------------------- From ad67a14a6e449a7bef31b4128050e7a5f2086950 Mon Sep 17 00:00:00 2001 From: buhly Date: Mon, 9 Feb 2026 09:55:54 +0100 Subject: [PATCH 16/26] readme, tests --- README.Rmd | 2 +- tests/testthat/test_databases.R | 119 ++++++++++++++++++++++++++++++++ 2 files changed, 120 insertions(+), 1 deletion(-) diff --git a/README.Rmd b/README.Rmd index e4c73a5..f7ab689 100644 --- a/README.Rmd +++ b/README.Rmd @@ -37,7 +37,7 @@ Almost all functions work on either one of them, on all of them or just on a sel #### Current (known) performance issues - The function `gen_download_job` currently does not work in the CRAN release version for the GENESIS database. This is because the mode of downloading the tables has changed. A fix has been deployed to the development version and will be coming with the next CRAN update. -- It might be that the creation of jobs with `gen_table` is currently buggy in the release version (jobs not being created despite of `job = TRUE`). A fix has been deployed to the development version and will be coming with the next CRAN update. +- The CSV files currently returned by the 'bayern' database (this affects `gen_table()`) appear to be slightly corrupted. This might cause warnings stemming from {vroom}. These can be ignored, but users have to carefully check the resulting `data.frames`. Use `vroom::problems()` to check the data objects for more information. ## Installation diff --git a/tests/testthat/test_databases.R b/tests/testthat/test_databases.R index 8252163..4e46244 100644 --- a/tests/testthat/test_databases.R +++ b/tests/testthat/test_databases.R @@ -46,3 +46,122 @@ test_that("the 'nrw' database performs as expected", { }) #------------------------------------------------------------------------------- + +test_that("the 'bayern' database performs as expected", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + + expect_type( + + res1 <- gen_find(term = "bus*", + database = "bayern", + category = "tables"), + type = "list" + + ) + + expect_s3_class( + + res2 <- gen_table(name = "61111-301z", + database = "bayern", + startyear = 2021, + endyear = 2022), + class = "data.frame" + + ) + + expect_type( + + res3 <- gen_catalogue(code = "23*", + database = "bayern"), + type = "list" + + ) + +}) + +#------------------------------------------------------------------------------- + +test_that("the 'st' database performs as expected", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + + expect_type( + + res1 <- gen_find(term = "diagnose", + database = "st", + category = "tables"), + type = "list" + + ) + + expect_s3_class( + + res2 <- gen_table(name = "23211-0001", + database = "st", + startyear = 2021, + endyear = 2022), + class = "data.frame" + + ) + + expect_type( + + res3 <- gen_catalogue(code = "23*", + database = "st"), + type = "list" + + ) + +}) + +#------------------------------------------------------------------------------- + +test_that("the 'bildung' database performs as expected", { + + skip_on_ci() + skip_on_cran() + skip_if_offline() + + expect_type( + + res1 <- gen_find(term = "realschule", + database = "bildung", + category = "tables"), + type = "list" + + ) + + expect_s3_class( + + res2 <- gen_table(name = "BW-D07.1i", + database = "bildung", + startyear = 2024), + class = "data.frame" + + ) + + expect_type( + + res3 <- gen_catalogue(code = "", + database = "bildung", + category = "cubes"), + type = "list" + + ) + + # This does not work yet, I can't get the cubes to be parsed + # expect_s3_class( + # + # res4 <- gen_cube(name = "02--A014C", + # startyear = 2023, + # database = "nrw"), + # class = "data.frame" + # + # ) + +}) From 16690356859c7428b7ee3af97afcbf744381eb32 Mon Sep 17 00:00:00 2001 From: buhly Date: Mon, 16 Feb 2026 21:50:27 +0100 Subject: [PATCH 17/26] cleanup, tests --- DESCRIPTION | 5 ++-- R/gen_jobs.R | 10 +++---- R/utils_api_calls.R | 12 ++++---- README.Rmd | 26 ++++++++++++----- README.md | 50 +++++++++++++++++++++++---------- man/gen_download_job.Rd | 4 +-- man/gen_list_jobs.Rd | 2 +- man/restatis-package.Rd | 2 +- tests/testthat/test_databases.R | 19 +++++++------ 9 files changed, 81 insertions(+), 49 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 53949e3..947aa15 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -12,9 +12,8 @@ Authors@R: c( comment = c(ORCID = "0000-0001-8878-7386")), person("Johannes", "Ritter", , "ritter.johannes@gmail.com", role = "aut") ) -Description: A RESTful API wrapper for accessing the GENESIS database of - the German Federal Statistical Office (Destatis) as well as its Census - Database and the database of Germany's regional statistics. Supports data +Description: A RESTful API wrapper for accessing the main databases of + Germany's Federal Statistical System. Supports data search functions, credential management, result caching, and handling remote background jobs for large datasets. License: MIT + file LICENSE diff --git a/R/gen_jobs.R b/R/gen_jobs.R index 72dc148..66efd2c 100644 --- a/R/gen_jobs.R +++ b/R/gen_jobs.R @@ -2,7 +2,7 @@ #' #' @description Function to list all current jobs connected to the given user in the GENESIS or regionalstatistik.de database. Important note: For this function it is also possible to use `searchcriterion` parameter and `selection` parameter, making it possible to filter the job list based on 'type','time','status' or 'code'. For more details see `vignette("additional_parameter")`. #' -#' @param database Character string. Indicator if GENESIS or regionalstatistik.de database is called. Accepts only one database ('regio' or 'genesis'). +#' @param database Character string. Indicator which database should be called. Accepts only one database. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'type','time','status' or 'code'. This is a parameter of the API call itself. The default is 'type'. #' @param flat Boolean. Should the function return a list with jobs and metadata ('FALSE') or just a flat data.frame ('TRUE')? Defaults to FALSE. #' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. @@ -31,7 +31,7 @@ gen_list_jobs <- function(database, # Input checks if (missing(database)) { - stop("You have to specify a value for 'database' ('regio' or 'genesis').", + stop("You have to specify a value for 'database' ('regio', 'genesis', 'bayern', 'st', 'nrw' or 'bildung').", call. = FALSE) } @@ -42,7 +42,7 @@ gen_list_jobs <- function(database, error.input = error.ignore, text = verbose) - if (any(!(database_vector %in% c("genesis", "regio")))) { + if (any(!(database_vector %in% c("genesis", "regio", "bayern", "st", "nrw", "bildung")))) { stop("This function allows only two values of 'database': 'genesis' or 'regio'.", call. = FALSE) @@ -118,7 +118,7 @@ gen_list_jobs <- function(database, #' gen_download_job #' #' @param name Character string. The job code retrieved by using gen_list_jobs(). -#' @param database Character string. Indicator if the GENESIS ('genesis') or regionalstatistik.de ('regio') database is called. Only one database can be addressed per function call. Default option is 'genesis'. +#' @param database Character string. Indicator which database should be called. Only one database can be addressed per function call. Default option is 'genesis'. #' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. #' @param compress Boolean. Should empty rows and columns be discarded? Default is FALSE. @@ -134,7 +134,7 @@ gen_list_jobs <- function(database, #' } #' gen_download_job <- function(name, - database = c("genesis", "regio"), + database = c("genesis", "regio", "bayern", "st", "nrw", "bildung"), credential_list = NULL, area = c("all", "public", "user"), compress = FALSE, diff --git a/R/utils_api_calls.R b/R/utils_api_calls.R index 5cababe..b4c906c 100644 --- a/R/utils_api_calls.R +++ b/R/utils_api_calls.R @@ -271,18 +271,18 @@ return_table_object <- function(response, if (response_parsed$Status$Code == 98) { - error_message <- paste0("You have requested a table too big for simple download. \n", - "Consider making a range of smaller requests or use the \n", - "option to create a job by setting the 'job' parameter \n", - "of 'gen_table()' to TRUE. You can then download the job \n", - "later (use the function 'gen_list_jobs()' to check its status) \n", + error_message <- paste0("You have requested a table too big for simple download. ", + "Consider making a range of smaller requests or use the ", + "option to create a job by setting the 'job' parameter ", + "of 'gen_table()' to TRUE. You can then download the job ", + "later (use the function 'gen_list_jobs()' to check its status) ", "and download it using gen_download_job().") stop(error_message, call. = FALSE) } else if (response_parsed$Status$Code == 99) { - message <- paste0("You have successfully created a job with \n", + message <- paste0("You have successfully created a job with ", "your request. Use the function 'gen_list_jobs()' ", "to check its status and download it once completed.") diff --git a/README.Rmd b/README.Rmd index f7ab689..82a5994 100644 --- a/README.Rmd +++ b/README.Rmd @@ -23,11 +23,11 @@ knitr::opts_chunk$set( [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) -**{restatis}** is a wrapper around the RESTful APIs that provide access to the three main databases of German official statistics: +**{restatis}** is a wrapper around the RESTful APIs that provide access to the main databases of German official statistics: -- The [**GENESIS database** of the Federal Statistical Office of Germany (Destatis)](https://www-genesis.destatis.de/genesis/online), -- [**regionalstatistik.de**, which is the database of the German Länder (Regionaldatenbank)](https://www.regionalstatistik.de/genesis/online/), -- The [database of the **German 2022 Census** (Zensus 2022)](https://ergebnisse.zensus2022.de/datenbank/online/). +- The [**GENESIS database** of the Federal Statistical Office of Germany (Destatis)](https://www-genesis.destatis.de/genesis/online) +- [**regionalstatistik.de**, which is the database of the German Länder (Regionaldatenbank)](https://www.regionalstatistik.de/genesis/online/) +- The [database of the **German 2022 Census** (Zensus 2022)](https://ergebnisse.zensus2022.de/datenbank/online/) - The [**Kommunale Bildungsdatenbank**](https://www.bildungsmonitoring.de/bildung/online/) - The [**Landesdatenbank NRW**](https://www.landesdatenbank.nrw.de/) - The [Datenbank des **Bayerischen Landesamtes für Statistik**](https://www.statistikdaten.bayern.de/genesis/online) @@ -35,8 +35,20 @@ knitr::opts_chunk$set( Almost all functions work on either one of them, on all of them or just on a selection. -#### Current (known) performance issues -- The function `gen_download_job` currently does not work in the CRAN release version for the GENESIS database. This is because the mode of downloading the tables has changed. A fix has been deployed to the development version and will be coming with the next CRAN update. +`{restatis}` uses shortcuts in its functions to specify the databases in the `database` parameter (e.g., `gen_table(name = "1234-0001", database = "regio")`). The respective shortcuts are the following: + +| Database | Shortcut | +|----------|----------| +| GENESIS (Federal Statistical Office of Germany) | genesis | +| Regionaldatenbank (regionalstatistik.de) | regio | +| German Census 2022 | zensus | +| Kommunale Bildungsdatenbank | bildung | +| Landesdatenbank NRW | nrw | +| Datenbank des Bayerischen Landesamtes für Statistik | bayern | +| Datenbank des Statistischen Landesamtes Sachsen-Anhalt | st | + +#### Current information and (known) issues +- It is unclear whether the databases of Sachsen-Anhalt ('st'), Bayern ('bayern'), Nordrhein-Westfalen ('nrw') and Kommunale sBildungsmonitoring ('bildung') support the creation of jobs. This is because it is sometimes hard to create large enough tables on a test basis. The package supports their creation and download for all databases mentioned, but there might be issues because of lack of tests. - The CSV files currently returned by the 'bayern' database (this affects `gen_table()`) appear to be slightly corrupted. This might cause warnings stemming from {vroom}. These can be ignored, but users have to carefully check the resulting `data.frames`. Use `vroom::problems()` to check the data objects for more information. ## Installation @@ -88,7 +100,7 @@ res2 <- restatis::gen_find(term = "krankenhäuser", ``` -You have to make sure that the database(s) you specify in `database` is/are listed in `credential_list`, otherwise the function call fails. In some cases, you can specify the `error.ignore` parameter. If it is set to `TRUE`, the function will continue to execute for those databases that are available, even if some are not. +You have to make sure that the database(s) you specify in `database` is/are listed in `credential_list`, otherwise the function call fails. In some cases, you can specify the `error.ignore` parameter. If it is set to `TRUE`, the function will continue to execute for those databases that are available, even if some are not. *Note that `credentials_list` does (currently) not support the use of API tokens.* ### Main features diff --git a/README.md b/README.md index 0871372..023b2fb 100644 --- a/README.md +++ b/README.md @@ -16,14 +16,14 @@ experimental](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](h **{restatis}** is a wrapper around the RESTful APIs that provide access -to the three main databases of German official statistics: +to the main databases of German official statistics: - The [**GENESIS database** of the Federal Statistical Office of Germany - (Destatis)](https://www-genesis.destatis.de/genesis/online), + (Destatis)](https://www-genesis.destatis.de/genesis/online) - [**regionalstatistik.de**, which is the database of the German Länder - (Regionaldatenbank)](https://www.regionalstatistik.de/genesis/online/), + (Regionaldatenbank)](https://www.regionalstatistik.de/genesis/online/) - The [database of the **German 2022 Census** (Zensus - 2022)](https://ergebnisse.zensus2022.de/datenbank/online/). + 2022)](https://ergebnisse.zensus2022.de/datenbank/online/) - The [**Kommunale Bildungsdatenbank**](https://www.bildungsmonitoring.de/bildung/online/) - The [**Landesdatenbank NRW**](https://www.landesdatenbank.nrw.de/) @@ -35,16 +35,35 @@ to the three main databases of German official statistics: Almost all functions work on either one of them, on all of them or just on a selection. -#### Current (known) performance issues - -- The function `gen_download_job` currently does not work in the CRAN - release version for the GENESIS database. This is because the mode of - downloading the tables has changed. A fix has been deployed to the - development version and will be coming with the next CRAN update. -- It might be that the creation of jobs with `gen_table` is currently - buggy in the release version (jobs not being created despite of - `job = TRUE`). A fix has been deployed to the development version and - will be coming with the next CRAN update. +`{restatis}` uses shortcuts in its functions to specify the databases in +the `database` parameter (e.g., +`gen_table(name = "1234-0001", database = "regio")`). The respective +shortcuts are the following: + +| Database | Shortcut | +|--------------------------------------------------------|----------| +| GENESIS (Federal Statistical Office of Germany) | genesis | +| Regionaldatenbank (regionalstatistik.de) | regio | +| German Census 2022 | zensus | +| Kommunale Bildungsdatenbank | bildung | +| Landesdatenbank NRW | nrw | +| Datenbank des Bayerischen Landesamtes für Statistik | bayern | +| Datenbank des Statistischen Landesamtes Sachsen-Anhalt | st | + +#### Current information and (known) issues + +- It is unclear whether the databases of Sachsen-Anhalt (‘st’), Bayern + (‘bayern’), Nordrhein-Westfalen (‘nrw’) and Kommunale + sBildungsmonitoring (‘bildung’) support the creation of jobs. This is + because it is sometimes hard to create large enough tables on a test + basis. The package supports their creation and download for all + databases mentioned, but there might be issues because of lack of + tests. +- The CSV files currently returned by the ‘bayern’ database (this + affects `gen_table()`) appear to be slightly corrupted. This might + cause warnings stemming from {vroom}. These can be ignored, but users + have to carefully check the resulting `data.frames`. Use + `vroom::problems()` to check the data objects for more information. ## Installation @@ -127,7 +146,8 @@ You have to make sure that the database(s) you specify in `database` is/are listed in `credential_list`, otherwise the function call fails. In some cases, you can specify the `error.ignore` parameter. If it is set to `TRUE`, the function will continue to execute for those databases -that are available, even if some are not. +that are available, even if some are not. *Note that `credentials_list` +does (currently) not support the use of API tokens.* ### Main features diff --git a/man/gen_download_job.Rd b/man/gen_download_job.Rd index 13b9d0a..8f18f97 100644 --- a/man/gen_download_job.Rd +++ b/man/gen_download_job.Rd @@ -6,7 +6,7 @@ \usage{ gen_download_job( name, - database = c("genesis", "regio"), + database = c("genesis", "regio", "bayern", "st", "nrw", "bildung"), credential_list = NULL, area = c("all", "public", "user"), compress = FALSE, @@ -17,7 +17,7 @@ gen_download_job( \arguments{ \item{name}{Character string. The job code retrieved by using gen_list_jobs().} -\item{database}{Character string. Indicator if the GENESIS ('genesis') or regionalstatistik.de ('regio') database is called. Only one database can be addressed per function call. Default option is 'genesis'.} +\item{database}{Character string. Indicator which database should be called. Only one database can be addressed per function call. Default option is 'genesis'.} \item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} diff --git a/man/gen_list_jobs.Rd b/man/gen_list_jobs.Rd index 8142212..1dc37a7 100644 --- a/man/gen_list_jobs.Rd +++ b/man/gen_list_jobs.Rd @@ -15,7 +15,7 @@ gen_list_jobs( ) } \arguments{ -\item{database}{Character string. Indicator if GENESIS or regionalstatistik.de database is called. Accepts only one database ('regio' or 'genesis').} +\item{database}{Character string. Indicator which database should be called. Accepts only one database.} \item{sortcriterion}{Character string. Indicator if the output should be sorted by 'type','time','status' or 'code'. This is a parameter of the API call itself. The default is 'type'.} diff --git a/man/restatis-package.Rd b/man/restatis-package.Rd index 36ad1fe..2499519 100644 --- a/man/restatis-package.Rd +++ b/man/restatis-package.Rd @@ -6,7 +6,7 @@ \alias{restatis-package} \title{restatis: R Wrapper to Access a Wide Range of Germany's Federal Statistical System Databases Based on the GENESIS Web Service RESTful API of the German Federal Statistical Office (Statistisches Bundesamt/Destatis)} \description{ -A RESTful API wrapper for accessing the GENESIS database of the German Federal Statistical Office (Destatis) as well as its Census Database and the database of Germany's regional statistics. Supports data search functions, credential management, result caching, and handling remote background jobs for large datasets. +A RESTful API wrapper for accessing the main databases of Germany's Federal Statistical System. Supports data search functions, credential management, result caching, and handling remote background jobs for large datasets. } \seealso{ Useful links: diff --git a/tests/testthat/test_databases.R b/tests/testthat/test_databases.R index 4e46244..486acb7 100644 --- a/tests/testthat/test_databases.R +++ b/tests/testthat/test_databases.R @@ -2,6 +2,8 @@ # Test basic functionality for databases other than genesis, regio and zensus #------------------------------------------------------------------------------- +# As of Feb. 2026 these are: "nrw", "bayern", "st", and "bildung" + test_that("the 'nrw' database performs as expected", { skip_on_ci() @@ -154,14 +156,13 @@ test_that("the 'bildung' database performs as expected", { ) - # This does not work yet, I can't get the cubes to be parsed - # expect_s3_class( - # - # res4 <- gen_cube(name = "02--A014C", - # startyear = 2023, - # database = "nrw"), - # class = "data.frame" - # - # ) + expect_s3_class( + + res4 <- gen_cube(name = "02--A014C", + startyear = 2023, + database = "bildung"), + class = "data.frame" + + ) }) From e4b5acb858c0dc9126e71667689e46059905d099 Mon Sep 17 00:00:00 2001 From: buhly Date: Tue, 17 Feb 2026 23:34:28 +0100 Subject: [PATCH 18/26] spent hours with a tiny error tf --- inst/httptest2/redact.R | 2 +- .../catalogue/tables-86e7c4-278e28-POST.json | 119 ++++++++++++++++++ 2 files changed, 120 insertions(+), 1 deletion(-) create mode 100644 tests/testthat/catalogue1/api/catalogue/tables-86e7c4-278e28-POST.json diff --git a/inst/httptest2/redact.R b/inst/httptest2/redact.R index dfb297f..d4ac8b9 100644 --- a/inst/httptest2/redact.R +++ b/inst/httptest2/redact.R @@ -5,7 +5,7 @@ set_redactor(function(request) { first_part <- paste0(strsplit(request_string, split = "\\?")[[1]][1], "?") second_part <- strsplit(request_string, split = "\\?")[[1]][2] split <- strsplit(second_part, split = "&") %>% unlist - credentials <- grepl(split, grepl, pattern = "password|username") + credentials <- grepl(pattern = "password|username", x = split) string <- split[!credentials] final_string <- paste0(first_part, paste0("username=ABCDEF&password=1234abcd&username=ABCDEF&password=1234abcd"), diff --git a/tests/testthat/catalogue1/api/catalogue/tables-86e7c4-278e28-POST.json b/tests/testthat/catalogue1/api/catalogue/tables-86e7c4-278e28-POST.json new file mode 100644 index 0000000..4f3cee0 --- /dev/null +++ b/tests/testthat/catalogue1/api/catalogue/tables-86e7c4-278e28-POST.json @@ -0,0 +1,119 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "tables" + }, + "Status": { + "Code": 0, + "Content": "successfull", + "Type": "information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "selection": "611*", + "area": "all", + "searchcriterion": "code", + "sortcriterion": "code", + "pagelength": "500", + "language": "en" + }, + "List": [ + { + "Code": "61111-0001", + "Content": "Consumer price index: Germany, years", + "Time": "1991 to 2025" + }, + { + "Code": "61111-0002", + "Content": "Consumer price index: Germany, months", + "Time": "January 1991 to January 2026" + }, + { + "Code": "61111-0003", + "Content": "Consumer price index: Germany, years, individual consumption\nby purpose (COICOP 2-5-digit hierarchy)", + "Time": "1991 to 2025" + }, + { + "Code": "61111-0004", + "Content": "Consumer price index: Germany, months, individual\nconsumption by purpose (COICOP 2-5-digit hierarchy)", + "Time": "January 1991 to January 2026" + }, + { + "Code": "61111-0005", + "Content": "Consumer price index: Germany, years, individual consumption\nby purpose (COICOP 2-/3-/4-/5-/10-digit codes/special items)", + "Time": "1991 to 2025" + }, + { + "Code": "61111-0006", + "Content": "Consumer price index: Germany, months, individual\nconsumption by purpose (COICOP 2-/3-/4-/5-/10-digit codes/\nspecial items)", + "Time": "January 1991 to January 2026" + }, + { + "Code": "61111-0007", + "Content": "Weighting scheme of the consumer price index: Germany,\nyears, individual consumption by purpose (COICOP 2-5-digit\nhierarchy)", + "Time": "2020 to 2020" + }, + { + "Code": "61111-0010", + "Content": "Consumer price index: Länder, years", + "Time": "1995 to 2025" + }, + { + "Code": "61111-0011", + "Content": "Consumer price index: Länder, months", + "Time": "January 1995 to January 2026" + }, + { + "Code": "61111-0020", + "Content": "Index of net rents exclusive of heating expenses:\nLänder, years", + "Time": "2005 to 2025" + }, + { + "Code": "61111-0021", + "Content": "Index of net rents exclusive of heating expenses:\nLänder, months", + "Time": "January 2005 to January 2026" + }, + { + "Code": "61121-0001", + "Content": "Harmonised index of consumer prices: Germany, years", + "Time": "" + }, + { + "Code": "61121-0002", + "Content": "Harmonised index of consumer prices: Germany, months", + "Time": "January 2026 to January 2026" + }, + { + "Code": "61121-0003", + "Content": "Harmonised index of consumer prices: Germany, years,\nEuropean classification of individual consumption by purpose\n(ECOICOP 2-5-digit hierarchy)", + "Time": "January 2026 to January 2026" + }, + { + "Code": "61121-0004", + "Content": "Harmonised index of consumer prices: Germany, months,\nEuropean classification of individual consumption by purpose\n(ECOICOP 2-5-digit hierarchy)", + "Time": "January 2026 to January 2026" + }, + { + "Code": "61121-0005", + "Content": "Harmonised index of consumer prices: Germany, years,\nEuropean classification of individual consumption by purpose\n(ECOICOP 2-/3-/4-/5-digit codes/special items)", + "Time": "January 2026 to January 2026" + }, + { + "Code": "61121-0006", + "Content": "Harmonised index of consumer prices: Germany, months,\nEuropean classification of individual consumption by purpose\n(ECOICOP 2-/3-/4-/5-digit codes/special items)", + "Time": "January 2026 to January 2026" + }, + { + "Code": "61131-0001", + "Content": "Index of retail prices: Germany, years, value added tax,\neconomic activities", + "Time": "1991 to 2025" + }, + { + "Code": "61131-0002", + "Content": "Index of retail prices: Germany, months, value added tax,\neconomic activities", + "Time": "January 1991 to January 2026" + } + ], + "Copyright": "© Federal Statistical Office, Wiesbaden 2026" +} From d5e0ada5aafe87352f5fca46244ae37e7261ae0f Mon Sep 17 00:00:00 2001 From: buhly Date: Wed, 18 Feb 2026 23:38:48 +0100 Subject: [PATCH 19/26] fix tests --- DESCRIPTION | 3 +- .../statistics-86e7c4-faf96e-POST.json | 30 + .../catalogue/cubes-86e7c4-8f25d5-POST.json | 21 + .../catalogue/cubes-86e7c4-b16da7-POST.json | 262 ++ .../statistics-86e7c4-7ed29c-POST.json | 42 + .../catalogue/tables-86e7c4-31aabf-POST.json | 119 + .../catalogue/tables-86e7c4-7a7d7b-POST.json | 54 + .../api/data/cubefile-86e7c4-bdf8da-POST.csv | 327 ++ .../api/find/find-86e7c4-3a9778-POST.json | 960 ++++ .../api/find/find-86e7c4-04539a-POST.json | 357 ++ .../api/find/find-86e7c4-25f401-POST.json | 604 --- .../api/find/find-86e7c4-8e8e6f-POST.json | 33 + .../metadata/table-86e7c4-b5d932-POST.json | 78 + ...POST.json => cube-86e7c4-8e9b02-POST.json} | 9 +- .../modifieddata-86e7c4-70191d-POST.json | 31 + .../modifieddata-86e7c4-ce75f1-POST.json | 25 + .../modifieddata-86e7c4-b43eca-POST.json | 23 + .../variables-86e7c4-582c7a-POST.json | 3525 +++++++++++++++ .../api/data/tablefile-86e7c4-23a648-POST.R | 48 + .../catalogue/terms-86e7c4-cc5715-POST.json | 157 + tests/testthat/test_complete_workflows.R | 24 +- tests/testthat/test_databases.R | 72 +- tests/testthat/test_gen_cube.R | 6 +- tests/testthat/test_gen_find.R | 4 + tests/testthat/test_gen_metadata.R | 4 + tests/testthat/test_gen_var2stat.R | 11 +- .../values2variable-86e7c4-26839d-POST.json | 24 + .../values2variable-86e7c4-332fef-POST.json | 121 + ...ariables2statistic-86e7c4-e636f0-POST.json | 117 + ...riables2statistic-86e7c4-ca7b2f-POST.json} | 16 +- ...ariables2statistic-86e7c4-5c3930-POST.json | 117 + .../cubes2statistic-86e7c4-6d93aa-POST.json | 199 + .../tables2statistic-86e7c4-6d93aa-POST.json | 78 + ...ariables2statistic-86e7c4-6d93aa-POST.json | 117 + ...tatistics2variable-86e7c4-a6b6cb-POST.json | 1135 +++++ .../tables2variable-86e7c4-a6b6cb-POST.json | 2523 +++++++++++ ...imeseries2variable-86e7c4-a6b6cb-POST.json | 4023 +++++++++++++++++ 37 files changed, 14640 insertions(+), 659 deletions(-) create mode 100644 tests/testthat/catalogue2/api/catalogue/statistics-86e7c4-faf96e-POST.json create mode 100644 tests/testthat/catalogue3/api/catalogue/cubes-86e7c4-8f25d5-POST.json create mode 100644 tests/testthat/catalogue4/api/catalogue/cubes-86e7c4-b16da7-POST.json create mode 100644 tests/testthat/catalogue4/api/catalogue/statistics-86e7c4-7ed29c-POST.json create mode 100644 tests/testthat/catalogue4/api/catalogue/tables-86e7c4-31aabf-POST.json create mode 100644 tests/testthat/catalogue5/api/catalogue/tables-86e7c4-7a7d7b-POST.json create mode 100644 tests/testthat/cube1/api/data/cubefile-86e7c4-bdf8da-POST.csv create mode 100644 tests/testthat/find1/api/find/find-86e7c4-3a9778-POST.json create mode 100644 tests/testthat/find2_fake/api/find/find-86e7c4-04539a-POST.json delete mode 100644 tests/testthat/find2_fake/api/find/find-86e7c4-25f401-POST.json create mode 100644 tests/testthat/find3/api/find/find-86e7c4-8e8e6f-POST.json create mode 100644 tests/testthat/meta1/api/metadata/table-86e7c4-b5d932-POST.json rename tests/testthat/meta2_fake/api/metadata/{cube-86e7c4-10d572-POST.json => cube-86e7c4-8e9b02-POST.json} (93%) create mode 100644 tests/testthat/modified1/api/catalogue/modifieddata-86e7c4-70191d-POST.json create mode 100644 tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-ce75f1-POST.json create mode 100644 tests/testthat/modified4/api/catalogue/modifieddata-86e7c4-b43eca-POST.json create mode 100644 tests/testthat/searchvars1/api/catalogue/variables-86e7c4-582c7a-POST.json create mode 100644 tests/testthat/table1/api/data/tablefile-86e7c4-23a648-POST.R create mode 100644 tests/testthat/terms1/api/catalogue/terms-86e7c4-cc5715-POST.json create mode 100644 tests/testthat/values1/api/catalogue/values2variable-86e7c4-26839d-POST.json create mode 100644 tests/testthat/values2/api/catalogue/values2variable-86e7c4-332fef-POST.json create mode 100644 tests/testthat/variables1/api/catalogue/variables2statistic-86e7c4-e636f0-POST.json rename tests/testthat/variables2_fake/api/catalogue/{variables2statistic-86e7c4-99c71e-POST.json => variables2statistic-86e7c4-ca7b2f-POST.json} (86%) create mode 100644 tests/testthat/variables3/api/catalogue/variables2statistic-86e7c4-5c3930-POST.json create mode 100644 tests/testthat/xy_statistic1/api/catalogue/cubes2statistic-86e7c4-6d93aa-POST.json create mode 100644 tests/testthat/xy_statistic1/api/catalogue/tables2statistic-86e7c4-6d93aa-POST.json create mode 100644 tests/testthat/xy_statistic1/api/catalogue/variables2statistic-86e7c4-6d93aa-POST.json create mode 100644 tests/testthat/xy_variable1/api/catalogue/statistics2variable-86e7c4-a6b6cb-POST.json create mode 100644 tests/testthat/xy_variable1/api/catalogue/tables2variable-86e7c4-a6b6cb-POST.json create mode 100644 tests/testthat/xy_variable1/api/catalogue/timeseries2variable-86e7c4-a6b6cb-POST.json diff --git a/DESCRIPTION b/DESCRIPTION index 947aa15..f34e61d 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -10,7 +10,8 @@ Authors@R: c( person("Dorian", "Le Jeune", role = "aut"), person("Long", "Nguyen", , "long.nguyen@uni-bielefeld.de", role = "aut", comment = c(ORCID = "0000-0001-8878-7386")), - person("Johannes", "Ritter", , "ritter.johannes@gmail.com", role = "aut") + person("Johannes", "Ritter", , "ritter.johannes@gmail.com", role = "aut"), + person("Stefan", "Linner", , "stefan@linnerprogramming.com", role = "ctb") ) Description: A RESTful API wrapper for accessing the main databases of Germany's Federal Statistical System. Supports data diff --git a/tests/testthat/catalogue2/api/catalogue/statistics-86e7c4-faf96e-POST.json b/tests/testthat/catalogue2/api/catalogue/statistics-86e7c4-faf96e-POST.json new file mode 100644 index 0000000..f9f2517 --- /dev/null +++ b/tests/testthat/catalogue2/api/catalogue/statistics-86e7c4-faf96e-POST.json @@ -0,0 +1,30 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "statistics" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "selection": "41141", + "searchcriterion": "Code", + "sortcriterion": "Code", + "pagelength": "500", + "language": "de", + "area": "Alle" + }, + "List": [ + { + "Code": "41141", + "Content": "Landwirtschaftszählung: Haupterhebung", + "Cubes": "176", + "Information": "true" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/catalogue3/api/catalogue/cubes-86e7c4-8f25d5-POST.json b/tests/testthat/catalogue3/api/catalogue/cubes-86e7c4-8f25d5-POST.json new file mode 100644 index 0000000..451a157 --- /dev/null +++ b/tests/testthat/catalogue3/api/catalogue/cubes-86e7c4-8f25d5-POST.json @@ -0,0 +1,21 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "cubes" + }, + "Status": { + "Code": 104, + "Content": "Es gibt keine Objekte zum angegebenen Selektionskriterium", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "selection": "41141", + "area": "Alle", + "pagelength": "500", + "language": "de" + }, + "List": null, + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/catalogue4/api/catalogue/cubes-86e7c4-b16da7-POST.json b/tests/testthat/catalogue4/api/catalogue/cubes-86e7c4-b16da7-POST.json new file mode 100644 index 0000000..c57ac01 --- /dev/null +++ b/tests/testthat/catalogue4/api/catalogue/cubes-86e7c4-b16da7-POST.json @@ -0,0 +1,262 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "cubes" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "selection": "611*", + "area": "Alle", + "pagelength": "500", + "language": "de" + }, + "List": [ + { + "Code": "61111B5001", + "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 2-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020", + "LatestUpdate": "18.04.2024 13:34:49h", + "Information": "false" + }, + { + "Code": "61111B5002", + "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 3-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020", + "LatestUpdate": "18.04.2024 13:35:14h", + "Information": "false" + }, + { + "Code": "61111B5003", + "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 4-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020", + "LatestUpdate": "18.04.2024 13:35:42h", + "Information": "false" + }, + { + "Code": "61111B5004", + "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 5-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020", + "LatestUpdate": "18.04.2024 13:36:07h", + "Information": "false" + }, + { + "Code": "61111BJ001", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Jahr", + "State": "vollständig mit Werten", + "Time": "1991-2025", + "LatestUpdate": "15.01.2026 18:03:33h", + "Information": "false" + }, + { + "Code": "61111BJ002", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 2-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "1991-2025", + "LatestUpdate": "15.01.2026 18:01:59h", + "Information": "false" + }, + { + "Code": "61111BJ003", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 3-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "1991-2025", + "LatestUpdate": "15.01.2026 18:03:27h", + "Information": "false" + }, + { + "Code": "61111BJ004", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 4-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "1991-2025", + "LatestUpdate": "15.01.2026 18:03:51h", + "Information": "false" + }, + { + "Code": "61111BJ005", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 5-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "1991-2025", + "LatestUpdate": "15.01.2026 18:03:47h", + "Information": "false" + }, + { + "Code": "61111BJ006", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszw.d.Individualkonsums,Sonderpositionen, Jahr", + "State": "vollständig mit Werten", + "Time": "1991-2025", + "LatestUpdate": "15.01.2026 18:03:30h", + "Information": "false" + }, + { + "Code": "61111BJ007", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums,10-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020-2025", + "LatestUpdate": "15.01.2026 18:03:44h", + "Information": "false" + }, + { + "Code": "61111BM001", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1991-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:05h", + "Information": "false" + }, + { + "Code": "61111BM002", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 2-Steller, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1991-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:27h", + "Information": "false" + }, + { + "Code": "61111BM003", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 3-Steller, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1991-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:30h", + "Information": "false" + }, + { + "Code": "61111BM004", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 4-Steller, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1991-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:13h", + "Information": "false" + }, + { + "Code": "61111BM005", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 5-Steller, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1991-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:09h", + "Information": "false" + }, + { + "Code": "61111BM006", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszw.d.Individualkonsums,Sonderpositionen, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1991-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:23h", + "Information": "false" + }, + { + "Code": "61111BM007", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums,10-Steller, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2020-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:17h", + "Information": "false" + }, + { + "Code": "61111LJ001", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Bundesländer, Jahr", + "State": "vollständig mit Werten", + "Time": "1995-2025", + "LatestUpdate": "15.01.2026 18:03:40h", + "Information": "false" + }, + { + "Code": "61111LJ100", + "Content": "Verbraucherpreisindex für Deutschland, Index der Nettokaltmieten, Bundesländer, Jahr", + "State": "vollständig mit Werten", + "Time": "2005-2025", + "LatestUpdate": "15.01.2026 18:03:36h", + "Information": "false" + }, + { + "Code": "61111LM001", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Bundesländer, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1995-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:02h", + "Information": "false" + }, + { + "Code": "61111LM100", + "Content": "Verbraucherpreisindex für Deutschland, Index der Nettokaltmieten, Bundesländer, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2005-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:20h", + "Information": "false" + }, + { + "Code": "61121BM001", + "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Veränderungsrate zum Vorjahresmonat, Veränderungsrate zum Vormonat, Deutschland insgesamt, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2026", + "LatestUpdate": "13.02.2026 12:17:05h", + "Information": "false" + }, + { + "Code": "61121BM002", + "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Veränderungsrate zum Vorjahresmonat, Veränderungsrate zum Vormonat, Deutschland insgesamt, ECOICOP V.2: Harmon. Verbraucherpreisindex, 2-St., Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2026", + "LatestUpdate": "13.02.2026 12:17:06h", + "Information": "false" + }, + { + "Code": "61121BM003", + "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Veränderungsrate zum Vorjahresmonat, Veränderungsrate zum Vormonat, Deutschland insgesamt, ECOICOP V.2: Harmon. Verbraucherpreisindex, 3-St., Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2026", + "LatestUpdate": "13.02.2026 12:17:06h", + "Information": "false" + }, + { + "Code": "61121BM004", + "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Veränderungsrate zum Vorjahresmonat, Veränderungsrate zum Vormonat, Deutschland insgesamt, ECOICOP V.2: Harmon. Verbraucherpreisindex, 4-St., Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2026", + "LatestUpdate": "13.02.2026 12:17:06h", + "Information": "false" + }, + { + "Code": "61121BM005", + "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Veränderungsrate zum Vorjahresmonat, Veränderungsrate zum Vormonat, Deutschland insgesamt, ECOICOP V.2: Harmon. Verbraucherpreisindex, 5-St., Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2026", + "LatestUpdate": "13.02.2026 12:17:06h", + "Information": "false" + }, + { + "Code": "61121BM006", + "Content": "Harmonisierter Verbraucherpreisindex, Harmonisierter Verbraucherpreisindex, Veränderungsrate zum Vorjahresmonat, Veränderungsrate zum Vormonat, Deutschland insgesamt, ECOICOP V.2: Harm. Verbraucherpreisindex, Sonderp., Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2026", + "LatestUpdate": "13.02.2026 12:17:06h", + "Information": "false" + }, + { + "Code": "61131BJ001", + "Content": "Index der Einzelhandelspreise, Index der Einzelhandelspreise, WZ2008 (ausgewählte Pos.): Einzelhandelspreise, Mehrwertsteuer, Deutschland insgesamt, Jahr", + "State": "vollständig mit Werten", + "Time": "1991-2025", + "LatestUpdate": "15.01.2026 18:26:27h", + "Information": "false" + }, + { + "Code": "61131BM001", + "Content": "Index der Einzelhandelspreise, Index der Einzelhandelspreise, WZ2008 (ausgewählte Pos.): Einzelhandelspreise, Mehrwertsteuer, Deutschland insgesamt, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1991-Januar 2026", + "LatestUpdate": "13.02.2026 18:11:02h", + "Information": "false" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/catalogue4/api/catalogue/statistics-86e7c4-7ed29c-POST.json b/tests/testthat/catalogue4/api/catalogue/statistics-86e7c4-7ed29c-POST.json new file mode 100644 index 0000000..0e774e9 --- /dev/null +++ b/tests/testthat/catalogue4/api/catalogue/statistics-86e7c4-7ed29c-POST.json @@ -0,0 +1,42 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "statistics" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "selection": "611*", + "searchcriterion": "Code", + "sortcriterion": "Code", + "pagelength": "500", + "language": "de", + "area": "Alle" + }, + "List": [ + { + "Code": "61111", + "Content": "Verbraucherpreisindex für Deutschland", + "Cubes": "22", + "Information": "true" + }, + { + "Code": "61121", + "Content": "Harmonisierter Verbraucherpreisindex", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "61131", + "Content": "Index der Einzelhandelspreise", + "Cubes": "2", + "Information": "true" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/catalogue4/api/catalogue/tables-86e7c4-31aabf-POST.json b/tests/testthat/catalogue4/api/catalogue/tables-86e7c4-31aabf-POST.json new file mode 100644 index 0000000..dc6a577 --- /dev/null +++ b/tests/testthat/catalogue4/api/catalogue/tables-86e7c4-31aabf-POST.json @@ -0,0 +1,119 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "tables" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "selection": "611*", + "area": "Alle", + "searchcriterion": "Code", + "sortcriterion": "Code", + "pagelength": "500", + "language": "de" + }, + "List": [ + { + "Code": "61111-0001", + "Content": "Verbraucherpreisindex: Deutschland, Jahre", + "Time": "1991 - 2025" + }, + { + "Code": "61111-0002", + "Content": "Verbraucherpreisindex: Deutschland, Monate", + "Time": "Januar 1991 - Januar 2026" + }, + { + "Code": "61111-0003", + "Content": "Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", + "Time": "1991 - 2025" + }, + { + "Code": "61111-0004", + "Content": "Verbraucherpreisindex: Deutschland, Monate,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", + "Time": "Januar 1991 - Januar 2026" + }, + { + "Code": "61111-0005", + "Content": "Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-/3-/4-/5-/10-Steller/Sonderpositionen)", + "Time": "1991 - 2025" + }, + { + "Code": "61111-0006", + "Content": "Verbraucherpreisindex: Deutschland, Monate,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-/3-/4-/5-/10-Steller/Sonderpositionen)", + "Time": "Januar 1991 - Januar 2026" + }, + { + "Code": "61111-0007", + "Content": "Wägungsschema des Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", + "Time": "2020 - 2020" + }, + { + "Code": "61111-0010", + "Content": "Verbraucherpreisindex: Bundesländer, Jahre", + "Time": "1995 - 2025" + }, + { + "Code": "61111-0011", + "Content": "Verbraucherpreisindex: Bundesländer, Monate", + "Time": "Januar 1995 - Januar 2026" + }, + { + "Code": "61111-0020", + "Content": "Index der Nettokaltmieten: Bundesländer, Jahre", + "Time": "2005 - 2025" + }, + { + "Code": "61111-0021", + "Content": "Index der Nettokaltmieten: Bundesländer, Monate", + "Time": "Januar 2005 - Januar 2026" + }, + { + "Code": "61121-0001", + "Content": "Harmonisierter Verbraucherpreisindex: Deutschland, Jahre", + "Time": "" + }, + { + "Code": "61121-0002", + "Content": "Harmonisierter Verbraucherpreisindex: Deutschland, Monate", + "Time": "Januar 2026 - Januar 2026" + }, + { + "Code": "61121-0003", + "Content": "Harmonisierter Verbraucherpreisindex: Deutschland, Jahre, Europäische Klassifikation der Verwendungszwecke des Individualkonsums (ECOICOP 2-5-Steller Hierarchie)", + "Time": "Januar 2026 - Januar 2026" + }, + { + "Code": "61121-0004", + "Content": "Harmonisierter Verbraucherpreisindex: Deutschland, Monate,\nEuropäische Klassifikation der Verwendungszwecke des\nIndividualkonsums (ECOICOP 2-5-Steller Hierarchie)", + "Time": "Januar 2026 - Januar 2026" + }, + { + "Code": "61121-0005", + "Content": "Harmonisierter Verbraucherpreisindex: Deutschland, Jahre, Europäische Klassifikation der Verwendungszwecke des Individualkonsums (ECOICOP 2-/3-/4-/5-Steller/Sonderpositionen)", + "Time": "Januar 2026 - Januar 2026" + }, + { + "Code": "61121-0006", + "Content": "Harmonisierter Verbraucherpreisindex: Deutschland, Monate, Europäische Klassifikation der Verwendungszwecke des Individualkonsums (ECOICOP 2-/3-/4-/5-Steller/Sonderpositionen)", + "Time": "Januar 2026 - Januar 2026" + }, + { + "Code": "61131-0001", + "Content": "Index der Einzelhandelspreise: Deutschland, Jahre,\nMehrwertsteuer, Wirtschaftszweige", + "Time": "1991 - 2025" + }, + { + "Code": "61131-0002", + "Content": "Index der Einzelhandelspreise: Deutschland, Monate,\nMehrwertsteuer, Wirtschaftszweige", + "Time": "Januar 1991 - Januar 2026" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/catalogue5/api/catalogue/tables-86e7c4-7a7d7b-POST.json b/tests/testthat/catalogue5/api/catalogue/tables-86e7c4-7a7d7b-POST.json new file mode 100644 index 0000000..45c0c4c --- /dev/null +++ b/tests/testthat/catalogue5/api/catalogue/tables-86e7c4-7a7d7b-POST.json @@ -0,0 +1,54 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "tables" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "selection": "711*", + "area": "Alle", + "searchcriterion": "Code", + "sortcriterion": "Code", + "pagelength": "500", + "language": "de" + }, + "List": [ + { + "Code": "71141-0001", + "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Ausgaben): Deutschland, Jahre, Körperschaftsgruppen,\nAusgabearten", + "Time": "1992 - 2011" + }, + { + "Code": "71141-0002", + "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Einnahmen): Deutschland, Jahre, Körperschaftsgruppen,\nEinnahmearten", + "Time": "1992 - 2011" + }, + { + "Code": "71141-0003", + "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Finanzierungssaldo, Besondere Finanzierungsvorgänge):\nDeutschland, Jahre, Körperschaftsgruppen", + "Time": "1992 - 2011" + }, + { + "Code": "71141-0004", + "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Nettoausgaben, Personalausgaben, Baumaßnahmen):\nDeutschland, Jahre, Körperschaftsgruppen, Aufgabenbereiche", + "Time": "1992 - 2011" + }, + { + "Code": "71141-0005", + "Content": "Investitionsausgaben der öffentlichen Haushalte:\nDeutschland, Jahre, Körperschaftsgruppen, Art der\nInvestitionsausgaben", + "Time": "1984 - 2011" + }, + { + "Code": "71141-0006", + "Content": "Investitionsausgaben der öffentlichen Haushalte:\nBundesländer, Jahre, Körperschaftsgruppen, Art der\nInvestitionsausgaben", + "Time": "1984 - 2011" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/cube1/api/data/cubefile-86e7c4-bdf8da-POST.csv b/tests/testthat/cube1/api/data/cubefile-86e7c4-bdf8da-POST.csv new file mode 100644 index 0000000..dbb69ec --- /dev/null +++ b/tests/testthat/cube1/api/data/cubefile-86e7c4-bdf8da-POST.csv @@ -0,0 +1,327 @@ +* Der Benutzer DE5256891X der Benutzergruppe DE0089 hat am 18.02.2026 um 20:52:23 diesen Export angestossen. +K;DQ;FACH-SCHL;GHH-ART;GHM-WERTE-JN;GENESIS-VBD;REGIOSTAT;EU-VBD;"mit Werten" +D;47414BJ002;;N;N;N;N +K;DQ-ERH;FACH-SCHL +D;47414 +K;DQA;NAME;RHF-BSR;RHF-ACHSE +D;DINSG;1;1 +D;WZ08N7;2;2 +D;WERTE4;3;3 +K;DQZ;NAME;ZI-RHF-BSR;ZI-RHF-ACHSE +D;JAHR;4;4 +K;DQI;NAME;ME-NAME;DST;TYP;NKM-STELLEN;GHH-ART;GHM-WERTE-JN +D;UMS103;2015=100;FEST;PROZENT;1;;N +K;QEI;FACH-SCHL;FACH-SCHL;FACH-SCHL;ZI-WERT;WERT;QUALITAET;GESPERRT;WERT-VERFAELSCHT +D;DG;WZ08-49-01;NOMINAL;2024;136.6;p;;0.0 +D;DG;WZ08-49-01;REAL;2024;119.5;p;;0.0 +D;DG;WZ08-49-02;NOMINAL;2024;123.0;p;;0.0 +D;DG;WZ08-49-02;REAL;2024;134.3;p;;0.0 +D;DG;WZ08-49-03;NOMINAL;2024;148.3;p;;0.0 +D;DG;WZ08-49-03;REAL;2024;111.9;p;;0.0 +D;DG;WZ08-49-04;NOMINAL;2024;151.4;p;;0.0 +D;DG;WZ08-49-04;REAL;2024;145.0;p;;0.0 +D;DG;WZ08-49-05;NOMINAL;2024;138.2;p;;0.0 +D;DG;WZ08-49-05;REAL;2024;106.7;p;;0.0 +D;DG;WZ08-49-06;NOMINAL;2024;155.2;p;;0.0 +D;DG;WZ08-49-06;REAL;2024;115.6;p;;0.0 +D;DG;WZ08-49-07;NOMINAL;2024;149.1;p;;0.0 +D;DG;WZ08-49-07;REAL;2024;112.6;p;;0.0 +D;DG;WZ08-49-08;NOMINAL;2024;136.9;p;;0.0 +D;DG;WZ08-49-08;REAL;2024;122.9;p;;0.0 +D;DG;WZ08-491;NOMINAL;2024;168.1;p;;0.0 +D;DG;WZ08-491;REAL;2024;202.6;p;;0.0 +D;DG;WZ08-492;NOMINAL;2024;139.9;p;;0.0 +D;DG;WZ08-492;REAL;2024;104.9;p;;0.0 +D;DG;WZ08-4931;NOMINAL;2024;125.2;p;;0.0 +D;DG;WZ08-4932;NOMINAL;2024;140.7;p;;0.0 +D;DG;WZ08-4939;NOMINAL;2024;108.6;p;;0.0 +D;DG;WZ08-493;NOMINAL;2024;124.5;p;;0.0 +D;DG;WZ08-493;REAL;2024;150.7;p;;0.0 +D;DG;WZ08-4941;NOMINAL;2024;147.3;p;;0.0 +D;DG;WZ08-4942;NOMINAL;2024;144.4;p;;0.0 +D;DG;WZ08-494;NOMINAL;2024;147.2;p;;0.0 +D;DG;WZ08-494;REAL;2024;106.6;p;;0.0 +D;DG;WZ08-495;NOMINAL;2024;121.5;p;;0.0 +D;DG;WZ08-495;REAL;2024;88.0;p;;0.0 +D;DG;WZ08-49;NOMINAL;2024;138.9;p;;0.0 +D;DG;WZ08-49;REAL;2024;125.9;p;;0.0 +D;DG;WZ08-50-01;NOMINAL;2024;137.3;p;;0.0 +D;DG;WZ08-50-01;REAL;2024;106.1;p;;0.0 +D;DG;WZ08-50-02;NOMINAL;2024;161.9;p;;0.0 +D;DG;WZ08-50-02;REAL;2024;122.9;p;;0.0 +D;DG;WZ08-501;NOMINAL;2024;160.6;p;;0.0 +D;DG;WZ08-501;REAL;2024;124.3;p;;0.0 +D;DG;WZ08-502;NOMINAL;2024;137.7;p;;0.0 +D;DG;WZ08-502;REAL;2024;107.1;p;;0.0 +D;DG;WZ08-503;NOMINAL;2024;169.6;p;;0.0 +D;DG;WZ08-503;REAL;2024;115.1;p;;0.0 +D;DG;WZ08-504;NOMINAL;2024;93.1;p;;0.0 +D;DG;WZ08-504;REAL;2024;64.7;p;;0.0 +D;DG;WZ08-50;NOMINAL;2024;137.3;p;;0.0 +D;DG;WZ08-50;REAL;2024;106.1;p;;0.0 +D;DG;WZ08-51-01;NOMINAL;2024;126.6;p;;0.0 +D;DG;WZ08-51-01;REAL;2024;111.9;p;;0.0 +D;DG;WZ08-511;NOMINAL;2024;101.3;p;;0.0 +D;DG;WZ08-511;REAL;2024;89.5;p;;0.0 +D;DG;WZ08-5121;NOMINAL;2024;241.8;p;;0.0 +D;DG;WZ08-512;NOMINAL;2024;241.8;p;;0.0 +D;DG;WZ08-512;REAL;2024;214.2;p;;0.0 +D;DG;WZ08-51;NOMINAL;2024;126.6;p;;0.0 +D;DG;WZ08-51;REAL;2024;111.9;p;;0.0 +D;DG;WZ08-521;NOMINAL;2024;176.9;p;;0.0 +D;DG;WZ08-521;REAL;2024;136.9;p;;0.0 +D;DG;WZ08-5221;NOMINAL;2024;156.7;p;;0.0 +D;DG;WZ08-5222;NOMINAL;2024;90.4;p;;0.0 +D;DG;WZ08-5223;NOMINAL;2024;105.0;p;;0.0 +D;DG;WZ08-5224;NOMINAL;2024;116.9;p;;0.0 +D;DG;WZ08-5229;NOMINAL;2024;133.4;p;;0.0 +D;DG;WZ08-522;NOMINAL;2024;131.3;p;;0.0 +D;DG;WZ08-522;REAL;2024;95.6;p;;0.0 +D;DG;WZ08-52;NOMINAL;2024;135.4;p;;0.0 +D;DG;WZ08-52;REAL;2024;99.4;p;;0.0 +D;DG;WZ08-532;NOMINAL;2024;155.2;p;;0.0 +D;DG;WZ08-532;REAL;2024;119.0;p;;0.0 +D;DG;WZ08-53;NOMINAL;2024;155.2;p;;0.0 +D;DG;WZ08-53;REAL;2024;119.0;p;;0.0 +D;DG;WZ08-551;NOMINAL;2024;152.7;p;;0.0 +D;DG;WZ08-551;REAL;2024;116.2;p;;0.0 +D;DG;WZ08-552;NOMINAL;2024;156.1;p;;0.0 +D;DG;WZ08-552;REAL;2024;112.8;p;;0.0 +D;DG;WZ08-553;NOMINAL;2024;157.5;p;;0.0 +D;DG;WZ08-553;REAL;2024;116.1;p;;0.0 +D;DG;WZ08-55;NOMINAL;2024;152.9;p;;0.0 +D;DG;WZ08-55;REAL;2024;115.9;p;;0.0 +D;DG;WZ08-561-01;NOMINAL;2024;126.6;p;;0.0 +D;DG;WZ08-561-01;REAL;2024;88.9;p;;0.0 +D;DG;WZ08-561;NOMINAL;2024;130.6;p;;0.0 +D;DG;WZ08-561;REAL;2024;91.8;p;;0.0 +D;DG;WZ08-562;NOMINAL;2024;135.9;p;;0.0 +D;DG;WZ08-562;REAL;2024;97.5;p;;0.0 +D;DG;WZ08-563;NOMINAL;2024;95.0;p;;0.0 +D;DG;WZ08-563;REAL;2024;66.2;p;;0.0 +D;DG;WZ08-56;NOMINAL;2024;128.7;p;;0.0 +D;DG;WZ08-56;REAL;2024;90.8;p;;0.0 +D;DG;WZ08-58-02;NOMINAL;2024;111.6;p;;0.0 +D;DG;WZ08-58-02;REAL;2024;93.4;p;;0.0 +D;DG;WZ08-58-03;NOMINAL;2024;104.3;p;;0.0 +D;DG;WZ08-58-03;REAL;2024;86.3;p;;0.0 +D;DG;WZ08-58-04;NOMINAL;2024;154.5;p;;0.0 +D;DG;WZ08-58-04;REAL;2024;143.9;p;;0.0 +D;DG;WZ08-58-05;NOMINAL;2024;175.4;p;;0.0 +D;DG;WZ08-58-05;REAL;2024;162.9;p;;0.0 +D;DG;WZ08-5811;NOMINAL;2024;114.6;p;;0.0 +D;DG;WZ08-5812;NOMINAL;2024;50.0;p;;0.0 +D;DG;WZ08-5813;NOMINAL;2024;89.3;p;;0.0 +D;DG;WZ08-5814;NOMINAL;2024;90.1;p;;0.0 +D;DG;WZ08-5819;NOMINAL;2024;98.9;p;;0.0 +D;DG;WZ08-581;NOMINAL;2024;92.9;p;;0.0 +D;DG;WZ08-581;REAL;2024;73.5;p;;0.0 +D;DG;WZ08-5821;NOMINAL;2024;191.3;p;;0.0 +D;DG;WZ08-5829;NOMINAL;2024;184.2;p;;0.0 +D;DG;WZ08-582;NOMINAL;2024;184.7;p;;0.0 +D;DG;WZ08-582;REAL;2024;167.9;p;;0.0 +D;DG;WZ08-58;NOMINAL;2024;109.6;p;;0.0 +D;DG;WZ08-58;REAL;2024;90.7;p;;0.0 +D;DG;WZ08-5911;NOMINAL;2024;155.0;p;;0.0 +D;DG;WZ08-5912;NOMINAL;2024;136.3;p;;0.0 +D;DG;WZ08-5913;NOMINAL;2024;73.0;p;;0.0 +D;DG;WZ08-5914;NOMINAL;2024;101.2;p;;0.0 +D;DG;WZ08-591;NOMINAL;2024;128.9;p;;0.0 +D;DG;WZ08-591;REAL;2024;101.4;p;;0.0 +D;DG;WZ08-592;NOMINAL;2024;141.5;p;;0.0 +D;DG;WZ08-592;REAL;2024;113.6;p;;0.0 +D;DG;WZ08-59;NOMINAL;2024;131.9;p;;0.0 +D;DG;WZ08-59;REAL;2024;104.2;p;;0.0 +D;DG;WZ08-601;NOMINAL;2024;72.4;p;;0.0 +D;DG;WZ08-601;REAL;2024;69.6;p;;0.0 +D;DG;WZ08-602;NOMINAL;2024;107.6;p;;0.0 +D;DG;WZ08-602;REAL;2024;98.0;p;;0.0 +D;DG;WZ08-60;NOMINAL;2024;101.5;p;;0.0 +D;DG;WZ08-60;REAL;2024;93.1;p;;0.0 +D;DG;WZ08-61-01;NOMINAL;2024;145.9;p;;0.0 +D;DG;WZ08-61-01;REAL;2024;126.2;p;;0.0 +D;DG;WZ08-61-02;NOMINAL;2024;148.9;p;;0.0 +D;DG;WZ08-61-02;REAL;2024;130.3;p;;0.0 +D;DG;WZ08-61-03;NOMINAL;2024;153.4;p;;0.0 +D;DG;WZ08-61-03;REAL;2024;133.2;p;;0.0 +D;DG;WZ08-611;NOMINAL;2024;97.0;p;;0.0 +D;DG;WZ08-611;REAL;2024;89.6;p;;0.0 +D;DG;WZ08-612;NOMINAL;2024;93.7;p;;0.0 +D;DG;WZ08-612;REAL;2024;86.6;p;;0.0 +D;DG;WZ08-613;NOMINAL;2024;113.7;p;;0.0 +D;DG;WZ08-613;REAL;2024;104.9;p;;0.0 +D;DG;WZ08-619;NOMINAL;2024;114.6;p;;0.0 +D;DG;WZ08-619;REAL;2024;105.8;p;;0.0 +D;DG;WZ08-61;NOMINAL;2024;99.1;p;;0.0 +D;DG;WZ08-61;REAL;2024;91.6;p;;0.0 +D;DG;WZ08-6201;NOMINAL;2024;196.1;p;;0.0 +D;DG;WZ08-6202;NOMINAL;2024;185.3;p;;0.0 +D;DG;WZ08-6203;NOMINAL;2024;131.6;p;;0.0 +D;DG;WZ08-6209;NOMINAL;2024;155.5;p;;0.0 +D;DG;WZ08-620;NOMINAL;2024;175.0;p;;0.0 +D;DG;WZ08-620;REAL;2024;162.7;p;;0.0 +D;DG;WZ08-62;NOMINAL;2024;175.0;p;;0.0 +D;DG;WZ08-62;REAL;2024;162.7;p;;0.0 +D;DG;WZ08-63-01;NOMINAL;2024;166.0;p;;0.0 +D;DG;WZ08-63-01;REAL;2024;144.7;p;;0.0 +D;DG;WZ08-63-02;NOMINAL;2024;239.0;p;;0.0 +D;DG;WZ08-63-02;REAL;2024;231.4;p;;0.0 +D;DG;WZ08-63-03;NOMINAL;2024;170.5;p;;0.0 +D;DG;WZ08-63-03;REAL;2024;155.7;p;;0.0 +D;DG;WZ08-63-04;NOMINAL;2024;179.4;p;;0.0 +D;DG;WZ08-63-04;REAL;2024;167.8;p;;0.0 +D;DG;WZ08-6311;NOMINAL;2024;273.8;p;;0.0 +D;DG;WZ08-6312;NOMINAL;2024;271.3;p;;0.0 +D;DG;WZ08-631;NOMINAL;2024;272.9;p;;0.0 +D;DG;WZ08-631;REAL;2024;267.2;p;;0.0 +D;DG;WZ08-6391;NOMINAL;2024;69.4;p;;0.0 +D;DG;WZ08-6399;NOMINAL;2024;119.3;p;;0.0 +D;DG;WZ08-639;NOMINAL;2024;112.2;p;;0.0 +D;DG;WZ08-639;REAL;2024;99.6;p;;0.0 +D;DG;WZ08-63;NOMINAL;2024;218.8;p;;0.0 +D;DG;WZ08-63;REAL;2024;210.8;p;;0.0 +D;DG;WZ08-681;NOMINAL;2024;74.5;p;;0.0 +D;DG;WZ08-681;REAL;2024;64.9;p;;0.0 +D;DG;WZ08-682;NOMINAL;2024;100.5;p;;0.0 +D;DG;WZ08-682;REAL;2024;87.6;p;;0.0 +D;DG;WZ08-6831;NOMINAL;2024;111.1;p;;0.0 +D;DG;WZ08-6832;NOMINAL;2024;132.6;p;;0.0 +D;DG;WZ08-683;NOMINAL;2024;124.0;p;;0.0 +D;DG;WZ08-683;REAL;2024;108.0;p;;0.0 +D;DG;WZ08-68;NOMINAL;2024;102.0;p;;0.0 +D;DG;WZ08-68;REAL;2024;88.9;p;;0.0 +D;DG;WZ08-69-01;NOMINAL;2024;150.8;p;;0.0 +D;DG;WZ08-69-01;REAL;2024;128.5;p;;0.0 +D;DG;WZ08-691;NOMINAL;2024;129.0;p;;0.0 +D;DG;WZ08-691;REAL;2024;108.2;p;;0.0 +D;DG;WZ08-692;NOMINAL;2024;159.2;p;;0.0 +D;DG;WZ08-692;REAL;2024;129.6;p;;0.0 +D;DG;WZ08-69;NOMINAL;2024;145.8;p;;0.0 +D;DG;WZ08-69;REAL;2024;120.1;p;;0.0 +D;DG;WZ08-7021;NOMINAL;2024;140.0;p;;0.0 +D;DG;WZ08-7022;NOMINAL;2024;160.1;p;;0.0 +D;DG;WZ08-702;NOMINAL;2024;159.1;p;;0.0 +D;DG;WZ08-702;REAL;2024;142.6;p;;0.0 +D;DG;WZ08-70;NOMINAL;2024;159.1;p;;0.0 +D;DG;WZ08-70;REAL;2024;142.6;p;;0.0 +D;DG;WZ08-71-01;NOMINAL;2024;142.0;p;;0.0 +D;DG;WZ08-71-01;REAL;2024;114.2;p;;0.0 +D;DG;WZ08-7111;NOMINAL;2024;149.2;p;;0.0 +D;DG;WZ08-7112;NOMINAL;2024;141.8;p;;0.0 +D;DG;WZ08-711;NOMINAL;2024;142.9;p;;0.0 +D;DG;WZ08-711;REAL;2024;112.1;p;;0.0 +D;DG;WZ08-712;NOMINAL;2024;136.5;p;;0.0 +D;DG;WZ08-712;REAL;2024;107.0;p;;0.0 +D;DG;WZ08-71;NOMINAL;2024;142.1;p;;0.0 +D;DG;WZ08-71;REAL;2024;111.5;p;;0.0 +D;DG;WZ08-7311;NOMINAL;2024;117.1;p;;0.0 +D;DG;WZ08-7312;NOMINAL;2024;171.5;p;;0.0 +D;DG;WZ08-731;NOMINAL;2024;136.4;p;;0.0 +D;DG;WZ08-731;REAL;2024;109.3;p;;0.0 +D;DG;WZ08-732;NOMINAL;2024;118.8;p;;0.0 +D;DG;WZ08-732;REAL;2024;104.6;p;;0.0 +D;DG;WZ08-73;NOMINAL;2024;135.0;p;;0.0 +D;DG;WZ08-73;REAL;2024;108.9;p;;0.0 +D;DG;WZ08-741;NOMINAL;2024;151.5;p;;0.0 +D;DG;WZ08-741;REAL;2024;135.9;p;;0.0 +D;DG;WZ08-742;NOMINAL;2024;102.1;p;;0.0 +D;DG;WZ08-742;REAL;2024;91.6;p;;0.0 +D;DG;WZ08-743;NOMINAL;2024;108.5;p;;0.0 +D;DG;WZ08-743;REAL;2024;87.1;p;;0.0 +D;DG;WZ08-749;NOMINAL;2024;161.9;p;;0.0 +D;DG;WZ08-749;REAL;2024;136.6;p;;0.0 +D;DG;WZ08-74;NOMINAL;2024;152.2;p;;0.0 +D;DG;WZ08-74;REAL;2024;130.0;p;;0.0 +D;DG;WZ08-7711;NOMINAL;2024;192.7;p;;0.0 +D;DG;WZ08-7712;NOMINAL;2024;164.5;p;;0.0 +D;DG;WZ08-771;NOMINAL;2024;188.7;p;;0.0 +D;DG;WZ08-771;REAL;2024;139.4;p;;0.0 +D;DG;WZ08-7721;NOMINAL;2024;612.2;p;;0.0 +D;DG;WZ08-7722;NOMINAL;2024;21.9;p;;0.0 +D;DG;WZ08-7729;NOMINAL;2024;240.5;p;;0.0 +D;DG;WZ08-772;NOMINAL;2024;236.4;p;;0.0 +D;DG;WZ08-772;REAL;2024;201.7;p;;0.0 +D;DG;WZ08-7731;NOMINAL;2024;103.3;p;;0.0 +D;DG;WZ08-7732;NOMINAL;2024;216.1;p;;0.0 +D;DG;WZ08-7733;NOMINAL;2024;147.7;p;;0.0 +D;DG;WZ08-7734;NOMINAL;2024;65.8;p;;0.0 +D;DG;WZ08-7735;NOMINAL;2024;53.8;p;;0.0 +D;DG;WZ08-7739;NOMINAL;2024;246.5;p;;0.0 +D;DG;WZ08-773;NOMINAL;2024;204.3;p;;0.0 +D;DG;WZ08-773;REAL;2024;184.0;p;;0.0 +D;DG;WZ08-774;NOMINAL;2024;52.4;p;;0.0 +D;DG;WZ08-774;REAL;2024;45.5;p;;0.0 +D;DG;WZ08-77;NOMINAL;2024;181.0;p;;0.0 +D;DG;WZ08-77;REAL;2024;152.5;p;;0.0 +D;DG;WZ08-781;NOMINAL;2024;172.8;p;;0.0 +D;DG;WZ08-781;REAL;2024;129.5;p;;0.0 +D;DG;WZ08-782;NOMINAL;2024;98.7;p;;0.0 +D;DG;WZ08-782;REAL;2024;72.4;p;;0.0 +D;DG;WZ08-783;NOMINAL;2024;90.0;p;;0.0 +D;DG;WZ08-783;REAL;2024;66.1;p;;0.0 +D;DG;WZ08-78;NOMINAL;2024;102.3;p;;0.0 +D;DG;WZ08-78;REAL;2024;75.3;p;;0.0 +D;DG;WZ08-7911;NOMINAL;2024;121.1;p;;0.0 +D;DG;WZ08-7912;NOMINAL;2024;165.0;p;;0.0 +D;DG;WZ08-791;NOMINAL;2024;157.4;p;;0.0 +D;DG;WZ08-791;REAL;2024;119.9;p;;0.0 +D;DG;WZ08-799;NOMINAL;2024;125.5;p;;0.0 +D;DG;WZ08-799;REAL;2024;94.6;p;;0.0 +D;DG;WZ08-79;NOMINAL;2024;155.8;p;;0.0 +D;DG;WZ08-79;REAL;2024;118.6;p;;0.0 +D;DG;WZ08-801;NOMINAL;2024;194.6;p;;0.0 +D;DG;WZ08-801;REAL;2024;144.1;p;;0.0 +D;DG;WZ08-802;NOMINAL;2024;149.5;p;;0.0 +D;DG;WZ08-802;REAL;2024;110.7;p;;0.0 +D;DG;WZ08-803;NOMINAL;2024;108.4;p;;0.0 +D;DG;WZ08-803;REAL;2024;80.2;p;;0.0 +D;DG;WZ08-80;NOMINAL;2024;187.2;p;;0.0 +D;DG;WZ08-80;REAL;2024;138.6;p;;0.0 +D;DG;WZ08-811;NOMINAL;2024;148.9;p;;0.0 +D;DG;WZ08-811;REAL;2024;111.9;p;;0.0 +D;DG;WZ08-8121;NOMINAL;2024;168.8;p;;0.0 +D;DG;WZ08-8122;NOMINAL;2024;167.3;p;;0.0 +D;DG;WZ08-8129;NOMINAL;2024;171.8;p;;0.0 +D;DG;WZ08-812;NOMINAL;2024;168.7;p;;0.0 +D;DG;WZ08-812;REAL;2024;126.8;p;;0.0 +D;DG;WZ08-813;NOMINAL;2024;268.6;p;;0.0 +D;DG;WZ08-813;REAL;2024;191.1;p;;0.0 +D;DG;WZ08-81;NOMINAL;2024;193.1;p;;0.0 +D;DG;WZ08-81;REAL;2024;142.1;p;;0.0 +D;DG;WZ08-8211;NOMINAL;2024;177.2;p;;0.0 +D;DG;WZ08-8219;NOMINAL;2024;70.6;p;;0.0 +D;DG;WZ08-821;NOMINAL;2024;133.2;p;;0.0 +D;DG;WZ08-821;REAL;2024;106.9;p;;0.0 +D;DG;WZ08-822;NOMINAL;2024;133.3;p;;0.0 +D;DG;WZ08-822;REAL;2024;102.3;p;;0.0 +D;DG;WZ08-823;NOMINAL;2024;137.5;p;;0.0 +D;DG;WZ08-823;REAL;2024;105.7;p;;0.0 +D;DG;WZ08-8291;NOMINAL;2024;107.9;p;;0.0 +D;DG;WZ08-8292;NOMINAL;2024;165.8;p;;0.0 +D;DG;WZ08-8299;NOMINAL;2024;146.9;p;;0.0 +D;DG;WZ08-829;NOMINAL;2024;144.3;p;;0.0 +D;DG;WZ08-829;REAL;2024;115.9;p;;0.0 +D;DG;WZ08-82;NOMINAL;2024;141.6;p;;0.0 +D;DG;WZ08-82;REAL;2024;112.5;p;;0.0 +D;DG;WZ08-H-02;NOMINAL;2024;144.9;p;;0.0 +D;DG;WZ08-H-02;REAL;2024;120.5;p;;0.0 +D;DG;WZ08-H-04;NOMINAL;2024;139.2;p;;0.0 +D;DG;WZ08-H-04;REAL;2024;115.5;p;;0.0 +D;DG;WZ08-H-05;NOMINAL;2024;139.3;p;;0.0 +D;DG;WZ08-H-05;REAL;2024;116.4;p;;0.0 +D;DG;WZ08-H-06;NOMINAL;2024;132.7;p;;0.0 +D;DG;WZ08-H-06;REAL;2024;111.1;p;;0.0 +D;DG;WZ08-H-07;NOMINAL;2024;140.8;p;;0.0 +D;DG;WZ08-H-07;REAL;2024;116.6;p;;0.0 +D;DG;WZ08-H;NOMINAL;2024;138.1;p;;0.0 +D;DG;WZ08-H;REAL;2024;111.3;p;;0.0 +D;DG;WZ08-I;NOMINAL;2024;137.9;p;;0.0 +D;DG;WZ08-I;REAL;2024;100.3;p;;0.0 +D;DG;WZ08-J;NOMINAL;2024;143.6;p;;0.0 +D;DG;WZ08-J;REAL;2024;131.4;p;;0.0 +D;DG;WZ08-L;NOMINAL;2024;102.0;p;;0.0 +D;DG;WZ08-L;REAL;2024;88.9;p;;0.0 +D;DG;WZ08-M;NOMINAL;2024;145.5;p;;0.0 +D;DG;WZ08-M;REAL;2024;119.6;p;;0.0 +D;DG;WZ08-N;NOMINAL;2024;155.8;p;;0.0 +D;DG;WZ08-N;REAL;2024;121.0;p;;0.0 diff --git a/tests/testthat/find1/api/find/find-86e7c4-3a9778-POST.json b/tests/testthat/find1/api/find/find-86e7c4-3a9778-POST.json new file mode 100644 index 0000000..5598688 --- /dev/null +++ b/tests/testthat/find1/api/find/find-86e7c4-3a9778-POST.json @@ -0,0 +1,960 @@ +{ + "Ident": { + "Service": "find", + "Method": "find" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "term": "forst", + "category": "Alle", + "pagelength": "500", + "language": "de" + }, + "Cubes": [ + { + "Code": "12211BJ263", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020-2024", + "LatestUpdate": "29.01.2026 19:09:09h", + "Information": "false" + }, + { + "Code": "12211BJ264", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Geschlecht, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020-2024", + "LatestUpdate": "29.01.2026 19:07:25h", + "Information": "false" + }, + { + "Code": "12211BJ265", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020-2023", + "LatestUpdate": "06.06.2025 13:38:52h", + "Information": "false" + }, + { + "Code": "12211BJ266", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Geschlecht, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020-2023", + "LatestUpdate": "06.06.2025 13:37:37h", + "Information": "false" + }, + { + "Code": "12211BJ293", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:11:06h", + "Information": "false" + }, + { + "Code": "12211BJ294", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Geschlecht, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:11:15h", + "Information": "false" + }, + { + "Code": "12211LJ263", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:21:02h", + "Information": "false" + }, + { + "Code": "12211LJ264", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:19:26h", + "Information": "false" + }, + { + "Code": "12211LJ265", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:47:38h", + "Information": "false" + }, + { + "Code": "12211LJ266", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:47:56h", + "Information": "false" + }, + { + "Code": "12211LJ293", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:23:03h", + "Information": "false" + }, + { + "Code": "12211LJ294", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:19:11h", + "Information": "false" + }, + { + "Code": "21331BS002", + "Content": "Statistik der Gasthörer, Gasthörer, Deutschland insgesamt, Fächergruppen, Semester", + "State": "vollständig mit Werten", + "Time": "WS 1994/95-WS 2024/25", + "LatestUpdate": "04.06.2025 18:00:32h", + "Information": "false" + }, + { + "Code": "21341BJ002", + "Content": "Statistik des Hochschulpersonals, Hauptberufl. wissenschaftl. u. künstler. Personal, Deutschland insgesamt, Geschlecht, Lehr- und Forschungsbereiche, Jahr", + "State": "vollständig mit Werten", + "Time": "1997-2024", + "LatestUpdate": "01.10.2025 14:01:18h", + "Information": "false" + }, + { + "Code": "21341BJ003", + "Content": "Statistik des Hochschulpersonals, Professoren, Deutschland insgesamt, Geschlecht, Fächergruppen, Jahr", + "State": "vollständig mit Werten", + "Time": "1997-2024", + "LatestUpdate": "01.10.2025 14:01:26h", + "Information": "false" + }, + { + "Code": "21351BJ001", + "Content": "Statistik der Habilitationen, Habilitationen, Deutschland insgesamt, Fächergruppen, Geschlecht, Nationalität, Jahr", + "State": "vollständig mit Werten", + "Time": "1992-2024", + "LatestUpdate": "21.07.2025 18:05:21h", + "Information": "false" + }, + { + "Code": "21351BJ003", + "Content": "Statistik der Habilitationen, Durchschnittsalter der habilitierten Personen, Deutschland insgesamt, Fächergruppen, Jahr", + "State": "vollständig mit Werten", + "Time": "1992-2024", + "LatestUpdate": "21.07.2025 18:05:31h", + "Information": "false" + }, + { + "Code": "21351BJ005", + "Content": "Statistik der Habilitationen, Durchschnittsalter der habilitierten Personen, Deutschland insgesamt, Fächergruppen, Geschlecht, Jahr", + "State": "vollständig mit Werten", + "Time": "1992-2024", + "LatestUpdate": "21.07.2025 18:05:27h", + "Information": "false" + }, + { + "Code": "21352BJ011", + "Content": "Statistik der Promovierenden, Promovierende, Deutschland insgesamt, Fächergruppen, Altersgruppen (u24-40m, unbekannt), Stichtag", + "State": "vollständig mit Werten", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:18:32h", + "Information": "false" + }, + { + "Code": "21352BJ012", + "Content": "Statistik der Promovierenden, Promovierende, Deutschland insgesamt, Geschlecht, Fächergruppen, Altersgruppen (u24-40m, unbekannt), Stichtag", + "State": "vollständig mit Werten", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:18:19h", + "Information": "false" + }, + { + "Code": "21352BJ013", + "Content": "Statistik der Promovierenden, Promovierende, Durchschnittsalter der Promovierenden, Deutschland insgesamt, Fächergruppen, Stichtag", + "State": "vollständig mit Werten", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:18:26h", + "Information": "false" + }, + { + "Code": "21352BJ014", + "Content": "Statistik der Promovierenden, Promovierende, Durchschnittsalter der Promovierenden, Deutschland insgesamt, Geschlecht, Fächergruppen, Stichtag", + "State": "vollständig mit Werten", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:18:23h", + "Information": "false" + }, + { + "Code": "21352BJ015", + "Content": "Statistik der Promovierenden, Promovierende, Deutschland insgesamt, Nationalität, Fächergruppen, Stichtag", + "State": "vollständig mit Werten", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:18:16h", + "Information": "false" + }, + { + "Code": "21352BJ016", + "Content": "Statistik der Promovierenden, Promovierende, Deutschland insgesamt, Geschlecht, Nationalität, Fächergruppen, Stichtag", + "State": "vollständig mit Werten", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:15:33h", + "Information": "false" + }, + { + "Code": "21371BJ003", + "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Deutschland insgesamt, Fächergruppen, Jahr", + "State": "vollständig mit Werten", + "Time": "2006-2023", + "LatestUpdate": "26.03.2025 18:00:43h", + "Information": "false" + }, + { + "Code": "21371BJ004", + "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Deutschland insgesamt, Hochschulart, Fächergruppen, Jahr", + "State": "vollständig mit Werten", + "Time": "2006-2023", + "LatestUpdate": "26.03.2025 18:00:34h", + "Information": "false" + }, + { + "Code": "21371LJ003", + "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Bundesländer, Fächergruppen, Jahr", + "State": "vollständig mit Werten", + "Time": "2006-2023", + "LatestUpdate": "26.03.2025 18:00:31h", + "Information": "false" + }, + { + "Code": "21371LJ004", + "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Bundesländer, Hochschulart, Fächergruppen, Jahr", + "State": "vollständig mit Werten", + "Time": "2006-2023", + "LatestUpdate": "26.03.2025 18:00:27h", + "Information": "false" + }, + { + "Code": "21381BJ102", + "Content": "Hochschulstatistische Kennzahlen, Laufende Ausgaben der Hochschulen je Studierenden, Laufende Ausgaben d. Hochschulen je Wiss. Personal, Laufende Ausgaben der Hochschulen je Professor, Drittmittel der Hochschulen je Wiss. Personal, Drittmittel der Hochschulen je Professor, Deutschland insgesamt, Fächergruppen, Jahr", + "State": "vollständig mit Werten", + "Time": "2011-2023", + "LatestUpdate": "24.09.2025 18:10:18h", + "Information": "false" + }, + { + "Code": "21431BJ009", + "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Deutschland insgesamt, Fächergruppen, Jahr", + "State": "vollständig mit Werten", + "Time": "2020-2024", + "LatestUpdate": "13.05.2025 18:21:08h", + "Information": "false" + }, + { + "Code": "21431BJ010", + "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Deutschland insgesamt, Geschlecht, Fächergruppen, Jahr", + "State": "vollständig mit Werten", + "Time": "2020-2024", + "LatestUpdate": "13.05.2025 18:22:04h", + "Information": "false" + }, + { + "Code": "21431BJ011", + "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Deutschland insgesamt, Nationalität, Fächergruppen, Jahr", + "State": "vollständig mit Werten", + "Time": "2020-2024", + "LatestUpdate": "13.05.2025 18:22:01h", + "Information": "false" + }, + { + "Code": "21431BJ012", + "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Deutschland insgesamt, Geschlecht, Nationalität, Fächergruppen, Jahr", + "State": "vollständig mit Werten", + "Time": "2020-2024", + "LatestUpdate": "13.05.2025 18:22:09h", + "Information": "false" + }, + { + "Code": "21811BJ007", + "Content": "Ausgaben, Einnahmen, Personal öff. Forschungseinr., Interne Ausgaben für Forschung und Entwicklung, Personal für FuE (Vollzeitäquivalente), Deutschland insgesamt, Wissenschaftszweige, Jahr", + "State": "vollständig mit Werten", + "Time": "2019-2023", + "LatestUpdate": "06.03.2025 15:06:27h", + "Information": "false" + }, + { + "Code": "21811BJ008", + "Content": "Ausgaben, Einnahmen, Personal öff. Forschungseinr., Interne Ausgaben für Forschung und Entwicklung, Personal für FuE (Vollzeitäquivalente), Deutschland insgesamt, Einrichtungsgruppe, Wissenschaftszweige, Jahr", + "State": "vollständig mit Werten", + "Time": "2019-2023", + "LatestUpdate": "06.03.2025 15:06:30h", + "Information": "false" + }, + { + "Code": "21811BJ009", + "Content": "Ausgaben, Einnahmen, Personal öff. Forschungseinr., Interne Ausgaben für Forschung und Entwicklung, Personal für FuE (Vollzeitäquivalente), Deutschland insgesamt, Einrichtungsart, Wissenschaftszweige, Jahr", + "State": "vollständig mit Werten", + "Time": "2019-2023", + "LatestUpdate": "06.03.2025 15:08:39h", + "Information": "false" + }, + { + "Code": "21811BJ034", + "Content": "Ausgaben, Einnahmen, Personal öff. Forschungseinr., Personal für FuE (Vollzeitäquivalente), Deutschland insgesamt, Wissenschaftszweige, Personalgruppen, Jahr", + "State": "vollständig mit Werten", + "Time": "2019-2023", + "LatestUpdate": "06.03.2025 15:13:36h", + "Information": "false" + }, + { + "Code": "21811LJ003", + "Content": "Ausgaben, Einnahmen, Personal öff. Forschungseinr., Interne Ausgaben für Forschung und Entwicklung, Bundesländer und Ausland, Wissenschaftszweige, Jahr", + "State": "vollständig mit Werten", + "Time": "2019-2023", + "LatestUpdate": "06.03.2025 15:15:34h", + "Information": "false" + }, + { + "Code": "41161BJ001", + "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Deutschland insgesamt, Jahr", + "State": "vollständig mit Werten", + "Time": "2022", + "LatestUpdate": "07.10.2022 11:23:33h", + "Information": "false" + }, + { + "Code": "41161BJ002", + "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Deutschland insgesamt, Waldeigentumsarten, Jahr", + "State": "vollständig mit Werten", + "Time": "2022", + "LatestUpdate": "07.10.2022 11:23:33h", + "Information": "false" + }, + { + "Code": "41161BJ003", + "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Forsteinheiten, Deutschland insgesamt, Größenklassen der Waldfläche, Jahr", + "State": "vollständig mit Werten", + "Time": "2022", + "LatestUpdate": "25.09.2022 16:01:54h", + "Information": "false" + }, + { + "Code": "41161BJ004", + "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Forsteinheiten, Deutschland insgesamt, Waldeigentumsarten, Größenklassen der Waldfläche, Jahr", + "State": "vollständig mit Werten", + "Time": "2022", + "LatestUpdate": "25.09.2022 16:01:54h", + "Information": "false" + }, + { + "Code": "41161BJ100", + "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Forstbetriebe, Deutschland insgesamt, Größenklassen der Waldfläche, Rechtsform, Jahr", + "State": "vollständig mit Werten", + "Time": "1965-2007", + "LatestUpdate": "27.10.2020 14:52:54h", + "Information": "false" + }, + { + "Code": "41161LJ001", + "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Bundesländer, Jahr", + "State": "vollständig mit Werten", + "Time": "2022", + "LatestUpdate": "07.10.2022 11:23:43h", + "Information": "false" + }, + { + "Code": "41161LJ002", + "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Bundesländer, Waldeigentumsarten, Jahr", + "State": "vollständig mit Werten", + "Time": "2022", + "LatestUpdate": "07.10.2022 11:23:43h", + "Information": "false" + }, + { + "Code": "41161LJ003", + "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Forsteinheiten, Bundesländer, Größenklassen der Waldfläche, Jahr", + "State": "vollständig mit Werten", + "Time": "2022", + "LatestUpdate": "25.09.2022 16:02:06h", + "Information": "false" + }, + { + "Code": "41161LJ004", + "Content": "Strukturerhebung der Forstbetriebe, Waldfläche, Forsteinheiten, Bundesländer, Waldeigentumsarten, Größenklassen der Waldfläche, Jahr", + "State": "vollständig mit Werten", + "Time": "2022", + "LatestUpdate": "25.09.2022 16:02:06h", + "Information": "false" + }, + { + "Code": "51000BJ160", + "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Jahr", + "State": "vollständig mit Werten", + "Time": "2008-2024", + "LatestUpdate": "01.10.2025 15:02:15h", + "Information": "false" + }, + { + "Code": "51000BJ161", + "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Jahr", + "State": "vollständig mit Werten", + "Time": "2008-2024", + "LatestUpdate": "01.10.2025 15:25:26h", + "Information": "false" + }, + { + "Code": "51000BJ180", + "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Jahr", + "State": "vollständig mit Werten", + "Time": "2006-2024", + "LatestUpdate": "01.10.2025 15:01:46h", + "Information": "false" + }, + { + "Code": "51000BJ181", + "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Jahr", + "State": "vollständig mit Werten", + "Time": "2006-2024", + "LatestUpdate": "01.10.2025 15:26:44h", + "Information": "false" + }, + { + "Code": "51000BM160", + "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2008-November 2025", + "LatestUpdate": "19.01.2026 15:04:44h", + "Information": "false" + }, + { + "Code": "51000BM161", + "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2008-November 2025", + "LatestUpdate": "19.01.2026 18:09:55h", + "Information": "false" + }, + { + "Code": "51000BM180", + "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2006-November 2025", + "LatestUpdate": "19.01.2026 15:05:32h", + "Information": "false" + }, + { + "Code": "51000BM181", + "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2006-November 2025", + "LatestUpdate": "19.01.2026 20:45:56h", + "Information": "false" + }, + { + "Code": "62361BJ009", + "Content": "Verdiensterhebung, Durchschn. Bruttostundenverdienste ohne Sonderz., Durchschn. Bruttomonatsverdienste ohne Sonderz., Mittlere Bruttostundenverdienste ohne Sonderz., Mittlere Bruttomonatsverdienste ohne Sonderz., Deutschland insgesamt, Berufsgruppen (KB2010), 3-Steller, Stichmonat", + "State": "vollständig mit Werten", + "Time": "04/2022-04/2025", + "LatestUpdate": "04.12.2025 19:46:20h", + "Information": "false" + }, + { + "Code": "62361BJ010", + "Content": "Verdiensterhebung, Durchschn. Bruttostundenverdienste ohne Sonderz., Durchschn. Bruttomonatsverdienste ohne Sonderz., Mittlere Bruttostundenverdienste ohne Sonderz., Mittlere Bruttomonatsverdienste ohne Sonderz., Deutschland insgesamt, Berufsgattungen (KB2010), 5-Steller, Stichmonat", + "State": "vollständig mit Werten", + "Time": "04/2022-04/2025", + "LatestUpdate": "04.12.2025 19:46:30h", + "Information": "false" + }, + { + "Code": "62361BJ012", + "Content": "Verdiensterhebung, Durchschn. Bruttostundenverdienste ohne Sonderz., Durchschn. Bruttomonatsverdienste ohne Sonderz., Mittlere Bruttostundenverdienste ohne Sonderz., Mittlere Bruttomonatsverdienste ohne Sonderz., Deutschland insgesamt, Geschlecht, Berufsgruppen (KB2010), 3-Steller, Stichmonat", + "State": "vollständig mit Werten", + "Time": "04/2022-04/2025", + "LatestUpdate": "04.12.2025 19:45:42h", + "Information": "false" + }, + { + "Code": "62361BJ013", + "Content": "Verdiensterhebung, Durchschn. Bruttostundenverdienste ohne Sonderz., Durchschn. Bruttomonatsverdienste ohne Sonderz., Mittlere Bruttostundenverdienste ohne Sonderz., Mittlere Bruttomonatsverdienste ohne Sonderz., Deutschland insgesamt, Geschlecht, Berufsgattungen (KB2010), 5-Steller, Stichmonat", + "State": "vollständig mit Werten", + "Time": "04/2022-04/2025", + "LatestUpdate": "04.12.2025 19:45:49h", + "Information": "false" + }, + { + "Code": "62361BJ015", + "Content": "Verdiensterhebung, Durchschn. Bruttojahresverdienste inkl. Sonderz., Mittlere Bruttojahresverdienste inkl. Sonderz., Deutschland insgesamt, Berufsgruppen (KB2010), 3-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2022-2024", + "LatestUpdate": "27.03.2025 08:05:50h", + "Information": "false" + }, + { + "Code": "62361BJ016", + "Content": "Verdiensterhebung, Durchschn. Bruttojahresverdienste inkl. Sonderz., Mittlere Bruttojahresverdienste inkl. Sonderz., Deutschland insgesamt, Berufsgattungen (KB2010), 5-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2022-2024", + "LatestUpdate": "27.03.2025 08:05:31h", + "Information": "false" + }, + { + "Code": "62361BJ018", + "Content": "Verdiensterhebung, Durchschn. Bruttojahresverdienste inkl. Sonderz., Mittlere Bruttojahresverdienste inkl. Sonderz., Deutschland insgesamt, Geschlecht, Berufsgruppen (KB2010), 3-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2022-2024", + "LatestUpdate": "27.03.2025 08:05:46h", + "Information": "false" + }, + { + "Code": "62361BJ019", + "Content": "Verdiensterhebung, Durchschn. Bruttojahresverdienste inkl. Sonderz., Mittlere Bruttojahresverdienste inkl. Sonderz., Deutschland insgesamt, Geschlecht, Berufsgattungen (KB2010), 5-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2022-2024", + "LatestUpdate": "27.03.2025 08:05:41h", + "Information": "false" + }, + { + "Code": "71141BJ006", + "Content": "Rechnungsergebnisse d.öffentlichen Gesamthaushalts, Nettoausgaben, Personalausgaben, Baumaßnahmen, Deutschland insgesamt, Körperschaftsgruppen, Aufgabenbereiche der öffentlichen Haushalte, Jahr", + "State": "vollständig mit Werten", + "Time": "1992-2011", + "LatestUpdate": "26.02.2014 15:37:23h", + "Information": "false" + }, + { + "Code": "79994BV061", + "Content": "Vergabestatistik, Genannte CPV-Codes i.vergeb. öff.Auftr. u.Konzess., Deutschland insgesamt, Auftraggeberebene, CPV-Codes (Abteilungen), Quartale, Jahr", + "State": "vollständig mit Werten", + "Time": "1. Quartal 2021-4. Quartal 2023", + "LatestUpdate": "03.02.2025 17:14:38h", + "Information": "false" + }, + { + "Code": "79994LV051", + "Content": "Vergabestatistik, Genannte CPV-Codes i.vergeb. öff.Auftr. u.Konzess., Bundesländer, Auftraggeberebene, CPV-Codes (Abteilungen), Quartale, Jahr", + "State": "vollständig mit Werten", + "Time": "1. Quartal 2021-4. Quartal 2023", + "LatestUpdate": "03.02.2025 17:14:54h", + "Information": "false" + } + ], + "Statistics": [ + { + "Code": "12211", + "Content": "Mikrozensus", + "Cubes": "575", + "Information": "true" + }, + { + "Code": "21331", + "Content": "Statistik der Gasthörer", + "Cubes": "2", + "Information": "true" + }, + { + "Code": "21341", + "Content": "Statistik des Hochschulpersonals", + "Cubes": "3", + "Information": "true" + }, + { + "Code": "21351", + "Content": "Statistik der Habilitationen", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "21352", + "Content": "Statistik der Promovierenden", + "Cubes": "28", + "Information": "true" + }, + { + "Code": "21371", + "Content": "Hochschulfinanzstatistik", + "Cubes": "8", + "Information": "true" + }, + { + "Code": "21381", + "Content": "Hochschulstatistische Kennzahlen", + "Cubes": "11", + "Information": "false" + }, + { + "Code": "21431", + "Content": "Förderung nach dem Stipendienprogramm-Gesetz", + "Cubes": "37", + "Information": "true" + }, + { + "Code": "21811", + "Content": "Ausgaben, Einnahmen, Personal öff. Forschungseinr.", + "Cubes": "47", + "Information": "true" + }, + { + "Code": "41161", + "Content": "Strukturerhebung der Forstbetriebe", + "Cubes": "9", + "Information": "true" + }, + { + "Code": "51000", + "Content": "Außenhandel", + "Cubes": "79", + "Information": "true" + }, + { + "Code": "62361", + "Content": "Verdiensterhebung", + "Cubes": "152", + "Information": "true" + }, + { + "Code": "71141", + "Content": "Rechnungsergebnisse d.öffentlichen Gesamthaushalts", + "Cubes": "10", + "Information": "true" + }, + { + "Code": "79994", + "Content": "Vergabestatistik", + "Cubes": "112", + "Information": "true" + } + ], + "Tables": [ + { + "Code": "12211-0009", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Deutschland,\nJahre, Geschlecht, Stellung im Beruf, Berufe", + "Time": "" + }, + { + "Code": "12211-1009", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Berufe", + "Time": "" + }, + { + "Code": "21331-0002", + "Content": "Gasthörer: Deutschland, Semester, Fächergruppen", + "Time": "" + }, + { + "Code": "21341-0002", + "Content": "Hauptberufliches wissenschaftliches und künstlerisches\nPersonal an Hochschulen: Deutschland, Jahre, Lehr- und\nForschungsbereiche nach Fächergruppen, Geschlecht", + "Time": "" + }, + { + "Code": "21341-0003", + "Content": "Professoren: Deutschland, Jahre, Fächergruppen, Geschlecht", + "Time": "" + }, + { + "Code": "21351-0001", + "Content": "Habilitationen: Deutschland, Jahre, Fächergruppen,\nNationalität, Geschlecht", + "Time": "" + }, + { + "Code": "21351-0002", + "Content": "Durchschnittsalter der habilitierten Personen: Deutschland,\nJahre, Fächergruppen, Geschlecht", + "Time": "" + }, + { + "Code": "21352-0002", + "Content": "Promovierende: Deutschland, Stichtag, Geschlecht,\nAltersgruppen, Fächergruppen", + "Time": "" + }, + { + "Code": "21352-0003", + "Content": "Promovierende: Deutschland, Stichtag, Nationalität,\nGeschlecht, Fächergruppen und Studienbereiche", + "Time": "" + }, + { + "Code": "21352-0004", + "Content": "Durchschnittsalter der Promovierenden: Deutschland,\nStichtag, Geschlecht, Fächergruppen", + "Time": "" + }, + { + "Code": "21371-0001", + "Content": "Ausgaben der Hochschulen: Deutschland, Jahre, Hochschulart,\nFächergruppen", + "Time": "" + }, + { + "Code": "21371-0002", + "Content": "Ausgaben der Hochschulen: Bundesländer, Jahre, Hochschulart,\nFächergruppen", + "Time": "" + }, + { + "Code": "21381-0005", + "Content": "Laufende Ausgaben der Hochschulen, Drittmittel der\nHochschulen: Deutschland, Jahre, Fächergruppen", + "Time": "" + }, + { + "Code": "21431-0004", + "Content": "Stipendiaten: Deutschland, Jahre, Nationalität, Geschlecht,\nFächergruppen", + "Time": "" + }, + { + "Code": "21811-0003", + "Content": "Interne Ausgaben für Forschung und Entwicklung: Deutschland,\nJahre, Einrichtungsart, Wissenschaftszweige", + "Time": "" + }, + { + "Code": "21811-0005", + "Content": "Personal für Forschung und Entwicklung\n(Vollzeitäquivalente): Deutschland, Jahre, Einrichtungsart,\nWissenschaftszweige", + "Time": "" + }, + { + "Code": "21811-0007", + "Content": "Personal für Forschung und Entwicklung\n(Vollzeitäquivalente): Deutschland, Jahre, Personalgruppen,\nWissenschaftszweige", + "Time": "" + }, + { + "Code": "21811-0022", + "Content": "Interne Ausgaben für Forschung und Entwicklung: Bundesländer\nund Ausland, Jahre, Wissenschaftszweige", + "Time": "" + }, + { + "Code": "41161-0001", + "Content": "Waldfläche: Deutschland, Jahre, Waldeigentumsarten", + "Time": "" + }, + { + "Code": "41161-0002", + "Content": "Forsteinheiten, Waldfläche: Deutschland, Jahre,\nWaldeigentumsarten, Größenklassen der Waldfläche", + "Time": "" + }, + { + "Code": "41161-0010", + "Content": "Waldfläche: Bundesländer, Jahre, Waldeigentumsarten", + "Time": "" + }, + { + "Code": "41161-0011", + "Content": "Forsteinheiten, Waldfläche: Bundesländer, Jahre,\nWaldeigentumsarten, Größenklassen der Waldfläche", + "Time": "" + }, + { + "Code": "41161-0100", + "Content": "Forstbetriebe, Waldfläche: Deutschland, Jahre (bis 2007),\nRechtsform, Größenklassen der Waldfläche", + "Time": "" + }, + { + "Code": "51000-0005", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWarensystematik", + "Time": "" + }, + { + "Code": "51000-0006", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWarensystematik", + "Time": "" + }, + { + "Code": "51000-0009", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre, Land,\nWarenverzeichnis (4-/6-Steller)", + "Time": "" + }, + { + "Code": "51000-0010", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWare (4-/6-Steller), Länder", + "Time": "" + }, + { + "Code": "51000-0011", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate, Land,\nWarenverzeichnis (4-/6-Steller)", + "Time": "" + }, + { + "Code": "51000-0012", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWare (4-/6-Steller), Länder", + "Time": "" + }, + { + "Code": "51000-0013", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWarenverzeichnis (8-Steller)", + "Time": "" + }, + { + "Code": "51000-0014", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWarenverzeichnis (8-Steller)", + "Time": "" + }, + { + "Code": "51000-0015", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre, Land,\nWarenverzeichnis (8-Steller)", + "Time": "" + }, + { + "Code": "51000-0016", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWare (8-Steller), Länder", + "Time": "" + }, + { + "Code": "51000-0017", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate, Land,\nWarenverzeichnis (8-Steller)", + "Time": "" + }, + { + "Code": "51000-0018", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWare (8-Steller), Länder", + "Time": "" + }, + { + "Code": "62361-0030", + "Content": "Bruttostundenverdienste, Bruttomonatsverdienste: Deutschland, Stichmonat, Geschlecht, Berufe", + "Time": "" + }, + { + "Code": "62361-0034", + "Content": "Bruttojahresverdienste: Deutschland, Jahre, Geschlecht, Berufe", + "Time": "" + }, + { + "Code": "71141-0004", + "Content": "Rechnungsergebnisse des öffentlichen Gesamthaushalts\n(Nettoausgaben, Personalausgaben, Baumaßnahmen):\nDeutschland, Jahre, Körperschaftsgruppen, Aufgabenbereiche", + "Time": "" + }, + { + "Code": "79994-0011", + "Content": "Genannte CPV-Codes in vergebenen öffentlichen Aufträgen und\nKonzessionen: Deutschland, Quartale, Auftraggeberebene,\nCPV-Codes (Abteilungen)", + "Time": "" + }, + { + "Code": "79994-0109", + "Content": "Genannte CPV-Codes in vergebenen öffentlichen Aufträgen und Konzessionen: Bundesländer, Quartale, Auftraggeberebene, CPV-Codes (Abteilungen)", + "Time": "" + } + ], + "Timeseries": null, + "Variables": [ + { + "Code": "AFGBE3", + "Content": "Aufgabenbereiche der öffentlichen Haushalte", + "Type": "sachlich", + "Values": "22", + "Information": "false" + }, + { + "Code": "BERLF1", + "Content": "Lehr- und Forschungsbereiche", + "Type": "sachlich", + "Values": "84", + "Information": "false" + }, + { + "Code": "BILFG1", + "Content": "Fächergruppen", + "Type": "sachlich", + "Values": "10", + "Information": "false" + }, + { + "Code": "BILFG2", + "Content": "Fächergruppen", + "Type": "sachlich", + "Values": "10", + "Information": "false" + }, + { + "Code": "BILFG3", + "Content": "Fächergruppen", + "Type": "sachlich", + "Values": "11", + "Information": "false" + }, + { + "Code": "BILFG4", + "Content": "Fächergruppen", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "BILFG5", + "Content": "Fächergruppen", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "BILFG6", + "Content": "Fächergruppen", + "Type": "sachlich", + "Values": "12", + "Information": "false" + }, + { + "Code": "BILFG7", + "Content": "Fächergruppen", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "BTR009", + "Content": "Forsteinheiten", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "CPV08A", + "Content": "CPV-Codes (Abteilungen)", + "Type": "sachlich", + "Values": "45", + "Information": "true" + }, + { + "Code": "KB10A1", + "Content": "Berufsbereiche (KB2010), 1-Steller", + "Type": "sachlich", + "Values": "10", + "Information": "false" + }, + { + "Code": "KB10A3", + "Content": "Berufsgruppen (KB2010), 3-Steller", + "Type": "sachlich", + "Values": "144", + "Information": "true" + }, + { + "Code": "KB10A5", + "Content": "Berufsgattungen (KB2010), 5-Steller", + "Type": "sachlich", + "Values": "1300", + "Information": "true" + }, + { + "Code": "WAM6", + "Content": "Warenverzeichnis Außenhandelsstatistik (6-Steller)", + "Type": "sachlich", + "Values": "6438", + "Information": "true" + }, + { + "Code": "WAM8", + "Content": "Warenverzeichnis Außenhandelsstatistik (8-Steller)", + "Type": "sachlich", + "Values": "14319", + "Information": "true" + }, + { + "Code": "WISZW1", + "Content": "Wissenschaftszweige", + "Type": "sachlich", + "Values": "6", + "Information": "false" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/find2_fake/api/find/find-86e7c4-04539a-POST.json b/tests/testthat/find2_fake/api/find/find-86e7c4-04539a-POST.json new file mode 100644 index 0000000..a7e683c --- /dev/null +++ b/tests/testthat/find2_fake/api/find/find-86e7c4-04539a-POST.json @@ -0,0 +1,357 @@ +{ + "Ident": { + "Service": "find", + "Method": "find" + }, + "Status": { + "Code": 999, + "Content": "test error message", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "term": "bus", + "category": "Alle", + "pagelength": "500", + "language": "de" + }, + "Cubes": [ + { + "Code": "12251B4005", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "vollständig mit Werten", + "Time": "2020-2024", + "LatestUpdate": "29.01.2026 19:59:27h", + "Information": "false" + }, + { + "Code": "12251B4006", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Geschlecht, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "vollständig mit Werten", + "Time": "2020-2024", + "LatestUpdate": "29.01.2026 19:58:14h", + "Information": "false" + }, + { + "Code": "12251B4007", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Stellung im Beruf, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "vollständig mit Werten", + "Time": "2020", + "LatestUpdate": "17.11.2022 12:13:19h", + "Information": "false" + }, + { + "Code": "12251B4008", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Geschlecht, Stellung im Beruf, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "vollständig mit Werten", + "Time": "2020", + "LatestUpdate": "17.11.2022 12:13:40h", + "Information": "false" + }, + { + "Code": "12251B4015", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Stellung im Beruf, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "vollständig mit Werten", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:59:24h", + "Information": "false" + }, + { + "Code": "12251B4016", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Geschlecht, Stellung im Beruf, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "vollständig mit Werten", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:59:06h", + "Information": "false" + }, + { + "Code": "12251L4005", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "vollständig mit Werten", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:59:10h", + "Information": "false" + }, + { + "Code": "12251L4006", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "vollständig mit Werten", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:58:29h", + "Information": "false" + }, + { + "Code": "12251L4007", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "vollständig mit Werten", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:59:03h", + "Information": "false" + }, + { + "Code": "12251L4008", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "vollständig mit Werten", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:59:21h", + "Information": "false" + }, + { + "Code": "45413BJ008", + "Content": "Statistik über die touristische Nachfrage, Reisen, Deutschland insgesamt, Verkehrsmittel, Jahr", + "State": "vollständig mit Werten", + "Time": "2012-2024", + "LatestUpdate": "26.06.2025 13:02:27h", + "Information": "false" + }, + { + "Code": "51000BJ160", + "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Jahr", + "State": "vollständig mit Werten", + "Time": "2008-2024", + "LatestUpdate": "01.10.2025 15:02:15h", + "Information": "false" + }, + { + "Code": "51000BJ161", + "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Jahr", + "State": "vollständig mit Werten", + "Time": "2008-2024", + "LatestUpdate": "01.10.2025 15:25:26h", + "Information": "false" + }, + { + "Code": "51000BJ180", + "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Jahr", + "State": "vollständig mit Werten", + "Time": "2006-2024", + "LatestUpdate": "01.10.2025 15:01:46h", + "Information": "false" + }, + { + "Code": "51000BJ181", + "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Jahr", + "State": "vollständig mit Werten", + "Time": "2006-2024", + "LatestUpdate": "01.10.2025 15:26:44h", + "Information": "false" + }, + { + "Code": "51000BM160", + "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2008-November 2025", + "LatestUpdate": "19.01.2026 15:04:44h", + "Information": "false" + }, + { + "Code": "51000BM161", + "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2008-November 2025", + "LatestUpdate": "19.01.2026 18:09:55h", + "Information": "false" + }, + { + "Code": "51000BM180", + "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2006-November 2025", + "LatestUpdate": "19.01.2026 15:05:32h", + "Information": "false" + }, + { + "Code": "51000BM181", + "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2006-November 2025", + "LatestUpdate": "19.01.2026 20:45:56h", + "Information": "false" + }, + { + "Code": "62361BJ010", + "Content": "Verdiensterhebung, Durchschn. Bruttostundenverdienste ohne Sonderz., Durchschn. Bruttomonatsverdienste ohne Sonderz., Mittlere Bruttostundenverdienste ohne Sonderz., Mittlere Bruttomonatsverdienste ohne Sonderz., Deutschland insgesamt, Berufsgattungen (KB2010), 5-Steller, Stichmonat", + "State": "vollständig mit Werten", + "Time": "04/2022-04/2025", + "LatestUpdate": "04.12.2025 19:46:30h", + "Information": "false" + }, + { + "Code": "62361BJ013", + "Content": "Verdiensterhebung, Durchschn. Bruttostundenverdienste ohne Sonderz., Durchschn. Bruttomonatsverdienste ohne Sonderz., Mittlere Bruttostundenverdienste ohne Sonderz., Mittlere Bruttomonatsverdienste ohne Sonderz., Deutschland insgesamt, Geschlecht, Berufsgattungen (KB2010), 5-Steller, Stichmonat", + "State": "vollständig mit Werten", + "Time": "04/2022-04/2025", + "LatestUpdate": "04.12.2025 19:45:49h", + "Information": "false" + }, + { + "Code": "62361BJ016", + "Content": "Verdiensterhebung, Durchschn. Bruttojahresverdienste inkl. Sonderz., Mittlere Bruttojahresverdienste inkl. Sonderz., Deutschland insgesamt, Berufsgattungen (KB2010), 5-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2022-2024", + "LatestUpdate": "27.03.2025 08:05:31h", + "Information": "false" + }, + { + "Code": "62361BJ019", + "Content": "Verdiensterhebung, Durchschn. Bruttojahresverdienste inkl. Sonderz., Mittlere Bruttojahresverdienste inkl. Sonderz., Deutschland insgesamt, Geschlecht, Berufsgattungen (KB2010), 5-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2022-2024", + "LatestUpdate": "27.03.2025 08:05:41h", + "Information": "false" + } + ], + "Statistics": [ + { + "Code": "12251", + "Content": "Arbeitsmarktstatistik des Mikrozensus", + "Cubes": "99", + "Information": "true" + }, + { + "Code": "45413", + "Content": "Statistik über die touristische Nachfrage", + "Cubes": "10", + "Information": "true" + }, + { + "Code": "51000", + "Content": "Außenhandel", + "Cubes": "79", + "Information": "true" + }, + { + "Code": "62361", + "Content": "Verdiensterhebung", + "Cubes": "152", + "Information": "true" + } + ], + "Tables": [ + { + "Code": "12251-0005", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Deutschland, Jahre, Geschlecht, Stellung im Beruf, Benutztes Verkehrsmittel für den Hinweg zur Arbeitsstätte", + "Time": "" + }, + { + "Code": "12251-0105", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer, Jahre, Geschlecht, Stellung im Beruf, Benutztes Verkehrsmittel für den Hinweg zur Arbeitsstätte", + "Time": "" + }, + { + "Code": "45413-0004", + "Content": "Reisen: Deutschland, Jahre,\nReisedauer/Reisegründe/Unterkünfte/Verkehrsmittel", + "Time": "" + }, + { + "Code": "51000-0005", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWarensystematik", + "Time": "" + }, + { + "Code": "51000-0006", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWarensystematik", + "Time": "" + }, + { + "Code": "51000-0009", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre, Land,\nWarenverzeichnis (4-/6-Steller)", + "Time": "" + }, + { + "Code": "51000-0010", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWare (4-/6-Steller), Länder", + "Time": "" + }, + { + "Code": "51000-0011", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate, Land,\nWarenverzeichnis (4-/6-Steller)", + "Time": "" + }, + { + "Code": "51000-0012", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWare (4-/6-Steller), Länder", + "Time": "" + }, + { + "Code": "51000-0013", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWarenverzeichnis (8-Steller)", + "Time": "" + }, + { + "Code": "51000-0014", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWarenverzeichnis (8-Steller)", + "Time": "" + }, + { + "Code": "51000-0015", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre, Land,\nWarenverzeichnis (8-Steller)", + "Time": "" + }, + { + "Code": "51000-0016", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWare (8-Steller), Länder", + "Time": "" + }, + { + "Code": "51000-0017", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate, Land,\nWarenverzeichnis (8-Steller)", + "Time": "" + }, + { + "Code": "51000-0018", + "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWare (8-Steller), Länder", + "Time": "" + }, + { + "Code": "62361-0030", + "Content": "Bruttostundenverdienste, Bruttomonatsverdienste: Deutschland, Stichmonat, Geschlecht, Berufe", + "Time": "" + }, + { + "Code": "62361-0034", + "Content": "Bruttojahresverdienste: Deutschland, Jahre, Geschlecht, Berufe", + "Time": "" + } + ], + "Timeseries": null, + "Variables": [ + { + "Code": "ARBVK1", + "Content": "Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst.", + "Type": "sachlich", + "Values": "10", + "Information": "true" + }, + { + "Code": "KB10A5", + "Content": "Berufsgattungen (KB2010), 5-Steller", + "Type": "sachlich", + "Values": "1300", + "Information": "true" + }, + { + "Code": "VERKM1", + "Content": "Verkehrsmittel", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "WAM6", + "Content": "Warenverzeichnis Außenhandelsstatistik (6-Steller)", + "Type": "sachlich", + "Values": "6438", + "Information": "true" + }, + { + "Code": "WAM8", + "Content": "Warenverzeichnis Außenhandelsstatistik (8-Steller)", + "Type": "sachlich", + "Values": "14319", + "Information": "true" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/find2_fake/api/find/find-86e7c4-25f401-POST.json b/tests/testthat/find2_fake/api/find/find-86e7c4-25f401-POST.json deleted file mode 100644 index 17d6c3a..0000000 --- a/tests/testthat/find2_fake/api/find/find-86e7c4-25f401-POST.json +++ /dev/null @@ -1,604 +0,0 @@ -{ - "Ident": { - "Service": "find", - "Method": "find" - }, - "Status": { - "Code": 999, - "Content": "test error message", - "Type": "Information" - }, - "Parameter": { - "username": "********************", - "password": "********************", - "term": "bus", - "category": "Alle", - "pagelength": "500", - "language": "de" - }, - "Cubes": [ - { - "Code": "12251B4005", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", - "State": "vollständig mit Werten", - "Time": "2020", - "LatestUpdate": "17.11.2022 12:12:42h", - "Information": "false" - }, - { - "Code": "12251B4006", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Geschlecht, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", - "State": "vollständig mit Werten", - "Time": "2020", - "LatestUpdate": "17.11.2022 12:12:59h", - "Information": "false" - }, - { - "Code": "12251B4007", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Stellung im Beruf, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", - "State": "vollständig mit Werten", - "Time": "2020", - "LatestUpdate": "17.11.2022 12:13:19h", - "Information": "false" - }, - { - "Code": "12251B4008", - "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Deutschland insgesamt, Geschlecht, Stellung im Beruf, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", - "State": "vollständig mit Werten", - "Time": "2020", - "LatestUpdate": "17.11.2022 12:13:40h", - "Information": "false" - }, - { - "Code": "45413BJ008", - "Content": "Statistik über die touristische Nachfrage, Reisen, Deutschland insgesamt, Verkehrsmittel, Jahr", - "State": "vollständig mit Werten", - "Time": "2012-2023", - "LatestUpdate": "03.07.2024 08:02:18h", - "Information": "false" - }, - { - "Code": "46181BJ001", - "Content": "Personenverkehr mit Bussen und Bahnen, Beförderte Personen, Beförderungsleistung, Deutschland insgesamt, Verkehrsart (bis 2022), Hauptverkehrsverbindung, Jahr", - "State": "vollständig mit Werten", - "Time": "2004-2022", - "LatestUpdate": "29.11.2023 14:33:17h", - "Information": "false" - }, - { - "Code": "46181BJ002", - "Content": "Personenverkehr mit Bussen und Bahnen, Unternehmen, Beförderte Personen, Beförderungsleistung, Fahrleistung, Beförderungsangebot, Deutschland insgesamt, Tätigkeit der Unternehmen im Liniennahverkehr, Jahr", - "State": "vollständig mit Werten", - "Time": "2004-2023", - "LatestUpdate": "12.03.2025 13:14:27h", - "Information": "false" - }, - { - "Code": "46181BJ003", - "Content": "Personenverkehr mit Bussen und Bahnen, Fahrleistung, Beförderungsangebot, Deutschland insgesamt, Verkehrsart (bis 2022), Einsatzgebiet, Jahr", - "State": "vollständig mit Werten", - "Time": "2004-2022", - "LatestUpdate": "29.11.2023 14:33:35h", - "Information": "false" - }, - { - "Code": "46181BJ004", - "Content": "Personenverkehr mit Bussen und Bahnen, Beförderte Personen, Beförderungsleistung, Deutschland insgesamt, Verkehrsart, Hauptverkehrsverbindung, Jahr", - "State": "vollständig mit Werten", - "Time": "2022-2023", - "LatestUpdate": "12.03.2025 13:35:26h", - "Information": "false" - }, - { - "Code": "46181BJ005", - "Content": "Personenverkehr mit Bussen und Bahnen, Fahrleistung, Beförderungsangebot, Deutschland insgesamt, Verkehrsart, Einsatzgebiet, Jahr", - "State": "vollständig mit Werten", - "Time": "2022-2023", - "LatestUpdate": "12.03.2025 13:35:26h", - "Information": "false" - }, - { - "Code": "46181BV001", - "Content": "Personenverkehr mit Bussen und Bahnen, Unternehmen, Beförderte Personen, Personenkilometer, Deutschland insgesamt, Verkehrsart (Liniennah- und Linienfernverkehr), Quartale, Jahr", - "State": "vollständig mit Werten", - "Time": "1. Quartal 2004-3. Quartal 2024", - "LatestUpdate": "07.02.2025 09:48:17h", - "Information": "false" - }, - { - "Code": "46181L5001", - "Content": "Personenverkehr mit Bussen und Bahnen, Linienlängen im Nahverkehr, Linien im Nahverkehr, Bundesländer, Verkehrsart, Stichtag", - "State": "vollständig mit Werten", - "Time": "31.12.2004-31.12.2019", - "LatestUpdate": "05.08.2022 13:05:31h", - "Information": "false" - }, - { - "Code": "46181L5002", - "Content": "Personenverkehr mit Bussen und Bahnen, Fahrzeuge, Sitzplätze, Stehplätze, Bundesländer, Verkehrsart, Stichtag", - "State": "vollständig mit Werten", - "Time": "31.12.2004-31.12.2019", - "LatestUpdate": "05.08.2022 13:05:28h", - "Information": "false" - }, - { - "Code": "46181L5003", - "Content": "Personenverkehr mit Bussen und Bahnen, Beschäftigte, Bundesländer, Einsatzart, Stichtag", - "State": "vollständig mit Werten", - "Time": "31.12.2004-31.12.2019", - "LatestUpdate": "05.08.2022 13:05:30h", - "Information": "false" - }, - { - "Code": "46181LJ001", - "Content": "Personenverkehr mit Bussen und Bahnen, Unternehmen, Beförderte Personen, Beförderungsleistung, Fahrleistung, Beförderungsangebot, Bundesländer, Verkehrsart (bis 2022), Jahr", - "State": "vollständig mit Werten", - "Time": "2004-2022", - "LatestUpdate": "29.11.2023 14:33:31h", - "Information": "false" - }, - { - "Code": "46181LJ002", - "Content": "Personenverkehr mit Bussen und Bahnen, Unternehmen, Beförderte Personen, Beförderungsleistung, Fahrleistung, Beförderungsangebot, Einnahmen im Liniennahverkehr, Bundesländer, Unternehmensart, Jahr", - "State": "vollständig mit Werten", - "Time": "2004-2023", - "LatestUpdate": "12.03.2025 13:12:27h", - "Information": "false" - }, - { - "Code": "46181LJ003", - "Content": "Personenverkehr mit Bussen und Bahnen, Beförderungsleistung, Beförderungsleistung von großen Unternehmen, Fahrleistung, Fahrleistung von großen Unternehmen, Bundesländer, Verkehrsart, Jahr", - "State": "vollständig mit Werten", - "Time": "2004-2023", - "LatestUpdate": "12.03.2025 13:13:27h", - "Information": "false" - }, - { - "Code": "46181LJ004", - "Content": "Personenverkehr mit Bussen und Bahnen, Unternehmen, Beförderte Personen, Beförderungsleistung, Fahrleistung, Beförderungsangebot, Bundesländer, Verkehrsart, Jahr", - "State": "vollständig mit Werten", - "Time": "2022-2023", - "LatestUpdate": "12.03.2025 13:35:42h", - "Information": "false" - }, - { - "Code": "46181LV001", - "Content": "Personenverkehr mit Bussen und Bahnen, Unternehmen, Beförderte Personen, Personenkilometer, Bundesländer, Verkehrsart (Liniennah- und Linienfernverkehr), Quartale, Jahr", - "State": "vollständig mit Werten", - "Time": "1. Quartal 2004-3. Quartal 2024", - "LatestUpdate": "07.02.2025 09:48:21h", - "Information": "false" - }, - { - "Code": "51000BJ160", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Jahr", - "State": "vollständig mit Werten", - "Time": "2008-2024", - "LatestUpdate": "19.03.2025 18:45:36h", - "Information": "false" - }, - { - "Code": "51000BJ161", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Jahr", - "State": "vollständig mit Werten", - "Time": "2008-2024", - "LatestUpdate": "19.03.2025 19:25:27h", - "Information": "false" - }, - { - "Code": "51000BJ180", - "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Jahr", - "State": "vollständig mit Werten", - "Time": "2006-2024", - "LatestUpdate": "19.03.2025 18:46:43h", - "Information": "false" - }, - { - "Code": "51000BJ181", - "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Jahr", - "State": "vollständig mit Werten", - "Time": "2006-2024", - "LatestUpdate": "19.03.2025 19:07:01h", - "Information": "false" - }, - { - "Code": "51000BJ330", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warengruppen (EGW 2002: 3-Steller), Deutschland insgesamt, Jahr", - "State": "vollständig mit Werten", - "Time": "2008-2024", - "LatestUpdate": "19.03.2025 18:47:21h", - "Information": "false" - }, - { - "Code": "51000BJ331", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warengruppen (EGW 2002: 3-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Jahr", - "State": "vollständig mit Werten", - "Time": "2008-2024", - "LatestUpdate": "19.03.2025 18:50:10h", - "Information": "false" - }, - { - "Code": "51000BJ903", - "Content": "Außenhandel, Ausfuhr: Volumen, Einfuhr: Volumen, Warengruppen (EGW 2002: 3-Steller), Deutschland insgesamt, Ländergruppen, Jahr", - "State": "vollständig mit Werten", - "Time": "2019-2024", - "LatestUpdate": "19.03.2025 18:52:54h", - "Information": "false" - }, - { - "Code": "51000BM160", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2008-Januar 2025", - "LatestUpdate": "19.03.2025 19:35:13h", - "Information": "false" - }, - { - "Code": "51000BM161", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (6-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2008-Januar 2025", - "LatestUpdate": "19.03.2025 22:18:28h", - "Information": "false" - }, - { - "Code": "51000BM180", - "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2006-Januar 2025", - "LatestUpdate": "19.03.2025 19:40:42h", - "Information": "false" - }, - { - "Code": "51000BM181", - "Content": "Außenhandel, Ausfuhr: Besondere Maßeinheit, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Besondere Maßeinheit, Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warenverzeichnis Außenhandelsstatistik (8-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2006-Januar 2025", - "LatestUpdate": "20.03.2025 02:17:39h", - "Information": "false" - }, - { - "Code": "51000BM330", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warengruppen (EGW 2002: 3-Steller), Deutschland insgesamt, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2001-Januar 2025", - "LatestUpdate": "19.03.2025 19:05:33h", - "Information": "false" - }, - { - "Code": "51000BM331", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Ausfuhr: Wert (US-Dollar), Einfuhr: Gewicht, Einfuhr: Wert, Einfuhr: Wert (US-Dollar), Warengruppen (EGW 2002: 3-Steller), Deutschland insgesamt, Länderverzeichnis für die Außenhandelsstatistik, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2001-Januar 2025", - "LatestUpdate": "19.03.2025 19:56:17h", - "Information": "false" - }, - { - "Code": "51000BM903", - "Content": "Außenhandel, Ausfuhr: Volumen, Einfuhr: Volumen, Warengruppen (EGW 2002: 3-Steller), Deutschland insgesamt, Ländergruppen, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2019-Januar 2025", - "LatestUpdate": "19.03.2025 19:08:37h", - "Information": "false" - }, - { - "Code": "51000LJ330", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Einfuhr: Gewicht, Einfuhr: Wert, Warengruppen (EGW 2002: 3-Steller), Bundesländer mit Ausland und Restposition, Jahr", - "State": "vollständig mit Werten", - "Time": "2008-2024", - "LatestUpdate": "19.03.2025 18:54:18h", - "Information": "false" - }, - { - "Code": "51000LJ331", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Einfuhr: Gewicht, Einfuhr: Wert, Warengruppen (EGW 2002: 3-Steller), Bundesländer mit Ausland und Restposition, Länderverzeichnis für die Außenhandelsstatistik, Jahr", - "State": "vollständig mit Werten", - "Time": "2008-2024", - "LatestUpdate": "19.03.2025 19:32:30h", - "Information": "false" - }, - { - "Code": "51000LM330", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Einfuhr: Gewicht, Einfuhr: Wert, Warengruppen (EGW 2002: 3-Steller), Bundesländer mit Ausland und Restposition, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2008-Januar 2025", - "LatestUpdate": "19.03.2025 19:12:58h", - "Information": "false" - }, - { - "Code": "51000LM331", - "Content": "Außenhandel, Ausfuhr: Gewicht, Ausfuhr: Wert, Einfuhr: Gewicht, Einfuhr: Wert, Warengruppen (EGW 2002: 3-Steller), Bundesländer mit Ausland und Restposition, Länderverzeichnis für die Außenhandelsstatistik, Monate, Jahr", - "State": "vollständig mit Werten", - "Time": "Januar 2008-Januar 2025", - "LatestUpdate": "19.03.2025 23:18:05h", - "Information": "false" - }, - { - "Code": "62361BJ010", - "Content": "Verdiensterhebung, Durchschn. Bruttostundenverdienste ohne Sonderz., Durchschn. Bruttomonatsverdienste ohne Sonderz., Mittlere Bruttostundenverdienste ohne Sonderz., Mittlere Bruttomonatsverdienste ohne Sonderz., Deutschland insgesamt, Berufsgattungen (KB2010), 5-Steller, Stichmonat", - "State": "vollständig mit Werten", - "Time": "04/2022-04/2024", - "LatestUpdate": "06.02.2025 08:00:25h", - "Information": "false" - }, - { - "Code": "62361BJ013", - "Content": "Verdiensterhebung, Durchschn. Bruttostundenverdienste ohne Sonderz., Durchschn. Bruttomonatsverdienste ohne Sonderz., Mittlere Bruttostundenverdienste ohne Sonderz., Mittlere Bruttomonatsverdienste ohne Sonderz., Deutschland insgesamt, Geschlecht, Berufsgattungen (KB2010), 5-Steller, Stichmonat", - "State": "vollständig mit Werten", - "Time": "04/2022-04/2024", - "LatestUpdate": "06.02.2025 08:00:06h", - "Information": "false" - }, - { - "Code": "62361BJ016", - "Content": "Verdiensterhebung, Durchschn. Bruttojahresverdienste inkl. Sonderz., Mittlere Bruttojahresverdienste inkl. Sonderz., Deutschland insgesamt, Berufsgattungen (KB2010), 5-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2022-2023", - "LatestUpdate": "28.03.2024 08:04:39h", - "Information": "false" - }, - { - "Code": "62361BJ019", - "Content": "Verdiensterhebung, Durchschn. Bruttojahresverdienste inkl. Sonderz., Mittlere Bruttojahresverdienste inkl. Sonderz., Deutschland insgesamt, Geschlecht, Berufsgattungen (KB2010), 5-Steller, Jahr", - "State": "vollständig mit Werten", - "Time": "2022-2023", - "LatestUpdate": "28.03.2024 08:04:51h", - "Information": "false" - } - ], - "Statistics": [ - { - "Code": "12251", - "Content": "Arbeitsmarktstatistik des Mikrozensus", - "Cubes": "60", - "Information": "false" - }, - { - "Code": "45413", - "Content": "Statistik über die touristische Nachfrage", - "Cubes": "10", - "Information": "true" - }, - { - "Code": "46181", - "Content": "Personenverkehr mit Bussen und Bahnen", - "Cubes": "14", - "Information": "true" - }, - { - "Code": "51000", - "Content": "Außenhandel", - "Cubes": "79", - "Information": "true" - }, - { - "Code": "62361", - "Content": "Verdiensterhebung", - "Cubes": "152", - "Information": "true" - } - ], - "Tables": [ - { - "Code": "12251-0005", - "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Deutschland, Jahre, Geschlecht, Stellung im Beruf, Benutztes Verkehrsmittel für den Hinweg zur Arbeitsstätte", - "Time": "" - }, - { - "Code": "45413-0004", - "Content": "Reisen: Deutschland, Jahre,\nReisedauer/Reisegründe/Unterkünfte/Verkehrsmittel", - "Time": "" - }, - { - "Code": "46181-0001", - "Content": "Beförderte Personen, Beförderungsleistung\n(Personenfernverkehr mit Bussen): Deutschland, Jahre,\nVerkehrsart, Hauptverkehrsverbindung", - "Time": "" - }, - { - "Code": "46181-0002", - "Content": "Fahrleistung, Beförderungsangebot (Personenfernverkehr mit\nBussen): Deutschland, Jahre, Verkehrsart, Einsatzgebiet", - "Time": "" - }, - { - "Code": "46181-0003", - "Content": "Unternehmen, Beförderte Personen, Beförderungsleistung,\nFahrleistung, Beförderungsangebot (Personenverkehr m. Bussen\nu. Bahnen): Deutschland, Jahre, Tätigkeit der Unternehmen", - "Time": "" - }, - { - "Code": "46181-0005", - "Content": "Unternehmen, Beförderte Personen, Personenkilometer\n(Personenverkehr mit Bussen und Bahnen): Deutschland,\nQuartale, Verkehrsart", - "Time": "" - }, - { - "Code": "46181-0010", - "Content": "Unternehmen, Beförderte Personen, Beförderungsleistung,\nFahrleistung, Beförderungsangebot (Personenverkehr mit\nBussen und Bahnen): Bundesländer, Jahre, Verkehrsart", - "Time": "" - }, - { - "Code": "46181-0011", - "Content": "Unternehmen, Beförderte Pers., Beförderungs-, Fahrleistung,\nBeförderungsangebot, Einnahmen (Personenverkehr mit\nBussen und Bahnen): Bundesländer, Jahre, Unternehmensart", - "Time": "" - }, - { - "Code": "46181-0012", - "Content": "Beförderungs-, Fahrleistung (von großen Unternehmen)\n(Personenverkehr mit Bussen und Bahnen): Bundesländer,\nJahre, Verkehrsart", - "Time": "" - }, - { - "Code": "46181-0015", - "Content": "Unternehmen, Beförderte Personen, Personenkilometer\n(Personenverkehr mit Bussen und Bahnen): Bundesländer,\nQuartale, Verkehrsart", - "Time": "" - }, - { - "Code": "46181-0020", - "Content": "Linienlängen, Linien im Nahverkehr (Personenverkehr mit\nBussen und Bahnen): Bundesländer, Stichtag, Verkehrsart", - "Time": "" - }, - { - "Code": "46181-0021", - "Content": "Fahrzeuge, Sitz-, Stehplätze (Personenverkehr mit Bussen und\nBahnen): Bundesländer, Stichtag, Verkehrsart", - "Time": "" - }, - { - "Code": "46181-0022", - "Content": "Beschäftigte (Personenverkehr mit Bussen und Bahnen):\nBundesländer, Stichtag, Einsatzart", - "Time": "" - }, - { - "Code": "51000-0005", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWarensystematik", - "Time": "" - }, - { - "Code": "51000-0006", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWarensystematik", - "Time": "" - }, - { - "Code": "51000-0007", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre, Länder,\nWarensystematik", - "Time": "" - }, - { - "Code": "51000-0008", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate, Länder,\nWarensystematik", - "Time": "" - }, - { - "Code": "51000-0009", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre, Land,\nWarenverzeichnis (4-/6-Steller)", - "Time": "" - }, - { - "Code": "51000-0010", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWare (4-/6-Steller), Länder", - "Time": "" - }, - { - "Code": "51000-0011", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate, Land,\nWarenverzeichnis (4-/6-Steller)", - "Time": "" - }, - { - "Code": "51000-0012", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWare (4-/6-Steller), Länder", - "Time": "" - }, - { - "Code": "51000-0013", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWarenverzeichnis (8-Steller)", - "Time": "" - }, - { - "Code": "51000-0014", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWarenverzeichnis (8-Steller)", - "Time": "" - }, - { - "Code": "51000-0015", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre, Land,\nWarenverzeichnis (8-Steller)", - "Time": "" - }, - { - "Code": "51000-0016", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Jahre,\nWare (8-Steller), Länder", - "Time": "" - }, - { - "Code": "51000-0017", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate, Land,\nWarenverzeichnis (8-Steller)", - "Time": "" - }, - { - "Code": "51000-0018", - "Content": "Aus- und Einfuhr (Außenhandel): Deutschland, Monate,\nWare (8-Steller), Länder", - "Time": "" - }, - { - "Code": "51000-0034", - "Content": "Aus- und Einfuhr (Außenhandel): Bundesländer, Jahre,\nWarensystematik", - "Time": "" - }, - { - "Code": "51000-0035", - "Content": "Aus- und Einfuhr (Außenhandel): Bundesländer, Monate,\nWarensystematik", - "Time": "" - }, - { - "Code": "51000-0036", - "Content": "Aus- und Einfuhr (Außenhandel): Bundesländer, Jahre,\nLänder, Warensystematik", - "Time": "" - }, - { - "Code": "51000-0037", - "Content": "Aus- und Einfuhr (Außenhandel): Bundesländer, Monate,\nLänder, Warensystematik", - "Time": "" - }, - { - "Code": "51000-0050", - "Content": "Ein- u. Ausfuhr (Volumen) (Außenhandel): Deutschland, Jahre,\nLändergruppen, Warengruppen (EGW 2002: 3-Steller)", - "Time": "" - }, - { - "Code": "51000-0051", - "Content": "Ein- u. Ausfuhr (Volumen) (Außenhandel): Deutschland,\nMonate, Ländergruppen, Warengruppen (EGW 2002: 3-Steller)", - "Time": "" - }, - { - "Code": "62361-0030", - "Content": "Bruttostundenverdienste, Bruttomonatsverdienste: Deutschland, Stichmonat, Geschlecht, Berufe", - "Time": "" - }, - { - "Code": "62361-0034", - "Content": "Bruttojahresverdienste: Deutschland, Jahre, Geschlecht, Berufe", - "Time": "" - } - ], - "Timeseries": null, - "Variables": [ - { - "Code": "ARBVK1", - "Content": "Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst.", - "Type": "sachlich", - "Values": "10", - "Information": "true" - }, - { - "Code": "EGW3", - "Content": "Warengruppen (EGW 2002: 3-Steller)", - "Type": "sachlich", - "Values": "212", - "Information": "true" - }, - { - "Code": "KB10A5", - "Content": "Berufsgattungen (KB2010), 5-Steller", - "Type": "sachlich", - "Values": "1300", - "Information": "true" - }, - { - "Code": "VERKM1", - "Content": "Verkehrsmittel", - "Type": "sachlich", - "Values": "6", - "Information": "false" - }, - { - "Code": "WAM6", - "Content": "Warenverzeichnis Außenhandelsstatistik (6-Steller)", - "Type": "sachlich", - "Values": "6438", - "Information": "true" - }, - { - "Code": "WAM8", - "Content": "Warenverzeichnis Außenhandelsstatistik (8-Steller)", - "Type": "sachlich", - "Values": "14319", - "Information": "true" - } - ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" -} diff --git a/tests/testthat/find3/api/find/find-86e7c4-8e8e6f-POST.json b/tests/testthat/find3/api/find/find-86e7c4-8e8e6f-POST.json new file mode 100644 index 0000000..06b1057 --- /dev/null +++ b/tests/testthat/find3/api/find/find-86e7c4-8e8e6f-POST.json @@ -0,0 +1,33 @@ +{ + "Ident": { + "Service": "find", + "Method": "find" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "term": "zensus", + "category": "Alle", + "pagelength": "500", + "language": "de" + }, + "Cubes": null, + "Statistics": null, + "Tables": null, + "Timeseries": null, + "Variables": [ + { + "Code": "BEVZ01", + "Content": "Bevölkerung (Zensus)", + "Type": "Wert", + "Values": "-1", + "Information": "false" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/meta1/api/metadata/table-86e7c4-b5d932-POST.json b/tests/testthat/meta1/api/metadata/table-86e7c4-b5d932-POST.json new file mode 100644 index 0000000..cf7323d --- /dev/null +++ b/tests/testthat/meta1/api/metadata/table-86e7c4-b5d932-POST.json @@ -0,0 +1,78 @@ +{ + "Ident": { + "Service": "metadata", + "Method": "table" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "name": "11111-0001", + "area": "Alle", + "language": "de" + }, + "Object": { + "Code": "11111-0001", + "Content": "Gebietsfläche: Bundesländer, Stichtag", + "Time": { + "From": "31.12.1995", + "To": "31.12.2023" + }, + "Valid": "false", + "Structure": { + "Head": { + "Code": "11111", + "Content": "Feststellung des Gebietsstands", + "Type": "Statistik", + "Values": null, + "Selected": null, + "Functions": null, + "Structure": [ + { + "Code": "FLC006", + "Content": "Gebietsfläche", + "Type": "Merkmal", + "Values": null, + "Selected": null, + "Functions": null, + "Structure": null, + "Updated": "see parent" + } + ], + "Updated": "see parent" + }, + "Columns": [ + { + "Code": "STAG", + "Content": "Stichtag", + "Type": "Merkmal", + "Values": "1", + "Selected": "1", + "Functions": null, + "Structure": null, + "Updated": "see parent" + } + ], + "Rows": [ + { + "Code": "DLAND", + "Content": "Bundesländer", + "Type": "Merkmal", + "Values": null, + "Selected": null, + "Functions": null, + "Structure": null, + "Updated": "see parent" + } + ], + "Subtitel": null, + "Subheading": null + }, + "Updated": "28.12.2022 09:24:14h" + }, + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/meta2_fake/api/metadata/cube-86e7c4-10d572-POST.json b/tests/testthat/meta2_fake/api/metadata/cube-86e7c4-8e9b02-POST.json similarity index 93% rename from tests/testthat/meta2_fake/api/metadata/cube-86e7c4-10d572-POST.json rename to tests/testthat/meta2_fake/api/metadata/cube-86e7c4-8e9b02-POST.json index 6ac8a96..7043a2d 100644 --- a/tests/testthat/meta2_fake/api/metadata/cube-86e7c4-10d572-POST.json +++ b/tests/testthat/meta2_fake/api/metadata/cube-86e7c4-8e9b02-POST.json @@ -46,13 +46,14 @@ "2020", "2021", "2022", - "2023" + "2023", + "2024" ], "Values": "0", "Statistic": { "Code": "12631", "Content": "Statistik rechtskräftiger Urteile in Ehesachen", - "Updated": "10.10.2023 13:47:12h" + "Updated": "01.12.2025 13:21:16h" }, "Structure": { "Axis": [ @@ -93,7 +94,7 @@ } ] }, - "Updated": "27.06.2024 08:06:32h" + "Updated": "25.06.2025 18:00:47h" }, - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" } diff --git a/tests/testthat/modified1/api/catalogue/modifieddata-86e7c4-70191d-POST.json b/tests/testthat/modified1/api/catalogue/modifieddata-86e7c4-70191d-POST.json new file mode 100644 index 0000000..3f72bc4 --- /dev/null +++ b/tests/testthat/modified1/api/catalogue/modifieddata-86e7c4-70191d-POST.json @@ -0,0 +1,31 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "modifieddata" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "selection": "61111", + "type": "Alle", + "date": "01.01.2022", + "pagelength": "500", + "language": "de", + "area": "Alle" + }, + "List": [ + { + "Code": "61111", + "Content": "Verbraucherpreisindex für Deutschland", + "Type": "Aktualisierte Statistiken", + "Date": "17.02.2026", + "Added": "Jan 2026" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-ce75f1-POST.json b/tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-ce75f1-POST.json new file mode 100644 index 0000000..cd11a51 --- /dev/null +++ b/tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-ce75f1-POST.json @@ -0,0 +1,25 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "modifieddata" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "selection": "61111", + "type": "Alle", + "date": "18.02.2026", + "pagelength": "500", + "language": "de", + "area": "Alle" + }, + "List": [ + null + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/modified4/api/catalogue/modifieddata-86e7c4-b43eca-POST.json b/tests/testthat/modified4/api/catalogue/modifieddata-86e7c4-b43eca-POST.json new file mode 100644 index 0000000..35b46a2 --- /dev/null +++ b/tests/testthat/modified4/api/catalogue/modifieddata-86e7c4-b43eca-POST.json @@ -0,0 +1,23 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "modifieddata" + }, + "Status": { + "Code": 104, + "Content": "Es gibt keine Objekte zum angegebenen Selektionskriterium", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "selection": "61234", + "type": "Alle", + "date": "01.01.2022", + "pagelength": "500", + "language": "de", + "area": "Alle" + }, + "List": null, + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/searchvars1/api/catalogue/variables-86e7c4-582c7a-POST.json b/tests/testthat/searchvars1/api/catalogue/variables-86e7c4-582c7a-POST.json new file mode 100644 index 0000000..fb1eb74 --- /dev/null +++ b/tests/testthat/searchvars1/api/catalogue/variables-86e7c4-582c7a-POST.json @@ -0,0 +1,3525 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "variables" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "selection": "", + "area": "Alle", + "searchcriterion": "Code", + "sortcriterion": "Code", + "type": "Alle", + "pagelength": "500", + "language": "de" + }, + "List": [ + { + "Code": "ABF001", + "Content": "Input von Abfallentsorgungsanlagen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF002", + "Content": "Im eigenen Betrieb erzeugte Abfälle", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF003", + "Content": "Aus dem Inland angelieferter Abfall", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF004", + "Content": "Aus dem Ausland angelieferter Abfall", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF005", + "Content": "Output von Abfallentsorgungsanlagen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF006", + "Content": "Abfälle zur Beseitigung", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF007", + "Content": "Abfälle zur Verwertung", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF008", + "Content": "Beim Erstempfänger beseitigte Haushaltsabfälle", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF009", + "Content": "Beim Erstempfänger verwertete Haushaltsabfälle", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF010", + "Content": "Abfallerzeuger", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF011", + "Content": "Abfallmengen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF012", + "Content": "Abfallmengen, von Primärerzeugern erzeugt", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF013", + "Content": "Einsammler", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF014", + "Content": "Erzeugte Abfallmenge", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ABF015", + "Content": "Abfälle zu vorbereitenden Verfahren", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF016", + "Content": "Abfallaufkommen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABF017", + "Content": "Abfallverwertungsquote", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ABF018", + "Content": "Abfallrecyclingquote", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ABFAT1", + "Content": "Abfallarten", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ABFAT2", + "Content": "Abfallarten", + "Type": "sachlich", + "Values": "14", + "Information": "false" + }, + { + "Code": "ABFAT3", + "Content": "Abfallarten", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "ABFAT4", + "Content": "Gefährlichkeit der Abfälle", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ABFAT5", + "Content": "Abfallarten", + "Type": "sachlich", + "Values": "19", + "Information": "false" + }, + { + "Code": "ABFES1", + "Content": "Art der Abfallentsorgung", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ABG001", + "Content": "Produktions- und Importabgaben", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABG002", + "Content": "Produktions- und Importabgaben abzgl. Subventionen", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ABG003", + "Content": "Abgaben auf soz.Leistungen, verbrauchsnahe Steuern", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ABG004", + "Content": "Abgabe an Sonstige", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABG005", + "Content": "Stromabgabe", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABG006", + "Content": "Wärmeabgabe", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABG007", + "Content": "Sonstige Produktionsabgaben", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABG008", + "Content": "Nettoproduktionsabgaben", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABNAT1", + "Content": "Abnehmer", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ABNGR1", + "Content": "Abnehmergruppen", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ABNGR2", + "Content": "Abnehmergruppen", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ABS001", + "Content": "Steuerliche Abschreibungen auf Sachanlagen", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ABS002", + "Content": "Abschreibungen", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ABS008", + "Content": "Abschreibungen (Anteil am BPW)", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ABS009", + "Content": "Stromabsatz", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABS010", + "Content": "Gasabsatz", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABS011", + "Content": "Absatz von Bier", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ABS012", + "Content": "Absatz von Biermischungen", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ABS013", + "Content": "Versteuerter Bierabsatz", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ABS014", + "Content": "Steuerfreier Bierabsatz", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ABS015", + "Content": "Steuerfreier Bierabsatz in EU-Länder", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABS016", + "Content": "Steuerfreier Bierabsatz in Drittländer", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABS017", + "Content": "Steuerfreier Bierabsatz als Haustrunk", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABS019", + "Content": "Absatz von Schaumwein", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABS020", + "Content": "Versteuerter Schaumweinabsatz", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABS021", + "Content": "Steuerfreier Schaumweinabsatz", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ABSAT1", + "Content": "Absatzrichtung", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ABSATZ", + "Content": "Absatzrichtung", + "Type": "sachlich", + "Values": "5", + "Information": "true" + }, + { + "Code": "ABSBQ1", + "Content": "Bereits erworbener Ausbildungsabschluss", + "Type": "sachlich", + "Values": "9", + "Information": "true" + }, + { + "Code": "ABZ002", + "Content": "Abzüge der Arbeitnehmer", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ADAFW1", + "Content": "Art der Aufwendungen", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ADAFW2", + "Content": "Art der Aufwendungen", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ADANS1", + "Content": "Art der Anstellung", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ADANS2", + "Content": "Art der Anstellung", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ADANS3", + "Content": "Art der Tätigkeit", + "Type": "sachlich", + "Values": "11", + "Information": "false" + }, + { + "Code": "ADBES1", + "Content": "Art der Bestände", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ADFAW1", + "Content": "Art des finanziellen Aufwandes", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ADINV1", + "Content": "Art der Investitionen", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "ADOEL1", + "Content": "Verwandtschaftsverhältnis zu den Adoptiveltern", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ADP001", + "Content": "Aufgehobene Adoptionen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ADP002", + "Content": "Abgebrochene Adoptionspflegen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ADP003", + "Content": "Zur Adoption vorgemerkte Kinder und Jugendliche", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ADP004", + "Content": "Vorgemerkte Adoptionsbewerbungen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ADP005", + "Content": "In Adoptionspflege untergebrachte Kinder/Jugendl.", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ADPAT1", + "Content": "Art der Adoption", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ADPAW1", + "Content": "Art der Personalaufwendungen", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ADPAW2", + "Content": "Art der Personalaufwendungen", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ADSAW1", + "Content": "Art der Sachaufwendungen", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ADSAW2", + "Content": "Art der Sachaufwendungen", + "Type": "sachlich", + "Values": "10", + "Information": "false" + }, + { + "Code": "ADSAW6", + "Content": "Art der Sachaufwendungen", + "Type": "sachlich", + "Values": "16", + "Information": "false" + }, + { + "Code": "ADSST2", + "Content": "Soziale Stellung des Haupteinkommensbeziehers", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "ADSST3", + "Content": "Soziale Stellung des Haupteinkommensbeziehers", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ADVTN1", + "Content": "Nutzungsarten (tatsächliche Nutzung) (AdV-TN 2023)", + "Type": "sachlich", + "Values": "58", + "Information": "true" + }, + { + "Code": "ADVTN3", + "Content": "Nutzungsarten (AdV-Nutzungsartenverzeichnis 1991)", + "Type": "sachlich", + "Values": "8", + "Information": "true" + }, + { + "Code": "ADVTN4", + "Content": "Nutzungsarten (AdV-Nutzungsartenverzeichnis 1991)", + "Type": "sachlich", + "Values": "9", + "Information": "true" + }, + { + "Code": "ADVTN5", + "Content": "Nutzungsarten (AdV-Nutzungsartenverzeichnis 1991)", + "Type": "sachlich", + "Values": "5", + "Information": "true" + }, + { + "Code": "ADVTN6", + "Content": "Nutzungsarten", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ADVTN7", + "Content": "Nutzungsarten (AdV-Nutzungsartenkatalog 2009)", + "Type": "sachlich", + "Values": "32", + "Information": "true" + }, + { + "Code": "AEW006", + "Content": "Erzeuger von primär nachgewiesenen Abfallmengen", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AEW007", + "Content": "Abgegebene Abfallmenge an Entsorger", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "AFGBE1", + "Content": "Aufgabenbereiche", + "Type": "sachlich", + "Values": "14", + "Information": "false" + }, + { + "Code": "AFGBE2", + "Content": "Aufgabenbereiche", + "Type": "sachlich", + "Values": "11", + "Information": "false" + }, + { + "Code": "AFGBE3", + "Content": "Aufgabenbereiche der öffentlichen Haushalte", + "Type": "sachlich", + "Values": "22", + "Information": "false" + }, + { + "Code": "AFGBE4", + "Content": "Aufgabenbereiche der öffentlichen Haushalte", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "AFGBE5", + "Content": "Aufgabenbereiche des Trägers", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "AFHMN1", + "Content": "Aufenthalt vor der Maßnahme", + "Type": "sachlich", + "Values": "12", + "Information": "false" + }, + { + "Code": "AFTAT1", + "Content": "Auftragsart", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "AFTAT2", + "Content": "Auftragsart", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "AFTAT3", + "Content": "Auftragsart", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "AGEBN1", + "Content": "Auftraggeberebene", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "AGEBN2", + "Content": "Auftraggeberebene", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "AGL001", + "Content": "Relative Armutsgefährdungslücke (60%-Median)", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AGQ001", + "Content": "Armutsgefährdungsquote", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AGQ002", + "Content": "Armutsgefährdungsquote von Personen ab 16 Jahren", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AGQ003", + "Content": "Armutsgefährdungsquote v.erwerbstät. Pers.ab 16 J.", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AGQ004", + "Content": "Armutsgefährdungsquote v.erwerbstät. Pers.ab 18 J.", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AGS001", + "Content": "Armutsgefährdungsschwelle (60%-Median)", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AKEA01", + "Content": "Arbeitskostenarten", + "Type": "sachlich", + "Values": "52", + "Information": "true" + }, + { + "Code": "AKG001", + "Content": "Wägung Index der Arbeitskosten je geleistete Std.", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AKG002", + "Content": "Wägung Index d.Bruttoverdienste je geleistete Std.", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AKG003", + "Content": "Wägung Index d. Lohnnebenkosten je geleistete Std.", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AKI001", + "Content": "Index der Arbeitskosten je geleistete Stunde", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AKI002", + "Content": "Index der Bruttoverdienste je geleistete Stunde", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AKI003", + "Content": "Index der Lohnnebenkosten je geleistete Stunde", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AKJ001", + "Content": "Adoptierte Kinder und Jugendliche", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AKNSI1", + "Content": "Sitz des Auftrag-/Konzessionsnehmers", + "Type": "sachlich", + "Values": "4", + "Information": "true" + }, + { + "Code": "AKO001", + "Content": "Arbeitskosten je Vollzeiteinheit", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AKO002", + "Content": "Arbeitskosten je geleistete Stunde", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AKO003", + "Content": "Bruttoverdienste je geleistete Stunde", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "AKO004", + "Content": "Lohnnebenkosten je geleistete Stunde", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "AKO007", + "Content": "Bruttoarbeitskosten je Vollzeiteinheit", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AKO008", + "Content": "Nettoarbeitskosten je geleistete Stunde", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AKTIV1", + "Content": "Aktivitäten", + "Type": "sachlich", + "Values": "57", + "Information": "false" + }, + { + "Code": "ALDGR1", + "Content": "Größenklassen des Ackerlandes", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "ALT001", + "Content": "Altersjahre (u1-u27)", + "Type": "sachlich", + "Values": "22", + "Information": "false" + }, + { + "Code": "ALT004", + "Content": "Altersgruppen (u20-80m)", + "Type": "sachlich", + "Values": "12", + "Information": "false" + }, + { + "Code": "ALT011", + "Content": "Altersgruppen (u1-u18)", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "ALT012", + "Content": "Altersgruppen (u20-70m)", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "ALT013", + "Content": "Altersjahre (u1-85m)", + "Type": "sachlich", + "Values": "86", + "Information": "false" + }, + { + "Code": "ALT019", + "Content": "Altersjahre (u17-24m)", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "ALT020", + "Content": "Altersgruppen (u6-18m)", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ALT021", + "Content": "Altersgruppen (u18-65m)", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ALT022", + "Content": "Altersgruppen (u20-60m)", + "Type": "sachlich", + "Values": "10", + "Information": "false" + }, + { + "Code": "ALT023", + "Content": "Altersgruppen (18-75m)", + "Type": "sachlich", + "Values": "13", + "Information": "false" + }, + { + "Code": "ALT024", + "Content": "Altersgruppen (14-70m)", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "ALT026", + "Content": "Altersgruppen (u18-60m, unbekannt)", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "ALT027", + "Content": "Altersgruppen (u1-85m, unbekannt)", + "Type": "sachlich", + "Values": "18", + "Information": "false" + }, + { + "Code": "ALT028", + "Content": "Altersgruppen (u6-61m, unbekannt)", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "ALT029", + "Content": "Altersgruppen (u24-40m, unbekannt)", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "ALT030", + "Content": "Altersgruppen (u6-18)", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ALT031", + "Content": "Altersgruppen (u3-65m)", + "Type": "sachlich", + "Values": "11", + "Information": "false" + }, + { + "Code": "ALT032", + "Content": "Altersgruppen (u3-u14)", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ALT033", + "Content": "Altersgruppen (u4-65m)", + "Type": "sachlich", + "Values": "12", + "Information": "false" + }, + { + "Code": "ALT034", + "Content": "Altersgruppen (15-65m)", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "ALT035", + "Content": "Altersgruppen (u25-65m)", + "Type": "sachlich", + "Values": "10", + "Information": "false" + }, + { + "Code": "ALT036", + "Content": "Altersgruppen (u5-95m)", + "Type": "sachlich", + "Values": "28", + "Information": "false" + }, + { + "Code": "ALT037", + "Content": "Altersgruppen (u15-85m)", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "ALT038", + "Content": "Altersgruppen (u25-65m)", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "ALT039", + "Content": "Altersgruppen (16-65m)", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ALT040", + "Content": "Altersgruppen (u3-75m)", + "Type": "sachlich", + "Values": "11", + "Information": "false" + }, + { + "Code": "ALT041", + "Content": "Altersgruppen (u18-65m)", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ALT042", + "Content": "Altersgruppen (u3-12m)", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ALT043", + "Content": "Alter der Empfänger im ersten Bezugsmonat", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "ALT044", + "Content": "Alter d.anspruchsbegr.Kinder im ersten Bezugsmonat", + "Type": "sachlich", + "Values": "2", + "Information": "true" + }, + { + "Code": "ALT045", + "Content": "Altersgruppen (u18-65m)", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ALT046", + "Content": "Altersgruppen (u18-65m)", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ALT047", + "Content": "Altersgruppen (u15-65m)", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "ALT049", + "Content": "Altersgruppen (u30-60m)", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ALT050", + "Content": "Altersgruppen (u18-90m)", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "ALT051", + "Content": "Altersgruppen der Zuschauer", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ALT052", + "Content": "Alter des Haupteinkommensbeziehers (18-80m)", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "ALT058", + "Content": "Altersgruppen (u3-27m)", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "ALT059", + "Content": "Altersgruppen (u3-18)", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "ALT060", + "Content": "Altersgruppen (u7-18m)", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ALT061", + "Content": "Altersgruppen (u5-95m)", + "Type": "sachlich", + "Values": "20", + "Information": "false" + }, + { + "Code": "ALT062", + "Content": "Altersgruppen (u20-65m)", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "ALT063", + "Content": "Altersgruppen (15-u50, 15-u70)", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ALT064", + "Content": "Altersgruppen (15-65m)", + "Type": "sachlich", + "Values": "11", + "Information": "false" + }, + { + "Code": "ALT065", + "Content": "Altersgruppen (15-75m)", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "ALT066", + "Content": "Altersgruppen (u15-65m)", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "ALT067", + "Content": "Altersgruppen (u15-65m)", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ALT068", + "Content": "Altersgruppen (u15-75m)", + "Type": "sachlich", + "Values": "14", + "Information": "false" + }, + { + "Code": "ALT069", + "Content": "Altersgruppen (u20-85m)", + "Type": "sachlich", + "Values": "15", + "Information": "false" + }, + { + "Code": "ALT070", + "Content": "Altersgruppen (u17-50m)", + "Type": "sachlich", + "Values": "10", + "Information": "false" + }, + { + "Code": "ALT071", + "Content": "Altersgruppen (u18-65m)", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ALT072", + "Content": "Altersgruppen (16-u75)", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ALT073", + "Content": "Altersgruppen (u15-45m)", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "ALT074", + "Content": "Altersgruppen (10-65m)", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "ALT100", + "Content": "Altersjahre (u1-100m, unbekannt)", + "Type": "sachlich", + "Values": "102", + "Information": "false" + }, + { + "Code": "ALT101", + "Content": "Altersjahre (u1-100m)", + "Type": "sachlich", + "Values": "101", + "Information": "false" + }, + { + "Code": "ALT102", + "Content": "Altersjahre (u1-95m, unbekannt)", + "Type": "sachlich", + "Values": "97", + "Information": "false" + }, + { + "Code": "ALT103", + "Content": "Altersjahre (u1-90m)", + "Type": "sachlich", + "Values": "91", + "Information": "false" + }, + { + "Code": "ALT104", + "Content": "Altersjahre (u1-95m)", + "Type": "sachlich", + "Values": "96", + "Information": "false" + }, + { + "Code": "ALT112", + "Content": "Altersgruppen (u1-95m)", + "Type": "sachlich", + "Values": "22", + "Information": "false" + }, + { + "Code": "ALT116", + "Content": "Altersgruppen (u5-90m)", + "Type": "sachlich", + "Values": "19", + "Information": "false" + }, + { + "Code": "ALT117", + "Content": "Altersgruppen (u1-u18)", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "ALT118", + "Content": "Altersgruppen (14-50m)", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "ALT18M", + "Content": "Altersgruppen (u18-18m)", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ALT577", + "Content": "Vollendetes Alter", + "Type": "sachlich", + "Values": "101", + "Information": "false" + }, + { + "Code": "ALTAB2", + "Content": "Altersgruppen", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ALTBM1", + "Content": "Alter der Bäume", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ALTD01", + "Content": "Alter", + "Type": "sachlich", + "Values": "35", + "Information": "false" + }, + { + "Code": "ALTEF4", + "Content": "Alter der Ehefrau", + "Type": "sachlich", + "Values": "14", + "Information": "false" + }, + { + "Code": "ALTEM4", + "Content": "Alter des Ehemannes", + "Type": "sachlich", + "Values": "14", + "Information": "false" + }, + { + "Code": "ALTFR1", + "Content": "Altersgruppen der Frauen (25-75)", + "Type": "sachlich", + "Values": "10", + "Information": "false" + }, + { + "Code": "ALTGR1", + "Content": "Altersgruppen", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ALTJH8", + "Content": "Altersgruppen (u12-21m)", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ALTJK1", + "Content": "Alter des jüngsten Kindes", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ALTJK2", + "Content": "Alter des jüngsten Kindes", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ALTJK3", + "Content": "Alter des jüngsten Kindes", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "ALTKI1", + "Content": "Altersgruppen der Kinder", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ALTMT3", + "Content": "Alter der Mutter", + "Type": "sachlich", + "Values": "38", + "Information": "false" + }, + { + "Code": "ALTMZ1", + "Content": "Altersgruppen (u25-65m)", + "Type": "sachlich", + "Values": "4", + "Information": "true" + }, + { + "Code": "ALTNK1", + "Content": "Alter der Nichtschulkinder", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "ALTSK1", + "Content": "Alter der Schulkinder", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "ALTUN1", + "Content": "Alter der Unternehmen", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ALTVT1", + "Content": "Alter des Vaters", + "Type": "sachlich", + "Values": "55", + "Information": "false" + }, + { + "Code": "ALTWL1", + "Content": "Altersgruppen (18-60m)", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ALTWL2", + "Content": "Altersgruppen (18-70m)", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "ALTWL3", + "Content": "Altersgruppen (16-70m)", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "ALTX07", + "Content": "Altersgruppen (u20-65m)", + "Type": "sachlich", + "Values": "11", + "Information": "false" + }, + { + "Code": "ALTX18", + "Content": "Altersgruppen (u15-75m, unbekannt)", + "Type": "sachlich", + "Values": "11", + "Information": "false" + }, + { + "Code": "ALTX20", + "Content": "Altersgruppen (u3-75m)", + "Type": "sachlich", + "Values": "17", + "Information": "false" + }, + { + "Code": "ALTX29", + "Content": "Altersgruppen (u15-65m)", + "Type": "sachlich", + "Values": "12", + "Information": "true" + }, + { + "Code": "ALTX31", + "Content": "Altersgruppen (15-u45, 15-u50)", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ALTX32", + "Content": "Altersgruppen (u20-75m)", + "Type": "sachlich", + "Values": "13", + "Information": "true" + }, + { + "Code": "ALTX33", + "Content": "Altersgruppen (u3-21m)", + "Type": "sachlich", + "Values": "7", + "Information": "true" + }, + { + "Code": "ALTX35", + "Content": "Altersgruppen (u6-65m)", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "ANBA01", + "Content": "Anbauform", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ANBA02", + "Content": "Anbauform", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ANBA03", + "Content": "Anbauform", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ANBFL1", + "Content": "Art der Anbaufläche", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ANBTR1", + "Content": "Anbieter", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ANG001", + "Content": "Adoptierte mit gerichtlich ersetzter Einwilligung", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ANGEB1", + "Content": "Art des Angebots", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ANGEB2", + "Content": "Angebote", + "Type": "sachlich", + "Values": "6", + "Information": "true" + }, + { + "Code": "ANGEU1", + "Content": "EU-Angebote", + "Type": "sachlich", + "Values": "7", + "Information": "true" + }, + { + "Code": "ANGZS1", + "Content": "Angebotszustand", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ANKMU1", + "Content": "KMU-Angebote", + "Type": "sachlich", + "Values": "8", + "Information": "true" + }, + { + "Code": "ANL007", + "Content": "Abfallentsorgungsanlagen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ANL008", + "Content": "Abfallentsorgungsanlagen mit Output", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ANL009", + "Content": "Bauschuttaufbereitungsanlagen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ANL010", + "Content": "Bauschuttaufbereitungsanlagen mit Output", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ANL011", + "Content": "Asphaltmischanlagen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ANL012", + "Content": "Input von Asphaltmischanlagen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ANL013", + "Content": "Anlagengröße", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ANL014", + "Content": "Stromeinspeisende Anlagen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ANL015", + "Content": "Anlagen zur Elektrizitäts- und Wärmeerzeugung", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ANL016", + "Content": "Geprüfte Anlagen z. Umgang mit wassergef. Stoffen", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ANL017", + "Content": "Kläranlagen mit biologischer Abwasserbehandlung", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ANLAT1", + "Content": "Anlagenart", + "Type": "sachlich", + "Values": "15", + "Information": "false" + }, + { + "Code": "ANLAT2", + "Content": "Anlagenart", + "Type": "sachlich", + "Values": "39", + "Information": "false" + }, + { + "Code": "ANLAT3", + "Content": "Anlagenart", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ANLAT4", + "Content": "Anlagenarten", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ANLAT5", + "Content": "Anlagenarten", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ANLAT6", + "Content": "Anlagenart", + "Type": "sachlich", + "Values": "10", + "Information": "false" + }, + { + "Code": "ANLAT7", + "Content": "Anlagenart", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ANLAT8", + "Content": "Anlagenart", + "Type": "sachlich", + "Values": "11", + "Information": "false" + }, + { + "Code": "ANNIV1", + "Content": "Anforderungsniveau", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "APFSO1", + "Content": "Apfelsorten", + "Type": "sachlich", + "Values": "20", + "Information": "false" + }, + { + "Code": "ARB004", + "Content": "Arbeitstage", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ARBAT1", + "Content": "Art der geleisteten Arbeitsstunden", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ARBBR1", + "Content": "Arbeitsbereich", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "ARBBR2", + "Content": "Arbeitsbereich", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "ARBEF1", + "Content": "Entfernung zur Arbeitsstätte", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "ARBGR2", + "Content": "Arbeitergruppen (Landwirtschaft)", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ARBK01", + "Content": "Arbeitskräftegruppen", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "ARBK02", + "Content": "Arbeitskräftegruppen", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ARBK03", + "Content": "Art der Arbeitskräfte", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ARBK04", + "Content": "Art der Arbeitskräfte", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ARBNS1", + "Content": "Abend-, Nacht- und Schichtarbeit", + "Type": "sachlich", + "Values": "9", + "Information": "true" + }, + { + "Code": "ARBST1", + "Content": "Geleistete Arbeitsstunden", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ARBST2", + "Content": "Geleistete Arbeitsstunden je Person", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ARBVK1", + "Content": "Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst.", + "Type": "sachlich", + "Values": "10", + "Information": "true" + }, + { + "Code": "ARBWF1", + "Content": "Wochenend- und Feiertagsarbeit", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "ARBWG1", + "Content": "Zeitaufwand für den Hinweg zur Arbeitsstätte", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ARMGF1", + "Content": "Armut oder soziale Ausgrenzung", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ARSTW1", + "Content": "Größenkl. der geleisteten Arbeitsstunden je Woche", + "Type": "sachlich", + "Values": "7", + "Information": "true" + }, + { + "Code": "ARSTW2", + "Content": "Größenklassen der bezahlten Stunden je Woche", + "Type": "sachlich", + "Values": "61", + "Information": "false" + }, + { + "Code": "ARTDH3", + "Content": "Art der Hilfe", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "ARTDH5", + "Content": "Art der Hilfe", + "Type": "sachlich", + "Values": "23", + "Information": "false" + }, + { + "Code": "ARTDH6", + "Content": "Art der Hilfe (1994-2004)", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ARTDH7", + "Content": "Art der Eingliederungshilfe f. behinderte Menschen", + "Type": "sachlich", + "Values": "15", + "Information": "true" + }, + { + "Code": "ARTDH8", + "Content": "Art der Hilfe zur Pflege", + "Type": "sachlich", + "Values": "13", + "Information": "false" + }, + { + "Code": "ARTDU1", + "Content": "Art des Umsatzes", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ARTDV1", + "Content": "Art des Vollzugs", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ASG001", + "Content": "Ausgaben", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG002", + "Content": "Ausgaben für den Umweltschutz", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG003", + "Content": "Anteil der Ausgaben für den Umweltschutz am BIP", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG004", + "Content": "Ausgaben der öffentlichen Haushalte", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG005", + "Content": "Ausgabearten der öffentlichen Haushalte", + "Type": "sachlich", + "Values": "19", + "Information": "false" + }, + { + "Code": "ASG006", + "Content": "Versorgungsausgaben des öffentlichen Dienstes", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG007", + "Content": "Laufende Ausgaben für den Umweltschutz", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG008", + "Content": "Sonstige Ausgaben", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG009", + "Content": "Ausgaben des Staates", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG010", + "Content": "Nettoausgaben", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG011", + "Content": "Personalausgaben", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG012", + "Content": "Besondere Finanzierungsvorgänge (Ausgaben)", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG013", + "Content": "Nettoausgaben je Einwohner", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG014", + "Content": "Öffentliche Ausgaben für Kultur", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG015", + "Content": "Öffentliche Ausgaben für Kultur je Einwohner", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG016", + "Content": "Anteil der öff. Ausgaben für Kultur am BIP", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG017", + "Content": "Anteil der öff. Ausg. für Kultur am Gesamthaushalt", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG018", + "Content": "Investitionsausgaben der öffentlichen Haushalte", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG019", + "Content": "Art der Investitionsausgaben der öff. Haushalte", + "Type": "sachlich", + "Values": "7", + "Information": "true" + }, + { + "Code": "ASG020", + "Content": "Durchschnittliche monatliche Haushaltsausgaben", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG021", + "Content": "Ausgaben der Kriegsopferfürsorge", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG022", + "Content": "Ausgaben (Auszahlungen)", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG023", + "Content": "Interne Ausgaben für Forschung und Entwicklung", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG024", + "Content": "Anteil der internen Ausgaben für FuE am BIP", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG025", + "Content": "Ausgaben je Beschäftigten in FuE", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG026", + "Content": "Ausgaben der Hochschulen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG027", + "Content": "Reiseausgaben", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG028", + "Content": "Ausgaben der öffentlichen Haushalte für Bildung", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG029", + "Content": "Ausgaben der öff. Haushalte für Bildung je Einw.", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG030", + "Content": "Anteil d.Ausgaben d. öff. Haushalte f.Bild. am BIP", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG031", + "Content": "Anteil d.Ausgaben d. öff. HH f.Bild. am GesamtHH", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG032", + "Content": "Ausgaben für öffentliche Schulen je Schüler", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG033", + "Content": "Nettoausgaben der Eingliederungshilfe", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASG050", + "Content": "Laufende Ausgaben der Hochschulen je Studierenden", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG051", + "Content": "Laufende Ausgaben d. Hochschulen je Wiss. Personal", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG052", + "Content": "Laufende Ausgaben der Hochschulen je Professor", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG053", + "Content": "Drittmittel der Hochschulen je Wiss. Personal", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASG054", + "Content": "Drittmittel der Hochschulen je Professor", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ASGAT1", + "Content": "Ausgabenart", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ASGAT2", + "Content": "Ausgabenkategorie", + "Type": "sachlich", + "Values": "5", + "Information": "true" + }, + { + "Code": "ASGAT3", + "Content": "Art der Ausgaben", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ASGAT4", + "Content": "Art der Ausgaben", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "ASGBR1", + "Content": "Ausgabenbereiche der Kinder- und Jugendhilfe", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "ASGHH3", + "Content": "Ausgewählte Haushaltsausgaben", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "ASL001", + "Content": "Auslastung der Haltungskapazität", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "ASYLS1", + "Content": "Leistungsart", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "ATG001", + "Content": "Ausstattungsgrad je 100 Haushalte", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "ATG002", + "Content": "Ausstattungsbestand je 100 Haushalte", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AUB001", + "Content": "Auftragsbestand", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "AUB002", + "Content": "Reichweiten der Auftragsbestände", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AUB101", + "Content": "Auftragsbestand: Wertindex", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AUB102", + "Content": "Auftragsbestand: Volumenindex", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AUF001", + "Content": "Auftragseingang", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AUF006", + "Content": "Aufkommen von Energie", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "AUF007", + "Content": "Aufkommen an Haushaltsabfällen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "AUF008", + "Content": "Aufkommen an Haushaltsabfällen je Einwohner", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "AUF101", + "Content": "Auftragseingang: Wertindex", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AUF102", + "Content": "Auftragseingang: Volumenindex", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AUF201", + "Content": "Auftragseingang ohne Großaufträge: Wertindex", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AUF202", + "Content": "Auftragseingang ohne Großaufträge: Volumenindex", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AUFAT1", + "Content": "Aufwendungsarten", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "AUFAT3", + "Content": "Art der Umweltschutzaufwendungen", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "AUFAT4", + "Content": "Art der Umweltschutzaufwendungen", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "AUFDA3", + "Content": "Aufenthaltsdauer", + "Type": "sachlich", + "Values": "9", + "Information": "true" + }, + { + "Code": "AUFDA4", + "Content": "Aufenthaltsdauer", + "Type": "sachlich", + "Values": "12", + "Information": "true" + }, + { + "Code": "AUFDA5", + "Content": "Aufenthaltsdauer (Abgrenzung Einbürgerungen)", + "Type": "sachlich", + "Values": "6", + "Information": "true" + }, + { + "Code": "AUFST1", + "Content": "Aufenthaltsrechtlicher Status", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "AUFST2", + "Content": "Aufenthaltsrechtlicher Status", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "AUFW01", + "Content": "Aufwendungen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "AUFW02", + "Content": "Aufwendungen (Unternehmen ab 250.000 EUR Umsatz)", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "AUFW03", + "Content": "Aufwendungen anteilig am Umsatz", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "AUFW04", + "Content": "Aufwendungen je Praxis anteilig an den Einnahmen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "AUFW05", + "Content": "Aufwendungen für Leiharbeitnehmer", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AUFW06", + "Content": "Aufwendungen für Leistungen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "AUFW07", + "Content": "Lfd. Aufwendungen f. d. Umweltschutz im Prod. Gew.", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "AUS002", + "Content": "Aussteiger", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "AUSB1", + "Content": "Ausbildungsbereich", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "AUSB7", + "Content": "Art der Ausbildung", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "BAF001", + "Content": "Betriebe mit abgedeckten Freilandflächen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BAG001", + "Content": "Bruttoausgaben", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BAG002", + "Content": "Bruttoausgaben nach d. Asylbewerberleistungsgesetz", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BAG003", + "Content": "Bruttoausgaben je Einwohner", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BAG004", + "Content": "Bruttoausgaben für Bestattungskosten", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BAG005", + "Content": "Bruttoausgaben der Eingliederungshilfe", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BAM001", + "Content": "Bäume", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BASIS1", + "Content": "Basisjahr", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "BAU003", + "Content": "Baumaßnahmen", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BAU005", + "Content": "Neue Gebäude", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BAU006", + "Content": "Gebäude/Gebäudeteile", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BAU009", + "Content": "Wohngebäude", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BAU012", + "Content": "Input von Bauschuttaufbereitungsanlagen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BAU013", + "Content": "Kapazität von Bauschuttaufbereitungsanlagen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BAU014", + "Content": "Output von Bauschuttaufbereitungsanlagen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BAU015", + "Content": "Gebäude", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BAU016", + "Content": "Gebäude/Baumaßnahmen", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BAU017", + "Content": "Bauinvestitionen des Staates in Wohnbauten", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BAU018", + "Content": "Bauinvestitionen des Staates in Nichtwohnbauten", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BAU019", + "Content": "Bauinvestitionen d.nichtstaatl.Sekt. in Wohnbauten", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BAU020", + "Content": "Bauinvest. d.nichtstaatl.Sekt. in Nichtwohnbauten", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BAUAR1", + "Content": "Gebäudearten", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "BAUAR4", + "Content": "Bauarbeiten (Hochbau)", + "Type": "sachlich", + "Values": "41", + "Information": "false" + }, + { + "Code": "BAUAR5", + "Content": "Ingenieurbau", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "BAUAR9", + "Content": "Bauarten", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "BAUAT1", + "Content": "Bauart", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "BAUAT3", + "Content": "Bauart", + "Type": "sachlich", + "Values": "10", + "Information": "false" + }, + { + "Code": "BAUAX1", + "Content": "Bauarten", + "Type": "sachlich", + "Values": "11", + "Information": "false" + }, + { + "Code": "BAUBH1", + "Content": "Bauherr", + "Type": "sachlich", + "Values": "21", + "Information": "false" + }, + { + "Code": "BAUBH2", + "Content": "Bauherr", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "BAUBR1", + "Content": "Baubereiche", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "BAUFL1", + "Content": "Art der Baufläche", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "BAUGB1", + "Content": "Gebäudeart", + "Type": "sachlich", + "Values": "28", + "Information": "false" + }, + { + "Code": "BAUGB2", + "Content": "Gebäudeart", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "BAUGB3", + "Content": "Gebäudeart", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "BAUGB4", + "Content": "Gebäudeart", + "Type": "sachlich", + "Values": "14", + "Information": "false" + }, + { + "Code": "BAUGB5", + "Content": "Gebäudeart", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "BAUGB6", + "Content": "Gebäudeart", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "BAUGB7", + "Content": "Gebäudeart", + "Type": "sachlich", + "Values": "17", + "Information": "false" + }, + { + "Code": "BAUHR1", + "Content": "Bauherr", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "BAUIN1", + "Content": "Bauarbeiten (Instandhaltung)", + "Type": "sachlich", + "Values": "34", + "Information": "false" + }, + { + "Code": "BAUIN2", + "Content": "Instandhaltung von Wohngebäuden", + "Type": "sachlich", + "Values": "2", + "Information": "true" + }, + { + "Code": "BAULA2", + "Content": "Baulandarten", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "BAULS2", + "Content": "Außenanlagen", + "Type": "sachlich", + "Values": "16", + "Information": "false" + }, + { + "Code": "BAULS5", + "Content": "Bauleistungsart", + "Type": "sachlich", + "Values": "183", + "Information": "false" + }, + { + "Code": "BAUST1", + "Content": "Überwiegend verwendeter Baustoff", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "BAUTB1", + "Content": "Bauarbeiten (Tiefbau)", + "Type": "sachlich", + "Values": "18", + "Information": "false" + }, + { + "Code": "BAUTK1", + "Content": "Bautätigkeiten", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "BBU001", + "Content": "Bruttobetriebsüberschuss", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BBU002", + "Content": "Bruttobetriebsüberschuss (Anteil am Umsatz)", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BBU003", + "Content": "Bruttobetriebsüberschuss je tätige Person", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BDF001", + "Content": "Durchschnittlicher Bruttobedarf", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BDF002", + "Content": "Durchschnittlicher Nettobedarf", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BDFGK1", + "Content": "Größenklassen des Nettobedarfs", + "Type": "sachlich", + "Values": "10", + "Information": "false" + }, + { + "Code": "BDFGK2", + "Content": "Größenklassen des Bruttobedarfs", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "BEEAT1", + "Content": "Strauchbeerenart", + "Type": "sachlich", + "Values": "13", + "Information": "false" + }, + { + "Code": "BEFAT1", + "Content": "Art der Beförderung", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "BEFMT1", + "Content": "Beförderungsmittel", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "BEHRD1", + "Content": "Einleitungsbehörde", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "BEL001", + "Content": "Außergewöhnliche Belastungen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BELAT1", + "Content": "Art der außergewöhnlichen Belastungen", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "BEORT1", + "Content": "Berichtsort bzw. Geltungsbereich (leichtes Heizöl)", + "Type": "räumlich", + "Values": "17", + "Information": "false" + }, + { + "Code": "BEORT2", + "Content": "Berichtsort bzw. Geltungsbereich (schweres Heizöl)", + "Type": "räumlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "BER100", + "Content": "Wirtschaftsbereiche", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "BERAB2", + "Content": "Berufsabschluss", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "BERAB3", + "Content": "Berufsausbildung", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "BERAB4", + "Content": "Berufsausbildung", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "BEREP1", + "Content": "Berufstätigkeit des Ehepartners", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "BERLF1", + "Content": "Lehr- und Forschungsbereiche", + "Type": "sachlich", + "Values": "84", + "Information": "false" + }, + { + "Code": "BERMT1", + "Content": "Berufsgruppe der Mutter", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "BERRE1", + "Content": "Reglementierung der Berufe", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "BERST1", + "Content": "Stellung im Beruf", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "BERST2", + "Content": "Stellung im Beruf", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "BERST3", + "Content": "Stellung im Beruf", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "BERST5", + "Content": "Stellung im Beruf", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "BERST6", + "Content": "Stellung im Beruf", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "BERST8", + "Content": "Stellung im Beruf", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "BERST9", + "Content": "Stellung im Beruf", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "BERVT1", + "Content": "Berufsgruppe des Vaters", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "BES003", + "Content": "Beschäftigte im öffentlichen Dienst", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BES007", + "Content": "Beschäftigte, Veränderungsrate zum Vorjahr", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BES008", + "Content": "Beschäftigte, Veränderungsrate z. Vorjahresquartal", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BES009", + "Content": "Beschäftigte, Veränderungsrate zum Vorquartal", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BES013", + "Content": "Durchschnittsalter d. Beschäftigten im öff. Dienst", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BES019", + "Content": "Beschäftigte im Aufgabenbereich Polizei", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BES020", + "Content": "Besch. im Aufg.ber. Polizei (Vollzeitäquivalente)", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BES021", + "Content": "Gesundheitspersonal", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BES022", + "Content": "Gesundheitspersonal (Vollzeitäquivalente)", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BES030", + "Content": "Abhängige Beschäftigungsverhältnisse inkl. Auszub.", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BES031", + "Content": "Abhängige Beschäftigungsverhältnisse", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BES032", + "Content": "Abhäng. Beschäftigungsverhältnisse mit Niedriglohn", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BES033", + "Content": "Anteil abh. Beschäftigungsverhältn.mit Niedriglohn", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BES040", + "Content": "Beschäftigungszuwachs", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BES041", + "Content": "Beschäftigungsabbau", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BES100", + "Content": "Beschäftigtenindex", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BESBR1", + "Content": "Beschäftigungsbereich", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "BESBR2", + "Content": "Beschäftigungsbereich", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "BESBR3", + "Content": "Beschäftigungsbereich", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "BESG12", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "BESG13", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "BESG14", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "BESG15", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "BESG16", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "BESGK2", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "BESGK7", + "Content": "Beschäftigtengrößenklassen der Unternehmen", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "BESGN1", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "BESGN2", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "BESGN3", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "BESGN4", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "BESGR1", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "BESGR2", + "Content": "Beschäftigtengrößenklassen (bis 2018)", + "Type": "sachlich", + "Values": "4", + "Information": "true" + }, + { + "Code": "BESGR3", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "BESGR4", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "BESGR5", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "BESGR8", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "BESGR9", + "Content": "Beschäftigtengrößenklassen", + "Type": "sachlich", + "Values": "7", + "Information": "false" + }, + { + "Code": "BESTD1", + "Content": "Stand der Erledigung", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "BESTD2", + "Content": "Stand der Erledigung", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "BESUM2", + "Content": "Beschäftigungsumfang", + "Type": "sachlich", + "Values": "3", + "Information": "false" + }, + { + "Code": "BESUM3", + "Content": "Beschäftigungsumfang", + "Type": "sachlich", + "Values": "9", + "Information": "false" + }, + { + "Code": "BESUM4", + "Content": "Beschäftigungsumfang", + "Type": "sachlich", + "Values": "2", + "Information": "true" + }, + { + "Code": "BESUM5", + "Content": "Beschäftigungsumfang", + "Type": "sachlich", + "Values": "3", + "Information": "true" + }, + { + "Code": "BESUM6", + "Content": "Beschäftigungsumfang", + "Type": "sachlich", + "Values": "2", + "Information": "true" + }, + { + "Code": "BESUM7", + "Content": "Beschäftigungsumfang", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "BESVH6", + "Content": "Beschäftigungsverhältnis", + "Type": "sachlich", + "Values": "8", + "Information": "false" + }, + { + "Code": "BESVH7", + "Content": "Beschäftigungsverhältnis", + "Type": "sachlich", + "Values": "4", + "Information": "false" + }, + { + "Code": "BESVH8", + "Content": "Beschäftigungsverhältnis", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "BESVH9", + "Content": "Beschäftigungsverhältnis", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "BESZL1", + "Content": "Beschäftigtenzahl", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "BETAT1", + "Content": "Art der Mittagsbetreuung", + "Type": "sachlich", + "Values": "2", + "Information": "false" + }, + { + "Code": "BETR01", + "Content": "Betriebe", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BETTG1", + "Content": "Betreuungstage pro Woche", + "Type": "sachlich", + "Values": "6", + "Information": "false" + }, + { + "Code": "BETZT1", + "Content": "Vertraglich vereinbarte Betreuungszeit", + "Type": "sachlich", + "Values": "5", + "Information": "false" + }, + { + "Code": "BEV001", + "Content": "Lebendgeborene", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BEV002", + "Content": "Gestorbene", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BEV003", + "Content": "Eheschließungen", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BEV004", + "Content": "Ehescheidungen", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BEV005", + "Content": "Familien", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BEV006", + "Content": "Lebendgeborene je 1000 Frauen", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BEV007", + "Content": "Endgültige Kinderzahl (je Frau)", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BEV008", + "Content": "Einbürgerungen von Ausländern", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BEV010", + "Content": "Binnenwanderung", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BEV011", + "Content": "Fortzüge in das Ausland", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BEV012", + "Content": "Wanderungssaldo Ausland", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BEV013", + "Content": "Zuzüge", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BEV014", + "Content": "Fortzüge", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BEV015", + "Content": "Wanderungssaldo", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BEV016", + "Content": "Zuzüge aus einem anderen Bundesland", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BEV017", + "Content": "Fortzüge in ein anderes Bundesland", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BEV018", + "Content": "Wanderungssaldo Bundesländer", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "BEV019", + "Content": "Alleinerziehende", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, + { + "Code": "BEV020", + "Content": "Bevölkerung", + "Type": "Wert", + "Values": "-1", + "Information": "true" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/table1/api/data/tablefile-86e7c4-23a648-POST.R b/tests/testthat/table1/api/data/tablefile-86e7c4-23a648-POST.R new file mode 100644 index 0000000..5a47f60 --- /dev/null +++ b/tests/testthat/table1/api/data/tablefile-86e7c4-23a648-POST.R @@ -0,0 +1,48 @@ +structure(list(method = "POST", url = "/api/data/tablefile?username=ABCDEF&password=1234abcd&username=ABCDEF&password=1234abcdNA", + status_code = 200L, headers = structure(list(Date = "Wed, 18 Feb 2026 18:27:13 GMT", + Server = "Apache", `Content-Disposition` = "attachment; filename=61111-0001_1771439236084_en_flat.zip", + `Content-Length` = "407", `Content-Type` = "application/zip"), class = "httr2_headers"), + body = as.raw(c(0x50, 0x4b, 0x03, 0x04, 0x14, 0x00, 0x08, + 0x08, 0x08, 0x00, 0x68, 0x9b, 0x52, 0x5c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, + 0x00, 0x00, 0x00, 0x36, 0x31, 0x31, 0x31, 0x31, 0x2d, 0x30, + 0x30, 0x30, 0x31, 0x5f, 0x31, 0x37, 0x37, 0x31, 0x34, 0x33, + 0x39, 0x32, 0x33, 0x36, 0x30, 0x38, 0x34, 0x5f, 0x65, 0x6e, + 0x5f, 0x66, 0x6c, 0x61, 0x74, 0x2e, 0x63, 0x73, 0x76, 0x7b, + 0xbf, 0x7b, 0x7f, 0x71, 0x49, 0x62, 0x49, 0x66, 0x71, 0x49, + 0x66, 0x72, 0x71, 0x7c, 0x72, 0x7e, 0x4a, 0xaa, 0x35, 0x12, + 0x3f, 0x27, 0x31, 0x29, 0x35, 0xc7, 0xba, 0x24, 0x33, 0x37, + 0x15, 0x22, 0x05, 0x66, 0x21, 0x04, 0xad, 0x0d, 0xe3, 0xcb, + 0x12, 0x8b, 0x32, 0x13, 0x93, 0x72, 0xa0, 0xf2, 0x48, 0x7c, + 0x88, 0x2a, 0x24, 0x81, 0xc4, 0x92, 0x92, 0xa2, 0xcc, 0xa4, + 0xd2, 0x12, 0x4c, 0xa5, 0x08, 0x19, 0x88, 0xa6, 0xb2, 0xc4, + 0x9c, 0xd2, 0x54, 0x08, 0x19, 0x5f, 0x9a, 0x97, 0x59, 0x02, + 0x65, 0xa2, 0x5a, 0x85, 0x26, 0x06, 0xd6, 0xc9, 0x65, 0x66, + 0x08, 0x04, 0xd6, 0xce, 0xf9, 0x79, 0xc5, 0xa5, 0xb9, 0xa9, + 0x45, 0x0a, 0x05, 0x45, 0x99, 0xc9, 0xa9, 0x0a, 0x99, 0x79, + 0x29, 0xa9, 0x15, 0x0a, 0x69, 0xf9, 0x45, 0x0a, 0xee, 0xa9, + 0x45, 0xb9, 0x89, 0x79, 0x95, 0xd6, 0x5e, 0x8e, 0x1e, 0x41, + 0xd6, 0x91, 0xa9, 0x89, 0x45, 0xd6, 0x46, 0x06, 0x46, 0xa6, + 0xd6, 0x2e, 0x9e, 0x7e, 0xc1, 0xee, 0xd6, 0x30, 0x49, 0x17, + 0x04, 0xd3, 0xd0, 0xc8, 0x50, 0xcf, 0x12, 0xa4, 0xc6, 0xc0, + 0xd6, 0xd0, 0xc0, 0xc0, 0x3a, 0x20, 0xc8, 0xd5, 0x33, 0x18, + 0xbb, 0xf1, 0xd4, 0xb6, 0xd9, 0x48, 0xcf, 0xc8, 0x5a, 0x15, + 0x66, 0x61, 0x66, 0x1e, 0x59, 0xc6, 0x9b, 0xe0, 0xf1, 0x98, + 0xa1, 0xa5, 0x9e, 0x31, 0xed, 0x3c, 0x86, 0xc7, 0x66, 0x6a, + 0x78, 0xcc, 0x18, 0x9f, 0xc7, 0xcc, 0xf4, 0xcc, 0x69, 0xe7, + 0x31, 0x3c, 0x36, 0x9b, 0x02, 0x53, 0x0a, 0xb2, 0xc7, 0x00, + 0x50, 0x4b, 0x07, 0x08, 0xd1, 0x41, 0x21, 0xbf, 0xdd, 0x00, + 0x00, 0x00, 0x59, 0x03, 0x00, 0x00, 0x50, 0x4b, 0x01, 0x02, + 0x14, 0x00, 0x14, 0x00, 0x08, 0x08, 0x08, 0x00, 0x68, 0x9b, + 0x52, 0x5c, 0xd1, 0x41, 0x21, 0xbf, 0xdd, 0x00, 0x00, 0x00, + 0x59, 0x03, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x36, 0x31, 0x31, 0x31, 0x31, 0x2d, 0x30, 0x30, + 0x30, 0x31, 0x5f, 0x31, 0x37, 0x37, 0x31, 0x34, 0x33, 0x39, + 0x32, 0x33, 0x36, 0x30, 0x38, 0x34, 0x5f, 0x65, 0x6e, 0x5f, + 0x66, 0x6c, 0x61, 0x74, 0x2e, 0x63, 0x73, 0x76, 0x50, 0x4b, + 0x05, 0x06, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, + 0x52, 0x00, 0x00, 0x00, 0x2f, 0x01, 0x00, 0x00, 0x00, 0x00 + )), timing = c(redirect = 0, namelookup = 0, connect = 0, + pretransfer = 9.3e-05, starttransfer = 2.993721, total = 2.993747 + ), cache = new.env(parent = emptyenv())), class = "httr2_response") diff --git a/tests/testthat/terms1/api/catalogue/terms-86e7c4-cc5715-POST.json b/tests/testthat/terms1/api/catalogue/terms-86e7c4-cc5715-POST.json new file mode 100644 index 0000000..6610fed --- /dev/null +++ b/tests/testthat/terms1/api/catalogue/terms-86e7c4-cc5715-POST.json @@ -0,0 +1,157 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "terms" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "selection": "forst*", + "pagelength": "500", + "language": "de", + "area": "Alle" + }, + "List": [ + { + "Content": "forst" + }, + { + "Content": "forst- und jagdwirtschaft, landschaftspflege" + }, + { + "Content": "forstbaumschulen" + }, + { + "Content": "forstbetriebe" + }, + { + "Content": "forsteinheiten" + }, + { + "Content": "forsten" + }, + { + "Content": "forstgehölze" + }, + { + "Content": "forstgehölze st" + }, + { + "Content": "forstgehölzpflanzen" + }, + { + "Content": "forstl" + }, + { + "Content": "forstmaschinen" + }, + { + "Content": "forstpflanzen" + }, + { + "Content": "forstsamen" + }, + { + "Content": "forstschlepper" + }, + { + "Content": "forststruktur" + }, + { + "Content": "forstw" + }, + { + "Content": "forstw.fahrzeuge" + }, + { + "Content": "forstwirt" + }, + { + "Content": "forstwirte" + }, + { + "Content": "forstwirtsch" + }, + { + "Content": "forstwirtschaft" + }, + { + "Content": "forstwirtschaft - experte" + }, + { + "Content": "forstwirtschaft - fachkraft" + }, + { + "Content": "forstwirtschaft - helfer" + }, + { + "Content": "forstwirtschaft - spezialist" + }, + { + "Content": "forstwirtschaft und holzeinschlag" + }, + { + "Content": "forstwirtschaftl" + }, + { + "Content": "forstwirtschaftl. erzeugnisse und dienstleistungen" + }, + { + "Content": "forstwirtschaftl.maschinen" + }, + { + "Content": "forstwirtschaftliche" + }, + { + "Content": "forstwirtschaftliche betriebsfläche" + }, + { + "Content": "forstwirtschaftliche erzeugnisse" + }, + { + "Content": "forstwirtschaftlichen" + }, + { + "Content": "forstwirtschaftlicher" + }, + { + "Content": "forstwirtschaftsabfälle" + }, + { + "Content": "forstwirtschaftsberufe" + }, + { + "Content": "forstwirtschaftserzeugnisse" + }, + { + "Content": "forstwirtschaftsfahrzeuge" + }, + { + "Content": "forstwirtschaftsfläche" + }, + { + "Content": "forstwirtschaftsmaschinen" + }, + { + "Content": "forstwirtschaftsmaschinenteile" + }, + { + "Content": "forstwissenschaft" + }, + { + "Content": "forstwissenschaft, -wirtschaft" + }, + { + "Content": "forstwissenschaft, holzwirtschaft" + }, + { + "Content": "forstwissenschaften" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/test_complete_workflows.R b/tests/testthat/test_complete_workflows.R index b4a9f7d..628bc33 100644 --- a/tests/testthat/test_complete_workflows.R +++ b/tests/testthat/test_complete_workflows.R @@ -152,19 +152,28 @@ test_that("caching works as intended", { start_time <- Sys.time() - result1 <- gen_catalogue(code = "12411-0001", - database = "genesis", - category = "tables") + result1 <- gen_table(name = "12411-0001", + database = "genesis", + startyear = 2024) end_time <- Sys.time() first_call <- end_time - start_time + #---------------------------------------------------------------------------- + + # Re-enable cache + options(restatis.use_cache = TRUE) + + result2 <- gen_table(name = "12411-0001", + database = "genesis", + startyear = 2024) + start_time <- Sys.time() - result2 <- gen_catalogue(code = "12411-0001", - database = "genesis", - category = "tables") + result3 <- gen_table(name = "12411-0001", + database = "genesis", + startyear = 2024) end_time <- Sys.time() @@ -173,9 +182,6 @@ test_that("caching works as intended", { # Results should be identical expect_true(second_call < first_call) - # Re-enable cache - options(restatis.use_cache = TRUE) - }) #------------------------------------------------------------------------------- diff --git a/tests/testthat/test_databases.R b/tests/testthat/test_databases.R index 486acb7..ae74556 100644 --- a/tests/testthat/test_databases.R +++ b/tests/testthat/test_databases.R @@ -49,40 +49,44 @@ test_that("the 'nrw' database performs as expected", { #------------------------------------------------------------------------------- -test_that("the 'bayern' database performs as expected", { - - skip_on_ci() - skip_on_cran() - skip_if_offline() - - expect_type( - - res1 <- gen_find(term = "bus*", - database = "bayern", - category = "tables"), - type = "list" - - ) - - expect_s3_class( - - res2 <- gen_table(name = "61111-301z", - database = "bayern", - startyear = 2021, - endyear = 2022), - class = "data.frame" - - ) - - expect_type( - - res3 <- gen_catalogue(code = "23*", - database = "bayern"), - type = "list" - - ) - -}) +# This works, though it throws a warning due to the parsing errors +# that are caused by broken files distributed by 'bayern' +# Reactivate when the parsing errors are resolved + +# test_that("the 'bayern' database performs as expected", { +# +# skip_on_ci() +# skip_on_cran() +# skip_if_offline() +# +# expect_type( +# +# res1 <- gen_find(term = "bus*", +# database = "bayern", +# category = "tables"), +# type = "list" +# +# ) +# +# expect_s3_class( +# +# res2 <- gen_table(name = "61111-301z", +# database = "bayern", +# startyear = 2021, +# endyear = 2022), +# class = "data.frame" +# +# ) +# +# expect_type( +# +# res3 <- gen_catalogue(code = "23*", +# database = "bayern"), +# type = "list" +# +# ) +# +# }) #------------------------------------------------------------------------------- diff --git a/tests/testthat/test_gen_cube.R b/tests/testthat/test_gen_cube.R index 1704a53..73e97a1 100644 --- a/tests/testthat/test_gen_cube.R +++ b/tests/testthat/test_gen_cube.R @@ -9,7 +9,7 @@ with_mock_dir("cube1", { skip_on_cran() skip_on_ci() - result <- gen_cube("47414BJ002") + result <- gen_cube("47414BJ002", database = "genesis", startyear = 2024) expect_s3_class(result, class = "data.frame") @@ -29,10 +29,10 @@ with_mock_dir("cube1", { test_that("gen_cube errors on wrong year parameters", { - expect_error(gen_cube("47414BJ002", startyear = 1893), + expect_error(gen_cube("47414BJ002", database = "genesis", startyear = 1893), regexp = "The parameter 'year' has been misspecified") - expect_error(gen_cube("47414BJ002", startyear = "1893"), + expect_error(gen_cube("47414BJ002", database = "genesis", startyear = "1893"), regexp = "The parameter 'year' has been misspecified") }) diff --git a/tests/testthat/test_gen_find.R b/tests/testthat/test_gen_find.R index e65a797..e64e423 100644 --- a/tests/testthat/test_gen_find.R +++ b/tests/testthat/test_gen_find.R @@ -37,6 +37,10 @@ with_mock_dir("find2_fake", { # The Status$Code needs, e.g., 999 # The Status$Content needs to be "test error message" + # First download correct file with: + # expect_type(object = gen_find(term = "bus", error.ignore = TRUE, database = "genesis"), + # type = "list") + skip_on_cran() skip_on_ci() diff --git a/tests/testthat/test_gen_metadata.R b/tests/testthat/test_gen_metadata.R index 8821e4a..8227457 100644 --- a/tests/testthat/test_gen_metadata.R +++ b/tests/testthat/test_gen_metadata.R @@ -37,6 +37,10 @@ with_mock_dir("meta2_fake", { # Status$Code = 999 # Status$Content = "test error message" + # First download correct file with: + # expect_type(object = gen_metadata(code = "1*", category = "cube", database = "genesis"), + # type = "list") + skip_on_cran() skip_on_ci() diff --git a/tests/testthat/test_gen_var2stat.R b/tests/testthat/test_gen_var2stat.R index 9cd5e45..274db14 100644 --- a/tests/testthat/test_gen_var2stat.R +++ b/tests/testthat/test_gen_var2stat.R @@ -32,14 +32,19 @@ with_mock_dir("variables2_fake", { test_that("gen_var2stat function errors if there is a problem (fake response)", { + skip_on_cran() + skip_on_ci() + # Here, it is necessary to change the mockfile: # Change the Status$Code to, e.g., 999 # Change the Status$Content to contain "test error message" - skip_on_cran() - skip_on_ci() + # First download correct file with: + # expect_type(object = gen_var2stat(code = "74111", database = "genesis"), + # type = "list") - expect_error(object = gen_var2stat(code = "74111", database = "genesis"), + expect_error(object = gen_var2stat(code = "74111", + database = "genesis"), regexp = "test error message") }) diff --git a/tests/testthat/values1/api/catalogue/values2variable-86e7c4-26839d-POST.json b/tests/testthat/values1/api/catalogue/values2variable-86e7c4-26839d-POST.json new file mode 100644 index 0000000..b400261 --- /dev/null +++ b/tests/testthat/values1/api/catalogue/values2variable-86e7c4-26839d-POST.json @@ -0,0 +1,24 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "values2variable" + }, + "Status": { + "Code": 103, + "Content": "No objects found. (At least one parameter contains invalid values. It was changed to perform the service.: sortcriterion)", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "name": "61111", + "selection": "", + "area": "all", + "searchcriterion": "code", + "sortcriterion": "code", + "pagelength": "500", + "language": "en" + }, + "List": null, + "Copyright": "© Federal Statistical Office, Wiesbaden 2026" +} diff --git a/tests/testthat/values2/api/catalogue/values2variable-86e7c4-332fef-POST.json b/tests/testthat/values2/api/catalogue/values2variable-86e7c4-332fef-POST.json new file mode 100644 index 0000000..b862e28 --- /dev/null +++ b/tests/testthat/values2/api/catalogue/values2variable-86e7c4-332fef-POST.json @@ -0,0 +1,121 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "values2variable" + }, + "Status": { + "Code": 22, + "Content": "erfolgreich (Mindestens ein Parameter enthält ungültige Werte. Er wurde angepasst, um den Service starten zu können.: sortcriterion)", + "Type": "Warnung" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "name": "DLAND", + "selection": "", + "area": "Alle", + "searchcriterion": "Code", + "sortcriterion": "Code", + "pagelength": "500", + "language": "de" + }, + "List": [ + { + "Code": "08", + "Content": "Baden-Württemberg", + "Variables": "9", + "Information": "false" + }, + { + "Code": "09", + "Content": "Bayern", + "Variables": "9", + "Information": "false" + }, + { + "Code": "11", + "Content": "Berlin", + "Variables": "11", + "Information": "false" + }, + { + "Code": "12", + "Content": "Brandenburg", + "Variables": "9", + "Information": "false" + }, + { + "Code": "04", + "Content": "Bremen", + "Variables": "12", + "Information": "false" + }, + { + "Code": "02", + "Content": "Hamburg", + "Variables": "12", + "Information": "false" + }, + { + "Code": "06", + "Content": "Hessen", + "Variables": "9", + "Information": "false" + }, + { + "Code": "13", + "Content": "Mecklenburg-Vorpommern", + "Variables": "12", + "Information": "false" + }, + { + "Code": "03", + "Content": "Niedersachsen", + "Variables": "10", + "Information": "false" + }, + { + "Code": "05", + "Content": "Nordrhein-Westfalen", + "Variables": "9", + "Information": "false" + }, + { + "Code": "07", + "Content": "Rheinland-Pfalz", + "Variables": "9", + "Information": "false" + }, + { + "Code": "10", + "Content": "Saarland", + "Variables": "11", + "Information": "false" + }, + { + "Code": "14", + "Content": "Sachsen", + "Variables": "9", + "Information": "false" + }, + { + "Code": "15", + "Content": "Sachsen-Anhalt", + "Variables": "11", + "Information": "false" + }, + { + "Code": "01", + "Content": "Schleswig-Holstein", + "Variables": "12", + "Information": "false" + }, + { + "Code": "16", + "Content": "Thüringen", + "Variables": "11", + "Information": "false" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/variables1/api/catalogue/variables2statistic-86e7c4-e636f0-POST.json b/tests/testthat/variables1/api/catalogue/variables2statistic-86e7c4-e636f0-POST.json new file mode 100644 index 0000000..714e7c4 --- /dev/null +++ b/tests/testthat/variables1/api/catalogue/variables2statistic-86e7c4-e636f0-POST.json @@ -0,0 +1,117 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "variables2statistic" + }, + "Status": { + "Code": 22, + "Content": "erfolgreich (Mindestens ein Parameter enthält ungültige Werte. Er wurde angepasst, um den Service starten zu können.: sortcriterion)", + "Type": "Warnung" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "name": "61111", + "selection": "", + "area": "Alle", + "searchcriterion": "Code", + "sortcriterion": "Code", + "type": "Alle", + "pagelength": "500", + "language": "de" + }, + "List": [ + { + "Code": "CC13A2", + "Content": "Verwendungszwecke des Individualkonsums, 2-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13A3", + "Content": "Verwendungszwecke des Individualkonsums, 3-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13A4", + "Content": "Verwendungszwecke des Individualkonsums, 4-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13A5", + "Content": "Verwendungszwecke des Individualkonsums, 5-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13B1", + "Content": "Verwendungszw.d.Individualkonsums,Sonderpositionen", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13Z1", + "Content": "Verwendungszwecke des Individualkonsums,10-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "DINSG", + "Content": "Deutschland insgesamt", + "Type": "räumlich insgesamt", + "Values": "-1", + "Information": "false" + }, + { + "Code": "DLAND", + "Content": "Bundesländer", + "Type": "räumlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "JAHR", + "Content": "Jahr", + "Type": "zeitidentifizierend", + "Values": "-1", + "Information": "false" + }, + { + "Code": "MONAT", + "Content": "Monate", + "Type": "zeitlich", + "Values": "-1", + "Information": "false" + }, + { + "Code": "PRE034", + "Content": "Index der Nettokaltmieten", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "PRE999", + "Content": "Gewichtung", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "PREIS1", + "Content": "Verbraucherpreisindex", + "Type": "Wert", + "Values": "-1", + "Information": "true" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/variables2_fake/api/catalogue/variables2statistic-86e7c4-99c71e-POST.json b/tests/testthat/variables2_fake/api/catalogue/variables2statistic-86e7c4-ca7b2f-POST.json similarity index 86% rename from tests/testthat/variables2_fake/api/catalogue/variables2statistic-86e7c4-99c71e-POST.json rename to tests/testthat/variables2_fake/api/catalogue/variables2statistic-86e7c4-ca7b2f-POST.json index 5e5b2de..76bc715 100644 --- a/tests/testthat/variables2_fake/api/catalogue/variables2statistic-86e7c4-99c71e-POST.json +++ b/tests/testthat/variables2_fake/api/catalogue/variables2statistic-86e7c4-ca7b2f-POST.json @@ -28,6 +28,13 @@ "Values": "-1", "Information": "true" }, + { + "Code": "BES013", + "Content": "Durchschnittsalter d. Beschäftigten im öff. Dienst", + "Type": "Wert", + "Values": "-1", + "Information": "true" + }, { "Code": "BES019", "Content": "Beschäftigte im Aufgabenbereich Polizei", @@ -91,6 +98,13 @@ "Values": "-1", "Information": "false" }, + { + "Code": "DSTVS3", + "Content": "Dienstverhältnis", + "Type": "sachlich", + "Values": "-1", + "Information": "false" + }, { "Code": "GES", "Content": "Geschlecht", @@ -106,5 +120,5 @@ "Information": "false" } ], - "Copyright": "© Statistisches Bundesamt (Destatis), 2025" + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" } diff --git a/tests/testthat/variables3/api/catalogue/variables2statistic-86e7c4-5c3930-POST.json b/tests/testthat/variables3/api/catalogue/variables2statistic-86e7c4-5c3930-POST.json new file mode 100644 index 0000000..714e7c4 --- /dev/null +++ b/tests/testthat/variables3/api/catalogue/variables2statistic-86e7c4-5c3930-POST.json @@ -0,0 +1,117 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "variables2statistic" + }, + "Status": { + "Code": 22, + "Content": "erfolgreich (Mindestens ein Parameter enthält ungültige Werte. Er wurde angepasst, um den Service starten zu können.: sortcriterion)", + "Type": "Warnung" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "name": "61111", + "selection": "", + "area": "Alle", + "searchcriterion": "Code", + "sortcriterion": "Code", + "type": "Alle", + "pagelength": "500", + "language": "de" + }, + "List": [ + { + "Code": "CC13A2", + "Content": "Verwendungszwecke des Individualkonsums, 2-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13A3", + "Content": "Verwendungszwecke des Individualkonsums, 3-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13A4", + "Content": "Verwendungszwecke des Individualkonsums, 4-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13A5", + "Content": "Verwendungszwecke des Individualkonsums, 5-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13B1", + "Content": "Verwendungszw.d.Individualkonsums,Sonderpositionen", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13Z1", + "Content": "Verwendungszwecke des Individualkonsums,10-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "DINSG", + "Content": "Deutschland insgesamt", + "Type": "räumlich insgesamt", + "Values": "-1", + "Information": "false" + }, + { + "Code": "DLAND", + "Content": "Bundesländer", + "Type": "räumlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "JAHR", + "Content": "Jahr", + "Type": "zeitidentifizierend", + "Values": "-1", + "Information": "false" + }, + { + "Code": "MONAT", + "Content": "Monate", + "Type": "zeitlich", + "Values": "-1", + "Information": "false" + }, + { + "Code": "PRE034", + "Content": "Index der Nettokaltmieten", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "PRE999", + "Content": "Gewichtung", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "PREIS1", + "Content": "Verbraucherpreisindex", + "Type": "Wert", + "Values": "-1", + "Information": "true" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/xy_statistic1/api/catalogue/cubes2statistic-86e7c4-6d93aa-POST.json b/tests/testthat/xy_statistic1/api/catalogue/cubes2statistic-86e7c4-6d93aa-POST.json new file mode 100644 index 0000000..e364a87 --- /dev/null +++ b/tests/testthat/xy_statistic1/api/catalogue/cubes2statistic-86e7c4-6d93aa-POST.json @@ -0,0 +1,199 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "cubes2statistic" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "name": "61111", + "selection": "", + "area": "Alle", + "pagelength": "500", + "language": "de" + }, + "List": [ + { + "Code": "61111B5001", + "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 2-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020", + "LatestUpdate": "18.04.2024 13:34:49h", + "Information": "false" + }, + { + "Code": "61111B5002", + "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 3-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020", + "LatestUpdate": "18.04.2024 13:35:14h", + "Information": "false" + }, + { + "Code": "61111B5003", + "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 4-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020", + "LatestUpdate": "18.04.2024 13:35:42h", + "Information": "false" + }, + { + "Code": "61111B5004", + "Content": "Verbraucherpreisindex für Deutschland, Gewichtung, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 5-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020", + "LatestUpdate": "18.04.2024 13:36:07h", + "Information": "false" + }, + { + "Code": "61111BJ001", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Jahr", + "State": "vollständig mit Werten", + "Time": "1991-2025", + "LatestUpdate": "15.01.2026 18:03:33h", + "Information": "false" + }, + { + "Code": "61111BJ002", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 2-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "1991-2025", + "LatestUpdate": "15.01.2026 18:01:59h", + "Information": "false" + }, + { + "Code": "61111BJ003", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 3-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "1991-2025", + "LatestUpdate": "15.01.2026 18:03:27h", + "Information": "false" + }, + { + "Code": "61111BJ004", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 4-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "1991-2025", + "LatestUpdate": "15.01.2026 18:03:51h", + "Information": "false" + }, + { + "Code": "61111BJ005", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 5-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "1991-2025", + "LatestUpdate": "15.01.2026 18:03:47h", + "Information": "false" + }, + { + "Code": "61111BJ006", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszw.d.Individualkonsums,Sonderpositionen, Jahr", + "State": "vollständig mit Werten", + "Time": "1991-2025", + "LatestUpdate": "15.01.2026 18:03:30h", + "Information": "false" + }, + { + "Code": "61111BJ007", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums,10-Steller, Jahr", + "State": "vollständig mit Werten", + "Time": "2020-2025", + "LatestUpdate": "15.01.2026 18:03:44h", + "Information": "false" + }, + { + "Code": "61111BM001", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1991-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:05h", + "Information": "false" + }, + { + "Code": "61111BM002", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 2-Steller, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1991-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:27h", + "Information": "false" + }, + { + "Code": "61111BM003", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 3-Steller, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1991-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:30h", + "Information": "false" + }, + { + "Code": "61111BM004", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 4-Steller, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1991-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:13h", + "Information": "false" + }, + { + "Code": "61111BM005", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums, 5-Steller, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1991-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:09h", + "Information": "false" + }, + { + "Code": "61111BM006", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszw.d.Individualkonsums,Sonderpositionen, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1991-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:23h", + "Information": "false" + }, + { + "Code": "61111BM007", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Deutschland insgesamt, Verwendungszwecke des Individualkonsums,10-Steller, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2020-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:17h", + "Information": "false" + }, + { + "Code": "61111LJ001", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Bundesländer, Jahr", + "State": "vollständig mit Werten", + "Time": "1995-2025", + "LatestUpdate": "15.01.2026 18:03:40h", + "Information": "false" + }, + { + "Code": "61111LJ100", + "Content": "Verbraucherpreisindex für Deutschland, Index der Nettokaltmieten, Bundesländer, Jahr", + "State": "vollständig mit Werten", + "Time": "2005-2025", + "LatestUpdate": "15.01.2026 18:03:36h", + "Information": "false" + }, + { + "Code": "61111LM001", + "Content": "Verbraucherpreisindex für Deutschland, Verbraucherpreisindex, Bundesländer, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 1995-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:02h", + "Information": "false" + }, + { + "Code": "61111LM100", + "Content": "Verbraucherpreisindex für Deutschland, Index der Nettokaltmieten, Bundesländer, Monate, Jahr", + "State": "vollständig mit Werten", + "Time": "Januar 2005-Januar 2026", + "LatestUpdate": "13.02.2026 18:00:20h", + "Information": "false" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/xy_statistic1/api/catalogue/tables2statistic-86e7c4-6d93aa-POST.json b/tests/testthat/xy_statistic1/api/catalogue/tables2statistic-86e7c4-6d93aa-POST.json new file mode 100644 index 0000000..4a53ba1 --- /dev/null +++ b/tests/testthat/xy_statistic1/api/catalogue/tables2statistic-86e7c4-6d93aa-POST.json @@ -0,0 +1,78 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "tables2statistic" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "name": "61111", + "selection": "", + "area": "Alle", + "pagelength": "500", + "language": "de" + }, + "List": [ + { + "Code": "61111-0001", + "Content": "Verbraucherpreisindex: Deutschland, Jahre", + "Time": "1991 - 2025" + }, + { + "Code": "61111-0002", + "Content": "Verbraucherpreisindex: Deutschland, Monate", + "Time": "Januar 1991 - Januar 2026" + }, + { + "Code": "61111-0003", + "Content": "Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", + "Time": "1991 - 2025" + }, + { + "Code": "61111-0004", + "Content": "Verbraucherpreisindex: Deutschland, Monate,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", + "Time": "Januar 1991 - Januar 2026" + }, + { + "Code": "61111-0005", + "Content": "Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-/3-/4-/5-/10-Steller/Sonderpositionen)", + "Time": "1991 - 2025" + }, + { + "Code": "61111-0006", + "Content": "Verbraucherpreisindex: Deutschland, Monate,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-/3-/4-/5-/10-Steller/Sonderpositionen)", + "Time": "Januar 1991 - Januar 2026" + }, + { + "Code": "61111-0007", + "Content": "Wägungsschema des Verbraucherpreisindex: Deutschland, Jahre,\nKlassifikation der Verwendungszwecke des Individualkonsums\n(COICOP 2-5-Steller Hierarchie)", + "Time": "2020 - 2020" + }, + { + "Code": "61111-0010", + "Content": "Verbraucherpreisindex: Bundesländer, Jahre", + "Time": "1995 - 2025" + }, + { + "Code": "61111-0011", + "Content": "Verbraucherpreisindex: Bundesländer, Monate", + "Time": "Januar 1995 - Januar 2026" + }, + { + "Code": "61111-0020", + "Content": "Index der Nettokaltmieten: Bundesländer, Jahre", + "Time": "2005 - 2025" + }, + { + "Code": "61111-0021", + "Content": "Index der Nettokaltmieten: Bundesländer, Monate", + "Time": "Januar 2005 - Januar 2026" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/xy_statistic1/api/catalogue/variables2statistic-86e7c4-6d93aa-POST.json b/tests/testthat/xy_statistic1/api/catalogue/variables2statistic-86e7c4-6d93aa-POST.json new file mode 100644 index 0000000..e3a995e --- /dev/null +++ b/tests/testthat/xy_statistic1/api/catalogue/variables2statistic-86e7c4-6d93aa-POST.json @@ -0,0 +1,117 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "variables2statistic" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "name": "61111", + "selection": "", + "area": "Alle", + "searchcriterion": "Code", + "sortcriterion": "Code", + "type": "Alle", + "pagelength": "500", + "language": "de" + }, + "List": [ + { + "Code": "CC13A2", + "Content": "Verwendungszwecke des Individualkonsums, 2-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13A3", + "Content": "Verwendungszwecke des Individualkonsums, 3-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13A4", + "Content": "Verwendungszwecke des Individualkonsums, 4-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13A5", + "Content": "Verwendungszwecke des Individualkonsums, 5-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13B1", + "Content": "Verwendungszw.d.Individualkonsums,Sonderpositionen", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "CC13Z1", + "Content": "Verwendungszwecke des Individualkonsums,10-Steller", + "Type": "sachlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "DINSG", + "Content": "Deutschland insgesamt", + "Type": "räumlich insgesamt", + "Values": "-1", + "Information": "false" + }, + { + "Code": "DLAND", + "Content": "Bundesländer", + "Type": "räumlich", + "Values": "-1", + "Information": "true" + }, + { + "Code": "JAHR", + "Content": "Jahr", + "Type": "zeitidentifizierend", + "Values": "-1", + "Information": "false" + }, + { + "Code": "MONAT", + "Content": "Monate", + "Type": "zeitlich", + "Values": "-1", + "Information": "false" + }, + { + "Code": "PRE034", + "Content": "Index der Nettokaltmieten", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "PRE999", + "Content": "Gewichtung", + "Type": "Wert", + "Values": "-1", + "Information": "false" + }, + { + "Code": "PREIS1", + "Content": "Verbraucherpreisindex", + "Type": "Wert", + "Values": "-1", + "Information": "true" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/xy_variable1/api/catalogue/statistics2variable-86e7c4-a6b6cb-POST.json b/tests/testthat/xy_variable1/api/catalogue/statistics2variable-86e7c4-a6b6cb-POST.json new file mode 100644 index 0000000..a5317fb --- /dev/null +++ b/tests/testthat/xy_variable1/api/catalogue/statistics2variable-86e7c4-a6b6cb-POST.json @@ -0,0 +1,1135 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "statistics2variable" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "name": "DLAND", + "selection": "", + "area": "Alle", + "searchcriterion": "Code", + "sortcriterion": "Code", + "pagelength": "500", + "language": "de" + }, + "List": [ + { + "Code": "11111", + "Content": "Feststellung des Gebietsstands", + "Cubes": "3", + "Information": "true" + }, + { + "Code": "12211", + "Content": "Mikrozensus", + "Cubes": "575", + "Information": "true" + }, + { + "Code": "12231", + "Content": "IKT-Nutzung in privaten Haushalten", + "Cubes": "44", + "Information": "true" + }, + { + "Code": "12251", + "Content": "Arbeitsmarktstatistik des Mikrozensus", + "Cubes": "99", + "Information": "true" + }, + { + "Code": "12411", + "Content": "Fortschreibung des Bevölkerungsstandes", + "Cubes": "28", + "Information": "true" + }, + { + "Code": "12421", + "Content": "Bevölkerungsvorausberechnungen", + "Cubes": "16", + "Information": "true" + }, + { + "Code": "12521", + "Content": "Ausländerstatistik", + "Cubes": "98", + "Information": "true" + }, + { + "Code": "12531", + "Content": "Statistik über Schutzsuchende", + "Cubes": "78", + "Information": "true" + }, + { + "Code": "12611", + "Content": "Statistik der Eheschließungen", + "Cubes": "7", + "Information": "true" + }, + { + "Code": "12612", + "Content": "Statistik der Geburten", + "Cubes": "38", + "Information": "true" + }, + { + "Code": "12613", + "Content": "Statistik der Sterbefälle", + "Cubes": "17", + "Information": "true" + }, + { + "Code": "12621", + "Content": "Sterbetafeln", + "Cubes": "3", + "Information": "true" + }, + { + "Code": "12631", + "Content": "Statistik rechtskräftiger Urteile in Ehesachen", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "12651", + "Content": "Begründung von Lebenspartnerschaften", + "Cubes": "3", + "Information": "true" + }, + { + "Code": "12661", + "Content": "Aufhebung von Lebenspartnerschaften", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "12711", + "Content": "Wanderungsstatistik", + "Cubes": "65", + "Information": "true" + }, + { + "Code": "13111", + "Content": "Statistik d. sozialversicherungspfl. Beschäftigten", + "Cubes": "13", + "Information": "true" + }, + { + "Code": "13211", + "Content": "Arbeitsmarktstatistik der Bundesagentur für Arbeit", + "Cubes": "16", + "Information": "true" + }, + { + "Code": "13311", + "Content": "Länderberechnung Erwerbstätige", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "14111", + "Content": "Allgemeine Bundestagswahlstatistik", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "14121", + "Content": "Repräsentative Bundestagswahlstatistik", + "Cubes": "10", + "Information": "true" + }, + { + "Code": "14211", + "Content": "Allgemeine Europawahlstatistik", + "Cubes": "2", + "Information": "true" + }, + { + "Code": "14221", + "Content": "Repräsentative Europawahlstatistik", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "21111", + "Content": "Statistik der allgemeinbildenden Schulen", + "Cubes": "96", + "Information": "true" + }, + { + "Code": "21121", + "Content": "Statistik der beruflichen Schulen", + "Cubes": "36", + "Information": "true" + }, + { + "Code": "21211", + "Content": "Berufsbildungsstatistik", + "Cubes": "48", + "Information": "true" + }, + { + "Code": "21241", + "Content": "Pflegeausbildungsstatistik", + "Cubes": "18", + "Information": "true" + }, + { + "Code": "21311", + "Content": "Statistik der Studenten", + "Cubes": "48", + "Information": "true" + }, + { + "Code": "21321", + "Content": "Statistik der Prüfungen", + "Cubes": "5", + "Information": "true" + }, + { + "Code": "21351", + "Content": "Statistik der Habilitationen", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "21352", + "Content": "Statistik der Promovierenden", + "Cubes": "28", + "Information": "true" + }, + { + "Code": "21353", + "Content": "Statistik der Hochschulräte", + "Cubes": "8", + "Information": "true" + }, + { + "Code": "21354", + "Content": "Statistik der Berufsakademien", + "Cubes": "10", + "Information": "true" + }, + { + "Code": "21371", + "Content": "Hochschulfinanzstatistik", + "Cubes": "8", + "Information": "true" + }, + { + "Code": "21381", + "Content": "Hochschulstatistische Kennzahlen", + "Cubes": "11", + "Information": "false" + }, + { + "Code": "21411", + "Content": "Statistik der Bundesausbildungsförderung (BAföG)", + "Cubes": "51", + "Information": "true" + }, + { + "Code": "21421", + "Content": "Statistik der Aufstiegsfortbildungsförderung", + "Cubes": "30", + "Information": "true" + }, + { + "Code": "21431", + "Content": "Förderung nach dem Stipendienprogramm-Gesetz", + "Cubes": "37", + "Information": "true" + }, + { + "Code": "21611", + "Content": "Kulturstatistik", + "Cubes": "24", + "Information": "true" + }, + { + "Code": "21621", + "Content": "Berichterstattung über öffentliche Kulturausgaben", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "21711", + "Content": "Bildungsberichterstattung für nationale Zwecke", + "Cubes": "13", + "Information": "false" + }, + { + "Code": "21821", + "Content": "Berichterstattung über Forschung und Entwicklung", + "Cubes": "5", + "Information": "true" + }, + { + "Code": "22111", + "Content": "Statistik d. Ausgaben u. Einnahmen der Sozialhilfe", + "Cubes": "36", + "Information": "true" + }, + { + "Code": "22121", + "Content": "Statistik d. Empfänger v. Hilfe z. Lebensunterhalt", + "Cubes": "26", + "Information": "true" + }, + { + "Code": "22131", + "Content": "Statistik d. Empfänger v. Leist.(5.-9.Kap.SGB XII)", + "Cubes": "20", + "Information": "true" + }, + { + "Code": "22151", + "Content": "Grundsicherung im Alter und bei Erwerbsminderung", + "Cubes": "98", + "Information": "true" + }, + { + "Code": "22161", + "Content": "Statistik der Empf. v.Eingliederungshilfe (SGB IX)", + "Cubes": "24", + "Information": "true" + }, + { + "Code": "22162", + "Content": "Stat.d.Ausg.u.Einn.d.Eingliederungshilfe (SGB IX)", + "Cubes": "3", + "Information": "true" + }, + { + "Code": "22211", + "Content": "Ausgaben und Einnahmen für Asylbewerberleistungen", + "Cubes": "12", + "Information": "true" + }, + { + "Code": "22221", + "Content": "Statistik der Empfänger von Asylbewerberleistungen", + "Cubes": "91", + "Information": "true" + }, + { + "Code": "22231", + "Content": "Stat.d. Empfänger von besonderen Asylbewerberlstg.", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "22311", + "Content": "Wohngeld zum 31.12.", + "Cubes": "23", + "Information": "true" + }, + { + "Code": "22411", + "Content": "Statistik über ambulante Pflegeeinrichtungen", + "Cubes": "22", + "Information": "true" + }, + { + "Code": "22412", + "Content": "Statistik über stationäre Pflegeeinrichtungen", + "Cubes": "24", + "Information": "true" + }, + { + "Code": "22421", + "Content": "Statistik über d. Empfänger v.Pflegegeldleistungen", + "Cubes": "20", + "Information": "true" + }, + { + "Code": "22517", + "Content": "Statistik der erzieherischen Hilfen", + "Cubes": "12", + "Information": "true" + }, + { + "Code": "22518", + "Content": "Stat. ü. d. Schutzauftrag bei Kindeswohlgefährdung", + "Cubes": "26", + "Information": "true" + }, + { + "Code": "22521", + "Content": "Statistik der Adoptionen", + "Cubes": "36", + "Information": "true" + }, + { + "Code": "22522", + "Content": "Statistik der Pflegeerlaubnis, Vormundschaften etc", + "Cubes": "13", + "Information": "true" + }, + { + "Code": "22523", + "Content": "Statistik der vorläufigen Schutzmaßnahmen", + "Cubes": "31", + "Information": "true" + }, + { + "Code": "22541", + "Content": "Statistik der Kindertageseinrichtungen", + "Cubes": "67", + "Information": "true" + }, + { + "Code": "22542", + "Content": "Statistik der Träger der Jugendhilfe", + "Cubes": "29", + "Information": "true" + }, + { + "Code": "22543", + "Content": "Statistik öffentlich geförderter Kindertagespflege", + "Cubes": "29", + "Information": "true" + }, + { + "Code": "22551", + "Content": "Ausgaben und Einnahmen der Kinder- und Jugendhilfe", + "Cubes": "20", + "Information": "true" + }, + { + "Code": "22922", + "Content": "Statistik zum Elterngeld", + "Cubes": "102", + "Information": "true" + }, + { + "Code": "22923", + "Content": "Statistik zum Betreuungsgeld", + "Cubes": "3", + "Information": "true" + }, + { + "Code": "22971", + "Content": "Statistik untergebrachter wohnungsloser Personen", + "Cubes": "107", + "Information": "true" + }, + { + "Code": "23131", + "Content": "Diagnosen der Krankenhauspatienten", + "Cubes": "70", + "Information": "true" + }, + { + "Code": "23141", + "Content": "Fallpauschalenbezogene Krankenhausstatistik (DRG)", + "Cubes": "88", + "Information": "true" + }, + { + "Code": "23311", + "Content": "Statistik der Schwangerschaftsabbrüche", + "Cubes": "12", + "Information": "true" + }, + { + "Code": "24111", + "Content": "Statistik der Zahl der Gerichte", + "Cubes": "1", + "Information": "true" + }, + { + "Code": "24211", + "Content": "Statistik bei den Staats- und Amtsanwaltschaften", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "24221", + "Content": "Statistik über Straf- und Bußgeldverfahren", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "24231", + "Content": "Statistik über Zivilsachen", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "24241", + "Content": "Statistik über Familiensachen", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "24251", + "Content": "Statistik in der Verwaltungsgerichtsbarkeit", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "24261", + "Content": "Statistik in der Finanzgerichtsbarkeit", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "24271", + "Content": "Statistik in der Sozialgerichtsbarkeit", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "24281", + "Content": "Statistik in der Arbeitsgerichtsbarkeit", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "24321", + "Content": "Strafvollzugsstatistik", + "Cubes": "3", + "Information": "true" + }, + { + "Code": "31111", + "Content": "Statistik der Baugenehmigungen", + "Cubes": "29", + "Information": "true" + }, + { + "Code": "31121", + "Content": "Statistik der Baufertigstellungen", + "Cubes": "22", + "Information": "true" + }, + { + "Code": "31131", + "Content": "Statistik des Bauüberhangs", + "Cubes": "8", + "Information": "true" + }, + { + "Code": "31141", + "Content": "Statistik des Bauabgangs", + "Cubes": "8", + "Information": "true" + }, + { + "Code": "31231", + "Content": "Fortschreibung Wohngebäude- und Wohnungsbestand", + "Cubes": "25", + "Information": "true" + }, + { + "Code": "32111", + "Content": "Erhebung der Abfallentsorgung", + "Cubes": "8", + "Information": "true" + }, + { + "Code": "32121", + "Content": "Erhebung der öffentlich-rechtl. Abfallentsorgung", + "Cubes": "5", + "Information": "true" + }, + { + "Code": "32131", + "Content": "Erh. d. Einsammlung v. Transport- u.Umverpackungen", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "32136", + "Content": "Erhebung über zurückgenommene Verkaufsverpackungen", + "Cubes": "10", + "Information": "true" + }, + { + "Code": "32137", + "Content": "Erhebung gewerblich eingesammelter Verpackungen", + "Cubes": "10", + "Information": "true" + }, + { + "Code": "32141", + "Content": "Aufbereitung,Verwertung v. Bau- u. Abbruchabfällen", + "Cubes": "7", + "Information": "true" + }, + { + "Code": "32151", + "Content": "Erhebung der gefährlichen Abfälle", + "Cubes": "12", + "Information": "true" + }, + { + "Code": "32161", + "Content": "Erhebung über die Abfallerzeugung", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "32181", + "Content": "Erh. systembeteiligungspflichtiger Verpackungen", + "Cubes": "7", + "Information": "true" + }, + { + "Code": "32211", + "Content": "Erhebung der öffentlichen Wasserversorgung", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "32212", + "Content": "Erhebung der öffentlichen Abwasserentsorgung", + "Cubes": "2", + "Information": "true" + }, + { + "Code": "32213", + "Content": "Erhebung der öffentlichen Abwasserbehandlung", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "32214", + "Content": "Erhebung der öff. Abwasserentsorgung - Klärschlamm", + "Cubes": "16", + "Information": "true" + }, + { + "Code": "32221", + "Content": "Erh. nichtöff. Wasserversorgung,Abwasserentsorgung", + "Cubes": "12", + "Information": "true" + }, + { + "Code": "32251", + "Content": "Wassereigenversorgung u.-entsorgung priv.Haushalte", + "Cubes": "1", + "Information": "true" + }, + { + "Code": "32331", + "Content": "Erh. der Anlagen zum Umgang mit wassergef. Stoffen", + "Cubes": "40", + "Information": "true" + }, + { + "Code": "32421", + "Content": "Erhebung bestimmter klimawirksamer Stoffe", + "Cubes": "16", + "Information": "true" + }, + { + "Code": "32531", + "Content": "Erh. der Güter und Leistungen für den Umweltschutz", + "Cubes": "17", + "Information": "true" + }, + { + "Code": "33111", + "Content": "Flächenerhebung nach Art der tatsächlichen Nutzung", + "Cubes": "12", + "Information": "true" + }, + { + "Code": "41122", + "Content": "Repräsentative Agrarstrukturerhebung (ASE b. 2007)", + "Cubes": "40", + "Information": "true" + }, + { + "Code": "41141", + "Content": "Landwirtschaftszählung: Haupterhebung", + "Cubes": "176", + "Information": "true" + }, + { + "Code": "41145", + "Content": "Landwirtschaftszählung: Gartenbau", + "Cubes": "22", + "Information": "true" + }, + { + "Code": "41161", + "Content": "Strukturerhebung der Forstbetriebe", + "Cubes": "9", + "Information": "true" + }, + { + "Code": "41213", + "Content": "Allgemeine Zierpflanzenerhebung", + "Cubes": "25", + "Information": "true" + }, + { + "Code": "41215", + "Content": "Gemüseerhebung", + "Cubes": "16", + "Information": "true" + }, + { + "Code": "41221", + "Content": "Baumschulerhebung", + "Cubes": "8", + "Information": "true" + }, + { + "Code": "41231", + "Content": "Baumobstanbauerhebung", + "Cubes": "12", + "Information": "true" + }, + { + "Code": "41232", + "Content": "Erhebung über Strauchbeeren", + "Cubes": "14", + "Information": "true" + }, + { + "Code": "41241", + "Content": "Ernte-u.Betriebsbericht: Feldfrüchte und Grünland", + "Cubes": "10", + "Information": "true" + }, + { + "Code": "41243", + "Content": "Ernte- und Betriebsbericht: Baumobst", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "41244", + "Content": "Ernte- und Betriebsbericht: Reben und Weinmost", + "Cubes": "18", + "Information": "true" + }, + { + "Code": "41252", + "Content": "Rebflächenerhebung (Weinbaukataster)", + "Cubes": "9", + "Information": "true" + }, + { + "Code": "41253", + "Content": "Erhebung der Weinernte", + "Cubes": "18", + "Information": "true" + }, + { + "Code": "41254", + "Content": "Erhebung der Weinerzeugung", + "Cubes": "24", + "Information": "true" + }, + { + "Code": "41255", + "Content": "Erhebung der Weinbestände", + "Cubes": "56", + "Information": "true" + }, + { + "Code": "41261", + "Content": "Holzeinschlagsstatistik (forstl. Erzeugerbetriebe)", + "Cubes": "40", + "Information": "true" + }, + { + "Code": "41271", + "Content": "Bodennutzungshaupterhebung", + "Cubes": "29", + "Information": "true" + }, + { + "Code": "41311", + "Content": "Allg. und Repräs. Erhebung über die Viehbestände", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "41312", + "Content": "Viehbestandserhebung Rinder", + "Cubes": "18", + "Information": "true" + }, + { + "Code": "41313", + "Content": "Viehbestandserhebung Schweine", + "Cubes": "10", + "Information": "true" + }, + { + "Code": "41314", + "Content": "Viehbestandserhebung Schafe", + "Cubes": "6", + "Information": "true" + }, + { + "Code": "41321", + "Content": "Geflügelstatistik: Erhebung in Brütereien", + "Cubes": "10", + "Information": "true" + }, + { + "Code": "41322", + "Content": "Geflügelstatistik: Erh. in Geflügelschlachtereien", + "Cubes": "16", + "Information": "true" + }, + { + "Code": "41323", + "Content": "Geflügelstatistik: Untern. mit Legehennenhaltung", + "Cubes": "14", + "Information": "true" + }, + { + "Code": "41331", + "Content": "Schlachtungs- und Schlachtgewichtsstatistik", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "41362", + "Content": "Erhebung über die Erzeugung in Aquakulturbetrieben", + "Cubes": "10", + "Information": "true" + }, + { + "Code": "42111", + "Content": "Monatsbericht im Verarbeitenden Gewerbe", + "Cubes": "28", + "Information": "true" + }, + { + "Code": "42191", + "Content": "Indizes aus der Lkw-Mauterhebung", + "Cubes": "4", + "Information": "false" + }, + { + "Code": "42271", + "Content": "Jahresbericht für Betriebe im Verarb. Gewerbe", + "Cubes": "14", + "Information": "true" + }, + { + "Code": "42321", + "Content": "Düngemittelstatistik", + "Cubes": "12", + "Information": "true" + }, + { + "Code": "42341", + "Content": "Holzbearbeitungsstatistik", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "44111", + "Content": "Monatsbericht im Bauhauptgewerbe", + "Cubes": "12", + "Information": "true" + }, + { + "Code": "44141", + "Content": "Statistik über den Auftragsbestand im Bauhauptgew.", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "44231", + "Content": "Ergänzungserhebung im Bauhauptgewerbe", + "Cubes": "12", + "Information": "true" + }, + { + "Code": "44241", + "Content": "Jährl. Erhebung im Ausbaugewerbe u.bei Bauträgern", + "Cubes": "5", + "Information": "true" + }, + { + "Code": "45211", + "Content": "Monatsstatistik Großhandel und Handelsvermittlung", + "Cubes": "17", + "Information": "true" + }, + { + "Code": "45212", + "Content": "Monatsstatistik im Einzelhandel", + "Cubes": "17", + "Information": "true" + }, + { + "Code": "45213", + "Content": "Monatsstatistik im Gastgewerbe", + "Cubes": "17", + "Information": "true" + }, + { + "Code": "45214", + "Content": "Monatsstatistik im Kfz-Handel,Instandh.,Reparatur", + "Cubes": "17", + "Information": "true" + }, + { + "Code": "45341", + "Content": "Jahresstatistik im Handel", + "Cubes": "16", + "Information": "true" + }, + { + "Code": "45412", + "Content": "Monatserhebung im Tourismus", + "Cubes": "20", + "Information": "true" + }, + { + "Code": "46161", + "Content": "Schieneninfrastrukturstatistik", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "46181", + "Content": "Personenverkehr mit Bussen und Bahnen", + "Cubes": "15", + "Information": "true" + }, + { + "Code": "46241", + "Content": "Statistik der Straßenverkehrsunfälle", + "Cubes": "19", + "Information": "true" + }, + { + "Code": "46251", + "Content": "Statistik des Kraftfahrzeug- und Anhängerbestandes", + "Cubes": "20", + "Information": "true" + }, + { + "Code": "46271", + "Content": "Statistik der Straßen des überörtlichen Verkehrs", + "Cubes": "1", + "Information": "true" + }, + { + "Code": "47415", + "Content": "Strukturerhebung im Dienstleistungsbereich", + "Cubes": "161", + "Information": "true" + }, + { + "Code": "49911", + "Content": "Fleischuntersuchungsstatistik", + "Cubes": "21", + "Information": "true" + }, + { + "Code": "52111", + "Content": "Unternehmensregister-System (URS)", + "Cubes": "18", + "Information": "true" + }, + { + "Code": "52311", + "Content": "Gewerbeanzeigenstatistik", + "Cubes": "116", + "Information": "true" + }, + { + "Code": "52411", + "Content": "Statistik über beantragte Insolvenzverfahren", + "Cubes": "49", + "Information": "true" + }, + { + "Code": "53111", + "Content": "Handwerkszählung", + "Cubes": "19", + "Information": "true" + }, + { + "Code": "61111", + "Content": "Verbraucherpreisindex für Deutschland", + "Cubes": "22", + "Information": "true" + }, + { + "Code": "61511", + "Content": "Statistik der Kaufwerte für Bauland", + "Cubes": "65", + "Information": "true" + }, + { + "Code": "61521", + "Content": "Kaufwerte für landwirtschaftliche Grundstücke", + "Cubes": "14", + "Information": "true" + }, + { + "Code": "62111", + "Content": "Verdienststrukturerhebung", + "Cubes": "56", + "Information": "true" + }, + { + "Code": "62361", + "Content": "Verdiensterhebung", + "Cubes": "152", + "Information": "true" + }, + { + "Code": "62411", + "Content": "Arbeitskostenerhebung", + "Cubes": "24", + "Information": "true" + }, + { + "Code": "71141", + "Content": "Rechnungsergebnisse d.öffentlichen Gesamthaushalts", + "Cubes": "10", + "Information": "true" + }, + { + "Code": "71211", + "Content": "Statistik über das Steueraufkommen", + "Cubes": "11", + "Information": "true" + }, + { + "Code": "71231", + "Content": "Realsteuervergleich", + "Cubes": "8", + "Information": "true" + }, + { + "Code": "71311", + "Content": "Vierteljährl. Schulden d. öffentl. Gesamthaushalts", + "Cubes": "18", + "Information": "true" + }, + { + "Code": "71321", + "Content": "Jährliche Schulden d. öffentlichen Gesamthaushalts", + "Cubes": "21", + "Information": "true" + }, + { + "Code": "71329", + "Content": "Jährl. Schulden der sonst. öff. Fonds, Einr., Unt.", + "Cubes": "8", + "Information": "true" + }, + { + "Code": "71411", + "Content": "Finanzvermögen des öffentlichen Gesamthaushalts", + "Cubes": "17", + "Information": "true" + }, + { + "Code": "71811", + "Content": "Jahresabschlüsse kfm. b. Extrahh., sonst. öff. FEU", + "Cubes": "72", + "Information": "true" + }, + { + "Code": "73121", + "Content": "Statistik ü. Personengesellschaften,Gemeinschaften", + "Cubes": "10", + "Information": "true" + }, + { + "Code": "73151", + "Content": "Lohnsteuerstatistik (Anmeldungen)", + "Cubes": "8", + "Information": "true" + }, + { + "Code": "73311", + "Content": "Umsatzsteuerstatistik (Voranmeldungen)", + "Cubes": "36", + "Information": "true" + }, + { + "Code": "73321", + "Content": "Umsatzsteuerstatistik (Veranlagungen)", + "Cubes": "42", + "Information": "true" + }, + { + "Code": "73511", + "Content": "Gewerbesteuerstatistik", + "Cubes": "8", + "Information": "true" + }, + { + "Code": "74111", + "Content": "Personalstandstatistik des öffentlichen Dienstes", + "Cubes": "28", + "Information": "true" + }, + { + "Code": "74211", + "Content": "Versorgungsempfängerstatistik", + "Cubes": "56", + "Information": "true" + }, + { + "Code": "79994", + "Content": "Vergabestatistik", + "Cubes": "112", + "Information": "true" + }, + { + "Code": "82111", + "Content": "VGR der Länder: Entstehungsrechnung", + "Cubes": "4", + "Information": "true" + }, + { + "Code": "82411", + "Content": "VGR der Länder: Umverteilungsrechnung", + "Cubes": "2", + "Information": "true" + }, + { + "Code": "85311", + "Content": "Ausmaß der Ökosysteme", + "Cubes": "8", + "Information": "true" + }, + { + "Code": "85331", + "Content": "Leistungen der Ökosysteme", + "Cubes": "8", + "Information": "true" + }, + { + "Code": "91211", + "Content": "Wissenschafts- und Technologieindikatoren", + "Cubes": "2", + "Information": "true" + }, + { + "Code": "91311", + "Content": "Kulturindikatoren", + "Cubes": "2", + "Information": "true" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/xy_variable1/api/catalogue/tables2variable-86e7c4-a6b6cb-POST.json b/tests/testthat/xy_variable1/api/catalogue/tables2variable-86e7c4-a6b6cb-POST.json new file mode 100644 index 0000000..fbef3c6 --- /dev/null +++ b/tests/testthat/xy_variable1/api/catalogue/tables2variable-86e7c4-a6b6cb-POST.json @@ -0,0 +1,2523 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "tables2variable" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "name": "DLAND", + "selection": "", + "area": "Alle", + "pagelength": "500", + "language": "de" + }, + "List": [ + { + "Code": "11111-0001", + "Content": "Gebietsfläche: Bundesländer, Stichtag", + "Time": "31.12.1995 - 31.12.2023" + }, + { + "Code": "12211-0902", + "Content": "Bevölkerung in Gemeinschaftsunterkünften: Bundesländer,\nJahre, Hauptstatus, Geschlecht, Altersgruppen", + "Time": "2017 - 2024" + }, + { + "Code": "12211-0903", + "Content": "Bevölkerung in Gemeinschaftsunterkünften: Bundesländer,\nJahre, Art der Gemeinschaftsunterkunft, Geschlecht", + "Time": "2017 - 2024" + }, + { + "Code": "12211-1001", + "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen, Nichterwerbspersonen aus Hauptwohnsitzhaushalten: Bundesländer, Jahre, Geschlecht, Altersgruppen", + "Time": "2021 - 2024" + }, + { + "Code": "12211-1002", + "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen, Nichterwerbspersonen aus Hauptwohnsitzhaushalten: Bundesländer, Jahre, Überwiegender Lebensunterhalt, Altersgruppen", + "Time": "2023 - 2024" + }, + { + "Code": "12211-1003", + "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen,\nNichterwerbspersonen aus Hauptwohnsitzhaush.: Bundesländer,\nJahre, Geschlecht, Größenkl. persönl. monatl. Nettoeinkommen", + "Time": "2021 - 2024" + }, + { + "Code": "12211-1004", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Stellung im Beruf", + "Time": "2024 - 2024" + }, + { + "Code": "12211-1005", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Art der geleisteten\nArbeitsstunden, Größenkl. d.geleisteten Arbeitsstd. je Woche", + "Time": "2024 - 2024" + }, + { + "Code": "12211-1006", + "Content": "Geleistete Arbeitsstunden je Woche von Erwerbstätigen aus\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Geschlecht,\nStellung im Beruf, Art der geleisteten Arbeitsstunden", + "Time": "2024 - 2024" + }, + { + "Code": "12211-1007", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Erwerbsformen", + "Time": "2021 - 2024" + }, + { + "Code": "12211-1008", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Größenklassen des\npersönlichen monatlichen Nettoeinkommens", + "Time": "2024 - 2024" + }, + { + "Code": "12211-1009", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Berufe", + "Time": "2024 - 2024" + }, + { + "Code": "12211-1010", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Größenklassen der in\nder Arbeitsstätte tätigen Personen", + "Time": "2024 - 2024" + }, + { + "Code": "12211-1011", + "Content": "Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten:\nBundesländer, Jahre, Geschlecht, Altersgruppen,\nBeschäftigungsumfang", + "Time": "2021 - 2024" + }, + { + "Code": "12211-1012", + "Content": "Erwerbslose aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Dauer der Erwerbslosigkeit", + "Time": "2021 - 2024" + }, + { + "Code": "12211-1100", + "Content": "Bevölkerung ab 15 Jahren in Hauptwohnsitzhaushalten:\nBundesländer, Jahre, Geschlecht, Altersgruppen, Allgemeine\nSchulausbildung", + "Time": "2021 - 2024" + }, + { + "Code": "12211-1101", + "Content": "Bevölkerung ab 15 Jahren in Hauptwohnsitzhaushalten:\nBundesländer, Jahre, Geschlecht, Altersgruppen, Beruflicher\nBildungsabschluss", + "Time": "2021 - 2024" + }, + { + "Code": "12211-1102", + "Content": "Bevölkerung ab 15 Jahren in Hauptwohnsitzhaushalten:\nBundesländer, Jahre, Geschlecht, Altersgruppen,\nBildungsstatus", + "Time": "2021 - 2024" + }, + { + "Code": "12211-9004", + "Content": "Bevölkerung, Erwerbstätige, Erwerbslose, Erwerbspersonen,\nNichterwerbspersonen: Bundesländer, Jahre (bis 2019)", + "Time": "04/1991 - 2019" + }, + { + "Code": "12211-9014", + "Content": "Bevölkerung (ab 15 Jahren): Bundesländer, Jahre (bis 2019),\nGeschlecht, Allgemeine Schulausbildung", + "Time": "2005 - 2019" + }, + { + "Code": "12211-9015", + "Content": "Bevölkerung (ab 15 Jahren): Bundesländer, Jahre (bis 2019),\nGeschlecht, Beruflicher Bildungsabschluss", + "Time": "2005 - 2019" + }, + { + "Code": "12211-9033", + "Content": "Privathaushalte: Bundesländer, Jahre (bis 2019)", + "Time": "05/1970 - 2019" + }, + { + "Code": "12211-9034", + "Content": "Privathaushalte: Bundesländer, Jahre (bis 2019), Haushaltsgröße", + "Time": "04/1991 - 2019" + }, + { + "Code": "12211-9041", + "Content": "Bevölkerung in Familien/Lebensformen: Bundesländer, Jahre (bis 2019), Lebensformen", + "Time": "04/1996 - 2019" + }, + { + "Code": "12211-9044", + "Content": "Familien, Paare, Alleinerziehende: Bundesländer, Jahre (bis 2019), Vorhandensein von Kindern", + "Time": "04/1996 - 2019" + }, + { + "Code": "12211-9047", + "Content": "Ehepaare, Lebensgemeinschaften, Gemischtgeschlechtliche\nLebensgemeinschaften: Bundesländer, Jahre (bis 2019),\nVorhandensein von Kindern", + "Time": "04/1996 - 2019" + }, + { + "Code": "12211-9051", + "Content": "Alleinerziehende: Bundesländer, Jahre (bis 2019),\nGeschlecht, Vorhandensein von Kindern", + "Time": "04/1996 - 2019" + }, + { + "Code": "12211-9053", + "Content": "Alleinstehende: Bundesländer, Jahre (bis 2019), Geschlecht,\nHaushaltsgröße", + "Time": "04/1996 - 2019" + }, + { + "Code": "12211-9056", + "Content": "Ledige Kinder in Familien: Bundesländer, Jahre (bis 2019),\nFamilienformen", + "Time": "04/1996 - 2019" + }, + { + "Code": "12231-0101", + "Content": "Bevölkerung von 16 bis unter 75 Jahren in\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Altersgruppen,\nPrivate Internetaktivitäten in den letzten drei Monaten", + "Time": "2022 - 2025" + }, + { + "Code": "12231-0102", + "Content": "Bevölkerung von 16 bis unter 75 Jahren in\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Altersgruppen,\nPrivate Internetkäufe in den letzten drei Monaten", + "Time": "2022 - 2025" + }, + { + "Code": "12231-0103", + "Content": "Bevölkerung von 16 bis unter 75 Jahren in\nHauptwohnsitzhaushalten: Bundesländer, Jahre, Altersgruppen,\nArt der Computer- und Internetkenntnisse", + "Time": "2023 - 2025" + }, + { + "Code": "12251-0101", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Wochenend- und\nFeiertagsarbeit", + "Time": "2024 - 2024" + }, + { + "Code": "12251-0102", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Abend-, Nacht- und\nSchichtarbeit", + "Time": "2024 - 2024" + }, + { + "Code": "12251-0103", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Erwerbsarbeit zu\nHause", + "Time": "2024 - 2024" + }, + { + "Code": "12251-0104", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer, Jahre, Geschlecht, Stellung im Beruf, Zeitaufwand für den Hinweg zur Arbeitsstätte", + "Time": "2024 - 2024" + }, + { + "Code": "12251-0105", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer, Jahre, Geschlecht, Stellung im Beruf, Benutztes Verkehrsmittel für den Hinweg zur Arbeitsstätte", + "Time": "2024 - 2024" + }, + { + "Code": "12251-0106", + "Content": "Erwerbstätige aus Hauptwohnsitzhaushalten: Bundesländer,\nJahre, Geschlecht, Stellung im Beruf, Entfernung zur\nArbeitsstätte", + "Time": "2024 - 2024" + }, + { + "Code": "12251-0107", + "Content": "Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten:\nBundesländer, Jahre, Geschlecht, Altersgruppen, Art des\nArbeitsvertrages", + "Time": "2021 - 2024" + }, + { + "Code": "12411-0010", + "Content": "Bevölkerung: Bundesländer, Stichtag", + "Time": "31.12.1958 - 31.12.2024" + }, + { + "Code": "12411-0011", + "Content": "Bevölkerung: Bundesländer, Stichtag, Geschlecht", + "Time": "31.12.1967 - 31.12.2024" + }, + { + "Code": "12411-0012", + "Content": "Bevölkerung: Bundesländer, Stichtag, Altersjahre", + "Time": "31.12.1967 - 31.12.2024" + }, + { + "Code": "12411-0013", + "Content": "Bevölkerung: Bundesländer, Stichtag, Geschlecht, Altersjahre", + "Time": "31.12.1967 - 31.12.2024" + }, + { + "Code": "12411-0014", + "Content": "Bevölkerung: Bundesländer, Stichtag, Nationalität,\nGeschlecht, Altersjahre", + "Time": "31.12.2000 - 31.12.2024" + }, + { + "Code": "12411-0021", + "Content": "Bevölkerung: Bundesländer, Stichtag zum Quartalsende,\nGeschlecht", + "Time": "31.03.1991 - 30.09.2025" + }, + { + "Code": "12411-0042", + "Content": "Durchschnittliche Bevölkerung: Bundesländer, Jahre,\nNationalität, Geschlecht", + "Time": "2000 - 2024" + }, + { + "Code": "12411-0050", + "Content": "Bevölkerungsdichte: Bundesländer, Stichtag", + "Time": "31.12.1995 - 31.12.2023" + }, + { + "Code": "12421-0003", + "Content": "Vorausberechneter Bevölkerungsstand: Bundesländer, Stichtag,\nVarianten der Bevölkerungsvorausberechnung", + "Time": "31.12.2025 - 31.12.2070" + }, + { + "Code": "12421-0004", + "Content": "Vorausberechneter Bevölkerungsstand: Bundesländer, Stichtag,\nVarianten der Bevölkerungsvorausberechnung, Geschlecht,\nAltersjahre", + "Time": "31.12.2025 - 31.12.2070" + }, + { + "Code": "12421-0101", + "Content": "Vorausberechnete Privathaushalte: Bundesländer, Jahre,\nVarianten der Haushaltsvorausberechnung, Haushaltsgröße", + "Time": "2019 - 2040" + }, + { + "Code": "12521-0020", + "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht/Altersjahre/\nFamilienstand", + "Time": "30.09.1980 - 31.12.2024" + }, + { + "Code": "12521-0021", + "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht/Altersjahre/\nFamilienstand, Ländergruppierungen/Staatsangehörigkeit", + "Time": "30.09.1980 - 31.12.2024" + }, + { + "Code": "12521-0022", + "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht, Altersjahre,\nLändergruppierungen/Staatsangehörigkeit", + "Time": "31.12.1998 - 31.12.2024" + }, + { + "Code": "12521-0023", + "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht, Altersjahre,\nMigrantengeneration, Ländergruppierungen/Staatsangehörigkeit", + "Time": "31.12.1998 - 31.12.2024" + }, + { + "Code": "12521-0024", + "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht,\nFamilienstand, Ländergruppierungen/Staatsangehörigkeit", + "Time": "31.12.1998 - 31.12.2024" + }, + { + "Code": "12521-0025", + "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht,\nAufenthaltsdauer/Aufenthaltsdauer (Abgrenzung\nEinbürgerungen), Ländergruppierungen/Staatsangehörigkeit", + "Time": "31.12.1998 - 31.12.2024" + }, + { + "Code": "12521-0026", + "Content": "Ausländer: Bundesländer, Stichtag, Geschlecht,\nAufenthaltstitel/Ausgewählte Aufenthaltstitel,\nLändergruppierungen/Staatsangehörigkeit", + "Time": "31.12.1998 - 31.12.2024" + }, + { + "Code": "12521-0027", + "Content": "Ausländer: Bundesländer, Jahre, Geschlecht,\nRegisterbewegungen (regional), Ländergruppierungen/\nStaatsangehörigkeit", + "Time": "2013 - 2024" + }, + { + "Code": "12521-0028", + "Content": "Ausländer: Bundesländer, Jahre, Geschlecht, Altersjahre,\nRegisterzu- und abgänge (regional), Ländergruppierungen/\nStaatsangehörigkeit", + "Time": "2013 - 2024" + }, + { + "Code": "12521-0029", + "Content": "Ausländer: Bundesländer, Jahre, Geschlecht,\nAufenthaltsdauer, Registerabgänge (regional),\nLändergruppierungen/Staatsangehörigkeit", + "Time": "2013 - 2024" + }, + { + "Code": "12521-0030", + "Content": "Durchschnittsalter der Ausländer: Bundesländer, Stichtag,\nGeschlecht, Ländergruppierungen/Staatsangehörigkeit", + "Time": "31.12.1998 - 31.12.2024" + }, + { + "Code": "12521-0031", + "Content": "Durchschnittliche Aufenthaltsdauer der Ausländer:\nBundesländer, Stichtag, Geschlecht, Ländergruppierungen/\nStaatsangehörigkeit", + "Time": "31.12.1998 - 31.12.2024" + }, + { + "Code": "12531-0020", + "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht/\nAltersjahre/Familienstand", + "Time": "31.12.2007 - 31.12.2024" + }, + { + "Code": "12531-0021", + "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht/\nAltersjahre/Familienstand, Ländergruppierungen/\nStaatsangehörigkeit", + "Time": "31.12.2007 - 31.12.2024" + }, + { + "Code": "12531-0022", + "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nAltersjahre, Ländergruppierungen/Staatsangehörigkeit", + "Time": "31.12.2007 - 31.12.2024" + }, + { + "Code": "12531-0023", + "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nAltersjahre, Migrantengeneration, Ländergruppierungen\n/Staatsangehörigkeit", + "Time": "31.12.2007 - 31.12.2024" + }, + { + "Code": "12531-0024", + "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nFamilienstand, Ländergruppierungen/Staatsangehörigkeit", + "Time": "31.12.2007 - 31.12.2024" + }, + { + "Code": "12531-0025", + "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nAufenthaltsdauer/Aufenthaltsdauer (Abgrenzung\nEinbürgerungen), Ländergruppierungen/Staatsangehörigkeit", + "Time": "31.12.2007 - 31.12.2024" + }, + { + "Code": "12531-0026", + "Content": "Schutzsuchende: Bundesländer, Stichtag, Geschlecht,\nSchutzstatus/Schutzstatuskategorie, Ländergruppierungen/\nStaatsangehörigkeit", + "Time": "31.12.2007 - 31.12.2024" + }, + { + "Code": "12531-0027", + "Content": "Durchschnittsalter der Schutzsuchenden: Bundesländer,\nStichtag, Geschlecht, Ländergruppierungen/\nStaatsangehörigkeit", + "Time": "31.12.2007 - 31.12.2024" + }, + { + "Code": "12531-0028", + "Content": "Durchschnittliche Aufenthaltsdauer der Schutzsuchenden:\nBundesländer, Stichtag, Geschlecht, Ländergruppierungen/\nStaatsangehörigkeit", + "Time": "31.12.2007 - 31.12.2024" + }, + { + "Code": "12611-0010", + "Content": "Eheschließungen: Bundesländer, Jahre", + "Time": "" + }, + { + "Code": "12611-0011", + "Content": "Eheschließungen: Bundesländer, Monate", + "Time": "" + }, + { + "Code": "12612-0100", + "Content": "Lebendgeborene: Bundesländer, Jahre, Geschlecht", + "Time": "" + }, + { + "Code": "12612-0101", + "Content": "Lebendgeborene: Bundesländer, Monate, Geschlecht", + "Time": "" + }, + { + "Code": "12612-0102", + "Content": "Lebendgeborene: Bundesländer, Jahre, Familienstand der\nEltern", + "Time": "" + }, + { + "Code": "12612-0103", + "Content": "Lebendgeborene: Bundesländer, Jahre, Staatsangehörigkeit des\nKindes und der Eltern", + "Time": "" + }, + { + "Code": "12612-0104", + "Content": "Zusammengefasste Geburtenziffern (je Frau): Bundesländer,\nJahre, Altersgruppen", + "Time": "" + }, + { + "Code": "12612-0105", + "Content": "Nettoreproduktionsrate: Bundesländer, Jahre (bis 2010),\nAltersgruppen", + "Time": "" + }, + { + "Code": "12612-0106", + "Content": "Totgeborene: Bundesländer, Jahre", + "Time": "" + }, + { + "Code": "12613-0010", + "Content": "Gestorbene: Bundesländer, Jahre", + "Time": "1990 - 2025" + }, + { + "Code": "12613-0011", + "Content": "Gestorbene: Bundesländer, Jahre, Geschlecht", + "Time": "1990 - 2025" + }, + { + "Code": "12613-0012", + "Content": "Gestorbene: Bundesländer, Monate", + "Time": "Januar 1990 - Dezember 2025" + }, + { + "Code": "12613-0013", + "Content": "Gestorbene: Bundesländer, Monate, Geschlecht", + "Time": "Januar 1990 - Dezember 2025" + }, + { + "Code": "12621-0004", + "Content": "Durchschnittliche Lebenserwartung bei Geburt\n(Periodensterbetafel): Bundesländer, Jahre, Geschlecht", + "Time": "2002/04 - 2022/24" + }, + { + "Code": "12631-0010", + "Content": "Ehescheidungen: Bundesländer, Jahre", + "Time": "1990 - 2024" + }, + { + "Code": "12631-0011", + "Content": "Ehescheidungen: Bundesländer, Jahre, Ehedauer", + "Time": "1997 - 2024" + }, + { + "Code": "12631-0012", + "Content": "Ehescheidungen: Bundesländer, Jahre, Gemeinsame\nminderjährige Kinder", + "Time": "1997 - 2024" + }, + { + "Code": "12651-0003", + "Content": "Begründungen von Lebenspartnerschaften: Bundesländer, Jahre (bis 2017), Geschlecht", + "Time": "2014 - 2017" + }, + { + "Code": "12661-0002", + "Content": "Aufhebungen von Lebenspartnerschaften: Bundesländer, Jahre,\nGeschlecht", + "Time": "2014 - 2024" + }, + { + "Code": "12711-0020", + "Content": "Gesamtwanderungen über die Grenzen der Bundesländer: Bundesländer, Jahre, Nationalität, Geschlecht", + "Time": "2000 - 2024" + }, + { + "Code": "12711-0021", + "Content": "Wanderungen zwischen den Bundesländern: Bundesländer, Jahre, Nationalität, Geschlecht", + "Time": "2000 - 2024" + }, + { + "Code": "12711-0023", + "Content": "Wanderungen zwischen Deutschland und dem Ausland:\nBundesländer, Jahre, Nationalität, Geschlecht", + "Time": "2000 - 2024" + }, + { + "Code": "13111-0005", + "Content": "Sozialversicherungspflichtig Beschäftigte am Arbeitsort:\nBundesländer, Stichtag, Geschlecht", + "Time": "31.03.2008 - 30.06.2025" + }, + { + "Code": "13111-0006", + "Content": "Sozialversicherungspflichtig Beschäftigte am Arbeitsort:\nBundesländer, Stichtag, Wirtschaftsabschnitte", + "Time": "31.03.2008 - 30.06.2025" + }, + { + "Code": "13211-0007", + "Content": "Arbeitslose, Arbeitslosenquoten, Gemeldete Arbeitsstellen:\nBundesländer, Jahre", + "Time": "1991 - 2025" + }, + { + "Code": "13211-0008", + "Content": "Arbeitslose, Arbeitslosenquoten, Gemeldete Arbeitsstellen:\nBundesländer, Monate", + "Time": "Januar 2005 - Januar 2026" + }, + { + "Code": "13211-0009", + "Content": "Arbeitslose: Bundesländer, Jahre, Geschlecht", + "Time": "1991 - 2025" + }, + { + "Code": "13211-0010", + "Content": "Arbeitslose: Bundesländer, Monate, Geschlecht", + "Time": "Januar 2005 - Januar 2026" + }, + { + "Code": "13211-0011", + "Content": "Arbeitslosenquote aller zivilen Erwerbspersonen:\nBundesländer, Jahre, Geschlecht", + "Time": "1991 - 2025" + }, + { + "Code": "13211-0012", + "Content": "Arbeitslosenquote aller zivilen Erwerbspersonen:\nBundesländer, Monate, Geschlecht", + "Time": "Januar 2005 - Januar 2026" + }, + { + "Code": "13311-0002", + "Content": "Erwerbstätige, Arbeitnehmer, Selbständige und mithelfende\nFamilienangehörige (im Inland): Bundesländer, Jahre,\nWirtschaftszweige", + "Time": "1991 - 2024" + }, + { + "Code": "14111-0003", + "Content": "Wahlberechtigte, Wähler, Wahlbeteiligung, Erststimmen,\nZweitstimmen (Allgemeine Bundestagswahlstatistik):\nBundesländer, Stichtag", + "Time": "22.09.2013 - 23.02.2025" + }, + { + "Code": "14111-0004", + "Content": "Gültige Erststimmen, gültige Zweitstimmen (Allgemeine\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien", + "Time": "22.09.2013 - 23.02.2025" + }, + { + "Code": "14121-0004", + "Content": "Gültige Zweitstimmen (Repräsentative\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien,\nGeschlecht", + "Time": "22.09.2002 - 23.02.2025" + }, + { + "Code": "14121-0005", + "Content": "Gültige Zweitstimmen (Repräsentative\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien,\nAltersgruppen", + "Time": "22.09.2013 - 23.02.2025" + }, + { + "Code": "14121-0006", + "Content": "Gültige Zweitstimmen (Repräsentative\nBundestagswahlstatistik): Bundesländer, Stichtag, Parteien,\nGeschlecht, Altersgruppen", + "Time": "22.09.2013 - 23.02.2025" + }, + { + "Code": "14211-0002", + "Content": "Gültige Stimmen (Allgemeine Europawahlstatistik):\nBundesländer, Stichtag, Parteien", + "Time": "12.06.1994 - 09.06.2024" + }, + { + "Code": "14221-0002", + "Content": "Anteil gültiger Stimmen (Repräsentative\nEuropawahlstatistik): Bundesländer, Stichtag, Parteien,\nGeschlecht, Altersgruppen", + "Time": "09.06.2024 - 09.06.2024" + }, + { + "Code": "21111-0010", + "Content": "Schüler, Schulanfänger, Absolventen und Abgänger:\nBundesländer, Schuljahr, Geschlecht", + "Time": "1997/98 - 2024/25" + }, + { + "Code": "21111-0011", + "Content": "Schüler: Bundesländer, Schuljahr, Geschlecht, Schulart,\nJahrgangsstufen", + "Time": "1998/99 - 2024/25" + }, + { + "Code": "21111-0012", + "Content": "Schulanfänger: Bundesländer, Schuljahr, Geschlecht, Schulart, Einschulungsart", + "Time": "1999/00 - 2024/25" + }, + { + "Code": "21111-0013", + "Content": "Absolventen und Abgänger: Bundesländer, Schuljahr,\nGeschlecht, Schulart, Schulabschlüsse", + "Time": "1997/98 - 2023/24" + }, + { + "Code": "21111-0014", + "Content": "Wiederholer: Bundesländer, Schuljahr, Geschlecht, Schulart,\nJahrgangsstufen", + "Time": "1998/99 - 2024/25" + }, + { + "Code": "21111-0015", + "Content": "Schüler mit Fremdsprachen-Unterricht: Bundesländer,\nSchuljahr, Fremdsprachen, Schulart, Jahrgangsstufen", + "Time": "1998/99 - 2024/25" + }, + { + "Code": "21111-0016", + "Content": "Schüler mit sonderpädagogischer Förderung: Bundesländer,\nSchuljahr, Schulart, Förderschwerpunkte", + "Time": "2000/01 - 2024/25" + }, + { + "Code": "21111-0017", + "Content": "Schüler mit sonderpädagogischer Förderung: Bundesländer, Schuljahr, Geschlecht, Schulart, Förderschwerpunkte", + "Time": "2014/15 - 2024/25" + }, + { + "Code": "21121-0010", + "Content": "Schüler in beruflichen Schulen: Bundesländer, Schuljahr,\nSchulart", + "Time": "2001/02 - 2024/25" + }, + { + "Code": "21121-0011", + "Content": "Schüler in beruflichen Schulen: Bundesländer, Schuljahr,\nGeschlecht, Schulart", + "Time": "2001/02 - 2024/25" + }, + { + "Code": "21121-0012", + "Content": "Schüler in beruflichen Schulen: Bundesländer, Schuljahr,\nNationalität, Geschlecht, Schulart, Zeitform des Unterrichts", + "Time": "2001/02 - 2024/25" + }, + { + "Code": "21121-0013", + "Content": "Schüler mit Fremdsprachen-Unterricht: Bundesländer,\nSchuljahr, Schulart, Fremdsprachen", + "Time": "2009/10 - 2024/25" + }, + { + "Code": "21211-0101", + "Content": "Auszubildende: Bundesländer, Stichtag, Nationalität, Geschlecht, Ausbildungsbereich", + "Time": "31.12.2008 - 31.12.2024" + }, + { + "Code": "21211-0102", + "Content": "Auszubildende: Bundesländer, Stichtag, Geschlecht, Altersjahre", + "Time": "31.12.2008 - 31.12.2024" + }, + { + "Code": "21211-0103", + "Content": "Auszubildende: Bundesländer, Stichtag, Geschlecht, Schulabschluss", + "Time": "31.12.2008 - 31.12.2024" + }, + { + "Code": "21211-0104", + "Content": "Ausbildungsverträge: Bundesländer, Jahre, Nationalität, Geschlecht, Ausbildungsbereich", + "Time": "2008 - 2024" + }, + { + "Code": "21211-0105", + "Content": "Ausbildungsverträge: Bundesländer, Jahre, Geschlecht, Altersjahre", + "Time": "2008 - 2024" + }, + { + "Code": "21211-0106", + "Content": "Ausbildungsverträge: Bundesländer, Jahre, Geschlecht, Schulabschluss", + "Time": "2008 - 2024" + }, + { + "Code": "21211-0107", + "Content": "Bestandene Abschlussprüfung: Bundesländer, Jahre, Nationalität, Geschlecht, Ausbildungsbereich", + "Time": "2008 - 2024" + }, + { + "Code": "21211-0108", + "Content": "Bestandene Abschlussprüfung: Bundesländer, Jahre, Geschlecht, Altersjahre", + "Time": "2008 - 2024" + }, + { + "Code": "21211-0109", + "Content": "Bestandene Abschlussprüfung: Bundesländer, Jahre, Geschlecht, Schulabschluss", + "Time": "2008 - 2024" + }, + { + "Code": "21241-0020", + "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag, beendete Ausbildungen, Ausbildungseintritte (inkl. vorzeitige Lösungen): Bundesländer, Stichtag", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "21241-0021", + "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Geschlecht", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "21241-0022", + "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Altersgruppen", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "21241-0023", + "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Ausbildungsumfang", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "21241-0024", + "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem\nAusbildungsvertrag: Bundesländer, Stichtag, Erhalt von\nFördermitteln", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "21241-0025", + "Content": "Auszubildende in Pflegeberufen mit neu abgeschlossenem Ausbildungsvertrag: Bundesländer, Stichtag, Art der Trägerschaft der Pflegeschulen", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "21241-0026", + "Content": "Beendete Ausbildungen in Pflegeberufen: Bundesländer, Stichtag, Prüfungsergebnis", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "21241-0027", + "Content": "Pflegeschulen: Bundesländer, Stichtag, Art der Trägerschaft\nder Pflegeschulen", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "21311-0005", + "Content": "Studierende: Bundesländer, Semester, Nationalität,\nGeschlecht", + "Time": "WS 1998/99 - WS 2024/25" + }, + { + "Code": "21311-0006", + "Content": "Studierende: Bundesländer, Semester, Nationalität,\nGeschlecht, Studienfach", + "Time": "WS 1998/99 - WS 2024/25" + }, + { + "Code": "21311-0014", + "Content": "Studienanfänger: Bundesländer, Semester, Nationalität,\nGeschlecht", + "Time": "WS 1998/99 - WS 2024/25" + }, + { + "Code": "21311-0015", + "Content": "Studienanfänger: Bundesländer, Semester, Nationalität,\nGeschlecht, Studienfach", + "Time": "WS 1998/99 - WS 2024/25" + }, + { + "Code": "21321-0005", + "Content": "Prüfungen an Hochschulen: Bundesländer, Jahre, Nationalität,\nGeschlecht, Prüfungsergebnis", + "Time": "1999 - 2024" + }, + { + "Code": "21321-0006", + "Content": "Prüfungen an Hochschulen: Bundesländer, Jahre, Nationalität,\nGeschlecht, Prüfungsergebnis, Studienfach", + "Time": "1999 - 2024" + }, + { + "Code": "21321-0007", + "Content": "Prüfungen an Hochschulen: Bundesländer, Jahre, Nationalität,\nGeschlecht, Prüfungsergebnis, Abgelegte Abschlussprüfung", + "Time": "1999 - 2024" + }, + { + "Code": "21351-0003", + "Content": "Habilitationen: Bundesländer, Jahre, Geschlecht", + "Time": "1992 - 2024" + }, + { + "Code": "21352-0005", + "Content": "Promovierende: Bundesländer, Stichtag, Nationalität,\nGeschlecht, Hochschulart", + "Time": "01.12.2019 - 01.12.2024" + }, + { + "Code": "21353-0002", + "Content": "Hochschulräte: Bundesländer, Jahre, Hochschulart, Geschlecht", + "Time": "2017 - 2024" + }, + { + "Code": "21354-0001", + "Content": "Studierende, Studienanfänger an Berufsakademien:\nBundesländer, Jahre, Nationalität, Geschlecht", + "Time": "2017 - 2024" + }, + { + "Code": "21354-0002", + "Content": "Bestandene Prüfungen an Berufsakademien: Bundesländer,\nJahre, Art der Prüfung, Geschlecht", + "Time": "2017 - 2024" + }, + { + "Code": "21354-0003", + "Content": "Personal an Berufsakademien: Bundesländer, Jahre, Art des\nPersonals, Geschlecht", + "Time": "2017 - 2024" + }, + { + "Code": "21354-0004", + "Content": "Studierende je Lehrperson (Betreuungsrelation) an\nBerufsakademien: Bundesländer, Jahre, Geschlecht", + "Time": "2017 - 2024" + }, + { + "Code": "21371-0002", + "Content": "Ausgaben der Hochschulen: Bundesländer, Jahre, Hochschulart,\nFächergruppen", + "Time": "2006 - 2023" + }, + { + "Code": "21381-0010", + "Content": "Absolventenquote: Bundesländer, Jahre, Geschlecht", + "Time": "2000 - 2023" + }, + { + "Code": "21381-0011", + "Content": "Studienanfängerquote (Hochschulzugangsberechtigung):\nBundesländer, Jahre, Geschlecht", + "Time": "2000 - 2023" + }, + { + "Code": "21381-0012", + "Content": "Studienanfängerquote: Bundesländer, Jahre, Geschlecht", + "Time": "2000 - 2023" + }, + { + "Code": "21381-0013", + "Content": "Studienberechtigtenquote: Bundesländer, Jahre,\nSchulabschluss", + "Time": "2006 - 2023" + }, + { + "Code": "21381-0014", + "Content": "Laufende Ausgaben der Hochschulen, Drittmittel der\nHochschulen: Bundesländer, Jahre", + "Time": "2011 - 2023" + }, + { + "Code": "21411-0020", + "Content": "BAföG - Geförderte Personen und finanzieller Aufwand:\nBundesländer, Jahre, Personenkreis", + "Time": "1991 - 2024" + }, + { + "Code": "21421-0021", + "Content": "Aufstiegs-BAföG - Geförderte Personen, finanzieller Aufwand:\nBundesländer, Jahre, Bewilligung/Inanspruchnahme,\nVoll-/Teilzeit, Art des finanziellen Aufwandes", + "Time": "2003 - 2024" + }, + { + "Code": "21421-0022", + "Content": "Aufstiegs-BAföG - Geförderte Personen, finanzieller Aufwand:\nBundesländer, Jahre, Bewilligung/Inanspr., Voll-/Teilzeit,\nArt des finanziellen Aufwandes, Fortbildungsstätten", + "Time": "2003 - 2024" + }, + { + "Code": "21421-0023", + "Content": "Aufstiegs-BAföG - Geförderte Personen, finanzieller Aufwand:\nBundesländer, Jahre, Bewilligung/Inanspr., Voll-/Teilzeit,\nArt des finanziellen Aufwandes, Fortbildungsziele", + "Time": "2003 - 2024" + }, + { + "Code": "21421-0024", + "Content": "Aufstiegs-BAföG - Geförderte Personen (Bewilligung):\nBundesländer, Jahre, Voll-/Teilzeit, Geschlecht,\nFortbildungsstätten", + "Time": "2003 - 2024" + }, + { + "Code": "21421-0025", + "Content": "Aufstiegs-BAföG - Geförderte Personen (Bewilligung)\n(Vollzeit): Bundesländer, Jahre, Geschlecht,\nEinkommensgrößenklassen", + "Time": "2003 - 2024" + }, + { + "Code": "21421-0026", + "Content": "Aufstiegs-BAföG - Geförderte Personen, monatlicher\nFörderungsbetrag: Bundesländer, Jahre, Bewilligung/\nInanspruchnahme, Art der Förderung, Fortbildungsstätten", + "Time": "2003 - 2024" + }, + { + "Code": "21431-0020", + "Content": "Stipendiaten, Mittelgeber: Bundesländer, Jahre, Hochschulart", + "Time": "2011 - 2024" + }, + { + "Code": "21431-0021", + "Content": "Stipendiaten: Bundesländer, Jahre, Geschlecht, Hochschulart", + "Time": "2011 - 2024" + }, + { + "Code": "21611-0003", + "Content": "Kinos, Leinwände, Sitzplätze der Kinos, Filmbesuche,\nDurchschnittlicher Kino-Eintrittspreis, Einnahmen:\nBundesländer, Jahre", + "Time": "2000 - 2024" + }, + { + "Code": "21611-0102", + "Content": "Museen, Ausstellungen, Museumsbesuche: Bundesländer, Jahre", + "Time": "2002 - 2023" + }, + { + "Code": "21611-0111", + "Content": "Öffentlich geförderte Theaterunternehmen, Spielstätten,\nVeranstaltungen am Ort, Theaterbesuche: Bundesländer, Jahre", + "Time": "2000 - 2023" + }, + { + "Code": "21611-0122", + "Content": "Öffentlich geförderte Musikschulen, Lehrer, Schüler:\nBundesländer, Jahre", + "Time": "2000 - 2023" + }, + { + "Code": "21611-0123", + "Content": "Schüler in öffentlich geförderten Musikschulen:\nBundesländer, Jahre, Altersgruppen", + "Time": "2000 - 2023" + }, + { + "Code": "21611-0201", + "Content": "Haupt- und Zweigstellen der Bibliotheken, Meldende\nBibliotheken, Bestand, Entleiher, Bibliotheksbesuche:\nBundesländer, Jahre, Bibliotheksarten", + "Time": "2000 - 2024" + }, + { + "Code": "21621-0003", + "Content": "Öffentliche Ausgaben für Kultur: Bundesländer, Jahre,\nKulturbereiche", + "Time": "2005 - 2021" + }, + { + "Code": "21711-0010", + "Content": "Ausgaben der öffentlichen Haushalte für Bildung:\nBundesländer, Jahre, Körperschaftsgruppen, Aufgabenbereiche\nder öffentlichen Haushalte", + "Time": "1995 - 2025" + }, + { + "Code": "21711-0011", + "Content": "Ausgaben für öffentliche Schulen je Schüler: Bundesländer,\nJahre", + "Time": "2010 - 2023" + }, + { + "Code": "21821-0002", + "Content": "Interne Ausgaben und Personal für Forschung und Entwicklung:\nBundesländer, Jahre, Sektoren", + "Time": "1995 - 2023" + }, + { + "Code": "21821-0100", + "Content": "Patentanmeldungen: Bundesländer, Jahre", + "Time": "2000 - 2023" + }, + { + "Code": "22111-0020", + "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Sozialhilfe:\nBundesländer, Jahre", + "Time": "1994 - 2024" + }, + { + "Code": "22111-0021", + "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Sozialhilfe:\nBundesländer, Jahre, Ort der Leistungserbringung", + "Time": "1994 - 2024" + }, + { + "Code": "22111-0022", + "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Sozialhilfe:\nBundesländer, Jahre, Sozialhilfearten", + "Time": "2005 - 2024" + }, + { + "Code": "22111-0023", + "Content": "Bruttoausgaben der Sozialhilfe: Bundesländer, Jahre (bis\n2004), Sozialhilfearten, Sozialhilfeträger, Ort der\nLeistungserbringung", + "Time": "1994 - 2004" + }, + { + "Code": "22121-0010", + "Content": "Empfänger von Hilfe zum Lebensunterhalt: Bundesländer,\nStichtag, Ort der Leistungserbringung, Geschlecht,\nAltersgruppen", + "Time": "31.12.1995 - 31.12.2024" + }, + { + "Code": "22121-0011", + "Content": "Empfänger von Hilfe zum Lebensunterhalt: Bundesländer,\nStichtag, Ort der Leistungserbringung, Geschlecht,\nNationalität", + "Time": "31.12.1995 - 31.12.2024" + }, + { + "Code": "22121-0012", + "Content": "Personengemeinschaften von Empfängern von Hilfe zum Lebensunterhalt: Bundesländer, Stichtag, Ort der Leistungserbringung", + "Time": "31.12.2005 - 31.12.2024" + }, + { + "Code": "22131-0010", + "Content": "Empfänger von Leistungen nach dem 5. bis 9. Kapitel SGB XII:\nBundesländer, Jahre, Art der Hilfe, Geschlecht", + "Time": "2005 - 2024" + }, + { + "Code": "22131-0011", + "Content": "Empfänger von Leistungen nach dem 5. bis 9. Kapitel SGB XII:\nBundesländer, Stichtag, Art der Hilfe, Geschlecht", + "Time": "31.12.2005 - 31.12.2024" + }, + { + "Code": "22131-0012", + "Content": "Empfänger von Leistungen nach dem 5. bis 9. Kapitel SGB XII:\nBundesländer, Jahre, Art der Hilfe,\nOrt der Leistungserbringung", + "Time": "2005 - 2024" + }, + { + "Code": "22131-0013", + "Content": "Empfänger von Leistungen für Bestattungskosten,\nBruttoausgaben für Bestattungskosten: Bundesländer, Jahre", + "Time": "2005 - 2024" + }, + { + "Code": "22151-0030", + "Content": "Empfänger von Grundsicherung: Bundesländer, Stichtag\n(bis 31.12.2014), Nationalität, Geschlecht, Altersgruppen", + "Time": "31.12.2003 - 31.12.2014" + }, + { + "Code": "22151-0031", + "Content": "Quote der Empfänger von Grundsicherung: Bundesländer,\nStichtag (bis 31.12.2014), Nationalität, Geschlecht,\nAltersgruppen", + "Time": "31.12.2003 - 31.12.2014" + }, + { + "Code": "22151-0032", + "Content": "Empfänger von Grundsicherung: Bundesländer, Berichtsmonat\nim Quartal, Geschlecht/Altersgruppen/Ort der\nLeistungserbringung/Sozialhilfeträger", + "Time": "März 2015 - September 2025" + }, + { + "Code": "22151-0033", + "Content": "Empfänger von Grundsicherung: Bundesländer, Berichtsmonat im\nQuartal, Ort der Leistungserbringung, Geschlecht,\nAltersgruppen", + "Time": "März 2015 - September 2025" + }, + { + "Code": "22151-0034", + "Content": "Durchschnittlicher Nettobedarf, Bruttobedarf, angerechnetes\nEinkommen: Bundesländer, Berichtsmonat im Quartal", + "Time": "März 2015 - September 2025" + }, + { + "Code": "22151-0035", + "Content": "Quote der Empfänger von Grundsicherung: Bundesländer,\nBerichtsmonat im Quartal, Nationalität, Geschlecht,\nAltersgruppen", + "Time": "Dezember 2015 - Dezember 2024" + }, + { + "Code": "22161-0010", + "Content": "Empfänger von Eingliederungshilfe: Bundesländer, Jahre,\nGeschlecht, Altersgruppen", + "Time": "2020 - 2024" + }, + { + "Code": "22161-0011", + "Content": "Empfänger von Eingliederungshilfe: Bundesländer, Stichtag,\nGeschlecht, Altersgruppen", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "22162-0010", + "Content": "Bruttoausgaben, Einnahmen, Nettoausgaben der Eingliederungshilfe: Bundesländer, Jahre", + "Time": "2020 - 2024" + }, + { + "Code": "22211-0010", + "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Ort der Leistungserbringung", + "Time": "1994 - 2024" + }, + { + "Code": "22211-0011", + "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Leistungsart", + "Time": "1994 - 2024" + }, + { + "Code": "22211-0012", + "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Art des Trägers", + "Time": "1994 - 2024" + }, + { + "Code": "22211-0013", + "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Ausgabenart", + "Time": "1994 - 2024" + }, + { + "Code": "22211-0014", + "Content": "Bruttoausgaben nach dem Asylbewerberleistungsgesetz:\nBundesländer, Jahre, Hilfearten", + "Time": "1994 - 2024" + }, + { + "Code": "22221-0100", + "Content": "Empfänger von Regelleistungen nach dem\nAsylbewerberleistungsgesetz: Bundesländer, Stichtag (bis\n31.12.2019), Geschlecht", + "Time": "31.12.1994 - 31.12.2019" + }, + { + "Code": "22221-0101", + "Content": "Empfänger von Regelleistungen nach dem Asylbewerberleistungsgesetz: Bundesländer, Stichtag (bis 31.12.2019), Art der Unterbringung", + "Time": "31.12.1994 - 31.12.2019" + }, + { + "Code": "22221-0110", + "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Altersgruppen", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "22221-0111", + "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Art der Unterbringung", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "22221-0112", + "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Leistungsart", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "22221-0113", + "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Geschlecht, Staatsangehörigkeit nach Kontinenten", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "22221-0114", + "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt\n(AsylbLG): Bundesländer, Stichtag, Altersgruppen,\nLeistungsart", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "22221-0115", + "Content": "Empfänger von Grundleistungen bzw. Hilfe zum Lebensunterhalt (AsylbLG): Bundesländer, Stichtag, Erwerbsstatus", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "22221-0116", + "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag, Geschlecht, Altersgruppen", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "22221-0117", + "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag, Altersgruppen, Hilfearten", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "22221-0118", + "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag, Aufenthaltsrechtlicher Status", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "22221-0119", + "Content": "Empfänger von Asylbewerberleistungen: Bundesländer, Stichtag, Geschlecht, Altersgruppen", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "22221-0120", + "Content": "Empfänger von Asylbewerberleistungen: Bundesländer, Stichtag, Geschlecht, Art der Unterbringung", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "22221-0121", + "Content": "Empfänger von Asylbewerberleistungen: Bundesländer,\nStichtag, Geschlecht, Staatsangehörigkeit nach Kontinenten", + "Time": "31.12.2020 - 31.12.2024" + }, + { + "Code": "22231-0010", + "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag (bis 31.12.2019), Altersgruppen", + "Time": "31.12.1994 - 31.12.2019" + }, + { + "Code": "22231-0011", + "Content": "Empfänger von besonderen Asylbewerberleistungen: Bundesländer, Stichtag (bis 31.12.2019), Hilfearten", + "Time": "31.12.1994 - 31.12.2019" + }, + { + "Code": "22311-0010", + "Content": "Haushalte mit Wohngeld, Anteil an den Privathaushalten:\nBundesländer, Stichtag, Wohngeldart", + "Time": "31.12.2005 - 31.12.2024" + }, + { + "Code": "22311-0011", + "Content": "Haushalte mit Wohngeld: Bundesländer, Stichtag, Wohngeldart, Art des Zuschusses", + "Time": "31.12.2005 - 31.12.2024" + }, + { + "Code": "22311-0012", + "Content": "Haushalte mit Wohngeld: Bundesländer, Stichtag, Wohngeldart, Geschlecht der Antragsteller", + "Time": "31.12.2005 - 31.12.2024" + }, + { + "Code": "22311-0013", + "Content": "Haushalte mit Wohngeld: Bundesländer, Stichtag, Wohngeldart, Haushaltsgröße", + "Time": "31.12.2005 - 31.12.2024" + }, + { + "Code": "22411-0010", + "Content": "Ambulante Dienste, Pflegebedürftige: Bundesländer, Stichtag,\nTräger", + "Time": "15.12.1999 - 15.12.2023" + }, + { + "Code": "22411-0011", + "Content": "Pflegebedürftige (ambulant): Bundesländer, Stichtag, Pflegestufe/Pflegegrad", + "Time": "15.12.2017 - 15.12.2023" + }, + { + "Code": "22411-0012", + "Content": "Pflegebedürftige (ambulant): Bundesländer, Stichtag, Geschlecht, Altersgruppen", + "Time": "15.12.1999 - 15.12.2023" + }, + { + "Code": "22411-0013", + "Content": "Personal in ambulanten Pflegeeinrichtungen: Bundesländer,\nStichtag, Beschäftigungsverhältnis", + "Time": "15.12.1999 - 15.12.2023" + }, + { + "Code": "22411-0014", + "Content": "Personal in ambulanten Pflegeeinrichtungen: Bundesländer,\nStichtag, Geschlecht, Überwiegender Tätigkeitsbereich", + "Time": "15.12.1999 - 15.12.2023" + }, + { + "Code": "22411-0015", + "Content": "Personal in ambulanten Pflegeeinrichtungen: Bundesländer, Stichtag, Altersgruppen", + "Time": "15.12.2013 - 15.12.2023" + }, + { + "Code": "22412-0010", + "Content": "Pflegeheime, Verfügbare Plätze, Pflegebedürftige:\nBundesländer, Stichtag, Art der Pflegeleistung", + "Time": "15.12.1999 - 15.12.2023" + }, + { + "Code": "22412-0011", + "Content": "Pflegeheime, Verfügbare Plätze: Bundesländer, Stichtag,\nTräger", + "Time": "15.12.1999 - 15.12.2023" + }, + { + "Code": "22412-0012", + "Content": "Pflegebedürftige (stationär): Bundesländer, Stichtag,\nPflegestufe/Pflegegrad", + "Time": "15.12.2017 - 15.12.2023" + }, + { + "Code": "22412-0013", + "Content": "Pflegebedürftige (stationär): Bundesländer, Stichtag,\nGeschlecht, Altersgruppen", + "Time": "15.12.1999 - 15.12.2023" + }, + { + "Code": "22412-0014", + "Content": "Personal der stationären Pflegeeinrichtungen: Bundesländer,\nStichtag, Beschäftigungsverhältnis", + "Time": "15.12.1999 - 15.12.2023" + }, + { + "Code": "22412-0015", + "Content": "Personal der stationären Pflegeeinrichtungen: Bundesländer,\nStichtag, Geschlecht, Überwiegender Tätigkeitsbereich", + "Time": "15.12.1999 - 15.12.2023" + }, + { + "Code": "22412-0016", + "Content": "Personal der stationären Pflegeeinrichtungen: Bundesländer,\nStichtag, Altersgruppen", + "Time": "15.12.2013 - 15.12.2023" + }, + { + "Code": "22421-0010", + "Content": "Pflegebedürftige: Bundesländer, Stichtag, Geschlecht,\nAltersgruppen, Art der Versorgung von Pflegebedürftigen", + "Time": "31.12.1999 - 31.12.2023" + }, + { + "Code": "22421-0011", + "Content": "Pflegebedürftige: Bundesländer, Stichtag, Pflegestufe/Pflegegrad", + "Time": "31.12.2017 - 31.12.2023" + }, + { + "Code": "22421-0012", + "Content": "Pflegequote: Bundesländer, Stichtag, Geschlecht,\nAltersgruppen", + "Time": "31.12.1999 - 31.12.2023" + }, + { + "Code": "22517-0005", + "Content": "Erzieherische Hilfen/Beratungen: Bundesländer, Jahre,\nGeschlecht, Altersjahre, Art der Hilfe", + "Time": "2008 - 2017" + }, + { + "Code": "22517-0006", + "Content": "Erzieherische Hilfen/Beratungen: Bundesländer, Jahre,\nGeschlecht, Migrationshintergrund, Art der Hilfe", + "Time": "2008 - 2017" + }, + { + "Code": "22518-0010", + "Content": "Verfahren zur Einschätzung der Kindeswohlgefährdung:\nBundesländer, Jahre, Gefährdungseinschätzung", + "Time": "2012 - 2024" + }, + { + "Code": "22518-0011", + "Content": "Verfahren zur Einschätzung der Kindeswohlgefährdung:\nBundesländer, Jahre, Gefährdungseinschätzung, Art der\nKindeswohlgefährdung", + "Time": "2012 - 2024" + }, + { + "Code": "22521-0020", + "Content": "Adoptierte Kinder und Jugendliche: Bundesländer, Jahre,\nGeschlecht", + "Time": "2010 - 2024" + }, + { + "Code": "22521-0021", + "Content": "Adoptierte Kinder und Jugendliche: Bundesländer, Jahre (bis\n2017), Altersgruppen", + "Time": "2010 - 2017" + }, + { + "Code": "22521-0022", + "Content": "Adoptierte Kinder und Jugendliche: Bundesländer, Jahre (bis\n2017), Nationalität, Art der Unterbringung vor der Adoption", + "Time": "2010 - 2017" + }, + { + "Code": "22522-0010", + "Content": "Kinder und Jugendliche: Bundesländer, Stichtag, Maßnahmen für Kinder und Jugendliche", + "Time": "31.12.2012 - 31.12.2024" + }, + { + "Code": "22522-0011", + "Content": "Tagespflegepersonen mit Pflegeerlaubnis: Bundesländer, Stichtag", + "Time": "31.12.2012 - 31.12.2024" + }, + { + "Code": "22522-0012", + "Content": "Sorgeerklärungen: Bundesländer, Jahre", + "Time": "2013 - 2024" + }, + { + "Code": "22522-0013", + "Content": "Maßnahmen des Familiengerichts bei Kindeswohlgefährdung:\nBundesländer, Jahre, Art der eingeleiteten Maßnahmen", + "Time": "2012 - 2024" + }, + { + "Code": "22523-0030", + "Content": "Vorläufige Schutzmaßnahmen für Kinder und Jugendliche:\nBundesländer, Jahre, Anlass der Maßnahme", + "Time": "2010 - 2024" + }, + { + "Code": "22523-0031", + "Content": "Vorläufige Schutzmaßnahmen für Kinder und Jugendliche:\nBundesländer, Jahre, Anregung der Maßnahme", + "Time": "2010 - 2022" + }, + { + "Code": "22541-0100", + "Content": "Tageseinrichtungen, Kinder, Genehmigte Plätze: Bundesländer,\nStichtag", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22541-0101", + "Content": "Tageseinrichtungen: Bundesländer, Stichtag, Art des Trägers", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22541-0102", + "Content": "Tageseinrichtungen: Bundesländer, Stichtag, Öffnungszeiten\nder Tageseinrichtung", + "Time": "01.03.2019 - 01.03.2025" + }, + { + "Code": "22541-0103", + "Content": "Tageseinrichtungen: Bundesländer, Stichtag, Altersgruppen\nder Kinder", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22541-0104", + "Content": "Tätige Personen: Bundesländer, Stichtag, Arbeitsbereich", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22541-0105", + "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Geschlecht", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22541-0106", + "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Altersgruppen", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22541-0107", + "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Höchster Berufsausbildungsabschluss", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22541-0108", + "Content": "Pädagogisches, Leitungs- und Verwaltungspersonal:\nBundesländer, Stichtag, Stellung im Beruf", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22541-0109", + "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag, Art\ndes Trägers", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22541-0110", + "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag,\nVertraglich vereinbarte Betreuungszeit", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22541-0111", + "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag,\nGeschlecht", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22541-0112", + "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag, Alter\nder Nichtschul- und Schulkinder", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22541-0113", + "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag,\nHerkunft der Eltern", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22541-0114", + "Content": "Kinder in Tageseinrichtungen: Bundesländer, Stichtag, In der\nFamilie vorrangig gesprochene Sprache", + "Time": "01.03.2014 - 01.03.2025" + }, + { + "Code": "22542-0003", + "Content": "Einrichtungen der Kinder- und Jugendhilfe, Genehmigte\nPlätze, Tätige Personen, Pädagogisches und\nVerwaltungspersonal: Bundesländer, Stichtag (bis 31.12.2020)", + "Time": "31.12.2010 - 31.12.2020" + }, + { + "Code": "22542-0004", + "Content": "Einrichtungen der Kinder- und Jugendhilfe: Bundesländer,\nStichtag (bis 31.12.2020), Art der Einrichtung", + "Time": "31.12.2010 - 31.12.2020" + }, + { + "Code": "22542-0019", + "Content": "Einrichtungen der Jugendhilfe, Gruppen, Soll-Stellen,\ngenehmigte Plätze, belegte Plätze: Bundesländer, Stichtag", + "Time": "15.12.2022 - 15.12.2024" + }, + { + "Code": "22543-0020", + "Content": "Kinder in öffentlich geförderter Kindertagespflege:\nBundesländer, Stichtag, Altersgruppen", + "Time": "01.03.2008 - 01.03.2025" + }, + { + "Code": "22543-0021", + "Content": "Kinder in öffentlich geförderter Kindertagespflege:\nBundesländer, Stichtag, Geschlecht, Migrationshintergrund", + "Time": "01.03.2012 - 01.03.2025" + }, + { + "Code": "22543-0022", + "Content": "Kinder in öffentlich geförderter Kindertagespflege:\nBundesländer, Stichtag, In der Familie vorrangig\ngesprochene Sprache", + "Time": "01.03.2012 - 01.03.2025" + }, + { + "Code": "22543-0023", + "Content": "Tagespflegepersonen: Bundesländer, Stichtag, Geschlecht", + "Time": "01.03.2012 - 01.03.2025" + }, + { + "Code": "22543-0024", + "Content": "Tagespflegepersonen: Bundesländer, Stichtag, Altersgruppen", + "Time": "01.03.2012 - 01.03.2025" + }, + { + "Code": "22551-0003", + "Content": "Ausgaben (Auszahlungen) der Kinder- und Jugendhilfe: Bundesländer, Jahre, Ausgabenbereiche, Art der Hilfe, Art der Ausgaben", + "Time": "2009 - 2024" + }, + { + "Code": "22551-0004", + "Content": "Einnahmen (Einzahlungen) der Kinder- und Jugendhilfe:\nBundesländer, Jahre, Art der Hilfe, Art der Einnahmen", + "Time": "2009 - 2024" + }, + { + "Code": "22922-0020", + "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht", + "Time": "2009 - 2022" + }, + { + "Code": "22922-0021", + "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht", + "Time": "1. Quartal 2009 - 2. Quartal 2023" + }, + { + "Code": "22922-0022", + "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht, Erwerbstätigkeit", + "Time": "2009 - 2022" + }, + { + "Code": "22922-0023", + "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht, Erwerbstätigkeit", + "Time": "1. Quartal 2009 - 2. Quartal 2023" + }, + { + "Code": "22922-0024", + "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht, Grundlage der Berechnung des\nElterngeldanspruchs", + "Time": "2009 - 2022" + }, + { + "Code": "22922-0025", + "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht, Grundlage der Berechnung des\nElterngeldanspruchs", + "Time": "1. Quartal 2009 - 2. Quartal 2023" + }, + { + "Code": "22922-0026", + "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre, Geschlecht, Höhe des monatlichen Elterngeldanspruchs", + "Time": "2009 - 2022" + }, + { + "Code": "22922-0027", + "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale, Geschlecht, Höhe des monatlichen\nElterngeldanspruchs", + "Time": "1. Quartal 2009 - 2. Quartal 2023" + }, + { + "Code": "22922-0028", + "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nJahre (bis 2014), Geschlecht, Bezugsdauer des Elterngeldes", + "Time": "2009 - 2014" + }, + { + "Code": "22922-0029", + "Content": "Elterngeldempfänger nach Geburtszeiträumen: Bundesländer,\nQuartale (bis 2.Q. 2015), Geschlecht, Bezugsdauer des\nElterngeldes", + "Time": "1. Quartal 2009 - 2. Quartal 2015" + }, + { + "Code": "22922-0030", + "Content": "Väterbeteiligung: Bundesländer, Jahre", + "Time": "2008 - 2022" + }, + { + "Code": "22922-0031", + "Content": "Väterbeteiligung: Bundesländer, Quartale", + "Time": "1. Quartal 2016 - 2. Quartal 2023" + }, + { + "Code": "22922-0111", + "Content": "Elterngeldempfänger: Bundesländer, Jahre, Geschlecht,\nErwerbstätigkeit", + "Time": "2016 - 2024" + }, + { + "Code": "22922-0112", + "Content": "Elterngeldempfänger: Bundesländer, Quartale, Geschlecht,\nErwerbstätigkeit", + "Time": "1. Quartal 2017 - 3. Quartal 2025" + }, + { + "Code": "22922-0113", + "Content": "Elterngeldempfänger: Bundesländer, Jahre, Geschlecht,\nArt der Inanspruchnahme", + "Time": "2016 - 2024" + }, + { + "Code": "22922-0114", + "Content": "Elterngeldempfänger: Bundesländer, Quartale, Geschlecht,\nArt der Inanspruchnahme", + "Time": "1. Quartal 2017 - 3. Quartal 2025" + }, + { + "Code": "22922-0115", + "Content": "Elterngeldempfänger: Bundesländer, Jahre, Geschlecht,\nArt der Inanspruchnahme, Höhe des monatlichen\nElterngeldanspruchs", + "Time": "2016 - 2024" + }, + { + "Code": "22922-0116", + "Content": "Elterngeldempfänger: Bundesländer, Quartale, Geschlecht,\nArt der Inanspruchnahme, Höhe des monatlichen\nElterngeldanspruchs", + "Time": "1. Quartal 2017 - 3. Quartal 2025" + }, + { + "Code": "22922-0117", + "Content": "Durchschnittliche Höhe des Elterngeldanspruchs:\nBundesländer, Jahre, Geschlecht, Art der Inanspruchnahme,\nErwerbstätigkeit", + "Time": "2016 - 2024" + }, + { + "Code": "22922-0118", + "Content": "Durchschnittliche Höhe des Elterngeldanspruchs:\nBundesländer, Quartale, Geschlecht, Art der Inanspruchnahme,\nErwerbstätigkeit", + "Time": "1. Quartal 2017 - 3. Quartal 2025" + }, + { + "Code": "22922-0119", + "Content": "Durchschnittliche voraussichtliche Elterngeld-Bezugsdauer:\nBundesländer, Jahre, Geschlecht, Art der Inanspruchnahme", + "Time": "2016 - 2024" + }, + { + "Code": "22922-0120", + "Content": "Durchschnittliche voraussichtliche Elterngeld-Bezugsdauer:\nBundesländer, Quartale, Geschlecht, Art der Inanspruchnahme", + "Time": "1. Quartal 2017 - 3. Quartal 2025" + }, + { + "Code": "22923-0003", + "Content": "Betreuungsgeldempfänger: Bundesländer, Quartale (bis 4.Q. 2017), Nationalität", + "Time": "1. Quartal 2014 - 4. Quartal 2017" + }, + { + "Code": "22971-0050", + "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen", + "Time": "31.01.2022 - 31.01.2025" + }, + { + "Code": "22971-0051", + "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Haushaltstyp", + "Time": "31.01.2022 - 31.01.2025" + }, + { + "Code": "22971-0052", + "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Haushaltsgröße", + "Time": "31.01.2022 - 31.01.2025" + }, + { + "Code": "22971-0053", + "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Anbieter", + "Time": "31.01.2022 - 31.01.2025" + }, + { + "Code": "22971-0054", + "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Art der Überlassung", + "Time": "31.01.2022 - 31.01.2025" + }, + { + "Code": "22971-0055", + "Content": "Untergebrachte wohnungslose Personen: Bundesländer, Stichtag, Nationalität, Geschlecht, Altersgruppen, Dauer der Unterbringung", + "Time": "31.01.2022 - 31.01.2025" + }, + { + "Code": "23131-0010", + "Content": "Krankenhauspatienten: Bundesländer, Jahre,\nHauptdiagnose ICD-10 (1-3-Steller Hierarchie)", + "Time": "2000 - 2024" + }, + { + "Code": "23131-0011", + "Content": "Krankenhauspatienten: Bundesländer, Jahre, Geschlecht,\nAltersgruppen, Hauptdiagnose ICD-10 (1-3-Steller Hierarchie)", + "Time": "2000 - 2024" + }, + { + "Code": "23131-0012", + "Content": "Krankenhauspatienten: Bundesländer, Jahre, Geschlecht,\nWohnort des Patienten", + "Time": "2000 - 2024" + }, + { + "Code": "23141-0010", + "Content": "Nebendiagnosen der vollstationären Patienten: Bundesländer,\nJahre, Nebendiagnosen ICD-10 (1-3-Steller Hierarchie)", + "Time": "2005 - 2024" + }, + { + "Code": "23141-0011", + "Content": "Nebendiagnosen der vollstationären Patienten: Bundesländer,\nJahre, Geschlecht, Altersgruppen, Nebendiagnosen ICD-10\n(1-3-Steller Hierarchie)", + "Time": "2005 - 2024" + }, + { + "Code": "23141-0110", + "Content": "Operationen und Prozeduren an vollstationären Patienten:\nBundesländer, Jahre, Operationen und Prozeduren\n(1-4-Steller Hierarchie)", + "Time": "2005 - 2024" + }, + { + "Code": "23141-0111", + "Content": "Operationen und Prozeduren an vollstationären Patienten:\nBundesländer, Jahre, Geschlecht, Altersgruppen, Operationen\nund Prozeduren (1-4-Steller Hierarchie)", + "Time": "2005 - 2024" + }, + { + "Code": "23311-0005", + "Content": "Schwangerschaftsabbrüche: Bundesländer, Jahre", + "Time": "1996 - 2024" + }, + { + "Code": "23311-0006", + "Content": "Schwangerschaftsabbrüche: Bundesländer, Jahre,\nFamilienstand/Herkunfts-Bundesland oder Ausland", + "Time": "1996 - 2024" + }, + { + "Code": "23311-0007", + "Content": "Schwangerschaftsabbrüche: Bundesländer, Jahre,\nFamilienstand, Herkunfts-Bundesland oder Ausland", + "Time": "1996 - 2024" + }, + { + "Code": "23311-0008", + "Content": "Schwangerschaftsabbrüche: Bundesländer, Quartale", + "Time": "1. Quartal 1996 - 3. Quartal 2025" + }, + { + "Code": "23311-0009", + "Content": "Schwangerschaftsabbrüche: Bundesländer, Quartale,\nFamilienstand/Herkunfts-Bundesland oder Ausland", + "Time": "1. Quartal 1996 - 3. Quartal 2025" + }, + { + "Code": "23311-0010", + "Content": "Schwangerschaftsabbrüche: Bundesländer, Quartale,\nFamilienstand, Herkunfts-Bundesland oder Ausland", + "Time": "1. Quartal 1996 - 3. Quartal 2025" + }, + { + "Code": "24111-0001", + "Content": "Gerichte: Bundesländer, Stichtag (bis 31.12.2012), Gerichtsart", + "Time": "31.12.2000 - 31.12.2012" + }, + { + "Code": "24211-0010", + "Content": "Von der Staats- und Amtsanwaltschaft erledigte\nErmittlungsverfahren: Bundesländer, Jahre, Sachgebiete", + "Time": "2018 - 2024" + }, + { + "Code": "24211-0011", + "Content": "Von der Staats- und Amtsanwaltschaft erledigte\nErmittlungsverfahren: Bundesländer, Jahre,\nEinleitungsbehörde", + "Time": "2018 - 2024" + }, + { + "Code": "24211-0012", + "Content": "Ermittlungsverfahren: Bundesländer, Jahre, Zuständigkeit,\nStand der Erledigung", + "Time": "2018 - 2024" + }, + { + "Code": "24221-0010", + "Content": "Vor dem Amtsgericht erledigte Strafverfahren: Bundesländer,\nJahre, Sachgebiete", + "Time": "2017 - 2024" + }, + { + "Code": "24221-0011", + "Content": "Strafverfahren vor dem Amtsgericht: Bundesländer, Jahre, Stand der Erledigung", + "Time": "2017 - 2024" + }, + { + "Code": "24231-0010", + "Content": "Vor dem Amtsgericht erledigte Verfahren in Zivilsachen:\nBundesländer, Jahre, Art der Erledigung, Sachgebiete", + "Time": "2017 - 2024" + }, + { + "Code": "24231-0011", + "Content": "Zivilsachen vor dem Amtsgericht: Bundesländer, Jahre, Stand\nder Erledigung", + "Time": "2017 - 2024" + }, + { + "Code": "24241-0010", + "Content": "Vor dem Amtsgericht erledigte Verfahren in Familiensachen:\nBundesländer, Jahre, Art der Erledigung", + "Time": "2014 - 2024" + }, + { + "Code": "24241-0011", + "Content": "Familiensachen vor dem Amtsgericht: Bundesländer, Jahre,\nStand der Erledigung", + "Time": "2014 - 2024" + }, + { + "Code": "24251-0010", + "Content": "Vor dem Verwaltungsgericht erledigte Hauptverfahren:\nBundesländer, Jahre, Art der Erledigung", + "Time": "2018 - 2024" + }, + { + "Code": "24251-0011", + "Content": "Hauptverfahren vor dem Verwaltungsgericht: Bundesländer,\nJahre, Stand der Erledigung", + "Time": "2018 - 2024" + }, + { + "Code": "24251-0012", + "Content": "Eilverfahren vor dem Verwaltungsgericht: Bundesländer,\nJahre, Stand der Erledigung", + "Time": "2018 - 2024" + }, + { + "Code": "24261-0010", + "Content": "Vor dem Finanzgericht erledigte Klagen: Bundesländer, Jahre,\nArt der Erledigung", + "Time": "2018 - 2024" + }, + { + "Code": "24261-0011", + "Content": "Klagen vor dem Finanzgericht: Bundesländer, Jahre, Stand der\nErledigung", + "Time": "2018 - 2024" + }, + { + "Code": "24271-0010", + "Content": "Vor dem Sozialgericht erledigte Klageverfahren:\nBundesländer, Jahre, Art der Erledigung, Sachgebiete", + "Time": "2017 - 2024" + }, + { + "Code": "24271-0011", + "Content": "Klageverfahren vor dem Sozialgericht: Bundesländer, Jahre, Stand der Erledigung", + "Time": "2017 - 2024" + }, + { + "Code": "24271-0012", + "Content": "Eilverfahren vor dem Sozialgericht: Bundesländer, Jahre, Stand der Erledigung", + "Time": "2017 - 2024" + }, + { + "Code": "24281-0010", + "Content": "Vor dem Arbeitsgericht erledigte Urteilsverfahren:\nBundesländer, Jahre, Art der Erledigung", + "Time": "2018 - 2024" + }, + { + "Code": "24281-0011", + "Content": "Urteilsverfahren vor dem Arbeitsgericht: Bundesländer,\nJahre, Stand der Erledigung", + "Time": "2017 - 2024" + }, + { + "Code": "24281-0012", + "Content": "Beschlussverfahren vor dem Arbeitsgericht: Deutschland,\nJahre, Stand der Erledigung", + "Time": "2017 - 2024" + }, + { + "Code": "24321-0002", + "Content": "Strafgefangene und Sicherungsverwahrte: Bundesländer,\nStichtag, Nationalität, Geschlecht, Altersgruppen, Art des\nVollzugs", + "Time": "31.03.2017 - 31.03.2025" + }, + { + "Code": "24321-0003", + "Content": "Justizvollzugsanstalten, Belegungskapazität, Belegung:\nBundesländer, Stichtag", + "Time": "31.12.1999 - 30.11.2015" + }, + { + "Code": "31111-0100", + "Content": "Baugenehmigungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Gebäudeart", + "Time": "2008 - 2024" + }, + { + "Code": "31111-0101", + "Content": "Baugenehmigungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Bauherr", + "Time": "2008 - 2024" + }, + { + "Code": "31111-0102", + "Content": "Baugenehmigungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Gebäudeart", + "Time": "2015 - 2024" + }, + { + "Code": "31111-0103", + "Content": "Baugenehmigungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Bauherr", + "Time": "2015 - 2024" + }, + { + "Code": "31111-0104", + "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Energieverwendung, Energieart", + "Time": "2015 - 2024" + }, + { + "Code": "31111-0105", + "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Überwiegend verwendeter Baustoff", + "Time": "2015 - 2024" + }, + { + "Code": "31111-0106", + "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Art der Beheizung", + "Time": "2015 - 2024" + }, + { + "Code": "31111-0107", + "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Geschosszahl", + "Time": "2015 - 2024" + }, + { + "Code": "31111-0108", + "Content": "Baugenehmigungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Haustyp", + "Time": "2015 - 2024" + }, + { + "Code": "31111-0109", + "Content": "Baugenehmigungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Gebäudeart, Anzahl der Räume", + "Time": "2015 - 2024" + }, + { + "Code": "31111-0110", + "Content": "Baugenehmigungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Bauherr, Anzahl der Räume", + "Time": "2015 - 2024" + }, + { + "Code": "31111-0120", + "Content": "Baugenehmigungen im Hochbau: Bundesländer, Monate,\nBautätigkeiten, Gebäudeart", + "Time": "Januar 2003 - Dezember 2025" + }, + { + "Code": "31111-0121", + "Content": "Baugenehmigungen im Hochbau: Bundesländer, Monate,\nBautätigkeiten, Bauherr", + "Time": "Januar 2003 - Dezember 2025" + }, + { + "Code": "31111-0122", + "Content": "Baugenehmigungen im Fertigteilbau (Neubau): Bundesländer,\nMonate, Gebäudeart", + "Time": "Januar 2003 - Dezember 2025" + }, + { + "Code": "31121-0100", + "Content": "Baufertigstellungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Gebäudeart", + "Time": "2008 - 2024" + }, + { + "Code": "31121-0101", + "Content": "Baufertigstellungen im Hochbau: Bundesländer, Jahre,\nBautätigkeiten, Bauherr", + "Time": "2008 - 2024" + }, + { + "Code": "31121-0102", + "Content": "Baufertigstellungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Gebäudeart", + "Time": "2015 - 2024" + }, + { + "Code": "31121-0103", + "Content": "Baufertigstellungen im Fertigteilbau (Neubau): Bundesländer,\nJahre, Bauherr", + "Time": "2015 - 2024" + }, + { + "Code": "31121-0104", + "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Energieverwendung, Energieart", + "Time": "2015 - 2024" + }, + { + "Code": "31121-0105", + "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Überwiegend verwendeter Baustoff", + "Time": "2015 - 2024" + }, + { + "Code": "31121-0106", + "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Art der Beheizung", + "Time": "2015 - 2024" + }, + { + "Code": "31121-0107", + "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Geschosszahl", + "Time": "2015 - 2024" + }, + { + "Code": "31121-0108", + "Content": "Baufertigstellungen neuer Gebäude: Bundesländer, Jahre,\nGebäudeart, Haustyp", + "Time": "2015 - 2024" + }, + { + "Code": "31121-0109", + "Content": "Baufertigstellungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Gebäudeart, Anzahl der Räume", + "Time": "2015 - 2024" + }, + { + "Code": "31121-0110", + "Content": "Baufertigstellungen von Wohnungen in neuen Gebäuden:\nBundesländer, Jahre, Bauherr, Anzahl der Räume", + "Time": "2015 - 2024" + }, + { + "Code": "31131-0004", + "Content": "Bauüberhang an genehmigten Bauvorhaben im Hochbau: Bundesländer, Stichtag", + "Time": "31.12.2015 - 31.12.2024" + }, + { + "Code": "31131-0005", + "Content": "Bauüberhang an genehmigten Bauvorhaben im Hochbau: Bundesländer, Stichtag, Gebäudeart", + "Time": "31.12.2015 - 31.12.2024" + }, + { + "Code": "31131-0006", + "Content": "Bauüberhang an genehmigten Bauvorhaben im Hochbau: Bundesländer, Stichtag, Gebäudeart, Bauherr", + "Time": "31.12.2015 - 31.12.2024" + }, + { + "Code": "31141-0004", + "Content": "Abgang von Gebäuden/Gebäudeteilen im Hochbau: Bundesländer, Jahre", + "Time": "2015 - 2024" + }, + { + "Code": "31141-0005", + "Content": "Abgang von Gebäuden/Gebäudeteilen im Hochbau: Bundesländer, Jahre, Gebäudeart", + "Time": "2015 - 2024" + }, + { + "Code": "31141-0006", + "Content": "Abgang von Gebäuden/Gebäudeteilen im Hochbau: Bundesländer, Jahre, Gebäudeart, Eigentümer", + "Time": "2015 - 2024" + }, + { + "Code": "31231-0010", + "Content": "Wohnungen in Wohn- und Nichtwohngebäuden, Wohnfläche, Räume:\nBundesländer, Stichtag", + "Time": "31.12.2015 - 31.12.2024" + }, + { + "Code": "31231-0011", + "Content": "Wohnungen in Wohn- und Nichtwohngebäuden, Wohnfläche, Räume:\nBundesländer, Stichtag, Bestandsveränderungen", + "Time": "31.12.2015 - 31.12.2024" + }, + { + "Code": "31231-0012", + "Content": "Wohnungen in Wohn- und Nichtwohngebäuden: Bundesländer,\nStichtag, Anzahl der Räume", + "Time": "31.12.1995 - 31.12.2024" + }, + { + "Code": "31231-0013", + "Content": "Wohnungen in Wohn- und Nichtwohngebäuden: Bundesländer,\nStichtag, Anzahl der Räume, Bestandsveränderungen", + "Time": "31.12.2015 - 31.12.2024" + }, + { + "Code": "31231-0014", + "Content": "Wohngebäude, Wohnungen, Wohnfläche: Bundesländer, Stichtag,\nAnzahl der Wohnungen", + "Time": "31.12.1995 - 31.12.2024" + }, + { + "Code": "31231-0015", + "Content": "Wohngebäude, Wohnungen, Wohnfläche: Bundesländer, Stichtag,\nAnzahl der Wohnungen, Bestandsveränderungen", + "Time": "31.12.2015 - 31.12.2024" + }, + { + "Code": "31231-0016", + "Content": "Wohnungen in Nichtwohngebäuden, Wohnfläche: Bundesländer,\nStichtag, Bestandsveränderungen", + "Time": "31.12.2015 - 31.12.2024" + }, + { + "Code": "32111-0010", + "Content": "Abfallentsorgung: Bundesländer, Jahre", + "Time": "2018 - 2023" + }, + { + "Code": "32111-0011", + "Content": "Abfallentsorgung: Bundesländer, Jahre, Anlagenart", + "Time": "2006 - 2023" + }, + { + "Code": "32121-0002", + "Content": "Aufkommen an Haushaltsabfällen: Bundesländer, Jahre", + "Time": "2004 - 2024" + }, + { + "Code": "32121-0003", + "Content": "Aufkommen an Haushaltsabfällen: Bundesländer, Jahre,\nAbfallarten", + "Time": "2004 - 2024" + }, + { + "Code": "32131-0003", + "Content": "Eingesammelte Transport- und Umverpackungen: Bundesländer,\nJahre, Verbleib der Verpackungen", + "Time": "2001 - 2020" + }, + { + "Code": "32136-0010", + "Content": "Unternehmen, Erfasste Verkaufsverpackungen von privaten\nEndverbrauchern: Bundesländer, Jahre", + "Time": "2010 - 2020" + }, + { + "Code": "32136-0011", + "Content": "Erfasste Verkaufsverpackungen von privaten Endverbrauchern:\nBundesländer, Jahre, Art der Verkaufsverpackungen", + "Time": "2010 - 2020" + }, + { + "Code": "32137-0010", + "Content": "Verkaufs-, Transport- und Umverpackungen, Pfandpflichtige\nEinweggetränkeverpackungen: Bundesländer, Jahre,\nVerwertungsarten, Art des Verpackungsmaterials", + "Time": "2022 - 2023" + }, + { + "Code": "32137-0011", + "Content": "Ausgesonderte Mehrwegverpackungen: Bundesländer, Jahre", + "Time": "2022 - 2023" + }, + { + "Code": "32141-0004", + "Content": "Bauschuttaufbereitungsanlagen, Asphaltmischanlagen:\nBundesländer, Jahre", + "Time": "2006 - 2022" + }, + { + "Code": "32151-0003", + "Content": "Abfallerzeuger, Abfallmengen (gefährliche Abfälle):\nBundesländer, Jahre", + "Time": "2006 - 2023" + }, + { + "Code": "32151-0005", + "Content": "Erzeuger von primär nachgewiesenen Abfallmengen,\nAbgegebene Abfallmenge an Entsorger (gefährliche Abfälle):\nBundesländer, Jahre (bis 2008)", + "Time": "2005 - 2008" + }, + { + "Code": "32161-0004", + "Content": "Betriebe, erzeugte Abfallmenge: Bundesländer, Jahre", + "Time": "2010 - 2022" + }, + { + "Code": "32181-0010", + "Content": "Gesammelte/zurückgenommene Verpackungen: Bundesländer, Jahre, Art des Verpackungsmaterials", + "Time": "2022 - 2023" + }, + { + "Code": "32211-0001", + "Content": "Wassergewinnung, Einwohner mit Anschluss an die öffentliche\nWasserversorgung, Wasserabgabe: Bundesländer, Jahre", + "Time": "2007 - 2022" + }, + { + "Code": "32211-0002", + "Content": "Wassergewinnung: Bundesländer, Jahre, Wasserarten", + "Time": "2007 - 2022" + }, + { + "Code": "32212-0001", + "Content": "An öffentliche Kanalisation angeschlossene Einwohner,\nSchmutzwasser: Bundesländer, Jahre, Art der\nAbwasserentsorgung", + "Time": "2013 - 2019" + }, + { + "Code": "32213-0001", + "Content": "Länge des Kanalnetzes, Abwasserbehandlungsanlagen,\nAngeschlossene Einwohnerwerte, Jahresabwassermenge,\nSchmutzwasser: Bundesländer, Jahre", + "Time": "2007 - 2022" + }, + { + "Code": "32213-0002", + "Content": "Abwasserbehandlungsanlagen, Angeschlossene Einwohnerwerte,\nJahresabwassermenge, Schmutzwasser: Bundesländer, Jahre,\nArt der Abwasserbehandlung", + "Time": "2007 - 2022" + }, + { + "Code": "32214-0010", + "Content": "Entsorgter Klärschlamm aus der biologischen\nAbwasserbehandlung: Bundesländer, Jahre, Entsorgungsarten\ndes Klärschlamms", + "Time": "2013 - 2024" + }, + { + "Code": "32214-0011", + "Content": "Entsorgter Klärschlamm aus der biologischen\nAbwasserbehandlung: Bundesländer, Jahre, Ort der\nKlärschlammentsorgung", + "Time": "2022 - 2024" + }, + { + "Code": "32214-0012", + "Content": "Eigenerzeugter Klärschlamm aus der biologischen Abwasserbehandlung: Bundesländer, Jahre", + "Time": "2006 - 2024" + }, + { + "Code": "32214-0013", + "Content": "Kläranlagen mit biologischer Abwasserbehandlung:\nBundesländer, Jahre, Angabe zur Klärschlammbehandlung", + "Time": "2022 - 2024" + }, + { + "Code": "32214-0014", + "Content": "Kläranlagen mit biologischer Abwasserbehandlung:\nBundesländer, Jahre, Art der Klärschlammbehandlung", + "Time": "2023 - 2024" + }, + { + "Code": "32221-0001", + "Content": "Wasseraufkommen, Betriebe mit Wasseraufkommen: Bundesländer,\nJahre (bis 2019), Wassergewinnung und -bezug", + "Time": "2007 - 2019" + }, + { + "Code": "32221-0002", + "Content": "Wasseraufkommen: Bundesländer, Jahre (bis 2019),\nEigengewinnung und Fremdbezug", + "Time": "2007 - 2019" + }, + { + "Code": "32221-0003", + "Content": "Wasseraufkommen: Bundesländer, Jahre, Verwendungsarten", + "Time": "2007 - 2022" + }, + { + "Code": "32221-0004", + "Content": "Frischwassereinsatz: Bundesländer, Jahre, Wassernutzung", + "Time": "2007 - 2022" + }, + { + "Code": "32221-0005", + "Content": "Unbehandeltes Abwasser: Bundesländer, Jahre (bis 2019),\nAbwassereinleitungsarten", + "Time": "2007 - 2019" + }, + { + "Code": "32251-0001", + "Content": "Einwohner mit Anschluss an die öffentliche Kanalisation,\nEinwohner mit Anschluss an zentrale\nAbwasserbehandlungsanlagen: Bundesländer, Jahre", + "Time": "2007 - 2022" + }, + { + "Code": "32331-0020", + "Content": "Geprüfte Anlagen zum Umgang mit wassergefährdenden Stoffen:\nBundesländer, Jahre, Art der Prüfung", + "Time": "2018 - 2023" + }, + { + "Code": "32331-0021", + "Content": "Geprüfte Anlagen zum Umgang mit wassergefährdenden Stoffen:\nBundesländer, Jahre, Standort", + "Time": "2018 - 2023" + }, + { + "Code": "32331-0022", + "Content": "Geprüfte Anlagen zum Umgang mit wassergefährdenden Stoffen:\nBundesländer, Jahre, Ergebnis der Prüfung", + "Time": "2018 - 2023" + }, + { + "Code": "32421-0010", + "Content": "Verwendung, Einfuhr und Ausfuhr klimawirksamer Stoffe:\nBundesländer, Jahre, Stoffgruppen", + "Time": "2022 - 2024" + }, + { + "Code": "32421-0011", + "Content": "Verwendung, Einfuhr und Ausfuhr klimawirksamer Stoffe: Bundesländer, Jahre, Wirtschaftszweig des Unternehmens, Stoffgruppen", + "Time": "2022 - 2024" + }, + { + "Code": "32421-0012", + "Content": "Verwendung klimawirksamer Stoffe: Bundesländer, Jahre,\nStoffgruppen, Einsatzbereiche", + "Time": "2022 - 2024" + }, + { + "Code": "32421-0013", + "Content": "Verwendung klimawirksamer Stoffe: Bundesländer, Jahre,\nWirtschaftszweig des Unternehmens, Einsatzbereiche", + "Time": "2022 - 2024" + }, + { + "Code": "32531-0010", + "Content": "Einheiten, Beschäftigte, Umsatz im Bereich Umweltschutz:\nBundesländer, Jahre", + "Time": "2006 - 2023" + }, + { + "Code": "32531-0011", + "Content": "Umweltschutzbezogener Umsatz: Bundesländer, Jahre (bis\n2010), Umsatzarten", + "Time": "2006 - 2010" + }, + { + "Code": "32531-0012", + "Content": "Umweltschutzbezogener Umsatz: Bundesländer, Jahre,\nUmweltbereiche", + "Time": "2022 - 2023" + }, + { + "Code": "33111-0002", + "Content": "Bodenfläche (tatsächliche Nutzung): Bundesländer, Stichtag (bis 31.12.2015), Nutzungsarten (AdV-Nutzungsartenverzeichnis 1991)", + "Time": "31.12.1992 - 31.12.2015" + }, + { + "Code": "33111-0004", + "Content": "Siedlungs- und Verkehrsfläche: Bundesländer, Stichtag\n(bis 31.12.2015), Nutzungsarten\n(AdV-Nutzungsartenverzeichnis 1991)", + "Time": "31.12.1992 - 31.12.2015" + }, + { + "Code": "33111-0006", + "Content": "Bodenfläche (tatsächliche Nutzung): Bundesländer, Stichtag (bis 31.12.2022), Nutzungsarten (AdV-Nutzungsartenkatalog 2009)", + "Time": "31.12.2016 - 31.12.2022" + }, + { + "Code": "33111-0008", + "Content": "Bodenfläche: Bundesländer, Stichtag, Nutzungsarten\n(tatsächliche Nutzung) (AdV-TN 2023)", + "Time": "31.12.2023 - 31.12.2024" + }, + { + "Code": "41122-0005", + "Content": "Landwirtschaftliche Betriebe, Landwirtsch. genutzte Fläche\n(Rep. ASE): Bundesländer, Jahre (bis 2007), Rechtsform,\nGrößenklassen der landwirtschaftlich genutzten Fläche", + "Time": "1979 - 2007" + }, + { + "Code": "41122-0006", + "Content": "Arbeitskräfte (Rep. ASE): Bundesländer, Jahre (bis 2007),\nArbeitskräftegruppen, Geschlecht, Rechtsform, Größenklassen\nder landwirtschaftlich genutzten Fläche", + "Time": "1979 - 2007" + }, + { + "Code": "41122-0007", + "Content": "Betriebliche Arbeitsleistung (Rep. ASE): Bundesländer,\nJahre (bis 2007), Arbeitskräftegruppen, Rechtsform,\nGrößenklassen der landwirtschaftlich genutzten Fläche", + "Time": "1979 - 2007" + }, + { + "Code": "41122-0008", + "Content": "Betriebliche Arbeitsleistung (Rep. ASE): Bundesländer,\nJahre (bis 1995), Arbeitskräftegruppen, Geschlecht,\nRechtsform, Größenklassen der landwirtsch. genutzten Fläche", + "Time": "1979 - 1995" + }, + { + "Code": "41141-0101", + "Content": "Landwirtschaftliche Betriebe, Fläche: Bundesländer, Jahre,\nBodennutzungsarten", + "Time": "2010 - 2023" + }, + { + "Code": "41141-0102", + "Content": "Landwirtschaftliche Betriebe, Fläche: Bundesländer, Jahre,\nBodennutzungsarten, Größenklassen der landwirtschaftlich\ngenutzten Fläche", + "Time": "2010 - 2023" + }, + { + "Code": "41141-0103", + "Content": "Landwirtschaftliche Betriebe mit Ackerland, Fläche:\nBundesländer, Jahre, Ackerkulturen, Größenklassen des\nAckerlandes", + "Time": "2010 - 2023" + }, + { + "Code": "41141-0104", + "Content": "Landwirtschaftliche Betriebe mit Viehhaltung, Viehbestand:\nBundesländer, Stichtag, Tierarten", + "Time": "01.03.2010 - 01.03.2023" + }, + { + "Code": "41141-0105", + "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nLandwirtschaftlich genutzte Fläche: Bundesländer, Jahre,\nGrößenklassen der landwirtschaftlich genutzten Fläche", + "Time": "2010 - 2023" + }, + { + "Code": "41141-0106", + "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nLandwirtschaftlich genutzte Fläche (LF): Bundesländer,\nJahre, Betriebswirtschaftliche Ausrichtung", + "Time": "2010 - 2023" + }, + { + "Code": "41141-0107", + "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nFläche, Ökologisch bewirtschaftete Fläche: Bundesländer,\nJahre, Bodennutzungsarten", + "Time": "2020 - 2023" + }, + { + "Code": "41141-0108", + "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau,\nTiere in Betrieben mit ökologischem Landbau, Tiere in\nökologischer Haltung: Bundesländer, Stichtag, Tierarten", + "Time": "01.03.2010 - 01.03.2023" + }, + { + "Code": "41141-0109", + "Content": "Landwirtschaftliche Betriebe, Landwirtsch. genutzte Fläche,\nFläche im jew. Eigentumsverhältnis: Bundesländer, Jahre,\nEigentumsverhältnisse, Rechtsformen, Größenklassen der LF", + "Time": "2010 - 2023" + }, + { + "Code": "41141-0110", + "Content": "Landwirtschaftliche Betriebe mit gepachteten Flächen, Pachtentgelt: Bundesländer, Jahre, Bodennutzungsarten, Rechtsformen, Größenklassen der landw. genutzten Fläche", + "Time": "2010 - 2023" + }, + { + "Code": "41141-0111", + "Content": "Landwirtschaftliche Betriebe, Fläche: Bundesländer, Jahre,\nBodennutzungsarten, Rechtsformen, Größenklassen der\nlandwirtschaftlich genutzten Fläche", + "Time": "2010 - 2023" + }, + { + "Code": "41141-0112", + "Content": "Landwirtschaftliche Betriebe, Tiere: Bundesländer, Stichtag,\nTierarten, Rechtsformen, Größenklassen der\nlandwirtschaftlich genutzten Fläche", + "Time": "01.03.2010 - 01.03.2023" + }, + { + "Code": "41141-0113", + "Content": "Landwirtschaftliche Betriebe, Landwirtschaftlich genutzte\nFläche, Arbeitskräfte, Arbeitsleistung: Bundesländer, Jahre,\nRechtsformen, Größenklassen der landwirt. genutzten Fläche", + "Time": "2010 - 2023" + }, + { + "Code": "41141-0114", + "Content": "Landwirtschaftliche Betriebe: Bundesländer, Jahre,\nGrößenklassen des Standardoutputs, Rechtsformen,\nBetriebswirtschaftliche Ausrichtung", + "Time": "2010 - 2023" + }, + { + "Code": "41141-0115", + "Content": "Landwirtschaftliche Betriebe mit Bewässerung, Bewässerte\nFläche: Bundesländer, Jahre, Größenklassen der\nlandwirtschaftlich genutzten Fläche", + "Time": "2010 - 2023" + }, + { + "Code": "41141-0116", + "Content": "Landwirtschaftliche Betriebe mit Dauerkulturen,\nDauerkulturfläche: Bundesländer, Jahre, Dauerkulturarten,\nGrößenklassen der Dauerkulturen", + "Time": "2020 - 2023" + }, + { + "Code": "41141-0117", + "Content": "Landwirtschaftliche Betriebe mit Dauergrünland, Dauergrünlandfläche: Bundesländer, Jahre, Dauergrünlandarten, Größenklassen der Dauergrünlandfläche", + "Time": "2020 - 2023" + }, + { + "Code": "41141-0118", + "Content": "Landwirtschaftliche Betriebe mit Viehhaltung, Viehbestand,\nLandwirtschaftlich genutzte Fläche: Bundesländer, Stichtag,\nTierarten, Bestandsgrößenklassen", + "Time": "01.03.2020 - 01.03.2023" + }, + { + "Code": "41141-0119", + "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau, LF:\nBundesländer, Jahre, Umfang der ökologischen\nBewirtschaftung, Größenklassen der LF", + "Time": "2020 - 2023" + }, + { + "Code": "41141-0120", + "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau, LF:\nBundesländer, Jahre, Umfang der ökologischen\nBewirtschaftung, Betriebswirtschaftliche Ausrichtung", + "Time": "2020 - 2023" + }, + { + "Code": "41141-0121", + "Content": "Landwirtschaftliche Betriebe mit ökologischer Viehhaltung:\nBundesländer, Stichtag, Größenklassen der LF", + "Time": "01.03.2020 - 01.03.2023" + }, + { + "Code": "41141-0122", + "Content": "Landwirtschaftliche Betriebe mit ökologischer Viehhaltung:\nBundesländer, Stichtag, Betriebswirtschaftliche Ausrichtung", + "Time": "01.03.2020 - 01.03.2023" + }, + { + "Code": "41141-0123", + "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau und\nPacht, Gepachtete LF, Pachtentgelt: Bundesländer, Jahre,\nGrößenklassen der LF", + "Time": "2020 - 2023" + }, + { + "Code": "41141-0124", + "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau und\nPacht, Gepachtete LF, Pachtentgelt: Bundesländer, Jahre,\nBetriebswirtschaftliche Ausrichtung", + "Time": "2020 - 2023" + }, + { + "Code": "41141-0125", + "Content": "Landwirtschaftliche Betriebe mit ökologischem Landbau, LF,\nArbeitskräfte, Arbeitsleistung: Bundesländer, Jahre,\nRechtsformen, Größenklassen der LF", + "Time": "2020 - 2023" + }, + { + "Code": "41141-0126", + "Content": "Landw. Betriebe mit Angabe des Jahrespachtentgeltes,\nGepachtete LF: Bundesländer, Jahre, Bodennutzungsarten,\nRechtsformen, Größenklassen des durch. Jahrespachtentgeltes", + "Time": "2020 - 2023" + }, + { + "Code": "41141-0127", + "Content": "Arbeitskräfte: Bundesländer, Jahre, Geschlecht,\nAltersgruppen, Rechtsformen, Art der Arbeitskräfte,\nBeschäftigungsumfang", + "Time": "2020 - 2023" + }, + { + "Code": "41145-0011", + "Content": "Betriebe, Nutzfläche (Gartenbau): Bundesländer, Jahre,\nBetriebsarten, Größenklassen der gärtnerischen Nutzfläche", + "Time": "2005 - 2005" + }, + { + "Code": "41145-0012", + "Content": "Gartenbaubetriebe, Nutzfläche: Bundesländer, Jahre,\nBetrieblicher Schwerpunkt der Gartenbaubetriebe,\nGrößenklassen der gärtnerischen Nutzfläche", + "Time": "2005 - 2005" + }, + { + "Code": "41145-0013", + "Content": "Gartenbaubetriebe mit Schwerpunkt Erzeugung, Nutzfläche:\nBundesländer, Jahre, Betriebstypen, Größenklassen der\ngärtnerischen Nutzfläche", + "Time": "2005 - 2005" + }, + { + "Code": "41145-0014", + "Content": "Gartenbaubetriebe mit Schwerpunkt Handel u.Dienstleistungen:\nBundesländer, Jahre, Betriebstypen, Größenklassen der\ngärtnerischen Nutzfläche", + "Time": "2005 - 2005" + }, + { + "Code": "41145-0015", + "Content": "Arbeitskräfte in Gartenbaubetrieben: Bundesländer, Jahre,\nBetriebl. Schwerpunkt der Gartenbaubetriebe, Beschäftigungs-\numfang, Größenklassen der gärtnerischen Nutzfläche", + "Time": "2005 - 2005" + }, + { + "Code": "41145-0016", + "Content": "Familienarbeitskräfte, Betriebliche Arbeitsleistung in\nGartenbaubetrieben:Bundesländer, Jahre, Betriebl.Schwerpunkt\nder Gartenbaubetriebe, Größenklassen der gärtn. Nutzfläche", + "Time": "2005 - 2005" + }, + { + "Code": "41145-0017", + "Content": "Arbeitskräfte in Gartenbaubetrieben mit Schwerpunkt\nErzeugung: Bundesländer, Jahre, Betriebstypen, Größenklassen\nder gärtnerischen Nutzfläche", + "Time": "2005 - 2005" + }, + { + "Code": "41145-0018", + "Content": "Betriebe mit Anbau von Gartenbauerzeugnissen, Anbauflächen:\nBundesländer, Jahre, Größenklassen der gärtnerischen\nNutzfläche", + "Time": "2005 - 2005" + }, + { + "Code": "41145-0019", + "Content": "Betriebe mit Anbau v.Gartenbauerzeugnissen und Flächen unter\nGlas und/oder abgedeckten Freilandflächen: Bundesländer,\nJahre, Größenklassen der gärtnerischen Nutzfläche", + "Time": "2005 - 2005" + }, + { + "Code": "41145-0020", + "Content": "Betriebe (Einzelunternehmen) mit Anbau von Gartenbau-\nerzeugnissen: Bundesländer, Jahre, Betriebsform,\nGrößenklassen der gärtnerischen Nutzfläche", + "Time": "2005 - 2005" + }, + { + "Code": "41161-0010", + "Content": "Waldfläche: Bundesländer, Jahre, Waldeigentumsarten", + "Time": "2022 - 2022" + }, + { + "Code": "41161-0011", + "Content": "Forsteinheiten, Waldfläche: Bundesländer, Jahre,\nWaldeigentumsarten, Größenklassen der Waldfläche", + "Time": "2022 - 2022" + }, + { + "Code": "41213-0008", + "Content": "Betriebe mit Grundflächen des Zierpflanzenanbaus:\nBundesländer, Jahre, Anbauform, Verwendungszweck", + "Time": "2008 - 2025" + }, + { + "Code": "41213-0009", + "Content": "Betriebe mit Erzeugung von Zimmerpflanzen: Bundesländer,\nJahre, Verwendungszweck, Pflanzenarten", + "Time": "2008 - 2025" + }, + { + "Code": "41213-0010", + "Content": "Betriebe mit Erzeugung von Beet- und Balkonpflanzen und\nStauden: Bundesländer, Jahre, Verwendungszweck,\nPflanzenarten", + "Time": "2008 - 2025" + }, + { + "Code": "41213-0011", + "Content": "Betriebe mit Anbauflächen von Schnittblumen: Bundesländer,\nJahre, Anbauform, Pflanzenarten", + "Time": "2008 - 2025" + }, + { + "Code": "41215-0010", + "Content": "Betriebe mit Gemüseanbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre", + "Time": "2010 - 2024" + }, + { + "Code": "41215-0011", + "Content": "Betriebe mit Gemüseanbau im Freiland, Anbaufläche, Erntemenge: Bundesländer, Jahre, Gemüsearten", + "Time": "2010 - 2024" + }, + { + "Code": "41215-0012", + "Content": "Betriebe mit Gemüseanbau unter Schutzabdeckungen, Anbaufläche, Erntemenge: Bundesländer, Jahre, Gemüsearten", + "Time": "2010 - 2024" + }, + { + "Code": "41215-0013", + "Content": "Betriebe mit Gemüseanbau (vollständig ökologisch), Anbaufläche, Erntemenge: Bundesländer, Jahre", + "Time": "2023 - 2024" + }, + { + "Code": "41215-0014", + "Content": "Betriebe mit Erdbeeranbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre, Anbauform", + "Time": "2006 - 2024" + }, + { + "Code": "41215-0015", + "Content": "Betriebe mit Erdbeeranbau (vollständig ökologisch), Anbaufläche, Erntemenge: Bundesländer, Jahre, Anbauform", + "Time": "2012 - 2024" + }, + { + "Code": "41221-0010", + "Content": "Betriebe mit Baumschulen, Baumschulfläche: Bundesländer,\nJahre, Art der Anbaufläche, Nutzungsarten", + "Time": "2017 - 2025" + }, + { + "Code": "41231-0010", + "Content": "Betriebe mit Baumobstflächen: Bundesländer, Jahre, Baumobstarten", + "Time": "1972 - 2022" + }, + { + "Code": "41231-0011", + "Content": "Betriebe mit Baumobstflächen, Anbaufläche: Bundesländer,\nJahre, Tafel-Kernobstarten, Pflanzdichteklassen", + "Time": "2022 - 2022" + }, + { + "Code": "41231-0012", + "Content": "Betriebe mit Baumobstflächen, Anbaufläche: Bundesländer,\nJahre, Verwertungs-Kernobstarten, Pflanzdichteklassen", + "Time": "2022 - 2022" + }, + { + "Code": "41231-0013", + "Content": "Betriebe mit Baumobstflächen, Anbaufläche: Bundesländer,\nJahre, Kernobstarten, Alter der Bäume", + "Time": "2022 - 2022" + }, + { + "Code": "41231-0014", + "Content": "Anbaufläche, Bäume (Baumobstanbau): Bundesländer, Jahre,\nBaumobstarten", + "Time": "1972 - 2022" + }, + { + "Code": "41232-0010", + "Content": "Betriebe mit Strauchbeerenanbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre", + "Time": "2012 - 2025" + }, + { + "Code": "41232-0011", + "Content": "Betriebe mit Strauchbeerenanbau, Anbaufläche, Erntemenge:\nBundesländer, Jahre, Anbauform, Strauchbeerenart", + "Time": "2012 - 2025" + }, + { + "Code": "41232-0012", + "Content": "Erntemenge (Strauchbeeren): Bundesländer, Jahre, Art der\nVerwendung", + "Time": "2012 - 2024" + }, + { + "Code": "41232-0013", + "Content": "Betriebe mit ökologischem Strauchbeerenanbau, Ökologische Anbaufläche, Ökologisch erzeugte Erntemenge: Bundesländer, Jahre", + "Time": "2012 - 2025" + }, + { + "Code": "41232-0014", + "Content": "Betriebe mit ökologischem Strauchbeerenanbau, Ökologische\nAnbaufläche, Ökologisch erzeugte Erntemenge: Bundesländer,\nJahre, Anbauform, Strauchbeerenart", + "Time": "2012 - 2025" + }, + { + "Code": "41241-0010", + "Content": "Anbaufläche, Erntemenge, Ertrag je Hektar (Feldfrüchte und\nGrünland): Bundesländer, Jahre, Fruchtarten", + "Time": "2010 - 2025" + }, + { + "Code": "41241-0011", + "Content": "Erntemenge von Raufutter: Bundesländer, Jahre, Fruchtarten,\nVerwendungszweck", + "Time": "2010 - 2025" + }, + { + "Code": "41243-0010", + "Content": "Anbaufläche, Erntemenge (Baumobst): Bundesländer, Jahre,\nBaumobstarten", + "Time": "2005 - 2025" + }, + { + "Code": "41243-0011", + "Content": "Erntemenge (Baumobst): Bundesländer, Jahre, Baumobstarten,\nArt der Verwendung", + "Time": "2007 - 2025" + }, + { + "Code": "41243-0012", + "Content": "Anbaufläche, Erntemenge (Baumobst): Bundesländer, Jahre,\nApfelsorten", + "Time": "2007 - 2025" + }, + { + "Code": "41244-0010", + "Content": "Rebfläche im Ertrag, Weinmostertrag je Hektar, Erntemenge an Weinmost: Bundesländer, Jahre, Art des Weinmosts", + "Time": "2019 - 2025" + }, + { + "Code": "41244-0011", + "Content": "Rebfläche im Ertrag, Weinmostertrag je Hektar, Erntemenge an Weinmost: Bundesländer, Jahre, Rebsorte", + "Time": "2019 - 2025" + }, + { + "Code": "41244-0012", + "Content": "Erntemenge an Weinmost, Durchschnittliches Mostgewicht:\nBundesländer, Jahre, Art des Weinmosts, Mostqualität", + "Time": "2019 - 2025" + }, + { + "Code": "41244-0013", + "Content": "Erntemenge an Weinmost, Durchschnittliches Mostgewicht:\nBundesländer, Jahre, Rebsorte, Mostqualität", + "Time": "2019 - 2025" + }, + { + "Code": "41252-0010", + "Content": "Mit Keltertrauben bestockte Rebfläche: Bundesländer, Jahre,\nRebsorte", + "Time": "1991 - 2024" + }, + { + "Code": "41253-0010", + "Content": "Erntemenge an Weinmost, Weinmostertrag je Hektar, Rebfläche\nim Ertrag: Bundesländer, Jahre, Art des Weinmosts", + "Time": "1991 - 2024" + }, + { + "Code": "41253-0011", + "Content": "Erntemenge an Weinmost, Weinmostertrag je Hektar, Rebfläche\nim Ertrag: Bundesländer, Jahre, Rebsorte", + "Time": "2022 - 2024" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} diff --git a/tests/testthat/xy_variable1/api/catalogue/timeseries2variable-86e7c4-a6b6cb-POST.json b/tests/testthat/xy_variable1/api/catalogue/timeseries2variable-86e7c4-a6b6cb-POST.json new file mode 100644 index 0000000..9b12e0d --- /dev/null +++ b/tests/testthat/xy_variable1/api/catalogue/timeseries2variable-86e7c4-a6b6cb-POST.json @@ -0,0 +1,4023 @@ +{ + "Ident": { + "Service": "catalogue", + "Method": "timeseries2variable" + }, + "Status": { + "Code": 0, + "Content": "erfolgreich", + "Type": "Information" + }, + "Parameter": { + "username": "********************", + "password": "********************", + "name": "DLAND", + "selection": "", + "area": "Alle", + "pagelength": "500", + "language": "de" + }, + "List": [ + { + "Code": "11111LJ001", + "Content": "Feststellung des Gebietsstands, Gebietsfläche, Bundesländer, Stichtag", + "State": "undefiniert", + "Time": "31.12.1995-31.12.2023", + "LatestUpdate": "16.06.2025 13:06:31h", + "Information": "false" + }, + { + "Code": "12211LJ001", + "Content": "Mikrozensus, Bevölkerung, Erwerbspersonen, Erwerbstätige, Erwerbslose, Nichterwerbspersonen, Bundesländer, Stichmonat", + "State": "undefiniert", + "Time": "04/1991-03/2004", + "LatestUpdate": "22.03.2005 11:46:17h", + "Information": "false" + }, + { + "Code": "12211LJ002", + "Content": "Mikrozensus, Privathaushalte, Bundesländer, Stichmonat", + "State": "undefiniert", + "Time": "05/1970-03/2004", + "LatestUpdate": "09.11.2020 11:43:47h", + "Information": "false" + }, + { + "Code": "12211LJ003", + "Content": "Mikrozensus, Privathaushalte, Bundesländer, Haushaltsgröße, Stichmonat", + "State": "undefiniert", + "Time": "04/1991-03/2004", + "LatestUpdate": "09.11.2020 11:44:19h", + "Information": "false" + }, + { + "Code": "12211LJ004", + "Content": "Mikrozensus, Bevölkerung in Familien/Lebensformen, Bundesländer, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "09.11.2020 11:46:13h", + "Information": "false" + }, + { + "Code": "12211LJ005", + "Content": "Mikrozensus, Bevölkerung in Familien/Lebensformen, Bundesländer, Lebensformen, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "09.11.2020 11:46:47h", + "Information": "false" + }, + { + "Code": "12211LJ006", + "Content": "Mikrozensus, Familien, Bundesländer, Vorhandensein von Kindern, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "09.11.2020 11:47:04h", + "Information": "false" + }, + { + "Code": "12211LJ007", + "Content": "Mikrozensus, Paare, Bundesländer, Vorhandensein von Kindern, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "09.11.2020 11:47:17h", + "Information": "false" + }, + { + "Code": "12211LJ008", + "Content": "Mikrozensus, Ehepaare, Lebensgemeinschaften, Gemischtgeschlechtliche Lebensgemeinschaften, Bundesländer, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "09.11.2020 11:47:33h", + "Information": "false" + }, + { + "Code": "12211LJ009", + "Content": "Mikrozensus, Ehepaare, Lebensgemeinschaften, Gemischtgeschlechtliche Lebensgemeinschaften, Bundesländer, Vorhandensein von Kindern, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "09.11.2020 11:48:49h", + "Information": "false" + }, + { + "Code": "12211LJ010", + "Content": "Mikrozensus, Alleinerziehende, Bundesländer, Vorhandensein von Kindern, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "09.11.2020 11:49:06h", + "Information": "false" + }, + { + "Code": "12211LJ011", + "Content": "Mikrozensus, Alleinerziehende, Bundesländer, Vorhandensein von Kindern, Geschlecht, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "17.06.2021 16:45:09h", + "Information": "false" + }, + { + "Code": "12211LJ012", + "Content": "Mikrozensus, Alleinstehende, Bundesländer, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "09.11.2020 11:50:28h", + "Information": "false" + }, + { + "Code": "12211LJ013", + "Content": "Mikrozensus, Alleinstehende, Bundesländer, Geschlecht, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "09.11.2020 11:51:03h", + "Information": "false" + }, + { + "Code": "12211LJ014", + "Content": "Mikrozensus, Alleinstehende, Bundesländer, Haushaltsgröße, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "09.11.2020 11:52:36h", + "Information": "false" + }, + { + "Code": "12211LJ015", + "Content": "Mikrozensus, Alleinstehende, Bundesländer, Haushaltsgröße, Geschlecht, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "09.11.2020 11:52:53h", + "Information": "false" + }, + { + "Code": "12211LJ016", + "Content": "Mikrozensus, Ledige Kinder in der Familie, Ledige Kinder unter 18 Jahren in der Familie, Bundesländer, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "09.11.2020 11:53:13h", + "Information": "false" + }, + { + "Code": "12211LJ017", + "Content": "Mikrozensus, Ledige Kinder in der Familie, Ledige Kinder unter 18 Jahren in der Familie, Bundesländer, Familienformen, Stichmonat", + "State": "undefiniert", + "Time": "04/1996-03/2004", + "LatestUpdate": "09.11.2020 11:53:34h", + "Information": "false" + }, + { + "Code": "12211LJ018", + "Content": "Mikrozensus, Bevölkerung, Erwerbspersonen, Erwerbstätige, Erwerbslose, Nichterwerbspersonen, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:32:58h", + "Information": "false" + }, + { + "Code": "12211LJ019", + "Content": "Mikrozensus, Bevölkerung (ab 15 Jahren), Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "25.11.2020 16:54:17h", + "Information": "false" + }, + { + "Code": "12211LJ020", + "Content": "Mikrozensus, Bevölkerung (ab 15 Jahren), Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "25.11.2020 16:54:15h", + "Information": "false" + }, + { + "Code": "12211LJ021", + "Content": "Mikrozensus, Bevölkerung (ab 15 Jahren), Bundesländer, Allgemeine Schulausbildung, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "25.11.2020 16:54:16h", + "Information": "false" + }, + { + "Code": "12211LJ022", + "Content": "Mikrozensus, Bevölkerung (ab 15 Jahren), Bundesländer, Geschlecht, Allgemeine Schulausbildung, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "25.11.2020 16:54:11h", + "Information": "false" + }, + { + "Code": "12211LJ023", + "Content": "Mikrozensus, Bevölkerung (ab 15 Jahren), Bundesländer, Beruflicher Bildungsabschluss, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "25.11.2020 16:54:14h", + "Information": "false" + }, + { + "Code": "12211LJ024", + "Content": "Mikrozensus, Bevölkerung (ab 15 Jahren), Bundesländer, Geschlecht, Beruflicher Bildungsabschluss, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "25.11.2020 16:54:13h", + "Information": "false" + }, + { + "Code": "12211LJ025", + "Content": "Mikrozensus, Privathaushalte, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:44:43h", + "Information": "false" + }, + { + "Code": "12211LJ026", + "Content": "Mikrozensus, Privathaushalte, Bundesländer, Haushaltsgröße, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:45:05h", + "Information": "false" + }, + { + "Code": "12211LJ027", + "Content": "Mikrozensus, Bevölkerung in Familien/Lebensformen, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:53:58h", + "Information": "false" + }, + { + "Code": "12211LJ028", + "Content": "Mikrozensus, Bevölkerung in Familien/Lebensformen, Bundesländer, Lebensformen, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:54:40h", + "Information": "false" + }, + { + "Code": "12211LJ029", + "Content": "Mikrozensus, Familien, Bundesländer, Vorhandensein von Kindern, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:54:54h", + "Information": "false" + }, + { + "Code": "12211LJ030", + "Content": "Mikrozensus, Paare, Bundesländer, Vorhandensein von Kindern, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:55:15h", + "Information": "false" + }, + { + "Code": "12211LJ031", + "Content": "Mikrozensus, Ehepaare, Lebensgemeinschaften, Gemischtgeschlechtliche Lebensgemeinschaften, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:55:36h", + "Information": "false" + }, + { + "Code": "12211LJ032", + "Content": "Mikrozensus, Ehepaare, Lebensgemeinschaften, Gemischtgeschlechtliche Lebensgemeinschaften, Bundesländer, Vorhandensein von Kindern, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:56:00h", + "Information": "false" + }, + { + "Code": "12211LJ033", + "Content": "Mikrozensus, Alleinerziehende, Bundesländer, Vorhandensein von Kindern, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:56:14h", + "Information": "false" + }, + { + "Code": "12211LJ034", + "Content": "Mikrozensus, Alleinerziehende, Bundesländer, Vorhandensein von Kindern, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:56:32h", + "Information": "false" + }, + { + "Code": "12211LJ035", + "Content": "Mikrozensus, Alleinstehende, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:57:58h", + "Information": "false" + }, + { + "Code": "12211LJ036", + "Content": "Mikrozensus, Alleinstehende, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:58:56h", + "Information": "false" + }, + { + "Code": "12211LJ037", + "Content": "Mikrozensus, Alleinstehende, Bundesländer, Haushaltsgröße, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 11:59:13h", + "Information": "false" + }, + { + "Code": "12211LJ038", + "Content": "Mikrozensus, Alleinstehende, Bundesländer, Haushaltsgröße, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 12:00:39h", + "Information": "false" + }, + { + "Code": "12211LJ039", + "Content": "Mikrozensus, Ledige Kinder in der Familie, Ledige Kinder unter 18 Jahren in der Familie, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 12:00:56h", + "Information": "false" + }, + { + "Code": "12211LJ040", + "Content": "Mikrozensus, Ledige Kinder in der Familie, Ledige Kinder unter 18 Jahren in der Familie, Bundesländer, Familienformen, Jahr", + "State": "undefiniert", + "Time": "2005-2019", + "LatestUpdate": "09.11.2020 12:01:10h", + "Information": "false" + }, + { + "Code": "12211LJ041", + "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "29.01.2026 19:03:32h", + "Information": "false" + }, + { + "Code": "12211LJ042", + "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "29.01.2026 19:03:19h", + "Information": "false" + }, + { + "Code": "12211LJ043", + "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Altersgruppen (u25-65m), Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "29.01.2026 19:03:10h", + "Information": "false" + }, + { + "Code": "12211LJ044", + "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Art der Gemeinschaftsunterkunft, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "29.01.2026 19:03:29h", + "Information": "false" + }, + { + "Code": "12211LJ045", + "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Hauptstatus, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "29.01.2026 19:03:23h", + "Information": "false" + }, + { + "Code": "12211LJ046", + "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Geschlecht, Altersgruppen (u25-65m), Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "29.01.2026 19:03:13h", + "Information": "false" + }, + { + "Code": "12211LJ047", + "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Geschlecht, Art der Gemeinschaftsunterkunft, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "29.01.2026 19:03:02h", + "Information": "false" + }, + { + "Code": "12211LJ048", + "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Geschlecht, Hauptstatus, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "29.01.2026 19:03:26h", + "Information": "false" + }, + { + "Code": "12211LJ049", + "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Altersgruppen (u25-65m), Hauptstatus, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "29.01.2026 19:03:16h", + "Information": "false" + }, + { + "Code": "12211LJ050", + "Content": "Mikrozensus, Bevölkerung in Gemeinschaftsunterkünften, Bundesländer, Geschlecht, Altersgruppen (u25-65m), Hauptstatus, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "29.01.2026 19:03:06h", + "Information": "false" + }, + { + "Code": "12211LJ240", + "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:15:33h", + "Information": "false" + }, + { + "Code": "12211LJ241", + "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:17:17h", + "Information": "false" + }, + { + "Code": "12211LJ242", + "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (u15-75m), Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:17:03h", + "Information": "false" + }, + { + "Code": "12211LJ243", + "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (u15-75m), Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:15:19h", + "Information": "false" + }, + { + "Code": "12211LJ244", + "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (u15-65m), Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:15:22h", + "Information": "false" + }, + { + "Code": "12211LJ245", + "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Überwiegender Lebensunterhalt (bis 2022), Jahr", + "State": "undefiniert", + "Time": "2021-2022", + "LatestUpdate": "06.06.2025 13:44:43h", + "Information": "false" + }, + { + "Code": "12211LJ246", + "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (u15-65m), Überwiegender Lebensunterhalt (bis 2022), Jahr", + "State": "undefiniert", + "Time": "2021-2022", + "LatestUpdate": "06.06.2025 13:44:29h", + "Information": "false" + }, + { + "Code": "12211LJ247", + "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Größenklassen des persönl. monatl. Nettoeinkommens, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:15:09h", + "Information": "false" + }, + { + "Code": "12211LJ248", + "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Größenklassen des persönl. monatl. Nettoeinkommens, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:13:29h", + "Information": "false" + }, + { + "Code": "12211LJ249", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:15:15h", + "Information": "false" + }, + { + "Code": "12211LJ250", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:17:24h", + "Information": "false" + }, + { + "Code": "12211LJ251", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:45:32h", + "Information": "false" + }, + { + "Code": "12211LJ252", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:46:39h", + "Information": "false" + }, + { + "Code": "12211LJ253", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Stellung im Beruf, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:46:35h", + "Information": "false" + }, + { + "Code": "12211LJ254", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Stellung im Beruf, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:46:30h", + "Information": "false" + }, + { + "Code": "12211LJ255", + "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Überwiegender Lebensunterhalt, Jahr", + "State": "undefiniert", + "Time": "2023-2024", + "LatestUpdate": "29.01.2026 19:17:27h", + "Information": "false" + }, + { + "Code": "12211LJ256", + "Content": "Mikrozensus, Bevölkerung in Hauptwohnsitzhaushalten, Erwerbspersonen aus Hauptwohnsitzhaushalten, Erwerbstätige aus Hauptwohnsitzhaushalten, Erwerbslose aus Hauptwohnsitzhaushalten, Nichterwerbspersonen aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (u15-65m), Überwiegender Lebensunterhalt, Jahr", + "State": "undefiniert", + "Time": "2023-2024", + "LatestUpdate": "29.01.2026 19:17:10h", + "Information": "false" + }, + { + "Code": "12211LJ257", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Größenkl. der in der Arbeitsstätte tätigen Pers., Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:17:14h", + "Information": "false" + }, + { + "Code": "12211LJ258", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Größenkl. der in der Arbeitsstätte tätigen Pers., Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:15:12h", + "Information": "false" + }, + { + "Code": "12211LJ259", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Größenkl. der in der Arbeitsstätte tätigen Pers., Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:45:37h", + "Information": "false" + }, + { + "Code": "12211LJ260", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Größenkl. der in der Arbeitsstätte tätigen Pers., Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:46:48h", + "Information": "false" + }, + { + "Code": "12211LJ261", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Größenklassen des persönl. monatl. Nettoeinkommens, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:48:07h", + "Information": "false" + }, + { + "Code": "12211LJ262", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Größenklassen des persönl. monatl. Nettoeinkommens, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:47:46h", + "Information": "false" + }, + { + "Code": "12211LJ263", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:21:02h", + "Information": "false" + }, + { + "Code": "12211LJ264", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:19:26h", + "Information": "false" + }, + { + "Code": "12211LJ265", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:47:38h", + "Information": "false" + }, + { + "Code": "12211LJ266", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:47:56h", + "Information": "false" + }, + { + "Code": "12211LJ267", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Berufshauptgruppen (KB2010), 2-Steller, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:17:06h", + "Information": "false" + }, + { + "Code": "12211LJ268", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Berufshauptgruppen (KB2010), 2-Steller, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:15:30h", + "Information": "false" + }, + { + "Code": "12211LJ269", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Berufshauptgruppen (KB2010), 2-Steller, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:47:33h", + "Information": "false" + }, + { + "Code": "12211LJ270", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Berufshauptgruppen (KB2010), 2-Steller, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:49:41h", + "Information": "false" + }, + { + "Code": "12211LJ271", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:21:24h", + "Information": "false" + }, + { + "Code": "12211LJ272", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:21:06h", + "Information": "false" + }, + { + "Code": "12211LJ273", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Stellung im Beruf, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:21:17h", + "Information": "false" + }, + { + "Code": "12211LJ274", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Stellung im Beruf, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:21:13h", + "Information": "false" + }, + { + "Code": "12211LJ275", + "Content": "Mikrozensus, Geleistete Arbeitsstunden, Geleistete Arbeitsstunden je Person, Bundesländer, Art der geleisteten Arbeitsstunden, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:21:20h", + "Information": "false" + }, + { + "Code": "12211LJ276", + "Content": "Mikrozensus, Geleistete Arbeitsstunden, Geleistete Arbeitsstunden je Person, Bundesländer, Geschlecht, Art der geleisteten Arbeitsstunden, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:15:26h", + "Information": "false" + }, + { + "Code": "12211LJ277", + "Content": "Mikrozensus, Geleistete Arbeitsstunden, Geleistete Arbeitsstunden je Person, Bundesländer, Stellung im Beruf, Art der geleisteten Arbeitsstunden, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:48:46h", + "Information": "false" + }, + { + "Code": "12211LJ278", + "Content": "Mikrozensus, Geleistete Arbeitsstunden, Geleistete Arbeitsstunden je Person, Bundesländer, Geschlecht, Stellung im Beruf, Art der geleisteten Arbeitsstunden, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:48:39h", + "Information": "false" + }, + { + "Code": "12211LJ279", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Art der geleisteten Arbeitsstunden, Größenkl. der geleisteten Arbeitsstunden je Woche, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:17:20h", + "Information": "false" + }, + { + "Code": "12211LJ280", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Art der geleisteten Arbeitsstunden, Größenkl. der geleisteten Arbeitsstunden je Woche, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:19:23h", + "Information": "false" + }, + { + "Code": "12211LJ281", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Art der geleisteten Arbeitsstunden, Größenkl. der geleisteten Arbeitsstunden je Woche, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:50:15h", + "Information": "false" + }, + { + "Code": "12211LJ282", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Art der geleisteten Arbeitsstunden, Größenkl. der geleisteten Arbeitsstunden je Woche, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:49:57h", + "Information": "false" + }, + { + "Code": "12211LJ283", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-65m), Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:19:51h", + "Information": "false" + }, + { + "Code": "12211LJ284", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-65m), Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:17:35h", + "Information": "false" + }, + { + "Code": "12211LJ285", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Erwerbsformen, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:19:36h", + "Information": "false" + }, + { + "Code": "12211LJ286", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Erwerbsformen, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:19:15h", + "Information": "false" + }, + { + "Code": "12211LJ287", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-65m), Erwerbsformen, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:17:32h", + "Information": "false" + }, + { + "Code": "12211LJ288", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-65m), Erwerbsformen, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:19:32h", + "Information": "false" + }, + { + "Code": "12211LJ289", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Größenkl. der in der Arbeitsstätte tätigen Pers., Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:21:27h", + "Information": "false" + }, + { + "Code": "12211LJ290", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Größenkl. der in der Arbeitsstätte tätigen Pers., Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:25:08h", + "Information": "false" + }, + { + "Code": "12211LJ291", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Größenklassen des persönl. monatl. Nettoeinkommens, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:21:35h", + "Information": "false" + }, + { + "Code": "12211LJ292", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Größenklassen des persönl. monatl. Nettoeinkommens, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:23:15h", + "Information": "false" + }, + { + "Code": "12211LJ293", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:23:03h", + "Information": "false" + }, + { + "Code": "12211LJ294", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Berufsbereiche (KB2010), 1-Steller, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:19:11h", + "Information": "false" + }, + { + "Code": "12211LJ295", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Berufshauptgruppen (KB2010), 2-Steller, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:19:06h", + "Information": "false" + }, + { + "Code": "12211LJ296", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Berufshauptgruppen (KB2010), 2-Steller, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:19:47h", + "Information": "false" + }, + { + "Code": "12211LJ297", + "Content": "Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Beschäftigungsumfang, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:21:09h", + "Information": "false" + }, + { + "Code": "12211LJ298", + "Content": "Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Beschäftigungsumfang, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:21:31h", + "Information": "false" + }, + { + "Code": "12211LJ299", + "Content": "Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Beschäftigungsumfang, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:19:19h", + "Information": "false" + }, + { + "Code": "12211LJ300", + "Content": "Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Beschäftigungsumfang, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:23:38h", + "Information": "false" + }, + { + "Code": "12211LJ301", + "Content": "Mikrozensus, Erwerbslose aus Hauptwohnsitzhaushalten, Bundesländer, Dauer der Erwerbslosigkeit, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:23:23h", + "Information": "false" + }, + { + "Code": "12211LJ302", + "Content": "Mikrozensus, Erwerbslose aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Dauer der Erwerbslosigkeit, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:23:41h", + "Information": "false" + }, + { + "Code": "12211LJ303", + "Content": "Mikrozensus, Erwerbslose aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-65m), Dauer der Erwerbslosigkeit, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:23:10h", + "Information": "false" + }, + { + "Code": "12211LJ304", + "Content": "Mikrozensus, Erwerbslose aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-65m), Dauer der Erwerbslosigkeit, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:23:19h", + "Information": "false" + }, + { + "Code": "12211LJ305", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:29:21h", + "Information": "false" + }, + { + "Code": "12211LJ306", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:29:28h", + "Information": "false" + }, + { + "Code": "12211LJ307", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:29:31h", + "Information": "false" + }, + { + "Code": "12211LJ308", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:31:06h", + "Information": "false" + }, + { + "Code": "12211LJ309", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Allgemeine Schulausbildung, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:29:13h", + "Information": "false" + }, + { + "Code": "12211LJ310", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Allgemeine Schulausbildung, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:29:06h", + "Information": "false" + }, + { + "Code": "12211LJ311", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Allgemeine Schulausbildung, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:29:25h", + "Information": "false" + }, + { + "Code": "12211LJ312", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Allgemeine Schulausbildung, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:29:18h", + "Information": "false" + }, + { + "Code": "12211LJ313", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Beruflicher Bildungsabschluss, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:25:21h", + "Information": "false" + }, + { + "Code": "12211LJ314", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Beruflicher Bildungsabschluss, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:25:18h", + "Information": "false" + }, + { + "Code": "12211LJ315", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Beruflicher Bildungsabschluss, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:31:13h", + "Information": "false" + }, + { + "Code": "12211LJ316", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Beruflicher Bildungsabschluss, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:33:21h", + "Information": "false" + }, + { + "Code": "12211LJ317", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Bildungsstatus, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:29:35h", + "Information": "false" + }, + { + "Code": "12211LJ318", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Bildungsstatus, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:29:10h", + "Information": "false" + }, + { + "Code": "12211LJ319", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Bildungsstatus, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:31:03h", + "Information": "false" + }, + { + "Code": "12211LJ320", + "Content": "Mikrozensus, Bevölkerung ab 15 J. in Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Bildungsstatus, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:29:03h", + "Information": "false" + }, + { + "Code": "12211LJ418", + "Content": "Mikrozensus, Geleistete Arbeitsstunden, Geleistete Arbeitsstunden je Person, Bundesländer, Stellung im Beruf, Art der geleisteten Arbeitsstunden, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:23:07h", + "Information": "false" + }, + { + "Code": "12211LJ419", + "Content": "Mikrozensus, Geleistete Arbeitsstunden, Geleistete Arbeitsstunden je Person, Bundesländer, Geschlecht, Stellung im Beruf, Art der geleisteten Arbeitsstunden, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:23:32h", + "Information": "false" + }, + { + "Code": "12211LJ420", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Art der geleisteten Arbeitsstunden, Größenkl. der geleisteten Arbeitsstunden je Woche, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:25:03h", + "Information": "false" + }, + { + "Code": "12211LJ421", + "Content": "Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Art der geleisteten Arbeitsstunden, Größenkl. der geleisteten Arbeitsstunden je Woche, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:23:28h", + "Information": "false" + }, + { + "Code": "12231L2001", + "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Art der Computer- und Internetkenntnisse, Jahr", + "State": "undefiniert", + "Time": "2023-2025", + "LatestUpdate": "26.11.2025 18:03:42h", + "Information": "false" + }, + { + "Code": "12231L2002", + "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Altersgruppen (16-u75), Art der Computer- und Internetkenntnisse, Jahr", + "State": "undefiniert", + "Time": "2023-2025", + "LatestUpdate": "26.11.2025 18:03:49h", + "Information": "false" + }, + { + "Code": "12231LJ030", + "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2022-2025", + "LatestUpdate": "26.11.2025 18:01:34h", + "Information": "false" + }, + { + "Code": "12231LJ031", + "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Altersgruppen (16-u75), Jahr", + "State": "undefiniert", + "Time": "2022-2025", + "LatestUpdate": "26.11.2025 18:01:57h", + "Information": "false" + }, + { + "Code": "12231LJ032", + "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Priv. Internetaktivitäten i.d.letzten drei Monaten, Jahr", + "State": "undefiniert", + "Time": "2022-2025", + "LatestUpdate": "26.11.2025 18:01:43h", + "Information": "false" + }, + { + "Code": "12231LJ033", + "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Altersgruppen (16-u75), Priv. Internetaktivitäten i.d.letzten drei Monaten, Jahr", + "State": "undefiniert", + "Time": "2022-2025", + "LatestUpdate": "26.11.2025 18:01:54h", + "Information": "false" + }, + { + "Code": "12231LJ034", + "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Private Internetkäufe in den letzten drei Monaten, Jahr", + "State": "undefiniert", + "Time": "2022-2025", + "LatestUpdate": "26.11.2025 18:03:35h", + "Information": "false" + }, + { + "Code": "12231LJ035", + "Content": "IKT-Nutzung in privaten Haushalten, Bevölkerung von 16-u75 J. in Hauptwohnsitzhaush., Bundesländer, Altersgruppen (16-u75), Private Internetkäufe in den letzten drei Monaten, Jahr", + "State": "undefiniert", + "Time": "2022-2025", + "LatestUpdate": "26.11.2025 18:03:39h", + "Information": "false" + }, + { + "Code": "12251L4001", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Zeitaufwand für den Hinweg zur Arbeitsstätte, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:58:08h", + "Information": "false" + }, + { + "Code": "12251L4002", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Zeitaufwand für den Hinweg zur Arbeitsstätte, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:59:16h", + "Information": "false" + }, + { + "Code": "12251L4003", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Zeitaufwand für den Hinweg zur Arbeitsstätte, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 20:00:02h", + "Information": "false" + }, + { + "Code": "12251L4004", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Zeitaufwand für den Hinweg zur Arbeitsstätte, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 20:00:07h", + "Information": "false" + }, + { + "Code": "12251L4005", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:59:10h", + "Information": "false" + }, + { + "Code": "12251L4006", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:58:29h", + "Information": "false" + }, + { + "Code": "12251L4007", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:59:03h", + "Information": "false" + }, + { + "Code": "12251L4008", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Benutztes Verkehrsmittel f.d. Hinweg z. Arbeitsst., Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:59:21h", + "Information": "false" + }, + { + "Code": "12251L4009", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Entfernung zur Arbeitsstätte, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:58:11h", + "Information": "false" + }, + { + "Code": "12251L4010", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Entfernung zur Arbeitsstätte, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:59:33h", + "Information": "false" + }, + { + "Code": "12251L4011", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Entfernung zur Arbeitsstätte, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:59:30h", + "Information": "false" + }, + { + "Code": "12251L4012", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Entfernung zur Arbeitsstätte, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:58:22h", + "Information": "false" + }, + { + "Code": "12251LJ001", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:55:02h", + "Information": "false" + }, + { + "Code": "12251LJ002", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:55:08h", + "Information": "false" + }, + { + "Code": "12251LJ003", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:25:31h", + "Information": "false" + }, + { + "Code": "12251LJ004", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:22:36h", + "Information": "false" + }, + { + "Code": "12251LJ005", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:56:36h", + "Information": "false" + }, + { + "Code": "12251LJ006", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:56:29h", + "Information": "false" + }, + { + "Code": "12251LJ007", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Wochenend- und Feiertagsarbeit, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:56:21h", + "Information": "false" + }, + { + "Code": "12251LJ008", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Wochenend- und Feiertagsarbeit, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:56:26h", + "Information": "false" + }, + { + "Code": "12251LJ009", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Wochenend- und Feiertagsarbeit, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:57:15h", + "Information": "false" + }, + { + "Code": "12251LJ010", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Wochenend- und Feiertagsarbeit, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:55:31h", + "Information": "false" + }, + { + "Code": "12251LJ011", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Wochenend- und Feiertagsarbeit, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:24:47h", + "Information": "false" + }, + { + "Code": "12251LJ012", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Wochenend- und Feiertagsarbeit, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:24:39h", + "Information": "false" + }, + { + "Code": "12251LJ013", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Abend-, Nacht- und Schichtarbeit, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:55:24h", + "Information": "false" + }, + { + "Code": "12251LJ014", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Abend-, Nacht- und Schichtarbeit, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:55:27h", + "Information": "false" + }, + { + "Code": "12251LJ015", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Abend-, Nacht- und Schichtarbeit, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:22:44h", + "Information": "false" + }, + { + "Code": "12251LJ016", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Abend-, Nacht- und Schichtarbeit, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:23:48h", + "Information": "false" + }, + { + "Code": "12251LJ017", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Erwerbsarbeit zu Hause, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:56:07h", + "Information": "false" + }, + { + "Code": "12251LJ018", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Erwerbsarbeit zu Hause, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:58:02h", + "Information": "false" + }, + { + "Code": "12251LJ019", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Erwerbsarbeit zu Hause, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:22:47h", + "Information": "false" + }, + { + "Code": "12251LJ020", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Erwerbsarbeit zu Hause, Jahr", + "State": "undefiniert", + "Time": "2021-2023", + "LatestUpdate": "06.06.2025 13:25:28h", + "Information": "false" + }, + { + "Code": "12251LJ021", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:57:31h", + "Information": "false" + }, + { + "Code": "12251LJ022", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:57:21h", + "Information": "false" + }, + { + "Code": "12251LJ023", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:57:34h", + "Information": "false" + }, + { + "Code": "12251LJ024", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:56:11h", + "Information": "false" + }, + { + "Code": "12251LJ025", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Art des Arbeitsvertrages, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:56:18h", + "Information": "false" + }, + { + "Code": "12251LJ026", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Art des Arbeitsvertrages, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:56:33h", + "Information": "false" + }, + { + "Code": "12251LJ027", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Altersgruppen (15-75m), Art des Arbeitsvertrages, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:57:28h", + "Information": "false" + }, + { + "Code": "12251LJ028", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Abhängig Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Altersgruppen (15-75m), Art des Arbeitsvertrages, Jahr", + "State": "undefiniert", + "Time": "2021-2024", + "LatestUpdate": "29.01.2026 19:57:09h", + "Information": "false" + }, + { + "Code": "12251LJ029", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Abend-, Nacht- und Schichtarbeit, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:57:03h", + "Information": "false" + }, + { + "Code": "12251LJ030", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Abend-, Nacht- und Schichtarbeit, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:56:04h", + "Information": "false" + }, + { + "Code": "12251LJ031", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Stellung im Beruf, Erwerbsarbeit zu Hause, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:57:24h", + "Information": "false" + }, + { + "Code": "12251LJ032", + "Content": "Arbeitsmarktstatistik des Mikrozensus, Erwerbstätige aus Hauptwohnsitzhaushalten, Bundesländer, Geschlecht, Stellung im Beruf, Erwerbsarbeit zu Hause, Jahr", + "State": "undefiniert", + "Time": "2024", + "LatestUpdate": "29.01.2026 19:56:14h", + "Information": "false" + }, + { + "Code": "12411LJ001", + "Content": "Fortschreibung des Bevölkerungsstandes, Bevölkerungsstand, Bundesländer, Altersjahre (u1-90m), Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "31.12.1967-31.12.2024", + "LatestUpdate": "18.06.2025 18:21:51h", + "Information": "false" + }, + { + "Code": "12411LJ002", + "Content": "Fortschreibung des Bevölkerungsstandes, Bevölkerungsstand, Bundesländer, Altersjahre (u1-90m), Nationalität, Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "31.12.2000-31.12.2024", + "LatestUpdate": "18.06.2025 18:20:48h", + "Information": "false" + }, + { + "Code": "12411LJ003", + "Content": "Fortschreibung des Bevölkerungsstandes, Bevölkerungsstand, Bundesländer, Stichtag", + "State": "undefiniert", + "Time": "31.12.1958-31.12.2024", + "LatestUpdate": "18.06.2025 18:21:04h", + "Information": "false" + }, + { + "Code": "12411LJ004", + "Content": "Fortschreibung des Bevölkerungsstandes, Durchschnittliche Bevölkerung, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "26.06.2025 18:10:55h", + "Information": "false" + }, + { + "Code": "12411LJ005", + "Content": "Fortschreibung des Bevölkerungsstandes, Durchschnittliche Bevölkerung, Bundesländer, Nationalität, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "26.06.2025 18:11:30h", + "Information": "false" + }, + { + "Code": "12411LJ006", + "Content": "Fortschreibung des Bevölkerungsstandes, Durchschnittliche Bevölkerung, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "26.06.2025 18:10:33h", + "Information": "false" + }, + { + "Code": "12411LJ007", + "Content": "Fortschreibung des Bevölkerungsstandes, Durchschnittliche Bevölkerung, Bundesländer, Nationalität, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "26.06.2025 18:11:27h", + "Information": "false" + }, + { + "Code": "12411LJ050", + "Content": "Fortschreibung des Bevölkerungsstandes, Bevölkerungsdichte, Bundesländer, Stichtag", + "State": "undefiniert", + "Time": "31.12.1995-31.12.2023", + "LatestUpdate": "16.06.2025 13:09:27h", + "Information": "false" + }, + { + "Code": "12411LV001", + "Content": "Fortschreibung des Bevölkerungsstandes, Bevölkerungsstand, Bundesländer, Geschlecht, Stichtag zum Quartalsende", + "State": "undefiniert", + "Time": "31.03.1991-30.09.2025", + "LatestUpdate": "18.12.2025 14:36:12h", + "Information": "false" + }, + { + "Code": "12411LV002", + "Content": "Fortschreibung des Bevölkerungsstandes, Bevölkerungsstand, Bundesländer, Stichtag zum Quartalsende", + "State": "undefiniert", + "Time": "31.03.1991-30.09.2025", + "LatestUpdate": "18.12.2025 14:36:03h", + "Information": "false" + }, + { + "Code": "12421LJ001", + "Content": "Bevölkerungsvorausberechnungen, Vorausberechneter Bevölkerungsstand, Bundesländer, Varianten der Bevölkerungsvorausberechnung, Stichtag", + "State": "undefiniert", + "Time": "31.12.2025-31.12.2070", + "LatestUpdate": "08.12.2025 17:32:02h", + "Information": "false" + }, + { + "Code": "12421LJ002", + "Content": "Bevölkerungsvorausberechnungen, Vorausberechneter Bevölkerungsstand, Bundesländer, Varianten der Bevölkerungsvorausberechnung, Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "31.12.2025-31.12.2070", + "LatestUpdate": "08.12.2025 17:32:02h", + "Information": "false" + }, + { + "Code": "12421LJ003", + "Content": "Bevölkerungsvorausberechnungen, Vorausberechneter Bevölkerungsstand, Bundesländer, Varianten der Bevölkerungsvorausberechnung, Altersjahre (u1-100m), Stichtag", + "State": "undefiniert", + "Time": "31.12.2025-31.12.2070", + "LatestUpdate": "08.12.2025 17:32:02h", + "Information": "false" + }, + { + "Code": "12421LJ004", + "Content": "Bevölkerungsvorausberechnungen, Vorausberechneter Bevölkerungsstand, Bundesländer, Varianten der Bevölkerungsvorausberechnung, Altersjahre (u1-100m), Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "31.12.2025-31.12.2070", + "LatestUpdate": "08.12.2025 17:32:02h", + "Information": "false" + }, + { + "Code": "12421LJ100", + "Content": "Bevölkerungsvorausberechnungen, Vorausberechnete Privathaushalte, Bundesländer, Varianten der Haushaltsvorausberechnung, Jahr", + "State": "undefiniert", + "Time": "2019-2040", + "LatestUpdate": "28.02.2020 16:37:25h", + "Information": "false" + }, + { + "Code": "12421LJ101", + "Content": "Bevölkerungsvorausberechnungen, Vorausberechnete Privathaushalte, Bundesländer, Varianten der Haushaltsvorausberechnung, Haushaltsgröße, Jahr", + "State": "undefiniert", + "Time": "2019-2040", + "LatestUpdate": "28.02.2020 16:37:25h", + "Information": "false" + }, + { + "Code": "12521LJ001", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 16:10:17h", + "Information": "false" + }, + { + "Code": "12521LJ002", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:30:57h", + "Information": "false" + }, + { + "Code": "12521LJ003", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:31:13h", + "Information": "false" + }, + { + "Code": "12521LJ004", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Migrantengeneration, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 16:14:50h", + "Information": "false" + }, + { + "Code": "12521LJ005", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Migrantengeneration, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 16:18:10h", + "Information": "false" + }, + { + "Code": "12521LJ006", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Migrantengeneration, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:31:06h", + "Information": "false" + }, + { + "Code": "12521LJ007", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:31:59h", + "Information": "false" + }, + { + "Code": "12521LJ008", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:32:18h", + "Information": "false" + }, + { + "Code": "12521LJ009", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:51:56h", + "Information": "false" + }, + { + "Code": "12521LJ010", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer (Abgrenzung Einbürgerungen), Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:28:50h", + "Information": "false" + }, + { + "Code": "12521LJ011", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer (Abgrenzung Einbürgerungen), Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:29:02h", + "Information": "false" + }, + { + "Code": "12521LJ012", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer (Abgrenzung Einbürgerungen), Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:53:03h", + "Information": "false" + }, + { + "Code": "12521LJ013", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Ländergruppierungen, Ausgewählte Aufenthaltstitel, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:33:03h", + "Information": "false" + }, + { + "Code": "12521LJ014", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Familienstand, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:32:42h", + "Information": "false" + }, + { + "Code": "12521LJ015", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Familienstand, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:52:08h", + "Information": "false" + }, + { + "Code": "12521LJ016", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Familienstand, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:55:15h", + "Information": "false" + }, + { + "Code": "12521LJ017", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Registerbewegungen (regional), Staatsangehörigkeit, Jahr", + "State": "undefiniert", + "Time": "2013-2024", + "LatestUpdate": "14.04.2025 15:47:27h", + "Information": "false" + }, + { + "Code": "12521LJ018", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Registerbewegungen (regional), Ländergruppierungen, Jahr", + "State": "undefiniert", + "Time": "2013-2024", + "LatestUpdate": "14.04.2025 15:47:59h", + "Information": "false" + }, + { + "Code": "12521LJ019", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Registerbewegungen (regional), Jahr", + "State": "undefiniert", + "Time": "2013-2024", + "LatestUpdate": "14.04.2025 15:48:06h", + "Information": "false" + }, + { + "Code": "12521LJ020", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Registerzu- und abgänge (regional), Staatsangehörigkeit, Jahr", + "State": "undefiniert", + "Time": "2013-2024", + "LatestUpdate": "14.04.2025 15:50:15h", + "Information": "false" + }, + { + "Code": "12521LJ021", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Registerzu- und abgänge (regional), Ländergruppierungen, Jahr", + "State": "undefiniert", + "Time": "2013-2024", + "LatestUpdate": "14.04.2025 16:06:58h", + "Information": "false" + }, + { + "Code": "12521LJ022", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Registerzu- und abgänge (regional), Jahr", + "State": "undefiniert", + "Time": "2013-2024", + "LatestUpdate": "14.04.2025 15:36:11h", + "Information": "false" + }, + { + "Code": "12521LJ023", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer, Registerabgänge (regional), Staatsangehörigkeit, Jahr", + "State": "undefiniert", + "Time": "2013-2024", + "LatestUpdate": "14.04.2025 15:45:21h", + "Information": "false" + }, + { + "Code": "12521LJ024", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer, Registerabgänge (regional), Ländergruppierungen, Jahr", + "State": "undefiniert", + "Time": "2013-2024", + "LatestUpdate": "14.04.2025 15:42:54h", + "Information": "false" + }, + { + "Code": "12521LJ025", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Aufenthaltsdauer, Registerabgänge (regional), Jahr", + "State": "undefiniert", + "Time": "2013-2024", + "LatestUpdate": "14.04.2025 15:43:27h", + "Information": "false" + }, + { + "Code": "12521LJ026", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "30.09.1980-31.12.2024", + "LatestUpdate": "14.04.2025 15:49:13h", + "Information": "false" + }, + { + "Code": "12521LJ027", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "30.09.1980-31.12.2024", + "LatestUpdate": "14.04.2025 15:49:20h", + "Information": "false" + }, + { + "Code": "12521LJ028", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "30.09.1980-31.12.2024", + "LatestUpdate": "14.04.2025 15:49:16h", + "Information": "false" + }, + { + "Code": "12521LJ029", + "Content": "Ausländerstatistik, Durchschnittsalter der Ausländer, Durchschnittliche Aufenthaltsdauer der Ausländer, Bundesländer, Geschlecht, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:49:30h", + "Information": "false" + }, + { + "Code": "12521LJ030", + "Content": "Ausländerstatistik, Durchschnittsalter der Ausländer, Durchschnittliche Aufenthaltsdauer der Ausländer, Bundesländer, Geschlecht, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:49:04h", + "Information": "false" + }, + { + "Code": "12521LJ031", + "Content": "Ausländerstatistik, Durchschnittsalter der Ausländer, Durchschnittliche Aufenthaltsdauer der Ausländer, Bundesländer, Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:48:23h", + "Information": "false" + }, + { + "Code": "12521LJ032", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "30.09.1980-31.12.2024", + "LatestUpdate": "14.04.2025 15:48:33h", + "Information": "false" + }, + { + "Code": "12521LJ033", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "30.09.1980-31.12.2024", + "LatestUpdate": "14.04.2025 15:48:27h", + "Information": "false" + }, + { + "Code": "12521LJ034", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Stichtag", + "State": "undefiniert", + "Time": "30.09.1980-31.12.2024", + "LatestUpdate": "14.04.2025 15:49:38h", + "Information": "false" + }, + { + "Code": "12521LJ035", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Altersjahre (u1-95m, unbekannt), Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:51:52h", + "Information": "false" + }, + { + "Code": "12521LJ036", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Altersjahre (u1-95m, unbekannt), Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:55:11h", + "Information": "false" + }, + { + "Code": "12521LJ037", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Altersjahre (u1-95m, unbekannt), Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:49:35h", + "Information": "false" + }, + { + "Code": "12521LJ038", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Familienstand, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:54:07h", + "Information": "false" + }, + { + "Code": "12521LJ039", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Familienstand, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:53:51h", + "Information": "false" + }, + { + "Code": "12521LJ040", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Familienstand, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:53:44h", + "Information": "false" + }, + { + "Code": "12521LJ041", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Staatsangehörigkeit, Aufenthaltstitel, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2019", + "LatestUpdate": "22.04.2020 14:43:18h", + "Information": "false" + }, + { + "Code": "12521LJ042", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Ländergruppierungen, Aufenthaltstitel, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2019", + "LatestUpdate": "16.02.2021 18:31:33h", + "Information": "false" + }, + { + "Code": "12521LJ043", + "Content": "Ausländerstatistik, Ausländer, Bundesländer, Geschlecht, Staatsangehörigkeit, Ausgewählte Aufenthaltstitel, Stichtag", + "State": "undefiniert", + "Time": "31.12.1998-31.12.2024", + "LatestUpdate": "14.04.2025 15:53:40h", + "Information": "false" + }, + { + "Code": "12531LJ001", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:37:46h", + "Information": "false" + }, + { + "Code": "12531LJ002", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:36:13h", + "Information": "false" + }, + { + "Code": "12531LJ003", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:33:33h", + "Information": "false" + }, + { + "Code": "12531LJ004", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Migrantengeneration, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:35:02h", + "Information": "false" + }, + { + "Code": "12531LJ005", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Migrantengeneration, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:33:08h", + "Information": "false" + }, + { + "Code": "12531LJ006", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Altersjahre (u1-95m, unbekannt), Migrantengeneration, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:29:57h", + "Information": "false" + }, + { + "Code": "12531LJ007", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Aufenthaltsdauer, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:30:24h", + "Information": "false" + }, + { + "Code": "12531LJ008", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Aufenthaltsdauer, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:38:52h", + "Information": "false" + }, + { + "Code": "12531LJ009", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Aufenthaltsdauer, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:38:12h", + "Information": "false" + }, + { + "Code": "12531LJ010", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Aufenthaltsdauer (Abgrenzung Einbürgerungen), Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:33:19h", + "Information": "false" + }, + { + "Code": "12531LJ011", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Aufenthaltsdauer (Abgrenzung Einbürgerungen), Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:38:09h", + "Information": "false" + }, + { + "Code": "12531LJ012", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Aufenthaltsdauer (Abgrenzung Einbürgerungen), Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:37:50h", + "Information": "false" + }, + { + "Code": "12531LJ013", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Ländergruppierungen, Schutzstatuskategorie, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:38:01h", + "Information": "false" + }, + { + "Code": "12531LJ014", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Familienstand, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:33:54h", + "Information": "false" + }, + { + "Code": "12531LJ015", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Familienstand, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:33:42h", + "Information": "false" + }, + { + "Code": "12531LJ016", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Familienstand, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:33:27h", + "Information": "false" + }, + { + "Code": "12531LJ026", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:35:08h", + "Information": "false" + }, + { + "Code": "12531LJ027", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:33:24h", + "Information": "false" + }, + { + "Code": "12531LJ028", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:30:00h", + "Information": "false" + }, + { + "Code": "12531LJ029", + "Content": "Statistik über Schutzsuchende, Durchschnittsalter der Schutzsuchenden, Durchschnittl. Aufenthaltsdauer d. Schutzsuchenden, Bundesländer, Geschlecht, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:30:07h", + "Information": "false" + }, + { + "Code": "12531LJ030", + "Content": "Statistik über Schutzsuchende, Durchschnittsalter der Schutzsuchenden, Durchschnittl. Aufenthaltsdauer d. Schutzsuchenden, Bundesländer, Geschlecht, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:39:58h", + "Information": "false" + }, + { + "Code": "12531LJ031", + "Content": "Statistik über Schutzsuchende, Durchschnittsalter der Schutzsuchenden, Durchschnittl. Aufenthaltsdauer d. Schutzsuchenden, Bundesländer, Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:38:39h", + "Information": "false" + }, + { + "Code": "12531LJ032", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:40:28h", + "Information": "false" + }, + { + "Code": "12531LJ033", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:40:32h", + "Information": "false" + }, + { + "Code": "12531LJ034", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:40:35h", + "Information": "false" + }, + { + "Code": "12531LJ035", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Altersjahre (u1-95m, unbekannt), Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:41:21h", + "Information": "false" + }, + { + "Code": "12531LJ036", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Altersjahre (u1-95m, unbekannt), Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:41:57h", + "Information": "false" + }, + { + "Code": "12531LJ037", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Altersjahre (u1-95m, unbekannt), Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:39:06h", + "Information": "false" + }, + { + "Code": "12531LJ038", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Familienstand, Staatsangehörigkeit, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:39:01h", + "Information": "false" + }, + { + "Code": "12531LJ039", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Familienstand, Ländergruppierungen, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:39:33h", + "Information": "false" + }, + { + "Code": "12531LJ040", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Familienstand, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:39:27h", + "Information": "false" + }, + { + "Code": "12531LJ041", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Staatsangehörigkeit, Schutzstatus, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:38:36h", + "Information": "false" + }, + { + "Code": "12531LJ042", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Ländergruppierungen, Schutzstatus, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:40:23h", + "Information": "false" + }, + { + "Code": "12531LJ043", + "Content": "Statistik über Schutzsuchende, Schutzsuchende, Bundesländer, Geschlecht, Staatsangehörigkeit, Schutzstatuskategorie, Stichtag", + "State": "undefiniert", + "Time": "31.12.2007-31.12.2024", + "LatestUpdate": "27.06.2025 18:39:53h", + "Information": "false" + }, + { + "Code": "12611LJ002", + "Content": "Statistik der Eheschließungen, Eheschließungen, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "1990-2024", + "LatestUpdate": "25.06.2025 18:10:27h", + "Information": "false" + }, + { + "Code": "12611LM001", + "Content": "Statistik der Eheschließungen, Eheschließungen, Bundesländer, Monate, Jahr", + "State": "undefiniert", + "Time": "Januar 1990-November 2025", + "LatestUpdate": "18.02.2026 18:50:43h", + "Information": "false" + }, + { + "Code": "12612LJ001", + "Content": "Statistik der Geburten, Lebendgeborene, Totgeborene, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "1990-2024", + "LatestUpdate": "30.06.2025 18:06:30h", + "Information": "false" + }, + { + "Code": "12612LJ002", + "Content": "Statistik der Geburten, Lebendgeborene, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "1990-2024", + "LatestUpdate": "30.06.2025 18:06:27h", + "Information": "false" + }, + { + "Code": "12612LJ003", + "Content": "Statistik der Geburten, Lebendgeborene, Bundesländer, Familienstand der Eltern, Jahr", + "State": "undefiniert", + "Time": "1991-2024", + "LatestUpdate": "30.06.2025 18:06:33h", + "Information": "false" + }, + { + "Code": "12612LJ004", + "Content": "Statistik der Geburten, Lebendgeborene, Bundesländer, Staatsangehörigkeit des Kindes und der Eltern, Jahr", + "State": "undefiniert", + "Time": "1990-2024", + "LatestUpdate": "30.06.2025 18:05:52h", + "Information": "false" + }, + { + "Code": "12612LJ005", + "Content": "Statistik der Geburten, Zusammengefasste Geburtenziffer (je Frau), Bundesländer, Altersgruppen (15-u45, 15-u50), Jahr", + "State": "undefiniert", + "Time": "1991-2024", + "LatestUpdate": "16.07.2025 18:05:31h", + "Information": "false" + }, + { + "Code": "12612LJ006", + "Content": "Statistik der Geburten, Nettoreproduktionsrate, Bundesländer, Altersgruppen (15-u45, 15-u50), Jahr", + "State": "undefiniert", + "Time": "2004-2010", + "LatestUpdate": "24.04.2017 15:27:17h", + "Information": "false" + }, + { + "Code": "12612LM001", + "Content": "Statistik der Geburten, Lebendgeborene, Bundesländer, Monate, Jahr", + "State": "undefiniert", + "Time": "Januar 1990-November 2025", + "LatestUpdate": "18.02.2026 18:40:46h", + "Information": "false" + }, + { + "Code": "12612LM002", + "Content": "Statistik der Geburten, Lebendgeborene, Bundesländer, Geschlecht, Monate, Jahr", + "State": "undefiniert", + "Time": "Januar 1990-November 2025", + "LatestUpdate": "18.02.2026 18:40:50h", + "Information": "false" + }, + { + "Code": "12613LJ001", + "Content": "Statistik der Sterbefälle, Gestorbene, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "1990-2025", + "LatestUpdate": "09.02.2026 18:40:08h", + "Information": "false" + }, + { + "Code": "12613LJ002", + "Content": "Statistik der Sterbefälle, Gestorbene, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "1990-2025", + "LatestUpdate": "09.02.2026 18:40:14h", + "Information": "false" + }, + { + "Code": "12613LM001", + "Content": "Statistik der Sterbefälle, Gestorbene, Bundesländer, Monate, Jahr", + "State": "undefiniert", + "Time": "Januar 1990-Dezember 2025", + "LatestUpdate": "09.02.2026 18:40:18h", + "Information": "false" + }, + { + "Code": "12613LM002", + "Content": "Statistik der Sterbefälle, Gestorbene, Bundesländer, Geschlecht, Monate, Jahr", + "State": "undefiniert", + "Time": "Januar 1990-Dezember 2025", + "LatestUpdate": "09.02.2026 18:40:22h", + "Information": "false" + }, + { + "Code": "12621LJ001", + "Content": "Sterbetafeln, Durchschnittliche Lebenserwartung bei Geburt, Bundesländer, Geschlecht, Jahre (Zeitraum)", + "State": "undefiniert", + "Time": "2002/04-2022/24", + "LatestUpdate": "21.07.2025 18:00:46h", + "Information": "false" + }, + { + "Code": "12631LJ001", + "Content": "Statistik rechtskräftiger Urteile in Ehesachen, Ehescheidungen, Ehedauer, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "1997-2024", + "LatestUpdate": "25.06.2025 18:00:43h", + "Information": "false" + }, + { + "Code": "12631LJ002", + "Content": "Statistik rechtskräftiger Urteile in Ehesachen, Ehescheidungen, Gemeinsame minderjährige Kinder, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "1997-2024", + "LatestUpdate": "25.06.2025 18:00:36h", + "Information": "false" + }, + { + "Code": "12631LJ003", + "Content": "Statistik rechtskräftiger Urteile in Ehesachen, Ehescheidungen, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "1990-2024", + "LatestUpdate": "25.06.2025 18:00:50h", + "Information": "false" + }, + { + "Code": "12651LJ001", + "Content": "Begründung von Lebenspartnerschaften, Begründungen von Lebenspartnerschaften, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2014-2017", + "LatestUpdate": "29.08.2018 11:37:32h", + "Information": "false" + }, + { + "Code": "12661LJ001", + "Content": "Aufhebung von Lebenspartnerschaften, Aufhebungen von Lebenspartnerschaften, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2014-2024", + "LatestUpdate": "25.06.2025 18:00:54h", + "Information": "false" + }, + { + "Code": "12661LJ002", + "Content": "Aufhebung von Lebenspartnerschaften, Aufhebungen von Lebenspartnerschaften, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2014-2024", + "LatestUpdate": "25.06.2025 18:00:58h", + "Information": "false" + }, + { + "Code": "12711LJ001", + "Content": "Wanderungsstatistik, Zuzüge aus dem Ausland, Fortzüge in das Ausland, Wanderungssaldo Ausland, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "23.06.2025 18:03:53h", + "Information": "false" + }, + { + "Code": "12711LJ002", + "Content": "Wanderungsstatistik, Zuzüge aus dem Ausland, Fortzüge in das Ausland, Wanderungssaldo Ausland, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "23.06.2025 18:04:46h", + "Information": "false" + }, + { + "Code": "12711LJ003", + "Content": "Wanderungsstatistik, Zuzüge aus dem Ausland, Fortzüge in das Ausland, Wanderungssaldo Ausland, Bundesländer, Nationalität, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "23.06.2025 18:04:34h", + "Information": "false" + }, + { + "Code": "12711LJ004", + "Content": "Wanderungsstatistik, Zuzüge aus dem Ausland, Fortzüge in das Ausland, Wanderungssaldo Ausland, Bundesländer, Geschlecht, Nationalität, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "23.06.2025 18:05:33h", + "Information": "false" + }, + { + "Code": "12711LJ100", + "Content": "Wanderungsstatistik, Zuzüge aus einem anderen Bundesland, Fortzüge in ein anderes Bundesland, Wanderungssaldo Bundesländer, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "23.06.2025 18:05:47h", + "Information": "false" + }, + { + "Code": "12711LJ101", + "Content": "Wanderungsstatistik, Zuzüge aus einem anderen Bundesland, Fortzüge in ein anderes Bundesland, Wanderungssaldo Bundesländer, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "23.06.2025 18:05:27h", + "Information": "false" + }, + { + "Code": "12711LJ102", + "Content": "Wanderungsstatistik, Zuzüge aus einem anderen Bundesland, Fortzüge in ein anderes Bundesland, Wanderungssaldo Bundesländer, Bundesländer, Nationalität, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "23.06.2025 18:05:43h", + "Information": "false" + }, + { + "Code": "12711LJ103", + "Content": "Wanderungsstatistik, Zuzüge aus einem anderen Bundesland, Fortzüge in ein anderes Bundesland, Wanderungssaldo Bundesländer, Bundesländer, Geschlecht, Nationalität, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "23.06.2025 18:05:40h", + "Information": "false" + }, + { + "Code": "12711LJ200", + "Content": "Wanderungsstatistik, Zuzüge, Fortzüge, Wanderungssaldo, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "23.06.2025 18:05:53h", + "Information": "false" + }, + { + "Code": "12711LJ201", + "Content": "Wanderungsstatistik, Zuzüge, Fortzüge, Wanderungssaldo, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "23.06.2025 18:05:50h", + "Information": "false" + }, + { + "Code": "12711LJ202", + "Content": "Wanderungsstatistik, Zuzüge, Fortzüge, Wanderungssaldo, Bundesländer, Nationalität, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "23.06.2025 18:05:30h", + "Information": "false" + }, + { + "Code": "12711LJ203", + "Content": "Wanderungsstatistik, Zuzüge, Fortzüge, Wanderungssaldo, Bundesländer, Geschlecht, Nationalität, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "23.06.2025 18:05:36h", + "Information": "false" + }, + { + "Code": "13111LV001", + "Content": "Statistik d. sozialversicherungspfl. Beschäftigten, Sozialvers.pflichtig Beschäftigte am Arbeitsort, Bundesländer, Stichtag", + "State": "undefiniert", + "Time": "31.03.2008-30.06.2025", + "LatestUpdate": "21.01.2026 08:27:15h", + "Information": "false" + }, + { + "Code": "13111LV002", + "Content": "Statistik d. sozialversicherungspfl. Beschäftigten, Sozialvers.pflichtig Beschäftigte am Arbeitsort, Bundesländer, Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "31.03.2008-30.06.2025", + "LatestUpdate": "21.01.2026 08:27:18h", + "Information": "false" + }, + { + "Code": "13111LV003", + "Content": "Statistik d. sozialversicherungspfl. Beschäftigten, Sozialvers.pflichtig Beschäftigte am Arbeitsort, Bundesländer, WZ2008 (Abschnitte): Sozialvers.pfl. Beschäftigte, Stichtag", + "State": "undefiniert", + "Time": "31.03.2008-30.06.2025", + "LatestUpdate": "21.01.2026 08:27:12h", + "Information": "false" + }, + { + "Code": "13211LJ001", + "Content": "Arbeitsmarktstatistik der Bundesagentur für Arbeit, Arbeitslose, Arbeitslosenquote aller zivilen Erwerbspersonen, Arbeitslosenquote d. abhängigen ziv. Erwerbspers., Gemeldete Arbeitsstellen, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "1991-2025", + "LatestUpdate": "08.01.2026 14:42:01h", + "Information": "false" + }, + { + "Code": "13211LJ002", + "Content": "Arbeitsmarktstatistik der Bundesagentur für Arbeit, Arbeitslose, Arbeitslosenquote aller zivilen Erwerbspersonen, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "1991-2025", + "LatestUpdate": "08.01.2026 14:41:42h", + "Information": "false" + }, + { + "Code": "13211LM001", + "Content": "Arbeitsmarktstatistik der Bundesagentur für Arbeit, Arbeitslose, Arbeitslosenquote aller zivilen Erwerbspersonen, Arbeitslosenquote d. abhängigen ziv. Erwerbspers., Gemeldete Arbeitsstellen, Bundesländer, Monate, Jahr", + "State": "undefiniert", + "Time": "Januar 2005-Januar 2026", + "LatestUpdate": "30.01.2026 12:11:14h", + "Information": "false" + }, + { + "Code": "13211LM002", + "Content": "Arbeitsmarktstatistik der Bundesagentur für Arbeit, Arbeitslose, Arbeitslosenquote aller zivilen Erwerbspersonen, Bundesländer, Geschlecht, Monate, Jahr", + "State": "undefiniert", + "Time": "Januar 2005-Januar 2026", + "LatestUpdate": "30.01.2026 12:11:28h", + "Information": "false" + }, + { + "Code": "13311LJ001", + "Content": "Länderberechnung Erwerbstätige, Erwerbstätige (Inlandskonzept), Arbeitnehmer (Inlandskonzept), Selbständige u.mithelf.Familienangehörige (Inland), Bundesländer, Jahr", + "State": "undefiniert", + "Time": "1991-2024", + "LatestUpdate": "31.03.2025 18:01:02h", + "Information": "false" + }, + { + "Code": "13311LJ002", + "Content": "Länderberechnung Erwerbstätige, Erwerbstätige (Inlandskonzept), Arbeitnehmer (Inlandskonzept), Selbständige u.mithelf.Familienangehörige (Inland), Bundesländer, WZ2008 (Abschnitte, Zusammenfass.): VGR der Länder, Jahr", + "State": "undefiniert", + "Time": "1991-2024", + "LatestUpdate": "31.03.2025 18:00:51h", + "Information": "false" + }, + { + "Code": "14111LW001", + "Content": "Allgemeine Bundestagswahlstatistik, Wahlberechtigte, Wähler, Wahlbeteiligung, Gültige Erststimmen, Anteil gültiger Erststimmen, Gültige Zweitstimmen, Anteil gültiger Zweitstimmen, Ungültige Erststimmen, Anteil ungültiger Erststimmen, Ungültige Zweitstimmen, Anteil ungültiger Zweitstimmen, Bundesländer, Stichtag", + "State": "undefiniert", + "Time": "22.09.2013-23.02.2025", + "LatestUpdate": "19.03.2025 08:43:34h", + "Information": "false" + }, + { + "Code": "14111LW002", + "Content": "Allgemeine Bundestagswahlstatistik, Gültige Erststimmen, Anteil gültiger Erststimmen, Gültige Zweitstimmen, Anteil gültiger Zweitstimmen, Bundesländer, Parteien (Allgemeine Bundestagswahlstatistik), Stichtag", + "State": "undefiniert", + "Time": "22.09.2013-23.02.2025", + "LatestUpdate": "19.03.2025 08:43:37h", + "Information": "false" + }, + { + "Code": "14121LW001", + "Content": "Repräsentative Bundestagswahlstatistik, Anteil gültiger Zweitstimmen, Gültige Zweitstimmen, Bundesländer, Parteien, Altersgruppen (18-60m), Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "22.09.2002-27.09.2009", + "LatestUpdate": "10.10.2017 14:58:18h", + "Information": "false" + }, + { + "Code": "14121LW002", + "Content": "Repräsentative Bundestagswahlstatistik, Anteil gültiger Zweitstimmen, Gültige Zweitstimmen, Bundesländer, Parteien, Altersgruppen (18-60m), Stichtag", + "State": "undefiniert", + "Time": "22.09.2002-27.09.2009", + "LatestUpdate": "10.10.2017 14:58:20h", + "Information": "false" + }, + { + "Code": "14121LW003", + "Content": "Repräsentative Bundestagswahlstatistik, Anteil gültiger Zweitstimmen, Gültige Zweitstimmen, Bundesländer, Parteien, Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "22.09.2002-23.02.2025", + "LatestUpdate": "26.06.2025 09:51:35h", + "Information": "false" + }, + { + "Code": "14121LW004", + "Content": "Repräsentative Bundestagswahlstatistik, Anteil gültiger Zweitstimmen, Gültige Zweitstimmen, Bundesländer, Parteien, Altersgruppen (18-70m), Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "22.09.2013-23.02.2025", + "LatestUpdate": "26.06.2025 09:51:45h", + "Information": "false" + }, + { + "Code": "14121LW005", + "Content": "Repräsentative Bundestagswahlstatistik, Anteil gültiger Zweitstimmen, Gültige Zweitstimmen, Bundesländer, Parteien, Altersgruppen (18-70m), Stichtag", + "State": "undefiniert", + "Time": "22.09.2013-23.02.2025", + "LatestUpdate": "26.06.2025 09:51:40h", + "Information": "false" + }, + { + "Code": "14211LW001", + "Content": "Allgemeine Europawahlstatistik, Gültige Stimmen, Anteil gültiger Stimmen, Parteien (Allgemeine Europawahlstatistik), Bundesländer, Stichtag", + "State": "undefiniert", + "Time": "12.06.1994-09.06.2024", + "LatestUpdate": "05.07.2024 12:03:38h", + "Information": "false" + }, + { + "Code": "14221LW001", + "Content": "Repräsentative Europawahlstatistik, Anteil gültiger Stimmen, Bundesländer, Geschlecht, Altersgruppen (18-60m), Parteien, Stichtag", + "State": "undefiniert", + "Time": "13.06.1999-07.06.2009", + "LatestUpdate": "30.09.2019 15:26:17h", + "Information": "false" + }, + { + "Code": "14221LW002", + "Content": "Repräsentative Europawahlstatistik, Anteil gültiger Stimmen, Bundesländer, Geschlecht, Altersgruppen (18-70m), Parteien, Stichtag", + "State": "undefiniert", + "Time": "25.05.2014-26.05.2019", + "LatestUpdate": "02.10.2019 10:00:28h", + "Information": "false" + }, + { + "Code": "14221LW003", + "Content": "Repräsentative Europawahlstatistik, Anteil gültiger Stimmen, Bundesländer, Geschlecht, Altersgruppen (16-70m), Parteien, Stichtag", + "State": "undefiniert", + "Time": "09.06.2024", + "LatestUpdate": "26.06.2025 11:10:54h", + "Information": "false" + }, + { + "Code": "21111LJ001", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:35:48h", + "Information": "false" + }, + { + "Code": "21111LJ002", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Geschlecht, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:37:50h", + "Information": "false" + }, + { + "Code": "21111LJ003", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Jahrgangsstufen, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:35:18h", + "Information": "false" + }, + { + "Code": "21111LJ004", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Schulart, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:37:47h", + "Information": "false" + }, + { + "Code": "21111LJ005", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Geschlecht, Jahrgangsstufen, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:39:18h", + "Information": "false" + }, + { + "Code": "21111LJ006", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Geschlecht, Schulart, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:35:51h", + "Information": "false" + }, + { + "Code": "21111LJ007", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Jahrgangsstufen, Schulart, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:37:32h", + "Information": "false" + }, + { + "Code": "21111LJ008", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler, Geschlecht, Jahrgangsstufen, Schulart, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:35:23h", + "Information": "false" + }, + { + "Code": "21111LJ009", + "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1999/00-2024/25", + "LatestUpdate": "29.09.2025 19:35:27h", + "Information": "false" + }, + { + "Code": "21111LJ010", + "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Geschlecht, Schuljahr", + "State": "undefiniert", + "Time": "1999/00-2024/25", + "LatestUpdate": "29.09.2025 19:37:28h", + "Information": "false" + }, + { + "Code": "21111LJ011", + "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Einschulungsart, Schuljahr", + "State": "undefiniert", + "Time": "1999/00-2024/25", + "LatestUpdate": "29.09.2025 19:39:38h", + "Information": "false" + }, + { + "Code": "21111LJ012", + "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Schulart (Einschulung), Schuljahr", + "State": "undefiniert", + "Time": "1999/00-2024/25", + "LatestUpdate": "29.09.2025 19:39:44h", + "Information": "false" + }, + { + "Code": "21111LJ013", + "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Geschlecht, Einschulungsart, Schuljahr", + "State": "undefiniert", + "Time": "1999/00-2024/25", + "LatestUpdate": "29.09.2025 19:41:55h", + "Information": "false" + }, + { + "Code": "21111LJ014", + "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Geschlecht, Schulart (Einschulung), Schuljahr", + "State": "undefiniert", + "Time": "1999/00-2024/25", + "LatestUpdate": "29.09.2025 19:37:25h", + "Information": "false" + }, + { + "Code": "21111LJ015", + "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Einschulungsart, Schulart (Einschulung), Schuljahr", + "State": "undefiniert", + "Time": "1999/00-2024/25", + "LatestUpdate": "29.09.2025 19:39:35h", + "Information": "false" + }, + { + "Code": "21111LJ016", + "Content": "Statistik der allgemeinbildenden Schulen, Schulanfänger, Bundesländer, Geschlecht, Einschulungsart, Schulart (Einschulung), Schuljahr", + "State": "undefiniert", + "Time": "1999/00-2024/25", + "LatestUpdate": "29.09.2025 19:39:48h", + "Information": "false" + }, + { + "Code": "21111LJ017", + "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1997/98-2023/24", + "LatestUpdate": "29.09.2025 19:31:27h", + "Information": "false" + }, + { + "Code": "21111LJ018", + "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Geschlecht, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1997/98-2023/24", + "LatestUpdate": "29.09.2025 19:31:33h", + "Information": "false" + }, + { + "Code": "21111LJ019", + "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Schulabschlüsse, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1997/98-2023/24", + "LatestUpdate": "29.09.2025 19:31:20h", + "Information": "false" + }, + { + "Code": "21111LJ020", + "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Schulart (mit Abschlussmöglichkeit), Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1997/98-2023/24", + "LatestUpdate": "29.09.2025 19:31:30h", + "Information": "false" + }, + { + "Code": "21111LJ021", + "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Geschlecht, Schulabschlüsse, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1997/98-2023/24", + "LatestUpdate": "29.09.2025 19:31:24h", + "Information": "false" + }, + { + "Code": "21111LJ022", + "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Geschlecht, Schulart (mit Abschlussmöglichkeit), Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1997/98-2023/24", + "LatestUpdate": "29.09.2025 19:30:33h", + "Information": "false" + }, + { + "Code": "21111LJ023", + "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Schulabschlüsse, Schulart (mit Abschlussmöglichkeit), Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1997/98-2023/24", + "LatestUpdate": "29.09.2025 19:30:40h", + "Information": "false" + }, + { + "Code": "21111LJ024", + "Content": "Statistik der allgemeinbildenden Schulen, Absolventen und Abgänger, Geschlecht, Schulabschlüsse, Schulart (mit Abschlussmöglichkeit), Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1997/98-2023/24", + "LatestUpdate": "29.09.2025 19:30:44h", + "Information": "false" + }, + { + "Code": "21111LJ025", + "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:37:39h", + "Information": "false" + }, + { + "Code": "21111LJ026", + "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Geschlecht, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:39:24h", + "Information": "false" + }, + { + "Code": "21111LJ027", + "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Jahrgangsstufen, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:39:21h", + "Information": "false" + }, + { + "Code": "21111LJ028", + "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Schulart, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:35:45h", + "Information": "false" + }, + { + "Code": "21111LJ029", + "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Geschlecht, Jahrgangsstufen, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:35:34h", + "Information": "false" + }, + { + "Code": "21111LJ030", + "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Geschlecht, Schulart, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:37:21h", + "Information": "false" + }, + { + "Code": "21111LJ031", + "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Jahrgangsstufen, Schulart, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:37:18h", + "Information": "false" + }, + { + "Code": "21111LJ032", + "Content": "Statistik der allgemeinbildenden Schulen, Wiederholer, Bundesländer, Geschlecht, Jahrgangsstufen, Schulart, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:37:43h", + "Information": "false" + }, + { + "Code": "21111LJ033", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:41:29h", + "Information": "false" + }, + { + "Code": "21111LJ034", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Jahrgangsstufen, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:41:18h", + "Information": "false" + }, + { + "Code": "21111LJ035", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Schulart, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:39:41h", + "Information": "false" + }, + { + "Code": "21111LJ036", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Fremdsprachen, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:35:30h", + "Information": "false" + }, + { + "Code": "21111LJ037", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Jahrgangsstufen, Schulart, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:41:42h", + "Information": "false" + }, + { + "Code": "21111LJ038", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Jahrgangsstufen, Fremdsprachen, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:41:37h", + "Information": "false" + }, + { + "Code": "21111LJ039", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Schulart, Fremdsprachen, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:41:52h", + "Information": "false" + }, + { + "Code": "21111LJ040", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit Fremdsprachen-Unterricht, Bundesländer, Jahrgangsstufen, Schulart, Fremdsprachen, Schuljahr", + "State": "undefiniert", + "Time": "1998/99-2024/25", + "LatestUpdate": "29.09.2025 19:41:26h", + "Information": "false" + }, + { + "Code": "21111LJ041", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2000/01-2024/25", + "LatestUpdate": "29.09.2025 19:41:48h", + "Information": "false" + }, + { + "Code": "21111LJ042", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Geschlecht, Schuljahr", + "State": "undefiniert", + "Time": "2014/15-2024/25", + "LatestUpdate": "29.09.2025 19:41:32h", + "Information": "false" + }, + { + "Code": "21111LJ043", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Schulart, Schuljahr", + "State": "undefiniert", + "Time": "2000/01-2024/25", + "LatestUpdate": "29.09.2025 19:41:45h", + "Information": "false" + }, + { + "Code": "21111LJ044", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Förderschwerpunkte, Schuljahr", + "State": "undefiniert", + "Time": "2000/01-2024/25", + "LatestUpdate": "29.09.2025 19:37:36h", + "Information": "false" + }, + { + "Code": "21111LJ045", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Geschlecht, Schulart, Schuljahr", + "State": "undefiniert", + "Time": "2014/15-2024/25", + "LatestUpdate": "29.09.2025 19:39:27h", + "Information": "false" + }, + { + "Code": "21111LJ046", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Geschlecht, Förderschwerpunkte, Schuljahr", + "State": "undefiniert", + "Time": "2014/15-2024/25", + "LatestUpdate": "29.09.2025 19:35:42h", + "Information": "false" + }, + { + "Code": "21111LJ047", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Schulart, Förderschwerpunkte, Schuljahr", + "State": "undefiniert", + "Time": "2000/01-2024/25", + "LatestUpdate": "29.09.2025 19:39:31h", + "Information": "false" + }, + { + "Code": "21111LJ048", + "Content": "Statistik der allgemeinbildenden Schulen, Schüler mit sonderpädagogischer Förderung, Bundesländer, Geschlecht, Schulart, Förderschwerpunkte, Schuljahr", + "State": "undefiniert", + "Time": "2014/15-2024/25", + "LatestUpdate": "29.09.2025 19:35:38h", + "Information": "false" + }, + { + "Code": "21121LJ001", + "Content": "Statistik der beruflichen Schulen, Schüler, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:04:29h", + "Information": "false" + }, + { + "Code": "21121LJ002", + "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:02:10h", + "Information": "false" + }, + { + "Code": "21121LJ003", + "Content": "Statistik der beruflichen Schulen, Schüler, Geschlecht, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:06:18h", + "Information": "false" + }, + { + "Code": "21121LJ004", + "Content": "Statistik der beruflichen Schulen, Schüler, Zeitform des Unterrichts, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:04:20h", + "Information": "false" + }, + { + "Code": "21121LJ005", + "Content": "Statistik der beruflichen Schulen, Schüler, Nationalität, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:04:26h", + "Information": "false" + }, + { + "Code": "21121LJ006", + "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Geschlecht, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:04:23h", + "Information": "false" + }, + { + "Code": "21121LJ007", + "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Zeitform des Unterrichts, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:04:13h", + "Information": "false" + }, + { + "Code": "21121LJ008", + "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Nationalität, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:06:07h", + "Information": "false" + }, + { + "Code": "21121LJ009", + "Content": "Statistik der beruflichen Schulen, Schüler, Geschlecht, Zeitform des Unterrichts, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:06:21h", + "Information": "false" + }, + { + "Code": "21121LJ010", + "Content": "Statistik der beruflichen Schulen, Schüler, Geschlecht, Nationalität, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:00:14h", + "Information": "false" + }, + { + "Code": "21121LJ011", + "Content": "Statistik der beruflichen Schulen, Schüler, Zeitform des Unterrichts, Nationalität, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:02:17h", + "Information": "false" + }, + { + "Code": "21121LJ012", + "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Geschlecht, Zeitform des Unterrichts, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:06:15h", + "Information": "false" + }, + { + "Code": "21121LJ013", + "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Geschlecht, Nationalität, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:02:30h", + "Information": "false" + }, + { + "Code": "21121LJ014", + "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Zeitform des Unterrichts, Nationalität, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:04:33h", + "Information": "false" + }, + { + "Code": "21121LJ015", + "Content": "Statistik der beruflichen Schulen, Schüler, Geschlecht, Zeitform des Unterrichts, Nationalität, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:06:24h", + "Information": "false" + }, + { + "Code": "21121LJ016", + "Content": "Statistik der beruflichen Schulen, Schüler, Schulart (beruflich), Geschlecht, Zeitform des Unterrichts, Nationalität, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2001/02-2024/25", + "LatestUpdate": "20.10.2025 18:06:11h", + "Information": "false" + }, + { + "Code": "21121LJ017", + "Content": "Statistik der beruflichen Schulen, Schüler mit Fremdsprachen-Unterricht, Fremdsprachen, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2009/10-2024/25", + "LatestUpdate": "20.10.2025 18:04:17h", + "Information": "false" + }, + { + "Code": "21121LJ018", + "Content": "Statistik der beruflichen Schulen, Schüler mit Fremdsprachen-Unterricht, Schulart (beruflich), Fremdsprachen, Bundesländer, Schuljahr", + "State": "undefiniert", + "Time": "2009/10-2024/25", + "LatestUpdate": "20.10.2025 18:04:37h", + "Information": "false" + }, + { + "Code": "21211LJ001", + "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Stichtag", + "State": "undefiniert", + "Time": "31.12.2008-31.12.2024", + "LatestUpdate": "27.08.2025 18:03:41h", + "Information": "false" + }, + { + "Code": "21211LJ002", + "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "31.12.2008-31.12.2024", + "LatestUpdate": "27.08.2025 18:03:38h", + "Information": "false" + }, + { + "Code": "21211LJ003", + "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Nationalität, Stichtag", + "State": "undefiniert", + "Time": "31.12.2008-31.12.2024", + "LatestUpdate": "27.08.2025 18:05:15h", + "Information": "false" + }, + { + "Code": "21211LJ004", + "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Geschlecht, Nationalität, Stichtag", + "State": "undefiniert", + "Time": "31.12.2008-31.12.2024", + "LatestUpdate": "27.08.2025 18:05:37h", + "Information": "false" + }, + { + "Code": "21211LJ005", + "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Ausbildungsbereich, Stichtag", + "State": "undefiniert", + "Time": "31.12.2008-31.12.2024", + "LatestUpdate": "27.08.2025 18:01:37h", + "Information": "false" + }, + { + "Code": "21211LJ006", + "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Geschlecht, Ausbildungsbereich, Stichtag", + "State": "undefiniert", + "Time": "31.12.2008-31.12.2024", + "LatestUpdate": "27.08.2025 18:05:12h", + "Information": "false" + }, + { + "Code": "21211LJ007", + "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Nationalität, Ausbildungsbereich, Stichtag", + "State": "undefiniert", + "Time": "31.12.2008-31.12.2024", + "LatestUpdate": "27.08.2025 18:03:35h", + "Information": "false" + }, + { + "Code": "21211LJ008", + "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Geschlecht, Nationalität, Ausbildungsbereich, Stichtag", + "State": "undefiniert", + "Time": "31.12.2008-31.12.2024", + "LatestUpdate": "27.08.2025 18:05:22h", + "Information": "false" + }, + { + "Code": "21211LJ009", + "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Altersjahre (u17-24m), Stichtag", + "State": "undefiniert", + "Time": "31.12.2008-31.12.2024", + "LatestUpdate": "27.08.2025 18:01:12h", + "Information": "false" + }, + { + "Code": "21211LJ010", + "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Geschlecht, Altersjahre (u17-24m), Stichtag", + "State": "undefiniert", + "Time": "31.12.2008-31.12.2024", + "LatestUpdate": "27.08.2025 18:03:15h", + "Information": "false" + }, + { + "Code": "21211LJ011", + "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Schulabschluss, Stichtag", + "State": "undefiniert", + "Time": "31.12.2008-31.12.2024", + "LatestUpdate": "27.08.2025 18:05:25h", + "Information": "false" + }, + { + "Code": "21211LJ012", + "Content": "Berufsbildungsstatistik, Auszubildende, Bundesländer, Geschlecht, Schulabschluss, Stichtag", + "State": "undefiniert", + "Time": "31.12.2008-31.12.2024", + "LatestUpdate": "27.08.2025 18:03:32h", + "Information": "false" + }, + { + "Code": "21211LJ101", + "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2008-2024", + "LatestUpdate": "27.08.2025 18:07:34h", + "Information": "false" + }, + { + "Code": "21211LJ102", + "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2008-2024", + "LatestUpdate": "27.08.2025 18:07:25h", + "Information": "false" + }, + { + "Code": "21211LJ103", + "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Nationalität, Jahr", + "State": "undefiniert", + "Time": "2008-2024", + "LatestUpdate": "27.08.2025 18:07:37h", + "Information": "false" + }, + { + "Code": "21211LJ104", + "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Geschlecht, Nationalität, Jahr", + "State": "undefiniert", + "Time": "2008-2024", + "LatestUpdate": "27.08.2025 18:09:31h", + "Information": "false" + }, + { + "Code": "21211LJ105", + "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Ausbildungsbereich, Jahr", + "State": "undefiniert", + "Time": "2008-2024", + "LatestUpdate": "27.08.2025 18:09:25h", + "Information": "false" + }, + { + "Code": "21211LJ106", + "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Geschlecht, Ausbildungsbereich, Jahr", + "State": "undefiniert", + "Time": "2008-2024", + "LatestUpdate": "27.08.2025 18:07:28h", + "Information": "false" + }, + { + "Code": "21211LJ107", + "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Nationalität, Ausbildungsbereich, Jahr", + "State": "undefiniert", + "Time": "2008-2024", + "LatestUpdate": "27.08.2025 18:09:18h", + "Information": "false" + }, + { + "Code": "21211LJ108", + "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Geschlecht, Nationalität, Ausbildungsbereich, Jahr", + "State": "undefiniert", + "Time": "2008-2024", + "LatestUpdate": "27.08.2025 18:03:25h", + "Information": "false" + }, + { + "Code": "21211LJ109", + "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Altersjahre (u17-24m), Jahr", + "State": "undefiniert", + "Time": "2008-2024", + "LatestUpdate": "27.08.2025 18:07:41h", + "Information": "false" + }, + { + "Code": "21211LJ110", + "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Geschlecht, Altersjahre (u17-24m), Jahr", + "State": "undefiniert", + "Time": "2008-2024", + "LatestUpdate": "27.08.2025 18:07:22h", + "Information": "false" + }, + { + "Code": "21211LJ111", + "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Schulabschluss, Jahr", + "State": "undefiniert", + "Time": "2008-2024", + "LatestUpdate": "27.08.2025 18:09:22h", + "Information": "false" + }, + { + "Code": "21211LJ112", + "Content": "Berufsbildungsstatistik, Neu abgeschlossene Ausbildungsverträge, Vorzeitig gelöste Ausbildungsverträge, Bestandene Abschlussprüfung, Bundesländer, Geschlecht, Schulabschluss, Jahr", + "State": "undefiniert", + "Time": "2008-2024", + "LatestUpdate": "27.08.2025 18:07:12h", + "Information": "false" + }, + { + "Code": "21241LJ001", + "Content": "Pflegeausbildungsstatistik, Auszubildende m.neu abgeschloss.Ausbildungsvertrag, Beendete Ausbildungen, Ausbildungseintritte (inkl. vorzeitige Lösungen), Bundesländer, Stichtag", + "State": "undefiniert", + "Time": "31.12.2020-31.12.2024", + "LatestUpdate": "28.07.2025 18:07:16h", + "Information": "false" + }, + { + "Code": "21241LJ002", + "Content": "Pflegeausbildungsstatistik, Auszubildende m.neu abgeschloss.Ausbildungsvertrag, Bundesländer, Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "31.12.2020-31.12.2024", + "LatestUpdate": "28.07.2025 18:07:26h", + "Information": "false" + }, + { + "Code": "21241LJ003", + "Content": "Pflegeausbildungsstatistik, Auszubildende m.neu abgeschloss.Ausbildungsvertrag, Bundesländer, Altersgruppen (u17-50m), Stichtag", + "State": "undefiniert", + "Time": "31.12.2020-31.12.2024", + "LatestUpdate": "28.07.2025 18:07:29h", + "Information": "false" + }, + { + "Code": "21241LJ004", + "Content": "Pflegeausbildungsstatistik, Auszubildende m.neu abgeschloss.Ausbildungsvertrag, Bundesländer, Ausbildungsumfang, Stichtag", + "State": "undefiniert", + "Time": "31.12.2020-31.12.2024", + "LatestUpdate": "28.07.2025 18:05:41h", + "Information": "false" + }, + { + "Code": "21241LJ005", + "Content": "Pflegeausbildungsstatistik, Auszubildende m.neu abgeschloss.Ausbildungsvertrag, Bundesländer, Erhalt von Fördermitteln, Stichtag", + "State": "undefiniert", + "Time": "31.12.2020-31.12.2024", + "LatestUpdate": "28.07.2025 18:07:23h", + "Information": "false" + }, + { + "Code": "21241LJ006", + "Content": "Pflegeausbildungsstatistik, Auszubildende m.neu abgeschloss.Ausbildungsvertrag, Bundesländer, Art der Trägerschaft der Pflegeschulen, Stichtag", + "State": "undefiniert", + "Time": "31.12.2020-31.12.2024", + "LatestUpdate": "28.07.2025 18:07:35h", + "Information": "false" + }, + { + "Code": "21241LJ007", + "Content": "Pflegeausbildungsstatistik, Beendete Ausbildungen, Bundesländer, Prüfungsergebnis, Stichtag", + "State": "undefiniert", + "Time": "31.12.2020-31.12.2024", + "LatestUpdate": "28.07.2025 18:05:34h", + "Information": "false" + }, + { + "Code": "21241LJ008", + "Content": "Pflegeausbildungsstatistik, Pflegeschulen, Bundesländer, Stichtag", + "State": "undefiniert", + "Time": "31.12.2020-31.12.2024", + "LatestUpdate": "28.07.2025 18:07:32h", + "Information": "false" + }, + { + "Code": "21241LJ009", + "Content": "Pflegeausbildungsstatistik, Pflegeschulen, Bundesländer, Art der Trägerschaft der Pflegeschulen, Stichtag", + "State": "undefiniert", + "Time": "31.12.2020-31.12.2024", + "LatestUpdate": "28.07.2025 18:07:19h", + "Information": "false" + }, + { + "Code": "21311LS001", + "Content": "Statistik der Studenten, Studierende, Bundesländer, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:37:29h", + "Information": "false" + }, + { + "Code": "21311LS002", + "Content": "Statistik der Studenten, Studierende, Bundesländer, Geschlecht, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:38:00h", + "Information": "false" + }, + { + "Code": "21311LS003", + "Content": "Statistik der Studenten, Studierende, Bundesländer, Nationalität, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:38:13h", + "Information": "false" + }, + { + "Code": "21311LS004", + "Content": "Statistik der Studenten, Studierende, Bundesländer, Nationalität, Geschlecht, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:39:07h", + "Information": "false" + }, + { + "Code": "21311LS005", + "Content": "Statistik der Studenten, Studierende, Bundesländer, Studienfach, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:38:10h", + "Information": "false" + }, + { + "Code": "21311LS006", + "Content": "Statistik der Studenten, Studierende, Bundesländer, Studienfach, Geschlecht, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:40:00h", + "Information": "false" + }, + { + "Code": "21311LS007", + "Content": "Statistik der Studenten, Studierende, Bundesländer, Studienfach, Nationalität, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:39:31h", + "Information": "false" + }, + { + "Code": "21311LS008", + "Content": "Statistik der Studenten, Studierende, Bundesländer, Studienfach, Nationalität, Geschlecht, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:37:48h", + "Information": "false" + }, + { + "Code": "21311LS101", + "Content": "Statistik der Studenten, Studienanfänger, Bundesländer, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:39:47h", + "Information": "false" + }, + { + "Code": "21311LS102", + "Content": "Statistik der Studenten, Studienanfänger, Geschlecht, Bundesländer, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:38:03h", + "Information": "false" + }, + { + "Code": "21311LS103", + "Content": "Statistik der Studenten, Studienanfänger, Nationalität, Bundesländer, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:39:35h", + "Information": "false" + }, + { + "Code": "21311LS104", + "Content": "Statistik der Studenten, Studienanfänger, Geschlecht, Nationalität, Bundesländer, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:39:11h", + "Information": "false" + }, + { + "Code": "21311LS105", + "Content": "Statistik der Studenten, Studienanfänger, Studienfach, Bundesländer, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:39:18h", + "Information": "false" + }, + { + "Code": "21311LS106", + "Content": "Statistik der Studenten, Studienanfänger, Geschlecht, Studienfach, Bundesländer, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:37:57h", + "Information": "false" + }, + { + "Code": "21311LS107", + "Content": "Statistik der Studenten, Studienanfänger, Nationalität, Studienfach, Bundesländer, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:39:43h", + "Information": "false" + }, + { + "Code": "21311LS108", + "Content": "Statistik der Studenten, Studienanfänger, Geschlecht, Nationalität, Studienfach, Bundesländer, Semester", + "State": "undefiniert", + "Time": "WS 1998/99-WS 2024/25", + "LatestUpdate": "12.08.2025 18:37:26h", + "Information": "false" + }, + { + "Code": "21321LJ004", + "Content": "Statistik der Prüfungen, Prüfungen, Bundesländer, Studienfach, Nationalität, Geschlecht, Prüfungsergebnis, Jahr", + "State": "undefiniert", + "Time": "1999-2024", + "LatestUpdate": "17.09.2025 18:35:33h", + "Information": "false" + }, + { + "Code": "21321LJ006", + "Content": "Statistik der Prüfungen, Prüfungen, Bundesländer, Nationalität, Geschlecht, Prüfungsergebnis, Abgelegte Abschlussprüfung, Jahr", + "State": "undefiniert", + "Time": "1999-2024", + "LatestUpdate": "17.09.2025 18:35:43h", + "Information": "false" + }, + { + "Code": "21351LJ001", + "Content": "Statistik der Habilitationen, Habilitationen, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "1992-2024", + "LatestUpdate": "21.07.2025 18:05:24h", + "Information": "false" + }, + { + "Code": "21352LJ001", + "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Stichtag", + "State": "undefiniert", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:16:27h", + "Information": "false" + }, + { + "Code": "21352LJ002", + "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Geschlecht, Stichtag", + "State": "undefiniert", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:16:30h", + "Information": "false" + }, + { + "Code": "21352LJ003", + "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Nationalität, Stichtag", + "State": "undefiniert", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:16:33h", + "Information": "false" + }, + { + "Code": "21352LJ004", + "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Hochschulart, Stichtag", + "State": "undefiniert", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:16:17h", + "Information": "false" + }, + { + "Code": "21352LJ005", + "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Geschlecht, Nationalität, Stichtag", + "State": "undefiniert", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:16:37h", + "Information": "false" + }, + { + "Code": "21352LJ006", + "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Geschlecht, Hochschulart, Stichtag", + "State": "undefiniert", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:16:23h", + "Information": "false" + }, + { + "Code": "21352LJ007", + "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Nationalität, Hochschulart, Stichtag", + "State": "undefiniert", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:18:12h", + "Information": "false" + }, + { + "Code": "21352LJ008", + "Content": "Statistik der Promovierenden, Promovierende, Bundesländer, Geschlecht, Nationalität, Hochschulart, Stichtag", + "State": "undefiniert", + "Time": "01.12.2019-01.12.2024", + "LatestUpdate": "13.08.2025 18:18:07h", + "Information": "false" + }, + { + "Code": "21353LJ001", + "Content": "Statistik der Hochschulräte, Hochschulräte, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "25.03.2025 18:05:27h", + "Information": "false" + }, + { + "Code": "21353LJ002", + "Content": "Statistik der Hochschulräte, Hochschulräte, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "25.03.2025 18:05:30h", + "Information": "false" + }, + { + "Code": "21353LJ003", + "Content": "Statistik der Hochschulräte, Hochschulräte, Bundesländer, Hochschulart, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "25.03.2025 18:05:48h", + "Information": "false" + }, + { + "Code": "21353LJ004", + "Content": "Statistik der Hochschulräte, Hochschulräte, Bundesländer, Geschlecht, Hochschulart, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "25.03.2025 18:05:39h", + "Information": "false" + }, + { + "Code": "21354LJ001", + "Content": "Statistik der Berufsakademien, Studierende, Studienanfänger, Bundesländer, Geschlecht, Nationalität, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "26.05.2025 18:00:52h", + "Information": "false" + }, + { + "Code": "21354LJ002", + "Content": "Statistik der Berufsakademien, Bestandene Prüfungen, Bundesländer, Geschlecht, Art der Prüfung, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "26.05.2025 18:00:37h", + "Information": "false" + }, + { + "Code": "21354LJ003", + "Content": "Statistik der Berufsakademien, Personal, Bundesländer, Geschlecht, Art des Personals, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "26.05.2025 18:00:55h", + "Information": "false" + }, + { + "Code": "21354LJ004", + "Content": "Statistik der Berufsakademien, Studierende je Lehrperson (Betreuungsrelation), Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "26.05.2025 18:00:40h", + "Information": "false" + }, + { + "Code": "21354LJ005", + "Content": "Statistik der Berufsakademien, Studierende je Lehrperson (Betreuungsrelation), Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2017-2024", + "LatestUpdate": "26.05.2025 18:00:31h", + "Information": "false" + }, + { + "Code": "21371LJ001", + "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2006-2023", + "LatestUpdate": "26.03.2025 18:00:46h", + "Information": "false" + }, + { + "Code": "21371LJ002", + "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Bundesländer, Hochschulart, Jahr", + "State": "undefiniert", + "Time": "2006-2023", + "LatestUpdate": "26.03.2025 18:00:49h", + "Information": "false" + }, + { + "Code": "21371LJ003", + "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Bundesländer, Fächergruppen, Jahr", + "State": "undefiniert", + "Time": "2006-2023", + "LatestUpdate": "26.03.2025 18:00:31h", + "Information": "false" + }, + { + "Code": "21371LJ004", + "Content": "Hochschulfinanzstatistik, Ausgaben der Hochschulen, Bundesländer, Hochschulart, Fächergruppen, Jahr", + "State": "undefiniert", + "Time": "2006-2023", + "LatestUpdate": "26.03.2025 18:00:27h", + "Information": "false" + }, + { + "Code": "21381LJ001", + "Content": "Hochschulstatistische Kennzahlen, Absolventenquote, Studienanfängerquote (Hochschulzugangsberechtig.), Studienanfängerquote, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2000-2023", + "LatestUpdate": "22.01.2025 14:33:45h", + "Information": "false" + }, + { + "Code": "21381LJ002", + "Content": "Hochschulstatistische Kennzahlen, Absolventenquote, Studienanfängerquote (Hochschulzugangsberechtig.), Studienanfängerquote, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2000-2023", + "LatestUpdate": "22.01.2025 14:31:46h", + "Information": "false" + }, + { + "Code": "21381LJ003", + "Content": "Hochschulstatistische Kennzahlen, Studienberechtigtenquote, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2006-2023", + "LatestUpdate": "22.01.2025 14:30:45h", + "Information": "false" + }, + { + "Code": "21381LJ004", + "Content": "Hochschulstatistische Kennzahlen, Studienberechtigtenquote, Bundesländer, Schulabschluss, Jahr", + "State": "undefiniert", + "Time": "2006-2023", + "LatestUpdate": "22.01.2025 14:33:42h", + "Information": "false" + }, + { + "Code": "21381LJ101", + "Content": "Hochschulstatistische Kennzahlen, Laufende Ausgaben der Hochschulen je Studierenden, Laufende Ausgaben d. Hochschulen je Wiss. Personal, Laufende Ausgaben der Hochschulen je Professor, Drittmittel der Hochschulen je Wiss. Personal, Drittmittel der Hochschulen je Professor, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2011-2023", + "LatestUpdate": "24.09.2025 18:10:15h", + "Information": "false" + }, + { + "Code": "21411LJ001", + "Content": "Statistik der Bundesausbildungsförderung (BAföG), Geförderte Personen, Personen mit Vollförderung, Personen mit Teilförderung, Geförderte Personen (durchschnittl. Monatsbestand), Finanzieller Aufwand, Durchschnittl. monatl. Förderungsbetrag pro Person, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "1991-2024", + "LatestUpdate": "31.07.2025 18:11:19h", + "Information": "false" + }, + { + "Code": "21411LJ002", + "Content": "Statistik der Bundesausbildungsförderung (BAföG), Geförderte Personen, Personen mit Vollförderung, Personen mit Teilförderung, Geförderte Personen (durchschnittl. Monatsbestand), Finanzieller Aufwand, Durchschnittl. monatl. Förderungsbetrag pro Person, Bundesländer, Personenkreis, Jahr", + "State": "undefiniert", + "Time": "1991-2024", + "LatestUpdate": "31.07.2025 18:11:22h", + "Information": "false" + }, + { + "Code": "21421LJ001", + "Content": "Statistik der Aufstiegsfortbildungsförderung, Geförderte Personen, Bundesländer, Bewilligung/Inanspruchnahme, Form der Fortbildungsmaßnahme, Fortbildungsstätten, Jahr", + "State": "undefiniert", + "Time": "2003-2024", + "LatestUpdate": "25.06.2025 18:07:54h", + "Information": "false" + }, + { + "Code": "21421LJ002", + "Content": "Statistik der Aufstiegsfortbildungsförderung, Geförderte Personen, Bundesländer, Bewilligung/Inanspruchnahme, Form der Fortbildungsmaßnahme, Fortbildungsziele, Jahr", + "State": "undefiniert", + "Time": "2003-2024", + "LatestUpdate": "08.10.2025 11:22:17h", + "Information": "false" + }, + { + "Code": "21421LJ003", + "Content": "Statistik der Aufstiegsfortbildungsförderung, Geförderte Personen, Bundesländer, Bewilligung/Inanspruchnahme, Form der Fortbildungsmaßnahme, Fortbildungsstätten, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2003-2024", + "LatestUpdate": "25.06.2025 18:07:37h", + "Information": "false" + }, + { + "Code": "21421LJ004", + "Content": "Statistik der Aufstiegsfortbildungsförderung, Geförderte Personen, Bundesländer, Bewilligung/Inanspruchnahme, Form der Fortbildungsmaßnahme, Einkommensgrößenklassen, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2003-2024", + "LatestUpdate": "25.06.2025 18:06:54h", + "Information": "false" + }, + { + "Code": "21421LJ005", + "Content": "Statistik der Aufstiegsfortbildungsförderung, Finanzieller Aufwand, Bundesländer, Bewilligung/Inanspruchnahme, Jahr", + "State": "undefiniert", + "Time": "2003-2024", + "LatestUpdate": "25.06.2025 18:06:51h", + "Information": "false" + }, + { + "Code": "21421LJ006", + "Content": "Statistik der Aufstiegsfortbildungsförderung, Finanzieller Aufwand, Bundesländer, Bewilligung/Inanspruchnahme, Art des finanziellen Aufwandes, Jahr", + "State": "undefiniert", + "Time": "2003-2024", + "LatestUpdate": "25.06.2025 18:07:51h", + "Information": "false" + }, + { + "Code": "21421LJ007", + "Content": "Statistik der Aufstiegsfortbildungsförderung, Finanzieller Aufwand, Bundesländer, Bewilligung/Inanspruchnahme, Fortbildungsstätten, Jahr", + "State": "undefiniert", + "Time": "2003-2024", + "LatestUpdate": "25.06.2025 18:07:44h", + "Information": "false" + }, + { + "Code": "21421LJ008", + "Content": "Statistik der Aufstiegsfortbildungsförderung, Finanzieller Aufwand, Bundesländer, Bewilligung/Inanspruchnahme, Fortbildungsziele, Jahr", + "State": "undefiniert", + "Time": "2003-2024", + "LatestUpdate": "25.06.2025 18:07:41h", + "Information": "false" + }, + { + "Code": "21421LJ009", + "Content": "Statistik der Aufstiegsfortbildungsförderung, Finanzieller Aufwand, Bundesländer, Bewilligung/Inanspruchnahme, Art des finanziellen Aufwandes, Fortbildungsstätten, Jahr", + "State": "undefiniert", + "Time": "2003-2024", + "LatestUpdate": "25.06.2025 18:07:47h", + "Information": "false" + }, + { + "Code": "21421LJ010", + "Content": "Statistik der Aufstiegsfortbildungsförderung, Finanzieller Aufwand, Bundesländer, Bewilligung/Inanspruchnahme, Art des finanziellen Aufwandes, Fortbildungsziele, Jahr", + "State": "undefiniert", + "Time": "2003-2024", + "LatestUpdate": "25.06.2025 18:07:34h", + "Information": "false" + }, + { + "Code": "21421LJ011", + "Content": "Statistik der Aufstiegsfortbildungsförderung, Geförderte Personen (durchschnittl. Monatsbestand), Durchschnittl. monatl. Förderungsbetrag pro Person, Bundesländer, Bewilligung/Inanspruchnahme, Art der Förderung, Jahr", + "State": "undefiniert", + "Time": "2003-2024", + "LatestUpdate": "25.06.2025 18:07:31h", + "Information": "false" + }, + { + "Code": "21421LJ012", + "Content": "Statistik der Aufstiegsfortbildungsförderung, Geförderte Personen (durchschnittl. Monatsbestand), Durchschnittl. monatl. Förderungsbetrag pro Person, Bundesländer, Bewilligung/Inanspruchnahme, Fortbildungsstätten, Art der Förderung, Jahr", + "State": "undefiniert", + "Time": "2003-2024", + "LatestUpdate": "25.06.2025 18:07:58h", + "Information": "false" + }, + { + "Code": "21431LJ001", + "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Mittelgeber, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2011-2024", + "LatestUpdate": "13.05.2025 18:23:48h", + "Information": "false" + }, + { + "Code": "21431LJ002", + "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Bundesländer, Geschlecht, Jahr", + "State": "undefiniert", + "Time": "2011-2024", + "LatestUpdate": "13.05.2025 18:22:48h", + "Information": "false" + }, + { + "Code": "21431LJ003", + "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Mittelgeber, Bundesländer, Hochschulart, Jahr", + "State": "undefiniert", + "Time": "2011-2024", + "LatestUpdate": "13.05.2025 18:23:00h", + "Information": "false" + }, + { + "Code": "21431LJ004", + "Content": "Förderung nach dem Stipendienprogramm-Gesetz, Stipendiaten, Bundesländer, Geschlecht, Hochschulart, Jahr", + "State": "undefiniert", + "Time": "2011-2024", + "LatestUpdate": "13.05.2025 18:22:57h", + "Information": "false" + }, + { + "Code": "21611LJ001", + "Content": "Kulturstatistik, Leinwände, Kinos, Sitzplätze der Kinos, Filmbesuche, Filmbesuche je Einwohner, Durchschnittlicher Kino-Eintrittspreis, Bruttoeinnahmen aus dem Filmbesuch, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2000-2024", + "LatestUpdate": "01.04.2025 10:36:32h", + "Information": "false" + }, + { + "Code": "21611LJ100", + "Content": "Kulturstatistik, Museen, Ausstellungen, Museumsbesuche, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2002-2023", + "LatestUpdate": "18.12.2025 07:10:02h", + "Information": "false" + }, + { + "Code": "21611LJ110", + "Content": "Kulturstatistik, Öffentlich geförderte Theaterunternehmen, Spielstätten, Veranstaltungen am Ort, Theaterbesuche, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2000-2023", + "LatestUpdate": "01.04.2025 10:36:39h", + "Information": "false" + }, + { + "Code": "21611LJ120", + "Content": "Kulturstatistik, Öffentlich geförderte Musikschulen, Lehrer in öffentlich geförderten Musikschulen, Schüler in öffentlich geförderten Musikschulen, Bundesländer, Jahr", + "State": "undefiniert", + "Time": "2000-2023", + "LatestUpdate": "25.07.2025 10:03:23h", + "Information": "false" + } + ], + "Copyright": "© Statistisches Bundesamt (Destatis), 2026" +} From 54e53ac837b781332ce0b7e5bbdcd5f0ea32c246 Mon Sep 17 00:00:00 2001 From: buhly Date: Thu, 19 Feb 2026 18:27:53 +0100 Subject: [PATCH 20/26] try fix codecov --- .github/workflows/test-coverage.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-coverage.yaml b/.github/workflows/test-coverage.yaml index e050312..c7ab47c 100644 --- a/.github/workflows/test-coverage.yaml +++ b/.github/workflows/test-coverage.yaml @@ -2,7 +2,7 @@ # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help on: push: - branches: [main, master] + branches: [main, dev] pull_request: name: test-coverage.yaml @@ -29,6 +29,7 @@ jobs: - name: Test coverage run: | + Sys.setenv(NOT_CRAN = "true") cov <- covr::package_coverage( quiet = FALSE, clean = FALSE, From ef7fd09c14b2e03cffa9d9e8641da860a84151d5 Mon Sep 17 00:00:00 2001 From: buhly Date: Thu, 19 Feb 2026 18:40:55 +0100 Subject: [PATCH 21/26] fix codecov --- .github/workflows/test-coverage.yaml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-coverage.yaml b/.github/workflows/test-coverage.yaml index c7ab47c..2047a99 100644 --- a/.github/workflows/test-coverage.yaml +++ b/.github/workflows/test-coverage.yaml @@ -35,15 +35,16 @@ jobs: clean = FALSE, install_path = file.path(normalizePath(Sys.getenv("RUNNER_TEMP"), winslash = "/"), "package") ) + print(cov) covr::to_cobertura(cov) shell: Rscript {0} - - uses: codecov/codecov-action@v4 + - uses: codecov/codecov-action@v5 with: # Fail if error if not on PR, or if on PR and token is given fail_ci_if_error: ${{ github.event_name != 'pull_request' || secrets.CODECOV_TOKEN }} - file: ./cobertura.xml - plugin: noop + files: ./cobertura.xml + plugins: noop disable_search: true token: ${{ secrets.CODECOV_TOKEN }} From a80b2c110389b0e080806b0604eed4d7931faa70 Mon Sep 17 00:00:00 2001 From: buhly Date: Thu, 19 Feb 2026 21:36:51 +0100 Subject: [PATCH 22/26] fix tests again... --- ...n => modifieddata-86e7c4-51c354-POST.json} | 2 +- tests/testthat/test_complete_workflows.R | 35 ++-- tests/testthat/test_credential_list.R | 154 ++++++---------- tests/testthat/test_databases.R | 172 ++++++----------- tests/testthat/test_gen_alternative_terms.R | 50 +++-- tests/testthat/test_gen_auth.R | 12 +- tests/testthat/test_gen_catalogue.R | 174 ++++++++---------- tests/testthat/test_gen_cube.R | 19 +- tests/testthat/test_gen_find.R | 65 +++---- tests/testthat/test_gen_logincheck.R | 9 +- tests/testthat/test_gen_metadata.R | 29 +-- tests/testthat/test_gen_modified_data.R | 80 ++++---- tests/testthat/test_gen_objects2stat.R | 101 +++++----- tests/testthat/test_gen_objects2var.R | 97 +++++----- tests/testthat/test_gen_search_vars.R | 77 ++++---- tests/testthat/test_gen_table.R | 15 +- tests/testthat/test_gen_val2var.R | 85 ++++----- tests/testthat/test_gen_var2stat.R | 84 ++++----- 18 files changed, 530 insertions(+), 730 deletions(-) rename tests/testthat/modified2/api/catalogue/{modifieddata-86e7c4-ce75f1-POST.json => modifieddata-86e7c4-51c354-POST.json} (94%) diff --git a/tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-ce75f1-POST.json b/tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-51c354-POST.json similarity index 94% rename from tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-ce75f1-POST.json rename to tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-51c354-POST.json index cd11a51..cb56126 100644 --- a/tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-ce75f1-POST.json +++ b/tests/testthat/modified2/api/catalogue/modifieddata-86e7c4-51c354-POST.json @@ -13,7 +13,7 @@ "password": "********************", "selection": "61111", "type": "Alle", - "date": "18.02.2026", + "date": "19.02.2026", "pagelength": "500", "language": "de", "area": "Alle" diff --git a/tests/testthat/test_complete_workflows.R b/tests/testthat/test_complete_workflows.R index 628bc33..e9e9099 100644 --- a/tests/testthat/test_complete_workflows.R +++ b/tests/testthat/test_complete_workflows.R @@ -12,8 +12,8 @@ test_that("complete data discovery and retrieval workflow", { search_results <- gen_find(database = "genesis", term = "Bevölkerung") - expect_type(search_results, "list") - expect_s3_class(search_results$Tables, "data.frame") + expect_type(object = search_results, type = "list") + expect_s3_class(object = search_results$Tables, class = "data.frame") expect_true(nrow(search_results$Tables) > 0) # 2. Get metadata about first result @@ -25,7 +25,7 @@ test_that("complete data discovery and retrieval workflow", { database = "genesis", category = "table") - expect_type(metadata, "list") + expect_type(object = metadata, type = "list") } @@ -52,7 +52,7 @@ test_that("authentication and data access workflow", { database = "genesis", category = "tables") - expect_type(catalogue, "list") + expect_type(object = catalogue, type = "list") expect_true(nrow(catalogue[["Tables"]][[1]][[1]][[1]][[1]]) > 0) } @@ -76,7 +76,7 @@ test_that("table retrieval with filtering workflow", { endyear = 2021, language = "en") - expect_s3_class(table_data, "data.frame") + expect_s3_class(object = table_data, class = "data.frame") # Verify year filtering worked (if years are in the data) if ("time" %in% names(table_data)) { @@ -103,13 +103,13 @@ test_that("relationship exploration workflow", { stats <- gen_objects2stat(code = "12411", database = "genesis") - expect_type(stats, "list") + expect_type(object = stats, type = "list") # 2. Search for variables vars <- gen_search_vars(name = "12411", database = "genesis") - expect_type(vars, "list") + expect_type(object = vars, type = "list") }) @@ -124,12 +124,13 @@ test_that("system recovers from API errors gracefully", { "No genesis credentials!") # Try invalid request - result1 <- tryCatch(gen_table(name = "invalid-table", database = "genesis"), + result1 <- tryCatch(gen_table(name = "invalid-table", + database = "genesis"), error = function(e) NULL) # System should still work after error result2 <- gen_logincheck(database = "genesis") - expect_type(result2, "logical") + expect_type(object = result2, type = "logical") }) @@ -206,7 +207,7 @@ test_that("detailed vs. non-detailed queries are consistent", { # Detailed should have more columns expect_true(ncol(detailed[["Tables"]][[1]][[1]][[1]][[1]]) >= - ncol(basic[["Tables"]][[1]][[1]][[1]][[1]])) + ncol(basic[["Tables"]][[1]][[1]][[1]][[1]])) # Should have same number of rows expect_equal(nrow(basic[["Tables"]][[1]][[1]][[1]][[1]]), @@ -236,7 +237,7 @@ test_that("functions handle large datasets efficiently", { expect_true(elapsed < 30) # Should return data - expect_type(result, "list") + expect_type(object = result, type = "list") }) @@ -257,12 +258,12 @@ test_that("same function works across all databases", { # gen_signs should work for all result <- gen_signs(database = db) - expect_s3_class(result$Output, "data.frame") + expect_s3_class(object = result$Output, class = "data.frame") expect_true(nrow(result$Output) > 0) # gen_logincheck should work for all login <- gen_logincheck(database = db) - expect_type(login, "logical") + expect_type(object = login, type = "logical") } }) @@ -282,7 +283,8 @@ test_that("error messages are consistent across databases", { paste("No", db, "credentials!")) # Test with invalid table name - result <- tryCatch(gen_table(name = "invalid-99999", database = db), + result <- tryCatch(gen_table(name = "invalid-99999", + database = db), error = function(e) e$message) # Should get some error message @@ -304,7 +306,8 @@ test_that("job creation and retrieval workflow", { "No genesis credentials!") # List jobs - jobs <- gen_list_jobs(database = "genesis", flat = TRUE) - expect_s3_class(jobs, "data.frame") + jobs <- gen_list_jobs(database = "genesis", + flat = TRUE) + expect_s3_class(object = jobs, class = "data.frame") }) diff --git a/tests/testthat/test_credential_list.R b/tests/testthat/test_credential_list.R index 18bc1d7..d2065de 100644 --- a/tests/testthat/test_credential_list.R +++ b/tests/testthat/test_credential_list.R @@ -6,64 +6,45 @@ test_that("functions error correctly on erroneous credential_list parameter valu #----------------------------------------------------------------------------- - expect_error( - - result <- gen_catalogue(code = "12*", - database = "genesis", - verbose = FALSE, - credential_list = list(regio = c(username = "bar", password = "foo"))), - regexp = "Not all databases you defined in 'database' are contained in your 'credential_list'." - - ) - - expect_error( - - result <- gen_catalogue(code = "12*", - database = c("genesis", "zensus"), - category = "tables", - verbose = FALSE, - credential_list = list(regio = c(username = "bar", password = "foo"), - nrw = c(username = "foo", password = "bar"), - bayern = c(username = "foo", password = "bar"))), - regexp = "Not all databases you defined in 'database' are contained in your 'credential_list'" - - ) - - expect_error( - - result <- gen_catalogue(code = "12*", - database = c("genesis", "zensus"), - category = "tables", - verbose = FALSE, - credential_list = list(genesis = c(username = "bar", password = "foo"), - zensus = c(username = "foo", password = "bar"))), - regexp = "No json-csv file detected." - - ) - - expect_error( - - result <- gen_catalogue(code = "12*", - database = c("genesis", "regio"), - verbose = FALSE, - credential_list = list(regio = c(username = "bar", username = "foo"), - genesis = c(username = "foo", username = "bar"))), - regexp = "Every database that is requested in the parameter 'database' needs its own list entry including the entries" - - ) + expect_error(object = result <- gen_catalogue(code = "12*", + database = "genesis", + verbose = FALSE, + credential_list = list(regio = c(username = "bar", + password = "foo"))), + regexp = "Not all databases you defined in 'database' are contained in your 'credential_list'.") + + expect_error(object = result <- gen_catalogue(code = "12*", + database = c("genesis", "zensus"), + category = "tables", + verbose = FALSE, + credential_list = list(regio = c(username = "bar", password = "foo"), + nrw = c(username = "foo", password = "bar"), + bayern = c(username = "foo", password = "bar"))), + regexp = "Not all databases you defined in 'database' are contained in your 'credential_list'") + + expect_error(object = result <- gen_catalogue(code = "12*", + database = c("genesis", "zensus"), + category = "tables", + verbose = FALSE, + credential_list = list(genesis = c(username = "bar", password = "foo"), + zensus = c(username = "foo", password = "bar"))), + regexp = "No json-csv file detected.") + + expect_error(object = result <- gen_catalogue(code = "12*", + database = c("genesis", "regio"), + verbose = FALSE, + credential_list = list(regio = c(username = "bar", username = "foo"), + genesis = c(username = "foo", username = "bar"))), + regexp = "Every database that is requested in the parameter 'database' needs its own list entry including the entries") #----------------------------------------------------------------------------- - expect_error( - - result <- gen_catalogue(code = "12*", - database = c("genesis", "zensus"), - category = "tables", - verbose = FALSE, - credential_list = list(genesis = c(username = "foo", password = "bar"))), - regexp = "Not all databases you defined in 'database' are contained in your 'credential_list'" - - ) + expect_error(object = result <- gen_catalogue(code = "12*", + database = c("genesis", "zensus"), + category = "tables", + verbose = FALSE, + credential_list = list(genesis = c(username = "foo", password = "bar"))), + regexp = "Not all databases you defined in 'database' are contained in your 'credential_list'") }) @@ -76,40 +57,24 @@ test_that("functions messages correctly on special credential_list parameter val #----------------------------------------------------------------------------- - expect_message( - - expect_error( - - gen_catalogue(code = "12*", - database = "genesis", - credential_list = list(genesis = c(username = "bar", password = "foo"))), - regexp = "No json-csv file detected" - - ), - - regexp = "can be a potential security threat" - - ) + expect_message(object = expect_error(object = gen_catalogue(code = "12*", + database = "genesis", + credential_list = list(genesis = c(username = "bar", + password = "foo"))), + regexp = "No json-csv file detected"), + regexp = "can be a potential security threat") #----------------------------------------------------------------------------- - expect_message( - - expect_error( - - result <- gen_catalogue(code = "12*", - database = c("genesis", "zensus"), - category = "tables", - error.ignore = TRUE, - verbose = FALSE, - credential_list = list(genesis = c(username = "foo", password = "bar"))), - regexp = "No json-csv file detected." - - ), - - regexp = "Functions continues with those available" - - ) + expect_message(object = expect_error(object = result <- gen_catalogue(code = "12*", + database = c("genesis", "zensus"), + category = "tables", + error.ignore = TRUE, + verbose = FALSE, + credential_list = list(genesis = c(username = "foo", + password = "bar"))), + regexp = "No json-csv file detected."), + regexp = "Functions continues with those available") }) @@ -117,18 +82,15 @@ test_that("functions messages correctly on special credential_list parameter val test_that("restatis functions respond correctly to ill-defined credential_list", { - skip_on_cran() - skip_on_ci() - - expect_error(gen_objects2var(code = "7DLAND", - database = "genesis", - credential_list = c("genesis" = "foobar")), + expect_error(object = gen_objects2var(code = "7DLAND", + database = "genesis", + credential_list = c("genesis" = "foobar")), regex = "Parameter 'credential_list' has to be of type 'list' if 'credential_type' is set.") - expect_error(gen_objects2var(code = "7DLAND", - database = "genesis", - credential_list = list("regio" = c("password" = "foo", - "username" = "bar"))), + expect_error(object = gen_objects2var(code = "7DLAND", + database = "genesis", + credential_list = list("regio" = c("password" = "foo", + "username" = "bar"))), regex = "Not all databases you defined in 'database' are contained in your 'credential_list'") }) diff --git a/tests/testthat/test_databases.R b/tests/testthat/test_databases.R index ae74556..c374ba2 100644 --- a/tests/testthat/test_databases.R +++ b/tests/testthat/test_databases.R @@ -10,40 +10,24 @@ test_that("the 'nrw' database performs as expected", { skip_on_cran() skip_if_offline() - expect_type( + expect_type(object = res1 <- gen_find(term = "diagnose", + database = "nrw", + category = "tables"), + type = "list") - res1 <- gen_find(term = "diagnose", - database = "nrw", - category = "tables"), - type = "list" + expect_s3_class(object = res2 <- gen_table(name = "23131-03i", + database = "nrw", + startyear = 2024), + class = "data.frame") - ) + expect_type(object = res3 <- gen_catalogue(code = "", + database = "nrw", + category = "cubes"), + type = "list") - expect_s3_class( - - res2 <- gen_table(name = "23131-03i", - database = "nrw", - startyear = 2024), - class = "data.frame" - - ) - - expect_type( - - res3 <- gen_catalogue(code = "", - database = "nrw", - category = "cubes"), - type = "list" - - ) - - expect_s3_class( - - res4 <- gen_cube(name = "11111GJ001", - database = "nrw"), - class = "data.frame" - - ) + expect_s3_class(object = res4 <- gen_cube(name = "11111GJ001", + database = "nrw"), + class = "data.frame") }) @@ -59,32 +43,20 @@ test_that("the 'nrw' database performs as expected", { # skip_on_cran() # skip_if_offline() # -# expect_type( +# expect_type(object = res1 <- gen_find(term = "bus*", +# database = "bayern", +# category = "tables"), +# type = "list") # -# res1 <- gen_find(term = "bus*", -# database = "bayern", -# category = "tables"), -# type = "list" +# expect_s3_class(object = res2 <- gen_table(name = "61111-301z", +# database = "bayern", +# startyear = 2021, +# endyear = 2022), +# class = "data.frame") # -# ) -# -# expect_s3_class( -# -# res2 <- gen_table(name = "61111-301z", -# database = "bayern", -# startyear = 2021, -# endyear = 2022), -# class = "data.frame" -# -# ) -# -# expect_type( -# -# res3 <- gen_catalogue(code = "23*", -# database = "bayern"), -# type = "list" -# -# ) +# expect_type(object = res3 <- gen_catalogue(code = "23*", +# database = "bayern"), +# type = "list") # # }) @@ -96,32 +68,20 @@ test_that("the 'st' database performs as expected", { skip_on_cran() skip_if_offline() - expect_type( - - res1 <- gen_find(term = "diagnose", - database = "st", - category = "tables"), - type = "list" - - ) + expect_type(object = res1 <- gen_find(term = "diagnose", + database = "st", + category = "tables"), + type = "list") - expect_s3_class( + expect_s3_class(object = res2 <- gen_table(name = "23211-0001", + database = "st", + startyear = 2021, + endyear = 2022), + class = "data.frame") - res2 <- gen_table(name = "23211-0001", - database = "st", - startyear = 2021, - endyear = 2022), - class = "data.frame" - - ) - - expect_type( - - res3 <- gen_catalogue(code = "23*", - database = "st"), - type = "list" - - ) + expect_type(object = res3 <- gen_catalogue(code = "23*", + database = "st"), + type = "list") }) @@ -133,40 +93,24 @@ test_that("the 'bildung' database performs as expected", { skip_on_cran() skip_if_offline() - expect_type( - - res1 <- gen_find(term = "realschule", - database = "bildung", - category = "tables"), - type = "list" - - ) - - expect_s3_class( - - res2 <- gen_table(name = "BW-D07.1i", - database = "bildung", - startyear = 2024), - class = "data.frame" - - ) - - expect_type( - - res3 <- gen_catalogue(code = "", - database = "bildung", - category = "cubes"), - type = "list" - - ) - - expect_s3_class( - - res4 <- gen_cube(name = "02--A014C", - startyear = 2023, - database = "bildung"), - class = "data.frame" - - ) + expect_type(object = res1 <- gen_find(term = "realschule", + database = "bildung", + category = "tables"), + type = "list") + + expect_s3_class(object = res2 <- gen_table(name = "BW-D07.1i", + database = "bildung", + startyear = 2024), + class = "data.frame") + + expect_type(object = res3 <- gen_catalogue(code = "", + database = "bildung", + category = "cubes"), + type = "list") + + expect_s3_class(object = res4 <- gen_cube(name = "02--A014C", + startyear = 2023, + database = "bildung"), + class = "data.frame") }) diff --git a/tests/testthat/test_gen_alternative_terms.R b/tests/testthat/test_gen_alternative_terms.R index 2d3e27f..7a1b1aa 100644 --- a/tests/testthat/test_gen_alternative_terms.R +++ b/tests/testthat/test_gen_alternative_terms.R @@ -2,15 +2,17 @@ # Test for expected output & API calls ---- #------------------------------------------------------------------------------- -with_mock_dir("terms1", { - test_that("search terms function returns list", { +test_that("search terms function returns list", { + + with_mock_dir("terms1", { skip_on_cran() - skip_on_ci() - result <- gen_alternative_terms("forst*", TRUE, database = "genesis") + result <- gen_alternative_terms(term = "forst*", + similarity = TRUE, + database = "genesis") - expect_type(result, type = "list") + expect_type(object = result, type = "list") attrs <- attributes(result) @@ -29,45 +31,35 @@ with_mock_dir("terms1", { test_that("search term errors on multiple codes", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_alternative_terms(term = c("611*", "711*"), database = "genesis"), - regexp = "Parameter 'term' must be a single string.") + expect_error(object = gen_alternative_terms(term = c("611*", "711*"), + database = "genesis"), + regexp = "Parameter 'term' must be a single string.") }) test_that("search term errors on too long search term", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_alternative_terms(term = "dies das ananas!", database = "genesis"), - regexp = "Parameter 'term' cannot consist of more than 15 characters.") + expect_error(object = gen_alternative_terms(term = "dies das ananas!", + database = "genesis"), + regexp = "Parameter 'term' cannot consist of more than 15 characters.") }) test_that("search term errors on wrong parameter type", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_alternative_terms(term = "Krankenhaus", similarity = 1, database = "genesis"), - regexp = "Parameter 'similarity' has to be of type 'logical'.") + expect_error(object = gen_alternative_terms(term = "Krankenhaus", + similarity = 1, + database = "genesis"), + regexp = "Parameter 'similarity' has to be of type 'logical'.") }) test_that("search term errors on wrong parameter type", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_alternative_terms(term = 1992, similarity = TRUE, database = "genesis"), - regexp = "Parameter 'term' has to be of type 'character'.") + expect_error(object = gen_alternative_terms(term = 1992, + similarity = TRUE, + database = "genesis"), + regexp = "Parameter 'term' has to be of type 'character'.") }) diff --git a/tests/testthat/test_gen_auth.R b/tests/testthat/test_gen_auth.R index badfd6c..f1906d1 100644 --- a/tests/testthat/test_gen_auth.R +++ b/tests/testthat/test_gen_auth.R @@ -25,8 +25,8 @@ test_that("gen_auth_path handles additional arguments", { test_that("gen_auth_save validates database parameter", { - expect_error(gen_auth_save(database = "invalid"), - "database") + expect_error(object = gen_auth_save(database = "invalid"), + regexp = "database") }) @@ -41,7 +41,7 @@ test_that("gen_auth_get returns credentials when they exist", { "No genesis credentials saved!") creds <- gen_auth_get(database = "genesis") - expect_type(creds, "list") + expect_type(object = creds, type = "list") expect_true(all(c("username", "password") %in% names(creds) | "token" %in% names(creds))) @@ -49,8 +49,8 @@ test_that("gen_auth_get returns credentials when they exist", { test_that("gen_auth_get validates database parameter", { - expect_error(gen_auth_get(database = "invalid"), - "database") + expect_error(object = gen_auth_get(database = "invalid"), + regexp = "database") }) @@ -66,7 +66,7 @@ test_that("gen_auth_get accepts all valid databases", { skip_if_not(file.exists(gen_auth_path(paste0("auth_", db, ".rds"))), paste("No", db, "credentials!")) - expect_silent(gen_auth_get(database = db)) + expect_silent(object = gen_auth_get(database = db)) } diff --git a/tests/testthat/test_gen_catalogue.R b/tests/testthat/test_gen_catalogue.R index 9e36fae..5cf9055 100644 --- a/tests/testthat/test_gen_catalogue.R +++ b/tests/testthat/test_gen_catalogue.R @@ -2,11 +2,11 @@ # Test for expected output & API calls ---- #------------------------------------------------------------------------------- -with_mock_dir("catalogue1", { - test_that("gen_catalogue function returns list for tables", { +test_that("gen_catalogue function returns list for tables", { + + with_mock_dir("catalogue1", { skip_on_cran() - skip_on_ci() result <- gen_catalogue(code = "611*", detailed = TRUE, @@ -15,7 +15,7 @@ with_mock_dir("catalogue1", { database = "genesis", language = "en") - expect_type(result, type = "list") + expect_type(object = result, type = "list") }) @@ -23,19 +23,18 @@ with_mock_dir("catalogue1", { #------------------------------------------------------------------------------- -with_mock_dir("catalogue2", { - test_that("gen_catalogue function returns lists for statistics", { +test_that("gen_catalogue function returns lists for statistics", { + + with_mock_dir("catalogue2", { skip_on_cran() - skip_on_ci() - expect_type( - gen_catalogue(code = "41141", - detailed = FALSE, - category = "statistics", - error.ignore = FALSE, - database = "genesis"), - type = "list") + expect_type(object = gen_catalogue(code = "41141", + detailed = FALSE, + category = "statistics", + error.ignore = FALSE, + database = "genesis"), + type = "list") }) @@ -43,19 +42,18 @@ with_mock_dir("catalogue2", { #------------------------------------------------------------------------------- -with_mock_dir("catalogue3", { - test_that("gen_catalogue function returns error if there are no results", { +test_that("gen_catalogue function returns error if there are no results", { + + with_mock_dir("catalogue3", { skip_on_cran() - skip_on_ci() - expect_error( - gen_catalogue(code = "41141", - detailed = FALSE, - category = "cubes", - error.ignore = FALSE, - database = "genesis"), - regexp = "No object found for your request") + expect_error(object = gen_catalogue(code = "41141", + detailed = FALSE, + category = "cubes", + error.ignore = FALSE, + database = "genesis"), + regexp = "No object found for your request") }) @@ -63,11 +61,11 @@ with_mock_dir("catalogue3", { #------------------------------------------------------------------------------- -with_mock_dir("catalogue4", { - test_that("gen_catalogue function returns list of length 3 if all categories are selected", { +test_that("gen_catalogue function returns list of length 3 if all categories are selected", { + + with_mock_dir("catalogue4", { skip_on_cran() - skip_on_ci() res <- gen_catalogue(code = "611*", detailed = FALSE, @@ -80,19 +78,18 @@ with_mock_dir("catalogue4", { }) -with_mock_dir("catalogue5", { - test_that("gen_catalogue function messages on TRUE error.ignore param", { +test_that("gen_catalogue function messages on TRUE error.ignore param", { + + with_mock_dir("catalogue5", { skip_on_cran() - skip_on_ci() - expect_message( - gen_catalogue(code = "711*", - detailed = TRUE, - category = "tables", - error.ignore = TRUE, - database = "genesis"), - regexp = "Use 'error.ignore = FALSE' to stop the function at the point where no object could be found.") + expect_message(object = gen_catalogue(code = "711*", + detailed = TRUE, + category = "tables", + error.ignore = TRUE, + database = "genesis"), + regexp = "Use 'error.ignore = FALSE' to stop the function at the point where no object could be found.") }) @@ -104,58 +101,42 @@ with_mock_dir("catalogue5", { test_that("gen_catalogue function errors on multiple codes", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_catalogue(code = c("611*", "711*"), - detailed = TRUE, - category = "tables", - database = "genesis"), - regexp = "Parameter 'code' must be a single string.") + expect_error(object = gen_catalogue(code = c("611*", "711*"), + detailed = TRUE, + category = "tables", + database = "genesis"), + regexp = "Parameter 'code' must be a single string.") }) test_that("gen_catalogue function errors on numeric code param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_catalogue(code = 12345, - detailed = TRUE, - category = "tables", - database = "genesis"), - regexp = "Parameter 'code' has to be of type 'character'.") + expect_error(object = gen_catalogue(code = 12345, + detailed = TRUE, + category = "tables", + database = "genesis"), + regexp = "Parameter 'code' has to be of type 'character'.") }) #------------------------------------------------------------------------------- test_that("gen_catalogue function errors on wrong categories", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_catalogue(code = "611*", - detailed = TRUE, - category = "variables", - database = "genesis"), - regexp = "Available categories are 'tables', 'statistics', and 'cubes'.") + expect_error(object = gen_catalogue(code = "611*", + detailed = TRUE, + category = "variables", + database = "genesis"), + regexp = "Available categories are 'tables', 'statistics', and 'cubes'.") }) test_that("gen_catalogue function errors on too many categories", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_catalogue(code = "611*", - detailed = TRUE, - category = c("variables", "statistics", "tables", "cubes"), - database = "genesis"), - regexp = "Parameter 'category' has to have a length of 1 to 3.") + expect_error(object = gen_catalogue(code = "611*", + detailed = TRUE, + category = c("variables", "statistics", "tables", "cubes"), + database = "genesis"), + regexp = "Parameter 'category' has to have a length of 1 to 3.") }) @@ -163,30 +144,25 @@ test_that("gen_catalogue function errors on too many categories", { test_that("gen_catalogue function errors on numeric detailed param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_catalogue(code = "711*", - detailed = 1, - category = "tables", - database = "genesis"), - regexp = "Parameter 'detailed' has to be of type 'logical' and of length 1.") + expect_error(object = gen_catalogue(code = "711*", + detailed = 1, + category = "tables", + database = "genesis"), + regexp = "Parameter 'detailed' has to be of type 'logical' and of length 1.") }) -with_mock_dir("catalogue6", { - test_that("gen_catalogue function messages on FALSE detailed param", { +test_that("gen_catalogue function messages on FALSE detailed param", { + + with_mock_dir("catalogue6", { skip_on_cran() - skip_on_ci() - expect_message( - gen_catalogue(code = "711*", - detailed = FALSE, - category = "tables", - database = "genesis"), - regexp = "Use 'detailed = TRUE' to obtain the complete output.") + expect_message(object = gen_catalogue(code = "711*", + detailed = FALSE, + category = "tables", + database = "genesis"), + regexp = "Use 'detailed = TRUE' to obtain the complete output.") }) @@ -196,16 +172,12 @@ with_mock_dir("catalogue6", { test_that("gen_catalogue function errors on wrong error.ignore param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_catalogue(code = "711*", - detailed = TRUE, - category = "tables", - error.ignore = 1, - database = "genesis"), - regexp = "Parameter 'error.ignore' has to be of type 'logical' and of length 1.") + expect_error(object = gen_catalogue(code = "711*", + detailed = TRUE, + category = "tables", + error.ignore = 1, + database = "genesis"), + regexp = "Parameter 'error.ignore' has to be of type 'logical' and of length 1.") }) diff --git a/tests/testthat/test_gen_cube.R b/tests/testthat/test_gen_cube.R index 73e97a1..7e5873f 100644 --- a/tests/testthat/test_gen_cube.R +++ b/tests/testthat/test_gen_cube.R @@ -2,16 +2,17 @@ # Test for expected output & API calls ---- #------------------------------------------------------------------------------- -with_mock_dir("cube1", { +test_that("gen_cube returns data.frame", { - test_that("gen_cube returns data.frame", { + with_mock_dir("cube1", { skip_on_cran() - skip_on_ci() - result <- gen_cube("47414BJ002", database = "genesis", startyear = 2024) + result <- gen_cube(name = "47414BJ002", + database = "genesis", + startyear = 2024) - expect_s3_class(result, + expect_s3_class(object = result, class = "data.frame") attrs <- attributes(result) @@ -29,10 +30,14 @@ with_mock_dir("cube1", { test_that("gen_cube errors on wrong year parameters", { - expect_error(gen_cube("47414BJ002", database = "genesis", startyear = 1893), + expect_error(object = gen_cube(name = "47414BJ002", + database = "genesis", + startyear = 1893), regexp = "The parameter 'year' has been misspecified") - expect_error(gen_cube("47414BJ002", database = "genesis", startyear = "1893"), + expect_error(object = gen_cube(name = "47414BJ002", + database = "genesis", + startyear = "1893"), regexp = "The parameter 'year' has been misspecified") }) diff --git a/tests/testthat/test_gen_find.R b/tests/testthat/test_gen_find.R index e64e423..a6b3063 100644 --- a/tests/testthat/test_gen_find.R +++ b/tests/testthat/test_gen_find.R @@ -2,8 +2,9 @@ # Test for expected output & API calls ---- #------------------------------------------------------------------------------- -with_mock_dir("find1", { - test_that("gen_find returns list", { +test_that("gen_find returns list", { + + with_mock_dir("find1", { skip_on_cran() skip_on_ci() @@ -14,7 +15,7 @@ with_mock_dir("find1", { error.ignore = FALSE, database = "genesis") - expect_type(result, type = "list") + expect_type(object = result, type = "list") attrs <- attributes(result) @@ -29,9 +30,9 @@ with_mock_dir("find1", { #------------------------------------------------------------------------------- -with_mock_dir("find2_fake", { +test_that("gen_find errors if there is an error code (fake response)", { - test_that("gen_find errors if there is an error code (fake response)", { + with_mock_dir("find2_fake", { # Here, the mockfile needs to be altered: # The Status$Code needs, e.g., 999 @@ -42,9 +43,10 @@ with_mock_dir("find2_fake", { # type = "list") skip_on_cran() - skip_on_ci() - expect_error(object = gen_find(term = "bus", error.ignore = TRUE, database = "genesis"), + expect_error(object = gen_find(term = "bus", + error.ignore = TRUE, + database = "genesis"), regexp = "test error message") }) @@ -53,14 +55,15 @@ with_mock_dir("find2_fake", { #------------------------------------------------------------------------------- -with_mock_dir("find3", { +test_that("gen_find messages for 'detailed = TRUE'", { - test_that("gen_find messages for 'detailed = TRUE'", { + with_mock_dir("find3", { skip_on_cran() - skip_on_ci() - expect_message(object = gen_find(term = "zensus", error.ignore = TRUE, database = "genesis"), + expect_message(object = gen_find(term = "zensus", + error.ignore = TRUE, + database = "genesis"), regexp = "Use 'detailed = TRUE' to obtain the complete output.") }) @@ -73,50 +76,50 @@ with_mock_dir("find3", { test_that("gen_find function errors on numeric term param", { - skip_on_cran() - skip_on_ci() - - expect_error(object = gen_find(term = 12345, detailed = TRUE, category = "tables", database = "genesis"), + expect_error(object = gen_find(term = 12345, + detailed = TRUE, + category = "tables", + database = "genesis"), regexp = "Parameter 'term' has to be of type 'character'.") }) test_that("gen_find function errors on wrong category", { - skip_on_cran() - skip_on_ci() - - expect_error(object = gen_find(term = "bus", detailed = TRUE, category = "table", database = "genesis"), + expect_error(object = gen_find(term = "bus", + detailed = TRUE, + category = "table", + database = "genesis"), regexp = "Available categories for parameter 'category' for 'genesis' database are 'all', 'tables', 'statistics', 'variables', and 'cubes'.") }) test_that("gen_find function errors on wrong detailed param", { - skip_on_cran() - skip_on_ci() - - expect_error(object = gen_find(term = "bus", detailed = 1, category = "tables", database = "genesis"), + expect_error(object = gen_find(term = "bus", + detailed = 1, + category = "tables", + database = "genesis"), regexp = "Parameter 'detailed' has to be of type 'logical' and of length 1.") }) test_that("gen_find function errors on wrong ordering param", { - skip_on_cran() - skip_on_ci() - - expect_error(object = gen_find(term = "bus", ordering = 1, category = "tables", database = "genesis"), + expect_error(object = gen_find(term = "bus", + ordering = 1, + category = "tables", + database = "genesis"), regexp = "Parameter 'ordering' has to be of type 'logical' and of length 1.") }) test_that("gen_find function errors on wrong error.ignore param", { - skip_on_cran() - skip_on_ci() - - expect_error(object = gen_find(term = "bus", error.ignore = 1, category = "tables", database = "genesis"), + expect_error(object = gen_find(term = "bus", + error.ignore = 1, + category = "tables", + database = "genesis"), regexp = "Parameter 'error.ignore' has to be of type 'logical' and of length 1.") }) diff --git a/tests/testthat/test_gen_logincheck.R b/tests/testthat/test_gen_logincheck.R index 7600604..bf53e41 100644 --- a/tests/testthat/test_gen_logincheck.R +++ b/tests/testthat/test_gen_logincheck.R @@ -2,20 +2,19 @@ # Test for expected output & API calls ---- #------------------------------------------------------------------------------- -with_mock_dir("logincheck1_fake", { +test_that("gen_logincheck errors when the login failed (fake response)", { - test_that("gen_logincheck errors when the login failed (fake response)", { + with_mock_dir("logincheck1_fake", { # The mockfile needs to be altered with respect to the body/content # It needs to include the string "Ein Fehler ist aufgetreten" # So that the below error message is displayed skip_on_cran() - skip_on_ci() expect_error(object = gen_logincheck("genesis"), regexp = "There seems to be an issue with the authentication process") - }) + }, simplify = FALSE) -}, simplify = FALSE) +}) diff --git a/tests/testthat/test_gen_metadata.R b/tests/testthat/test_gen_metadata.R index 8227457..d6378b2 100644 --- a/tests/testthat/test_gen_metadata.R +++ b/tests/testthat/test_gen_metadata.R @@ -2,18 +2,17 @@ # Test for expected output & API calls ---- #------------------------------------------------------------------------------- -with_mock_dir("meta1", { +test_that("gen_metadata returns list", { - test_that("gen_metadata returns list", { + with_mock_dir("meta1", { skip_on_cran() - skip_on_ci() result <- gen_metadata(code = "11111-0001", category = "table", database = "genesis") - expect_type(result, type = "list") + expect_type(object = result, type = "list") attrs <- attributes(result) @@ -29,9 +28,9 @@ with_mock_dir("meta1", { #------------------------------------------------------------------------------- -with_mock_dir("meta2_fake", { +test_that("gen_metadata errors if there is an error code (fake response)", { - test_that("gen_metadata errors if there is an error code (fake response)", { + with_mock_dir("meta2_fake", { # Here, the mockfile needs to be altered: # Status$Code = 999 @@ -42,7 +41,6 @@ with_mock_dir("meta2_fake", { # type = "list") skip_on_cran() - skip_on_ci() expect_error(object = gen_metadata(code = "1*", category = "cube", @@ -55,12 +53,11 @@ with_mock_dir("meta2_fake", { #------------------------------------------------------------------------------- -with_mock_dir("meta3", { +test_that("gen_metadata gives message if error.ignore = TRUE", { - test_that("gen_metadata gives message if error.ignore = TRUE", { + with_mock_dir("meta3", { skip_on_cran() - skip_on_ci() expect_message(object = gen_metadata(code = "11111-0001", category = "table", @@ -78,9 +75,6 @@ with_mock_dir("meta3", { test_that("gen_metadata function errors on numeric code param", { - skip_on_cran() - skip_on_ci() - expect_error(object = gen_metadata(code = 12345, category = "Table", database = "genesis"), @@ -90,9 +84,6 @@ test_that("gen_metadata function errors on numeric code param", { test_that("gen_metadata function errors on multiple categories", { - skip_on_cran() - skip_on_ci() - expect_error(object = gen_metadata(code = "12345", category = c("Table", "Cube"), database = "genesis"), @@ -102,9 +93,6 @@ test_that("gen_metadata function errors on multiple categories", { test_that("gen_metadata function errors on wrong category", { - skip_on_cran() - skip_on_ci() - expect_error(object = gen_metadata(code = "11111", category = "Table", database = "genesis"), @@ -114,9 +102,6 @@ test_that("gen_metadata function errors on wrong category", { test_that("gen_metadata function errors on wrong error.ignore param", { - skip_on_cran() - skip_on_ci() - expect_error(object = gen_metadata(code = "11111", error.ignore = 1, category = "table", diff --git a/tests/testthat/test_gen_modified_data.R b/tests/testthat/test_gen_modified_data.R index 2b602f3..017ebd4 100644 --- a/tests/testthat/test_gen_modified_data.R +++ b/tests/testthat/test_gen_modified_data.R @@ -2,28 +2,30 @@ # Test for expected output & API calls ---- #------------------------------------------------------------------------------- -with_mock_dir("modified1", { - test_that("gen_modified_data function returns list", { +test_that("gen_modified_data function returns list", { + + with_mock_dir("modified1", { skip_on_cran() - skip_on_ci() - expect_type(gen_modified_data(code = "61111", date = "01.01.2022", database = "genesis"), + expect_type(object = gen_modified_data(code = "61111", + date = "01.01.2022", + database = "genesis"), type = "list") }) }) -with_mock_dir("modified2", { - test_that("gen_modified_data function returns message", { +test_that("gen_modified_data function returns message", { + + with_mock_dir("modified2", { skip_on_cran() - skip_on_ci() - expect_message( - gen_modified_data(code = "61111", database = "genesis"), - regexp = "Please note that per default the current system date is used.") + expect_message(object = gen_modified_data(code = "61111", + database = "genesis"), + regexp = "Please note that per default the current system date is used.") }) @@ -31,13 +33,15 @@ with_mock_dir("modified2", { #------------------------------------------------------------------------------- -with_mock_dir("modified3", { - test_that("gen_modified_data function returns list with attributes", { +test_that("gen_modified_data function returns list with attributes", { + + with_mock_dir("modified3", { skip_on_cran() - skip_on_ci() - result <- gen_modified_data(code = "61111", date = "01.01.2022", database = "genesis") + result <- gen_modified_data(code = "61111", + date = "01.01.2022", + database = "genesis") attrs <- attributes(result) @@ -51,12 +55,11 @@ with_mock_dir("modified3", { }) -with_mock_dir("modified4", { +test_that("gen_modified_data function warns if there is a non-zero status code", { - test_that("gen_modified_data function warns if there is a non-zero status code", { + with_mock_dir("modified4", { skip_on_cran() - skip_on_ci() expect_message(object = gen_modified_data(code = "61234", date = "01.01.2022", @@ -73,23 +76,17 @@ with_mock_dir("modified4", { test_that("gen_modified_data errors on misspecified dates", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_modified_data(code = "61111", date = "1.1.2022"), - regexp = "it has to be of length 1 and format DD.MM.YYYY") + expect_error(object = gen_modified_data(code = "61111", + date = "1.1.2022"), + regexp = "it has to be of length 1 and format DD.MM.YYYY") }) test_that("gen_modified_data errors on misspecified dates", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_modified_data(code = "61111", date = 23456), - regexp = "'date', it has to be of type 'character'.") + expect_error(object = gen_modified_data(code = "61111", + date = 23456), + regexp = "'date', it has to be of type 'character'.") }) @@ -97,23 +94,15 @@ test_that("gen_modified_data errors on misspecified dates", { test_that("gen_modified_data errors on multiple codes", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_modified_data(code = c("611*", "711*")), - regexp = "Parameter 'code' must be a single string.") + expect_error(object = gen_modified_data(code = c("611*", "711*")), + regexp = "Parameter 'code' must be a single string.") }) test_that("gen_modified_data function errors on numeric code param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_modified_data(code = 12345), - regexp = "Parameter 'code' has to be of type 'character'.") + expect_error(object = gen_modified_data(code = 12345), + regexp = "Parameter 'code' has to be of type 'character'.") }) @@ -121,11 +110,8 @@ test_that("gen_modified_data function errors on numeric code param", { test_that("gen_modified_data function errors on wrong type value", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_modified_data(code = "12345", type = "diesdasananas"), - regexp = "'arg' should be one of") + expect_error(object = gen_modified_data(code = "12345", + type = "diesdasananas"), + regexp = "'arg' should be one of") }) diff --git a/tests/testthat/test_gen_objects2stat.R b/tests/testthat/test_gen_objects2stat.R index 17f6eeb..cea64a9 100644 --- a/tests/testthat/test_gen_objects2stat.R +++ b/tests/testthat/test_gen_objects2stat.R @@ -2,15 +2,15 @@ # Test for expected output & API calls ---- #------------------------------------------------------------------------------- -with_mock_dir("xy_statistic1", { - test_that("gen_objects2stat does return a list as result", { +test_that("gen_objects2stat does return a list as result", { + + with_mock_dir("xy_statistic1", { skip_on_cran() - skip_on_ci() result <- gen_objects2stat(code = "61111", database = "genesis") - expect_type(result, type = "list") + expect_type(object = result, type = "list") attrs <- attributes(result) @@ -25,16 +25,16 @@ with_mock_dir("xy_statistic1", { #------------------------------------------------------------------------------- -with_mock_dir("xy_statistic2", { - test_that("gen_objects2stat does return a data.frame for a single category", { +test_that("gen_objects2stat does return a data.frame for a single category", { + + with_mock_dir("xy_statistic2", { skip_on_cran() - skip_on_ci() - expect_s3_class(gen_objects2stat(code = "61111", - category = "tables", - database = "genesis"), - class = "data.frame") + expect_s3_class(object = gen_objects2stat(code = "61111", + category = "tables", + database = "genesis"), + class = "data.frame") }) @@ -46,23 +46,21 @@ with_mock_dir("xy_statistic2", { test_that("gen_objects2stat function errors on multiple codes", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_objects2stat(code = c("611*", "711*"), detailed = TRUE, category = "tables", database = "genesis"), - regexp = "Parameter 'code' must be a single string.") + expect_error(object = gen_objects2stat(code = c("611*", "711*"), + detailed = TRUE, + category = "tables", + database = "genesis"), + regexp = "Parameter 'code' must be a single string.") }) test_that("gen_objects2stat function errors on numeric code param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_objects2stat(code = 12345, detailed = TRUE, category = "tables", database = "genesis"), - regexp = "Parameter 'code' has to be of type 'character'.") + expect_error(object = gen_objects2stat(code = 12345, + detailed = TRUE, + category = "tables", + database = "genesis"), + regexp = "Parameter 'code' has to be of type 'character'.") }) @@ -70,24 +68,21 @@ test_that("gen_objects2stat function errors on numeric code param", { test_that("gen_objects2stat function errors on wrong categories", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_objects2stat(code = "611*", detailed = TRUE, category = "statistics", database = "genesis"), - regexp = "Available categories are 'tables', 'variables', and 'cubes'.") + expect_error(object = gen_objects2stat(code = "611*", + detailed = TRUE, + category = "statistics", + database = "genesis"), + regexp = "Available categories are 'tables', 'variables', and 'cubes'.") }) test_that("gen_objects2stat function errors on too many categories", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_objects2stat(code = "611*", detailed = TRUE, - category = c("variables", "statistics", "tables", "cubes"), database = "genesis"), - regexp = "Parameter 'category' has to have a length of 1 to 3.") + expect_error(object = gen_objects2stat(code = "611*", + detailed = TRUE, + category = c("variables", "statistics", "tables", "cubes"), + dsatabase = "genesis"), + regexp = "Parameter 'category' has to have a length of 1 to 3.") }) @@ -95,24 +90,25 @@ test_that("gen_objects2stat function errors on too many categories", { test_that("gen_objects2stat function errors on numeric detailed param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_objects2stat(code = "711*", detailed = 1, category = "tables", database = "genesis"), - regexp = "Parameter 'detailed' has to be of type 'logical' and of length 1.") + expect_error(object = gen_objects2stat(code = "711*", + detailed = 1, + category = "tables", + database = "genesis"), + regexp = "Parameter 'detailed' has to be of type 'logical' and of length 1.") }) -with_mock_dir("xy_statistic3", { - test_that("gen_objects2stat function messages on FALSE detailed param", { +test_that("gen_objects2stat function messages on FALSE detailed param", { + + with_mock_dir("xy_statistic3", { skip_on_cran() - skip_on_ci() - expect_message( - gen_objects2stat(code = "61111", detailed = FALSE, category = "tables", database = "genesis"), - regexp = "Use 'detailed = TRUE' to obtain the complete output.") + expect_message(object = gen_objects2stat(code = "61111", + detailed = FALSE, + category = "tables", + database = "genesis"), + regexp = "Use 'detailed = TRUE' to obtain the complete output.") }) @@ -122,11 +118,8 @@ with_mock_dir("xy_statistic3", { test_that("gen_objects2stat function errors on wrong error.ignore param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_objects2stat(code = "711*", error.ignore = 1), - regexp = "Parameter 'error.ignore' has to be of type 'logical' and of length 1.") + expect_error(object = gen_objects2stat(code = "711*", + error.ignore = 1), + regexp = "Parameter 'error.ignore' has to be of type 'logical' and of length 1.") }) diff --git a/tests/testthat/test_gen_objects2var.R b/tests/testthat/test_gen_objects2var.R index ad2ccc9..e6f04e3 100644 --- a/tests/testthat/test_gen_objects2var.R +++ b/tests/testthat/test_gen_objects2var.R @@ -2,15 +2,16 @@ # Test for expected output & API calls ---- #------------------------------------------------------------------------------- -with_mock_dir("xy_variable1", { - test_that("gen_objects2var does return a list as result", { +test_that("gen_objects2var does return a list as result", { + + with_mock_dir("xy_variable1", { skip_on_cran() - skip_on_ci() - result <- gen_objects2var(code = "DLAND", database = "genesis") + result <- gen_objects2var(code = "DLAND", + database = "genesis") - expect_type(result, type = "list") + expect_type(object = result, type = "list") attrs <- attributes(result) @@ -25,16 +26,15 @@ with_mock_dir("xy_variable1", { #------------------------------------------------------------------------------- -with_mock_dir("xy_variable2", { +test_that("gen_objects2var does return a data.frame for a single category", { - test_that("gen_objects2var does return a data.frame for a single category", { + with_mock_dir("xy_variable2", { skip_on_cran() - skip_on_ci() - expect_s3_class(gen_objects2var(code = "DLAND", - category = "tables", - database = "genesis"), + expect_s3_class(object = gen_objects2var(code = "DLAND", + category = "tables", + database = "genesis"), class = "data.frame") }) @@ -47,23 +47,19 @@ with_mock_dir("xy_variable2", { test_that("gen_objects2var function errors on multiple codes", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_objects2var(code = c("DLAND", "LAND"), detailed = TRUE, category = "tables"), - regexp = "Parameter 'code' must be a single string.") + expect_error(object = gen_objects2var(code = c("DLAND", "LAND"), + detailed = TRUE, + category = "tables"), + regexp = "Parameter 'code' must be a single string.") }) test_that("gen_objects2var function errors on numeric code param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_objects2var(code = 12345, detailed = TRUE, category = "tables"), - regexp = "Parameter 'code' has to be of type 'character'.") + expect_error(object = gen_objects2var(code = 12345, + detailed = TRUE, + category = "tables"), + regexp = "Parameter 'code' has to be of type 'character'.") }) @@ -71,24 +67,20 @@ test_that("gen_objects2var function errors on numeric code param", { test_that("gen_objects2var function errors on wrong categories", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_objects2var(code = "DLAND", detailed = TRUE, category = "variables", database = "genesis"), - regexp = "Available categories are 'tables', 'statistics', and 'cubes'.") + expect_error(object = gen_objects2var(code = "DLAND", + detailed = TRUE, + category = "variables", + database = "genesis"), + regexp = "Available categories are 'tables', 'statistics', and 'cubes'.") }) test_that("gen_objects2var function errors on too many categories", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_objects2var(code = "611*", detailed = TRUE, - category = c("variables", "statistics", "tables", "cubes")), - regexp = "Parameter 'category' has to have a length of 1 to 3.") + expect_error(object = gen_objects2var(code = "611*", + detailed = TRUE, + category = c("variables", "statistics", "tables", "cubes")), + regexp = "Parameter 'category' has to have a length of 1 to 3.") }) @@ -96,24 +88,24 @@ test_that("gen_objects2var function errors on too many categories", { test_that("gen_objects2var function errors on numeric detailed param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_objects2var(code = "DLAND", detailed = 1, category = "tables"), - regexp = "Parameter 'detailed' has to be of type 'logical' and of length 1.") + expect_error(object = gen_objects2var(code = "DLAND", + detailed = 1, + category = "tables"), + regexp = "Parameter 'detailed' has to be of type 'logical' and of length 1.") }) -with_mock_dir("xy_variable3", { - test_that("gen_objects2var function messages on FALSE detailed param", { +test_that("gen_objects2var function messages on FALSE detailed param", { + + with_mock_dir("xy_variable3", { skip_on_cran() - skip_on_ci() - expect_message( - gen_objects2var(code = "DLAND", detailed = FALSE, category = "tables", database = "genesis"), - regexp = "Use 'detailed = TRUE' to obtain the complete output.") + expect_message(object = gen_objects2var(code = "DLAND", + detailed = FALSE, + category = "tables", + database = "genesis"), + regexp = "Use 'detailed = TRUE' to obtain the complete output.") }) @@ -123,11 +115,8 @@ with_mock_dir("xy_variable3", { test_that("gen_objects2var function errors on wrong error.ignore param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_objects2var(code = "7DLAND", error.ignore = 1), - regexp = "Parameter 'error.ignore' has to be of type 'logical' and of length 1.") + expect_error(object = gen_objects2var(code = "7DLAND", + error.ignore = 1), + regexp = "Parameter 'error.ignore' has to be of type 'logical' and of length 1.") }) diff --git a/tests/testthat/test_gen_search_vars.R b/tests/testthat/test_gen_search_vars.R index 5aae076..12408a4 100644 --- a/tests/testthat/test_gen_search_vars.R +++ b/tests/testthat/test_gen_search_vars.R @@ -2,27 +2,27 @@ # Test for expected output & API calls ---- #------------------------------------------------------------------------------- -with_mock_dir("searchvars1", { - test_that("gen_search_vars returns a list element", { +test_that("gen_search_vars returns a list element", { - skip_on_cran() - skip_on_ci() + with_mock_dir("searchvars1", { - result <- gen_search_vars(code = NULL, - sortcriterion = c("code", "content"), - error.ignore = FALSE, - database = "genesis") + skip_on_cran() - expect_type(result, type = "list") + result <- gen_search_vars(code = NULL, + sortcriterion = c("code", "content"), + error.ignore = FALSE, + database = "genesis") - attrs <- attributes(result) + expect_type(object = result, type = "list") - expect_true("Code" %in% names(attrs)) - expect_true("Language" %in% names(attrs)) - expect_true("Pagelength" %in% names(attrs)) - expect_true("Copyright" %in% names(attrs)) + attrs <- attributes(result) - }) + expect_true("Code" %in% names(attrs)) + expect_true("Language" %in% names(attrs)) + expect_true("Pagelength" %in% names(attrs)) + expect_true("Copyright" %in% names(attrs)) + + }) }) @@ -32,23 +32,19 @@ with_mock_dir("searchvars1", { test_that("gen_search_vars function errors on multiple codes", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_search_vars(code = c("611*", "711*"), detailed = TRUE, category = "tables"), - regexp = "Parameter 'code' must be a single string.") + expect_error(object = gen_search_vars(code = c("611*", "711*"), + detailed = TRUE, + category = "tables"), + regexp = "Parameter 'code' must be a single string.") }) test_that("gen_search_vars function errors on numeric code param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_search_vars(code = 12345, detailed = TRUE, category = "tables"), - regexp = "Parameter 'code' has to be of type 'character'.") + expect_error(object = gen_search_vars(code = 12345, + detailed = TRUE, + category = "tables"), + regexp = "Parameter 'code' has to be of type 'character'.") }) @@ -56,23 +52,17 @@ test_that("gen_search_vars function errors on numeric code param", { test_that("gen_search_vars function errors on wrong sort param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_search_vars(code = "61111", sortcriterion = "date"), - regexp = "Parameter 'sortcriterion' has to be 'code' or 'content'.") + expect_error(object = gen_search_vars(code = "61111", + sortcriterion = "date"), + regexp = "Parameter 'sortcriterion' has to be 'code' or 'content'.") }) test_that("gen_search_vars function errors on wrong sort param type", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_search_vars(code = "6111*", sortcriterion = 123), - regexp = "Parameter 'sortcriterion' has to be of type 'character'.") + expect_error(object = gen_search_vars(code = "6111*", + sortcriterion = 123), + regexp = "Parameter 'sortcriterion' has to be of type 'character'.") }) @@ -80,12 +70,9 @@ test_that("gen_search_vars function errors on wrong sort param type", { test_that("gen_search_vars function errors on wrong error.ignore param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_search_vars(code = "711*", error.ignore = 1), - regexp = "Parameter 'error.ignore' has to be of type 'logical' and of length 1.") + expect_error(object = gen_search_vars(code = "711*", + error.ignore = 1), + regexp = "Parameter 'error.ignore' has to be of type 'logical' and of length 1.") }) diff --git a/tests/testthat/test_gen_table.R b/tests/testthat/test_gen_table.R index 56333d3..e92f44d 100644 --- a/tests/testthat/test_gen_table.R +++ b/tests/testthat/test_gen_table.R @@ -2,18 +2,17 @@ # Test for expected output & API calls ---- #------------------------------------------------------------------------------- -with_mock_dir("table1", { +test_that("gen_table returns data.frame", { - test_that("gen_table returns data.frame", { + with_mock_dir("table1", { skip_on_cran() - skip_on_ci() result <- gen_table(name = "61111-0001", startyear = 2023, database = "genesis") - expect_s3_class(result, + expect_s3_class(object = result, class = "data.frame") attrs <- attributes(result) @@ -31,10 +30,14 @@ with_mock_dir("table1", { test_that("gen_table errors on wrong year parameters", { - expect_error(gen_table("61111-0004", startyear = 1893, database = "genesis"), + expect_error(object = gen_table(name = "61111-0004", + startyear = 1893, + database = "genesis"), regexp = "The parameter 'year' has been misspecified") - expect_error(gen_table("61111-0004", startyear = "1893", database = "genesis"), + expect_error(object = gen_table(name = "61111-0004", + startyear = "1893", + database = "genesis"), regexp = "The parameter 'year' has been misspecified") }) diff --git a/tests/testthat/test_gen_val2var.R b/tests/testthat/test_gen_val2var.R index 7adbeed..6d5adcb 100644 --- a/tests/testthat/test_gen_val2var.R +++ b/tests/testthat/test_gen_val2var.R @@ -2,19 +2,18 @@ # Test for expected output & API calls ---- #------------------------------------------------------------------------------- -with_mock_dir("values1", { - test_that("gen_val2var function errors if there is no result", { +test_that("gen_val2var function errors if there is no result", { + + with_mock_dir("values1", { skip_on_cran() - skip_on_ci() - expect_message( - gen_val2var(code = "61111", - detailed = TRUE, - sortcriterion = "code", - database = "genesis", - language = "en"), - regexp = "No objects found.") + expect_message(object = gen_val2var(code = "61111", + detailed = TRUE, + sortcriterion = "code", + database = "genesis", + language = "en"), + regexp = "No objects found.") }) @@ -22,18 +21,18 @@ with_mock_dir("values1", { # #------------------------------------------------------------------------------- -with_mock_dir("values2", { - test_that("gen_val2var function returns list", { +test_that("gen_val2var function returns list", { + + with_mock_dir("values2", { skip_on_cran() - skip_on_ci() result <- gen_val2var(code = "DLAND", - detailed = TRUE, - sortcriterion = "code", - database = "genesis") + detailed = TRUE, + sortcriterion = "code", + database = "genesis") - expect_type(result, type = "list") + expect_type(object = result, type = "list") attrs <- attributes(result) @@ -52,23 +51,21 @@ with_mock_dir("values2", { test_that("gen_val2var function errors on multiple codes", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_val2var(code = c("611*", "711*"), detailed = TRUE, category = "tables", database = "genesis"), - regexp = "Parameter 'code' must be a single string.") + expect_error(object = gen_val2var(code = c("611*", "711*"), + detailed = TRUE, + category = "tables", + database = "genesis"), + regexp = "Parameter 'code' must be a single string.") }) test_that("gen_val2var function errors on numeric code param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_val2var(code = 12345, detailed = TRUE, category = "tables", "genesis"), - regexp = "Parameter 'code' has to be of type 'character'.") + expect_error(object = gen_val2var(code = 12345, + detailed = TRUE, + category = "tables", + database = "genesis"), + regexp = "Parameter 'code' has to be of type 'character'.") }) @@ -76,23 +73,19 @@ test_that("gen_val2var function errors on numeric code param", { test_that("gen_val2var function errors on wrong sort param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_val2var(code = "61111", sortcriterion = "date", database = "genesis"), - regexp = "Parameter 'sortcriterion' has to be 'code' or 'content'.") + expect_error(object = gen_val2var(code = "61111", + sortcriterion = "date", + database = "genesis"), + regexp = "Parameter 'sortcriterion' has to be 'code' or 'content'.") }) test_that("gen_val2var function errors on wrong sort param type", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_val2var(code = "6111*", sortcriterion = 123, database = "genesis"), - regexp = "Parameter 'sortcriterion' has to be of type 'character'.") + expect_error(object = gen_val2var(code = "6111*", + sortcriterion = 123, + database = "genesis"), + regexp = "Parameter 'sortcriterion' has to be of type 'character'.") }) @@ -100,12 +93,10 @@ test_that("gen_val2var function errors on wrong sort param type", { test_that("gen_val2var function errors on wrong error.ignore param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_val2var(code = "711*", error.ignore = 1, database = "genesis"), - regexp = "Parameter 'error.ignore' has to be of type 'logical' and of length 1.") + expect_error(object = gen_val2var(code = "711*", + error.ignore = 1, + database = "genesis"), + regexp = "Parameter 'error.ignore' has to be of type 'logical' and of length 1.") }) diff --git a/tests/testthat/test_gen_var2stat.R b/tests/testthat/test_gen_var2stat.R index 274db14..800ad5d 100644 --- a/tests/testthat/test_gen_var2stat.R +++ b/tests/testthat/test_gen_var2stat.R @@ -2,18 +2,18 @@ # Test for expected output & API calls ---- #------------------------------------------------------------------------------- -with_mock_dir("variables1", { - test_that("gen_var2stat function returns list", { +test_that("gen_var2stat function returns list", { + + with_mock_dir("variables1", { skip_on_cran() - skip_on_ci() result <- gen_var2stat(code = "61111", detailed = TRUE, sortcriterion = "code", database = "genesis") - expect_type(result, type = "list") + expect_type(object = result, type = "list") attrs <- attributes(result) @@ -28,12 +28,11 @@ with_mock_dir("variables1", { #------------------------------------------------------------------------------- -with_mock_dir("variables2_fake", { +test_that("gen_var2stat function errors if there is a problem (fake response)", { - test_that("gen_var2stat function errors if there is a problem (fake response)", { + with_mock_dir("variables2_fake", { skip_on_cran() - skip_on_ci() # Here, it is necessary to change the mockfile: # Change the Status$Code to, e.g., 999 @@ -57,23 +56,19 @@ with_mock_dir("variables2_fake", { test_that("gen_var2stat function errors on multiple codes", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_var2stat(code = c("611*", "711*"), detailed = TRUE, category = "tables"), - regexp = "Parameter 'code' must be a single string.") + expect_error(object = gen_var2stat(code = c("611*", "711*"), + detailed = TRUE, + category = "tables"), + regexp = "Parameter 'code' must be a single string.") }) test_that("gen_var2stat function errors on numeric code param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_var2stat(code = 12345, detailed = TRUE, category = "tables"), - regexp = "Parameter 'code' has to be of type 'character'.") + expect_error(object = gen_var2stat(code = 12345, + detailed = TRUE, + category = "tables"), + regexp = "Parameter 'code' has to be of type 'character'.") }) @@ -81,24 +76,24 @@ test_that("gen_var2stat function errors on numeric code param", { test_that("gen_var2stat function errors on numeric detailed param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_var2stat(code = "711*", detailed = 1, category = "tables"), - regexp = "Parameter 'detailed' has to be of type 'logical' and of length 1.") + expect_error(object = gen_var2stat(code = "711*", + detailed = 1, + category = "tables"), + regexp = "Parameter 'detailed' has to be of type 'logical' and of length 1.") }) -with_mock_dir("variables3", { - test_that("gen_var2stat function messages on FALSE detailed param", { +test_that("gen_var2stat function messages on FALSE detailed param", { + + with_mock_dir("variables3", { skip_on_cran() - skip_on_ci() - expect_message( - gen_var2stat(code = "61111", detailed = FALSE, category = "tables", database = "genesis"), - regexp = "Use 'detailed = TRUE' to obtain the complete output.") + expect_message(object = gen_var2stat(code = "61111", + detailed = FALSE, + category = "tables", + database = "genesis"), + regexp = "Use 'detailed = TRUE' to obtain the complete output.") }) @@ -108,23 +103,17 @@ with_mock_dir("variables3", { test_that("gen_var2stat function errors on wrong sort param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_var2stat(code = "61111", sortcriterion = "date"), - regexp = "Parameter 'sortcriterion' has to be 'code' or 'content'.") + expect_error(object = gen_var2stat(code = "61111", + sortcriterion = "date"), + regexp = "Parameter 'sortcriterion' has to be 'code' or 'content'.") }) test_that("gen_var2stat function errors on wrong sort param type", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_var2stat(code = "6111*", sortcriterion = 123), - regexp = "Parameter 'sortcriterion' has to be of type 'character'.") + expect_error(object = gen_var2stat(code = "6111*", + sortcriterion = 123), + regexp = "Parameter 'sortcriterion' has to be of type 'character'.") }) @@ -132,11 +121,8 @@ test_that("gen_var2stat function errors on wrong sort param type", { test_that("gen_var2stat function errors on wrong error.ignore param", { - skip_on_cran() - skip_on_ci() - - expect_error( - gen_var2stat(code = "711*", error.ignore = 1), - regexp = "Parameter 'error.ignore' has to be of type 'logical' and of length 1.") + expect_error(object = gen_var2stat(code = "711*", + error.ignore = 1), + regexp = "Parameter 'error.ignore' has to be of type 'logical' and of length 1.") }) From 43253b8905aaf0bffe5e3eeca620046056597ce4 Mon Sep 17 00:00:00 2001 From: buhly Date: Thu, 19 Feb 2026 21:52:59 +0100 Subject: [PATCH 23/26] fix tests, pt. 2 --- tests/testthat/test_gen_alternative_terms.R | 1 + tests/testthat/test_gen_catalogue.R | 6 ++++++ tests/testthat/test_gen_cube.R | 1 + tests/testthat/test_gen_find.R | 2 ++ tests/testthat/test_gen_logincheck.R | 1 + tests/testthat/test_gen_metadata.R | 3 +++ tests/testthat/test_gen_modified_data.R | 4 ++++ tests/testthat/test_gen_objects2stat.R | 3 +++ tests/testthat/test_gen_objects2var.R | 3 +++ tests/testthat/test_gen_search_vars.R | 1 + tests/testthat/test_gen_table.R | 1 + tests/testthat/test_gen_val2var.R | 2 ++ tests/testthat/test_gen_var2stat.R | 3 +++ 13 files changed, 31 insertions(+) diff --git a/tests/testthat/test_gen_alternative_terms.R b/tests/testthat/test_gen_alternative_terms.R index 7a1b1aa..2ea319a 100644 --- a/tests/testthat/test_gen_alternative_terms.R +++ b/tests/testthat/test_gen_alternative_terms.R @@ -7,6 +7,7 @@ test_that("search terms function returns list", { with_mock_dir("terms1", { skip_on_cran() + skip_on_ci() result <- gen_alternative_terms(term = "forst*", similarity = TRUE, diff --git a/tests/testthat/test_gen_catalogue.R b/tests/testthat/test_gen_catalogue.R index 5cf9055..cedbc5f 100644 --- a/tests/testthat/test_gen_catalogue.R +++ b/tests/testthat/test_gen_catalogue.R @@ -7,6 +7,7 @@ test_that("gen_catalogue function returns list for tables", { with_mock_dir("catalogue1", { skip_on_cran() + skip_on_ci() result <- gen_catalogue(code = "611*", detailed = TRUE, @@ -28,6 +29,7 @@ test_that("gen_catalogue function returns lists for statistics", { with_mock_dir("catalogue2", { skip_on_cran() + skip_on_ci() expect_type(object = gen_catalogue(code = "41141", detailed = FALSE, @@ -47,6 +49,7 @@ test_that("gen_catalogue function returns error if there are no results", { with_mock_dir("catalogue3", { skip_on_cran() + skip_on_ci() expect_error(object = gen_catalogue(code = "41141", detailed = FALSE, @@ -66,6 +69,7 @@ test_that("gen_catalogue function returns list of length 3 if all categories are with_mock_dir("catalogue4", { skip_on_cran() + skip_on_ci() res <- gen_catalogue(code = "611*", detailed = FALSE, @@ -83,6 +87,7 @@ test_that("gen_catalogue function messages on TRUE error.ignore param", { with_mock_dir("catalogue5", { skip_on_cran() + skip_on_ci() expect_message(object = gen_catalogue(code = "711*", detailed = TRUE, @@ -157,6 +162,7 @@ test_that("gen_catalogue function messages on FALSE detailed param", { with_mock_dir("catalogue6", { skip_on_cran() + skip_on_ci() expect_message(object = gen_catalogue(code = "711*", detailed = FALSE, diff --git a/tests/testthat/test_gen_cube.R b/tests/testthat/test_gen_cube.R index 7e5873f..42271d9 100644 --- a/tests/testthat/test_gen_cube.R +++ b/tests/testthat/test_gen_cube.R @@ -7,6 +7,7 @@ test_that("gen_cube returns data.frame", { with_mock_dir("cube1", { skip_on_cran() + skip_on_ci() result <- gen_cube(name = "47414BJ002", database = "genesis", diff --git a/tests/testthat/test_gen_find.R b/tests/testthat/test_gen_find.R index a6b3063..40c117d 100644 --- a/tests/testthat/test_gen_find.R +++ b/tests/testthat/test_gen_find.R @@ -43,6 +43,7 @@ test_that("gen_find errors if there is an error code (fake response)", { # type = "list") skip_on_cran() + skip_on_ci() expect_error(object = gen_find(term = "bus", error.ignore = TRUE, @@ -60,6 +61,7 @@ test_that("gen_find messages for 'detailed = TRUE'", { with_mock_dir("find3", { skip_on_cran() + skip_on_ci() expect_message(object = gen_find(term = "zensus", error.ignore = TRUE, diff --git a/tests/testthat/test_gen_logincheck.R b/tests/testthat/test_gen_logincheck.R index bf53e41..509a0b1 100644 --- a/tests/testthat/test_gen_logincheck.R +++ b/tests/testthat/test_gen_logincheck.R @@ -11,6 +11,7 @@ test_that("gen_logincheck errors when the login failed (fake response)", { # So that the below error message is displayed skip_on_cran() + skip_on_ci() expect_error(object = gen_logincheck("genesis"), regexp = "There seems to be an issue with the authentication process") diff --git a/tests/testthat/test_gen_metadata.R b/tests/testthat/test_gen_metadata.R index d6378b2..3280f9c 100644 --- a/tests/testthat/test_gen_metadata.R +++ b/tests/testthat/test_gen_metadata.R @@ -7,6 +7,7 @@ test_that("gen_metadata returns list", { with_mock_dir("meta1", { skip_on_cran() + skip_on_ci() result <- gen_metadata(code = "11111-0001", category = "table", @@ -41,6 +42,7 @@ test_that("gen_metadata errors if there is an error code (fake response)", { # type = "list") skip_on_cran() + skip_on_ci() expect_error(object = gen_metadata(code = "1*", category = "cube", @@ -58,6 +60,7 @@ test_that("gen_metadata gives message if error.ignore = TRUE", { with_mock_dir("meta3", { skip_on_cran() + skip_on_ci() expect_message(object = gen_metadata(code = "11111-0001", category = "table", diff --git a/tests/testthat/test_gen_modified_data.R b/tests/testthat/test_gen_modified_data.R index 017ebd4..7461eaa 100644 --- a/tests/testthat/test_gen_modified_data.R +++ b/tests/testthat/test_gen_modified_data.R @@ -7,6 +7,7 @@ test_that("gen_modified_data function returns list", { with_mock_dir("modified1", { skip_on_cran() + skip_on_ci() expect_type(object = gen_modified_data(code = "61111", date = "01.01.2022", @@ -22,6 +23,7 @@ test_that("gen_modified_data function returns message", { with_mock_dir("modified2", { skip_on_cran() + skip_on_ci() expect_message(object = gen_modified_data(code = "61111", database = "genesis"), @@ -38,6 +40,7 @@ test_that("gen_modified_data function returns list with attributes", { with_mock_dir("modified3", { skip_on_cran() + skip_on_ci() result <- gen_modified_data(code = "61111", date = "01.01.2022", @@ -60,6 +63,7 @@ test_that("gen_modified_data function warns if there is a non-zero status code", with_mock_dir("modified4", { skip_on_cran() + skip_on_ci() expect_message(object = gen_modified_data(code = "61234", date = "01.01.2022", diff --git a/tests/testthat/test_gen_objects2stat.R b/tests/testthat/test_gen_objects2stat.R index cea64a9..4fbed33 100644 --- a/tests/testthat/test_gen_objects2stat.R +++ b/tests/testthat/test_gen_objects2stat.R @@ -7,6 +7,7 @@ test_that("gen_objects2stat does return a list as result", { with_mock_dir("xy_statistic1", { skip_on_cran() + skip_on_ci() result <- gen_objects2stat(code = "61111", database = "genesis") @@ -30,6 +31,7 @@ test_that("gen_objects2stat does return a data.frame for a single category", { with_mock_dir("xy_statistic2", { skip_on_cran() + skip_on_ci() expect_s3_class(object = gen_objects2stat(code = "61111", category = "tables", @@ -103,6 +105,7 @@ test_that("gen_objects2stat function messages on FALSE detailed param", { with_mock_dir("xy_statistic3", { skip_on_cran() + skip_on_ci() expect_message(object = gen_objects2stat(code = "61111", detailed = FALSE, diff --git a/tests/testthat/test_gen_objects2var.R b/tests/testthat/test_gen_objects2var.R index e6f04e3..11a62a9 100644 --- a/tests/testthat/test_gen_objects2var.R +++ b/tests/testthat/test_gen_objects2var.R @@ -7,6 +7,7 @@ test_that("gen_objects2var does return a list as result", { with_mock_dir("xy_variable1", { skip_on_cran() + skip_on_ci() result <- gen_objects2var(code = "DLAND", database = "genesis") @@ -31,6 +32,7 @@ test_that("gen_objects2var does return a data.frame for a single category", { with_mock_dir("xy_variable2", { skip_on_cran() + skip_on_ci() expect_s3_class(object = gen_objects2var(code = "DLAND", category = "tables", @@ -100,6 +102,7 @@ test_that("gen_objects2var function messages on FALSE detailed param", { with_mock_dir("xy_variable3", { skip_on_cran() + skip_on_ci() expect_message(object = gen_objects2var(code = "DLAND", detailed = FALSE, diff --git a/tests/testthat/test_gen_search_vars.R b/tests/testthat/test_gen_search_vars.R index 12408a4..24b56e7 100644 --- a/tests/testthat/test_gen_search_vars.R +++ b/tests/testthat/test_gen_search_vars.R @@ -7,6 +7,7 @@ test_that("gen_search_vars returns a list element", { with_mock_dir("searchvars1", { skip_on_cran() + skip_on_ci() result <- gen_search_vars(code = NULL, sortcriterion = c("code", "content"), diff --git a/tests/testthat/test_gen_table.R b/tests/testthat/test_gen_table.R index e92f44d..c56bcc3 100644 --- a/tests/testthat/test_gen_table.R +++ b/tests/testthat/test_gen_table.R @@ -7,6 +7,7 @@ test_that("gen_table returns data.frame", { with_mock_dir("table1", { skip_on_cran() + skip_on_ci() result <- gen_table(name = "61111-0001", startyear = 2023, diff --git a/tests/testthat/test_gen_val2var.R b/tests/testthat/test_gen_val2var.R index 6d5adcb..92b6ab8 100644 --- a/tests/testthat/test_gen_val2var.R +++ b/tests/testthat/test_gen_val2var.R @@ -7,6 +7,7 @@ test_that("gen_val2var function errors if there is no result", { with_mock_dir("values1", { skip_on_cran() + skip_on_ci() expect_message(object = gen_val2var(code = "61111", detailed = TRUE, @@ -26,6 +27,7 @@ test_that("gen_val2var function returns list", { with_mock_dir("values2", { skip_on_cran() + skip_on_ci() result <- gen_val2var(code = "DLAND", detailed = TRUE, diff --git a/tests/testthat/test_gen_var2stat.R b/tests/testthat/test_gen_var2stat.R index 800ad5d..a04d2cf 100644 --- a/tests/testthat/test_gen_var2stat.R +++ b/tests/testthat/test_gen_var2stat.R @@ -7,6 +7,7 @@ test_that("gen_var2stat function returns list", { with_mock_dir("variables1", { skip_on_cran() + skip_on_ci() result <- gen_var2stat(code = "61111", detailed = TRUE, @@ -33,6 +34,7 @@ test_that("gen_var2stat function errors if there is a problem (fake response)", with_mock_dir("variables2_fake", { skip_on_cran() + skip_on_ci() # Here, it is necessary to change the mockfile: # Change the Status$Code to, e.g., 999 @@ -88,6 +90,7 @@ test_that("gen_var2stat function messages on FALSE detailed param", { with_mock_dir("variables3", { skip_on_cran() + skip_on_ci() expect_message(object = gen_var2stat(code = "61111", detailed = FALSE, From 3d234573f0c4442c0b2ef0d0fa67c2cc33b11085 Mon Sep 17 00:00:00 2001 From: buhly Date: Thu, 19 Feb 2026 22:09:28 +0100 Subject: [PATCH 24/26] edit readme --- README.Rmd | 8 ++++---- README.md | 12 ++++++------ 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/README.Rmd b/README.Rmd index 82a5994..fea0552 100644 --- a/README.Rmd +++ b/README.Rmd @@ -48,8 +48,8 @@ Almost all functions work on either one of them, on all of them or just on a sel | Datenbank des Statistischen Landesamtes Sachsen-Anhalt | st | #### Current information and (known) issues -- It is unclear whether the databases of Sachsen-Anhalt ('st'), Bayern ('bayern'), Nordrhein-Westfalen ('nrw') and Kommunale sBildungsmonitoring ('bildung') support the creation of jobs. This is because it is sometimes hard to create large enough tables on a test basis. The package supports their creation and download for all databases mentioned, but there might be issues because of lack of tests. -- The CSV files currently returned by the 'bayern' database (this affects `gen_table()`) appear to be slightly corrupted. This might cause warnings stemming from {vroom}. These can be ignored, but users have to carefully check the resulting `data.frames`. Use `vroom::problems()` to check the data objects for more information. +- It is unclear whether the databases of Sachsen-Anhalt (`st`), Bayern (`bayern`), Nordrhein-Westfalen (`nrw`) and Kommunales Bildungsmonitoring (`bildung`) support the creation of jobs. This is because it is sometimes hard to create large enough tables on a test basis. The package supports their creation and download for all databases mentioned, but there might be issues because of lack of tests. +- The CSV files currently returned by the `bayern` database (this affects `gen_table()`) appear to be slightly corrupted. This might cause warnings stemming from {vroom}. These can be ignored, but users have to carefully check the resulting `data.frames`. Use `vroom::problems()` to check the data objects for more information. ## Installation @@ -117,8 +117,8 @@ In short, there are functions divided in two main parts, searching for (meta)dat - **gen_objects2stat()**, **gen_objects2var()**, **gen_var2stat()**, **gen_val2var()**, **gen_val2var2stat()** and **gen_search_vars()**: Find objects, statistics, variables and values related to each other #### Retrieving data -- **gen_cube()**: Using this function, you can download 'cube' objects -- **gen_table()**: Using this function, you can download 'table' objects +- **gen_cube()**: Using this function, you can download `cube` objects +- **gen_table()**: Using this function, you can download `table` objects - **gen_list_jobs()** and **gen_download_job()**: Using this function, you can find and download previously created jobs (large tables) #### Other functions diff --git a/README.md b/README.md index 023b2fb..fe032dc 100644 --- a/README.md +++ b/README.md @@ -52,14 +52,14 @@ shortcuts are the following: #### Current information and (known) issues -- It is unclear whether the databases of Sachsen-Anhalt (‘st’), Bayern - (‘bayern’), Nordrhein-Westfalen (‘nrw’) and Kommunale - sBildungsmonitoring (‘bildung’) support the creation of jobs. This is +- It is unclear whether the databases of Sachsen-Anhalt (`st`), Bayern + (`bayern`), Nordrhein-Westfalen (`nrw`) and Kommunales + Bildungsmonitoring (`bildung`) support the creation of jobs. This is because it is sometimes hard to create large enough tables on a test basis. The package supports their creation and download for all databases mentioned, but there might be issues because of lack of tests. -- The CSV files currently returned by the ‘bayern’ database (this +- The CSV files currently returned by the `bayern` database (this affects `gen_table()`) appear to be slightly corrupted. This might cause warnings stemming from {vroom}. These can be ignored, but users have to carefully check the resulting `data.frames`. Use @@ -174,8 +174,8 @@ In short, there are functions divided in two main parts, searching for #### Retrieving data -- **gen_cube()**: Using this function, you can download ‘cube’ objects -- **gen_table()**: Using this function, you can download ‘table’ objects +- **gen_cube()**: Using this function, you can download `cube` objects +- **gen_table()**: Using this function, you can download `table` objects - **gen_list_jobs()** and **gen_download_job()**: Using this function, you can find and download previously created jobs (large tables) From 9020dae0ebc09d57274ec7acd7f2188b615ac922 Mon Sep 17 00:00:00 2001 From: buhly Date: Mon, 23 Feb 2026 20:52:08 +0100 Subject: [PATCH 25/26] last doc checks --- LICENSE | 2 +- NEWS.md | 5 + R/gen_alternative_terms.R | 2 +- R/gen_catalogue.R | 4 +- R/gen_cube.R | 6 +- R/gen_find.R | 6 +- R/gen_jobs.R | 6 +- R/gen_logincheck.R | 2 +- R/gen_modified_data.R | 2 +- R/gen_objects2stat.R | 6 +- R/gen_objects2var.R | 6 +- R/gen_qualitysigns.R | 2 +- R/gen_table.R | 4 +- R/gen_update_evas.R | 6 +- R/gen_var2-val2.R | 16 +-- README.Rmd | 188 +++++++++++++++++++++++++---------- README.md | 65 +++++------- man/gen_alternative_terms.Rd | 2 +- man/gen_catalogue.Rd | 4 +- man/gen_cube.Rd | 6 +- man/gen_download_job.Rd | 4 +- man/gen_find.Rd | 6 +- man/gen_list_jobs.Rd | 4 +- man/gen_logincheck.Rd | 2 +- man/gen_modified_data.Rd | 2 +- man/gen_objects2stat.Rd | 6 +- man/gen_objects2var.Rd | 6 +- man/gen_search_vars.Rd | 4 +- man/gen_signs.Rd | 2 +- man/gen_table.Rd | 4 +- man/gen_update_evas.Rd | 6 +- man/gen_val2var.Rd | 4 +- man/gen_val2var2stat.Rd | 4 +- man/gen_var2stat.Rd | 4 +- man/restatis-package.Rd | 5 + 35 files changed, 242 insertions(+), 161 deletions(-) diff --git a/LICENSE b/LICENSE index dbe0c06..7d678fe 100644 --- a/LICENSE +++ b/LICENSE @@ -1,2 +1,2 @@ -YEAR: 2025 +YEAR: 2026 COPYRIGHT HOLDER: restatis authors diff --git a/NEWS.md b/NEWS.md index de58ae5..a77bfbf 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,8 @@ +# restatis 0.4.0 +* Added support for four more GENESIS-like databases +* Added the option to specify credentials in the function call +* Fixed some bugs, optimised documentation + # restatis 0.3.0 * Added the feature that users can now adjust the API URLs via environment variables diff --git a/R/gen_alternative_terms.R b/R/gen_alternative_terms.R index 811c1ac..d21f0ac 100644 --- a/R/gen_alternative_terms.R +++ b/R/gen_alternative_terms.R @@ -1,4 +1,4 @@ -#' Find similar search terms +#' Find Similar Search Terms #' #' @description Function to find search terms that are similar or related to one another in spelling and also represented in the databases supported by \pkg{restatis}. Important note: The API call is searching for terms with the same characters. To be useful in searching for related terms it is highly recommended to work with \code{*} placeholders (see examples). The placeholder can be placed before and/or after the search term. #' diff --git a/R/gen_catalogue.R b/R/gen_catalogue.R index efcd106..5f7e8a4 100644 --- a/R/gen_catalogue.R +++ b/R/gen_catalogue.R @@ -1,10 +1,10 @@ -#' Search for tables, statistics and cubes +#' Search For Tables, Statistics and Cubes #' #' @description Function to search for tables, statistics and cubes from the respective database. Additionally, it structures the output based on the internal tree structure based on the EVAS numbers. Time-series are represented as cubes with a specified time span. Important note: To be useful in searching for objects it is highly recommended to work with "*" placeholders (see examples). The placeholder can be placed before and/or after the search term. #' #' @param code String with a maximum length of 15 characters. Only one code per iteration. "*" notations are possible. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. -#' @param category Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. +#' @param category Character string. Specify specific object types ('tables', 'statistics' and 'cubes'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. diff --git a/R/gen_cube.R b/R/gen_cube.R index ee569d3..7c2b319 100644 --- a/R/gen_cube.R +++ b/R/gen_cube.R @@ -1,8 +1,8 @@ -#' gen_cube +#' Download Data Cube As Data.Frame #' -#' @description Download a cube with data from GENESIS, regionalstatistik.de, landesdatenbank.nrw.de, bildungsmonitoring.de or statistikdaten.bayern.de database +#' @description Download a cube as a data.frame from any supported database. Works not on all databases included in the package. #' -#' @param name Character string for a cube object (only GENESIS, regionalstatistik.de, landesdatenbank.nrw.de or bildungsmonitoring.de) +#' @param name Character string for a cube object. #' @param database Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), landesdatenbank.nrw.de ('nrw') or bildungsmonitoring.de ('bildung') database is called. #' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param area Character string. The area in which the table is stored. diff --git a/R/gen_find.R b/R/gen_find.R index 2d325df..27fd686 100644 --- a/R/gen_find.R +++ b/R/gen_find.R @@ -1,12 +1,12 @@ -#' General Search for Objects Through A Database +#' General Search For Objects Through A Database #' -#' @description Function to search through the databases. It is similar in usage as the search function on the GENESIS main page (https://www-genesis.destatis.de/genesis/online). +#' @description Function to search through the databases. It is similar in usage as the search function on the main page. #' In the search query, "UND" (German word for 'and', also written "und" or "&") as well as "ODER" (German word for 'or', also written "oder" or "|") can be included and logically combined. Furthermore, wildcards are possible by including "*". If more then one word is included in the term string, 'and' is used automatically to combine the different words. #' Important note: Time-series are treated as cubes in GENESIS and regionalstatistik.de, they are not longer distinguished. If you want to find a specific object with a clear code with this find function, you need to specify the object type or search for all object types. #' #' @param term A character string with no maximum character length, but a word limit of five words. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. -#' @param category Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. +#' @param category Character string. Specify specific object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param ordering A logical. Indicator if the function should return the output of the iteration ordered first based on the fact if the searched term is appearing in the title of the object and secondly on an estimator of the number of variables in this object. Default option is 'TRUE'. #' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. diff --git a/R/gen_jobs.R b/R/gen_jobs.R index 66efd2c..f7186f1 100644 --- a/R/gen_jobs.R +++ b/R/gen_jobs.R @@ -1,6 +1,6 @@ -#' gen_list_jobs +#' Download List Of Active Download Jobs #' -#' @description Function to list all current jobs connected to the given user in the GENESIS or regionalstatistik.de database. Important note: For this function it is also possible to use `searchcriterion` parameter and `selection` parameter, making it possible to filter the job list based on 'type','time','status' or 'code'. For more details see `vignette("additional_parameter")`. +#' @description Function to list all current jobs connected to the given user. Important note: For this function it is also possible to use `searchcriterion` parameter and `selection` parameter, making it possible to filter the job list based on 'type','time','status' or 'code'. For more details see `vignette("additional_parameter")`. #' #' @param database Character string. Indicator which database should be called. Accepts only one database. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'type','time','status' or 'code'. This is a parameter of the API call itself. The default is 'type'. @@ -115,7 +115,7 @@ gen_list_jobs <- function(database, #------------------------------------------------------------------------------- -#' gen_download_job +#' Download Jobs That Have Finished Processing #' #' @param name Character string. The job code retrieved by using gen_list_jobs(). #' @param database Character string. Indicator which database should be called. Only one database can be addressed per function call. Default option is 'genesis'. diff --git a/R/gen_logincheck.R b/R/gen_logincheck.R index 8e62c8d..2c22259 100644 --- a/R/gen_logincheck.R +++ b/R/gen_logincheck.R @@ -1,4 +1,4 @@ -#' gen_logincheck +#' Check If User Can Connect To Service #' #' @description Function to check if a login is possible for a certain database. #' diff --git a/R/gen_modified_data.R b/R/gen_modified_data.R index 1c1b076..68ae13b 100644 --- a/R/gen_modified_data.R +++ b/R/gen_modified_data.R @@ -1,4 +1,4 @@ -#' gen_modified_data +#' Check Objects For Updates And Changes #' #' @description Function to check for updates, changes, or new objects based on a specific date. #' diff --git a/R/gen_objects2stat.R b/R/gen_objects2stat.R index ed630ba..d692e14 100644 --- a/R/gen_objects2stat.R +++ b/R/gen_objects2stat.R @@ -1,10 +1,10 @@ -#' gen_objects2stat +#' Find Objects Related To A Statistic #' -#' Function to find objects related to a statistic +#' @description Function to find objects related to a statistic. This is interesting to get an overview of a statistic's usage. #' #' @param code Character string with a maximum length of 6 characters (15 characters if 'cubes' are not used as a category). Code from a database object. Only one code per iteration. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. -#' @param category Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. +#' @param category Character string. Specify specific object types ('tables', 'statistics' and 'cubes'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. diff --git a/R/gen_objects2var.R b/R/gen_objects2var.R index 73a465e..92b8f1e 100644 --- a/R/gen_objects2var.R +++ b/R/gen_objects2var.R @@ -1,10 +1,10 @@ -#' gen_objects2var +#' Find Objects Related To A Variable #' -#' @description Function to find objects related to a variable +#' @description Function to find objects related to a variable. This is interesting to get an overview of a variable's usage. #' #' @param code Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. -#' @param category Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. +#' @param category Character string. Specify specific object types ('tables', 'statistics' and 'cubes'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. diff --git a/R/gen_qualitysigns.R b/R/gen_qualitysigns.R index 65eca4a..d5136e1 100644 --- a/R/gen_qualitysigns.R +++ b/R/gen_qualitysigns.R @@ -1,4 +1,4 @@ -#' gen_signs +#' List Currently Used Special Signs #' #' @description Function to list all currently used special signs (e.g., 0, *, X, (), p, ...) and their meaning in the respective database. #' diff --git a/R/gen_table.R b/R/gen_table.R index a7e1b43..767b5ee 100644 --- a/R/gen_table.R +++ b/R/gen_table.R @@ -1,6 +1,6 @@ -#' gen_table +#' Download Table As Data.Frame #' -#' @description Download a cube with data from GENESIS, regionalstatistik.de, Zensus 2022, landesdatenbank.nrw.de, bildungsmonitoring.de, statistikdaten.bayern.de or genesis.sachsen-anhalt.de database +#' @description Download a table with data from one of the supported databases. This is the main function to fetch data, apart from `gen_cube`. #' #' @param name Character string. Name/code of the table. Use of wildcards (`*`) is possible. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. diff --git a/R/gen_update_evas.R b/R/gen_update_evas.R index 63f3542..a846aec 100644 --- a/R/gen_update_evas.R +++ b/R/gen_update_evas.R @@ -1,8 +1,8 @@ -#' gen_update_evas +#' Update EVAS Database #' -#' @description Function to web scrape the EVAS numbers from the EVAS website and save them as a .rda file. Takes no parameters. +#' @description Function to web scrape the EVAS numbers from the EVAS website and save them as a .rda file. Takes no parameters, only rarely necessary. #' -#' @return An updated .rda file containing the latest EVAS numbers +#' @return An updated .rda file containing the latest EVAS numbers, used internally. #' @export #' gen_update_evas <- function() { diff --git a/R/gen_var2-val2.R b/R/gen_var2-val2.R index 239ebdb..4dbdbac 100644 --- a/R/gen_var2-val2.R +++ b/R/gen_var2-val2.R @@ -1,6 +1,6 @@ -#' gen_var2stat +#' Generate Variables From Statistics #' -#' @description Function to generate variables from statistics +#' @description Function to generate variable information from a statistic. This function gathers metadata, no actual data. It helps to refine data calls. #' #' @param code Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. @@ -155,9 +155,9 @@ gen_var2stat <- function(code = NULL, #------------------------------------------------------------------------------- -#' gen_val2var +#' Extract Values From Variable #' -#' @description Function to extract the possible values from a variable. Values for continuous variables are not extractable, which is why the function returns a warning message in this case. +#' @description Function to extract the possible values from a variable. Values for continuous variables are not extractable, which is why the function returns a warning message in this case. This function gathers metadata, no actual data. It helps to refine data calls. #' #' @param code Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. @@ -303,9 +303,9 @@ gen_val2var <- function(code = NULL, #------------------------------------------------------------------------------- -#' gen_val2var2stat +#' Get Values From Variables Of A Statistic #' -#' @description Get values from variables from a statistic. Values for continuous variables cannot be extracted, so the function returns a warning message. +#' @description Get values from variables from a statistic. Values for continuous variables cannot be extracted, so the function returns a warning message. This function gathers metadata, no actual data. It helps to refine data calls. #' #' @param code Character string with a maximum length of 15 characters. Code from a database object. Only one code per iteration. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. @@ -417,9 +417,9 @@ gen_val2var2stat <- function(code = NULL, #------------------------------------------------------------------------------- -#' gen_search_vars +#' Search For Variables #' -#' @description Function to search for specific variables +#' @description Function to search for specific variables. This function gathers metadata, no actual data. It helps to refine data calls. #' #' @param code Character string with a maximum length of 6 characters. Code from a database object. Only one code per iteration. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. diff --git a/README.Rmd b/README.Rmd index fea0552..7dba501 100644 --- a/README.Rmd +++ b/README.Rmd @@ -15,41 +15,55 @@ knitr::opts_chunk$set( ) ``` - -[![CRAN status](https://www.r-pkg.org/badges/version/restatis)](https://CRAN.R-project.org/package=restatis) -[![R-CMD-check](https://github.com/CorrelAid/restatis/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/CorrelAid/restatis/actions/workflows/R-CMD-check.yaml) -[![Codecov test coverage](https://codecov.io/gh/CorrelAid/restatis/graph/badge.svg)](https://app.codecov.io/gh/CorrelAid/restatis) -[![Lifecycle: experimental](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://lifecycle.r-lib.org/articles/stages.html#experimental) -[![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) - - -**{restatis}** is a wrapper around the RESTful APIs that provide access to the main databases of German official statistics: - -- The [**GENESIS database** of the Federal Statistical Office of Germany (Destatis)](https://www-genesis.destatis.de/genesis/online) -- [**regionalstatistik.de**, which is the database of the German Länder (Regionaldatenbank)](https://www.regionalstatistik.de/genesis/online/) -- The [database of the **German 2022 Census** (Zensus 2022)](https://ergebnisse.zensus2022.de/datenbank/online/) -- The [**Kommunale Bildungsdatenbank**](https://www.bildungsmonitoring.de/bildung/online/) +**{restatis}** is a wrapper around the RESTful APIs that provide access +to the main databases of German official statistics: + +- The [**GENESIS database** of the Federal Statistical Office of Germany + (Destatis)](https://www-genesis.destatis.de/genesis/online) +- [**regionalstatistik.de**, which is the database of the German Länder + (Regionaldatenbank)](https://www.regionalstatistik.de/genesis/online/) +- The [database of the **German 2022 Census** (Zensus + 2022)](https://ergebnisse.zensus2022.de/datenbank/online/) +- The [**Kommunale + Bildungsdatenbank**](https://www.bildungsmonitoring.de/bildung/online/) - The [**Landesdatenbank NRW**](https://www.landesdatenbank.nrw.de/) -- The [Datenbank des **Bayerischen Landesamtes für Statistik**](https://www.statistikdaten.bayern.de/genesis/online) -- The [Datenbank des **Statistischen Landesamtes Sachsen-Anhalt**](https://genesis.sachsen-anhalt.de/genesis/online) - -Almost all functions work on either one of them, on all of them or just on a selection. - -`{restatis}` uses shortcuts in its functions to specify the databases in the `database` parameter (e.g., `gen_table(name = "1234-0001", database = "regio")`). The respective shortcuts are the following: - -| Database | Shortcut | -|----------|----------| -| GENESIS (Federal Statistical Office of Germany) | genesis | -| Regionaldatenbank (regionalstatistik.de) | regio | -| German Census 2022 | zensus | -| Kommunale Bildungsdatenbank | bildung | -| Landesdatenbank NRW | nrw | -| Datenbank des Bayerischen Landesamtes für Statistik | bayern | -| Datenbank des Statistischen Landesamtes Sachsen-Anhalt | st | +- The [Datenbank des **Bayerischen Landesamtes für + Statistik**](https://www.statistikdaten.bayern.de/genesis/online) +- The [Datenbank des **Statistischen Landesamtes + Sachsen-Anhalt**](https://genesis.sachsen-anhalt.de/genesis/online) + +Almost all functions work on either one of them, on all of them or just +on a selection. + +`{restatis}` uses abbreviations in its functions to specify the databases in +the `database` parameter (e.g., +`gen_table(name = "1234-0001", database = "regio")`). The respective +abbreviation strings are the following: + +| Database | Abbr. | +|--------------------------------------------------------|----------| +| GENESIS (Federal Statistical Office of Germany) | genesis | +| Regionaldatenbank (regionalstatistik.de) | regio | +| German Census 2022 | zensus | +| Kommunale Bildungsdatenbank | bildung | +| Landesdatenbank NRW | nrw | +| Datenbank des Bayerischen Landesamtes für Statistik | bayern | +| Datenbank des Statistischen Landesamtes Sachsen-Anhalt | st | #### Current information and (known) issues -- It is unclear whether the databases of Sachsen-Anhalt (`st`), Bayern (`bayern`), Nordrhein-Westfalen (`nrw`) and Kommunales Bildungsmonitoring (`bildung`) support the creation of jobs. This is because it is sometimes hard to create large enough tables on a test basis. The package supports their creation and download for all databases mentioned, but there might be issues because of lack of tests. -- The CSV files currently returned by the `bayern` database (this affects `gen_table()`) appear to be slightly corrupted. This might cause warnings stemming from {vroom}. These can be ignored, but users have to carefully check the resulting `data.frames`. Use `vroom::problems()` to check the data objects for more information. + +- It is unclear whether the databases of Sachsen-Anhalt (`st`), Bayern + (`bayern`), Nordrhein-Westfalen (`nrw`) and Kommunales + Bildungsmonitoring (`bildung`) support the creation of jobs. This is + because it is sometimes hard to create large enough tables on a test + basis. The package supports their creation and download for all + databases mentioned, but there might be issues because of lack of + tests. +- The CSV files currently returned by the `bayern` database (this + affects `gen_table()`) appear to be slightly corrupted. This might + cause warnings stemming from `{vroom}`. These can be ignored, but users + have to carefully check the resulting `data.frames`. Use + `vroom::problems()` to check the data objects for more information. ## Installation @@ -59,7 +73,8 @@ You can install the released version of `{restatis}` from CRAN: install.packages("restatis") ``` -Or install a development version of `{restatis}` from [GitHub](https://github.com/CorrelAid/restatis) with: +Or install a development version of `{restatis}` from +[GitHub](https://github.com/CorrelAid/restatis) with: ``` r # install.packages("devtools") @@ -70,24 +85,52 @@ devtools::install_github("CorrelAid/restatis") ### Authentication -To access each one of the APIs, you need to have an account that you can create on the homepage (see links to them above) and store your username and password for use in R with `restatis::gen_auth_save()` (see `?gen_auth_save` for more details). +To access each one of the APIs, you need to have an account that you can +create on the homepage (see links to them above) and store your username +and password for use in R with `restatis::gen_auth_save()` (see +`?gen_auth_save` for more details). #### API tokens -The GENESIS and Zensus 2022 databases do support authentication with an API token as well. You can set the token as credential by using setting the parameter `use_token = TRUE` for `restatis::gen_auth_save()`. The token itself can be found when logging into the respective webpage with your account and by clicking on *Webservice (API)* (EN) or *Webservice-Schnittstelle (API)* (DE) in the bottom left corner. **Important:** The GENESIS database will not let you create jobs when using API tokens to authenticate. This is why `{restatis}` will check your credential type once you set `job = TRUE` for `gen_table()` and error in case a token is used. To enable the use of jobs, use `gen_auth_save()` and input your username and password (by setting `use_token = FALSE`). + +The GENESIS and Zensus 2022 databases do support authentication with an +API token as well. You can set the token as credential by using setting +the parameter `use_token = TRUE` for `restatis::gen_auth_save()`. The +token itself can be found when logging into the respective webpage with +your account and by clicking on *Webservice (API)* (EN) or +*Webservice-Schnittstelle (API)* (DE) in the bottom left corner. +**Important:** The GENESIS database will not let you create jobs when +using API tokens to authenticate. This is why `{restatis}` will check +your credential type once you set `job = TRUE` for `gen_table()` and +error in case a token is used. To enable the use of jobs, use +`gen_auth_save()` and input your username and password (by setting +`use_token = FALSE`). #### Credentials as parameters -In the first versions of {restatis}, it was impossible to set the credentials as a parameter. This is because we wanted to emphasise the secure storage of credentials that is the default of the package. However, we became aware of certain use-cases (e.g., automated piplines via GitHub Actions and the like) that made it necessary to set the credentials as a parameter. For this reason, in version 0.4.0 we introduced the `credential_list` parameter for {restatis}'s functions. Using this parameter, users can provide their credentials independently of `gen_auth_save`. **Note:** We do only encourage this in very rare cases since it is advisable to safely store the credentials. In case you use `credential_list`, always make sure that the credentials do not appear anywhere in clear text! + +In the first versions of `{restatis}`, it was impossible to set the +credentials as a parameter. This is because we want to emphasise the +secure storage of credentials that is the default of the package. +However, we became aware of certain use-cases (e.g., automated piplines +via GitHub Actions and the like) that made it necessary to set the +credentials as a parameter. For this reason, in version 0.4.0 we +introduced the `credential_list` parameter for `{restatis}`’s functions. +Using this parameter, users can provide their credentials independently +of `gen_auth_save`. **Important Note:** *We do only encourage this in very rare +cases since it is advisable to safely store the credentials. In case you +use `credential_list`, always make sure that the credentials do not +appear anywhere in clear text!* The `credentials_list` has to have the exact following structure: -```r +``` r custom_credentials <- list(genesis = c(username = 'abc123', password = 'qwerty1234'), regio = c(username = 'abc123', password = 'qwerty1234')) - ``` -Now when using the custom credentials, you pass the list to the respective function parameter: -```r +Now when using the custom credentials, you pass the list to the +respective function parameter (this overrides the credentials set by `gen_auth_save()`): + +``` r # Example call with custom credentials res <- restatis::gen_find(term = "diagnosen", database = "genesis", @@ -97,39 +140,78 @@ res <- restatis::gen_find(term = "diagnosen", res2 <- restatis::gen_find(term = "krankenhäuser", database = c("genesis", "regio"), credential_list = custom_credentials) - ``` -You have to make sure that the database(s) you specify in `database` is/are listed in `credential_list`, otherwise the function call fails. In some cases, you can specify the `error.ignore` parameter. If it is set to `TRUE`, the function will continue to execute for those databases that are available, even if some are not. *Note that `credentials_list` does (currently) not support the use of API tokens.* +You have to make sure that the database(s) you specify in `database` +is/are listed in `credential_list`, otherwise the function call fails. +In some cases, you can specify the `error.ignore` parameter. If it is +set to `TRUE`, the function will continue to execute for those databases +that are available, even if some are not. **Note:** *`credentials_list` +does not (currently) support the use of API tokens.* ### Main features -{restatis} provides functions (prefixed with `gen_`) for finding, exploring, and retrieving data from the three supported APIs. See the ["Basic restatis workflow" vignette](https://correlaid.github.io/restatis/articles/restatis.html) for an overview of the main features of the package. +`{restatis}` provides functions (prefixed with `gen_`) for finding, +exploring, and retrieving data from the three supported APIs. See the +[“Basic restatis workflow” +vignette](https://correlaid.github.io/restatis/articles/restatis.html) +for an overview of the main features of the package. -In short, there are functions divided in two main parts, searching for (meta)data and retrieving data: +In short, there are functions divided in two main parts, searching for +(meta)data and retrieving data: #### Searching for (meta)data -- **gen_catalogue()**: Search the API's catalogue of data + +- **gen_catalogue()**: Search the API’s catalogue of data - **gen_find()**: Find objects related to a search term - **gen_metadata()**: Find meta data to an objects - **gen_alternative_terms()**: Find alternative terms to a search term -- **gen_modified_data()**: Find out when an object has last been modified -- **gen_objects2stat()**, **gen_objects2var()**, **gen_var2stat()**, **gen_val2var()**, **gen_val2var2stat()** and **gen_search_vars()**: Find objects, statistics, variables and values related to each other +- **gen_modified_data()**: Find out when an object has last been + modified +- **gen_objects2stat()**, **gen_objects2var()**, **gen_var2stat()**, + **gen_val2var()**, **gen_val2var2stat()** and **gen_search_vars()**: + Find objects, statistics, variables and values related to each other #### Retrieving data + - **gen_cube()**: Using this function, you can download `cube` objects -- **gen_table()**: Using this function, you can download `table` objects -- **gen_list_jobs()** and **gen_download_job()**: Using this function, you can find and download previously created jobs (large tables) +- **gen_table()**: Using this function, you can download `table` objects +- **gen_list_jobs()** and **gen_download_job()**: Using this function, + you can find and download previously created jobs (large tables) #### Other functions + - **gen_logincheck()**: Perform a logincheck to test your credentials -- **gen_signs()**: Get a list of quality signs (special characters) found in the API's tables -- **gen_update_evas()**: Manually scrape a newer version of the EVAS numbers (official statistic IDs) +- **gen_signs()**: Get a list of quality signs (special characters) + found in the API’s tables +- **gen_update_evas()**: Manually scrape a newer version of the EVAS + numbers (official statistic IDs) ### Caching -`{restatis}` uses [**memoisation**](https://github.com/r-lib/memoise) to cache query results. This means that if you call a function multiple times with the same exact input, the values returned the first time are stored and reused from the second time on. Cached objects are stored in memory and do not persist across R sessions. With version 0.3.0, we have enabled users to turn off caching. The caching option is set to TRUE by default and can be changed by setting `options(restatis.use_cache = TRUE)` (or `FALSE`, respectively). You can get the current state of the option by using `getOption("restatis.use_cache")`. **Note:** Memoisation is *never* used for the functions `gen_list_jobs()` and `gen_logincheck()` because there is no use-case for a cached version of the results of these functions (e.g., login checks should always be executed when called). +`{restatis}` uses [**memoisation**](https://github.com/r-lib/memoise) to +cache query results. This means that if you call a function multiple +times with the same exact input, the values returned the first time are +stored and reused from the second time on. Cached objects are stored in +memory and do not persist across R sessions. With version 0.3.0, we have +enabled users to turn off caching. The caching option is set to TRUE by +default and can be changed by setting +`options(restatis.use_cache = TRUE)` (or `FALSE`, respectively). You can +get the current state of the option by using +`getOption("restatis.use_cache")`. **Note:** Memoisation is *never* used +for the functions `gen_list_jobs()` and `gen_logincheck()` because there +is no use-case for a cached version of the results of these functions +(e.g., login checks should always be executed when called). ## Disclaimer -This package is in no way affiliated with the German Federal Statistical Office (Destatis), the 'Verbund Statistische Ämter des Bundes und der Länder' or any other API provider that the package offers services for. It is a simple wrapper providing R functions to access different official statistics APIs. The package authors are in no way responsible for the data that can be retrieved using its functions and do not provide support for any problems arising from the APIs' functionality itself. Conversely, support for problems related to this package is **exclusively** provided by the package authors. The license of this package solely applies to its source code. +This package is in no way affiliated with the German Federal Statistical +Office (Destatis), the ‘Verbund Statistische Ämter des Bundes und der +Länder’ or any other API provider that the package offers services for. +It is a simple wrapper providing R functions to access different +official statistics APIs. The package authors are in no way responsible +for the data that can be retrieved using its functions and do not +provide support for any problems arising from the APIs’ functionality +itself. Conversely, support for problems related to this package is +**exclusively** provided by the package authors. The license of this +package solely applies to its source code. diff --git a/README.md b/README.md index fe032dc..65b1a8e 100644 --- a/README.md +++ b/README.md @@ -3,18 +3,6 @@ - - -[![CRAN -status](https://www.r-pkg.org/badges/version/restatis)](https://CRAN.R-project.org/package=restatis) -[![R-CMD-check](https://github.com/CorrelAid/restatis/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/CorrelAid/restatis/actions/workflows/R-CMD-check.yaml) -[![Codecov test -coverage](https://codecov.io/gh/CorrelAid/restatis/graph/badge.svg)](https://app.codecov.io/gh/CorrelAid/restatis) -[![Lifecycle: -experimental](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://lifecycle.r-lib.org/articles/stages.html#experimental) -[![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) - - **{restatis}** is a wrapper around the RESTful APIs that provide access to the main databases of German official statistics: @@ -35,20 +23,20 @@ to the main databases of German official statistics: Almost all functions work on either one of them, on all of them or just on a selection. -`{restatis}` uses shortcuts in its functions to specify the databases in -the `database` parameter (e.g., +`{restatis}` uses abbreviations in its functions to specify the +databases in the `database` parameter (e.g., `gen_table(name = "1234-0001", database = "regio")`). The respective -shortcuts are the following: - -| Database | Shortcut | -|--------------------------------------------------------|----------| -| GENESIS (Federal Statistical Office of Germany) | genesis | -| Regionaldatenbank (regionalstatistik.de) | regio | -| German Census 2022 | zensus | -| Kommunale Bildungsdatenbank | bildung | -| Landesdatenbank NRW | nrw | -| Datenbank des Bayerischen Landesamtes für Statistik | bayern | -| Datenbank des Statistischen Landesamtes Sachsen-Anhalt | st | +abbreviation strings are the following: + +| Database | Abbr. | +|--------------------------------------------------------|---------| +| GENESIS (Federal Statistical Office of Germany) | genesis | +| Regionaldatenbank (regionalstatistik.de) | regio | +| German Census 2022 | zensus | +| Kommunale Bildungsdatenbank | bildung | +| Landesdatenbank NRW | nrw | +| Datenbank des Bayerischen Landesamtes für Statistik | bayern | +| Datenbank des Statistischen Landesamtes Sachsen-Anhalt | st | #### Current information and (known) issues @@ -61,8 +49,8 @@ shortcuts are the following: tests. - The CSV files currently returned by the `bayern` database (this affects `gen_table()`) appear to be slightly corrupted. This might - cause warnings stemming from {vroom}. These can be ignored, but users - have to carefully check the resulting `data.frames`. Use + cause warnings stemming from `{vroom}`. These can be ignored, but + users have to carefully check the resulting `data.frames`. Use `vroom::problems()` to check the data objects for more information. ## Installation @@ -107,18 +95,18 @@ error in case a token is used. To enable the use of jobs, use #### Credentials as parameters -In the first versions of {restatis}, it was impossible to set the -credentials as a parameter. This is because we wanted to emphasise the +In the first versions of `{restatis}`, it was impossible to set the +credentials as a parameter. This is because we want to emphasise the secure storage of credentials that is the default of the package. However, we became aware of certain use-cases (e.g., automated piplines via GitHub Actions and the like) that made it necessary to set the credentials as a parameter. For this reason, in version 0.4.0 we -introduced the `credential_list` parameter for {restatis}’s functions. +introduced the `credential_list` parameter for `{restatis}`’s functions. Using this parameter, users can provide their credentials independently -of `gen_auth_save`. **Note:** We do only encourage this in very rare -cases since it is advisable to safely store the credentials. In case you -use `credential_list`, always make sure that the credentials do not -appear anywhere in clear text! +of `gen_auth_save`. **Important Note:** *We do only encourage this in +very rare cases since it is advisable to safely store the credentials. +In case you use `credential_list`, always make sure that the credentials +do not appear anywhere in clear text!* The `credentials_list` has to have the exact following structure: @@ -128,7 +116,8 @@ custom_credentials <- list(genesis = c(username = 'abc123', password = 'qwerty12 ``` Now when using the custom credentials, you pass the list to the -respective function parameter: +respective function parameter (this overrides the credentials set by +`gen_auth_save()`): ``` r # Example call with custom credentials @@ -146,12 +135,12 @@ You have to make sure that the database(s) you specify in `database` is/are listed in `credential_list`, otherwise the function call fails. In some cases, you can specify the `error.ignore` parameter. If it is set to `TRUE`, the function will continue to execute for those databases -that are available, even if some are not. *Note that `credentials_list` -does (currently) not support the use of API tokens.* +that are available, even if some are not. **Note:** *`credentials_list` +does not (currently) support the use of API tokens.* ### Main features -{restatis} provides functions (prefixed with `gen_`) for finding, +`{restatis}` provides functions (prefixed with `gen_`) for finding, exploring, and retrieving data from the three supported APIs. See the [“Basic restatis workflow” vignette](https://correlaid.github.io/restatis/articles/restatis.html) diff --git a/man/gen_alternative_terms.Rd b/man/gen_alternative_terms.Rd index 1c28163..3aaf4b7 100644 --- a/man/gen_alternative_terms.Rd +++ b/man/gen_alternative_terms.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_alternative_terms.R \name{gen_alternative_terms} \alias{gen_alternative_terms} -\title{Find similar search terms} +\title{Find Similar Search Terms} \usage{ gen_alternative_terms( term = NULL, diff --git a/man/gen_catalogue.Rd b/man/gen_catalogue.Rd index 5715c2b..0e636ce 100644 --- a/man/gen_catalogue.Rd +++ b/man/gen_catalogue.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_catalogue.R \name{gen_catalogue} \alias{gen_catalogue} -\title{Search for tables, statistics and cubes} +\title{Search For Tables, Statistics and Cubes} \usage{ gen_catalogue( code = NULL, @@ -23,7 +23,7 @@ gen_catalogue( \item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} -\item{category}{Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} +\item{category}{Character string. Specify specific object types ('tables', 'statistics' and 'cubes'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_cube.Rd b/man/gen_cube.Rd index 41e29e6..648b5d8 100644 --- a/man/gen_cube.Rd +++ b/man/gen_cube.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_cube.R \name{gen_cube} \alias{gen_cube} -\title{gen_cube} +\title{Download Data Cube As Data.Frame} \usage{ gen_cube( name, @@ -30,7 +30,7 @@ gen_cube( ) } \arguments{ -\item{name}{Character string for a cube object (only GENESIS, regionalstatistik.de, landesdatenbank.nrw.de or bildungsmonitoring.de)} +\item{name}{Character string for a cube object.} \item{database}{Character string. Indicator if the GENESIS ('genesis'), regionalstatistik.de ('regio'), landesdatenbank.nrw.de ('nrw') or bildungsmonitoring.de ('bildung') database is called.} @@ -104,7 +104,7 @@ A \link[tibble:tibble]{tibble}. Non-data contents of the data cube object are sa the \code{metadata} \link[base:attr]{attribute} of the data frame. } \description{ -Download a cube with data from GENESIS, regionalstatistik.de, landesdatenbank.nrw.de, bildungsmonitoring.de or statistikdaten.bayern.de database +Download a cube as a data.frame from any supported database. Works not on all databases included in the package. } \examples{ \dontrun{ diff --git a/man/gen_download_job.Rd b/man/gen_download_job.Rd index 8f18f97..9b75ba1 100644 --- a/man/gen_download_job.Rd +++ b/man/gen_download_job.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_jobs.R \name{gen_download_job} \alias{gen_download_job} -\title{gen_download_job} +\title{Download Jobs That Have Finished Processing} \usage{ gen_download_job( name, @@ -33,7 +33,7 @@ gen_download_job( Returns a data.frame with the table content } \description{ -gen_download_job +Download Jobs That Have Finished Processing } \examples{ \dontrun{ diff --git a/man/gen_find.Rd b/man/gen_find.Rd index 4139cea..bfffe59 100644 --- a/man/gen_find.Rd +++ b/man/gen_find.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_find.R \name{gen_find} \alias{gen_find} -\title{General Search for Objects Through A Database} +\title{General Search For Objects Through A Database} \usage{ gen_find( term = NULL, @@ -22,7 +22,7 @@ gen_find( \item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} -\item{category}{Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} +\item{category}{Character string. Specify specific object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} \item{detailed}{Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'.} @@ -42,7 +42,7 @@ gen_find( A list with all recalled elements from the API. Based on the 'detailed' parameter it contains more or less information, but always includes the code of the object, the title, and the type of the object. This is done to facilitate further processing with the data. Attributes are added to the data.frame describing the search configuration for the returned output. } \description{ -Function to search through the databases. It is similar in usage as the search function on the GENESIS main page (https://www-genesis.destatis.de/genesis/online). +Function to search through the databases. It is similar in usage as the search function on the main page. In the search query, "UND" (German word for 'and', also written "und" or "&") as well as "ODER" (German word for 'or', also written "oder" or "|") can be included and logically combined. Furthermore, wildcards are possible by including "*". If more then one word is included in the term string, 'and' is used automatically to combine the different words. Important note: Time-series are treated as cubes in GENESIS and regionalstatistik.de, they are not longer distinguished. If you want to find a specific object with a clear code with this find function, you need to specify the object type or search for all object types. } diff --git a/man/gen_list_jobs.Rd b/man/gen_list_jobs.Rd index 1dc37a7..2709c33 100644 --- a/man/gen_list_jobs.Rd +++ b/man/gen_list_jobs.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_jobs.R \name{gen_list_jobs} \alias{gen_list_jobs} -\title{gen_list_jobs} +\title{Download List Of Active Download Jobs} \usage{ gen_list_jobs( database, @@ -33,7 +33,7 @@ gen_list_jobs( A list or data.frame (see parameter 'flat') of all current jobs of the user. } \description{ -Function to list all current jobs connected to the given user in the GENESIS or regionalstatistik.de database. Important note: For this function it is also possible to use \code{searchcriterion} parameter and \code{selection} parameter, making it possible to filter the job list based on 'type','time','status' or 'code'. For more details see \code{vignette("additional_parameter")}. +Function to list all current jobs connected to the given user. Important note: For this function it is also possible to use \code{searchcriterion} parameter and \code{selection} parameter, making it possible to filter the job list based on 'type','time','status' or 'code'. For more details see \code{vignette("additional_parameter")}. } \details{ Important information concerning the caching of results: This function's results are \emph{never} cached because there is no use-case for a cached list of jobs (users would always want a refreshed list of jobs and their respective status). diff --git a/man/gen_logincheck.Rd b/man/gen_logincheck.Rd index 64383d3..61d02f4 100644 --- a/man/gen_logincheck.Rd +++ b/man/gen_logincheck.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_logincheck.R \name{gen_logincheck} \alias{gen_logincheck} -\title{gen_logincheck} +\title{Check If User Can Connect To Service} \usage{ gen_logincheck(database = "all", verbose = TRUE, ...) } diff --git a/man/gen_modified_data.Rd b/man/gen_modified_data.Rd index c382b9f..bbd10d3 100644 --- a/man/gen_modified_data.Rd +++ b/man/gen_modified_data.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_modified_data.R \name{gen_modified_data} \alias{gen_modified_data} -\title{gen_modified_data} +\title{Check Objects For Updates And Changes} \usage{ gen_modified_data( code = "", diff --git a/man/gen_objects2stat.Rd b/man/gen_objects2stat.Rd index 6df2989..2e6f2e1 100644 --- a/man/gen_objects2stat.Rd +++ b/man/gen_objects2stat.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_objects2stat.R \name{gen_objects2stat} \alias{gen_objects2stat} -\title{gen_objects2stat} +\title{Find Objects Related To A Statistic} \usage{ gen_objects2stat( code = NULL, @@ -23,7 +23,7 @@ gen_objects2stat( \item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} -\item{category}{Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} +\item{category}{Character string. Specify specific object types ('tables', 'statistics' and 'cubes'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} @@ -45,7 +45,7 @@ gen_objects2stat( A list with all recalled elements from the API. Based on the 'detailed' parameter it contains more or less information, but always includes the code of the object, the title, and the type of the object. This is done to facilitate further processing with the data. Attributes are added to the data.frame describing the search configuration for the returned output. } \description{ -Function to find objects related to a statistic +Function to find objects related to a statistic. This is interesting to get an overview of a statistic's usage. } \examples{ \dontrun{ diff --git a/man/gen_objects2var.Rd b/man/gen_objects2var.Rd index 32ff09b..5ba8cee 100644 --- a/man/gen_objects2var.Rd +++ b/man/gen_objects2var.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_objects2var.R \name{gen_objects2var} \alias{gen_objects2var} -\title{gen_objects2var} +\title{Find Objects Related To A Variable} \usage{ gen_objects2var( code = NULL, @@ -23,7 +23,7 @@ gen_objects2var( \item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} -\item{category}{Character string. Specify specific GENESIS/regionalstatistik.de object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} +\item{category}{Character string. Specify specific object types ('tables', 'statistics' and 'cubes'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} @@ -45,7 +45,7 @@ gen_objects2var( A list with all recalled elements from the API. Based on the 'detailed' parameter it contains more or less information, but always includes the code of the object, the title, and the type of the object. This is done to facilitate further processing with the data. Attributes are added to the data.frame describing the search configuration for the returned output. } \description{ -Function to find objects related to a variable +Function to find objects related to a variable. This is interesting to get an overview of a variable's usage. } \examples{ \dontrun{ diff --git a/man/gen_search_vars.Rd b/man/gen_search_vars.Rd index a1bbf94..cad2b40 100644 --- a/man/gen_search_vars.Rd +++ b/man/gen_search_vars.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_var2-val2.R \name{gen_search_vars} \alias{gen_search_vars} -\title{gen_search_vars} +\title{Search For Variables} \usage{ gen_search_vars( code = NULL, @@ -39,7 +39,7 @@ gen_search_vars( A list with all recalled elements from the API. Always includes the code of the object, the title, and the type of the object. This is done to facilitate further processing with the data. Attributes are added to the data.frame describing the search configuration for the returned output. } \description{ -Function to search for specific variables +Function to search for specific variables. This function gathers metadata, no actual data. It helps to refine data calls. } \examples{ \dontrun{ diff --git a/man/gen_signs.Rd b/man/gen_signs.Rd index 2d090a8..2d6037a 100644 --- a/man/gen_signs.Rd +++ b/man/gen_signs.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_qualitysigns.R \name{gen_signs} \alias{gen_signs} -\title{gen_signs} +\title{List Currently Used Special Signs} \usage{ gen_signs( database = c("all", "genesis", "zensus", "regio", "bayern", "nrw", "bildung", "st"), diff --git a/man/gen_table.Rd b/man/gen_table.Rd index aa5b97e..a195015 100644 --- a/man/gen_table.Rd +++ b/man/gen_table.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_table.R \name{gen_table} \alias{gen_table} -\title{gen_table} +\title{Download Table As Data.Frame} \usage{ gen_table( name, @@ -105,7 +105,7 @@ specification may lead to errors.} A \link[tibble:tibble]{tibble}. } \description{ -Download a cube with data from GENESIS, regionalstatistik.de, Zensus 2022, landesdatenbank.nrw.de, bildungsmonitoring.de, statistikdaten.bayern.de or genesis.sachsen-anhalt.de database +Download a table with data from one of the supported databases. This is the main function to fetch data, apart from \code{gen_cube}. } \examples{ \dontrun{ diff --git a/man/gen_update_evas.Rd b/man/gen_update_evas.Rd index 714a1b9..dbd6bc3 100644 --- a/man/gen_update_evas.Rd +++ b/man/gen_update_evas.Rd @@ -2,13 +2,13 @@ % Please edit documentation in R/gen_update_evas.R \name{gen_update_evas} \alias{gen_update_evas} -\title{gen_update_evas} +\title{Update EVAS Database} \usage{ gen_update_evas() } \value{ -An updated .rda file containing the latest EVAS numbers +An updated .rda file containing the latest EVAS numbers, used internally. } \description{ -Function to web scrape the EVAS numbers from the EVAS website and save them as a .rda file. Takes no parameters. +Function to web scrape the EVAS numbers from the EVAS website and save them as a .rda file. Takes no parameters, only rarely necessary. } diff --git a/man/gen_val2var.Rd b/man/gen_val2var.Rd index caf5c4a..2b38b6a 100644 --- a/man/gen_val2var.Rd +++ b/man/gen_val2var.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_var2-val2.R \name{gen_val2var} \alias{gen_val2var} -\title{gen_val2var} +\title{Extract Values From Variable} \usage{ gen_val2var( code = NULL, @@ -39,7 +39,7 @@ gen_val2var( A list with all recalled elements from the API. Always includes the code of the object, the title, and the type of the object. This is done to facilitate further processing with the data. Attributes are added to the data.frame describing the search configuration for the returned output. } \description{ -Function to extract the possible values from a variable. Values for continuous variables are not extractable, which is why the function returns a warning message in this case. +Function to extract the possible values from a variable. Values for continuous variables are not extractable, which is why the function returns a warning message in this case. This function gathers metadata, no actual data. It helps to refine data calls. } \examples{ \dontrun{ diff --git a/man/gen_val2var2stat.Rd b/man/gen_val2var2stat.Rd index 43d783d..8302957 100644 --- a/man/gen_val2var2stat.Rd +++ b/man/gen_val2var2stat.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_var2-val2.R \name{gen_val2var2stat} \alias{gen_val2var2stat} -\title{gen_val2var2stat} +\title{Get Values From Variables Of A Statistic} \usage{ gen_val2var2stat( code = NULL, @@ -45,7 +45,7 @@ gen_val2var2stat( A list with all recalled elements from the API. Based on the 'detailed' parameter it contains more or less information, but always includes the code of the object, the title, and the type of the object. This is done to facilitate further processing with the data. Attributes are added to the data.frame describing the search configuration for the returned output. } \description{ -Get values from variables from a statistic. Values for continuous variables cannot be extracted, so the function returns a warning message. +Get values from variables from a statistic. Values for continuous variables cannot be extracted, so the function returns a warning message. This function gathers metadata, no actual data. It helps to refine data calls. } \examples{ \dontrun{ diff --git a/man/gen_var2stat.Rd b/man/gen_var2stat.Rd index f96d0f8..b3b708a 100644 --- a/man/gen_var2stat.Rd +++ b/man/gen_var2stat.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/gen_var2-val2.R \name{gen_var2stat} \alias{gen_var2stat} -\title{gen_var2stat} +\title{Generate Variables From Statistics} \usage{ gen_var2stat( code = NULL, @@ -42,7 +42,7 @@ gen_var2stat( A list with all recalled elements from the API. Based on the 'detailed' parameter it contains more or less information, but always includes the code of the object, the title, and the type of the object. This is done to facilitate further processing with the data. Attributes are added to the data.frame describing the search configuration for the returned output. } \description{ -Function to generate variables from statistics +Function to generate variable information from a statistic. This function gathers metadata, no actual data. It helps to refine data calls. } \examples{ \dontrun{ diff --git a/man/restatis-package.Rd b/man/restatis-package.Rd index 2499519..e707965 100644 --- a/man/restatis-package.Rd +++ b/man/restatis-package.Rd @@ -28,5 +28,10 @@ Authors: \item Johannes Ritter \email{ritter.johannes@gmail.com} } +Other contributors: +\itemize{ + \item Stefan Linner \email{stefan@linnerprogramming.com} [contributor] +} + } \keyword{internal} From 61254cfad03764f436c7cab5df3e69eee07de277 Mon Sep 17 00:00:00 2001 From: "yannik.buhl" Date: Sun, 1 Mar 2026 11:07:20 +0100 Subject: [PATCH 26/26] fix docu for review --- R/gen_catalogue.R | 2 +- R/gen_find.R | 2 +- R/gen_jobs.R | 4 ++-- man/gen_catalogue.Rd | 2 +- man/gen_download_job.Rd | 2 +- man/gen_find.Rd | 2 +- man/gen_list_jobs.Rd | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/R/gen_catalogue.R b/R/gen_catalogue.R index 5f7e8a4..645281b 100644 --- a/R/gen_catalogue.R +++ b/R/gen_catalogue.R @@ -4,7 +4,7 @@ #' #' @param code String with a maximum length of 15 characters. Only one code per iteration. "*" notations are possible. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. -#' @param category Character string. Specify specific object types ('tables', 'statistics' and 'cubes'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. +#' @param category Character string. Specify specific object types ('tables', 'statistics' and 'cubes'). Note that 'zensus' does not support 'cubes'. All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'code' or 'content'. This is a parameter of the API call itself. The default is 'code'. diff --git a/R/gen_find.R b/R/gen_find.R index 27fd686..81088bb 100644 --- a/R/gen_find.R +++ b/R/gen_find.R @@ -6,7 +6,7 @@ #' #' @param term A character string with no maximum character length, but a word limit of five words. #' @param database Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'. -#' @param category Character string. Specify specific object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. +#' @param category Character string. Specify specific object types ('tables', 'statistics' and 'cubes'). Note that 'zensus' does not support 'cubes'. All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database. #' @param detailed Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'. #' @param ordering A logical. Indicator if the function should return the output of the iteration ordered first based on the fact if the searched term is appearing in the title of the object and secondly on an estimator of the number of variables in this object. Default option is 'TRUE'. #' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. diff --git a/R/gen_jobs.R b/R/gen_jobs.R index f7186f1..f9ae7a8 100644 --- a/R/gen_jobs.R +++ b/R/gen_jobs.R @@ -2,7 +2,7 @@ #' #' @description Function to list all current jobs connected to the given user. Important note: For this function it is also possible to use `searchcriterion` parameter and `selection` parameter, making it possible to filter the job list based on 'type','time','status' or 'code'. For more details see `vignette("additional_parameter")`. #' -#' @param database Character string. Indicator which database should be called. Accepts only one database. +#' @param database Character string. Indicator which database should be called. Accepts only one database ('regio', 'genesis', 'bayern', 'st', 'nrw' or 'bildung'). 'zensus' does not support jobs. #' @param sortcriterion Character string. Indicator if the output should be sorted by 'type','time','status' or 'code'. This is a parameter of the API call itself. The default is 'type'. #' @param flat Boolean. Should the function return a list with jobs and metadata ('FALSE') or just a flat data.frame ('TRUE')? Defaults to FALSE. #' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. @@ -118,7 +118,7 @@ gen_list_jobs <- function(database, #' Download Jobs That Have Finished Processing #' #' @param name Character string. The job code retrieved by using gen_list_jobs(). -#' @param database Character string. Indicator which database should be called. Only one database can be addressed per function call. Default option is 'genesis'. +#' @param database Character string. Indicator which database should be called. Only one database can be addressed per function call ('regio', 'genesis', 'bayern', 'st', 'nrw' or 'bildung'). Default option is 'genesis'. 'zensus' does not support jobs. #' @param credential_list A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}. #' @param area Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. #' @param compress Boolean. Should empty rows and columns be discarded? Default is FALSE. diff --git a/man/gen_catalogue.Rd b/man/gen_catalogue.Rd index 0e636ce..43bfde1 100644 --- a/man/gen_catalogue.Rd +++ b/man/gen_catalogue.Rd @@ -23,7 +23,7 @@ gen_catalogue( \item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} -\item{category}{Character string. Specify specific object types ('tables', 'statistics' and 'cubes'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} +\item{category}{Character string. Specify specific object types ('tables', 'statistics' and 'cubes'). Note that 'zensus' does not support 'cubes'. All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} \item{area}{Character string. Indicator from which area of the database the results are called. In general, 'all' is the appropriate solution. Default option is 'all'. Not used for 'statistics'.} diff --git a/man/gen_download_job.Rd b/man/gen_download_job.Rd index 9b75ba1..784a335 100644 --- a/man/gen_download_job.Rd +++ b/man/gen_download_job.Rd @@ -17,7 +17,7 @@ gen_download_job( \arguments{ \item{name}{Character string. The job code retrieved by using gen_list_jobs().} -\item{database}{Character string. Indicator which database should be called. Only one database can be addressed per function call. Default option is 'genesis'.} +\item{database}{Character string. Indicator which database should be called. Only one database can be addressed per function call ('regio', 'genesis', 'bayern', 'st', 'nrw' or 'bildung'). Default option is 'genesis'. 'zensus' does not support jobs.} \item{credential_list}{A list containing the credentials for the databases to be accessed. If 'NULL' (default), the function will use the stored credentials from \code{gen_auth_get()}.} diff --git a/man/gen_find.Rd b/man/gen_find.Rd index bfffe59..4bb9b44 100644 --- a/man/gen_find.Rd +++ b/man/gen_find.Rd @@ -22,7 +22,7 @@ gen_find( \item{database}{Character string. Indicator if the GENESIS ('genesis'), Zensus 2022 ('zensus'), regionalstatistik.de ('regio'), statistikdaten.bayern.de ('bayern'), landesdatenbank.nrw.de ('nrw'), bildungsmonitoring.de ('bildung') or genesis.sachsen-anhalt.de ('st') database is called. If all databases should be checked, use 'all'. Default option is 'all'.} -\item{category}{Character string. Specify specific object types ('tables', 'statistics' and 'cubes') and specific Zensus 2022 object types ('tables' and 'statistics'). All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} +\item{category}{Character string. Specify specific object types ('tables', 'statistics' and 'cubes'). Note that 'zensus' does not support 'cubes'. All types that are specific for one database can be used together. Default option is to use all types that are possible for the specific database.} \item{detailed}{Boolean. Indicator if the function should return the detailed output of the iteration including all object-related information or only a shortened output including only code and object title. Default option is 'FALSE'.} diff --git a/man/gen_list_jobs.Rd b/man/gen_list_jobs.Rd index 2709c33..894c562 100644 --- a/man/gen_list_jobs.Rd +++ b/man/gen_list_jobs.Rd @@ -15,7 +15,7 @@ gen_list_jobs( ) } \arguments{ -\item{database}{Character string. Indicator which database should be called. Accepts only one database.} +\item{database}{Character string. Indicator which database should be called. Accepts only one database ('regio', 'genesis', 'bayern', 'st', 'nrw' or 'bildung'). 'zensus' does not support jobs.} \item{sortcriterion}{Character string. Indicator if the output should be sorted by 'type','time','status' or 'code'. This is a parameter of the API call itself. The default is 'type'.}