Tohle je mnohostránkové zobrazení této sekce. Klikněte sem pro tisk.

Zpět na běžné zobrazení stránky.

OUSHI Questionnaires Přehled

Webové adresy

Hlavní (produkční) verze systému je dostupná na adrese https://dotaznik.oushi.upol.cz. Testovací verze, která slouží pro vývoj je dostupná na adrese http://dotaznik.korinek.link/.

Systém OQS má různé titulní stránky, podle toho, kdo k němu aktuálně přistupuje. Nepřihlášený uživatek (tj. veřejnost) uvidí pouze seznam aktuálně aktivních a dostupných dotazníků. Přihlášený uživatel pootom uvidí objekty, ke kterým má přístup

Přihlašování

Přihlašování se provádí přes ikonku osob v pravém horním rohu dotazníku. K přihlášení musíte použít OUSHI účet na Google Apps - tj. účet ve formátu nekdo@oushi.upol.cz. Použitý účet musí mít aktivovanou dvoufaktorovou autorizaci, kvůli lepší ochraně dat.

Po prvním přihlášení vám správce nastaví přístupová práva - tj. ke kterým výzkumům a ke kterým klinkám máte přístup.

Jednotlivé prvky systému

Dotazník je definován konfiguračním souborem. V něm je definována celá struktura dotazníku, včetně jednotlivých otázek a logiky zobrazování otázek.

Dotazník patří k Výzkumu. Výzkumy najdete na adrese /researches. Je upravovat existující výzkumy, zakládat nové. Sesbíraná data z výzkumu je možné exportovat do MS Excelu nebo do CSV formátu.

Výzkumy jsou k uživateli směřovány pomocí Brokerů. Brokerem je například Český národní panel, Kantar ale také naše vlastní webová stránka. Broker je zprostředkovatel, který odesílá respondenty.

A nově v systému existují také tzv. Kliniky. Klinika má přiřazené výzkumy, vytváří se v ní klienti a slouží k dlohodobému a opakovanému sledování definovaných jednotlivců například v kontextu psychoterapie.

1 - Co jsou to výzkumy

Přehled aktivních výzkumů je na stránce https://dotaznik.oushi.upol.cz/researches.

Výzkum je objekt, ke kterému patří právě jeden dotazník definovaný konfiguračním souborem. K výzkumu se potom ukládají jednoliví respondenti, kteří už dotazník zodpověděli. V rámci reálného věděckého výzkumného projeku můžete mít celou řadu dotazníků (na počátku projeku, na konci apod.) Každý z těchto dotazníků je z pohledu OQS systému samostatný výzkum.

Přehled výzkumů

Přehled výzkumů vypadá takto:

Výzkumy

Význam jednotlivých sloupců

  • Název Název jak se výzkum zobrazuje v seznamech výzkumů.
  • Popis Poznámky k výzkumu, zobrazují se pouze zde, respondenti je nevidí.
  • Konfigurační soubor: JSON soubor s konfigurací otázek. Struktura souboru je popsána zde.
  • Počet respondentů, kteří výzkum zahájili
  • Počet dokončených respondenů, tj. těch, kteří výzkum dokončili, tj. dotazník vyplnili až do konce
  • Datum zahájení, konfiguraovatelné, od kdy s dotazníkem pracovat
  • Datum ukončení konfigurovatelné, kdy se dotazník přestane nabízet

Můžete zde vytvořit nový výzkum, popřípadě spustit hromadný export přes více výzkumů.

Jednotlivé výzkumy můžete Zobrazit - tj. zobrazí se všichni respondenti v daném výzkumu, Editovat, upravíte parametry výzkumu a Smazat.

Smazání výzkumu

Pokud výzkumu smažete, tak se smažou jeho přiřazení a všechny uložené odpovědi respondentů! Toto smazání nelze vzít zpět, s výjimkou obnovení databáze ze zálohy.

2 - Konfigurace dotazníků

Popis konfiguračního souboru

Formát souboru je JSON. Podrobný úvod do formátu je zde: https://www.json.org/json-cz.html, stručný úvod potom máme zde: Úvod do jazyka JSON

2.1 - Úvod do jazyka JSON

Konfigurační soubor musí být validní JSON. Zkontrolovat je možné např. zde: https://jsonlint.com/.

Systém předpokládá, že celý definiční soubor dotazníku je jeden objekt.

Základní typy hodnot

Základní typy hodnot jsou:

  • textový řetězec (text) - jde o text v uvozovkách. Text nesmí přesahovat více řádků.
  • číslo - řada číslic, může před nimi být znaménko +/-
  • logický datový typ (boolean) - nabývá dvou hodnot - ano/ne (pravda/nepravda). Pravda se zapisuje jako true, nepravda jako false
  • objekt - viz dále
  • pole - viz dále

Objekt

Pro zápis se používají složené závorky. Objekt má parametry a hodnoty parametrů. Název parametru je v uvozovkách, po dvoujtečce následuje hodnota. Jednotlivé parametry s hodnotami musí být oddělené čárkami.

Zde je ukázaný jednoduchý objekt, který má parametr title a parametr name. Hodnota obou parametrů je textový řetězec.

{
  "title": "Test dotazniku na trauma",
  "name": "self_register_authorizer"
}

Jednotlivé parametry musí být oddělené čárkami. Hodnota parametru může být řetězec, číslo, další objekt nebo pole objektů (viz dále). Jednotlivé parametry jsou popsány u typů objektů. V současné době systém nekontroluje chybně pojmenované parametry a ignoruje je.

Pole objektů

Pole je množina seřazených objektů. Jestli parametry v objektu (viz výše) mají své jméno, jednotlivé prvky pole jsou určeny pouze pořadím. V JSONu moho pole obsahovat různé objekty nebo i další pole.

Pro zápis se používají hranaté závorky. Nápříklad stránky v dotazníku jsou zapsány jako pole:

{
  "title": "Test dotazniku na trauma",
  "authorizer": "self_register_authorizer",
  "pages": [
    {
      "id": "page1",
      "items": [
      ]
    }
  ]
}

pages i items jsou pole, které mohou obsahovat neomezené množství dalších objektů. Pro větší přehlednost se držíme praxe, že parametry typu pole jsou pojmenovány v množném čísle, tj. pages (stránky), items (položky).

2.2 - Základní části konfiguračního souboru dotazníku

Základní konfigurační soubor pro dotazníky vypdá následovně:

{
  "title": "Dotazník",
  "authorizer": "self_register_authorizer",
  "progress_bar": true,
  "questionnaire_locales": [
    "en",
    "sk",
    "cs"
  ],
  "globals": {
    "slider": {
      "min": 0,
      "max": 100,
      "step": 10
    }
  },
  "intro": {
    "cs": [
      "Vážení kolegové"
    ],
    "en": [
      "EN: Vážení kolegové,"
    ],
    "sk": [
      "Vážení kolegovia,"
    ]
  },
  "detailed_intro": {
    "cs": [
      "V následujících bodech máme povinnost Vás informovat o z....",
      "Veškerá práva a povinnosti při zpracování ..."
    ],
    "en": [
      "EN: V následujících bodech máme povinnost Vás informovat o z....",
      "EN: Veškerá práva a povinnosti při zpracování ..."
    ],
    "sk": [
      "V nasledujúcich bodoch máme povinnosť Vás informovať o ...",
      "Všetky práva a povinnosti pri spracovaní ..."
    ]
  },
  "consent": {
    "en": "EN: Četl jsem a souhlasím se zásadami ochrany osobních údajů",
    "cs": "Četl jsem a souhlasím se zásadami ochrany osobních údajů",
    "sk": "SK: Četl jsem a souhlasím se zásadami ochrany osobních údajů"
  },
  "pages": [
    {
      "type": "page",
      "id": "page-one",
      "items": [
        {
          "name": "sex",
          "type": "single_choice_radio",
          "text": {
            "en": "You are a",
            "cs": "Jste",
            "de": "Sind Sie"
          },
          "values": {
            "1": {
              "en": "Man",
              "cs": "Muž",
              "de": "Mann"
            },
            "0": {
              "en": "Woman",
              "cs": "Žena",
              "de": "Frau"
            }
          }
        }
      ]
    },
    {
      "type": "page",
      "id": "page-two",
      "items": [
      ]
    },
    {
      "type": "page",
      "id": "page-three",
      "items": [
      ]
    }
  ],
  "results": [
  ]
}


Tohle je trivální dotazník, který má úvod a potom se respondenta zeptá pouze na jedinou otázku - jestli je muž nebo žena.

Základní parametry:

  • title - Titul dotazníku
  • authorizer - modul pro konfiguraci přilašování uživatelů do dotazníku. Blíže viz Authorizer
  • progress_bar - má se zobrazovat na každé stránce dotazníku ukazatel z kolika procent už je dotazník vyplněn? true
    • ano, false - ne
  • questionnaire_locales - které jazyky má dotazník podporovat. Blíže viz podpora vícejazyčných dotazníků
  • globals - mechanismus pro globální nastavení parametrů u všech objektů konkrétního typu. V tomto případě si ušetříme psaní, kdy u každé otázky typu slider nastavíme spodní a hodní hodnotu a krok po kolika se posouvá

2.2.1 - Úvod dotazníku

Než je dotazník spuštěn a než se zobrazí první otázky, musí se zobrazit úvod a souhlas respondenta.

Úvod dotazníku
{
  "intro": {
    "cs": [
      "Vážení kolegové"
    ],
    "en": [
      "EN: Vážení kolegové,"
    ],
    "sk": [
      "Vážení kolegovia,"
    ]
  },
  "detailed_intro": {
    "cs": [
      "V následujících bodech máme povinnost Vás informovat o z....",
      "Veškerá práva a povinnosti při zpracování ..."
    ],
    "en": [
      "EN: V následujících bodech máme povinnost Vás informovat o z....",
      "EN: Veškerá práva a povinnosti při zpracování ..."
    ],
    "sk": [
      "V nasledujúcich bodoch máme povinnosť Vás informovať o ...",
      "Všetky práva a povinnosti pri spracovaní ..."
    ]
  },
  "consent": {
    "en": "EN: Četl jsem a souhlasím se zásadami ochrany osobních údajů",
    "cs": "Četl jsem a souhlasím se zásadami ochrany osobních údajů",
    "sk": "SK: Četl jsem a souhlasím se zásadami ochrany osobních údajů"
  }
}
  • intro - úvod dotazníku, zobrazuje se vždy - na obrázku začíná textem “Vážení kolegové”. Dále je náhled konfiguračního souboru zkrácený pro přehlednost.
  • detailed_intro - podrobný úvod, zobrazuje se po kliknutí na tlačítko “Klikněte sem pro detailní popis výzkumu”.
  • consent - přesný text k souhlasu se zaškrtávacími políčky. Bez zaškrtnutí tohoto políčka systém nepustí respondenta při vyplňování dále.

Všechny položky mohou být buďto přímo jako jednoduché textové řetězce, např:

"intro": "Vážení kolegové"

Nebo jako multijazykové řetězce:

{
  "intro": {
    "cs": [
      "Vážení kolegové"
    ],
    "en": [
      "Dear colleagues,"
    ],
    "sk": [
      "Vážení kolegovia,"
    ]
  }
}

Blíže viz Lokalizace dotazníků do více jazyků

v samostatném bloku nad tlačítkem Nejsem robot (reCaptcha).

2.2.2 - Stránky v dotazníku

V objektu dotazník questionnaire je parameter pages, což je pole, ve kterém jsou jednotlivé stránky. Pole znamená že položky jsou uzavřeny do hranatých závorek [] a jsou v něm vloženy seřazené objekty typu page.

{
  "pages": [
    {
      "type": "page",
      "id": "page-one",
      "items": [
        {
          "name": "sex",
          "type": "single_choice_radio",
          "text": "Jste",
          "values": {
            "m": "Muž",
            "f": "Žena"
          }
        }
      ]
    },
    {
      "type": "page",
      "id": "page-two",
      "items": [
        {
          "name": "sex",
          "type": "single_choice_radio",
          "text": "Jste",
          "values": {
            "m": "Muž",
            "f": "Žena"
          }
        }
      ]
    }
  ]
}

Objekt typu page

V dotazníku v poli pages jsou jednotlivé stránky. Stránka je definována jako objekt s paremetre "type": "page".

