Hej Alle


Er det mig der blot er for uvidende eller er der udspændt en masse
snubletråde for at bruge Folketingets åbne data?

For det første kan man kun søge i metadata, ikke direkte i data. Så man
skal først downloade data vha. metadata for så at kunne søge i dem. Men
man kan ikke uden videre downloade data pga. server-fejl - og i øvrigt
kan man åbenbart kun downloade 100 dokumenter ad gangen hvilket er under
antallet af nye dokumenter dagligt.

Xml-filerne med folketingets forhandlinger inkluderer åbenbart ikke
relevante schemaer så de kan gøres læselige i en browser.

Udgangspunkt er vejledningen:

https://www.ft.dk/~/media/sites/ft/pdf/dokumenter/aabne-data/oda-browser_brugervejledning.ashx?la=da


1. ------------

Så vidt jeg kan se, giver API-et ikke direkte adgang til data, men kun
til metadata. Dvs. man kan søge i metadata, men ikke i data. Et eksempel
som Folketingets sekretariat har sendt mig:

http://oda.ft.dk/api/Dokument?$expand=Fil
    &$filter=typeid eq 17 and
    year(dato) eq 2021
    and substringof('logning',titel) eq true
    &$select=titel,dato,Fil/titel,Fil/filurl


Det fungerer udmærket. (typeid eq 17 ...  betyder at man søger på
ministersvar på spørgsmål). Men man søger kun i titlen ikke i selve
teksten. Men det er jo ikke godt nok da det så kun er en lille brøkdel
af teksterne man søge i. Det kan man vel ikke rigtig kalde åbne data,
men måske nok åbne meta-data.

2. -----------------

Links med af APIer fungerer i en browser. MEN hvis bruger curl eller
wget eller lynx går det galt med intern serverfejl 500. Man kan f.eks.
downloade hele open data (meta)databasen så man kan søge med sql
(microsofts), men den skal jo løbende opdateres:

> For at hente de opdateringer, der måtte være kommet siden seneste
> backup, skal der for samtlige entiteter foretages en forespørgsel mod
> API ́et. For entiteten ”Sag” eksempelvis:

> https://oda.ft.dk/api/Sag?$inlinecount=allpages&$filter=opdateringsdato%20gt%20datetime'2018-05-29T02:00:00
>

Linket fungerer i f.eks. firefox, men giver kun 100 hits ad gangen, og
hvad skal man bruge det til hvis man vil have opdateret sin database?
Det skal jo også gøres for samtlige "entiteter".

Hvis forsøger at downloade de nyeste opdateringer får man omtalte fejl -
og det gør man også ved andre links.

$ wget
"https://oda.ft.dk/api/Sag?$inlinecount=allpages&$filter=opdateringsdato%20gt%20datetime'2018-05-29T02:00:00"
--2021-11-12 08:00:46--
https://oda.ft.dk/api/Sag?=allpages&=opdateringsdato%20gt%20datetime'2018-05-29T02:00:00
Løser oda.ft.dk (oda.ft.dk)... 152.115.53.70
Tilslutter oda.ft.dk (oda.ft.dk)|152.115.53.70|:443... forbundet.
HTTP forespørgsel sendt, afventer svar... 500 Internal Server Error
2021-11-12 08:00:46 FEJL 500: Internal Server Error.

3. ------------

I vejledningen læser man at man kan downloade forhandlinger i salen med
følgende link:

 ftp://oda.ft.dk/ODAXML/Referat/

Det er selvfølgelig udmærket. Men øverst i hver enkelt xml-fil står der:

?xml version="1.0" encoding="utf-8"?><Dokument edixistatus="Foreløbig"
xmlns:ns0="http://FT.PIP.Afskrift.Schemas">

Hvordan skal man finde det anvendte skema? Jo, i vejledninger står der:

> I folderen ODAXML/Referat/Skemaer findes de skemaer som XML'en baserer
> sig på.
> I folderen Dokumentation findes dokumentet Beskrivelse af
> Afskrift.ft.LD.2.1.rft, der indeholder en teknisk beskrivelse af de
> enkelte XML-tags.
Skemaet ligger i mappen ftp://oda.ft.dk/ODAXML/Referat/Skemaer, men
hvordan man får dem hevet ind i xml-dokumenterne, er ikke helt
indlysende for mig. Hvordan gør man så xml-filerne læselige i en
browser? Det er i hvert tilfælde ikke sådan lige til at gøre.

Flemming

===============================

Hvor finder man koderne? Jeg har ikke kunnet finde koderne i
Dokumenttype. Hvordan finder man ud af at "17" er svar-dokumenter når
man anvender udtrykket "typeid eq 17"? Hvad sker der hvis man bruger
"typeid eq 9"?

 

--------------

SVAR:

Hvis du bruger vores databrowseren på https://oda.ft.dk/
<https://oda.ft.dk/> kan du finde tabellen Dokumenttype med alle dens
værdier. Du skal blot vælge den som ressource og trykke ”Søg”.

