Verbeterde leesbaarheid van EULAs

7 november 2009, 8:43 | Contracten

eula-ridge-trail-bordje-sign-flickr-oregon-brandon.jpgAfgelopen weekend beklaagde Willem Kossen zich over de (on)leesbaarheid van de EULA. Nou erger ik me ook regelmatig aan rare passages, maar zijn insteek is toch net even anders:

Eula’s often contain a lot of legal jargon, which usually is gibberish to ordinary human beings. The question is, do they have to be this difficult to read?

Natuurlijk hoeft dat niet, dus waarom gebeurt het toch? Ik geloof er niets van dat juridische teksten moeilijk leesbaar moeten zijn. Mijn theorie daarover is dat mensen die EULAs schrijven geen feedback krijgen zoals ze dat bij ‘echte’ contracten wel krijgen. Als je een onbegrijpelijke exoneratie schrijft in een duur contract, zal de tegenpartij daar wat van zeggen en dan wordt het aangepast. Of op zijn minst verduidelijkt. Maar een EULA wordt door niemand beoordeeld voordat ‘ie online (of in het product) gaat, dus daar blijven de onbegrijpelijke items gewoon staan.

Willem wijst op een aantal formules waarmee de leesbaarheid van teksten automatisch berekend kan worden. Die gaan uit van de Flesch Reading Ease test voor leesbaarheid. Deze test is kort gezegd gebaseerd op het aantal woorden per zin en het aantal lettergrepen per woord. Op basis van een aantal taalafhankelijke constanten komt er dan een getal uit dat de leesbaarheid representeert.

Er zijn diverse tools die dit voor de Engelse taal doen, maar voor Nederlands kan ik er geen vinden. Ik vond wel de constanten voor Nederlands, zodat in ieder geval in theorie de leesbaarheid van een Nederlandse tekst berekend kan worden. En wel als volgt:

fleisch-bouma-formule.gif

De leesbaarheid G wordt vervolgens gegeven door deze tabel:

Leesbaarheid G Stijl Overeenkomstige schoolopleiding
90 - 100 zeer gemakkelijk groep 6
80 - 90 gemakkelijk groep 7
70 - 80 vrij gemakkelijk groep 8
60 - 70 standaard vbo
50 - 60 vrij moeilijk MAVO, onderbouw HAVO/VWO
30 - 50 moeilijk bovenbouw HAVO/VWO
0 - 30 zeer moeilijk universiteit

Is er iemand met Perl- of andere relevante ervaring die deze formule in een script kan gooien en hieronder wil posten? Ik zit met name aan te hikken tegen hoe je een Nederlands woord in lettergrepen opsplitst, daar lijkt niet echt een standaardbibliotheek voor te zijn.

Arnoud
Foto: Oregon Brandon, Flickr

of lees de 46 reacties

Tags: , , ,

Gerelateerde berichten