Například

{
  "type": "page",
  "id": "page-two",
  "display_conditions": [
    {
      "field": "family_status",
      "value_in": [
        "1",
        "3"
      ]
    }
  ],
  "items": [
    {
      "name": "sex",
      "type": "single_choice_radio",
      "text": "Jste",
      "values": {
        "m": "Muž",
        "f": "Žena"
      }
    }
  ],
  "conditions": [
    {
      "field": "pohlavi",
      "value": "m",
      "jump": "page-three"
    }
  ],
  "auto_forward": 25
}

Parametry:

  • id - jedinečný identifikáto stránky, nejlépe textový řetězec. Je povinnou položkou, bez něj nefunguje náhodné pořadí stránke. Pokud je duplicitní, tak to způsobí chybu při načtení dotazníku.
  • items - pole jednotlivých otázek (viz Typy otázek nebo sad otázek (viz Sady otázek)
  • display_conditions - podmínky pro zobrazení stránky, které se vyhodnocují při načítání stránky a ovlivňují, jestli se stránka zobrazí nebo přeskočí. Hodnota, v tomto případě pole pohlavi už musí být v databázi uložená. Blíže viz Podmínečné zobrazení
  • conditions - pole podmínek, které se vyhodnocují po odeslání odpovědí stránky. Tato položka vyhodnotí, jestli pole (field) pohlaví má hodnotu m. Pokud ano, tak přeskočí (jump) na stránku page-three. Mechanismus conditions je poměrně neobratný, protože je potřeba používat více stránek.
  • auto_forward - po zadaném počtu sekund, se stránku automaticky přesměruje na další v pořadí. Používá se pro stránky, které se mají zobrazit pouze na určitou dobu. Pokud na dané stránce má být nějaká

2.2.3 - Lokalizace dotazníků do více jazyků

Vícejazyčné dotazníky

Podpora vícejazyných dotazníků (lokalizace) má tři úrovně.

  1. Úroveň systému - zde jsou přeloženy různé systémové hlášky (tlačítka apod). Aktuálně jsou tyto prvky přeležné do jazyků čeština, angličtina, němčina, slovenština.

  2. Úroveń dotazníků - top level parameter questionnaire_locales musí obsahovat pole s podporovanými jazyky tohoto dotazníku. Jazyky jsou uváděny zkrácenými jazykovými ISO kódy (ISO 639-1)

  3. Úroveň jednotlivých textů. Například většina otázek má parametr text, který se zobrazí u samotné otázky. Například jednoduchá otázka na pohlaví:

Úvod dotazníku
{
  "name": "sex",
  "type": "single_choice_radio",
  "text": "Jste",
  "values": {
    "m": "Muž",
    "f": "Žena"
  }
}

Zobrazuje respondentovi popisek Jste a hodnoty Muž a Žena. Každý zobrazovaný řetězec může být lokalitován jako objekt, kde parametry jsou názvy jazyků a hodnoty potom přeložené jazyky. Lokalizovaná otázka potom vypadá takto:

{
  "name": "sex",
  "type": "single_choice_radio",
  "text": {
    "en": "You are a",
    "cs": "Jste",
    "de": "Sind Sie"
  },
  "values": {
    "1": {
      "en": "Man",
      "cs": "Muž",
      "de": "Mann"
    },
    "0": {
      "en": "Woman",
      "cs": "Žena",
      "de": "Frau"
    }
  }
}

Tento přístup jsme zvolili, protože v praxi se ukázalo, že udržovat paralelně 3 jazykové verze téhož rozsáhlého dotazníku jako samostatné soubory představuje velmi vážnou hrozbu pro duševní zdraví výzkumníků.

Je také možné omezit zobrazení některých textů či voleb v jednotlivých jazycích tím, že místo textového řetězce uvedeme speciální hodnotu false (nepravda).

Například otázka na etnicitu:

{
  "name": "ethnicity",
  "type": "single_choice_radio",
  "text": {
    "en": "Please, select your ethnicity",
    "cs": "Jaká je Vaše etnická příslušnost?",
    "de": "Bitte, wählen Sie Ihre Ethnizität aus"
  },
  "values": {
    "1": {
      "en": "Asian",
      "cs": "Asiat",
      "de": "Asiatisch"
    },
    "2": {
      "en": "White",
      "cs": "Běloch",
      "de": "Weiß"
    },
    "3": {
      "en": "Black or African American",
      "cs": "Afričan nebo Afro-Američan",
      "de": "Afrikaner oder Afroamerikaner"
    },
    "4": {
      "en": "Hispanic or Latino or Spanish Origin of any race",
      "de": "Hispanoamerikanisch oder Latino oder andere spanische Herkunft",
      "cs": false
    },
    "5": {
      "en": "Native Hawaiian or Other Pacific Islander",
      "de": false,
      "cs": false
    },
    "6": {
      "en": "American Indian or Alaska Native",
      "de": false,
      "cs": false
    }
  }
}

V tomto případě se hodnoty 1, 2 a 3 zobrazí ve všech jazykových mutacích dotazníku. Hodnota 4 se zobrazí pouze v německé a anglické verzi, hodnota 5 a 6 potom pouze v anglické jazykové mutaci. Předpokládáme zde, že mezi německy mluvícími respondenty nebudou Havaji ani Indiáni.

Systém je koncipován maximálně flexibilně, takže přeložené a nepřeložené řetězce je možné používat vedle sebe i v jednotlivých otázkách. Zde například hodnoty pro tabulku:

{
  "values": {
    "1": {
      "en": "Strongly disagree (1)",
      "cs": "Naprosto nesouhlasím (1)"
    },
    "2": "(2)",
    "3": "(3)",
    "4": "(4)",
    "5": "(5)",
    "6": "(6)",
    "7": {
      "en": "Strongly agree (7)",
      "cs": "Naprosto souhlasím  (7)"
    }
  }
}

Hodnoty 1 a 7 budou přeloženy, zatímco hodnoty 2 - 6 zůstávají stejné a není potřeba pro ně vytvářet pole jazykových hodnot.

2.2.4 - Moduly pro opakované využití

Pro opakované využívání je možné využívat moduly. Může jít o opakované použití v rámci jednoho dotazníku nebo v různých dotaznících. Typické scénáře mohou zahrnovat:

  1. Máte v rámci dotazníku stejnou sadu otázek, ale používáte ji v jiném kontextu. Příklad použití je napři v dotazníku FAST Elemementary Parent Post. Ptáme se na 9 různých aktivit v projektu pomocí stejné sady otázek - tj. jak byla aktivita srozumitelná, přínosná, zajímavá a jakou nám chtějí nechat zpětnou vazbu. Sadu otázek včetně hodnot máme v modulu a ten načteme v rámci jednoho dotazníku 9x. Tento scénář je popsán dále v použitých příkladech
  2. Máte standardizovaný nástroj - například Škála vnímaného stresu (PSSS), který chcete používat v různých výzkumech. Než abyste dotazník opakovaně kopírovali do dalších a dalších výzkumů, použijete jej jako modul.

Definice modulů

V adresáři questionnaires je podadresář modules. Moduly mají tento formát:

{
  "questions": [
    {
      "type": "wrapper",
      "name" : "activity_feedback",
      "items": [
        {
          "type": "question_table",
          "name": "params",
          "text": "Tato aktivita pro mě byla:",
          "values": {
            "1": "1 - Vůbec",
            "2": "2",
            "3": "3",
            "4": "4",
            "5": "5",
            "6": "6",
            "7": "7",
            "8": "8",
            "9": "9",
            "10": "10 - Maximálně"
          },
          "questions": [
            {
              "name": "understandable",
              "text": "Srozumitelná – bylo snadné pochopit, co máme dělat"
            },
            {
              "name": "interesting",
              "text": "Zajímavá – aktivita nás bavila, bylo příjemné ji dělat"
            },
            {
              "name": "helpful",
              "text": "Přínosná  -dozvěděl/a jsem se něco nového nebo jsem se něco nového naučil/a"
            }
          ]

        },
        {
          "type": "text_value",
          "name": "text",
          "text": "Chcete nám k této aktivitě ještě něco sdělit? Prosím napište nám to.",
          "rows": 4,
          "optional": true
        }
      ]
    }
  ]
}

Musí zde být obsažená položka questions. V jejím poli se potom nachází jedna nebo více otázek. Pokud je otázek více, tak při vložení do dotazníku musíme specifikovat, kterou otázku z dotazníku chceme využít pomoci direktivy section.

Dále zde vidíme použitý objekt Wrapper, který zajistí, že se budou všechny otázky vkládat dohromady. Ve wrapperu potom máme jednu tabulku a jednu otázku s volným textem.

Vložení modulu do výzkumu

Moduly se vkládají pomocí direktivy "type": "import":

    {
      "type": "import",
      "source": "FAST/activity_feedback"
      "name": "feedback_lottery",
    }

Direktiva source určuje odkud se modul načítá. Výchozí bod je adresář modules, zde je použitý jeho podadresář FAST (obsahuje moduly pro použití v Programu FAST).

Důležitá je direktiva name. Ta určuje, jaký prefix se vloží před název proměnné. Díky ní je možné použít modul ve výzkumu opakovaně, takže výsledné proměnné se budou jmenovat odlišně. Výsledné proměnné v tomto případě se budou jmenovat:

  • feedback_lottery_params_understandable
  • feedback_lottery_params_interesting
  • feedback_lottery_params_helpful
  • feedback_lottery_text

Logika složeného názvu:

  • feedback_lottery - je vložená v direktivě import
  • params - společná předpona tabulky
  • understandable, interesting, helpful - názvy řádků v tabulkách

Pokud potom použijeme další import, například v této podobě:

    {
      "type": "import",
      "source": "FAST/activity_feedback"
      "name": "feedback_family_group",
    }

Tak dostaneme následující proměnné:

  • feedback_family_group_params_understandable
  • feedback_family_group_params_interesting
  • feedback_family_group_params_helpful
  • feedback_family_group_text

2.2.5 - Náhodné pořadí

Aby se předešlo primingu v rámci dotazníků - https://en.wikipedia.org/wiki/Priming_(psychology), tak je možn u vybraných částí dotazníků měnit pořadí položek.

Je možné náhodně měnit pořadí u:

Nastavení náhodného pořadí je určeno parametrem shuffle. K němu je ve všech případech možné nastavit ještě pomocné parametry:

  • "shuffle_offset_start": 1 - kolik položek ze začátku vyřadit z míchání (tj. kolik stránek zůstane v původním pořadí)
  • "shuffle_offset_end": 1 - kolik položek od konce se vyřadí z míchání

Položkami zde chápeme buďto jednotlivé stránky, položky na stránce, řádky v tabulce nebo položky otákzy. Ilustrovat to můžeme u dotazníku. Pokud máme stránky page-1 až page-5 a oba offsety nastavím na 1:

{
  "title": "Dotazník",
  "shuffle": true,
  "shuffle_offset_start": 1,
  "shuffle_offset_end": 1,
  "pages": [
    {
      "id": "page-1"
    },
    {
      "id": "page-2"
    },
    {
      "id": "page-3"
    },
    {
      "id": "page-4"
    },
    {
      "id": "page-5"
    }
  ]
}

Tak výsledné možné kombinace stránek jsou:

  • page-1, page-2, page-3, page-4, page-5
  • page-1, page-2, page-4, page-3, page-5
  • page-1, page-3, page-2, page-4, page-5
  • page-1, page-3, page-4, page-2, page-5
  • page-1, page-4, page-3, page-2, page-5
  • page-1, page-4, page-2, page-3, page-5

2.2.6 - Podmínečné zobrazení

V průběhu vyplňování potřebujete, pokud se na základě dat, která uživatel vyplnil některé otázky nebo celé stránky zobrazí nebo naopak skryjí. Například pokud máte sadu utázek pouze pro ženy, tak tyto otázky budete chtít zobrazit pouze pokud předtím respondent vybral odpověď “žena”.

Podmínky statické

Statické podmínky předpokládají, že data už byla vyplněna na předcházejících stránkách a v tuto chvíli jsou už uloženy v databázi.

Statická podmínka se může týkat celé stránky, nebo se může týkat i jediné otázky.

Pokud se statická podmínka týká celé stránky, tak při nesplnění podmínky se stránka přeskočí. Zde například, pokud na otázku family_status byla vybrána odpověď married (ženatý) nebo in_relationship (ve vztahu), tak se zobrazí modul KMSS, což je dotazník Kansas Marital Satisfaction Scale. Pokud vybere respondent jinou hodnotu, stránka se přeskočí.

{
  "type": "page",
  "id": "page-kmss",
  "display_conditions": [
    {
      "field": "family_status",
      "value_in": [
        "married",
        "in_relationship"
      ]
    }
  ],
  "items": [
    {
      "name": "KMSS",
      "type": "import",
      "source": "KMSS"
    }
  ]
}


Pro jednotlivou otázku by stejná podmínka vypada následovně:


{
  "name": "spokojenost ve vztahu",
  "type": "single_choice_radio",
  "text": "Jste ve vztahu spokojeni?",
  "values": {
    "0": "Ne",
    "1": "Ano"
  },
  "condition": [
    {
      "field": "family_status",
      "value_in": [
        "married",
        "in_relationship"
      ]
    }
  ]
}


Jsou podporovány následující typy podmínek:

  • value: "1" - hodnota musí být 1
  • value_in: ["1", "2", "3", "4"] - hodnota musí nabývat jedné z hodnot, uvedených v poli
  • value_not: "1" - hodnot NENÍ 1
  • value_not_in: ["1", "2", "3", "4"] - hodnota NESMÍ nabývat žádné z hodnot v poli
  • tolerant: true|false - výchozí hodnota je false. Standardně pokud systém vyhodnocuje podmínku a nenajde příslušnou proměnnou v už uložených datech respondenta, tak skončí s chybou ConfigurationSystemException. V některých situací je ale žádoucí, aby podmínka byla tolerantní, takže pokud je nastavena hodnota tolerant: true, tak potom systém tuto podmínku vyhodnotí jako nesplněnou, pokud nenajde zdrojová data a nebude vyhazovat chybu.

Parametr display_conditions nebo conditions je pole, takže je možné zadat více podmínek. Vyphodnocování probíhá v pořadí jak jsou podmínky zadány a pro zobrazení otázky nebo stránky stačí, pokud jedna podmínka je vyhodnocena pozitivně. Podmínky jsou tedy ve vztahu nebo.

Podmínky jsou vyhodnocovány i při odeslání, takže pokud je otázka zobrazena, tak se kontroluje i jestli je vyplněná.

Podmínky dynamické

Dynammické podmínky se používají, pokud se dynamicky mění zobrazení formuláře přímo v prohlížeči, tj. při zaškrtnutí některé otázky se přímo zobrazí nebo naopak skryjí.

Jednoduchá uzkázka:

{
  "type": "page",
  "id": "page101",
  "items": [
    {
      "name": "sex",
      "type": "single_choice_radio",
      "text": "Jste:",
      "values": {
        "0": "Muž",
        "1": "Žena"
      }
    },
    {
      "name": "sex_confirmation",
      "type": "single_choice_radio",
      "text": "Skutečně jste žena?",
      "values": {
        "0": "Ano",
        "1": "Ne"
      },
      "display_if": {
        "what": "sex",
        "value": "1"
      }
    },
    {
      "type": "statement",
      "name": "final",
      "text": "End of All Questions."
    }
  ]
}

Na této stránkce, pokud vybereme odpověď Muž, tak se nezobrazí další otázka:

Úvod dotazníku

Pokud vybereme odpověď Žena, tak se zobrazí doplňující otázka:

Úvod dotazníku

Dynamická podmínka se vyhodnocuje i při odeslání. Pokud je splněná, tak se u zobrazené otázky kontroluje, jestli je vyplněná. Takže za těchto okolností, pokud respondent vybere že je Žena a nedoplní, jestli je skutečně žena, tak mu systém nedovolí pokračovat na další stránku.

Úvod dotazníku

Je možné zaráz odkazovat více hodnot. Tyto hodnoty potom musíme uvést jako pole. Můžeme odkazovat na různé hodnoty pro single_choice nebo na více hodnot multiple_choice. Např:

{
  "display_if": {
    "what": "nemoci",
    "value": [
      "1",
      "2",
      "3",
      "4"
    ]
  }
}

Přeskakování stránek

Poslední možností zpracování podmínek je vyhodnocení stránky po jejím uložení a následně přeskočení na jinou stránku. Klíčový je parametr jump, který určuje na kterou stránku, označenou pomocí id: parametru po vyplnění a úspěšném vyhodnocení podmínky systém přeskočí.

{
  "pages": [
    {
      "type": "page",
      "id": "page_1",
      "items": [
        {
          "name": "sex",
          "type": "single_choice_radio",
          "text": "Jste:",
          "values": {
            "m": "Muž",
            "f": "Žena"
          }
        }
      ],
      "conditions": [
        {
          "field": "sex",
          "value": "m",
          "jump": "page_for_all"
        }
      ]
    },
    {
      "type": "page",
      "id": "page_for_women",
      "items": [
        {
          "name": "question_for_women%_1",
          "type": "single_choice_radio",
          "text": "1. Otázka pouze proženy",
          "values": {
            "0": "Ano",
            "1": "Ne"
          }
        },
        {
          "name": "question_for_women_2",
          "type": "single_choice_radio",
          "text": "2. Otázka pouze proženy",
          "values": {
            "0": "Ano",
            "1": "Ne"
          }
        }
      ]
    },
    {
      "type": "page",
      "id": "page_for_all",
      "items": [
        {
          "name": "question_for_everyone",
          "type": "single_choice_radio",
          "text": "Otázka pro všechny",
          "values": {
            "0": "Ano",
            "1": "Ne"
          }
        }
      ]
    }
  ]
}


V tomto dotazníku pokud respondent vyplní hodnotu “Muž”, tak přeskočí na stránku page_for_all. Pokud vybere hodnotu žena, tak se zobrazí stránka s otázkami “1. a 2. otázka pouze pro ženy”.

Pomocí této logiky jde realizovat velmi složité postupy pro řízení průchodu dotazníkem. Nicméně oproti výše uvedeným metodám display_conditions je tento způsob poměrně složitý a komplikovaný na otestování.

2.2.7 - Zobrazení obázků

Aby se předešlo situacím, že respondent v online dotazníku uvidí obrázek v enormně široké podobně, v konfiguračním souboru se přidá k obrázku následující parametr: "orientation": "vertical" . Tento parametr zajistí adekvátní velikost obrázku. Po zakomponování tohoto parametru je vypadá výsledná konfigurace např. takto:

      {
        "type": "page",
        "id": "page-RMET1",
        "items": [
          {
            "name": "RMET_1",
            "type": "image_choice",
            "orientation": "vertical",
            "text": {
              "en": false,
              "cs": "Který emoční výraz nejlépe vystihuje obrázek obličeje?",
              "de": false
            },
            "image": "RMET_1.png",
            "values": {
              "1": "hravý",
              "2": "utěšující",
              "3": "podrážděný",
              "4": "znuděný"
            }
          }
        ]
      }

2.2.8 - Výsledky

Systém umí vyhodnocovat výsledky dotazníků a zobrazovat je respondentům. Toto zobrazení dotazníků funguje pouze u respondentů, kteří přišli přes web. Respondenti z jiných brokerů jsou hned po vyplnění odeslání zpět na stránky brokera.

{
  "results": [
    {
      "type": "single_value_result",
      "name": "GSES",
      "algorithm": "sum",
      "min_value": 1,
      "max_value": 4,
      "question_names": [
        "GSES_1",
        "GSES _2",
        "GSES _3",
        "GSES _4",
        "GSES_5",
        "GSES_6",
        "GSES _7",
        "GSES _8"
      ],
      "reversed_question_names": [],
      "histogram": true,
      "debug": false,
      "display": {
        "header": "Prožívání hanby a viny",
        "body": "Prožívání pocitů zahanbení a viny, které odpovídá na konkrétní jednání, je podstatná a usměrňující síla pro život jedince i společnosti. Nadměrné a neadekvátní prožívání těchto pocitů však může život člověka ovlivňovat negativně a může se stávat překážkou jeho dalšího růstu. Vaše průměrné skóre je: <b>{numeric_result}</b>, přičemž průměrné skóre zjištěné u předchozího online vzorku české populace bylo 2,1."
      }
    },
    {
      "type": "single_value_result",
      "name": "DSES",
      "algorithm": "sum",
      "min_value": 1,
      "max_value": 6,
      "question_names": [
        "DSES_1",
        "DSES_2",
        "DSES_3",
        "DSES_4",
        "DSES_5",
        "DSES_6",
        "DSES_7",
        "DSES_8",
        "DSES_9",
        "DSES_10",
        "DSES_11",
        "DSES_12",
        "DSES_13",
        "DSES_14",
        "DSES_15"
      ],
      "reversed_question_names": [],
      "histogram": true,
      "debug": false,
      "display": {
        "header": "Spiritualita",
        "body": "V testu spirituality jste dosáhli výsledku: <b>{text_result}</b>. V míře spirituality tedy dosahujete vyšších výsledků než {percentil}% lidí, kteří vyplnili tento dotazník před Vámi. Průměrné skóre v české populaci je 27,6 bodů (medián 21,5)."
      }
    },
    {
      "type": "single_value_result",
      "name": "HSPS_cutoff",
      "algorithm": "cutoff_greater",
      "cutoff_value": 5,
      "question_names": [
        "HSPS_1",
        "HSPS_2",
        "HSPS_3",
        "HSPS_4",
        "HSPS_5",
        "HSPS_6",
        "HSPS_7",
        "HSPS_8",
        "HSPS_9",
        "HSPS_10",
        "HSPS_11",
        "HSPS_12",
        "HSPS_13",
        "HSPS_14",
        "HSPS_15",
        "HSPS_16",
        "HSPS_17",
        "HSPS_18",
        "HSPS_19",
        "HSPS_20",
        "HSPS_21",
        "HSPS_22",
        "HSPS_23",
        "HSPS_24",
        "HSPS_25",
        "HSPS_26",
        "HSPS_27"
      ],
      "debug": false,
      "display": {
        "header": "Senzitivita",
        "rated_body": {
          "15": [
            "<p>Tento dotazník byl zaměřen na vysokou citlivost, která se týká zhruba 10-20% populace. ",
            "Vysoce citliví lidé vnímají okolní vlivy s vyšší intenzitou než ostatní a často i více vlivů najednou. ",
            "Vyšší citlivost se může projevovat jako intenzivnější vnímání některými (nebo všemi pěti) smysly nebo jako intenzivnější vnímání emocí a nálad druhých lidí. Není výjimkou, ",
            "že se u vysoce citlivých lidí projevuje kombinace obou druhů vyšší citlivosti. Vysoká citlivost jde ruku v ruce s vyšší tendencí být otevřený vůči novému, ",
            "|ale taktéž s vyššími nároky na zvládání různých podnětů.</p>",
            "<p>Na základě zjednodušeného vyhodnocení tohoto testu zřejmě do této kategorie nespadáte,",
            "pokud jste ale u více otázek dali 7 bodů, není vyloučené, že jste vysoce citlivým člověkem a doporučujeme Vám v tom případě projít si další internetové zdroje, ",
            "např. níže uvedené odkazy. I pokud se toto téma netýká Vás osobně, zcela jistě se navíc týká někoho z Vašich blízkých či známých:</p>",
            "<ul><li><a href='https://psychologie.cz/strach-z-odlisnosti/'>https://psychologie.cz/strach-z-odlisnosti/</a></li>",
            "<li><a href='https://hledani-reseni.cz/vysoce-citlivi-lide/'>https://hledani-reseni.cz/vysoce-citlivi-lide/</a></li>",
            "<li><a href='http://nadani-citlivosti.cz/nejcastejsi-otazky/'>http://nadani-citlivosti.cz/nejcastejsi-otazky/</a></li></ul>"
          ],
          "1000": [
            "<p>Vysoce citliví lidé vnímají okolní vlivy s vyšší intenzitou než ostatní a často i více vlivů najednou.",
            "Vyšší citlivost se může projevovat jako intenzivnější vnímání některými (nebo všemi pěti) smysly nebo jako intenzivnější vnímání emocí a nálad druhých lidí.",
            "Není výjimkou, že se u vysoce citlivých lidí projevuje kombinace obou druhů vyšší citlivosti.",
            "Na základě výsledku tohoto testu jste pravděpodobně vysoce citlivá osoba. Vysoká citlivost jde ruku v ruce s vyšší tendencí být otevřený vůči novému, ale taktéž s vyššími nároky na zvládání různých podnětů. ",
            "Žádný psychologický test však není tak přesný, aby na něm člověk založil svůj život. Z vlastní zkušenosti pravděpodobně sami nejlépe víte, zda se na Vás toto označení hodí.",
            "Pokud jste se s touto otázkou dosud nesetkali, doporučujeme Vám projít si další internetové zdroje, např. níže uvedené odkazy:</p>",
            "<ul><li><a href='https://psychologie.cz/strach-z-odlisnosti/'>https://psychologie.cz/strach-z-odlisnosti/</a></li>",
            "<li><a href='https://hledani-reseni.cz/vysoce-citlivi-lide/'>https://hledani-reseni.cz/vysoce-citlivi-lide/</a></li>",
            "<li><a href='http://nadani-citlivosti.cz/nejcastejsi-otazky/'>http://nadani-citlivosti.cz/nejcastejsi-otazky/</a></li></ul>"
          ]
        }
      }
    },
    {
      "type": "single_value_result",
      "name": "HSPS_average",
      "algorithm": "average",
      "min_value": 1,
      "max_value": 7,
      "question_names": [
        "HSPS_1",
        "HSPS_2",
        "HSPS_3",
        "HSPS_4",
        "HSPS_5",
        "HSPS_6",
        "HSPS_7",
        "HSPS_8",
        "HSPS_9",
        "HSPS_10",
        "HSPS_11",
        "HSPS_12",
        "HSPS_13",
        "HSPS_14",
        "HSPS_15",
        "HSPS_16",
        "HSPS_17",
        "HSPS_18",
        "HSPS_19",
        "HSPS_20",
        "HSPS_21",
        "HSPS_22",
        "HSPS_23",
        "HSPS_24",
        "HSPS_25",
        "HSPS_26",
        "HSPS_27"
      ],
      "histogram": true,
      "debug": false,
      "display": {
        "body": [
          "Vaše průměrné skóre je: <b>{numeric_result}</b>.",
          "V současné době bohužel nemáme k dispozici reprezentativní česká data. Uvádíme ale průměrné hodnoty získané na online vzorku v ČR a dalších vzorcích v jiných zemích ",
          "(pozor, ani zde se ale nejedná o reprezentativní vzorky, z těchto čísel tedy nelze usuzovat na hodnoty v celkové populaci, ale je potřeba je brát jako orientační).",
          "<ul><li>Předchozí online vzorek české populace (51 % žen): průměr = 3,79 (medián 3,89) </li>",
          "<ul><li>Vzorek 904 studentů psychologie z USA (58 % žen): průměr = 4.09 </li>",
          "<li>Online vzorek 357 respondentů z USA (46 % žen): průměr = 3.95</li>",
          "<li>Německý vzorek 898 respondentů (73 % žen): průměr = 4.54</li></ul"
        ]
      }
    },
    {
      "type": "single_value_result",
      "name": "BFI-N",
      "algorithm": "sum",
      "min_value": 1,
      "max_value": 7,
      "question_names": [
        "BFI_N_1",
        "BFI_N_3",
        "BFI_N_4",
        "BFI_N_6",
        "BFI_N_8"
      ],
      "reversed_question_names": [
        "BFI_N_2",
        "BFI_N_5",
        "BFI_N_7"
      ],
      "histogram": true,
      "debug": false,
      "display": {
        "header": "Neuroticismus",
        "body": "Nízká míra neuroticismu je spjatá s odolností vůči stresu, duševní stabilitou a vyrovnaností. Naopak vysoká míra neuroticismu jde ruku v ruce s duševní disharmonií a častějším, intenzivnějším prožíváním negativních citových stavů jako smutek, obavy, vina, hněv. Vaše průměrné skóre je: <b>{numeric_result}</b>, přičemž průměrné skóre u české populace nabývá hodnoty 22,7."
      }
    },
    {
      "type": "single_value_result",
      "name": "self_esteem",
      "algorithm": "average",
      "question_names": [
        "Self_esteem_1",
        "Self_esteem_3",
        "Self_esteem_4",
        "Self_esteem_7",
        "Self_esteem_10"
      ],
      "histogram": true,
      "debug": false,
      "display": {
        "header": "Vztah k sobě",
        "rated_body": {
          "1": "Máte pozitivní vztah k sobě a dobrý pocit vlastní hodnoty (podobně jako 6 % Čechů).",
          "2": "Máte poměrně dobrý vztah k sobě a pocit vlastní hodnoty (podobně jako 65 % Čechů).",
          "10000": "Zdá se, že se Vám dosud nedaří důvěřovat pocitu Vaší vlastní hodnoty (podobně jako 22 % Čechů)."
        }
      }
    },
    {
      "type": "single_value_result",
      "name": "RSPM",
      "algorithm": "check_values",
      "correct_answers": {
        "RSPM_11": "4",
        "RSPM_24": "5",
        "RSPM_28": "8",
        "RSPM_36": "2",
        "RSPM_43": "5",
        "RSPM_48": "6",
        "RSPM_49": "7",
        "RSPM_53": "1",
        "RSPM_55": "1"
      },
      "histogram": true,
      "debug": false,
      "display": {
        "header": "Inteligenční kvocient:",
        "body": "Tento test poskytuje velmi hrubý odhad inteligenčního kvocientu (IQ). Výsledky testu naznačují, že Vaše IQ je vyšší než u {percentil_high}% lidí, kteří absolvovali test před Vámi. Vzhledem k těmto lidem, čítá odhad vašeho IQ xxxxxx bodů. Je však nutné zdůraznit, že výsledek se může lišit od Vaší skutečné míry IQ. Váš výkon též může být ovlivněn řadou faktorů jako je například únava, pozornost apod. Z těchto důvodů je na místě Váš výsledek (IQ) nepřeceňovat."
      }
    },
    {
      "type": "complex_value_result",
      "name": "eba-ret",
      "algorithm": "third_faces",
      "face_values": {
        "anger": "Hněv",
        "disgust": "Znechucení",
        "fear": "Strach",
        "joy": "Radost",
        "neutral": "Neutrální",
        "sadness": "Smutek"
      },
      "question_names": [
        "EBA_RET1",
        "EBA_RET2",
        "EBA_RET3",
        "EBA_RET4",
        "EBA_RET5",
        "EBA_RET6",
        "EBA_RET7",
        "EBA_RET8",
        "EBA_RET9",
        "EBA_RET10"
      ],
      "spider_chart": true,
      "debug": false,
      "display": {
        "header": "Vybrané emoce",
        "body": [
          "<p>Vybrané emoce ve Vašem prožívání vztahů: {selected_text}</p>"
        ]
      }
    },
    {
      "type": "single_value_result",
      "name": "TEQ",
      "algorithm": "sum",
      "min_value": 1,
      "max_value": 5,
      "question_names": [
        "TEQ_1",
        "TEQ_CON_2",
        "TEQ_3",
        "TEQ_CON_4",
        "TEQ_5",
        "TEQ_CON_14",
        "TEQ_16"
      ],
      "reversed_question_names": [],
      "histogram": true,
      "debug": false,
      "display": {
        "header": "Empatie",
        "body": "V testu empatie jste dosáhli výsledku: <b>{text_result}</b>. Jinými slovy, v míře empatie dosahujete lepších výsledků než {percentil}% lidí, kteří vyplnili dotazník před Vámi. Míra empatie souvisí s tím, jak jsme citliví vůči pozitivním či negativním emocím druhých lidí. Empatie též souvisí s naší schopností rozpoznávat emoce a ochotou zajímat se o duševní svět druhého člověka."
      }
    },
    {
      "type": "questionnaire_note",
      "heading": "Poděkování",
      "note": "Děkujeme za vaše odpovědi v dotazníku. Vážíme si času, který jste věnoval/a zodpovězení našich otázek. Pokud si přejete získat kopii výsledků, jakmile bude průzkum ukončen, uveďte prosím níže vaši e-mailovou adresu. Vaše kontaktní údaje nebudou v žádném případě spojeny s vašimi odpověďmi z dotazníku."
    }
  ]
}

2.2.9 -

2.3 - Autorizace respondentů do dotazníku

Dotazníky mají různé potřeby, jak registrovat a popřípadě autorizovat respondenty. Proto systém podporu 4 autorizační mechanismy. Tyto mechanismy se primárně vztahují na respondenty, kteří přicházejí sami na stránky Dotazníků. Nově už funkcionalitu autorizačních mechanismů částečně přebírají Zprostředkovatelé (brokeři)

Typ autorizace je specifikován parametrem authorizer v top level konfiguraci dotazníku.

Implicitní autorizace

{
  "authorizer": "self_register_authorizer"
}

SelfRegisterAuthorizer je nejjednoduší autorizační mechanismus. Nový respondent, který začne vyplňovat dotazník, obdrží unikátní kód. Respondent není žádným způsobem kontrolován. Pokud tentýž respondent přijde znovu, tak dostane nový kód a není možné zkontrolovat, jestli náhodou už dotazník nevyplnil dříve.

Autorizace předem distribuovaným kódem

{
  "authorizer": "predefined_code_authorizer",
  "authorizer_config": {
    "code_file_name": "oxytocin-access-codes.csv"
  }
}

Při zahájení dotazníku systém po respondentovi požaduje kód, který mu byl předán předem. Toto scháma bylo použito například při odběru slin, kdy kód by na zkumavce a následně se stejným kódem potom respondent vypňoval dotazník. Každý kód lze použít právě jednou.

code_file_name je název souboru, ve který jsu uloženy kódy, jeden kód na řádek. Příklad použitých kódů:

SWIG
RNUF
REPY
DFWZ
TGQG
OWJZ
MIWY
AUTM

Autorizace předem distribuovaným kódem nebo implicitní autorizace

{
  "authorizer": "optional_predefined_code_authorizer",
  "authorizer_config": {
    "code_file_name": "oxytocin-access-codes.csv"
  }
}

Funguje jako oba výše uvedené mechanismy dohromady. Respondent je vyzván, aby zadal kód. Pokud ho zadá, tak se kód zkontroluje a pokud odpovídá a ještě nebyl použit, tak je respondent zaregistrován. Dále ale může respondent vstoupit bez kódu a potom je mu přidělen nový unikátní kód.

Znovupoužití kód po již vyplněném dotazníku

{
  "authorizer": "reuse_code_authorizer",
  "parent_research_id": 16
}

Pokud už respondent už dříve vyplnil jiný dotazník, tak na konci se mu může zobrazit jeho kód s poznámkou, aby si ho uložil. A potom s tímto kódem respondent vstoupí do nového dotazníku, čímž je zajištěno párování respondentů napříč dotazníky (retesty a podobně).

parent_research_id označuje id (číselný identifikátor) předchozího dotazníku. Tady je syntaxe poněkud nekonzistentní, protože paramer není uzavřen v bloku authorizer_config.

2.4 - Typy otázek

Společné parametry otázek

Otázka musí být vždy obsažena v poli items stránky. Jednoduchá otázka vypadá například takto:

{
  "name": "family_status",
  "type": "single_choice_radio",
  "text": "Rodinný stav",
  "values": {
    "1": "zadaný/á",
    "2": "nezadaný/á",
    "3": "ženatý, vdaná",
    "4": "rozvedený/á",
    "5": "vdovec, vdova",
    "6": "řeholník, řeholnice, kněz"
  }
}

Společné povinné parametry jsou:

  • name interní název otázky. Respondent ho nevidí. Pod tímto názvem je potom otázka označena v exportu. Tento název je využitý také u podmínek pro zobrazení (display_conditions, display_if) a skoků (page conditions).
  • type - typ otázky. Dostupné typy jsou popsány dále. Zde je o výběr z jedné hodnoty.
  • text - text otázky, který se zobrazí uživateli. Může být lokalizován do různých jazyků - viz Lokalizace

Volitelné parametry potom jsou:

optional

Ve výchozím stavu jsou všechny otázky povinné, takže pokud uživatel otázku nevyplní, tak po odeslání se stránka s otázkou zobrazí znovu, červeně zvýrazněná a nepustí respondenta dál, dokud otázku nevyplní.

Pokud má být otázka volitelná, tak stačí když bude mít nastaveno optional: true.

display_conditions

Při načítání stránky se kontroluje, jestli testovaná hodnota už je v databázi a má požadovanou hodnotu. Příklad:

{
  "name": "family_status",
  "type": "single_choice_radio",
  "text": "Rodinný stav",
  "values": {
    "1": "zadaný/á",
    "2": "nezadaný/á",
    "3": "ženatý, vdaná",
    "4": "rozvedený/á",
    "5": "vdovec, vdova",
    "6": "řeholník, řeholnice, kněz"
  },
  "display_conditions": [
    {
      "field": "family_status",
      "value_in": [
        "1",
        "3"
      ]
    }
  ]
}

Pokud otázka family_status má hodnotu 1 nebo 3, tak se tato otázka zobrazí, jinak ne. Otázka family_status v tomto případe musí už být na předchozích stránkách.

display_if

Zobraz pokud what ma hodnotu value. Hodnota se vyhodnocuje jak při načítání stránky, tak i dynamicky při vyplňování dotazníku, takže je možné přímo v prohlížeči dynamicky měnit, které otázky uživatel vidí a nevidí.

{
  "display_if": {
    "what": "faith_religion",
    "value": "1"
  }
}

2.4.1 - Statement

Technicky vzato statement není otázka, ale pouze informativní blok textu, který se zobrazí mezi otázkami. Nepotřebuje parametr name, protože se z něj nic neukládá do databáze.

Příklad:

{
  "type": "statement",
  "text": "Na následující stránce se Vám zobrazí seznam slov ... "
}

Se zobrazí takto:

statement example

Ve textu je možné používat lokalizaci.

Dále je možné použít parametr values, které se zobrazí jako seznam s odrážkami.

2.4.2 - Numerical Value

Otázka na vložení číselné hodnoty.

{
  "name": "year_of_birth",
  "type": "numerical_value",
  "text": "Rok narození",
  "min": 1900,
  "max": 2003,
  "float": false
}

Parametry:

  • min - minimální hodnota
  • max - maximální hodnota
  • float - mají se vkládat čísla s desetinnou čárkou? true - ano, false - ne

2.4.3 - Slider

Slider je vlastně rozšířením numerical_value. Získává číselnou hodnotu, ale uživatel posouvá posuvník, aniž by zadával konkrétní hodnotu.

 {
  "name": "protection",
  "type": "slider",
  "text": "Jak se nyní jako psychoterapeut chráníte ....",
  "min_label": "nijak",
  "max_label": "extrémně",
  "min": 0,
  "max": 100,
  "step": 10
}

Vytvoří tuto otázku

slider example

2.4.4 - Text Value

Textový vstup.

{
  "type": "text_value",
  "name": "covid_description",
  "text": "Pokud COVID-19 vstupuje do psychoterapeutických intervencí, jak je toto téma vašimi pacienty tématizováno?"
}

Zobrazí tuto otázku.

text_value example

2.4.5 - Single Choice

Otázka, kde respondent vybírá z více možností, přičemž může vybrat pouze jednu. Může být zobrazena jako tzv. drop down field (musí se rozkliknout) nebo se zobrazí všechny možnosti hned (radio buttons).

Parameter values mapuje textové hodnoty, které uvidí respondent na hodnoty, které jsou potom uloženy v databázi a následně exportovány. Takže pokud uživatel vybere např. možnost “ano, dlouhodobě”, tak se do odpovědí uloží hodnota 2.

Type parameter single_choice

{
  "name": "psychotherapy_change",
  "type": "single_choice",
  "text": "Mění se podle Vašeho názoru kvůli pandemii COVID-19 činnost psychoterapeutů?",
  "values": {
    "0": "ne",
    "1": "ano, krátkodobě (několik málo týdnů/měsíců)",
    "2": "ano, dlouhodobě (více měsíců)"
  }
}

Výchozí zobrazení:

single choice

Po rozliknutí:

single choice

Radio buttons

{
  "name": "psychotherapy_change",
  "type": "single_choice_radio",
  "text": "Mění se podle Vašeho názoru kvůli pandemii COVID-19 činnost psychoterapeutů?",
  "values": {
    "0": "ne",
    "1": "ano, krátkodobě (několik málo týdnů/měsíců)",
    "2": "ano, dlouhodobě (více měsíců)"
  }
}

Zobrazení

[single choice

Kompletní lokalizace

Ukázka single_choice_radio s kompletní lokalizací pro češtinu, angličtinu a slovenštinu.

{
  "name": "psychotherapy_change",
  "type": "single_choice_radio",
  "text": {
    "cs": "Mění se podle Vašeho názoru kvůli pandemii COVID-19 činnost psychoterapeutů?",
    "en": "In your opinion, does the practice of psychotherapy change because of Covid-19 pandemics?",
    "sk": "Mení sa podľa, Vášho názoru, kvôli koronavírusu (COVID-19) činnosť psychoterapeutov?"
  },
  "values": {
    "0": {
      "en": "no",
      "cs": "ne",
      "sk": "nie"
    },
    "1": {
      "en": "EN: ano, krátkodobě (několik málo týdnů/měsíců)",
      "cs": "ano, krátkodobě (několik málo týdnů/měsíců)",
      "sk": "áno, krátkodobo (niekoľko málo týždňov/mesiacov)"
    },
    "2": {
      "en": "EN: ano, dlouhodobě (více měsíců)",
      "cs": "ano, dlouhodobě (více měsíců)",
      "sk": "áno, dlhodobo (viac mesiacov)"
    }
  }
}

2.4.6 - Multiple Choice

Otázka, u které respondent může vybrat více odpovědí zaráz.

Například:

{
  "name": "onemocneni",
  "type": "multiple_choice",
  "text": "Máte dlouhotrvající onemocnění nebo postižení? Prosím označte všechny, které se na vás vztahují:",
  "values": {
    "1": "ischemická choroba srdce",
    "2": "hypertenze",
    "3": "cévní mozková příhoda / mozková mrtvice",
    "4": "chronické plicní onemocnění",
    "5": "astma",
    "6": "rakovina",
    "7": "diabetes",
    "8": "obezita",
    "9": "artritida",
    "10": "bolesti zad",
    "11": "žaludeční nebo dvanáctníkové vředy",
    "12": "záněty střeva (Crohnova choroba, ulcerózní kolitida)",
    "13": "kožní nemoci (ekzém)",
    "14": "alergie",
    "15": "migréna",
    "16": "bolesti nejasného původu",
    "17": "u žen – bolesti v malé pánvi (včetně gynekologických potíží)",
    "18": "deprese",
    "19": "onemocnění štítné žlázy",
    "20": "psychiatrické obtíže",
    "21": "žaludeční reflux",
    "22": "ADHD (porucha pozornosti s hyperaktivitou)",
    "23": "chronická únava",
    "24": "psoriáza (lupénka)",
    "26": "narcistická porucha osobnosti",
    "27": "disociální porucha osobnosti (antisociální porucha osobnosti)",
    "28": "hraniční porucha osobnosti",
    "29": "úzkost",
    "25": "<b>Žádné</b>",
    "other": "Jiné"
  }
}

Zobrazí tuto otázku

2.4.7 - Semantický diferenciál

Semantický diferenciál

Pro popis semantického diferenciálu viz https://cs.wikipedia.org/wiki/S%C3%A9mantick%C3%BD_diferenci%C3%A1l

Konfigurační soubor obsahuje volitelný objekt values, kde jsou záhlaví sloupců a pole questions s otázkami. Pokud se objekt values nepoužije, tak tabulka nebude mít žádné záhlaví.

Questions jsou atypické tím, že místo jednoduchého textu mají položku left a right, které uvádějí popisku vlevo a vpravo.

Samotná data se potom vkládají posuvníků. Nadpisy sloupců jsou tedy pouze orientační. Výsledné hodnoty jsou v rozsahu 0 - 100.

Systém kontroluje, jestli respondent pohnul s jednotlivými slidery. Pokud ano, tak slider zmodrá. Pokud ne, tak bude systém trvat na tom, aby respondent nastavil nějakou hodnotu.

Ukázka konfiguračního souboru.


{
  "type": "semantic_differential",
  "name": "regulations",
  "text": "Můj postoj k vládním opatřením proti COVID - 19",
  "values": {
    "1": "extrémně",
    "2": "mírně",
    "3": "docela",
    "4": "ani jedno<br>ani druhé",
    "5": "mírně",
    "6": "docela",
    "7": "extrémně"
  },
  "questions": [
    {
      "name": "useful",
      "left": "užitečná",
      "right": "zbytečná"
    },
    {
      "name": "efficient",
      "left": "účinná",
      "right": "neúčinná"
    },
    {
      "name": "rational",
      "left": "racionální",
      "right": "iracionální"
    },
    {
      "name": "manageable",
      "left": "zvládnutelná",
      "right": "nezvládnutelná"
    },
    {
      "name": "appropriate",
      "left": "přiměřená",
      "right": "nepřiměřená"
    },
    {
      "name": "pleasant",
      "left": "příjemná ",
      "right": "nepříjemná"
    }
  ]
}

Vyvtvoří tento dotazník:

Semantic Differential without values

Po vybrání hodnot potom vypadá dotazník takto:

Semantic Differential with values

A výše ukázaný dotazník následně uloží tyto hodnoty:

Název Hodnota
regulations_useful 27
regulations_efficient 39
regulations_rational 63
regulations_manageable 21
regulations_appropriate 44
regulations_pleasant 96

2.4.8 - Admin Value

Speciální otázka, která se nezobrazí tazateli, ale administrátorně do ní následně může vkládat hodnoty. Původní use case pro tuto otázku je dotazník ke kortizolu, který vyplní respondent. Poté, co laboratoř vyhodnotí vzorky, tak si administrátor otevřet respondenta a ručně tam hodnoty vloží.

{
  "name": "cortizol-morning",
  "type": "admin_value"
},
{
  "name": "cortizol-noon",
  "type": "admin_value"
},
{
  "name": "cortizol-evening",
  "type": "admin_value"
},
{
  "name": "cortizol-night",
  "type": "admin_value"
}

Parametry:

  • name - název otázky

Seznam admin hodnot v administraci respondenta

Editace konkrétní hodnoty po kliknutí na ikonu tužky

2.5 - Sady otázek

Popis konfiguračního souboru

Formát souboru je JSON. Podrobný úvod do formátu je zde: https://www.json.org/json-cz.html, stručný úvod potom máme zde: Úvod do jazyka JSON

2.5.1 - Komplexní tabulka

Komplexní dotazníková tabulka

Její definice zahrnuje otázky (Qeustion) a koomplexní odpovědi (parametr se jmenuje values).

Parametry:

  • name - interní název tabulky jak budou její hodnoty interně uloženy a následně exportován
  • type - musí být complex_question_table
  • values - pole podotázek - tj. sloupců tabulky
  • questions - pole otázek - tj. řádků tabulky

Otázka

Samotná otázka už nemá vlastní typ, ale slouží pouze jako množina pod otázek, které se zobrazují v tabulce. Podotázky jsou definované pro celou tabulku, tj. pro celou sadu otázek.

Parametry:

  • typ - viz dále
  • name - interní název otázky jak budou její hodnoty interně uloženy a následně exportován.
  • text - co uvidí respondent
  • condition - za jakých okolností se má celá otázka (tj. celý řádek v tabulce zobrazit). Např. na potrat se neptáme mužů (i když i pro ně to může být traumatická událost)
  • TODO: omit_subquestions - zatím neimplementováno, které podotázky se mají přeskočit

Podotázky

Představují sloupce v tabulce. Parametry jsou následující:

  • typ - viz dále
  • name - název otázky jak budou její hodnoty interně uloženy a následně exportován. Mají následující typy:

single_choice podotázka

Vyber jednu hodnoty z pole hodnot. Každá hodnota se zobrazuje jako sloupec v tabulce

generic podotázka

Každý sloupec může mít samostatný typ - viz výběr níže.

Veber více hodnot z pole hodnot. Kazda hodnota se zobrazuje jako jako sloupec v tabulkce. Exportovaná hodnota je složena z vybraných hodnot spojených čárkou

selector

Vyber jednu hodnotu z drop down menu

string

Textové po pro vložení komentáře. POkukd má více sloupců (tj. cols hodnot), tak jsou výsledné hodnoty spojení čárkou.

Export finálních dat

Název proměnných v exportu je konstruován takto:

NameTabulky_NázevOtázky_NazevPodotazky

tj. např. Trauma_Valka_VekZacatku: 15

Náhodné řazení otázek

Do tabulky je možné přidat parametr "shuffle": true.

Potom se náhodně zamíchají otázky a vypíšou se v náhodném pořadí. Zároveň se vytvoří ještě jedna nová proměnná, do které se uloží pořadí otázek.

Ukázka definice komplexní tabulky:

{
  "name": "trauma",
  "type": "complex_question_table",
  "values": [
    {
      "type": "generic",
      "name": "age",
      "text": "Kolik Vám bylo let, když to začalo/když se to stalo",
      "cols": [
        {
          "name": "started",
          "text": "",
          "type": "numeric",
          "min": 0,
          "max": 100
        }
      ]
    },
    {
      "type": "generic",
      "name": "age",
      "text": "Kolik let to trvalo",
      "cols": [
        {
          "name": "duration",
          "text": "",
          "type": "numeric",
          "min": 0,
          "max": 100
        }
      ]
    },
    {
      "type": "single_choice",
      "name": "frequency",
      "text": "Stalo se to",
      "cols": [
        {
          "name": "once",
          "text": "1x"
        },
        {
          "name": "more_times",
          "text": "vícekrát"
        },
        {
          "name": "often",
          "text": "často"
        }
      ]
    },
    {
      "type": "single_choice",
      "name": "fear",
      "text": "Byl tento zážitek spojen s intenzivními pocity strachu hrůzy nebo bezmoci?",
      "cols": [
        {
          "name": "yes",
          "text": "Ano"
        },
        {
          "name": "no",
          "text": "Ne"
        }
      ]
    },
    {
      "type": "single_choice",
      "name": "fear_of_death",
      "text": "Když se ta událost stala, myslel/a jste si, že vy nebo někdo jiný by mohl být zabit nebo vážně zraněn?",
      "cols": [
        {
          "name": "yes",
          "text": "Ano"
        },
        {
          "name": "no",
          "text": "Ne"
        }
      ]
    },
    {
      "type": "single_choice",
      "name": "sharing",
      "text": "Měla/a jsem s kým o tom mluvit",
      "cols": [
        {
          "name": "yes",
          "text": "Ano"
        },
        {
          "name": "no",
          "text": "Ne"
        }
      ]
    },
    {
      "type": "single_choice",
      "name": "shame",
      "text": "Bral/a jsem si to za vinu nebo jsem se za to styděl/a",
      "cols": [
        {
          "name": "yes",
          "text": "Ano"
        },
        {
          "name": "no",
          "text": "Ne"
        }
      ]
    },
    {
      "type": "generic",
      "name": "influence",
      "text": "Na stupnici 0-10: Jak moc Vás to ovlivnilo :",
      "cols": [
        {
          "name": "life",
          "text": "V dalším životě",
          "type": "selector",
          "value_list": {
            "0": "0",
            "1": "1",
            "2": "2",
            "3": "3",
            "4": "4",
            "5": "5",
            "6": "6",
            "7": "7",
            "8": "8",
            "9": "9",
            "10": "10"
          }
        },
        {
          "name": "lastyear",
          "text": "V uplynulém roce",
          "type": "selector",
          "value_list": {
            "0": "0",
            "1": "1",
            "2": "2",
            "3": "3",
            "4": "4",
            "5": "5",
            "6": "6",
            "7": "7",
            "8": "8",
            "9": "9",
            "10": "10"
          }
        }
      ]
    }
  ],
  "questions": [
    {
      "name": "valka",
      "text": "Válka"
    },
    {
      "name": "terorismus",
      "text": "Teroristický útok"
    },
    {
      "name": "prepadeni",
      "text": "Loupežné přepadení"
    }
  ]
}

2.5.2 - Jednoduchá tabulka

Jednoduchá tabulka

Představuje typickou dotazníkovou tabulku, kde v řádcích jsou otázky a ve sloupcích potom možné hodnoty, které uživatel vyplňuje.

Tento konfigurační soubor:

{
  "name": "komunita",
  "type": "question_table",
  "text": "Do jaké míry souhlasíte s následujícími výroky?",
  "values": {
    "1": "Úplně souhlasím",
    "2": "Spíše souhlasím",
    "3": "Spíše nesouhlasím",
    "4": "Vůbec nesouhlasím"
  },
  "questions": [
    {
      "name": "1",
      "text": "Pravidla nastavená v mé komunitě mně osobně připadají mírná."
    },
    {
      "name": "2",
      "text": "Denní řád mé komunity mi celkově připadá zcela vyhovující."
    },
    {
      "name": "3",
      "text": "Denní řád mé komunity bych hodnotil/a jako velmi flexibilní.",
    {
      "name": "4",
      "text": "V mé komunitě platí stejná pravidla pro každého člena/každou členku."
    },
    {
      "name": "5",
      "text": "Ve srovnání s jinými řeholními společenstvími bych to své hodnotil/a jako velmi volné."
    },
    {
      "name": "6",
      "text": "Žitá realita mé komunity podle mne zcela odpovídá stanovám."
    },
    {
      "name": "7",
      "text": "Žitá realita mé komunity podle mne zcela odpovídá současným výzvám papeže Františka a Kongregace pro instituty zasvěceného života a společnosti apoštolského života."
    }
  ]
}

Vytvoří následující tabulku:

Question Table

Parametry

V konfiguraci jsou klíčové následující parametry:

  • values - objekt s hodnotami pro záhlaví tabulky (tj. sloupce tabullky), kde klíče jsou hodnoty k uložení a text se zobrazí uživateli.
  • questions - jednotlivé otázky v tabulce (tj. řádky tabulky)

Každý řádek v questions může být zobrazen podmínečně pomocí parametrů conditions:


{
  "name": "7",
  "text": "Žitá realita mé komunity podle mne zcela odpovídá současným výzvám papeže Františka a Kongregace pro instituty zasvěceného života a společnosti apoštolského života."
  "conditions": [
    {
      "field": "gender",
      "value": "1"
    }
  ]
}

V tomto případě by se řádek 7 zobrazil pouze pokud by předchozí hodnota pole gender byla 1, jinak se nezobrazí.

Dále question_table kompletně podporuje lokalizaci, jak u hodnot, tak u otázek. Viz Lokalizace dotazníků

Export hodnot

Názvy exportovaných hodnot se skládají z názvu tabulky a následně názvů jednotlivých otázek (parametry name). Takže výše uvedená tabulka bude generovat hodnoty:

  • komunita1: 1
  • komunita2: 2
  • komunita3: 3
  • komunita4: 3
  • komunita5: 3
  • komunita6: 2
  • komunita6: 3

Hodnoty odpovídají screenshotu.

Náhodné řazení otázek

Do tabulky je možné přidat parametr "shuffle": true.

Potom se náhodně zamíchají otázky a vypíšou se v náhodném pořadí. Zároveň se vytvoří ještě jedna nová proměnná, do které se uloží pořadí otázek. Pro dotazník DSES potom může proměnná vypadat takto:

Název Hodnota Typ otázky Datum a čas
DSES_2 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_8 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_13 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_11 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_15 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_4 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_10 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_6 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_12 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_5 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_3 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_14 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_7 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_9 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_1 1 TableLineQuestion 2021-04-06 16:58:36 UTC
DSES_order DSES_1,DSES_8,DSES_3,DSES_6,DSES_7,DSES_5,DSES_13,DSES_15,DSES_11,DSES_12,DSES_4,DSES_2,DSES_9,DSES_14,
DSES_10

2.5.3 - Wrapper

Wrapper je jednoduchá struktura, která umožňuje zabalit další otázky. Má dvojí využití.

  1. Je možné spojit logicky dohromady sadu otázek, tak že dostanou společný prefix v exportovaném názvu
  2. Pokud potřebujeme načíst naráz z modulu více otázek, aniž by se vkládaly jednotlivě, tak se zabalí do wrapperu a potom se vkládají už společně.

Wrapper musí mít následující parametry:

  • name - název, který se použije jako prefix u názvů dalších otázek
  • type: wrapper
  • items: pole s dalšími prvky - otázkami a dalšími. Původně se tento parameter jmenoval questions, ale byl přejmenován protože název byl trošku zavádějící. Nicméně parametr question stále ještě funguje.

Příklad:

{
  "pages": [
    {
      "type": "page",
      "id": "page-onemocneni",
      "items": [
        {
          "name": "health",
          "type": "wrapper",
          "items": [
            {
              "name": "onemocneni",
              "type": "multiple_choice",
              "text": {
                "en": "Do you have a long-term illness or disability? Please tick all that apply to you:",
                "cs": "Máte dlouhotrvající onemocnění nebo postižení? Prosím označte všechny, které se na vás vztahují:",
                "de": "Leiden Sie an einer langzeitigen (chronischen) Krankheit oder Behinderung? Bitte, kreuzen Sie alles an, was Sie betrifft:"
              },
              "values": {
                "1": {
                  "en": "coronary heart disease",
                  "cs": "ischemická choroba srdce",
                  "de": "Ischämische Herzkrankheit"
                },
                "2": {
                  "en": "hypertension",
                  "cs": "hypertenze",
                  "de": "Bluthochdruck"
                },
                "3": {
                  "en": "stroke",
                  "cs": "cévní mozková příhoda / mozková mrtvice",
                  "de": "Schlaganfall"
                }
              }
            },
            {
              "name": "lekari",
              "type": "multiple_choice",
              "text": {
                "en": "Have you visited any of these specialists in the last twelve months (please do not count standard medical examinations that are recommended to all the people of your age/gender) - please mark all visited departments:",
                "cs": "Navštívili jste v uplynulých dvanácti měsících některého z těchto specialistů (nepočítejte prosím standardní lékařské prohlídky doporučené všem osobám Vašeho věku/pohlaví) – označte prosím všechna navštívená oddělení:",
                "de": "Haben Sie in den vergangenen zwölf Monaten einen dieser Spezialisten besucht? Untersuchungen, die plötzlich erforderlich sind, und nichtab einem bestimten alter empfolen werden (z.B. regelmäßige). Markieren Sie, bitte, alle besuchten Abteilungen:"
              },
              "values": {
                "1": {
                  "en": "Dermatovenerology (treatment of skin and genital diseases)",
                  "cs": "Dermatovenerologie (léčba kožních a pohlavních chorob)",
                  "de": "Dermatologie und Venerologie (Haut- und Geschlechtskrankheiten)"
                },
                "2": {
                  "en": "Department of surgery",
                  "cs": "Chirurgie",
                  "de": "Chirurgie"
                },
                "3": {
                  "en": "Cardiology (treatment of heart disease)",
                  "cs": "Kardiologie (léčba srdečních chorob)",
                  "de": "Kardiologie (Herzkrankheiten)"
                }
              }
            }
          ]
        }
      ]
    }
  ]
}

Proměnné ve finální exportu potom budou mít tuto podobu:

  • health_onemocneni
  • health_lekari

2.6 - Výsledky zobrazené respondentům

3 - Výzkumné nástroje

V sekci níže je možné nalézt výzkumné nástroje, které byly v minulosti použity ve výzkumech OUSHI.

3.1 -

Velká pětka (Big Five Inventory)

Velká pětka neboli Big Five Inventory (BFI) je validní a spolehlivý psychodiagnostický nástroj určený k měření pěti dimenzí lidské osobnosti. Na vícedimenzionální osobnostní inventář je poměrně stručný (celkem 44 položek) a skládá se z krátkých vět s poměrně přístupnou slovní zásobou. Konkrétně měří následující dimenze lidské osobnosti:

  • Neuroticismus
  • Přívětivost
  • Extraverzi
  • Svědomitost
  • Otevřenost

Délka vyplňování

Vyplnění celého dotazníku zabere přibližně 10 minut.

Individualizovaná zpětná vazba pro respondenta

Po dokončení dotazníku se respondent se o sobě dozví, jak si stojí v jednotlivých osobnostních dimenzích.

klíčová slova

velká pětka, osobnost, extraverze, neuroticismus, přívětivost, svědomitost, otevřenost

Originální validační studie

John, O. P., Naumann, L. P., & Soto, C. J. (2008). Paradigm Shift to the Integrative Big-Five Trait Taxonomy: History, Measurement, and Conceptual Issues. In O. P. John, R. W. Robins, & L. A. Pervin (Eds.), Handbook of personality: Theory and research (114-158). https://www.ocf.berkeley.edu/~johnlab/bigfive.htm

Validační studie – lokální adaptace

Hřebíčková, M., Jelínek, M., Blatný, M., Brom, C., Burešová, I., Graf, S., Mejzlíková, T., Vazsonyi, A., & Zábrodská, K. (2016). Big Five Inventory: Základní psychometrické charakteristiky české verze BFI-44 a BFI-10. Československá psychologie, 60(6), 567-583. dostupné zde

Licence

Výzkumné využití

BFI je možné k výzkumným účelům volně využít pod podmínkou citace původního zdroje a vyplnění krátkého formuláře. Autoři také žádají informování o výsledcích studie.

Komerční využití využití

BFI není momentálně možné využít pro komerční účely, ale je zde možnost podat žádost na následující mail: ucbpersonalitylab@gmail.com

Forma placení

Irelevantní.

Lokální vydavatel/distributor metody:

Irelevantní.

Scorování a interpretace

Extraverze: 1, 6R, 11, 16, 21R, 26, 31R, 36. Přívětivost: 2R, 7, 12R, 17, 22, 27R, 32, 37R, 42. Svědomitost: 3, 8R, 13, 18R, 23R, 28, 33, 38, 43R. Neuroticismus: 4, 9R, 14, 19, 24R, 29, 34R, 39. Otevřenost: 5, 10, 15, 20, 25, 30, 35R, 40, 41R, 44. Před zahájením vyhodnocení je nutné převést skóry u reverzních položek (označeny R za číslem položky), které měří opačné póly rysů. Sečtením bodů získáme celkové skóre u každé dimenze. Vyšší skóre znamená vyšší míru rysu.

Odpovídací stupnice

Pro odpovědi je v metodě BFI využívána škála Likertova typu, kdy proband vyjadřuje svůj souhlas na pětibodové stupnici (1 = zcela nesouhlasím, 2 = spíše nesouhlasím, 3 = ani nesouhlasím, ani souhlasím, 4 = spíše souhlasím, 5 = zcela souhlasím).

Reference

Benet-Martínez, V., & John, O. P. (1998). Los Cinco Grandes across cultures and ethnic groups: Multitrait-multimethod analyses of the Big Five in Spanish and English. Journal of Personality and Social Psychology, 75(3), 729–750. https://doi.org/10.1037/0022-3514.75.3.729

Hřebíčková, M., Jelínek, M., Blatný, M., Brom, C., Burešová, I., Graf, S., Mejzlíková, T., Vazsonyi, A., & Zábrodská, K. (2016). Big Five Inventory: Základní psychometrické charakteristiky české verze BFI-44 a BFI-10. Československá psychologie, 60(6), 567-583. https://eds.p.ebscohost.com/eds/detail/detail?vid=0&sid=1613a1a0-9fc1-4d12-be15-104cd5502d1a%40redis&bdata=JkF1dGhUeXBlPWlwLHNoaWImYXV0aHR5cGU9c2hpYiZsYW5nPWNzJnNpdGU9ZWRzLWxpdmUmc2NvcGU9c2l0ZQ%3d%3d#AN=120355590&db=asn

John, O. P., & Srivastava, S. (1999). The Big-Five trait taxonomy: History, measurement, and theoretical perspectives. In L. A. Pervin & O. P. John (Eds.), Handbook of personality: Theory and research (102–138). http://jenni.uchicago.edu/econ-psych-traits/John_Srivastava_1995_big5.pdf

John, O. P., Naumann, L. P., & Soto, C. J. (2008). Paradigm Shift to the Integrative Big-Five Trait Taxonomy: History, Measurement, and Conceptual Issues. In O. P. John, R. W. Robins, & L. A. Pervin (Eds.), Handbook of personality: Theory and research (114-158). https://www.ocf.berkeley.edu/~johnlab/bigfive.htm

4 - Klinika

Sledování efektivity terapie

Projekt Kliniky v systému QOS je určen ke sledování efektivity terapie, nicméně může mít i další využití. Původní zadání pro kliniku znělo:

  1. klient přichází do projektu na výzkum terapie. Výzkumní pracovníci vytvoří klientovi v systému složku
  2. Klient dělá vstupní výzkum - dotazník na posouzení vstupního stavu.
  3. Klientovi se na míru vytvoří pravidelný dotazník, který bude vyplňovat každý týden před svou terapií. Odkaz na tento výzkum má klient v emailu a kliknutím tento výzkum spustí.
  4. Po skončení terapie klient vyplní závěrečný dotazník, v intervalech 6, 12 a 18 měsíců. Individuální odkaz opět dostane do emailu.

Stránka kliniky vypadá takto.

Přiřazené výzkumy

Výzkumy jsou definovány samostatně a mohou být přístupné i jinak, než pouze přes kliniku. Aby v rámci kliniky mohl být výzkum použit, tak nejprve musí být samostatně vytvořen v rámci systému (viz Výzkumy). Poté jsou výzkumy přiřazeny ke klinice a mohou být využívány.

Klienti

Klienti patří ke konkrétní klinice. Klient je identifikován jménem a kódem. Samotný klient se do systému nepřihlašuje, ale používá kódy z konfigurací výzkumů, které se vytváří dále.

Konfigurace výzkumu pro klienta

Ve scénáři popsaném výše figurovaly různé verze dotazníků. Takže výzkum (dotazník) přiřazený ke klinice může být konfigurován. Konfigurace patří ke konkrétnímu klientovi a ke konkrétnímu výzkumu (dotazníku).

V rámci konfigurace vyberete, které stránky dotazníku (tj. objekty pages v konfiguraci dotazníku - viz Konfigurační soubor ) jsou v dané konfiguraci aktivní a klientovi se zobrazí jenom a pouze tyto stránky. Tímto způsobem můžete ze stostránkového megadotazníku udělat například stručný dvoustránkový dotazník.

Dále má konkrétní konfigurace svůj kód a také svůj zahajovací odkaz. Tento odkaz je unikátní pro daného klienta a nesmí jej používat jiní klienti. Odkaz pošlete klientovi např. emailem. Když klient dotazník spustí přes tento odkaz, tak výsledný záznam bude jednoznačně identifikován, že patří k tomuto klientovi a k této konfiguraci výzkumu.

Zahajovací odkaz může být použitý opakovaně. Pokud je potřeba, tak je možné je vygenerovat znovu. Pokud odkaz znovu vygenerujete, tak původní kód a odkaz přestávají fungovat a klient musí používat odkaz nový. To je vhodné, pokud klient například kód ztratil nebo vyzradil.

Konfiguraci je také možné Deaktivovat a zpětně Aktivovat. Když je konfigurace deaktivovaná, tak kód nefunguje a klient se k dotazníku přes svůj kód nedostane.

Zobrazení vyplněných dotazníků

K datům v dotaznících je možné se dostat několika způsoby:

  1. přes samotný výzkum, ve kterém je dotazník definován. Toto je vhodné, pokud potřebujete exportovat všechna data například za účelem statistického zpracování.
  2. Přes stránku klienta v rámci kliniky - tady je možné si otevřít konkrétní klientův dotazník a zkontrolovat odpovědi. Na stránce klienta jsou všechny odpovědi daného klienta ze všech konfigurací.
  3. Přímo na stránce Konfigurace výzkumu pro klienta. Zde jsou pouze dotazníky, odpovídající konkrétní konfiguraci.

5 - Definice brokera

Je potřeba získat respondenty pro vyplnění dotazníku. Toto je zodpovědnost Brokera (zprostředkovatele). Úvodní poskytovatel jsou vlastní webové stránky, nicméně systém už umí spolupracovat i s dalšími komerčními zprostředkovateli. Spolupráce už proběbhal s těmito zprostředkovateli:

  • Český národní panel
  • Kantar

Přehled brokerů

Konfigurace v Brokerů je na adrese: /brokers

Konfigurace a vytvoření nového brokera v systému je poměrné komplikovaná a obnáší koordinaci s příslušnou agenturou.

Spolupráce s typickým brokerem vypadá následovně:

  1. Broker osloví své respondenty, kteří za úplatu nebo jiné výhody odesílají respondenty do našeho systému. Jsou odesláni na URL našeho systému - např: https://dotaznik.oushi.upol.cz/questionnaire/start/17/broker/kantar/assignment/1?id=XXXX. XXXXX je interní kód respondenta v jejich systému.

  2. U nás respondent vyplní dotazník

  3. Na konci vyplnění respondentovi nezobrazujeme výsledky, ale odesíláme ho zpět na adresu zprostředkovatele, například takto pro Kantar https://passback.lifepointspanel.com/Survey/{RETURN_CODE}?ProjectToken={PROJECT_ID}. RETURN_CODE je návratová hodnota, PROJECT_ID je id projektu u Kantaru.

Návratové hodnoty

Jsou specifické pro jednotlivé poskytovatele. Náš systém podporuje následující typy návratových hodnot:

  • Success - respondent úspěšně vyplnil dotazník
  • Speeder - respondent dotazník vyplnil příliš rychle - viz parameter speederLimit
  • Duplicate - respondenta s tímto ID už jsme jednou dostali, pravděpodobně chyba na straně zprostředkovatele
  • Quality Control Failed - respondent neprošel kontrolou kvality - například se respondenta zeptáme, kolik měří a váží a znovu se ho zeptáme v polovině dotazníku. Pokud odpoví odlišně mimo zadanou toleranci, tak ho považujeme za nekvalitního a vracíme ho.
  • Respondent Disagrees - respondent odkliknul Nesouhlasím s účastí v dotazníku, vracíme ho
  • Screen Out - respondent nespadá do cílové skupiny - například uvedl příliš nízký věk apod. Do budoucna je v plánu implemetovat kvóty pro respondenty, aby systém sám pohlídal předem stanovené kvóty (např. počet můžu, žen, věkových skupin apod.)

Smyslem návratových hodnot typu Speeder, QC Failed a Screen Out je, abychom zprostřekovateli nemuseli platit za nekvalitní respondenty, ale pouze za ty, kteří vyplní vše a věnují tomu dostek pozornosti.

Přiřazení výzkumu k brokerovi

K existuícím brokerovi přiřazujeme výzkumy.

Přiřazení výzkumu k brokerům

Parametry přiřazení:

  • Name - název
  • Broker Project ID - externí ID projektu u Brokera (určuje Broker)
  • Broker Failed Project ID - externí ID projektu, pokud vyplnění selže (určuje Broker)
  • Research - výzkum
  • Valid From - datum zahájení
  • Valid To - datum ukončení
  • Locale - jazyk pro dotazník (viz podpora více jazyků)
  • Speeder Limit - časový limit pro speedery
  • Starting URL - startovní URL, které odevzdáváme Brokerovi a na které potom posílá respondenty

Zobrazení na titulní stránce

Jak jsme uvedli, tak i webová stránka systému je také vedena jako Broker (aby systém zahajování vyplňování byl konzistentní). Proto pokud chceme, aby se výzkum zobrazil na titulní stránce, musí být zadán v přiřazení pro brokera Web OUSHI.

Stávající přířazení:

Zobrazení výzkumu na titulní stránce

6 - Možnosti exportu dat

Pro další zpracování je získaná data potřeba ze systému exportovat. Je to možné třemi způsoby. Hromadným exportem z více výzkumů, exportem z výzkumu do MS Excel a exportem z výzkumu do CSV.

Hromadný export z více výzkumů

Pokud existují na sebe navazující výzkumy, které mají společné otázky, je možné je exportovat hromadně do jednoho souboru. Tento export je náročný na výpočetní výkon a proto by měl být používán spíše vyjímečně.

Data jsou v tzv. wide formátu, tj. jeden řádek představuje jednoho respondenta a žadká otázka v dotazníku představuje jeden sloupec.

Otázky z jednotlivých dotazníků, které mají stejný název, budou zařazeny pod sebe. Jednotliví respondenti budou zařazeni do řádků pod sebou nejprve z prvního výzkumu, poto z následujících. Otázky, které se nevyskytují ve všech výzkumech budou vyplněné pouze u respondentů z výkumů kde jsou definovány, v ostatních budou prázdné.

Export do MS Excel z jednoho výzkumu

Data jsou opět exportována ve wide formátu, tj. jeden řádek představuje jednoho respondenta, každá otázka má svůj sloupec. Tento export je výpočetně náročný a při velkých objemech dat (řádově vyšší tisíce až desetitisíce respondentů a tisíce otázek) přestává být spolehlivý. Je to však nejjednodušší export a také nejintuitivnější.

Ukázka dat ve wide formátu:

code sex age education
aaa1 1 27 3
aaa2 0 44 2
aaa2 1 26 4

Export do CSV

CSV znamená Comma Separated Values, tj. hodnoty oddělené čárkou a jde o velmi jednoduchý formát. Výsledný soubor je možné otevřít například v poznámkovém bloku, nebo načíst do Excelu. Tento formát je také nejvhodnější pro zpracování dat v R.

Data jsou v tzv. long formátu. Jeden řádek představuje jednu odpověď na jednu otázku u jednoho respondenta. Každý respondent má potom ve výsledném souboru tisíce řádků, celý export může mít desítky nebo stovky tisíc řádků. I přesto je to nejefektivnější a nejspolehlivější formát k exportu dat.

Ukázka stejných dat v long formátu

code question_name value duration
aaa1 sex 1 30
aaa1 age 27 30
aaa1 education 3 30
aaa2 sex 0 15
aaa2 age 44 15
aaa2 education 2 15
aaa3 sex 1 15
aaa3 age 26 15
aaa3 education 4 15

Položky:

  • code - kód klienta
  • question_name - název otázky
  • value - hodnota odpovědi
  • duration - jak dlouho respondent strávil na stránce s touto otázkou. Pokud je více otázek na jedné stránce, tak trvání je společné.

Převod dat z long formátu do wide formátu v R:

library(tidyr)

panel_long <- read.csv("exportovana_data.csv", header = TRUE)
panel <- pivot_wider(panel_long, id_cols = code, names_from = question_name, values_from = value)

Funkce read.csv načítá hodnoty z csv souboru, funkce pivot_wider potom otočí data z formátu long do wide.

Speciální datové položky v exportu

  • code unikátní kód respondenta, automaticky vygenerovaný
  • questionnaire_started datum a čas zahájení vyplňování dotazníku
  • questionnaire_finished datum a čas ukončení dotazníku. Pokud je prázdné, tak dotazník nebyl dokončen
  • questionnaire_duration doba vyplňování dotazníku
  • broker - Broker (zprostředkovatel), přes kterého byl respondent získán
  • broker_assignement - přířazení projektu k Brokerovi
  • user_agent detailní identifikace prohlížeče uživatele. BLíže viz např: https://en.wikipedia.org/wiki/User_agent
  • device - odhad z user_agent, jestli byl dotazník vyplněn na počítači nebo na mobilním zařízení. Není spolehlivé, mobilní zařízení je možné nastavit tak, aby emulovalo stolní počítač.

Download tokens pro CSV Export

Import data z CSV je možné automatizovat pomocí download tokenů. Pokud chcete data stahovat přímo z vašeho R scriptu, tak díky systému přihlašování přes Google OAuth2 to není možné. Proto je možné u výzkumu vytvořit tzv. Download token. Pomocí tohoto tokenu je možné data stahovat automaticky i bez přihlášení v prohlížeči.

Formát pro download výsledku je: https://dotaznik.oushi.upol.cz/researches/{research_id}/csv, kde {research_id} nahraďte konkrétním ID daného výzkumu. Je uvedeno přímo v seznamu výzkumů na titulní stránce po přihlášení.

Pokud u výzkumu č. 1 chceme stáhnout data a máme token XXXXXXXXXXXXXXXXXXXXXXXXXXXXX, tak data lze stáhnout z příkazové řády pomocí utility curl (k dispozici zde: https://curl.se/ ):

  curl -i -X GET -H "Authorization:Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
                         'https://dotaznik.oushi.upol.cz/researches/1/csv'

A stejná operace v R:

  # Read the data from the server
   source <- url(
    paste("https://dotaznik.oushi.upol.cz/researches/1/csv"), 
     headers = c(Authorization="Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
   )
   data <- read.csv(source) 

Export dat pro jednoho respondenta

Do CSV je možné exportovat i reporty pro jednotlivé respondenty z výzkumu. URL pro dotaz potom vypadá následovně:

    https://dotaznik.oushi.upol.cz/researches/{research_id}/csv?respondent_code={respondent_code}

Autorizační token je stejný jako pro export celého dotazníku.

  • {research_id} - id celého výzkum (viz titulní stránka nebo přehled výzkumů)
  • {respondent_code} - kód daného respondenta (nikoliv jeho ID). Kód je v přehledu respondentů výzkumu a zároveň se respondentovi zobrazí i po vyplnění dotazníku.

6.1 - Export dat z obličejových otazníků

Otázky s obličeji zaznamenávají vybranou emoci/obličej.

Pro každou jednotlivou emoci se dále počátají a exportují tyto parametry:

  • hover_count - kolikrát na emoci (obličej najel respondent myší)
  • hover_duration - jak dlouho byla emoce zvětšena při najetí myši v milisekundách
  • display_count - kolikrát byla zvětšena kliknutím
  • display_duration - jak dlouho celkově byla zvětšena
  • hover_and_display_count - součet hover and display count

Pro každou jednotlivkou otázku se dále zobrazí finálně vybraná emoce.

Takže pro jednu otázku se exportují výše uvedené sloupce pro všechny emoce. Například tedy pro otázku EBA_SPT_NR1 (Smysl života) se vygenerují tyto sloupce:

  1. anger_EBA_SPT_NR1_selected
  2. anger_EBA_SPT_NR1_selected_per
  3. anger_EBA_SPT_NR1_hover_count
  4. anger_EBA_SPT_NR1_hover_count_per
  5. anger_EBA_SPT_NR1_hover_duration
  6. anger_EBA_SPT_NR1_hover_duration_per
  7. anger_EBA_SPT_NR1_display_count
  8. anger_EBA_SPT_NR1_display_count_per
  9. anger_EBA_SPT_NR1_display_duration
  10. anger_EBA_SPT_NR1_display_duration_per
  11. anger_EBA_SPT_NR1_hover_and_display_count
  12. anger_EBA_SPT_NR1_hover_and_display_count_per
  13. disgust_EBA_SPT_NR1_selected
  14. disgust_EBA_SPT_NR1_selected_per
  15. disgust_EBA_SPT_NR1_hover_count
  16. disgust_EBA_SPT_NR1_hover_count_per
  17. disgust_EBA_SPT_NR1_hover_duration
  18. disgust_EBA_SPT_NR1_hover_duration_per
  19. disgust_EBA_SPT_NR1_display_count
  20. disgust_EBA_SPT_NR1_display_count_per
  21. disgust_EBA_SPT_NR1_display_duration
  22. disgust_EBA_SPT_NR1_display_duration_per
  23. disgust_EBA_SPT_NR1_hover_and_display_count
  24. disgust_EBA_SPT_NR1_hover_and_display_count_per
  25. fear_EBA_SPT_NR1_selected
  26. fear_EBA_SPT_NR1_selected_per
  27. fear_EBA_SPT_NR1_hover_count
  28. fear_EBA_SPT_NR1_hover_count_per
  29. fear_EBA_SPT_NR1_hover_duration
  30. fear_EBA_SPT_NR1_hover_duration_per
  31. fear_EBA_SPT_NR1_display_count
  32. fear_EBA_SPT_NR1_display_count_per
  33. fear_EBA_SPT_NR1_display_duration
  34. fear_EBA_SPT_NR1_display_duration_per
  35. fear_EBA_SPT_NR1_hover_and_display_count
  36. fear_EBA_SPT_NR1_hover_and_display_count_per
  37. joy_EBA_SPT_NR1_selected
  38. joy_EBA_SPT_NR1_selected_per
  39. joy_EBA_SPT_NR1_hover_count
  40. joy_EBA_SPT_NR1_hover_count_per
  41. joy_EBA_SPT_NR1_hover_duration
  42. joy_EBA_SPT_NR1_hover_duration_per
  43. joy_EBA_SPT_NR1_display_count
  44. joy_EBA_SPT_NR1_display_count_per
  45. joy_EBA_SPT_NR1_display_duration
  46. joy_EBA_SPT_NR1_display_duration_per
  47. joy_EBA_SPT_NR1_hover_and_display_count
  48. joy_EBA_SPT_NR1_hover_and_display_count_per
  49. neutral_EBA_SPT_NR1_selected
  50. neutral_EBA_SPT_NR1_selected_per
  51. neutral_EBA_SPT_NR1_hover_count
  52. neutral_EBA_SPT_NR1_hover_count_per
  53. neutral_EBA_SPT_NR1_hover_duration
  54. neutral_EBA_SPT_NR1_hover_duration_per
  55. neutral_EBA_SPT_NR1_display_count
  56. neutral_EBA_SPT_NR1_display_count_per
  57. neutral_EBA_SPT_NR1_display_duration
  58. neutral_EBA_SPT_NR1_display_duration_per
  59. neutral_EBA_SPT_NR1_hover_and_display_count
  60. neutral_EBA_SPT_NR1_hover_and_display_count_per
  61. sadness_EBA_SPT_NR1_selected
  62. sadness_EBA_SPT_NR1_selected_per
  63. sadness_EBA_SPT_NR1_hover_count
  64. sadness_EBA_SPT_NR1_hover_count_per
  65. sadness_EBA_SPT_NR1_hover_duration
  66. sadness_EBA_SPT_NR1_hover_duration_per
  67. sadness_EBA_SPT_NR1_display_count
  68. sadness_EBA_SPT_NR1_display_count_per
  69. sadness_EBA_SPT_NR1_display_duration
  70. sadness_EBA_SPT_NR1_display_duration_per
  71. sadness_EBA_SPT_NR1_hover_and_display_count
  72. sadness_EBA_SPT_NR1_hover_and_display_count_per
  73. surprise_EBA_SPT_NR1_selected
  74. surprise_EBA_SPT_NR1_selected_per
  75. surprise_EBA_SPT_NR1_hover_count
  76. surprise_EBA_SPT_NR1_hover_count_per
  77. surprise_EBA_SPT_NR1_hover_duration
  78. surprise_EBA_SPT_NR1_hover_duration_per
  79. surprise_EBA_SPT_NR1_display_count
  80. surprise_EBA_SPT_NR1_display_count_per
  81. surprise_EBA_SPT_NR1_display_duration
  82. surprise_EBA_SPT_NR1_display_duration_per
  83. surprise_EBA_SPT_NR1_hover_and_display_count
  84. surprise_EBA_SPT_NR1_hover_and_display_count_per

Při samotném exportu je možné vybrat, které otázky a které emoce se budou exportovat.

Dále je možné v konfiguračním souboru dotazníku nastavit skupiny emocí, které se budou exportovat společně a statistiky se budou exportovat napříš více otázkami.

Konfigurace vypadá následovně. V top level JSON souboru je klíč emotion_export. Tato konfigurace vytvoří dvě skupiny pro export. Typ může být SecondEmotions a ThirdEmotions. Parametr “list” může být buďto pole nebo regulární výraz (https://cs.wikipedia.org/wiki/Regul%C3%A1rn%C3%AD_v%C3%BDraz)

{
  "emotion_export": [
    {
      "title": "EBA_SPT",
      "type": "SecondEmotions",
      "list": "^EBA_SPT_.+$"
    },
    {
      "title": "EBA3_SPT",
      "type": "ThirdEmotions",
      "list": "^EBA3_SPT.+$"
    }
  ]
}

První skupina bude zahrnovat všechny otázky začínající na EBA_SPT (tj. EBA_SPT_NR1 … EBA_SPT_NR8). Druhá skupina potom bude zahrnovat otázky začínající na EBA3_SPT (tj. EBA3_SPT_NR1 … EBA3_SPT_NR8)