Begränsningar i Yrkesbarometern jmf med gamla yrkesprognoser

Hej!

Vi använder just nu yrkesprognoser för att hitta prognoser för specifika yrken och det funkar jättebra. Detta verkar inte vara möjligt med nya yrkesbarometern. Där finns inte ett concept_id på occupation nivå utan endast ett yb_concept_id som inte går att likställa med yrkets concept_id.

Det enda sättet vi hittat är att använda ssyk-koden men eftersom det finns flera olika yrken under en och samma ssyk-kod så går det inte att filtrera ut det exakta på yrket.

Detta gör det svårt för oss att hitta yrkesprognoser på yrkesnivå vilket jag trodde var syftet med yrkesbarometern. Är det vi som missar något? Har ni något förslag på tillvägagångssätt för att hitta yrkesprognos på yrkesnivå?

Allt gott,
Henrik

1 gillning

Hej Henrik!

I den nya Yrkesbarometern, https://data.arbetsformedlingen.se/prognoser/yrkesbarometer.json, så har man gått ifrån att använda SSYK, nivå 4 som gruppering och indirekt blivit prognos för de yrken som ingår i yrkesgruppen (SSYK). Man har istället gjort en ny indelning som innebär att man grupperat yrkena per så kallat Barometer-yrke (även detta en gruppering av yrken) och det är detta conceptId som då inte direkt går att mappa mot taxonomi-yrkets conceptId, utan behöver översättas med hjälp av följande instruktion, alternativt att man hämtar prognosen utifrån SSYK, nivå 4.

Om möjligt, hämtning av rätt prognos utifrån SSYK, nivå 4 är förmodligen det enklaste sättet, för att slippa översätta id:n.

Här är ändå en beskrivning av hur man kan hämta översättningar mellan Barometer-yrke (gruppering av yrken. Eget conceptId) och Taxonomi-yrken (varje yrke har sitt conceptId):

Alternativ 1:

curl -G https://taxonomy.api.jobtechdev.se/v1/taxonomy/graphql --data-urlencode 'query=query { concepts(type: "barometer-occupation") { id preferred_label type related(type: "occupation-name"){id preferred_label type }}}}'

Alternativ 2:

query BarometerYrkeQuery {
  concepts(type: "barometer-occupation") {
    id
    preferred_label
    type
    related(type: "occupation-name") {
      id
      preferred_label
      type
    }
  }
}

Alternativ 3 (kodexempel, Python):

TAXONOMY_GRAPHQL_URL=https://taxonomy.api.jobtechdev.se/v1/taxonomy/graphql?
query = """query BarometerYrkeQuery {
  concepts(type: "barometer-occupation") {
    id
    preferred_label
    type
    related(type: "occupation-name") {
      id
      preferred_label
      type
    }
  }
}"""
taxonomy_response = requests.get(url=settings.TAXONOMY_GRAPHQL_URL, headers={}, params={'query': query})

Exempel på svar, där Taxonomi-yrke har id 4Z7F_oBG_vMG och Barometer-yrke har id p653_dVM_Jf2:
{
“id”: “p653_dVM_Jf2”,
“preferred_label”: “Träarbetare och snickare”,
“type”: “barometer-occupation”,
“related”: [
{
“id”: “4Z7F_oBG_vMG”,
“preferred_label”: “Träarbetare/Snickare”,
“type”: “occupation-name”
}
]
},

Om man hämtar prognos utifrån SSYK (vilket som sagt nog är enklast) så kan det vara värt att nämna att ett fåtal av prognoserna har flera SSYK som värde istället för bara en, t.ex.:
Barometer-yrke:SSYKs
“HLoK_4Ag_Zst”: “2413, 2414, 3311”,
“ftGn_8Yx_3SZ”: “8161, 8162, 8163, 8169”,
“X8UX_Wub_xUQ”: “8173, 8174”,
“YoT7_uDR_sTG”: “7321, 7322”,
…och att ni då kan behöva specialhantera dessa. I övriga fall är det enbart 1 SSYK per Barometer-yrke.

Hör av er igen om något var oklart, och lycka till!

/Mattias