Her kan du set, at typeid=17 er ”Svar”, mens typeid=11 vil give dig
dokumenter af typen ”Statsrevisorbemærkning”.

Se evt. vedhæftede skærmdump.

---------------

 

https://oda.ft.dk/Home/OdaModel <https://oda.ft.dk/Home/OdaModel>

 

Dette er kun et eksempel på et generelt problem: Hvor finder man
oplysning om de værdier som de forskellige variable i datamodellen kan
have? Hvordan finder man f.eks. ud af hvilket datoformat der bruges?
Hvordan finder man ud af hvilke typer mødeid der findes, og hvilke møder
der er tale om?

 

----------

SVAR:

Der er en række tabeller, der angiver, hvad de forskellige typeid’er
betyder.

F.eks. Emneordstype, Sagstrinstype, Aktørtype og Sagstype. Dem kan du
slå op i på samme måde som i Dokumenttype ovenfor.

Der er tillige en tabel Mødetype, der viser de forskellige møder.

 

Datoformatet er almindeligvis som dette 2014-01-15T00:00:00 (tror nok,
man også kan skrive det generelt sådan her YYYY-MM-DDTHH:MM:SS).

----------

 

Et andet problem er om der findes der en elementær dokumentation af de
operatorer man kan bruge? Kan man f.eks. bruge "gt" for greater than?
Hvordan skiver man f.eks. at man gerne vil finde dokumenter i
tidsperioden 7/6-2020 til 11/1-2021?

 

-----------

SVAR:

Dokumentationen for operatorerne kan du finde i dokumentationen for
OData 3.0 her: https://www.odata.org/documentation/odata-version-3-0/
<https://www.odata.org/documentation/odata-version-3-0/>. Kig efter
”Core protocol”. Det kan også være der er noget i nogle af de andre
dokumenter.

----------

 

Ud over de to fremsendte nyttige eksempler ville det også være nyttigt
med side med eksempler på hvordan man f.eks. kan søge i møder, sager,
osv. Og ikke mindst hvordan man benytter relationer? Findes der ikke en
lille eksempelsamling som man kan tage udgangspunkt i? ... Eller skal
man uddanne sig til Odata programmør for at kunne få helt elementær åben
adgang til Folketingets open access data?

 

-----------

SVAR:

Jeg er opmærksom på, at vi har fået udviklet en åbne data-tjeneste, som
kræver en del teknisk indsigt at anvende. Herunder et godt kendskab til
brug af Odata-protokollen.

Vi har planer om at udvikle en revideret og mere brugervenlig tjeneste.
Men det arbejde går nok først i gang 2022, idet det kræver et foregående
arbejde med revision af vores datamodel.

 

Vi har nogle få eksempler på https://oda.ft.dk/Home/OdataQuery
<https://oda.ft.dk/Home/OdataQuery>.

Her er expand-klausulen en form for join vha. relationer mellem tabeller.

 

Men du kan også tilgå de åbne data via SQL-forespørgsler.

https://www.ft.dk/da/dokumenter/aabne_data
<https://www.ft.dk/da/dokumenter/aabne_data> kan du under ”Vejledninger”
vælge ”Download brugervejledningen til databrowseren (pdf)”.

 

I brugervejledningen kan du finde en vejledning i, hvordan du kan
downloade en fuld SQL-database backup af de åbne data.

Hvis du loader den i en lokal database, kan du arbejde med data via
SQL-forespørgsler, hvor du har noget bedre muligheder for f.eks. at
joine mange tabeller.

 

Du får dog ikke løbende opdateringer af data. Men du kan evt. gøre dette
vha. af daglige Odata-forespørgsler til oda.ft.dk.

---------------

 

Jeg synes ikke at kunne finde megen hjælp til at besvare sådanne
praktiske spørgsmål på:

 

https://www.ft.dk/da/dokumenter/aabne_data
<https://www.ft.dk/da/dokumenter/aabne_data>

 

 

Venlig hilsen

 

Flemming Bjerke - 22120366

medlem af IT-Politisk Forenings bestyrelse

 

 

 