46 Reacties

  1. Dennis | 7 november 2009 @ 9:46

    Interessant, het Php text statistics project gebruikt hardcoded informatie om het aantal lettergrepen te bepalen, ik denk dat het ook de enige manier is om het redelijk accuraat te doen. Voor de rest lijkt dat script prima, ik heb alleen geen enkel idee waar te beginnen om een lijst met Nederlandse lettergrepen op te stellen.

  2. Arnoud Engelfriet | 7 november 2009 @ 10:24

    Zou je het kunnen doen met algoritmes voor hyphenation? Koppelstreepjes gaan tussen lettergrepen, en er zijn implementaties voor het vinden van plekken waar die streepjes in moeten. Zie bv. http://www-uilots.let.uu.nl/publications/clin1999/Pap/nunn.pdf

  3. Dennis | 7 november 2009 @ 10:43

    In principe kan je alle woorden inclusief het aantal lettergrepen (het aantal ·’s) van http://woordenlijst.org/ scrapen en die dan in een database zetten. Vervolgens kan je daarna gewoon per woord een match zoeken in je database en alles bij elkaar optellen. Voeg er nog een crowdsourcingtooltje aan toe waarmee mensen woorden die niet in de database staan zelf kunnen toevoegen en er is weer een leuk tooltje op internet bij. Misschien waag ik wel een poging binnenkort :).

  4. Hans | 7 november 2009 @ 11:08

    Lijkt me een onzuiver criterium.

    Ik lees regelmatig teksten die geheel bestaan uit “woorden” met maar een lettergreep die totaal onleesbaar zijn. Overigens zitten er dan meestal ook geen hoofdletters en leestekens in, moet ik eerlijk toegeven. Dus het aantal zinnen wordt dan één. Maar gelukkig is het aantal woorden dan in de regel weer zo klein dat de (on)leesbaarheid er niet echt onder lijdt. ;-)

  5. Blijbol | 7 november 2009 @ 11:44

    Je zou volgens mij gewoon per woord het aantal klinkers kunnen tellen voor het aantal lettergrepen. Daarbij moeten samengestelde klanken van twee klinkers natuurlijk wel als één worden geteld, maar dat lijkt me niet zo moeilijk.

  6. Tijl | 7 november 2009 @ 13:22

    De vraag is in hoeverre een je een exacte oplossing wilt? Ik denk dat een benadering voldoende is. Een oplossing als die van Blijbol komt dan dicht in de buurt. De enkele keer dat je woorden als koeienuier of zeeëendeneieren in je tekst hebt is dan jammer, maar zal (denk ik) geen grote invloed hebben op de tekst als geheel. Daarnaast, hoe groter je tekst, hoe kleiner de invloed zal zijn (en hoe groter de kans dat er meer van dit soort woorden in je tekst zitten, maar dat even terzijde).

  7. hans | 7 november 2009 @ 13:23

    van wikipedia:
    Lettergrepen bestaan uit een sonore en accentdragende kern of nucleus, die vaak maar niet altijd wordt voorafgegaan door een onset en gevolgd door een coda. Het begin van de lettergreep (de onset) en coda bestaan uit medeklinkers, de kern is een enkele klinker, tweeklank of hoog-sonore medeklinker.
    Volgens mij zou het te doen moeten zijn als je een lijst met letters op sonoriteit gesorteerd hebt.

  8. Juerd | 7 november 2009 @ 15:14

    Leesbaarheid wordt door veel meer aspecten bepaald dan in deze formule zijn opgenomen. Het lijkt me daarom niet zo’n nuttig tijdverdrijf om dit te programmeren. Het kan zelfs een negatief gevolg hebben, namelijk dat mensen zich op de score gaan richten in plaats van de ontvanger.

    Zaken als interpunctie en “moeilijke” woorden (niet beperkt tot jargon) hebben een veel grotere impact op de leesbaarheid, en EULA’s zitten vol met woorden die je in een normaal gesprek niet snel tegenkomt.

  9. Rijk | 8 november 2009 @ 0:10

    Wat is een exoneratie? :)

  10. Max R. | 8 november 2009 @ 1:16

    Behalve de bestanden van woordenlijst.org zijn er ook nog de hyphenation files van TeX die je als basis kunt gebruiken.

    Ik ben het wel eens met Juerd: leesbaarheid is niet alleen maar een “score”; je kunt die score natuurlijk wel als basis gebruiken. Zie het maar als een soort van vuistregel.

  11. Arnoud Engelfriet | 8 november 2009 @ 9:51

    @Juerd: daar heb je natuurlijk gelijk in, maar ik denk dat het wel een aardige vuistregel is. Misschien is het ding nog uit te breiden met wat juridisch-specifieke zaken, zoals een zwarte lijst met verboden woorden (”exoneratie”(*), “desalniettegenstaande”, “deze” enzovoorts).

    (*) Juridisch voor “uitsluiting van aansprakelijkheid”. Ironisch genoeg is het jargon dus leesbaarder dan de gewone termen.

    En ik hoor net dat ik de twee constanten 77 en .93 heb omgewisseld. Implementatiedetail :)

  12. Math1985 | 8 november 2009 @ 11:46

    Alle hyphenation-suggesties zijn niet bruikbaar, omdat woorden als ‘over’ en andere woorden met lettergrepen met meer een letter niet mogen worden afgebroken.

  13. Chris Eidhof | 8 november 2009 @ 15:09

    Op dutchgrammar.com staan regels over hoe een woord in lettergrepen te verdelen is:

    http://www.dutchgrammar.com/nl/?n=SpellingAndPronunciation.05

  14. Arnoud Engelfriet | 8 november 2009 @ 15:16

    Bedankt Chris! Dat is handig. De eerste drie regels zijn eenvoudig te implementeren denk ik, maar de vierde (”Kunnen we de lettergreep makkelijk uitspreken?”) wordt lastig. Hoewel ik me afvraag of die nodig is bij deze situatie, omdat het zo te zien niet in meer of minder lettergrepen resulteert maar alleen in andere plekken waar de scheiding valt.

    • ambtenaar amb-te-naar niet: am-bte-naar

    Wie verveelt zich en bouwt even een Perlscript? :)

  15. Blijbol | 8 november 2009 @ 16:25

    @6: ook het woord koeienuier kan correct worden geïnterpreteerd zonder woordenlijst. Neem de groep klinkers ‘oeie’. Als is geprogrammeerd dat ‘oei’ een samengestelde klinker is en ‘e’ ook, dan zullen er vanzelf twee lettergrepen geteld worden.

    Ik zal anders wel even kijken of ik er een scriptje van kan maken.

  16. Freeaqingme | 8 november 2009 @ 16:48

    Ik ga er nog even over nadenken, maar wie weet kom ik morgen wel met een (php) scriptje :D

  17. Blijbol | 8 november 2009 @ 17:31

    Ik ben al bezig (in PHP ook), de leesbaarheid van de disclaimer en het privacybeleid van mijn site is nu echter nog -625, dus waarschijnlijk zit er nog een fout in (of het is wel heel moeilijk leesbaar). XD

    Ik laat het hier weten zodra hij bruikbaar is. :)

  18. Blijbol | 8 november 2009 @ 17:42

    Volgens mij werkt hij:
    http://www.jeroenvandergun.nl/leesbaarheidstest

    Ik heb nu als tweede coëfficiënt 7,7 genomen, 77 kan echt niet kloppen want dan is bij een woord of drie per zin je leesbaarheid al volledig geruïneerd.

  19. Arnoud Engelfriet | 8 november 2009 @ 18:29

    Ik schreef al dat de factoren verkeerd om waren, werkt het dan beter? :)

  20. Arnoud Engelfriet | 8 november 2009 @ 19:18

    Oh en in http://books.google.nl/books?id=qKwJ3ty925EC&lpg=PA28&ots=7y4w2hyl2C&dq=douma%20formule%20leesbaarheid&pg=PA29#v=onepage&q=flesh%20douma%20formule%20&f=false zie ik staan dat het 0,77 maal gemiddelde woordlengte en 0,93 maal gemiddelde zinslengte is.

    En zet je je broncode nog ergens online? :)

  21. Blijbol | 8 november 2009 @ 22:18

    Oké, dat helpt. Ik heb nu de coëfficiënten in orde (tenminste, als dit klopt: 206.84 - 0.93 * $aantalwoorden / $aantalzinnen - 77 * $aantallettergrepen / $aantalwoorden) en nu komen er normale resultaten uit. De score wordt nu ook omgezet in het opleidingsniveau volgens je tabel.

    Dit heb ik er alvast doorheengehaald:

    * Disclaimer/privacybeleid van mijn eigen website: 45
    * Licentie van deze blog (CC-BY-SA 2.5): 36
    * Algemene voorwaarden van Google AdSense: 33

    Werkt verslavend dit. :P Overigens wel moeilijk om een goede score te halen. Met mijn eigen score heb ik eigenlijk nog valsgespeeld omdat er webadressen in staan waardoor het aantal zinnen te hoog wordt ingeschat. :D

  22. Blijbol | 8 november 2009 @ 22:35

    Heb nu de detectie van zinnen verbeterd (URL’s in de tekst zorgen nu niet meer voor een stijging van het aantal zinnen en woorden): de scores zijn gezakt naar respectievelijk 40, 35 en 30.

  23. Blijbol | 9 november 2009 @ 0:22

    De broncode houd ik trouwens privé, :P maar ik heb op mijn eigen blog in detail uitgelegd hoe het werkt:
    http://blog.jeroenvandergun.nl/6-leesbaar-omdat-de-computer-het-zegt

    De uitleg heeft een leesbaarheid van 58, dus jullie zouden het moeten kunnen begrijpen. :)

    (Excuus voor de driedubbelpost overigens.)

  24. Arnoud Engelfriet | 9 november 2009 @ 8:46

    Hm jammer, dan moet ik nu iemand anders inhuren om het voor ‘t echie te gaan implementeren :) Maar serieus, mooi werk!

    Ik zat nog te denken aan een jargonlijst, een soort van zwarte lijst zeg maar die strafpunten geeft als je moeilijke juridische woorden gebruikt. Dat is erger dan een gewoon moeilijk woord.

  25. Kwetal | 9 november 2009 @ 10:01

    Ik heb een heel simpele implementatie op pastebin gezet (code hier op Iusmentis posten wordt geblokkeerd). Iedere groep van opeenvolgende klinkers wordt als lettergreep geteld. Een zin eindigt op ‘.’, ‘?’ of ‘!’ gevolgd door een spatie.
    De lettergreeptelling gaat de mist in bij woorden als beoordelen en online, en ook klinkers met accenten worden niet herkend.
    Er valt dus nog wel wat aan te schaven, maar met de meeste teksten op deze webpagina werkt ‘t script.

  26. Barend | 9 november 2009 @ 10:06

    Word 2007 lijkt deze functie al te hebben, zie:

    http://office.microsoft.com/en-us/help/HP101485061033.aspx

  27. Branko Collin | 9 november 2009 @ 13:10

    Het groene boekje heeft een lijst met klinkers die een trema en/of een koppelteken krijgen waar het weglaten tot verwarring over de uitspraak kan leiden. Het complement daarvan zijn alle combinaties van klinkers die naast elkaar geplaatst altijd op een dubbele lettergreep wijzen.

    (Er zullen vast uitzonderingen op zijn: is een beamer iets dat beamt of iemand die beaamt?)

    De apostrof kan trouwens ook op een ontbrekende klinker wijzen (’s lands wijs en zo).

  28. Wim, W.A. ten Brink | 9 november 2009 @ 14:15

    Een programma maken die dit even analyseert zou niet moeilijk moeten zijn, maar zonder woordkennis is een dergelijk criterium onbetrouwbaar. Het programma hoeft niet de betekenis van de woorden te kennen, maar moet wel weten hoe ieder woord in correcte lettergrepen moet worden opgedeeld. Dit kan namelijk niet simpel op basis van klinkers en medeklinkers scheiden. Een woord als “eeneiig” is drie lettergrepen. En “ion” (geladen deeltje) is twee lettergrepen. En hoewel dit soort woorden niet erg vaak voorkomen, kan het wel een kleine afwijking veroorzaken waardoor een tekst moeilijker (of minder moeilijk) lijkt dan het is.

  29. Arnoud Engelfriet | 9 november 2009 @ 14:23

    Ik vraag me af of die afwijking opvalt tussen alle desalnietteminnen, inoverwegingnemenden en aansprakelijkheidsbeperkingen. :) Maar inderdaad, als je t netjes wilt doen dan moet er een lijstje met uitzonderingen bij.

  30. Branko Collin | 9 november 2009 @ 17:24

    @wim, het algoritme wat ik 27 suggereer herkent jouw lettergrepen goed, omdat ii en io in het Nederlands altijd op 2 lettergrepen wijzen.

    Wellicht kun je daar weer uitzonderingen op bedenken, maar ik vermoed dat een bepaalde fout (p

  31. nl-x | 9 november 2009 @ 20:41

    Hey top, Barend! Handig om te weten!

  32. Lukas Vermeer | 10 november 2009 @ 13:01

    Een aantal jaar terug schreef ik deze tool voor mijn vader gebaseerd op zijn onderzoek aan de Universiteit van Tilburg. Deze tool is eigenlijk alleen bruikbaar voor teksten van basisschoolniveau, maar geeft een idee van de complexiteit van het probleem van het inschatten van de moeilijkheid van teksten.

    Veel woorden hebben meerdere betekenissen (loop: ik loop, de loop van de rivier, de loop van een geweer, in de loop van de geschiedenis, etc.) en het bepalen van de achterliggende betekenis is essentieel om de moeilijkheid van de tekst als geheel te kunnen bepalen. Zonder hier rekening mee te houden kan je enkel een schatting maken van de moeilijkheidsgraad. Niet dat een schatting niet nuttig kan zijn, maar het lijkt me belangrijk te benadrukken wat de beperkingen van zo’n meting zijn.

    (De MLR van deze tekst is tussen de 9.53 en de 21.83. Indicatie benodigde woordvoorraad tussen de 9.53 x 1000 en de 21.83 x 1000 woorden)

  33. Theezakje | 10 november 2009 @ 19:17

    Normen als aantal lettergrepen per woord en aantal woorden per zin zeggen slechts in beperkte mate iets over leesbaarheid, wat mensen hiervoor al opgemerkt hebben. Van veel grotere invloed zijn de bekendheid met de woorden, de opbouw en zinsconstructies. Als je echter alleen maar naar droge cijfertjes gaat kijken ontstaat er een situatie waarin mensen op kunstmatige wijze de cijfertjes omlaag gaan brengen, bijvoorbeeld door zinnen op te breken terwijl dat niet hoort, wat alleen maar leidt tot minder leesbare teksten. Slecht plan dus.

    Het echte probleem is natuurlijk dat er geen feedback gegeven wordt. Overigens lijkt dit me niet alleen een taalkundig maar ook een juridisch probleem: waarom heeft alleen de opsteller wat in te brengen in zo’n “overeenkomst”? Hoor je er als gebruiker niet ook iets over te kunnen zeggen? Misschien moeten we EULA’s laten keuren door een soort organisatie, de consumentenbond of zo. Zij zouden op zijn minst de taalkundige kwaliteiten ervan kunnen toetsen, maar misschien tegelijkertijd ook de juridische.

  34. Hans | 11 november 2009 @ 9:29

    @Branko

    Pion, pioen, ion, bios, kiosk…?

  35. Martijn Grooten | 11 november 2009 @ 9:53

    @Theezakje:

    Slecht plan dus.

    Maar… er is toch helemaal geen “plan”? Slechts een paar opmerkingen over hoe EULAs duidelijker zouden moeten zijn — en een formule die een indicatie voor leesbaarheid geeft. (En die, zoals meedere malen hierboven is opgemerkt, achteraf moet worden toegepast en geen doel op zich moet zijn.)

    Kan (onnodig) moeilijke taal een reden zijn om een contract/EULA, die wel correct is en op zich ook wel redelijk, ongeldig te laten verklaren?

  36. Branko Collin | 13 november 2009 @ 13:44

    Hans, allemaal woorden met twee lettergrepen: pi-oen, pi-on, i-on, ki-osk, bi-os.

    Het echte probleem is natuurlijk dat er geen feedback gegeven wordt.

    Het echte probleem is dat het schrijven niet aan professionals wordt overgelaten, om twee redenen. In de eerste plaats vanwege de kosten, maar in de tweede plaats ook omdat de opdrachtgever denkt dat schrijven makkelijk is, dat het iets is wat elke idioot kan. (En iets wat elke idioot kan heeft de neiging te leiden tot producten die duidelijk door idioten in elkaar zijn gezet.)

    Moet een advocaat dan maar een copywriter inhuren? Waarom niet? Om het geld hoeft ‘ie het niet te laten. Laatst vroeg ik een advocaat wat zijn uurtarief was. Toen ik weer bijkwam… maar dat is voor een andere keer.

    Arnout gaf overigens niet aan waarom hij leesbaarheid wil kunnen meten, dus concluderen (of suggereren) dat hij deze maat wil gebruiken om leesbaardere EULA’s te produceren is wellicht wat voorbarig.

  37. Arnoud Engelfriet | 13 november 2009 @ 13:46

    In eerste instantie wilde ik gewoon weten of het kon. Maar het lijkt me leuk om een tooltje op te zetten waar iedereen EULA’s in kan plakken om te zien hoe leesbaar ze zijn volgens die formule. Een beetje naming&shaming kan geen kwaad om EULAschrijvende juristen tot verbetering te dwingen.

  38. Sebastiaan Stok | 13 november 2009 @ 13:50

    Bij mijn Privacy verklaring kwam 41 als resultaat :)

    Waarom wil je dit eigenlijk in Perl? :|
    “Perl - The only language that looks the same before and after RSA encryption.” -Keith Bostic

    Edit: Voor de Nederlandse Office Word handleiding:
    http://office.microsoft.com/nl-nl/word/HP101485061043.aspx

  39. Arnoud Engelfriet | 13 november 2009 @ 14:05

    Omdat PHP nog harder zuigt en ik geen andere talen ken waarin je een beetje efficiënt dingen kunt bouwen om strings te manipuleren.

  40. Sebastiaan Stok | 13 november 2009 @ 14:11

    Je kan in Microsoft Word inderdaad de leesbaarheid laten weergeven (of wat daar op lijkt).
    Alleen moet je dat vast instellen, en dat is minder… want nu krijg ik na elke spellingscontrole een venster met het resultaat :| niet echt gebruiksvriendelijk als je het mij vraagt.

    “Omdat PHP nog harder zuigt en ik geen andere talen ken waarin je een beetje efficiënt dingen kunt bouwen om strings te manipuleren.” Je bedoeld zeker het UTF-8 probleem? :)
    Perl is een prima taal, maar een hel om te leren. En je kan toch prima PHP gebruiken, als het maar werkt ;)

    Ik wil geen flamewar starten of iets maar, maar waarom dan perse Perl en niet C of iets :) dus vandaar.

  41. Roy Tomeij | 17 november 2009 @ 18:30

    Volgens mij gaat dit in Nederland niet werken omdat steeds meer mensen niet weten hoe ze samenvoegingen moeten schrijven. Je ziet tegenwoordig overal “hotel eigenom”, “zwerf afval” en (jaja) “spatie gebruik”. Meer woorden, minder lettergrepen per woord en een tekst die daardoor echt niet eenvoudiger is.

  42. The Readability of the EULA | Willem's Internet Blog | 17 november 2009 @ 20:27

    […] A discussion has started partly caused by this post on IusMentis […]

  43. Joost de Valk | 11 mei 2011 @ 16:14

    Ben je ooit nog iets moois tegen gekomen Arnoud? Ik heb de Flesch test geïntegreerd in mijn WordPress SEO plugin en wil ‘m ook wel graag voor het Nederlands aan de praat krijgen, maar om dat van scratch te doen is me iets te veel werk :)

  44. Arnoud Engelfriet | 11 mei 2011 @ 16:56

    Helaas, geen tools gevonden voor lettergrepen. Maar ik sponsor graag een leuk project als we er een online tool van kunnen maken! Powered by ICTRecht and Yoast?

  45. Joost de Valk | 11 mei 2011 @ 18:39

    Klinkt als een plan! Ik mail je.

  46. Sebastiaan Stok | 12 mei 2011 @ 9:42

    Ik was het eigenlijk alweer vergeten maar al een tijdje geleden kwam ik dit tegen.
    http://code.google.com/p/hyphenator/

    Als je woorden moet breken over verschillende regels krijg je soms vreemde afbrekingen als ‘afb-rekingen’, je kan een woord alleen afbreken op lettergreep. In het Engels worden deze afbrekingen Hyphens genoemd :) de Hyphenator heeft een grote collectie woorden met de juiste afbreking, en dus lettergrepen van een woord (niet alles overigens).

RSS-feed voor reacties Volg deze discussie via RSS of doe een trackback vanaf je eigen site

Plaats een reactie

Let op: uw reactie wordt gepubliceerd. Voor privé-reacties gebruik het contactformulier.

XHTML: U kunt deze HTML-codes gebruiken: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

De wet op internet Koop het boek Software: Deskundig en praktisch juridisch advies
Of een van de andere boeken over internetrecht!

Auteur: Arnoud Engelfriet - Licentie: Creative Commons BY-SA 2.5 - Disclaimer - Powered by WordPress