Den 16.08.2018 kl. 12.32 skrev Delia Laksø:

    Kære Flemming

    

    Jeg har fået følgende svar fra vores udvikler:

    

    /Han søger først på tværs af alle samlinger og dokumenttyper for at
    finde noget med ”logning” i titlen. Links er på filerne, så man kan
    få dokumenternes filer med i samme søgning således:/

    / /

    /http://oda.ft.dk/api/Dokument?$expand=Fil&$filter=substringof('logning',
    titel) eq true

    <http://oda.ft.dk/api/Dokument?$expand=Fil&$filter=substringof('logning',%20titel)%20eq%20true>/

    / /

    /Desværre kan man ikke filtrere på filernes elementer under et
    dokument, men så må man søge på Fil i stedet og tilføje
    $expand=Dokument i stedet./

    / /

    /Det kommer an på hvad han er interesseret i, men umiddelbart ville
    jeg foreslå at afgrænse søgningen til f. eks. svar-dokumenter
    (koderne findes i Dokumenttype) i et bestemt år og vælge nogle
    felter ud alt efter hvad der ønskes:/

    / /

    /_http://oda.ft.dk/api/Dokument?$expand=Fil&$filter=typeid eq 17 and
    year(dato) eq 2018 and substringof('logning', titel) eq
    true&$select=titel,dato,Fil/titel,Fil/filurl

    <http://oda.ft.dk/api/Dokument?$expand=Fil&$filter=typeid%20eq%2017%20and%20year(dato)%20eq%202018%20and%20substringof('logning',%20titel)%20eq%20true&$select=titel,dato,Fil/titel,Fil/filurl>_/

    / /

    /Hvis man ydermere vil have sagsoplysninger med i samme omgang kan
    man supplere med $expand=Fil,SagDokument,SagDokument/Sag./

    

    Jeg håber, du kan bruge det.

    

    Med venlig hilsen

    Delia Laksø

    

    *Fra:*Flemming [mailto:flem@Bjerke.dk <mailto:flem@Bjerke.dk>]
    *Sendt:* 15. august 2018 04:57
    *Til:* Delia Laksø <Delia.Lakso@ft.dk> <mailto:Delia.Lakso@ft.dk>
    *Cc:* ITPOL-Bestyrelsen <bestyrelsen@itpol.dk>
    <mailto:bestyrelsen@itpol.dk>
    *Emne:* Re: VS: Spm. om åbne data - dokumenter [der] indeholder
    links til PDF-filer

    

    Kære Delia

    Tak, for svaret. Men hvordan finder man så linket til dokumentet via
    API?

    Hvis man i sin browser f.eks. skriver:

    http://oda.ft.dk/api/Dokument?$filter=substringof(%27logning%27,%20titel)%20eq%20true
    <http://oda.ft.dk/api/Dokument?$filter=substringof(%27logning%27,%20titel)%20eq%20true>

    får man dokumenter med ordet "logning" i titlen. Men hvordan får man
    via API vist linket til hvert pdf-dokumentet, og i tilfælde af
    spørgsmål, hvordan får man linket til svaret?

    Jeg har ikke kunnet finde svar på dette i dokumentationen.

    Venlig hilsen

    Flemming Bjerke
    bestyrelsesmedlem i IT-Politisk Forening


    Den 14-08-2018 kl. 14:42 skrev Delia Laksø:

        Kære Flemming Bjerke

        

        Tak for din mail og for din interesse i Folketingets åbne data.

        

        For at finde et dokument med et link til en pdf-fil på ft.dk
        skal du gøre følgende:

        

        Du vælger Dokument i Ressource, åbner et af dokumenterne på
        listen, klikker på tandhjulet og derefter klikker på Fil i
        venstre side af skærmen:

        

        

        Du kan også med fordel kigge i vejledningen til databrowseren.
        Vejledningen finder du her:
        https://www.ft.dk/~/media/sites/ft/pdf/dokumenter/aabne-data/oda-browser_brugervejledning.ashx?la=da
        <https://www.ft.dk/%7E/media/sites/ft/pdf/dokumenter/aabne-data/oda-browser_brugervejledning.ashx?la=da>

        

        Med venlig hilsen

        

        Delia Laksø

        Systemkonsulent

        

        FT_image001

        

        *It-udvikling*

        

        Christiansborg

        DK-1240 København K

        

        Tlf.  +45 33 37 55 00

        Dir.  +45 33 37 36 47

        

        www.ft.dk <http://www.ft.dk/>

        

        FT_image002

        

        

        

        -----Oprindelig meddelelse-----

        Fra: Flemming [mailto:flem@Bjerke.dk <mailto:flem@Bjerke.dk>]

        Sendt: 14. august 2018 08:41

        Til: Folketingets Oplysning <Folketinget@ft.dk
        <mailto:Folketinget@ft.dk>>

        Cc: ITPOL-Bestyrelsen <bestyrelsen@itpol.dk
        <mailto:bestyrelsen@itpol.dk>>

        Emne: Spm. om åbne data 2

        

        Folketingets oplysning

        

        Er det muligt at få et eksempel på hvordan man via Folketingets
        åbne data api finder "data om dokumenter [der] indeholder links
        til PDF-filer på ft.dk, som viser selve dokumentet"?

        

        https://www.ft.dk/da/Dokumenter/Aabne_data
        <https://www.ft.dk/da/Dokumenter/Aabne_data>

        

        Kan dette kombineres med præcise søgninger, jf. forrige mail?

        

        Venlig hilsen

        

        Flemming Bjerke

        

        bestyrelsesmedlem i IT-Politisk Forening