CINXE.COM
Modul:Wikidata2 – Wikipedia
<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-disabled skin-theme-clientpref-day vector-toc-available" lang="sv" dir="ltr"> <head> <meta charset="UTF-8"> <title>Modul:Wikidata2 – Wikipedia</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-disabled skin-theme-clientpref-day vector-toc-available";var cookie=document.cookie.match(/(?:^|; )svwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":[",\t."," \t,"],"wgDigitTransformTable":["",""], "wgDefaultDateFormat":"dmy","wgMonthNames":["","januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],"wgRequestId":"1499a833-af55-4078-9b36-20a31fcc3793","wgCanonicalNamespace":"Module","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":828,"wgPageName":"Modul:Wikidata2","wgTitle":"Wikidata2","wgCurRevisionId":56106350,"wgRevisionId":56106350,"wgArticleId":5069554,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Wikidatamoduler","Mallar och moduler som använder Property:P31","Mallar och moduler som använder Property:P102","Mallar och moduler som använder Property:P143","Mallar och moduler som använder Property:P180","Mallar och moduler som använder Property:P248","Mallar och moduler som använder Property:P291","Mallar och moduler som använder Property:P373","Mallar och moduler som använder Property:P405","Mallar och moduler som använder Property:P428", "Mallar och moduler som använder Property:P512","Mallar och moduler som använder Property:P518","Mallar och moduler som använder Property:P574","Mallar och moduler som använder Property:P580","Mallar och moduler som använder Property:P582","Mallar och moduler som använder Property:P585","Mallar och moduler som använder Property:P625","Mallar och moduler som använder Property:P642","Mallar och moduler som använder Property:P965","Mallar och moduler som använder Property:P1323","Mallar och moduler som använder Property:P1630","Mallar och moduler som använder Property:P1686","Mallar och moduler som använder Property:P2096","Mallar och moduler som använder Property:P2370","Mallar och moduler som använder Property:P2937","Mallar och moduler som använder Property:P7903","Mallar och moduler som använder Property:P7904"],"wgPageViewLanguage":"sv","wgPageContentLanguage":"sv","wgPageContentModel":"Scribunto","wgRelevantPageName":"Modul:Wikidata2","wgRelevantArticleId":5069554, "wgIsProbablyEditable":false,"wgRelevantPageIsProbablyEditable":false,"wgRestrictionEdit":["extendedconfirmed"],"wgRestrictionMove":["extendedconfirmed"],"wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":true,"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"en","pageLanguageDir":"ltr","pageVariantFallbacks":"en"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":true,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":70000,"wgRelatedArticlesCompat":[],"wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q62716504","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true, "wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.gadget.babel":"ready","ext.gadget.geo":"ready","ext.gadget.warnings":"ready","ext.gadget.tags":"ready","ext.gadget.error":"ready","ext.gadget.referenser":"ready","ext.gadget.printonly":"ready","ext.gadget.tables":"ready","ext.gadget.toccolours":"ready","ext.gadget.smallTagFontSize":"ready","ext.gadget.videoPlayButton":"ready","ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.pygments":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=["ext.pygments.view","site", "mediawiki.page.ready","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.editsection0","ext.gadget.ProtectionIndicators","ext.gadget.GeoboxLocatorMulti","ext.gadget.InterwikiBadges","ext.gadget.collapsibleTables","ext.gadget.NewSection","ext.gadget.ExkluderaRobotskapadeSidor","ext.gadget.Nearby","ext.gadget.InterProjectLinks","ext.gadget.cgiircbox","ext.gadget.withJS","ext.gadget.CommonsFileLinks","ext.gadget.tableSorterCollation","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface","ext.cx.eventlogging.campaigns","wikibase.client.vector-2022","ext.checkUser.clientHints","wikibase.sidebar.tracking"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=sv&modules=ext.pygments%2CwikimediaBadges%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&only=styles&skin=vector-2022"> <script async="" src="/w/load.php?lang=sv&modules=startup&only=scripts&raw=1&skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=sv&modules=ext.gadget.babel%2Cerror%2Cgeo%2Cprintonly%2Creferenser%2CsmallTagFontSize%2Ctables%2Ctags%2Ctoccolours%2CvideoPlayButton%2Cwarnings&only=styles&skin=vector-2022"> <link rel="stylesheet" href="/w/load.php?lang=sv&modules=site.styles&only=styles&skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.5"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="Modul:Wikidata2 – Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//sv.m.wikipedia.org/wiki/Modul:Wikidata2"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (sv)"> <link rel="EditURI" type="application/rsd+xml" href="//sv.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://sv.wikipedia.org/wiki/Modul:Wikidata2"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.sv"> <link rel="alternate" type="application/atom+xml" title="Wikipedia Atom-flöde" href="/w/index.php?title=Special:Senaste_%C3%A4ndringar&feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="//login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-828 ns-subject page-Modul_Wikidata2 rootpage-Modul_Wikidata2 skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Hoppa till innehållet</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Webbplats"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Huvudmeny" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Huvudmeny</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Huvudmeny</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">flytta till sidofältet</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">dölj</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigering </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/Portal:Huvudsida" title="Besök huvudsidan [z]" accesskey="z"><span>Huvudsida</span></a></li><li id="n-Introduktion" class="mw-list-item"><a href="/wiki/Wikipedia:Introduktion"><span>Introduktion</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/Wikipedia:Deltagarportalen" title="Om projektet, vad du kan göra, var man kan hitta saker"><span>Deltagarportalen</span></a></li><li id="n-Bybrunnen" class="mw-list-item"><a href="/wiki/Wikipedia:Bybrunnen"><span>Bybrunnen</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Special:Senaste_%C3%A4ndringar" title="Lista över de senaste ändringarna på wikin [r]" accesskey="r"><span>Senaste ändringarna</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Special:Slumpsida" title="Gå till en slumpmässigt vald sida [x]" accesskey="x"><span>Slumpartikel</span></a></li><li id="n-filuppladdning" class="mw-list-item"><a href="//commons.wikimedia.org/wiki/Special:UploadWizard" title="Ladda upp filer till Wikimedia Commons"><span>Ladda upp filer</span></a></li><li id="n-Kontakta-Wikipedia" class="mw-list-item"><a href="/wiki/Wikipedia:Kontakt"><span>Kontakta Wikipedia</span></a></li><li id="n-help" class="mw-list-item"><a href="/wiki/Wikipedia:Hj%C3%A4lp" title="Platsen där du hittar hjälp"><span>Hjälp</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/Portal:Huvudsida" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipedia" src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" style="width: 7.5em; height: 1.125em;"> <img class="mw-logo-tagline" alt="" src="/static/images/mobile/copyright/wikipedia-tagline-sv.svg" width="120" height="13" style="width: 7.5em; height: 0.8125em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Special:S%C3%B6k" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Sök i svenskspråkiga Wikipedia [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Sök</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Sök på Wikipedia" aria-label="Sök på Wikipedia" autocapitalize="sentences" title="Sök i svenskspråkiga Wikipedia [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Sök"> </div> <button class="cdx-button cdx-search-input__end-button">Sök</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Personliga verktyg"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Utseende"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Ändra utseendet på sidans teckenstorlek, bredd och färg" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Utseende" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Utseende</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="//donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_sv.wikipedia.org&uselang=sv" class=""><span>Stöd Wikipedia</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:Skapa_konto&returnto=Modul%3AWikidata2" title="Du uppmuntras att skapa ett konto och logga in, men det är inte obligatoriskt" class=""><span>Skapa konto</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:Inloggning&returnto=Modul%3AWikidata2" title="Inloggning ger tillgång till fler funktioner för den som vill skriva och redigera artiklar. [o]" accesskey="o" class=""><span>Logga in</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Fler alternativ" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Personliga verktyg" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Personliga verktyg</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="Användarmeny" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="//donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_sv.wikipedia.org&uselang=sv"><span>Stöd Wikipedia</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:Skapa_konto&returnto=Modul%3AWikidata2" title="Du uppmuntras att skapa ett konto och logga in, men det är inte obligatoriskt"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Skapa konto</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:Inloggning&returnto=Modul%3AWikidata2" title="Inloggning ger tillgång till fler funktioner för den som vill skriva och redigera artiklar. [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Logga in</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Sidor för utloggade redigerare <a href="/wiki/Hj%C3%A4lp:Introduktion" aria-label="Läs mer om redigering"><span>läs mer</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Special:Mina_bidrag" title="En lista över redigeringar från denna IP-adress [y]" accesskey="y"><span>Bidrag</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Special:Min_diskussion" title="Diskussion om redigeringar från det här IP-numret [n]" accesskey="n"><span>Diskussion</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Webbplats"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Innehåll" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Innehåll</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">flytta till sidofältet</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">dölj</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">Inledning</div> </a> </li> <li id="toc-Huvudfunktion" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Huvudfunktion"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>Huvudfunktion</span> </div> </a> <button aria-controls="toc-Huvudfunktion-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Växla underavsnittet Huvudfunktion</span> </button> <ul id="toc-Huvudfunktion-sublist" class="vector-toc-list"> <li id="toc-Anrop" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Anrop"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.1</span> <span>Anrop</span> </div> </a> <ul id="toc-Anrop-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Parametrar" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Parametrar"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.2</span> <span>Parametrar</span> </div> </a> <ul id="toc-Parametrar-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Övriga_funktioner" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Övriga_funktioner"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Övriga funktioner</span> </div> </a> <ul id="toc-Övriga_funktioner-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Innehåll" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Växla innehållsförteckningen" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Växla innehållsförteckningen</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-namespace">Modul</span><span class="mw-page-title-separator">:</span><span class="mw-page-title-main">Wikidata2</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="Gå till en artikel på ett annat språk. Tillgänglig på 5 språk" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-5" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">5 språk</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="interlanguage-link interwiki-ar mw-list-item"><a href="https://ar.wikipedia.org/wiki/%D9%88%D8%AD%D8%AF%D8%A9:Wikidata2/%D9%85%D9%84%D8%B9%D8%A8" title="وحدة:Wikidata2/ملعب – arabiska" lang="ar" hreflang="ar" data-title="وحدة:Wikidata2/ملعب" data-language-autonym="العربية" data-language-local-name="arabiska" class="interlanguage-link-target"><span>العربية</span></a></li><li class="interlanguage-link interwiki-fr mw-list-item"><a href="https://fr.wikipedia.org/wiki/Module:Interface_Wikidata2" title="Module:Interface Wikidata2 – franska" lang="fr" hreflang="fr" data-title="Module:Interface Wikidata2" data-language-autonym="Français" data-language-local-name="franska" class="interlanguage-link-target"><span>Français</span></a></li><li class="interlanguage-link interwiki-arz mw-list-item"><a href="https://arz.wikipedia.org/wiki/%D9%88%D8%AD%D8%AF%D8%A9:Wikidata2/%D8%B4%D8%B1%D8%AD" title="وحدة:Wikidata2/شرح – egyptisk arabiska" lang="arz" hreflang="arz" data-title="وحدة:Wikidata2/شرح" data-language-autonym="مصرى" data-language-local-name="egyptisk arabiska" class="interlanguage-link-target"><span>مصرى</span></a></li><li class="interlanguage-link interwiki-frr mw-list-item"><a href="https://frr.wikipedia.org/wiki/Modul:Wikidata2" title="Modul:Wikidata2 – nordfrisiska" lang="frr" hreflang="frr" data-title="Modul:Wikidata2" data-language-autonym="Nordfriisk" data-language-local-name="nordfrisiska" class="interlanguage-link-target"><span>Nordfriisk</span></a></li><li class="interlanguage-link interwiki-fi mw-list-item"><a href="https://fi.wikipedia.org/wiki/Moduuli:Sv:Wikidata2" title="Moduuli:Sv:Wikidata2 – finska" lang="fi" hreflang="fi" data-title="Moduuli:Sv:Wikidata2" data-language-autonym="Suomi" data-language-local-name="finska" class="interlanguage-link-target"><span>Suomi</span></a></li> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q62716504#sitelinks-wikipedia" title="Redigera interwikilänkar" class="wbc-editpage">Redigera länkar</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Namnrymder"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-module" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Modul:Wikidata2" title="Visa modulsidan [c]" accesskey="c"><span>Modul</span></a></li><li id="ca-talk" class="vector-tab-noicon mw-list-item"><a href="/wiki/Moduldiskussion:Wikidata2" rel="discussion" title="Diskussion om innehållssidan [t]" accesskey="t"><span>Diskussion</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Ändra språkvariant" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">English</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Visningar"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Modul:Wikidata2"><span>Läs</span></a></li><li id="ca-viewsource" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Modul:Wikidata2&action=edit" title="Den här sidan är skrivskyddad. Du kan se källtexten [e]" accesskey="e"><span>Visa källa</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Modul:Wikidata2&action=history" title="Tidigare versioner av sidan [h]" accesskey="h"><span>Visa historik</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Sidverktyg"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Verktyg" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Verktyg</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Verktyg</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">flytta till sidofältet</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">dölj</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="Fler alternativ" > <div class="vector-menu-heading"> Åtgärder </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/Modul:Wikidata2"><span>Läs</span></a></li><li id="ca-more-viewsource" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Modul:Wikidata2&action=edit"><span>Visa källa</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Modul:Wikidata2&action=history"><span>Visa historik</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> Allmänt </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Special:L%C3%A4nkar_hit/Modul:Wikidata2" title="Lista över alla wikisidor som länkar hit [j]" accesskey="j"><span>Sidor som länkar hit</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Special:Senaste_relaterade_%C3%A4ndringar/Modul:Wikidata2" rel="nofollow" title="Visa senaste ändringarna av sidor som den här sidan länkar till [k]" accesskey="k"><span>Relaterade ändringar</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/Special:Specialsidor" title="Lista över alla specialsidor [q]" accesskey="q"><span>Specialsidor</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=Modul:Wikidata2&oldid=56106350" title="Permanent länk till den här versionen av sidan"><span>Permanent länk</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=Modul:Wikidata2&action=info" title="Mer information om denna sida"><span>Sidinformation</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Special:UrlShortener&url=https%3A%2F%2Fsv.wikipedia.org%2Fwiki%2FModul%3AWikidata2"><span>Hämta förkortad url</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Special:QrCode&url=https%3A%2F%2Fsv.wikipedia.org%2Fwiki%2FModul%3AWikidata2"><span>Ladda ner QR-kod</span></a></li> </ul> </div> </div> <div id="p-electronpdfservice-sidebar-portlet-heading" class="vector-menu mw-portlet mw-portlet-electronpdfservice-sidebar-portlet-heading" > <div class="vector-menu-heading"> Skriv ut/exportera </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="electron-print_pdf" class="mw-list-item"><a href="/w/index.php?title=Special:DownloadAsPdf&page=Modul%3AWikidata2&action=show-download-screen"><span>Ladda ned som PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="javascript:print();" rel="alternate" title="Utskriftsvänlig version av den här sidan [p]" accesskey="p"><span>Utskriftsvänlig version</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> På andra projekt </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q62716504" title="Länk till anslutet databasobjekt [g]" accesskey="g"><span>Wikidata-objekt</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Sidverktyg"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Utseende"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Utseende</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">flytta till sidofältet</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">dölj</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">Från Wikipedia</div> </div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="sv" dir="ltr"><div class="template-documentation"> <p><span class="plainlinks"><span typeof="mw:File"><span><img src="//upload.wikimedia.org/wikipedia/commons/thumb/e/e2/Template-info.png/40px-Template-info.png" decoding="async" width="40" height="18" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/e/e2/Template-info.png/60px-Template-info.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/e/e2/Template-info.png/80px-Template-info.png 2x" data-file-width="706" data-file-height="316" /></span></span> Dokumentation <small>[<a href="/wiki/Modul:Wikidata2/dok" title="Modul:Wikidata2/dok">visa</a>] [<a class="external text" href="https://sv.wikipedia.org/w/index.php?title=Modul:Wikidata2/dok&action=edit">redigera</a>] [<a class="external text" href="https://sv.wikipedia.org/w/index.php?title=Modul:Wikidata2/dok&action=history">historik</a>] [<span class="plainlinks"><a class="external text" href="https://sv.wikipedia.org/w/index.php?title=Modul:Wikidata2&action=purge">rensa sidcachen</a></span>]</small></span> </p> <hr /> <p>Modulen används för att hämta formaterad data från Wikidata. </p> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="Huvudfunktion">Huvudfunktion</h2></div> <div class="mw-heading mw-heading3"><h3 id="Anrop">Anrop</h3></div> <p>Exempel: </p> <pre>{{#invoke:Wikidata2|formatStatements|property=p17}} {{#invoke:Wikidata2|formatStatements|property=P242|enbarten=ja|noref=ja}}} {{#invoke:Wikidata2|formatStatements|property=P127|conjunction=<br/>|separator=<br/>|avoidqualifier=P582|noref=noimport}}}} {{#invoke:Wikidata2|formatStatements|property=P276|sortbytime=inverted|conjunction=<br/>|separator=<br/>|avoidqualifier=P582}}}} </pre> <div class="mw-heading mw-heading3"><h3 id="Parametrar">Parametrar</h3></div> <ul><li><tt>property = </tt> <b>Obligatorisk</b> parameter som beskriver vilken egenskap som ska hämtas. Exempel: <tt>property = P625</tt>. <ul><li>om egenskapen anges som <tt>Pxxx/Pyyy/.../Pzzz</tt> traverseras alla P där alla utom det sista måste ge ett Wikidataobjekt. Observera att endast det första påståendet på varje "nivå" beaktas.</li> <li>om egenskapen anges som <tt>Pxxx:Qrrr,Qsss,.../Pyyy:Qttt,Quuu,.../..../Pzzz</tt> görs en filtrering så att endast objekt med P31=något av de angivna <tt>Q...</tt> på respektive nivå beaktas. Använd parametern <tt>getonly</tt>, se nedan, för att filtrera på den sista nivån.</li></ul></li></ul> <ul><li><tt>entityId =</tt> Det id-nummer den artikel har som du vill hämta egenskap från.</li> <li><tt>entity =</tt> Istället för att förse modulen med ett qid-nummer, kan man förse den med hela objektet. Denna parameter vill ha en tabell, varför den bara fungerar inom Lua.</li></ul> <ul><li><tt>enbarten =</tt> När bara <i>ett</i> värde ska hämtas. Tex för att hämta bild på heraldiskt vapen, och då inte få tillbaka alla objekt.</li> <li><tt>claimindex = </tt> Ger också bara <i>ett</i> värde, men det X:e i raden av befintliga värden.</li> <li><tt>numberofclaims = </tt> Om parametern ges ett värde returneras enbart <i>antalet värden</i>.</li></ul> <ul><li><tt>separator =</tt> När något annat än "," ska separera en lista på objekt. Tex <tt>separator=<br/></tt> Se även <tt>conjunction</tt></li> <li><tt>conjunction = </tt> Som ovan, men påverkar bara den sista separatorn i en lista av objekt. Default är <b>och</b>.</li></ul> <ul><li><tt>label =</tt> När man själv vill välja hur länken ska formateras. Tex [[Blekinge läns vapen|vapen]] fås av att ange <tt>label=vapen</tt> Den här parametern påverkar även enheter <ul><li><tt>koordlabel =</tt> När koordinater ligger i en bestämning, så styrs etiketten för länken genom koordlabel-parametern.</li></ul></li></ul> <ul><li><tt>kortnamn = </tt> ger P1813 (kort namn) som etikett i de fall där det finns</li></ul> <ul><li><tt>labelformatter =</tt> ändrar etikett efter vad som anges i <a href="/wiki/Modul:Wikidata2/Aux2" title="Modul:Wikidata2/Aux2">Modul:Wikidata2/Aux2</a>. <tt>labelformatter = demonym</tt> ändrar tex <tt>USA</tt> till <tt>amerikan</tt></li></ul> <ul><li><tt>labelgender =</tt> väljer etikett efter ett värde i det anropade objektet.</li> <li><tt>labelgenderproperty =</tt> vilken egenskap som det ska sökas i (default = P1549)</li> <li><tt>labelgenderlangpref =</tt> vilket språk man ska föredra (default = sv)</li> <li><tt>labelgenderqualifier =</tt> vilken bestämning man ska söka i (default = P518)</li></ul> <ul><li><tt>labelfromnameproperty =</tt> för den egenskap som anges i <tt>property</tt> väljs som etikett det <a href="https://www.wikidata.org/wiki/Special:EntityPage/P2561" class="extiw" title="d:Special:EntityPage/P2561">namn <small>(P2561)</small></a> som har <a href="https://www.wikidata.org/wiki/Special:EntityPage/P580" class="extiw" title="d:Special:EntityPage/P580">startdatum <small>(P580)</small></a> och/eller <a href="https://www.wikidata.org/wiki/Special:EntityPage/P582" class="extiw" title="d:Special:EntityPage/P582">slutdatum <small>(P582)</small></a> som "gafflar in" den egenskapen som anges som parametervärde. Exempel på användning: <tt>property = P19, labelfromnameproperty = P569</tt> för att få det <a href="https://www.wikidata.org/wiki/Special:EntityPage/P2561" class="extiw" title="d:Special:EntityPage/P2561">namn <small>(P2561)</small></a> på <a href="https://www.wikidata.org/wiki/Special:EntityPage/P19" class="extiw" title="d:Special:EntityPage/P19">födelseplats <small>(P19)</small></a> som gällde vid <a href="https://www.wikidata.org/wiki/Special:EntityPage/P569" class="extiw" title="d:Special:EntityPage/P569">födelsedatum <small>(P569)</small></a>.</li></ul> <ul><li><tt>pattern =</tt> När man vill hämta en sträng och passa in den i ett mönster, exempelvis för att lägga in en kod av något slag istället för <tt>$1</tt> i <tt>https://viaf.org/viaf/$1/</tt>. <ul><li><tt>pattern = auktoritetsdata</tt> är ett specialfall av ovanstående. Det "pattern" (eller mönster) som används, är då det som är angivet i P1630 (format för URL) för den berörda egenskapen.</li> <li><tt>pattern = auktoritetsdata2</tt> kompletterar ovanstående och skapar en länk av typen <tt>[https://viaf.org/viaf/$1/ $1]</tt></li></ul></li></ul> <ul><li><tt>rank = </tt> Bestämmer vilken typ av påståenden som ska släppas igenom. <ul><li><tt>rank = all</tt> släpper igenom alla påståenden</li> <li><tt>rank = valid</tt> släpper igenom "preferred" och "normal", men inte "deprecated"</li> <li><tt>rank = best</tt> (<b>default</b>) släpper igenom "preferred", men om det inte finns släpps "normal" igenom</li> <li><tt>rank = preferred/normal/deprecated</tt> släpper igenom angiven rank, men ingen annan</li></ul></li></ul> <ul><li><tt>avoidqualifier = </tt> Sorterar bort värden som är associerade med en viss egenskap i sin bestämning. Exempelvis <tt>avoidqualifier=P518</tt> (berörd del) om man vill ha folkmängden för <i>hela</i> orten, inte bara de som är kvinnor eller den andel som bor i Haninge kommun.</li></ul> <ul><li><tt>avoidstringpattern = </tt> Sorterar bort värden av typen "string" som innehåller ett visst "pattern". Se <a rel="nofollow" class="external text" href="https://www.lua.org/manual/5.3/manual.html#6.4.1">Lua reference manual</a> för detaljer om "pattern".</li></ul> <ul><li><tt>nolink = </tt> Något värde tar bort länkar, även länkar till enheter görs olänkade. <ul><li><tt>nounitlink = </tt> samma som ovan, men påverkar bara enheter.</li></ul></li></ul> <ul><li><tt>noshortunit = </tt> enheter förkortas inte med ett värde i denna parameter, d.v.s kilometer förkortas inte till km, vilket annars är standard.</li></ul> <ul><li><tt>sortbytime = </tt> sorterar påståenden efter <b>datum</b> i bestämningar, detta system används med fördel tillsammans med parameter <tt>enbarten</tt> ovan <ul><li><tt>sortbytime = chronological</tt> sorterar påståenden i kronologisk ordning i bestämningar</li> <li><tt>sortbytime = inverted</tt> sorterar påståenden i omvänd kronologisk ordning i bestämningar</li></ul></li></ul> <ul><li><tt>sortnotimeas = </tt> möjliggör sortering av tidsvärden som saknas. För närvarande stöds endast parametervärdet <i>maxtime</i>.</li> <li><tt>sortbyvalue = </tt> sorterar påståenden efter <b>värde</b> i bestämningar, detta system används med fördel tillsammans med parameter <tt>enbarten</tt> ovan <ul><li><tt>sortbyvalue = ascending</tt> sorterar påståenden i stigande ordning i bestämningar</li> <li><tt>sortbyvalue = descending</tt> sorterar påståenden i fallande ordning i bestämningar</li></ul></li></ul> <ul><li><tt>sortingproperty = </tt> Ange vilken egenskap som ska stödas. Det går att lägga in en tabell i denna parameter, men då bara från en annan modul. Default är: 'P585','P571','P580','P569','P582','P570' i given ordning. Hittills stöds egenskaper med datatype = time eller med datatype = value där värdet går att konvertera till ett tal.</li></ul> <ul><li><tt>sortbyarbitrary = </tt> sorterar påståenden efter datum de objekt som länkas i de olika uttalandena, exempelvis födelsedag för en rad av "barn". Tillåtna värden är '<tt>chronological</tt>' eller '<tt>inverted</tt>'. Vilken egenskap som ska sökas anges med parameter '<tt>sortingproperty</tt> ovan'.</li></ul> <ul><li><tt>langpref = </tt> I denna modul finns det ett filter som prioriterar påståenden som har bestämningen "språk = svenska". Ett värde på parameter langpref inaktiverar detta filter</li></ul> <ul><li><tt>noref = </tt> Ange ett värde i denna parameter om du inte är intresserad av att ta med själva källhänvisningen, utan bara datan. <ul><li><tt>noref = noimport </tt> Gör att källor av typen "importerad från (P143)" inte visas.</li></ul></li></ul> <ul><li><tt>sources = basic</tt> lägger in ett krav att det ska finnas källor för att ett påstående ska kunna användas <ul><li><tt>sources = required</tt> diskvalificerar källor av typen "importerad från (P143)"</li></ul></li></ul> <ul><li><tt>sourcelimit = N</tt> Tillåter max N antal källhänvisningar till ett påstående. Default är 3</li> <li><tt>norefrank = true</tt> En funktion som väljer bort "sämre" källor framför bättre är aktiv per default. Användandet av <tt>norefrank</tt> stänger av denna funktion.</li></ul> <ul><li><tt>versalisering = </tt> För att ange vilken versalisering utmatningen ska ha. Tillåtna värden är: <tt>lc/uc/lcfirst/ucfirst</tt> <ul><li><tt>firstversalisering = </tt> Samma som ovan, men påverkar bara det första i raden av värden</li></ul></li></ul> <ul><li><tt>av = </tt> Hämtar P642 som bestämning och skriver ut värdet av det som "Borgmästare av Gävle" om ett objekt har värdet "Borgmästare" P642 (av) "Gävle"</li> <li><tt>avalt = </tt> Genom att ange ett annat värde här får man en annan preposition. avalt = i ger "Borgmästare i Gävle".</li></ul> <ul><li><tt>modifytime = </tt> fixar med datumformat <ul><li><tt>modifytime = longdate</tt> skriver datum på formatet "29 november 2024", dvs ner till datumnivå när så tillåts</li> <li><tt>modifytime = longdatelink</tt>, som <tt>longdate</tt> men med länkning av datum (eller månad) och år, alltså "<a href="/wiki/29_november" title="29 november">29 november</a> <a href="/wiki/2024" title="2024">2024</a>", "<a href="/wiki/November" title="November">november</a> <a href="/wiki/2024" title="2024">2024</a> eller "<a href="/wiki/2024" title="2024">2024</a>".</li> <li><tt>modifytime = Y</tt> skriver datum på formatet "2024", dvs endast årtal. Inledande nollor i årtalet tas bort.</li> <li><tt>modifytime = Ylink</tt>, som <tt>Y</tt> men med wikilänkning av årtalet, alltså "<a href="/wiki/2024" title="2024">2024</a>".</li></ul></li> <li><tt>modifyqualifiertime = </tt> Som ovan, men påverkar bara bestämningar</li></ul> <ul><li><tt>gs=true</tt> skriver ut en markering (g.s.) efter datumet om det är angivet med julianska kalendern. <tt>gs=1704</tt> markerar bara datum efter 1704. <tt>gs=always</tt> markerar <i>alla</i> julianska datum.</li></ul> <ul><li><tt>withdate = </tt> lägger till <small>(29 november 2024)</small> till det källbelagda värdet. Hämtas från <a href="https://www.wikidata.org/wiki/Property:P585" class="extiw" title="d:Property:P585">Egenskapen för tidpunkt</a>. <ul><li><tt>withdate = komma</tt> gör så att datumet visas i normalstorlek åtskiljs från huvudvärdet av ett komma. Normalläget är att datum visas mindre och omsluts av parenteser.</li> <li><tt>withdate = only</tt> visar enbart datum från bestämningen P585, utan huvudvärdet.</li></ul></li> <li><tt>dateonly = </tt> ger enbart tidpunkten för ett påstående, inte själva värdet.</li> <li><tt>withintervall = </tt> lägger till <small>(29 november 2024-6 december 2024)</small> till det källbelagda värdet. Hämtas från <a href="https://www.wikidata.org/wiki/Property:P580" class="extiw" title="d:Property:P580">Egenskapen för startdatum</a> och <a href="https://www.wikidata.org/wiki/Property:P582" class="extiw" title="d:Property:P582">Egenskapen för slutdatum</a>. <ul><li><tt>withintervall = gift</tt> ger att intervallet skrivs ut med ett <i>g.</i> framför.</li></ul></li> <li><tt>withintervallformat = Y</tt> ger att endast årtalen för startdatum och slutdatum visas.</li> <li><tt>withmandatperiod = </tt> lägger till mandatperiod om den är angiven. Hämtas från <a href="https://www.wikidata.org/wiki/Property:P2937" class="extiw" title="d:Property:P2937">Egenskapen för mandatperiod</a>.</li></ul> <ul><li><tt>lowesttimeprecision = </tt> skapar ett filter så att tider som är angivna med en <i>timePrecision</i> i Wikidata som understiger värdet på denna parameter ignoreras. Kan till exempel användas om man inte vill visa datum med precisionen "århundrade" eller sämre där det är problem med hur sådana värden ska tolkas.</li></ul> <ul><li><tt>getsimpleproperty =</tt> För att hämta information från det länkade objektet. Denna funktion tillåter <i>ingen</i> iteration, utan går bara <i>en</i> nivå. <ul><li><tt>getproperty =</tt> Här anger du vilken egenskap du ska hämta med <tt>getsimpleproperty</tt></li> <li><tt>getenbarten =</tt> Här anger du om en eller alla uttalanden ska hämtas med <tt>getsimpleproperty</tt></li> <li><tt>getmodifytime =</tt> Här anger du vilket tidsformat <tt>getsimpleproperty</tt> ska hämta</li> <li><tt>getsomevalue =</tt> Här anger du vad som ska skrivas ut i stället för "unknown value" för något som hämtas med <i>getsimpleproperty</i>. Se även <tt>somevalue</tt> nedan.</li> <li><tt>getnovalue =</tt> Här anger du vad som ska skrivas ut i stället för "no value" för något som hämtas med <i>getsimpleproperty</i>. Se även <tt>novalue</tt> nedan.</li> <li><tt>getraw =</tt> Som "raw" nedan</li> <li>Värdet från det länkade objektet kan formateras på följande sätt: <ul><li><tt>getsimpleproperty = parentes</tt> sätter värdet inom parentes.</li> <li><tt>getsimpleproperty = född</tt> som "parentes", fast texten skrivs med mindre stil och får ett litet "f." framför sig. Lämplig för att lägga till födelseår.</li> <li><tt>getsimpleproperty = avnågon</tt> lägger till "av" innan värdet. Lämplig för att ange upphov.</li> <li><tt>getsimpleproperty = 15px</tt> lägger till bildformatering med 15 pixlars bredd. Lämplig om man vill ha små flaggor eller dylikt.</li> <li><tt>getsimpleproperty = slepspenne</tt> som 15px, fast bilden läggs i en 50x20 pixlar stor ruta. Lämplig för släpspännen.</li> <li><tt>getsimpleproperty = only</tt> visar enbart det värde som hämtas från det länkade objektet, utan att visa objektet självt.</li></ul></li></ul></li></ul> <ul><li><tt>raw = </tt> är en parameter som kan användas från andra moduler. Den resulterar i att utmatningen kommer i en tabell.</li></ul> <ul><li><tt>novalue = </tt> En parameter som styr hur "novalue" på Wikidata ska presenteras här. Tomt värde ger 'nil' som resultat</li> <li><tt>somevalue = </tt> Som "novalue" ovan</li></ul> <ul><li><tt>relevans = </tt> Objekt som saknar en webbplatslänk till svwiki inte kommer att inkluderas.</li></ul> <ul><li><tt>prefix = </tt> Text läggs in före svaret</li> <li><tt>suffix = </tt> Text läggs in efter svaret</li></ul> <ul><li><tt>getonly = </tt> Ett Qid. Hämtar bara objekt som uppfyller vissa krav. P31 = Q127448 för Sveriges kommuner. Flera värden är möjliga, såsom <tt>Q127448,Q193556</tt> för att få både svenska kommuner och landskap.</li> <li><tt>getonlyproperty = </tt> Om en annan egenskap än P31 efterfrågas</li></ul> <ul><li><tt>getonlyids = </tt> En lista med Qid. Hämtar bara objekt som har något av de Qid som finns i listan.</li></ul> <ul><li><tt>preferqualifier = </tt> Ett Pid. Hämtar endast påståenden som använder Pid som bestämning.</li> <li><tt>preferqualifiervalue = </tt> Specificerar vilket värde som passar till ovanstående. Stöder idag endast Qid.</li></ul> <ul><li><tt>typen = </tt> För parameter "type:" för anropet till GeoHack i <a href="/wiki/Mall:Coord" title="Mall:Coord">koordinater</a>. Default värde är <tt>landmark</tt> <ul><li><tt>koordtypen =</tt> dito, men för när koordinaterna ligger i en bestämning.</li></ul></li> <li><tt>region = </tt> för parameter "region:" i anropet till Geohack i samma mall. Om parametern inte används, försöker modulen själv hitta en lämplig region med hjälp av Wikidata.</li></ul> <ul><li><tt>grav =</tt> Lägger in bestämningar för grav-id och koordinater till gravplatsen. <tt>grav=coordonly</tt> väljer att skriva ut <i>bara</i> koordinaterna.</li></ul> <ul><li><tt>wdlink =</tt> Lägger in en länk efter påståendet till det objekt där påståendet är angivet. Funktionen är <i>inte</i> tillgänglig i kombination med parametern <tt>raw</tt> <ul><li><tt>wdlink = sup</tt> Formaterar länken som <tt><sup>WD</sup></tt></li> <li><tt>wdlink = sub</tt> Formaterar länken som <tt><sub>WD</sub></tt></li> <li><tt>wdlink = small</tt> Formaterar länken som <tt><small>WD</small></tt></li></ul></li></ul> <ul><li><tt>wdlinklabel = </tt> väljer vilken text som ska skrivas ut i länken. Default är: <tt>WD</tt></li></ul> <ul><li><tt>primary = </tt> väljer om en koordinat ska vara av typen "primary" enl <a href="https://www.mediawiki.org/wiki/Extension:GeoData" class="extiw" title="mw:Extension:GeoData">mw:Extension:GeoData</a> eller inte. Vilket ord som helst annat än <tt>primary = primary</tt> ger en <tt>secondary</tt> koordinat. <ul><li><tt>koordprimary = </tt> dito, men för bestämningar.</li></ul></li></ul> <ul><li><tt>nogeodataparser = </tt> väljer bort <a href="https://www.mediawiki.org/wiki/Extension:GeoData" class="extiw" title="mw:Extension:GeoData">mw:Extension:GeoData</a> helt och hållet. Kan vara lämpligt i en test- eller projektsida.</li></ul> <ul><li><tt>convertunit = </tt> Ger matematisk konvertering av en enhet till en annan (exv cm -> km). Ange ett qid för den data du vill konvertera till! Data som inte går att konvertera hamnar i <a href="https://www.wikidata.org/wiki/P%C3%A5st%C3%A5enden_som_inte_g%C3%A5r_att_konvertera" class="extiw" title="wikidata:Påståenden som inte går att konvertera">Wikidata:Påståenden som inte går att konvertera</a>.</li> <li><tt>vardesiffror = </tt> När det saknas uppgift om precision i datan från WD, görs konverteringen med detta antal värdesiffror. Default = 3.</li> <li><tt>withoutunit = </tt> Skriver inte ut enheten. Fungerar både med och utan konvertering.</li> <li><tt>noformatera = </tt> Ger ingen formatering av siffrorna. De kommer ut råa, utan tusenavgränsare och med decimalpunkt isf komma.</li> <li><tt>norounding = </tt> Skippa avrundning av värden även om de har upperBound och lowerBound som annars medför avrundning.</li></ul> <ul><li><tt>redlink= </tt> Gör att objekt som inte är kopplade till svenska Wikipedia <i>och</i> som har etikett på svenska blir röda länkar. Om etiketten redan finns som uppslagsord läggs objektets Wikidata-ID (Q-numret) till som särskiljare.</li> <li><tt>relevantred= </tt> Som "redlink", fast en koll görs för att se om objektet är kopplat till något annat Wikimediaprojekt. Har objektet inga länkar alls till andra Wikimediaprojekt lämnas det olänkat. Denna kan användas i uppräkningar där vissa saker kan vara relevanta, medan andra inte är det. Denna variant drar lite mer resurser, så "redlink" är att föredra om man misstänker att egenskapen i regel ska länka allt.</li></ul> <div class="mw-heading mw-heading2"><h2 id="Övriga_funktioner"><span id=".C3.96vriga_funktioner"></span>Övriga funktioner</h2></div> <ul><li><tt>getEntityIdForCurrentPage</tt> - returnerar "id" (Q-numret) för den sida som anropet sker från.</li> <li><tt>getcoord</tt> - returnerar latitud eller longitud för angivet objekts (qid) <a href="https://www.wikidata.org/wiki/Special:EntityPage/P625" class="extiw" title="d:Special:EntityPage/P625">geografiska koordinater <small>(P625)</small></a>. <br />Anrop: <code>{{#invoke:Wikidata2|getcoord|qid=<qid>|what=<lat|long>}}</code></li> <li><tt>getcoordfromproperty</tt> - returnerar longitud eller latitud för en bestämning <a href="https://www.wikidata.org/wiki/Special:EntityPage/P625" class="extiw" title="d:Special:EntityPage/P625">geografiska koordinater <small>(P625)</small></a> för en egenskap för ett angivet objekt. <br />Anrop: <code>{{#invoke:Wikidata2|getcoordfromproperty|qid=<qid>|property=<property>|what=<lat|long>}}</code></li> <li><tt>averagepropertyvalue></tt> - returnerar medelvärdet av egenskap Pzzz för alla objekt Pyyy där Pyyy nås via en kedja av properties från huvudobjektet <qid> via Pwww, Pxxx och så vidare där endast det första värdet/objektet på varje nivå beaktas. Ingen hänsyn tas till påståendenas rang.<br />Anrop: <code>{{#invoke:Wikidata2|averagepropertyvalue|qid=<qid>|property=<Pwww/Pxxx/.../Pyyy/Pzzz>|avoidqualifier=<avoidqualifier>|what=<lat|long>}}</code>. Parametern <i>avoidqualifier</i> kan användas för att utesluta värden på Pzzz med angiven bestämning. Pzzz måste ha datatypen "quantity" eller "globe-coordinate". Parametern <i>what</i> används endast om Pzzz har typen "globe-coordinate".</li></ul> </div><div class="mw-highlight mw-highlight-lang-lua mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span id="L-1"><a href="#L-1"><span class="linenos" data-line="1"></span></a><span class="c1">-- Den ordning fallback language hämtas, om svensk label saknas. Engelska först, därefter bokmål, danska, etc...</span> </span><span id="L-2"><a href="#L-2"><span class="linenos" data-line="2"></span></a><span class="kd">local</span> <span class="n">fallback</span> <span class="o">=</span> <span class="p">{</span><span class="s1">'nb'</span><span class="p">,</span> <span class="s1">'da'</span><span class="p">,</span> <span class="s1">'mul'</span><span class="p">,</span> <span class="s1">'en'</span><span class="p">,</span> <span class="s1">'nn'</span><span class="p">,</span> <span class="s1">'de'</span><span class="p">,</span> <span class="s1">'fr'</span><span class="p">,</span> <span class="s1">'es'</span><span class="p">,</span> <span class="s1">'nl'</span><span class="p">,</span> <span class="s1">'it'</span><span class="p">,</span> <span class="s1">'pt'</span><span class="p">,</span> <span class="s1">'fi'</span><span class="p">,</span> <span class="s1">'pl'</span><span class="p">,</span> <span class="s1">'cs'</span><span class="p">,</span> <span class="s1">'sk'</span><span class="p">,</span> <span class="s1">'sl'</span><span class="p">,</span> <span class="s1">'hu'</span><span class="p">}</span> </span><span id="L-3"><a href="#L-3"><span class="linenos" data-line="3"></span></a><span class="kd">local</span> <span class="n">fallbackprio</span> <span class="o">=</span> <span class="p">{</span> <span class="p">[</span><span class="s1">'sv'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">100</span><span class="p">,</span> <span class="p">[</span><span class="s1">'nb'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">99</span><span class="p">,</span> <span class="p">[</span><span class="s1">'da'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">98</span><span class="p">,</span> <span class="p">[</span><span class="s1">'mul'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">91</span><span class="p">,</span> <span class="p">[</span><span class="s1">'en'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">90</span><span class="p">,</span> <span class="p">[</span><span class="s1">'nn'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">89</span><span class="p">,</span> <span class="p">[</span><span class="s1">'de'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">80</span><span class="p">,</span> <span class="p">[</span><span class="s1">'fr'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">79</span><span class="p">,</span> <span class="p">[</span><span class="s1">'es'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">78</span><span class="p">,</span> <span class="p">[</span><span class="s1">'nl'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">77</span><span class="p">,</span> <span class="p">[</span><span class="s1">'it'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">76</span><span class="p">,</span> <span class="p">[</span><span class="s1">'pt'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">75</span><span class="p">,</span> <span class="p">[</span><span class="s1">'fi'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">50</span><span class="p">,</span> <span class="p">[</span><span class="s1">'pl'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">20</span><span class="p">,</span> <span class="p">[</span><span class="s1">'cs'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">19</span><span class="p">,</span> <span class="p">[</span><span class="s1">'sk'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">18</span><span class="p">,</span> <span class="p">[</span><span class="s1">'sl'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">17</span><span class="p">,</span> <span class="p">[</span><span class="s1">'hu'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">10</span><span class="p">}</span> </span><span id="L-4"><a href="#L-4"><span class="linenos" data-line="4"></span></a><span class="kd">local</span> <span class="n">redundanta</span> <span class="o">=</span> <span class="p">{</span><span class="s1">'viaf.org/viaf/'</span><span class="p">,</span> <span class="s1">'portal.dnb.de/'</span><span class="p">,</span> <span class="s1">'www.nndb.com/'</span><span class="p">,</span> <span class="s1">'catalogue.bnf.fr/ark'</span><span class="p">,</span> <span class="s1">'Gemeinsame Normdatei'</span><span class="p">,</span> <span class="s1">'Freebase Data Dumps'</span><span class="p">}</span> </span><span id="L-5"><a href="#L-5"><span class="linenos" data-line="5"></span></a><span class="kd">local</span> <span class="n">formatera</span> <span class="o">=</span> <span class="nb">require</span><span class="p">(</span><span class="s1">'Modul:Math'</span><span class="p">)</span> </span><span id="L-6"><a href="#L-6"><span class="linenos" data-line="6"></span></a><span class="kd">local</span> <span class="n">i18n</span> <span class="o">=</span> <span class="p">{</span> </span><span id="L-7"><a href="#L-7"><span class="linenos" data-line="7"></span></a> <span class="p">[</span><span class="s2">"errors"</span><span class="p">]</span> <span class="o">=</span> <span class="p">{</span> </span><span id="L-8"><a href="#L-8"><span class="linenos" data-line="8"></span></a> <span class="p">[</span><span class="s2">"property-param-not-provided"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"Property parameter not provided."</span><span class="p">,</span> </span><span id="L-9"><a href="#L-9"><span class="linenos" data-line="9"></span></a> <span class="p">[</span><span class="s2">"entity-not-found"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"Entity not found."</span><span class="p">,</span> </span><span id="L-10"><a href="#L-10"><span class="linenos" data-line="10"></span></a> <span class="p">[</span><span class="s2">"unknown-claim-type"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"Unknown claim type."</span><span class="p">,</span> </span><span id="L-11"><a href="#L-11"><span class="linenos" data-line="11"></span></a> <span class="p">[</span><span class="s2">"unknown-snak-type"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"Unknown snak type."</span><span class="p">,</span> </span><span id="L-12"><a href="#L-12"><span class="linenos" data-line="12"></span></a> <span class="p">[</span><span class="s2">"unknown-datatype"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"Unknown datatype."</span><span class="p">,</span> </span><span id="L-13"><a href="#L-13"><span class="linenos" data-line="13"></span></a> <span class="p">[</span><span class="s2">"unknown-entity-type"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"Unknown entity type."</span><span class="p">,</span> </span><span id="L-14"><a href="#L-14"><span class="linenos" data-line="14"></span></a> <span class="p">[</span><span class="s2">"unknown-value-module"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"You must set both value-module and value-function parameters."</span><span class="p">,</span> </span><span id="L-15"><a href="#L-15"><span class="linenos" data-line="15"></span></a> <span class="p">[</span><span class="s2">"value-module-not-found"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"The module pointed by value-module not found."</span><span class="p">,</span> </span><span id="L-16"><a href="#L-16"><span class="linenos" data-line="16"></span></a> <span class="p">[</span><span class="s2">"value-function-not-found"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"The function pointed by value-function not found."</span><span class="p">,</span> </span><span id="L-17"><a href="#L-17"><span class="linenos" data-line="17"></span></a> <span class="p">[</span><span class="s2">"non-convertible unit"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"Denna enhet går inte att konvertera till den önskade"</span><span class="p">,</span> </span><span id="L-18"><a href="#L-18"><span class="linenos" data-line="18"></span></a> <span class="p">[</span><span class="s2">"invalid-id"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"Ogiltigt id"</span><span class="p">,</span> </span><span id="L-19"><a href="#L-19"><span class="linenos" data-line="19"></span></a> <span class="p">[</span><span class="s2">"no-label"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"Etikett saknas"</span> </span><span id="L-20"><a href="#L-20"><span class="linenos" data-line="20"></span></a> <span class="p">},</span> </span><span id="L-21"><a href="#L-21"><span class="linenos" data-line="21"></span></a> <span class="p">[</span><span class="s2">"somevalue"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"''unknown value''"</span><span class="p">,</span> </span><span id="L-22"><a href="#L-22"><span class="linenos" data-line="22"></span></a> <span class="p">[</span><span class="s2">"novalue"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"''no value''"</span> </span><span id="L-23"><a href="#L-23"><span class="linenos" data-line="23"></span></a><span class="p">}</span> </span><span id="L-24"><a href="#L-24"><span class="linenos" data-line="24"></span></a><span class="kd">local</span> <span class="n">sortingproperties</span> <span class="o">=</span> <span class="p">{</span><span class="s1">'P585'</span><span class="p">,</span><span class="s1">'P571'</span><span class="p">,</span><span class="s1">'P580'</span><span class="p">,</span><span class="s1">'P569'</span><span class="p">,</span><span class="s1">'P582'</span><span class="p">,</span><span class="s1">'P570'</span><span class="p">}</span> </span><span id="L-25"><a href="#L-25"><span class="linenos" data-line="25"></span></a> </span><span id="L-26"><a href="#L-26"><span class="linenos" data-line="26"></span></a><span class="kr">function</span> <span class="nf">namefordate</span><span class="p">(</span><span class="n">options</span><span class="p">)</span> </span><span id="L-27"><a href="#L-27"><span class="linenos" data-line="27"></span></a> <span class="kd">local</span> <span class="n">entity</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">entityId</span> <span class="ow">or</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityIdForCurrentPage</span><span class="p">()</span> </span><span id="L-28"><a href="#L-28"><span class="linenos" data-line="28"></span></a> <span class="kr">if</span> <span class="n">entity</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> <span class="kr">return</span> <span class="kc">nil</span> <span class="kr">end</span> </span><span id="L-29"><a href="#L-29"><span class="linenos" data-line="29"></span></a> <span class="n">theobject</span> <span class="o">=</span> <span class="n">getEntityFromId</span><span class="p">(</span><span class="n">entity</span><span class="p">)</span> </span><span id="L-30"><a href="#L-30"><span class="linenos" data-line="30"></span></a> <span class="kr">if</span> <span class="n">theobject</span> <span class="o">==</span> <span class="kc">nil</span> <span class="ow">or</span> <span class="n">theobject</span> <span class="o">==</span> <span class="s1">''</span> <span class="ow">or</span> <span class="n">theobject</span><span class="p">.</span><span class="n">claims</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> <span class="kr">return</span> <span class="kc">nil</span> <span class="kr">end</span> </span><span id="L-31"><a href="#L-31"><span class="linenos" data-line="31"></span></a> <span class="n">thetime</span> <span class="o">=</span> <span class="n">theobject</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">labelfromnameproperty</span><span class="p">]</span> </span><span id="L-32"><a href="#L-32"><span class="linenos" data-line="32"></span></a> <span class="kr">if</span> <span class="n">thetime</span> <span class="o">==</span> <span class="kc">nil</span> <span class="ow">or</span> <span class="n">thetime</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> <span class="kr">return</span> <span class="kc">nil</span> <span class="kr">end</span> </span><span id="L-33"><a href="#L-33"><span class="linenos" data-line="33"></span></a> <span class="kr">if</span> <span class="n">thetime</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> <span class="kr">return</span> <span class="kc">nil</span> <span class="kr">end</span> </span><span id="L-34"><a href="#L-34"><span class="linenos" data-line="34"></span></a> <span class="kr">if</span> <span class="n">thetime</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">snaktype</span> <span class="o">~=</span> <span class="s1">'value'</span> <span class="kr">then</span> <span class="kr">return</span> <span class="kc">nil</span> <span class="kr">end</span> </span><span id="L-35"><a href="#L-35"><span class="linenos" data-line="35"></span></a> <span class="n">tiden</span> <span class="o">=</span> <span class="nb">string.match</span><span class="p">(</span><span class="n">thetime</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span><span class="p">,</span><span class="s1">'%d+%-%d+%-%d+'</span><span class="p">)</span> </span><span id="L-36"><a href="#L-36"><span class="linenos" data-line="36"></span></a> <span class="kr">if</span> <span class="n">theobject</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">]</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> <span class="kr">return</span> <span class="kc">nil</span> <span class="kr">end</span> </span><span id="L-37"><a href="#L-37"><span class="linenos" data-line="37"></span></a> <span class="n">allnamesobject</span> <span class="o">=</span> <span class="kc">nil</span> </span><span id="L-38"><a href="#L-38"><span class="linenos" data-line="38"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span><span class="n">k</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">theobject</span><span class="p">[</span><span class="s2">"claims"</span><span class="p">][</span><span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">])</span> <span class="kr">do</span> </span><span id="L-39"><a href="#L-39"><span class="linenos" data-line="39"></span></a> <span class="kr">if</span> <span class="n">theobject</span><span class="p">[</span><span class="s2">"claims"</span><span class="p">][</span><span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">][</span><span class="n">i</span><span class="p">].</span><span class="n">rank</span><span class="o">~=</span><span class="s1">'deprecated'</span> <span class="ow">and</span> <span class="n">theobject</span><span class="p">[</span><span class="s2">"claims"</span><span class="p">][</span><span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">][</span><span class="n">i</span><span class="p">].</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">snaktype</span> <span class="o">==</span> <span class="s2">"value"</span> <span class="kr">then</span> </span><span id="L-40"><a href="#L-40"><span class="linenos" data-line="40"></span></a> <span class="n">allnamesobject</span> <span class="o">=</span> <span class="n">getEntityFromId</span><span class="p">(</span><span class="n">theobject</span><span class="p">[</span><span class="s2">"claims"</span><span class="p">][</span><span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">][</span><span class="n">i</span><span class="p">][</span><span class="s2">"mainsnak"</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">id</span><span class="p">)</span> </span><span id="L-41"><a href="#L-41"><span class="linenos" data-line="41"></span></a> <span class="kr">end</span> </span><span id="L-42"><a href="#L-42"><span class="linenos" data-line="42"></span></a> <span class="kr">if</span> <span class="n">rank</span><span class="o">==</span><span class="s1">'preferred'</span> <span class="kr">then</span> </span><span id="L-43"><a href="#L-43"><span class="linenos" data-line="43"></span></a> <span class="kr">break</span> </span><span id="L-44"><a href="#L-44"><span class="linenos" data-line="44"></span></a> <span class="kr">end</span> </span><span id="L-45"><a href="#L-45"><span class="linenos" data-line="45"></span></a> <span class="kr">end</span> </span><span id="L-46"><a href="#L-46"><span class="linenos" data-line="46"></span></a> <span class="kr">if</span> <span class="n">allnamesobject</span> <span class="o">==</span> <span class="kc">nil</span> <span class="ow">or</span> <span class="n">allnamesobject</span> <span class="o">==</span> <span class="p">{}</span> <span class="kr">then</span> <span class="kr">return</span> <span class="kc">nil</span> <span class="kr">end</span> </span><span id="L-47"><a href="#L-47"><span class="linenos" data-line="47"></span></a> <span class="kr">if</span> <span class="n">allnamesobject</span><span class="p">.</span><span class="n">claims</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> <span class="kr">return</span> <span class="kc">nil</span> <span class="kr">end</span> </span><span id="L-48"><a href="#L-48"><span class="linenos" data-line="48"></span></a> <span class="n">allnames</span><span class="o">=</span><span class="n">allnamesobject</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="s1">'P2561'</span><span class="p">]</span> </span><span id="L-49"><a href="#L-49"><span class="linenos" data-line="49"></span></a> <span class="kr">if</span> <span class="n">allnames</span> <span class="o">==</span> <span class="kc">nil</span> <span class="ow">or</span> <span class="n">allnames</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> <span class="kr">return</span> <span class="kc">nil</span> <span class="kr">end</span> </span><span id="L-50"><a href="#L-50"><span class="linenos" data-line="50"></span></a> <span class="n">found</span> <span class="o">=</span> <span class="kc">nil</span> </span><span id="L-51"><a href="#L-51"><span class="linenos" data-line="51"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span><span class="n">k</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">allnames</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-52"><a href="#L-52"><span class="linenos" data-line="52"></span></a> <span class="n">lang</span> <span class="o">=</span> <span class="n">k</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">language</span> </span><span id="L-53"><a href="#L-53"><span class="linenos" data-line="53"></span></a> <span class="kr">if</span> <span class="n">k</span><span class="p">.</span><span class="n">qualifiers</span> <span class="kr">then</span> </span><span id="L-54"><a href="#L-54"><span class="linenos" data-line="54"></span></a> <span class="n">fromdate</span> <span class="o">=</span> <span class="kc">nil</span> </span><span id="L-55"><a href="#L-55"><span class="linenos" data-line="55"></span></a> <span class="n">p580</span> <span class="o">=</span> <span class="n">k</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="s1">'P580'</span><span class="p">]</span> </span><span id="L-56"><a href="#L-56"><span class="linenos" data-line="56"></span></a> <span class="kr">if</span> <span class="n">p580</span> <span class="o">~=</span> <span class="kc">nil</span> <span class="ow">and</span> <span class="n">p580</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">snaktype</span> <span class="o">==</span> <span class="s2">"value"</span> <span class="kr">then</span> <span class="n">fromdate</span> <span class="o">=</span> <span class="nb">string.match</span><span class="p">(</span><span class="n">p580</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span><span class="p">,</span><span class="s1">'%d+%-%d+%-%d+'</span><span class="p">)</span> <span class="kr">end</span> </span><span id="L-57"><a href="#L-57"><span class="linenos" data-line="57"></span></a> <span class="n">todate</span> <span class="o">=</span> <span class="kc">nil</span> </span><span id="L-58"><a href="#L-58"><span class="linenos" data-line="58"></span></a> <span class="n">p582</span> <span class="o">=</span> <span class="n">k</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="s1">'P582'</span><span class="p">]</span> </span><span id="L-59"><a href="#L-59"><span class="linenos" data-line="59"></span></a> <span class="kr">if</span> <span class="n">p582</span> <span class="o">~=</span> <span class="kc">nil</span> <span class="ow">and</span> <span class="n">p582</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">snaktype</span> <span class="o">==</span> <span class="s2">"value"</span> <span class="kr">then</span> <span class="n">todate</span> <span class="o">=</span> <span class="nb">string.match</span><span class="p">(</span><span class="n">p582</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span><span class="p">,</span><span class="s1">'%d+%-%d+%-%d+'</span><span class="p">)</span> <span class="kr">end</span> </span><span id="L-60"><a href="#L-60"><span class="linenos" data-line="60"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="p">((</span><span class="n">fromdate</span> <span class="ow">and</span> <span class="n">fromdate</span><span class="o">></span><span class="n">tiden</span><span class="p">)</span> <span class="ow">or</span> <span class="p">(</span><span class="n">p580</span> <span class="ow">and</span> <span class="n">p580</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">snaktype</span> <span class="o">~=</span> <span class="s2">"value"</span><span class="p">)</span> <span class="ow">or</span> <span class="p">(</span><span class="n">todate</span> <span class="ow">and</span> <span class="n">todate</span><span class="o"><</span><span class="n">tiden</span><span class="p">)</span> <span class="ow">or</span> <span class="p">(</span><span class="n">p582</span> <span class="ow">and</span> <span class="n">p582</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">snaktype</span> <span class="o">~=</span> <span class="s2">"value"</span><span class="p">))</span> <span class="kr">then</span> </span><span id="L-61"><a href="#L-61"><span class="linenos" data-line="61"></span></a> <span class="kr">if</span> <span class="n">lang</span> <span class="o">==</span> <span class="s1">'sv'</span> <span class="ow">or</span> <span class="n">lang</span> <span class="o">==</span> <span class="s1">'mul'</span> <span class="ow">or</span> <span class="n">lang</span> <span class="o">==</span> <span class="s1">'en'</span> <span class="kr">then</span> </span><span id="L-62"><a href="#L-62"><span class="linenos" data-line="62"></span></a> <span class="n">found</span> <span class="o">=</span> <span class="n">k</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">text</span> </span><span id="L-63"><a href="#L-63"><span class="linenos" data-line="63"></span></a> <span class="kr">end</span> </span><span id="L-64"><a href="#L-64"><span class="linenos" data-line="64"></span></a> <span class="kr">end</span> </span><span id="L-65"><a href="#L-65"><span class="linenos" data-line="65"></span></a> <span class="kr">end</span> </span><span id="L-66"><a href="#L-66"><span class="linenos" data-line="66"></span></a> <span class="kr">end</span> </span><span id="L-67"><a href="#L-67"><span class="linenos" data-line="67"></span></a> <span class="kr">return</span> <span class="n">found</span> </span><span id="L-68"><a href="#L-68"><span class="linenos" data-line="68"></span></a><span class="kr">end</span> </span><span id="L-69"><a href="#L-69"><span class="linenos" data-line="69"></span></a> </span><span id="L-70"><a href="#L-70"><span class="linenos" data-line="70"></span></a><span class="kr">function</span> <span class="nf">unithandle</span><span class="p">(</span><span class="n">unit</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-71"><a href="#L-71"><span class="linenos" data-line="71"></span></a> <span class="c1">-- Kontrollerar om det finns någon förkortning för denna 'unit'</span> </span><span id="L-72"><a href="#L-72"><span class="linenos" data-line="72"></span></a> <span class="kd">local</span> <span class="n">lab</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">label</span> <span class="ow">or</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s1">'P498'</span><span class="p">,</span> <span class="n">entityId</span> <span class="o">=</span> <span class="n">unit</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">})</span> </span><span id="L-73"><a href="#L-73"><span class="linenos" data-line="73"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">lab</span> <span class="ow">or</span> <span class="n">lab</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-74"><a href="#L-74"><span class="linenos" data-line="74"></span></a> <span class="n">lab</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s1">'P558'</span><span class="p">,</span> <span class="n">entityId</span> <span class="o">=</span> <span class="n">unit</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">langpref</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">langpref</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">})</span> </span><span id="L-75"><a href="#L-75"><span class="linenos" data-line="75"></span></a> <span class="kr">end</span> </span><span id="L-76"><a href="#L-76"><span class="linenos" data-line="76"></span></a> <span class="kr">if</span> <span class="n">lab</span> <span class="ow">and</span> <span class="p">(</span> <span class="ow">not</span> <span class="n">options</span><span class="p">.</span><span class="n">nounitshort</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">nounitshort</span> <span class="o">==</span> <span class="s1">''</span> <span class="p">)</span> <span class="kr">then</span> </span><span id="L-77"><a href="#L-77"><span class="linenos" data-line="77"></span></a> <span class="kr">return</span> <span class="n">formatEntityId</span><span class="p">(</span> <span class="n">unit</span><span class="p">,</span> <span class="p">{</span><span class="n">label</span> <span class="o">=</span> <span class="n">lab</span><span class="p">,</span> <span class="n">nolink</span> <span class="o">=</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">nounitlink</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">nolink</span><span class="p">)</span> <span class="p">}).</span><span class="n">value</span> </span><span id="L-78"><a href="#L-78"><span class="linenos" data-line="78"></span></a> <span class="kr">else</span> <span class="c1">-- om det inte finns en förkortning</span> </span><span id="L-79"><a href="#L-79"><span class="linenos" data-line="79"></span></a> <span class="kr">return</span> <span class="n">formatEntityId</span><span class="p">(</span> <span class="n">unit</span><span class="p">,</span> <span class="p">{</span><span class="n">nolink</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">nounitlink</span><span class="p">}).</span><span class="n">value</span> </span><span id="L-80"><a href="#L-80"><span class="linenos" data-line="80"></span></a> <span class="kr">end</span> </span><span id="L-81"><a href="#L-81"><span class="linenos" data-line="81"></span></a><span class="kr">end</span> </span><span id="L-82"><a href="#L-82"><span class="linenos" data-line="82"></span></a> </span><span id="L-83"><a href="#L-83"><span class="linenos" data-line="83"></span></a><span class="kr">function</span> <span class="nf">multiplikation</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="p">,</span> <span class="n">typ</span><span class="p">)</span> </span><span id="L-84"><a href="#L-84"><span class="linenos" data-line="84"></span></a> <span class="kd">local</span> <span class="n">r</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-85"><a href="#L-85"><span class="linenos" data-line="85"></span></a> <span class="kr">if</span> <span class="n">typ</span> <span class="o">==</span> <span class="s1">'*'</span> <span class="kr">then</span> </span><span id="L-86"><a href="#L-86"><span class="linenos" data-line="86"></span></a> <span class="n">r</span><span class="p">.</span><span class="n">amount</span> <span class="o">=</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">amount</span><span class="p">)</span> <span class="o">*</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">b</span><span class="p">.</span><span class="n">amount</span><span class="p">)</span> </span><span id="L-87"><a href="#L-87"><span class="linenos" data-line="87"></span></a> <span class="kr">if</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">upperBound</span><span class="p">)</span> <span class="ow">and</span> <span class="n">a</span><span class="p">.</span><span class="n">upperBound</span> <span class="ow">and</span> <span class="n">b</span><span class="p">.</span><span class="n">upperBound</span> <span class="kr">then</span> </span><span id="L-88"><a href="#L-88"><span class="linenos" data-line="88"></span></a> <span class="n">r</span><span class="p">.</span><span class="n">upperBound</span> <span class="o">=</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">upperBound</span><span class="p">)</span> <span class="o">*</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">b</span><span class="p">.</span><span class="n">upperBound</span><span class="p">)</span> </span><span id="L-89"><a href="#L-89"><span class="linenos" data-line="89"></span></a> <span class="kr">end</span> </span><span id="L-90"><a href="#L-90"><span class="linenos" data-line="90"></span></a> <span class="kr">if</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">lowerBound</span><span class="p">)</span> <span class="ow">and</span> <span class="n">a</span><span class="p">.</span><span class="n">lowerBound</span> <span class="ow">and</span> <span class="n">b</span><span class="p">.</span><span class="n">lowerBound</span> <span class="kr">then</span> </span><span id="L-91"><a href="#L-91"><span class="linenos" data-line="91"></span></a> <span class="n">r</span><span class="p">.</span><span class="n">lowerBound</span> <span class="o">=</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">lowerBound</span><span class="p">)</span> <span class="o">*</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">b</span><span class="p">.</span><span class="n">lowerBound</span><span class="p">)</span> </span><span id="L-92"><a href="#L-92"><span class="linenos" data-line="92"></span></a> <span class="kr">end</span> </span><span id="L-93"><a href="#L-93"><span class="linenos" data-line="93"></span></a> <span class="kr">elseif</span> <span class="n">typ</span> <span class="o">==</span> <span class="s1">'/'</span> <span class="kr">then</span> </span><span id="L-94"><a href="#L-94"><span class="linenos" data-line="94"></span></a> <span class="kr">if</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">b</span><span class="p">.</span><span class="n">amount</span><span class="p">)</span> <span class="ow">and</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">b</span><span class="p">.</span><span class="n">amount</span><span class="p">)</span> <span class="o">~=</span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-95"><a href="#L-95"><span class="linenos" data-line="95"></span></a> <span class="n">r</span><span class="p">.</span><span class="n">amount</span> <span class="o">=</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">amount</span><span class="p">)</span> <span class="o">/</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">b</span><span class="p">.</span><span class="n">amount</span><span class="p">)</span> </span><span id="L-96"><a href="#L-96"><span class="linenos" data-line="96"></span></a> <span class="kr">end</span> </span><span id="L-97"><a href="#L-97"><span class="linenos" data-line="97"></span></a> <span class="kr">if</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">upperBound</span><span class="p">)</span> <span class="ow">and</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">b</span><span class="p">.</span><span class="n">lowerBound</span><span class="p">)</span> <span class="ow">and</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">b</span><span class="p">.</span><span class="n">lowerBound</span><span class="p">)</span> <span class="o">~=</span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-98"><a href="#L-98"><span class="linenos" data-line="98"></span></a> <span class="n">r</span><span class="p">.</span><span class="n">upperBound</span> <span class="o">=</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">upperBound</span><span class="p">)</span> <span class="o">/</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">b</span><span class="p">.</span><span class="n">lowerBound</span><span class="p">)</span> </span><span id="L-99"><a href="#L-99"><span class="linenos" data-line="99"></span></a> <span class="kr">end</span> </span><span id="L-100"><a href="#L-100"><span class="linenos" data-line="100"></span></a> <span class="kr">if</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">lowerBound</span><span class="p">)</span> <span class="ow">and</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">b</span><span class="p">.</span><span class="n">upperBound</span><span class="p">)</span> <span class="ow">and</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">b</span><span class="p">.</span><span class="n">upperBound</span><span class="p">)</span> <span class="o">~=</span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-101"><a href="#L-101"><span class="linenos" data-line="101"></span></a> <span class="n">r</span><span class="p">.</span><span class="n">lowerBound</span> <span class="o">=</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">lowerBound</span><span class="p">)</span> <span class="o">/</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">b</span><span class="p">.</span><span class="n">upperBound</span><span class="p">)</span> </span><span id="L-102"><a href="#L-102"><span class="linenos" data-line="102"></span></a> <span class="kr">end</span> </span><span id="L-103"><a href="#L-103"><span class="linenos" data-line="103"></span></a> <span class="kr">end</span> </span><span id="L-104"><a href="#L-104"><span class="linenos" data-line="104"></span></a> <span class="kr">if</span> <span class="n">r</span><span class="p">.</span><span class="n">lowerBound</span> <span class="ow">and</span> <span class="n">r</span><span class="p">.</span><span class="n">upperBound</span> <span class="ow">and</span> <span class="n">r</span><span class="p">.</span><span class="n">lowerBound</span> <span class="o">></span> <span class="n">r</span><span class="p">.</span><span class="n">upperBound</span> <span class="kr">then</span> </span><span id="L-105"><a href="#L-105"><span class="linenos" data-line="105"></span></a> <span class="kd">local</span> <span class="n">slask</span> <span class="o">=</span> <span class="n">r</span><span class="p">.</span><span class="n">lowerBound</span> </span><span id="L-106"><a href="#L-106"><span class="linenos" data-line="106"></span></a> <span class="n">r</span><span class="p">.</span><span class="n">lowerBound</span> <span class="o">=</span> <span class="n">r</span><span class="p">.</span><span class="n">upperBound</span> </span><span id="L-107"><a href="#L-107"><span class="linenos" data-line="107"></span></a> <span class="n">r</span><span class="p">.</span><span class="n">upperBound</span> <span class="o">=</span> <span class="n">slask</span> </span><span id="L-108"><a href="#L-108"><span class="linenos" data-line="108"></span></a> <span class="kr">end</span> </span><span id="L-109"><a href="#L-109"><span class="linenos" data-line="109"></span></a> <span class="kr">return</span> <span class="n">r</span> </span><span id="L-110"><a href="#L-110"><span class="linenos" data-line="110"></span></a><span class="kr">end</span> </span><span id="L-111"><a href="#L-111"><span class="linenos" data-line="111"></span></a> </span><span id="L-112"><a href="#L-112"><span class="linenos" data-line="112"></span></a><span class="kr">function</span> <span class="nf">fallbackigen</span><span class="p">(</span><span class="n">options</span><span class="p">,</span> <span class="n">alternativ</span><span class="p">)</span> </span><span id="L-113"><a href="#L-113"><span class="linenos" data-line="113"></span></a> <span class="kr">if</span> <span class="n">alternativ</span> <span class="ow">and</span> <span class="n">alternativ</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-114"><a href="#L-114"><span class="linenos" data-line="114"></span></a> <span class="kr">return</span> <span class="n">alternativ</span> </span><span id="L-115"><a href="#L-115"><span class="linenos" data-line="115"></span></a> <span class="kr">end</span> </span><span id="L-116"><a href="#L-116"><span class="linenos" data-line="116"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">entity</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">entity</span><span class="p">.</span><span class="n">labels</span> <span class="kr">then</span> </span><span id="L-117"><a href="#L-117"><span class="linenos" data-line="117"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">.</span><span class="n">sv</span> <span class="kr">then</span> </span><span id="L-118"><a href="#L-118"><span class="linenos" data-line="118"></span></a> <span class="kr">return</span> <span class="n">options</span><span class="p">.</span><span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">.</span><span class="n">sv</span><span class="p">.</span><span class="n">value</span> </span><span id="L-119"><a href="#L-119"><span class="linenos" data-line="119"></span></a> <span class="kr">else</span> </span><span id="L-120"><a href="#L-120"><span class="linenos" data-line="120"></span></a> <span class="kr">for</span> <span class="n">k</span><span class="p">,</span> <span class="n">v</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">fallback</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-121"><a href="#L-121"><span class="linenos" data-line="121"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">[</span><span class="n">v</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-122"><a href="#L-122"><span class="linenos" data-line="122"></span></a> <span class="kr">return</span> <span class="n">options</span><span class="p">.</span><span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">[</span><span class="n">v</span><span class="p">].</span><span class="n">value</span> </span><span id="L-123"><a href="#L-123"><span class="linenos" data-line="123"></span></a> <span class="kr">end</span> </span><span id="L-124"><a href="#L-124"><span class="linenos" data-line="124"></span></a> <span class="kr">end</span> </span><span id="L-125"><a href="#L-125"><span class="linenos" data-line="125"></span></a> <span class="kr">end</span> </span><span id="L-126"><a href="#L-126"><span class="linenos" data-line="126"></span></a> <span class="kr">for</span> <span class="n">v</span><span class="p">,</span> <span class="n">k</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-127"><a href="#L-127"><span class="linenos" data-line="127"></span></a> <span class="kr">return</span> <span class="n">k</span><span class="p">.</span><span class="n">value</span> </span><span id="L-128"><a href="#L-128"><span class="linenos" data-line="128"></span></a> <span class="kr">end</span> </span><span id="L-129"><a href="#L-129"><span class="linenos" data-line="129"></span></a> <span class="kr">end</span> </span><span id="L-130"><a href="#L-130"><span class="linenos" data-line="130"></span></a> <span class="kr">return</span> <span class="n">mw</span><span class="p">.</span><span class="n">title</span><span class="p">.</span><span class="n">getCurrentTitle</span><span class="p">().</span><span class="n">text</span> </span><span id="L-131"><a href="#L-131"><span class="linenos" data-line="131"></span></a><span class="kr">end</span> </span><span id="L-132"><a href="#L-132"><span class="linenos" data-line="132"></span></a> </span><span id="L-133"><a href="#L-133"><span class="linenos" data-line="133"></span></a><span class="kr">function</span> <span class="nf">regionaux</span><span class="p">(</span><span class="n">entity</span><span class="p">)</span> </span><span id="L-134"><a href="#L-134"><span class="linenos" data-line="134"></span></a> <span class="kd">local</span> <span class="n">w</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s1">'P297'</span><span class="p">,</span> <span class="n">entity</span> <span class="o">=</span> <span class="n">entity</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">raw</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">})</span> </span><span id="L-135"><a href="#L-135"><span class="linenos" data-line="135"></span></a> <span class="kr">if</span> <span class="n">w</span> <span class="ow">and</span> <span class="o">#</span><span class="n">w</span> <span class="o">></span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-136"><a href="#L-136"><span class="linenos" data-line="136"></span></a> <span class="kr">return</span> <span class="n">w</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">value</span> </span><span id="L-137"><a href="#L-137"><span class="linenos" data-line="137"></span></a> <span class="kr">end</span> </span><span id="L-138"><a href="#L-138"><span class="linenos" data-line="138"></span></a> <span class="n">w</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s1">'P300'</span><span class="p">,</span> <span class="n">entity</span> <span class="o">=</span> <span class="n">entity</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">raw</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">})</span> </span><span id="L-139"><a href="#L-139"><span class="linenos" data-line="139"></span></a> <span class="kr">if</span> <span class="n">w</span> <span class="ow">and</span> <span class="o">#</span><span class="n">w</span> <span class="o">></span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-140"><a href="#L-140"><span class="linenos" data-line="140"></span></a> <span class="kr">return</span> <span class="n">w</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">value</span> </span><span id="L-141"><a href="#L-141"><span class="linenos" data-line="141"></span></a> <span class="kr">end</span> </span><span id="L-142"><a href="#L-142"><span class="linenos" data-line="142"></span></a><span class="kr">end</span> </span><span id="L-143"><a href="#L-143"><span class="linenos" data-line="143"></span></a> </span><span id="L-144"><a href="#L-144"><span class="linenos" data-line="144"></span></a><span class="kr">function</span> <span class="nf">regionaux2</span><span class="p">(</span><span class="n">entity</span><span class="p">)</span> </span><span id="L-145"><a href="#L-145"><span class="linenos" data-line="145"></span></a> <span class="kd">local</span> <span class="n">w</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s1">'P131'</span><span class="p">,</span> <span class="n">entity</span> <span class="o">=</span> <span class="n">entity</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">raw</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">})</span> </span><span id="L-146"><a href="#L-146"><span class="linenos" data-line="146"></span></a> <span class="kd">local</span> <span class="n">w2</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s1">'P297'</span><span class="p">,</span> <span class="n">entity</span> <span class="o">=</span> <span class="n">entity</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">raw</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">})</span> </span><span id="L-147"><a href="#L-147"><span class="linenos" data-line="147"></span></a> <span class="kr">return</span> <span class="n">w</span> <span class="ow">or</span> <span class="n">w2</span> </span><span id="L-148"><a href="#L-148"><span class="linenos" data-line="148"></span></a><span class="kr">end</span> </span><span id="L-149"><a href="#L-149"><span class="linenos" data-line="149"></span></a> </span><span id="L-150"><a href="#L-150"><span class="linenos" data-line="150"></span></a><span class="kr">function</span> <span class="nf">regional</span><span class="p">(</span><span class="n">options</span><span class="p">,</span> <span class="n">latitude</span><span class="p">)</span> </span><span id="L-151"><a href="#L-151"><span class="linenos" data-line="151"></span></a> <span class="kd">local</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">6</span> </span><span id="L-152"><a href="#L-152"><span class="linenos" data-line="152"></span></a> <span class="kd">local</span> <span class="n">entity</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">entity</span> </span><span id="L-153"><a href="#L-153"><span class="linenos" data-line="153"></span></a> <span class="kd">local</span> <span class="n">a</span> <span class="o">=</span> <span class="s1">''</span> </span><span id="L-154"><a href="#L-154"><span class="linenos" data-line="154"></span></a> <span class="kr">while</span> <span class="n">i</span> <span class="o">></span> <span class="mi">0</span> <span class="kr">do</span> </span><span id="L-155"><a href="#L-155"><span class="linenos" data-line="155"></span></a> <span class="kd">local</span> <span class="n">region</span> <span class="o">=</span> <span class="n">regionaux</span><span class="p">(</span><span class="n">entity</span><span class="p">)</span> </span><span id="L-156"><a href="#L-156"><span class="linenos" data-line="156"></span></a> <span class="kr">if</span> <span class="n">region</span> <span class="kr">then</span> </span><span id="L-157"><a href="#L-157"><span class="linenos" data-line="157"></span></a> <span class="kr">return</span> <span class="n">region</span> </span><span id="L-158"><a href="#L-158"><span class="linenos" data-line="158"></span></a> <span class="kr">end</span> </span><span id="L-159"><a href="#L-159"><span class="linenos" data-line="159"></span></a> <span class="kd">local</span> <span class="n">v</span> <span class="o">=</span> <span class="n">regionaux2</span><span class="p">(</span><span class="n">entity</span><span class="p">)</span> </span><span id="L-160"><a href="#L-160"><span class="linenos" data-line="160"></span></a> <span class="kr">if</span> <span class="n">v</span> <span class="ow">and</span> <span class="o">#</span><span class="n">v</span> <span class="o">></span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-161"><a href="#L-161"><span class="linenos" data-line="161"></span></a> <span class="n">entity</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityObject</span><span class="p">(</span> <span class="n">v</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">item</span> <span class="p">)</span> </span><span id="L-162"><a href="#L-162"><span class="linenos" data-line="162"></span></a> <span class="kr">end</span> </span><span id="L-163"><a href="#L-163"><span class="linenos" data-line="163"></span></a> <span class="n">i</span> <span class="o">=</span> <span class="n">i</span> <span class="o">-</span> <span class="mi">1</span> </span><span id="L-164"><a href="#L-164"><span class="linenos" data-line="164"></span></a> <span class="kr">end</span> </span><span id="L-165"><a href="#L-165"><span class="linenos" data-line="165"></span></a> <span class="kd">local</span> <span class="n">w</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s1">'P17'</span><span class="p">,</span> <span class="n">entity</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">entity</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">raw</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="kc">true</span><span class="p">})</span> </span><span id="L-166"><a href="#L-166"><span class="linenos" data-line="166"></span></a> <span class="kr">if</span> <span class="n">w</span> <span class="ow">and</span> <span class="o">#</span><span class="n">w</span> <span class="o">></span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-167"><a href="#L-167"><span class="linenos" data-line="167"></span></a> <span class="n">w</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s1">'P297'</span><span class="p">,</span> <span class="n">entityId</span> <span class="o">=</span> <span class="n">w</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">item</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">raw</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="kc">true</span><span class="p">})</span> </span><span id="L-168"><a href="#L-168"><span class="linenos" data-line="168"></span></a> <span class="kr">if</span> <span class="n">w</span> <span class="ow">and</span> <span class="o">#</span><span class="n">w</span> <span class="o">></span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-169"><a href="#L-169"><span class="linenos" data-line="169"></span></a> <span class="kr">return</span> <span class="n">w</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">value</span> </span><span id="L-170"><a href="#L-170"><span class="linenos" data-line="170"></span></a> <span class="kr">end</span> </span><span id="L-171"><a href="#L-171"><span class="linenos" data-line="171"></span></a> <span class="kr">end</span> </span><span id="L-172"><a href="#L-172"><span class="linenos" data-line="172"></span></a> <span class="kr">if</span> <span class="n">latitude</span> <span class="ow">and</span> <span class="n">latitude</span> <span class="o"><</span> <span class="o">-</span><span class="mi">65</span> <span class="kr">then</span> <span class="c1">-- Antarktis</span> </span><span id="L-173"><a href="#L-173"><span class="linenos" data-line="173"></span></a> <span class="kr">return</span> <span class="s1">'AQ'</span> </span><span id="L-174"><a href="#L-174"><span class="linenos" data-line="174"></span></a> <span class="kr">end</span> </span><span id="L-175"><a href="#L-175"><span class="linenos" data-line="175"></span></a> <span class="kr">return</span> <span class="kc">nil</span> </span><span id="L-176"><a href="#L-176"><span class="linenos" data-line="176"></span></a><span class="kr">end</span> </span><span id="L-177"><a href="#L-177"><span class="linenos" data-line="177"></span></a> </span><span id="L-178"><a href="#L-178"><span class="linenos" data-line="178"></span></a><span class="kr">function</span> <span class="nf">planeter</span><span class="p">(</span><span class="n">t</span><span class="p">)</span> </span><span id="L-179"><a href="#L-179"><span class="linenos" data-line="179"></span></a> <span class="kd">local</span> <span class="n">px</span> <span class="o">=</span> <span class="p">{</span> </span><span id="L-180"><a href="#L-180"><span class="linenos" data-line="180"></span></a> <span class="n">Q2</span> <span class="o">=</span> <span class="s1">'earth'</span><span class="p">,</span> </span><span id="L-181"><a href="#L-181"><span class="linenos" data-line="181"></span></a> <span class="n">Q308</span> <span class="o">=</span> <span class="s1">'mercury'</span><span class="p">,</span> </span><span id="L-182"><a href="#L-182"><span class="linenos" data-line="182"></span></a> <span class="n">Q313</span> <span class="o">=</span> <span class="s1">'venus'</span><span class="p">,</span> </span><span id="L-183"><a href="#L-183"><span class="linenos" data-line="183"></span></a> <span class="n">Q405</span> <span class="o">=</span> <span class="s1">'moon'</span><span class="p">,</span> </span><span id="L-184"><a href="#L-184"><span class="linenos" data-line="184"></span></a> <span class="n">Q111</span> <span class="o">=</span> <span class="s1">'mars'</span><span class="p">,</span> </span><span id="L-185"><a href="#L-185"><span class="linenos" data-line="185"></span></a> <span class="n">Q7547</span> <span class="o">=</span> <span class="s1">'phobos'</span><span class="p">,</span> </span><span id="L-186"><a href="#L-186"><span class="linenos" data-line="186"></span></a> <span class="n">Q7548</span> <span class="o">=</span> <span class="s1">'deimos'</span><span class="p">,</span> </span><span id="L-187"><a href="#L-187"><span class="linenos" data-line="187"></span></a> <span class="n">Q596</span> <span class="o">=</span> <span class="s1">'ceres'</span><span class="p">,</span> </span><span id="L-188"><a href="#L-188"><span class="linenos" data-line="188"></span></a> <span class="n">Q3030</span> <span class="o">=</span> <span class="s1">'vesta'</span><span class="p">,</span> </span><span id="L-189"><a href="#L-189"><span class="linenos" data-line="189"></span></a> <span class="n">Q3169</span> <span class="o">=</span> <span class="s1">'ganymede'</span><span class="p">,</span> </span><span id="L-190"><a href="#L-190"><span class="linenos" data-line="190"></span></a> <span class="n">Q3134</span> <span class="o">=</span> <span class="s1">'callisto'</span><span class="p">,</span> </span><span id="L-191"><a href="#L-191"><span class="linenos" data-line="191"></span></a> <span class="n">Q3123</span> <span class="o">=</span> <span class="s1">'io'</span><span class="p">,</span> </span><span id="L-192"><a href="#L-192"><span class="linenos" data-line="192"></span></a> <span class="n">Q3143</span> <span class="o">=</span> <span class="s1">'europa'</span><span class="p">,</span> </span><span id="L-193"><a href="#L-193"><span class="linenos" data-line="193"></span></a> <span class="n">Q15034</span> <span class="o">=</span> <span class="s1">'mimas'</span><span class="p">,</span> </span><span id="L-194"><a href="#L-194"><span class="linenos" data-line="194"></span></a> <span class="n">Q3303</span> <span class="o">=</span> <span class="s1">'enceladus'</span><span class="p">,</span> </span><span id="L-195"><a href="#L-195"><span class="linenos" data-line="195"></span></a> <span class="n">Q15047</span> <span class="o">=</span> <span class="s1">'tethys'</span><span class="p">,</span> </span><span id="L-196"><a href="#L-196"><span class="linenos" data-line="196"></span></a> <span class="n">Q15040</span> <span class="o">=</span> <span class="s1">'dione'</span><span class="p">,</span> </span><span id="L-197"><a href="#L-197"><span class="linenos" data-line="197"></span></a> <span class="n">Q15050</span> <span class="o">=</span> <span class="s1">'rhea'</span><span class="p">,</span> </span><span id="L-198"><a href="#L-198"><span class="linenos" data-line="198"></span></a> <span class="n">Q2565</span> <span class="o">=</span> <span class="s1">'titan'</span><span class="p">,</span> </span><span id="L-199"><a href="#L-199"><span class="linenos" data-line="199"></span></a> <span class="n">Q15037</span> <span class="o">=</span> <span class="s1">'hyperion'</span><span class="p">,</span> </span><span id="L-200"><a href="#L-200"><span class="linenos" data-line="200"></span></a> <span class="n">Q17958</span> <span class="o">=</span> <span class="s1">'iapetus'</span><span class="p">,</span> </span><span id="L-201"><a href="#L-201"><span class="linenos" data-line="201"></span></a> <span class="n">Q17975</span> <span class="o">=</span> <span class="s1">'phoebe'</span><span class="p">,</span> </span><span id="L-202"><a href="#L-202"><span class="linenos" data-line="202"></span></a> <span class="n">Q3352</span> <span class="o">=</span> <span class="s1">'miranda'</span><span class="p">,</span> </span><span id="L-203"><a href="#L-203"><span class="linenos" data-line="203"></span></a> <span class="n">Q3343</span> <span class="o">=</span> <span class="s1">'ariel'</span><span class="p">,</span> </span><span id="L-204"><a href="#L-204"><span class="linenos" data-line="204"></span></a> <span class="n">Q3338</span> <span class="o">=</span> <span class="s1">'umbriel'</span><span class="p">,</span> </span><span id="L-205"><a href="#L-205"><span class="linenos" data-line="205"></span></a> <span class="n">Q3322</span> <span class="o">=</span> <span class="s1">'titania'</span><span class="p">,</span> </span><span id="L-206"><a href="#L-206"><span class="linenos" data-line="206"></span></a> <span class="n">Q3332</span> <span class="o">=</span> <span class="s1">'oberon'</span><span class="p">,</span> </span><span id="L-207"><a href="#L-207"><span class="linenos" data-line="207"></span></a> <span class="n">Q3359</span> <span class="o">=</span> <span class="s1">'triton'</span><span class="p">,</span> </span><span id="L-208"><a href="#L-208"><span class="linenos" data-line="208"></span></a> <span class="n">Q339</span> <span class="o">=</span> <span class="s1">'pluto'</span><span class="p">,</span> </span><span id="L-209"><a href="#L-209"><span class="linenos" data-line="209"></span></a> <span class="p">}</span> </span><span id="L-210"><a href="#L-210"><span class="linenos" data-line="210"></span></a> <span class="kr">return</span> <span class="n">px</span><span class="p">[</span><span class="n">t</span><span class="p">]</span> <span class="ow">or</span> <span class="s1">'earth'</span> </span><span id="L-211"><a href="#L-211"><span class="linenos" data-line="211"></span></a><span class="kr">end</span> </span><span id="L-212"><a href="#L-212"><span class="linenos" data-line="212"></span></a> </span><span id="L-213"><a href="#L-213"><span class="linenos" data-line="213"></span></a><span class="kr">function</span> <span class="nf">inlist</span><span class="p">(</span><span class="n">needle</span><span class="p">,</span> <span class="n">haystack</span><span class="p">)</span> </span><span id="L-214"><a href="#L-214"><span class="linenos" data-line="214"></span></a> <span class="c1">-- Checks if an item is present amongst the values of a list</span> </span><span id="L-215"><a href="#L-215"><span class="linenos" data-line="215"></span></a> <span class="kr">for</span> <span class="n">_</span><span class="p">,</span> <span class="n">v</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">haystack</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-216"><a href="#L-216"><span class="linenos" data-line="216"></span></a> <span class="kr">if</span> <span class="n">v</span> <span class="o">==</span> <span class="n">needle</span> <span class="kr">then</span> </span><span id="L-217"><a href="#L-217"><span class="linenos" data-line="217"></span></a> <span class="kr">return</span> <span class="kc">true</span> </span><span id="L-218"><a href="#L-218"><span class="linenos" data-line="218"></span></a> <span class="kr">end</span> </span><span id="L-219"><a href="#L-219"><span class="linenos" data-line="219"></span></a> <span class="kr">return</span> <span class="kc">false</span> </span><span id="L-220"><a href="#L-220"><span class="linenos" data-line="220"></span></a> <span class="kr">end</span> </span><span id="L-221"><a href="#L-221"><span class="linenos" data-line="221"></span></a><span class="kr">end</span> </span><span id="L-222"><a href="#L-222"><span class="linenos" data-line="222"></span></a> </span><span id="L-223"><a href="#L-223"><span class="linenos" data-line="223"></span></a><span class="kr">function</span> <span class="nf">koorder</span><span class="p">(</span><span class="n">data</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-224"><a href="#L-224"><span class="linenos" data-line="224"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">data</span> <span class="kr">then</span> </span><span id="L-225"><a href="#L-225"><span class="linenos" data-line="225"></span></a> <span class="kr">return</span> <span class="kc">nil</span> </span><span id="L-226"><a href="#L-226"><span class="linenos" data-line="226"></span></a> <span class="kr">end</span> </span><span id="L-227"><a href="#L-227"><span class="linenos" data-line="227"></span></a> <span class="kd">local</span> <span class="n">s</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-228"><a href="#L-228"><span class="linenos" data-line="228"></span></a> <span class="kd">local</span> <span class="n">planet</span> <span class="o">=</span> <span class="n">planeter</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">globe</span><span class="p">:</span><span class="n">match</span><span class="p">(</span><span class="s1">'Q%d+'</span><span class="p">))</span> </span><span id="L-229"><a href="#L-229"><span class="linenos" data-line="229"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_dec</span> <span class="o">=</span> <span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">latitude</span><span class="p">)</span> </span><span id="L-230"><a href="#L-230"><span class="linenos" data-line="230"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_dec</span> <span class="o">=</span> <span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">longitude</span><span class="p">)</span> </span><span id="L-231"><a href="#L-231"><span class="linenos" data-line="231"></span></a> <span class="kr">if</span> <span class="n">data</span><span class="p">.</span><span class="n">latitude</span> <span class="o">></span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-232"><a href="#L-232"><span class="linenos" data-line="232"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_NS</span> <span class="o">=</span> <span class="s1">'N'</span> </span><span id="L-233"><a href="#L-233"><span class="linenos" data-line="233"></span></a> <span class="kr">else</span> </span><span id="L-234"><a href="#L-234"><span class="linenos" data-line="234"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_NS</span> <span class="o">=</span> <span class="s1">'S'</span> </span><span id="L-235"><a href="#L-235"><span class="linenos" data-line="235"></span></a> <span class="kr">end</span> </span><span id="L-236"><a href="#L-236"><span class="linenos" data-line="236"></span></a> <span class="kr">if</span> <span class="n">data</span><span class="p">.</span><span class="n">longitude</span> <span class="o">></span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-237"><a href="#L-237"><span class="linenos" data-line="237"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_EW</span> <span class="o">=</span> <span class="s1">'E'</span> </span><span id="L-238"><a href="#L-238"><span class="linenos" data-line="238"></span></a> <span class="kr">else</span> </span><span id="L-239"><a href="#L-239"><span class="linenos" data-line="239"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_EW</span> <span class="o">=</span> <span class="s1">'W'</span> </span><span id="L-240"><a href="#L-240"><span class="linenos" data-line="240"></span></a> <span class="kr">end</span> </span><span id="L-241"><a href="#L-241"><span class="linenos" data-line="241"></span></a> <span class="kd">local</span> <span class="n">frac</span> <span class="o">=</span> <span class="mi">0</span> </span><span id="L-242"><a href="#L-242"><span class="linenos" data-line="242"></span></a> <span class="kr">if</span> <span class="n">data</span><span class="p">.</span><span class="n">precision</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> </span><span id="L-243"><a href="#L-243"><span class="linenos" data-line="243"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_g</span> <span class="o">=</span> <span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">latitude</span><span class="p">)</span> </span><span id="L-244"><a href="#L-244"><span class="linenos" data-line="244"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_g</span> <span class="o">=</span> <span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">longitude</span><span class="p">)</span> </span><span id="L-245"><a href="#L-245"><span class="linenos" data-line="245"></span></a> <span class="kr">elseif</span> <span class="n">inlist</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">precision</span><span class="p">,</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">,</span> <span class="mf">0.01</span><span class="p">,</span> <span class="mf">0.001</span><span class="p">,</span> <span class="mf">0.0001</span><span class="p">})</span> <span class="kr">then</span> </span><span id="L-246"><a href="#L-246"><span class="linenos" data-line="246"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_g</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">latitude</span><span class="p">)</span> <span class="o">/</span> <span class="n">data</span><span class="p">.</span><span class="n">precision</span> <span class="o">+</span> <span class="mf">0.5</span><span class="p">)</span> <span class="o">*</span> <span class="n">data</span><span class="p">.</span><span class="n">precision</span> </span><span id="L-247"><a href="#L-247"><span class="linenos" data-line="247"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_g</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">longitude</span><span class="p">)</span> <span class="o">/</span> <span class="n">data</span><span class="p">.</span><span class="n">precision</span> <span class="o">+</span> <span class="mf">0.5</span><span class="p">)</span> <span class="o">*</span> <span class="n">data</span><span class="p">.</span><span class="n">precision</span> </span><span id="L-248"><a href="#L-248"><span class="linenos" data-line="248"></span></a> <span class="kr">elseif</span> <span class="n">data</span><span class="p">.</span><span class="n">precision</span> <span class="o">></span> <span class="mf">0.0166</span> <span class="ow">and</span> <span class="n">data</span><span class="p">.</span><span class="n">precision</span> <span class="o"><</span> <span class="mf">0.0167</span> <span class="kr">then</span> </span><span id="L-249"><a href="#L-249"><span class="linenos" data-line="249"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_g</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">latitude</span><span class="p">))</span> </span><span id="L-250"><a href="#L-250"><span class="linenos" data-line="250"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_m</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">60</span> <span class="o">+</span> <span class="mf">0.5</span><span class="p">)</span> </span><span id="L-251"><a href="#L-251"><span class="linenos" data-line="251"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_g</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">longitude</span><span class="p">))</span> </span><span id="L-252"><a href="#L-252"><span class="linenos" data-line="252"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_m</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">60</span> <span class="o">+</span> <span class="mf">0.5</span><span class="p">)</span> </span><span id="L-253"><a href="#L-253"><span class="linenos" data-line="253"></span></a> <span class="kr">elseif</span> <span class="n">data</span><span class="p">.</span><span class="n">precision</span> <span class="o">></span> <span class="mf">0.000277</span> <span class="ow">and</span> <span class="n">data</span><span class="p">.</span><span class="n">precision</span> <span class="o"><</span> <span class="mf">0.000278</span> <span class="kr">then</span> </span><span id="L-254"><a href="#L-254"><span class="linenos" data-line="254"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_g</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">latitude</span><span class="p">))</span> </span><span id="L-255"><a href="#L-255"><span class="linenos" data-line="255"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_m</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">60</span><span class="p">)</span> </span><span id="L-256"><a href="#L-256"><span class="linenos" data-line="256"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_s</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">60</span> <span class="o">+</span> <span class="mf">0.5</span><span class="p">)</span> </span><span id="L-257"><a href="#L-257"><span class="linenos" data-line="257"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_g</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">longitude</span><span class="p">))</span> </span><span id="L-258"><a href="#L-258"><span class="linenos" data-line="258"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_m</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">60</span><span class="p">)</span> </span><span id="L-259"><a href="#L-259"><span class="linenos" data-line="259"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_s</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">60</span> <span class="o">+</span> <span class="mf">0.5</span><span class="p">)</span> </span><span id="L-260"><a href="#L-260"><span class="linenos" data-line="260"></span></a> <span class="kr">elseif</span> <span class="n">data</span><span class="p">.</span><span class="n">precision</span> <span class="o">></span> <span class="mf">0.0000277</span> <span class="ow">and</span> <span class="n">data</span><span class="p">.</span><span class="n">precision</span> <span class="o"><</span> <span class="mf">0.0000278</span> <span class="kr">then</span> </span><span id="L-261"><a href="#L-261"><span class="linenos" data-line="261"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_g</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">latitude</span><span class="p">))</span> </span><span id="L-262"><a href="#L-262"><span class="linenos" data-line="262"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_m</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">60</span><span class="p">)</span> </span><span id="L-263"><a href="#L-263"><span class="linenos" data-line="263"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_s</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">600</span> <span class="o">+</span> <span class="mf">0.5</span><span class="p">)</span><span class="o">/</span><span class="mi">10</span> </span><span id="L-264"><a href="#L-264"><span class="linenos" data-line="264"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_g</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">longitude</span><span class="p">))</span> </span><span id="L-265"><a href="#L-265"><span class="linenos" data-line="265"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_m</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">60</span><span class="p">)</span> </span><span id="L-266"><a href="#L-266"><span class="linenos" data-line="266"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_s</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">600</span> <span class="o">+</span> <span class="mf">0.5</span><span class="p">)</span><span class="o">/</span><span class="mi">10</span> </span><span id="L-267"><a href="#L-267"><span class="linenos" data-line="267"></span></a> <span class="kr">elseif</span> <span class="n">data</span><span class="p">.</span><span class="n">precision</span> <span class="o">></span> <span class="mf">0.00000277</span> <span class="ow">and</span> <span class="n">data</span><span class="p">.</span><span class="n">precision</span> <span class="o"><</span> <span class="mf">0.00000278</span> <span class="kr">then</span> </span><span id="L-268"><a href="#L-268"><span class="linenos" data-line="268"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_g</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">latitude</span><span class="p">))</span> </span><span id="L-269"><a href="#L-269"><span class="linenos" data-line="269"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_m</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">60</span><span class="p">)</span> </span><span id="L-270"><a href="#L-270"><span class="linenos" data-line="270"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_s</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">6000</span> <span class="o">+</span> <span class="mf">0.5</span><span class="p">)</span><span class="o">/</span><span class="mi">100</span> </span><span id="L-271"><a href="#L-271"><span class="linenos" data-line="271"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_g</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">longitude</span><span class="p">))</span> </span><span id="L-272"><a href="#L-272"><span class="linenos" data-line="272"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_m</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">60</span><span class="p">)</span> </span><span id="L-273"><a href="#L-273"><span class="linenos" data-line="273"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_s</span><span class="p">,</span> <span class="n">frac</span> <span class="o">=</span> <span class="nb">math.modf</span><span class="p">(</span><span class="n">frac</span> <span class="o">*</span> <span class="mi">6000</span> <span class="o">+</span> <span class="mf">0.5</span><span class="p">)</span><span class="o">/</span><span class="mi">100</span> </span><span id="L-274"><a href="#L-274"><span class="linenos" data-line="274"></span></a> <span class="kr">else</span> </span><span id="L-275"><a href="#L-275"><span class="linenos" data-line="275"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">lat_g</span> <span class="o">=</span> <span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">latitude</span><span class="p">)</span> </span><span id="L-276"><a href="#L-276"><span class="linenos" data-line="276"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">long_g</span> <span class="o">=</span> <span class="nb">math.abs</span><span class="p">(</span><span class="n">data</span><span class="p">.</span><span class="n">longitude</span><span class="p">)</span> </span><span id="L-277"><a href="#L-277"><span class="linenos" data-line="277"></span></a> <span class="kr">end</span> </span><span id="L-278"><a href="#L-278"><span class="linenos" data-line="278"></span></a> <span class="kd">local</span> <span class="n">params</span> <span class="o">=</span> <span class="n">s</span><span class="p">.</span><span class="n">lat_dec</span> <span class="o">..</span> <span class="s1">'_'</span> <span class="o">..</span> <span class="n">s</span><span class="p">.</span><span class="n">lat_NS</span> <span class="o">..</span> <span class="s1">'_'</span> <span class="o">..</span> <span class="n">s</span><span class="p">.</span><span class="n">long_dec</span> <span class="o">..</span> <span class="s1">'_'</span> <span class="o">..</span> <span class="n">s</span><span class="p">.</span><span class="n">long_EW</span> </span><span id="L-279"><a href="#L-279"><span class="linenos" data-line="279"></span></a> <span class="kd">local</span> <span class="n">typen</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">typen</span> <span class="ow">or</span> <span class="s1">'landmark'</span> </span><span id="L-280"><a href="#L-280"><span class="linenos" data-line="280"></span></a> <span class="kd">local</span> <span class="n">region</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">region</span> </span><span id="L-281"><a href="#L-281"><span class="linenos" data-line="281"></span></a> <span class="kd">local</span> <span class="n">pagename</span> <span class="o">=</span> <span class="n">fallbackigen</span><span class="p">(</span><span class="n">options</span><span class="p">,</span> <span class="n">options</span><span class="p">.</span><span class="n">pagename</span><span class="p">)</span> </span><span id="L-282"><a href="#L-282"><span class="linenos" data-line="282"></span></a> </span><span id="L-283"><a href="#L-283"><span class="linenos" data-line="283"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">region</span> <span class="ow">and</span> <span class="n">planet</span> <span class="o">==</span> <span class="s1">'earth'</span> <span class="kr">then</span> </span><span id="L-284"><a href="#L-284"><span class="linenos" data-line="284"></span></a> <span class="n">region</span> <span class="o">=</span> <span class="n">regional</span><span class="p">(</span><span class="n">options</span><span class="p">,</span> <span class="n">data</span><span class="p">.</span><span class="n">latitude</span><span class="p">)</span> </span><span id="L-285"><a href="#L-285"><span class="linenos" data-line="285"></span></a> <span class="kr">end</span> </span><span id="L-286"><a href="#L-286"><span class="linenos" data-line="286"></span></a> <span class="kd">local</span> <span class="n">magic</span> <span class="o">=</span> <span class="s1">''</span> </span><span id="L-287"><a href="#L-287"><span class="linenos" data-line="287"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">options</span><span class="p">.</span><span class="n">nogeodataparser</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">nogeodataparser</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-288"><a href="#L-288"><span class="linenos" data-line="288"></span></a> <span class="kd">local</span> <span class="n">args</span> <span class="o">=</span> <span class="p">{</span> <span class="n">data</span><span class="p">.</span><span class="n">latitude</span><span class="p">,</span> <span class="n">data</span><span class="p">.</span><span class="n">longitude</span><span class="p">,</span> <span class="n">globe</span> <span class="o">=</span> <span class="n">planet</span><span class="p">,</span> <span class="nb">type</span> <span class="o">=</span> <span class="n">typen</span><span class="p">,</span> <span class="n">region</span> <span class="o">=</span> <span class="n">region</span><span class="p">,</span> <span class="n">name</span> <span class="o">=</span> <span class="n">pagename</span> <span class="p">}</span> </span><span id="L-289"><a href="#L-289"><span class="linenos" data-line="289"></span></a> <span class="kd">local</span> <span class="n">primary</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">num</span> <span class="o">==</span> <span class="mi">1</span> </span><span id="L-290"><a href="#L-290"><span class="linenos" data-line="290"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">primary</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">primary</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-291"><a href="#L-291"><span class="linenos" data-line="291"></span></a> <span class="n">primary</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">primary</span> <span class="o">==</span> <span class="s1">'primary'</span> </span><span id="L-292"><a href="#L-292"><span class="linenos" data-line="292"></span></a> <span class="kr">end</span> </span><span id="L-293"><a href="#L-293"><span class="linenos" data-line="293"></span></a> <span class="kr">if</span> <span class="n">primary</span> <span class="kr">then</span> </span><span id="L-294"><a href="#L-294"><span class="linenos" data-line="294"></span></a> <span class="nb">table.insert</span><span class="p">(</span> <span class="n">args</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="s1">'primary'</span> <span class="p">)</span> </span><span id="L-295"><a href="#L-295"><span class="linenos" data-line="295"></span></a> <span class="kr">end</span> </span><span id="L-296"><a href="#L-296"><span class="linenos" data-line="296"></span></a> <span class="n">magic</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">callParserFunction</span><span class="p">{</span> </span><span id="L-297"><a href="#L-297"><span class="linenos" data-line="297"></span></a> <span class="n">name</span> <span class="o">=</span> <span class="s1">'#coordinates'</span><span class="p">,</span> </span><span id="L-298"><a href="#L-298"><span class="linenos" data-line="298"></span></a> <span class="n">args</span> <span class="o">=</span> <span class="n">args</span> </span><span id="L-299"><a href="#L-299"><span class="linenos" data-line="299"></span></a> <span class="p">}</span> </span><span id="L-300"><a href="#L-300"><span class="linenos" data-line="300"></span></a> <span class="kr">end</span> </span><span id="L-301"><a href="#L-301"><span class="linenos" data-line="301"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">geodataparseronly</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">geodataparseronly</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-302"><a href="#L-302"><span class="linenos" data-line="302"></span></a> <span class="kr">return</span> <span class="n">magic</span> </span><span id="L-303"><a href="#L-303"><span class="linenos" data-line="303"></span></a> <span class="kr">end</span> </span><span id="L-304"><a href="#L-304"><span class="linenos" data-line="304"></span></a> <span class="n">pagename</span> <span class="o">=</span> <span class="nb">string.gsub</span> <span class="p">(</span><span class="n">pagename</span><span class="p">,</span> <span class="s2">"([^%w ])"</span><span class="p">,</span> </span><span id="L-305"><a href="#L-305"><span class="linenos" data-line="305"></span></a> <span class="kr">function</span> <span class="p">(</span><span class="n">c</span><span class="p">)</span> <span class="kr">return</span> <span class="nb">string.format</span> <span class="p">(</span><span class="s2">"%%%02X"</span><span class="p">,</span> <span class="nb">string.byte</span><span class="p">(</span><span class="n">c</span><span class="p">))</span> <span class="kr">end</span><span class="p">)</span> </span><span id="L-306"><a href="#L-306"><span class="linenos" data-line="306"></span></a> <span class="n">pagename</span> <span class="o">=</span> <span class="nb">string.gsub</span> <span class="p">(</span><span class="n">pagename</span><span class="p">,</span> <span class="s2">" "</span><span class="p">,</span> <span class="s2">"+"</span><span class="p">)</span> </span><span id="L-307"><a href="#L-307"><span class="linenos" data-line="307"></span></a> <span class="kd">local</span> <span class="n">nn</span> <span class="o">=</span> <span class="s1">'&title='</span> <span class="o">..</span> <span class="n">pagename</span> </span><span id="L-308"><a href="#L-308"><span class="linenos" data-line="308"></span></a> <span class="kr">if</span> <span class="n">region</span> <span class="kr">then</span> </span><span id="L-309"><a href="#L-309"><span class="linenos" data-line="309"></span></a> <span class="n">planet</span> <span class="o">=</span> <span class="n">planet</span> <span class="o">..</span> <span class="s1">'_region:'</span> <span class="o">..</span> <span class="n">region</span> </span><span id="L-310"><a href="#L-310"><span class="linenos" data-line="310"></span></a> <span class="kr">end</span> </span><span id="L-311"><a href="#L-311"><span class="linenos" data-line="311"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">options</span><span class="p">.</span><span class="n">label</span> <span class="kr">then</span> </span><span id="L-312"><a href="#L-312"><span class="linenos" data-line="312"></span></a> <span class="kd">local</span> <span class="n">a</span> <span class="o">=</span> <span class="n">s</span><span class="p">.</span><span class="n">lat_g</span> <span class="o">..</span> <span class="s1">'°'</span> </span><span id="L-313"><a href="#L-313"><span class="linenos" data-line="313"></span></a> <span class="kr">if</span> <span class="n">s</span><span class="p">.</span><span class="n">lat_m</span> <span class="kr">then</span> </span><span id="L-314"><a href="#L-314"><span class="linenos" data-line="314"></span></a> <span class="n">a</span> <span class="o">=</span> <span class="n">a</span> <span class="o">..</span> <span class="n">s</span><span class="p">.</span><span class="n">lat_m</span> <span class="o">..</span> <span class="s1">'′'</span> </span><span id="L-315"><a href="#L-315"><span class="linenos" data-line="315"></span></a> <span class="kr">end</span> </span><span id="L-316"><a href="#L-316"><span class="linenos" data-line="316"></span></a> <span class="kr">if</span> <span class="n">s</span><span class="p">.</span><span class="n">lat_s</span> <span class="kr">then</span> </span><span id="L-317"><a href="#L-317"><span class="linenos" data-line="317"></span></a> <span class="n">a</span> <span class="o">=</span> <span class="n">a</span> <span class="o">..</span> <span class="n">s</span><span class="p">.</span><span class="n">lat_s</span> <span class="o">..</span> <span class="s1">'″'</span> </span><span id="L-318"><a href="#L-318"><span class="linenos" data-line="318"></span></a> <span class="kr">end</span> </span><span id="L-319"><a href="#L-319"><span class="linenos" data-line="319"></span></a> <span class="n">a</span> <span class="o">=</span> <span class="n">a</span> <span class="o">..</span> <span class="n">s</span><span class="p">.</span><span class="n">lat_NS</span> </span><span id="L-320"><a href="#L-320"><span class="linenos" data-line="320"></span></a> <span class="n">a</span> <span class="o">=</span> <span class="n">a</span> <span class="o">..</span> <span class="s1">','</span> <span class="o">..</span> <span class="n">s</span><span class="p">.</span><span class="n">long_g</span> <span class="o">..</span> <span class="s1">'°'</span> </span><span id="L-321"><a href="#L-321"><span class="linenos" data-line="321"></span></a> <span class="kr">if</span> <span class="n">s</span><span class="p">.</span><span class="n">long_m</span> <span class="kr">then</span> </span><span id="L-322"><a href="#L-322"><span class="linenos" data-line="322"></span></a> <span class="n">a</span> <span class="o">=</span> <span class="n">a</span> <span class="o">..</span> <span class="n">s</span><span class="p">.</span><span class="n">long_m</span> <span class="o">..</span> <span class="s1">'′'</span> </span><span id="L-323"><a href="#L-323"><span class="linenos" data-line="323"></span></a> <span class="kr">end</span> </span><span id="L-324"><a href="#L-324"><span class="linenos" data-line="324"></span></a> <span class="kr">if</span> <span class="n">s</span><span class="p">.</span><span class="n">long_s</span> <span class="kr">then</span> </span><span id="L-325"><a href="#L-325"><span class="linenos" data-line="325"></span></a> <span class="n">a</span> <span class="o">=</span> <span class="n">a</span> <span class="o">..</span> <span class="n">s</span><span class="p">.</span><span class="n">long_s</span> <span class="o">..</span> <span class="s1">'″'</span> </span><span id="L-326"><a href="#L-326"><span class="linenos" data-line="326"></span></a> <span class="kr">end</span> </span><span id="L-327"><a href="#L-327"><span class="linenos" data-line="327"></span></a> <span class="n">a</span> <span class="o">=</span> <span class="n">a</span> <span class="o">..</span> <span class="n">s</span><span class="p">.</span><span class="n">long_EW</span> </span><span id="L-328"><a href="#L-328"><span class="linenos" data-line="328"></span></a> <span class="kr">return</span> <span class="n">magic</span> <span class="o">..</span> <span class="s1">'[https://tools.wmflabs.org/geohack/geohack.php?language=sv'</span> <span class="o">..</span> <span class="n">nn</span> <span class="o">..</span> <span class="s1">'&params='</span> <span class="o">..</span> <span class="n">params</span> <span class="o">..</span> <span class="s1">'_globe:'</span> <span class="o">..</span> <span class="n">planet</span> <span class="o">..</span> <span class="s1">'_type:'</span> <span class="o">..</span> <span class="n">typen</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">a</span> <span class="o">..</span> <span class="s1">']'</span> </span><span id="L-329"><a href="#L-329"><span class="linenos" data-line="329"></span></a> <span class="kr">end</span> </span><span id="L-330"><a href="#L-330"><span class="linenos" data-line="330"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">label</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-331"><a href="#L-331"><span class="linenos" data-line="331"></span></a> <span class="kr">return</span> <span class="n">magic</span> <span class="o">..</span> <span class="s1">'[https://tools.wmflabs.org/geohack/geohack.php?language=sv'</span> <span class="o">..</span> <span class="n">nn</span> <span class="o">..</span> <span class="s1">'&params='</span> <span class="o">..</span> <span class="n">params</span> <span class="o">..</span> <span class="s1">'_globe:'</span> <span class="o">..</span> <span class="n">planet</span> <span class="o">..</span> <span class="s1">'_type:'</span> <span class="o">..</span> <span class="n">typen</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">options</span><span class="p">.</span><span class="n">label</span> <span class="o">..</span> <span class="s1">']'</span> </span><span id="L-332"><a href="#L-332"><span class="linenos" data-line="332"></span></a> <span class="kr">else</span> </span><span id="L-333"><a href="#L-333"><span class="linenos" data-line="333"></span></a> <span class="kr">return</span> <span class="n">magic</span> <span class="o">..</span> <span class="s1">'[https://tools.wmflabs.org/geohack/geohack.php?language=sv'</span> <span class="o">..</span> <span class="n">nn</span> <span class="o">..</span> <span class="s1">'&params='</span> <span class="o">..</span> <span class="n">params</span> <span class="o">..</span> <span class="s1">'_globe:'</span> <span class="o">..</span> <span class="n">planet</span> <span class="o">..</span> <span class="s1">'_type:'</span> <span class="o">..</span> <span class="n">typen</span> <span class="o">..</span> <span class="s1">']'</span> </span><span id="L-334"><a href="#L-334"><span class="linenos" data-line="334"></span></a> <span class="kr">end</span> </span><span id="L-335"><a href="#L-335"><span class="linenos" data-line="335"></span></a><span class="kr">end</span> </span><span id="L-336"><a href="#L-336"><span class="linenos" data-line="336"></span></a> </span><span id="L-337"><a href="#L-337"><span class="linenos" data-line="337"></span></a><span class="kr">function</span> <span class="nf">getonly</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-338"><a href="#L-338"><span class="linenos" data-line="338"></span></a> <span class="kd">local</span> <span class="n">claims2</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-339"><a href="#L-339"><span class="linenos" data-line="339"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">j</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">claims</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-340"><a href="#L-340"><span class="linenos" data-line="340"></span></a> </span><span id="L-341"><a href="#L-341"><span class="linenos" data-line="341"></span></a> <span class="kr">if</span> <span class="n">j</span><span class="p">.</span><span class="n">mainsnak</span> <span class="ow">and</span> <span class="n">j</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">snaktype</span> <span class="o">==</span> <span class="s1">'value'</span> <span class="ow">and</span> <span class="n">j</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span> <span class="ow">and</span> <span class="n">j</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> <span class="ow">and</span> <span class="n">j</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">id</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">getonly</span> <span class="kr">then</span> </span><span id="L-342"><a href="#L-342"><span class="linenos" data-line="342"></span></a> <span class="kd">local</span> <span class="n">t</span> <span class="o">=</span> <span class="n">j</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">id</span> </span><span id="L-343"><a href="#L-343"><span class="linenos" data-line="343"></span></a> <span class="kd">local</span> <span class="n">traff</span> <span class="o">=</span> <span class="kc">false</span> </span><span id="L-344"><a href="#L-344"><span class="linenos" data-line="344"></span></a> <span class="kd">local</span> <span class="n">t2</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">(</span> <span class="p">{</span><span class="n">property</span> <span class="o">=</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">getonlyproperty</span> <span class="ow">or</span> <span class="s2">"P31"</span><span class="p">),</span> <span class="n">entityId</span> <span class="o">=</span> <span class="n">t</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">raw</span> <span class="o">=</span> <span class="s1">'true'</span> <span class="p">})</span> </span><span id="L-345"><a href="#L-345"><span class="linenos" data-line="345"></span></a> <span class="kr">if</span> <span class="n">t2</span> <span class="ow">and</span> <span class="o">#</span><span class="n">t2</span> <span class="o">></span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-346"><a href="#L-346"><span class="linenos" data-line="346"></span></a> <span class="kr">for</span> <span class="n">k</span><span class="p">,</span> <span class="n">state</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span> <span class="n">t2</span> <span class="p">)</span> <span class="kr">do</span> </span><span id="L-347"><a href="#L-347"><span class="linenos" data-line="347"></span></a> <span class="kr">for</span> <span class="n">j2</span><span class="p">,</span> <span class="n">only</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">split</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">getonly</span><span class="p">,</span><span class="s1">','</span><span class="p">))</span> <span class="kr">do</span> </span><span id="L-348"><a href="#L-348"><span class="linenos" data-line="348"></span></a> <span class="kr">if</span> <span class="n">state</span><span class="p">.</span><span class="n">item</span> <span class="o">==</span> <span class="n">only</span> <span class="kr">then</span> </span><span id="L-349"><a href="#L-349"><span class="linenos" data-line="349"></span></a> <span class="n">traff</span> <span class="o">=</span> <span class="kc">true</span> </span><span id="L-350"><a href="#L-350"><span class="linenos" data-line="350"></span></a> <span class="kr">end</span> </span><span id="L-351"><a href="#L-351"><span class="linenos" data-line="351"></span></a> <span class="kr">end</span> </span><span id="L-352"><a href="#L-352"><span class="linenos" data-line="352"></span></a> <span class="kr">end</span> </span><span id="L-353"><a href="#L-353"><span class="linenos" data-line="353"></span></a> <span class="kr">end</span> </span><span id="L-354"><a href="#L-354"><span class="linenos" data-line="354"></span></a> <span class="kr">if</span> <span class="n">traff</span> <span class="kr">then</span> </span><span id="L-355"><a href="#L-355"><span class="linenos" data-line="355"></span></a> <span class="nb">table.insert</span><span class="p">(</span><span class="n">claims2</span><span class="p">,</span> <span class="n">j</span><span class="p">)</span> </span><span id="L-356"><a href="#L-356"><span class="linenos" data-line="356"></span></a> <span class="kr">end</span> </span><span id="L-357"><a href="#L-357"><span class="linenos" data-line="357"></span></a> <span class="kr">end</span> </span><span id="L-358"><a href="#L-358"><span class="linenos" data-line="358"></span></a> </span><span id="L-359"><a href="#L-359"><span class="linenos" data-line="359"></span></a><span class="c1">-- filter by a list of Qid provided by option getonlyids </span> </span><span id="L-360"><a href="#L-360"><span class="linenos" data-line="360"></span></a> <span class="kr">if</span> <span class="n">j</span><span class="p">.</span><span class="n">mainsnak</span> <span class="ow">and</span> <span class="n">j</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">snaktype</span> <span class="o">==</span> <span class="s1">'value'</span> <span class="ow">and</span> <span class="n">j</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span> <span class="ow">and</span> <span class="n">j</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> <span class="ow">and</span> <span class="n">j</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">id</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">getonlyids</span> <span class="kr">then</span> </span><span id="L-361"><a href="#L-361"><span class="linenos" data-line="361"></span></a> <span class="kd">local</span> <span class="n">t</span> <span class="o">=</span> <span class="n">j</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">id</span> </span><span id="L-362"><a href="#L-362"><span class="linenos" data-line="362"></span></a> <span class="kd">local</span> <span class="n">traff</span> <span class="o">=</span> <span class="kc">false</span> </span><span id="L-363"><a href="#L-363"><span class="linenos" data-line="363"></span></a> <span class="kr">for</span> <span class="n">j2</span><span class="p">,</span> <span class="n">only</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">split</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">getonlyids</span><span class="p">,</span><span class="s1">','</span><span class="p">))</span> <span class="kr">do</span> </span><span id="L-364"><a href="#L-364"><span class="linenos" data-line="364"></span></a> <span class="kr">if</span> <span class="n">t</span> <span class="o">==</span> <span class="n">only</span> <span class="kr">then</span> </span><span id="L-365"><a href="#L-365"><span class="linenos" data-line="365"></span></a> <span class="n">traff</span> <span class="o">=</span> <span class="kc">true</span> </span><span id="L-366"><a href="#L-366"><span class="linenos" data-line="366"></span></a> <span class="kr">end</span> </span><span id="L-367"><a href="#L-367"><span class="linenos" data-line="367"></span></a> <span class="kr">end</span> </span><span id="L-368"><a href="#L-368"><span class="linenos" data-line="368"></span></a> <span class="kr">if</span> <span class="n">traff</span> <span class="kr">then</span> </span><span id="L-369"><a href="#L-369"><span class="linenos" data-line="369"></span></a> <span class="nb">table.insert</span><span class="p">(</span><span class="n">claims2</span><span class="p">,</span> <span class="n">j</span><span class="p">)</span> </span><span id="L-370"><a href="#L-370"><span class="linenos" data-line="370"></span></a> <span class="kr">end</span> </span><span id="L-371"><a href="#L-371"><span class="linenos" data-line="371"></span></a> <span class="kr">end</span> </span><span id="L-372"><a href="#L-372"><span class="linenos" data-line="372"></span></a> </span><span id="L-373"><a href="#L-373"><span class="linenos" data-line="373"></span></a> <span class="kr">end</span> </span><span id="L-374"><a href="#L-374"><span class="linenos" data-line="374"></span></a> <span class="kr">return</span> <span class="n">claims2</span> </span><span id="L-375"><a href="#L-375"><span class="linenos" data-line="375"></span></a><span class="kr">end</span> </span><span id="L-376"><a href="#L-376"><span class="linenos" data-line="376"></span></a> </span><span id="L-377"><a href="#L-377"><span class="linenos" data-line="377"></span></a> </span><span id="L-378"><a href="#L-378"><span class="linenos" data-line="378"></span></a><span class="kr">function</span> <span class="nf">claimindex</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-379"><a href="#L-379"><span class="linenos" data-line="379"></span></a> <span class="kd">local</span> <span class="n">claims2</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-380"><a href="#L-380"><span class="linenos" data-line="380"></span></a> <span class="kr">for</span> <span class="n">j</span><span class="p">,</span> <span class="n">index</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">split</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">claimindex</span><span class="p">,</span><span class="s1">','</span><span class="p">))</span> <span class="kr">do</span> </span><span id="L-381"><a href="#L-381"><span class="linenos" data-line="381"></span></a> <span class="kr">if</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">index</span><span class="p">)</span> <span class="ow">and</span> <span class="o">#</span><span class="n">claims</span> <span class="o">>=</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">index</span><span class="p">)</span> <span class="kr">then</span> </span><span id="L-382"><a href="#L-382"><span class="linenos" data-line="382"></span></a> <span class="nb">table.insert</span><span class="p">(</span><span class="n">claims2</span><span class="p">,</span> <span class="n">claims</span><span class="p">[</span><span class="nb">tonumber</span><span class="p">(</span><span class="n">index</span><span class="p">)])</span> </span><span id="L-383"><a href="#L-383"><span class="linenos" data-line="383"></span></a> <span class="kr">end</span> </span><span id="L-384"><a href="#L-384"><span class="linenos" data-line="384"></span></a> <span class="kr">end</span> </span><span id="L-385"><a href="#L-385"><span class="linenos" data-line="385"></span></a> <span class="kr">return</span> <span class="n">claims2</span> </span><span id="L-386"><a href="#L-386"><span class="linenos" data-line="386"></span></a><span class="kr">end</span> </span><span id="L-387"><a href="#L-387"><span class="linenos" data-line="387"></span></a> </span><span id="L-388"><a href="#L-388"><span class="linenos" data-line="388"></span></a><span class="kr">function</span> <span class="nf">preferqualifier</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-389"><a href="#L-389"><span class="linenos" data-line="389"></span></a> <span class="kd">local</span> <span class="n">claims2</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-390"><a href="#L-390"><span class="linenos" data-line="390"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">statement</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span> <span class="n">claims</span> <span class="p">)</span> <span class="kr">do</span> </span><span id="L-391"><a href="#L-391"><span class="linenos" data-line="391"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span> <span class="ow">and</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">preferqualifier</span><span class="p">:</span><span class="n">upper</span><span class="p">()]</span> <span class="kr">then</span> </span><span id="L-392"><a href="#L-392"><span class="linenos" data-line="392"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">preferqualifiervalue</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">preferqualifiervalue</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-393"><a href="#L-393"><span class="linenos" data-line="393"></span></a> <span class="kd">local</span> <span class="n">active</span> <span class="o">=</span> <span class="kc">false</span> </span><span id="L-394"><a href="#L-394"><span class="linenos" data-line="394"></span></a> <span class="kr">for</span> <span class="n">k</span><span class="p">,</span> <span class="n">t</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">split</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">preferqualifiervalue</span><span class="p">,</span><span class="s1">','</span><span class="p">))</span> <span class="kr">do</span> </span><span id="L-395"><a href="#L-395"><span class="linenos" data-line="395"></span></a> <span class="kr">for</span> <span class="n">j</span><span class="p">,</span> <span class="n">value</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span><span class="o">=</span><span class="n">options</span><span class="p">.</span><span class="n">preferqualifier</span><span class="p">:</span><span class="n">upper</span><span class="p">(),</span> <span class="n">raw</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">))</span> <span class="kr">do</span> </span><span id="L-396"><a href="#L-396"><span class="linenos" data-line="396"></span></a> <span class="kr">if</span> <span class="n">value</span><span class="p">.</span><span class="n">item</span> <span class="o">==</span> <span class="n">t</span> <span class="ow">and</span> <span class="ow">not</span> <span class="n">active</span> <span class="kr">then</span> </span><span id="L-397"><a href="#L-397"><span class="linenos" data-line="397"></span></a> <span class="nb">table.insert</span><span class="p">(</span> <span class="n">claims2</span><span class="p">,</span> <span class="n">statement</span><span class="p">)</span> </span><span id="L-398"><a href="#L-398"><span class="linenos" data-line="398"></span></a> <span class="n">active</span> <span class="o">=</span> <span class="kc">true</span> </span><span id="L-399"><a href="#L-399"><span class="linenos" data-line="399"></span></a> <span class="kr">end</span> </span><span id="L-400"><a href="#L-400"><span class="linenos" data-line="400"></span></a> <span class="kr">end</span> </span><span id="L-401"><a href="#L-401"><span class="linenos" data-line="401"></span></a> <span class="kr">end</span> </span><span id="L-402"><a href="#L-402"><span class="linenos" data-line="402"></span></a> <span class="kr">else</span> </span><span id="L-403"><a href="#L-403"><span class="linenos" data-line="403"></span></a> <span class="nb">table.insert</span><span class="p">(</span> <span class="n">claims2</span><span class="p">,</span> <span class="n">statement</span><span class="p">)</span> </span><span id="L-404"><a href="#L-404"><span class="linenos" data-line="404"></span></a> <span class="kr">end</span> </span><span id="L-405"><a href="#L-405"><span class="linenos" data-line="405"></span></a> <span class="kr">end</span> </span><span id="L-406"><a href="#L-406"><span class="linenos" data-line="406"></span></a> <span class="kr">end</span> </span><span id="L-407"><a href="#L-407"><span class="linenos" data-line="407"></span></a> <span class="kr">return</span> <span class="n">claims2</span> </span><span id="L-408"><a href="#L-408"><span class="linenos" data-line="408"></span></a><span class="kr">end</span> </span><span id="L-409"><a href="#L-409"><span class="linenos" data-line="409"></span></a> </span><span id="L-410"><a href="#L-410"><span class="linenos" data-line="410"></span></a><span class="kr">function</span> <span class="nf">versalisering</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-411"><a href="#L-411"><span class="linenos" data-line="411"></span></a> <span class="kd">local</span> <span class="n">versalisering</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">versalisering</span> </span><span id="L-412"><a href="#L-412"><span class="linenos" data-line="412"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">firstversalisering</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">num</span> <span class="o">==</span> <span class="mi">1</span> <span class="kr">then</span> </span><span id="L-413"><a href="#L-413"><span class="linenos" data-line="413"></span></a> <span class="n">versalisering</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">firstversalisering</span> </span><span id="L-414"><a href="#L-414"><span class="linenos" data-line="414"></span></a> <span class="kr">end</span> </span><span id="L-415"><a href="#L-415"><span class="linenos" data-line="415"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">versalisering</span> <span class="ow">or</span> <span class="n">versalisering</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-416"><a href="#L-416"><span class="linenos" data-line="416"></span></a> <span class="kr">return</span> <span class="n">label</span> </span><span id="L-417"><a href="#L-417"><span class="linenos" data-line="417"></span></a> <span class="kr">end</span> </span><span id="L-418"><a href="#L-418"><span class="linenos" data-line="418"></span></a> <span class="kr">if</span> <span class="n">versalisering</span> <span class="o">==</span> <span class="s1">'lcfirst'</span> <span class="kr">then</span> </span><span id="L-419"><a href="#L-419"><span class="linenos" data-line="419"></span></a> <span class="kr">return</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="s2">"{{lcfirst: "</span> <span class="o">..</span> <span class="n">label</span> <span class="o">..</span> <span class="s2">" }}"</span><span class="p">)</span> </span><span id="L-420"><a href="#L-420"><span class="linenos" data-line="420"></span></a> <span class="kr">elseif</span> <span class="n">versalisering</span> <span class="o">==</span> <span class="s1">'ucfirst'</span> <span class="kr">then</span> </span><span id="L-421"><a href="#L-421"><span class="linenos" data-line="421"></span></a> <span class="kr">return</span> <span class="n">mw</span><span class="p">.</span><span class="n">language</span><span class="p">.</span><span class="n">getContentLanguage</span><span class="p">():</span><span class="n">ucfirst</span><span class="p">(</span> <span class="n">label</span> <span class="p">)</span> </span><span id="L-422"><a href="#L-422"><span class="linenos" data-line="422"></span></a> <span class="kr">elseif</span> <span class="n">versalisering</span> <span class="o">==</span> <span class="s1">'lc'</span> <span class="kr">then</span> </span><span id="L-423"><a href="#L-423"><span class="linenos" data-line="423"></span></a> <span class="kr">return</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="s2">"{{lc: "</span> <span class="o">..</span> <span class="n">label</span> <span class="o">..</span> <span class="s2">" }}"</span><span class="p">)</span> </span><span id="L-424"><a href="#L-424"><span class="linenos" data-line="424"></span></a> <span class="kr">elseif</span> <span class="n">versalisering</span> <span class="o">==</span> <span class="s1">'uc'</span> <span class="kr">then</span> </span><span id="L-425"><a href="#L-425"><span class="linenos" data-line="425"></span></a> <span class="kr">return</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="s2">"{{uc: "</span> <span class="o">..</span> <span class="n">label</span> <span class="o">..</span> <span class="s2">" }}"</span><span class="p">)</span> </span><span id="L-426"><a href="#L-426"><span class="linenos" data-line="426"></span></a> <span class="kr">end</span> </span><span id="L-427"><a href="#L-427"><span class="linenos" data-line="427"></span></a> <span class="kr">return</span> <span class="n">label</span> </span><span id="L-428"><a href="#L-428"><span class="linenos" data-line="428"></span></a><span class="kr">end</span> </span><span id="L-429"><a href="#L-429"><span class="linenos" data-line="429"></span></a><span class="kr">function</span> <span class="nf">getqualifierbysortingproperty</span><span class="p">(</span><span class="n">claim</span><span class="p">,</span> <span class="n">sortingproperty</span><span class="p">)</span> </span><span id="L-430"><a href="#L-430"><span class="linenos" data-line="430"></span></a> <span class="kr">for</span> <span class="n">k</span><span class="p">,</span> <span class="n">v</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">sortingproperty</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-431"><a href="#L-431"><span class="linenos" data-line="431"></span></a> <span class="kr">if</span> <span class="n">claim</span><span class="p">.</span><span class="n">qualifiers</span> <span class="ow">and</span> <span class="n">claim</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="n">v</span><span class="p">]</span> <span class="ow">and</span> <span class="n">claim</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="n">v</span><span class="p">][</span><span class="mi">1</span><span class="p">].</span><span class="n">snaktype</span> <span class="o">==</span> <span class="s1">'value'</span> <span class="kr">then</span> </span><span id="L-432"><a href="#L-432"><span class="linenos" data-line="432"></span></a> <span class="kr">if</span> <span class="n">claim</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="n">v</span><span class="p">][</span><span class="mi">1</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span> <span class="kr">then</span> </span><span id="L-433"><a href="#L-433"><span class="linenos" data-line="433"></span></a> <span class="kr">return</span> <span class="n">claim</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="n">v</span><span class="p">][</span><span class="mi">1</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span> </span><span id="L-434"><a href="#L-434"><span class="linenos" data-line="434"></span></a> <span class="kr">else</span> </span><span id="L-435"><a href="#L-435"><span class="linenos" data-line="435"></span></a> <span class="kr">return</span> <span class="n">claim</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="n">v</span><span class="p">][</span><span class="mi">1</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> </span><span id="L-436"><a href="#L-436"><span class="linenos" data-line="436"></span></a> <span class="kr">end</span> </span><span id="L-437"><a href="#L-437"><span class="linenos" data-line="437"></span></a> <span class="kr">end</span> </span><span id="L-438"><a href="#L-438"><span class="linenos" data-line="438"></span></a> <span class="kr">end</span> </span><span id="L-439"><a href="#L-439"><span class="linenos" data-line="439"></span></a> <span class="kr">return</span> <span class="kc">nil</span> </span><span id="L-440"><a href="#L-440"><span class="linenos" data-line="440"></span></a><span class="kr">end</span> </span><span id="L-441"><a href="#L-441"><span class="linenos" data-line="441"></span></a> </span><span id="L-442"><a href="#L-442"><span class="linenos" data-line="442"></span></a><span class="kr">function</span> <span class="nf">getDate</span><span class="p">(</span><span class="n">claim</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-443"><a href="#L-443"><span class="linenos" data-line="443"></span></a> <span class="kd">local</span> <span class="n">sortingproperty</span> <span class="o">=</span> <span class="n">sortingproperties</span> </span><span id="L-444"><a href="#L-444"><span class="linenos" data-line="444"></span></a> <span class="kr">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">sortingproperty</span><span class="p">)</span> <span class="o">==</span> <span class="s1">'table'</span> <span class="kr">then</span> </span><span id="L-445"><a href="#L-445"><span class="linenos" data-line="445"></span></a> <span class="n">sortingproperty</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">sortingproperty</span> </span><span id="L-446"><a href="#L-446"><span class="linenos" data-line="446"></span></a> <span class="kr">elseif</span> <span class="nb">type</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">sortingproperty</span><span class="p">)</span> <span class="o">==</span> <span class="s1">'string'</span> <span class="kr">then</span> </span><span id="L-447"><a href="#L-447"><span class="linenos" data-line="447"></span></a> <span class="n">sortingproperty</span> <span class="o">=</span> <span class="p">{</span><span class="n">options</span><span class="p">.</span><span class="n">sortingproperty</span><span class="p">}</span> </span><span id="L-448"><a href="#L-448"><span class="linenos" data-line="448"></span></a> <span class="kr">end</span> </span><span id="L-449"><a href="#L-449"><span class="linenos" data-line="449"></span></a> <span class="kr">return</span> <span class="n">getqualifierbysortingproperty</span><span class="p">(</span><span class="n">claim</span><span class="p">,</span> <span class="n">sortingproperty</span><span class="p">)</span> </span><span id="L-450"><a href="#L-450"><span class="linenos" data-line="450"></span></a><span class="kr">end</span> </span><span id="L-451"><a href="#L-451"><span class="linenos" data-line="451"></span></a> </span><span id="L-452"><a href="#L-452"><span class="linenos" data-line="452"></span></a><span class="kr">function</span> <span class="nf">getDateArb</span><span class="p">(</span><span class="n">claim</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-453"><a href="#L-453"><span class="linenos" data-line="453"></span></a> <span class="kd">local</span> <span class="n">sortingproperty</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">sortingproperty</span> <span class="ow">or</span> <span class="s1">'P569'</span> </span><span id="L-454"><a href="#L-454"><span class="linenos" data-line="454"></span></a> <span class="kr">if</span> <span class="n">claim</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">snaktype</span> <span class="o">==</span> <span class="s1">'value'</span> <span class="kr">then</span> </span><span id="L-455"><a href="#L-455"><span class="linenos" data-line="455"></span></a> <span class="kd">local</span> <span class="n">item</span> <span class="o">=</span> <span class="n">getEntityIdFromValue</span><span class="p">(</span> <span class="n">claim</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> <span class="p">)</span> </span><span id="L-456"><a href="#L-456"><span class="linenos" data-line="456"></span></a> <span class="kr">return</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="n">sortingproperty</span><span class="p">,</span> <span class="n">entityId</span> <span class="o">=</span> <span class="n">item</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'ja'</span><span class="p">,</span> <span class="n">sortbytime</span> <span class="o">=</span> <span class="s1">'chronological'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'ja'</span><span class="p">})</span> </span><span id="L-457"><a href="#L-457"><span class="linenos" data-line="457"></span></a> <span class="kr">end</span> </span><span id="L-458"><a href="#L-458"><span class="linenos" data-line="458"></span></a><span class="kr">end</span> </span><span id="L-459"><a href="#L-459"><span class="linenos" data-line="459"></span></a> </span><span id="L-460"><a href="#L-460"><span class="linenos" data-line="460"></span></a><span class="kr">function</span> <span class="nf">comparedates</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-461"><a href="#L-461"><span class="linenos" data-line="461"></span></a> <span class="kr">if</span> <span class="n">a</span><span class="o">==</span><span class="kc">nil</span> <span class="ow">and</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">sortnotimeas</span> <span class="o">==</span> <span class="s1">'maxtime'</span><span class="p">)</span> <span class="kr">then</span> <span class="n">a</span> <span class="o">=</span> <span class="s1">'+9999-12-31T23:59:59Z'</span> <span class="kr">end</span> </span><span id="L-462"><a href="#L-462"><span class="linenos" data-line="462"></span></a> <span class="kr">if</span> <span class="n">b</span><span class="o">==</span><span class="kc">nil</span> <span class="ow">and</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">sortnotimeas</span> <span class="o">==</span> <span class="s1">'maxtime'</span><span class="p">)</span> <span class="kr">then</span> <span class="n">b</span> <span class="o">=</span> <span class="s1">'+9999-12-31T23:59:59Z'</span> <span class="kr">end</span> </span><span id="L-463"><a href="#L-463"><span class="linenos" data-line="463"></span></a> <span class="kr">if</span> <span class="n">a</span> <span class="ow">and</span> <span class="n">b</span> <span class="kr">then</span> </span><span id="L-464"><a href="#L-464"><span class="linenos" data-line="464"></span></a> <span class="kr">return</span> <span class="n">a</span> <span class="o">></span> <span class="n">b</span> </span><span id="L-465"><a href="#L-465"><span class="linenos" data-line="465"></span></a> <span class="kr">elseif</span> <span class="n">a</span> <span class="kr">then</span> </span><span id="L-466"><a href="#L-466"><span class="linenos" data-line="466"></span></a> <span class="kr">return</span> <span class="kc">true</span> </span><span id="L-467"><a href="#L-467"><span class="linenos" data-line="467"></span></a> <span class="kr">end</span> </span><span id="L-468"><a href="#L-468"><span class="linenos" data-line="468"></span></a><span class="kr">end</span> </span><span id="L-469"><a href="#L-469"><span class="linenos" data-line="469"></span></a> </span><span id="L-470"><a href="#L-470"><span class="linenos" data-line="470"></span></a><span class="kr">function</span> <span class="nf">getValue</span><span class="p">(</span><span class="n">claim</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-471"><a href="#L-471"><span class="linenos" data-line="471"></span></a> <span class="kd">local</span> <span class="n">sortingproperty</span> <span class="o">=</span> <span class="n">sortingproperties</span> </span><span id="L-472"><a href="#L-472"><span class="linenos" data-line="472"></span></a> <span class="kr">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">sortingproperty</span><span class="p">)</span> <span class="o">==</span> <span class="s1">'table'</span> <span class="kr">then</span> </span><span id="L-473"><a href="#L-473"><span class="linenos" data-line="473"></span></a> <span class="n">sortingproperty</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">sortingproperty</span> </span><span id="L-474"><a href="#L-474"><span class="linenos" data-line="474"></span></a> <span class="kr">elseif</span> <span class="nb">type</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">sortingproperty</span><span class="p">)</span> <span class="o">==</span> <span class="s1">'string'</span> <span class="kr">then</span> </span><span id="L-475"><a href="#L-475"><span class="linenos" data-line="475"></span></a> <span class="n">sortingproperty</span> <span class="o">=</span> <span class="p">{</span><span class="n">options</span><span class="p">.</span><span class="n">sortingproperty</span><span class="p">}</span> </span><span id="L-476"><a href="#L-476"><span class="linenos" data-line="476"></span></a> <span class="kr">end</span> </span><span id="L-477"><a href="#L-477"><span class="linenos" data-line="477"></span></a> <span class="kr">return</span> <span class="n">getqualifierbysortingproperty</span><span class="p">(</span><span class="n">claim</span><span class="p">,</span> <span class="n">sortingproperty</span><span class="p">)</span> </span><span id="L-478"><a href="#L-478"><span class="linenos" data-line="478"></span></a><span class="kr">end</span> </span><span id="L-479"><a href="#L-479"><span class="linenos" data-line="479"></span></a> </span><span id="L-480"><a href="#L-480"><span class="linenos" data-line="480"></span></a><span class="kr">function</span> <span class="nf">comparevalues</span><span class="p">(</span><span class="n">a</span><span class="p">,</span><span class="n">b</span><span class="p">)</span> </span><span id="L-481"><a href="#L-481"><span class="linenos" data-line="481"></span></a> <span class="kr">if</span> <span class="n">a</span> <span class="ow">and</span> <span class="n">b</span> <span class="kr">then</span> </span><span id="L-482"><a href="#L-482"><span class="linenos" data-line="482"></span></a> <span class="kr">return</span> <span class="n">a</span> <span class="o">></span> <span class="n">b</span> </span><span id="L-483"><a href="#L-483"><span class="linenos" data-line="483"></span></a> <span class="kr">elseif</span> <span class="n">a</span> <span class="kr">then</span> </span><span id="L-484"><a href="#L-484"><span class="linenos" data-line="484"></span></a> <span class="kr">return</span> <span class="kc">true</span> </span><span id="L-485"><a href="#L-485"><span class="linenos" data-line="485"></span></a> <span class="kr">end</span> </span><span id="L-486"><a href="#L-486"><span class="linenos" data-line="486"></span></a><span class="kr">end</span> </span><span id="L-487"><a href="#L-487"><span class="linenos" data-line="487"></span></a> </span><span id="L-488"><a href="#L-488"><span class="linenos" data-line="488"></span></a><span class="kr">function</span> <span class="nf">sortbyqualifier</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-489"><a href="#L-489"><span class="linenos" data-line="489"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">sortbytime</span> <span class="kr">then</span> </span><span id="L-490"><a href="#L-490"><span class="linenos" data-line="490"></span></a> <span class="nb">table.sort</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="kr">function</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="p">)</span> </span><span id="L-491"><a href="#L-491"><span class="linenos" data-line="491"></span></a> <span class="kd">local</span> <span class="n">timeA</span> <span class="o">=</span> <span class="n">getDate</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-492"><a href="#L-492"><span class="linenos" data-line="492"></span></a> <span class="kd">local</span> <span class="n">timeB</span> <span class="o">=</span> <span class="n">getDate</span><span class="p">(</span><span class="n">b</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-493"><a href="#L-493"><span class="linenos" data-line="493"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">sortbytime</span> <span class="o">==</span> <span class="s1">'inverted'</span> <span class="kr">then</span> </span><span id="L-494"><a href="#L-494"><span class="linenos" data-line="494"></span></a> <span class="kr">return</span> <span class="n">comparedates</span><span class="p">(</span><span class="n">timeB</span><span class="p">,</span> <span class="n">timeA</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-495"><a href="#L-495"><span class="linenos" data-line="495"></span></a> <span class="kr">else</span> </span><span id="L-496"><a href="#L-496"><span class="linenos" data-line="496"></span></a> <span class="kr">return</span> <span class="n">comparedates</span><span class="p">(</span><span class="n">timeA</span><span class="p">,</span> <span class="n">timeB</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-497"><a href="#L-497"><span class="linenos" data-line="497"></span></a> <span class="kr">end</span> </span><span id="L-498"><a href="#L-498"><span class="linenos" data-line="498"></span></a> <span class="kr">end</span><span class="p">)</span> </span><span id="L-499"><a href="#L-499"><span class="linenos" data-line="499"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">sortbyvalue</span> <span class="kr">then</span> </span><span id="L-500"><a href="#L-500"><span class="linenos" data-line="500"></span></a> <span class="nb">table.sort</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="kr">function</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="p">)</span> </span><span id="L-501"><a href="#L-501"><span class="linenos" data-line="501"></span></a> <span class="kd">local</span> <span class="n">valueA</span> <span class="o">=</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">getValue</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">options</span><span class="p">))</span> </span><span id="L-502"><a href="#L-502"><span class="linenos" data-line="502"></span></a> <span class="kd">local</span> <span class="n">valueB</span> <span class="o">=</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">getValue</span><span class="p">(</span><span class="n">b</span><span class="p">,</span> <span class="n">options</span><span class="p">))</span> </span><span id="L-503"><a href="#L-503"><span class="linenos" data-line="503"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">sortbyvalue</span> <span class="o">==</span> <span class="s1">'ascending'</span> <span class="kr">then</span> </span><span id="L-504"><a href="#L-504"><span class="linenos" data-line="504"></span></a> <span class="kr">return</span> <span class="n">comparevalues</span><span class="p">(</span><span class="n">valueB</span><span class="p">,</span> <span class="n">valueA</span><span class="p">)</span> </span><span id="L-505"><a href="#L-505"><span class="linenos" data-line="505"></span></a> <span class="kr">else</span> </span><span id="L-506"><a href="#L-506"><span class="linenos" data-line="506"></span></a> <span class="kr">return</span> <span class="n">comparevalues</span><span class="p">(</span><span class="n">valueA</span><span class="p">,</span> <span class="n">valueB</span><span class="p">)</span> </span><span id="L-507"><a href="#L-507"><span class="linenos" data-line="507"></span></a> <span class="kr">end</span> </span><span id="L-508"><a href="#L-508"><span class="linenos" data-line="508"></span></a> <span class="kr">end</span><span class="p">)</span> </span><span id="L-509"><a href="#L-509"><span class="linenos" data-line="509"></span></a> <span class="kr">end</span> </span><span id="L-510"><a href="#L-510"><span class="linenos" data-line="510"></span></a> <span class="kr">return</span> <span class="n">claims</span> </span><span id="L-511"><a href="#L-511"><span class="linenos" data-line="511"></span></a><span class="kr">end</span> </span><span id="L-512"><a href="#L-512"><span class="linenos" data-line="512"></span></a> </span><span id="L-513"><a href="#L-513"><span class="linenos" data-line="513"></span></a><span class="kr">function</span> <span class="nf">getPrio</span><span class="p">(</span><span class="n">claim</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-514"><a href="#L-514"><span class="linenos" data-line="514"></span></a> <span class="kd">local</span> <span class="n">a</span> <span class="o">=</span> <span class="n">fallbackprio</span><span class="p">[</span><span class="n">claim</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">language</span><span class="p">]</span> </span><span id="L-515"><a href="#L-515"><span class="linenos" data-line="515"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">a</span> <span class="kr">then</span> </span><span id="L-516"><a href="#L-516"><span class="linenos" data-line="516"></span></a> <span class="kr">return</span> <span class="mi">0</span> </span><span id="L-517"><a href="#L-517"><span class="linenos" data-line="517"></span></a> <span class="kr">end</span> </span><span id="L-518"><a href="#L-518"><span class="linenos" data-line="518"></span></a> <span class="kr">return</span> <span class="n">a</span> </span><span id="L-519"><a href="#L-519"><span class="linenos" data-line="519"></span></a><span class="kr">end</span> </span><span id="L-520"><a href="#L-520"><span class="linenos" data-line="520"></span></a> </span><span id="L-521"><a href="#L-521"><span class="linenos" data-line="521"></span></a><span class="kr">function</span> <span class="nf">sortbylanguage</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-522"><a href="#L-522"><span class="linenos" data-line="522"></span></a> <span class="kr">if</span> <span class="n">claims</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datatype</span> <span class="o">~=</span> <span class="s1">'monolingualtext'</span> <span class="kr">then</span> </span><span id="L-523"><a href="#L-523"><span class="linenos" data-line="523"></span></a> <span class="kr">return</span> <span class="n">claims</span> </span><span id="L-524"><a href="#L-524"><span class="linenos" data-line="524"></span></a> <span class="kr">end</span> </span><span id="L-525"><a href="#L-525"><span class="linenos" data-line="525"></span></a> <span class="nb">table.sort</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="kr">function</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="p">)</span> </span><span id="L-526"><a href="#L-526"><span class="linenos" data-line="526"></span></a> <span class="kd">local</span> <span class="n">prioA</span> <span class="o">=</span> <span class="n">getPrio</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-527"><a href="#L-527"><span class="linenos" data-line="527"></span></a> <span class="kd">local</span> <span class="n">prioB</span> <span class="o">=</span> <span class="n">getPrio</span><span class="p">(</span><span class="n">b</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-528"><a href="#L-528"><span class="linenos" data-line="528"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">sortbytime</span> <span class="o">==</span> <span class="s1">'inverted'</span> <span class="kr">then</span> </span><span id="L-529"><a href="#L-529"><span class="linenos" data-line="529"></span></a> <span class="kr">return</span> <span class="n">comparedates</span><span class="p">(</span><span class="n">prioB</span><span class="p">,</span> <span class="n">prioB</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-530"><a href="#L-530"><span class="linenos" data-line="530"></span></a> <span class="kr">else</span> </span><span id="L-531"><a href="#L-531"><span class="linenos" data-line="531"></span></a> <span class="kr">return</span> <span class="n">comparedates</span><span class="p">(</span><span class="n">prioA</span><span class="p">,</span> <span class="n">prioB</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-532"><a href="#L-532"><span class="linenos" data-line="532"></span></a> <span class="kr">end</span> </span><span id="L-533"><a href="#L-533"><span class="linenos" data-line="533"></span></a> <span class="kr">end</span><span class="p">)</span> </span><span id="L-534"><a href="#L-534"><span class="linenos" data-line="534"></span></a> <span class="kr">return</span> <span class="n">claims</span> </span><span id="L-535"><a href="#L-535"><span class="linenos" data-line="535"></span></a><span class="kr">end</span> </span><span id="L-536"><a href="#L-536"><span class="linenos" data-line="536"></span></a> </span><span id="L-537"><a href="#L-537"><span class="linenos" data-line="537"></span></a><span class="kr">function</span> <span class="nf">sortbyarb</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-538"><a href="#L-538"><span class="linenos" data-line="538"></span></a> <span class="nb">table.sort</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="kr">function</span><span class="p">(</span><span class="n">a</span><span class="p">,</span><span class="n">b</span><span class="p">)</span> </span><span id="L-539"><a href="#L-539"><span class="linenos" data-line="539"></span></a> <span class="kd">local</span> <span class="n">timeA</span> <span class="o">=</span> <span class="n">getDateArb</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-540"><a href="#L-540"><span class="linenos" data-line="540"></span></a> <span class="kd">local</span> <span class="n">timeB</span> <span class="o">=</span> <span class="n">getDateArb</span><span class="p">(</span><span class="n">b</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-541"><a href="#L-541"><span class="linenos" data-line="541"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">sortbyarbitrary</span> <span class="o">==</span> <span class="s1">'inverted'</span> <span class="kr">then</span> </span><span id="L-542"><a href="#L-542"><span class="linenos" data-line="542"></span></a> <span class="kr">return</span> <span class="n">comparedates</span><span class="p">(</span><span class="n">timeB</span><span class="p">,</span> <span class="n">timeA</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-543"><a href="#L-543"><span class="linenos" data-line="543"></span></a> <span class="kr">else</span> </span><span id="L-544"><a href="#L-544"><span class="linenos" data-line="544"></span></a> <span class="kr">return</span> <span class="n">comparedates</span><span class="p">(</span><span class="n">timeA</span><span class="p">,</span> <span class="n">timeB</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-545"><a href="#L-545"><span class="linenos" data-line="545"></span></a> <span class="kr">end</span> </span><span id="L-546"><a href="#L-546"><span class="linenos" data-line="546"></span></a> <span class="kr">end</span><span class="p">)</span> </span><span id="L-547"><a href="#L-547"><span class="linenos" data-line="547"></span></a> <span class="kr">return</span> <span class="n">claims</span> </span><span id="L-548"><a href="#L-548"><span class="linenos" data-line="548"></span></a><span class="kr">end</span> </span><span id="L-549"><a href="#L-549"><span class="linenos" data-line="549"></span></a> </span><span id="L-550"><a href="#L-550"><span class="linenos" data-line="550"></span></a><span class="kr">function</span> <span class="nf">getLabelFromFallBack</span><span class="p">(</span> <span class="n">id</span> <span class="p">)</span> </span><span id="L-551"><a href="#L-551"><span class="linenos" data-line="551"></span></a> <span class="kd">local</span> <span class="n">entity</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-552"><a href="#L-552"><span class="linenos" data-line="552"></span></a> <span class="kr">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">id</span><span class="p">)</span> <span class="o">==</span> <span class="s1">'table'</span> <span class="kr">then</span> </span><span id="L-553"><a href="#L-553"><span class="linenos" data-line="553"></span></a> <span class="n">entity</span> <span class="o">=</span> <span class="n">id</span> </span><span id="L-554"><a href="#L-554"><span class="linenos" data-line="554"></span></a> <span class="n">id</span> <span class="o">=</span> <span class="n">entity</span><span class="p">.</span><span class="n">id</span> </span><span id="L-555"><a href="#L-555"><span class="linenos" data-line="555"></span></a> <span class="kr">else</span> </span><span id="L-556"><a href="#L-556"><span class="linenos" data-line="556"></span></a> <span class="n">entity</span> <span class="o">=</span> <span class="n">getEntityFromId</span><span class="p">(</span> <span class="n">id</span> <span class="p">)</span> </span><span id="L-557"><a href="#L-557"><span class="linenos" data-line="557"></span></a> <span class="kr">end</span> </span><span id="L-558"><a href="#L-558"><span class="linenos" data-line="558"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">entity</span> <span class="ow">or</span> <span class="ow">not</span> <span class="n">entity</span><span class="p">.</span><span class="n">labels</span> <span class="kr">then</span> </span><span id="L-559"><a href="#L-559"><span class="linenos" data-line="559"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="s1">'[[d:'</span> <span class="o">..</span> <span class="n">id</span> <span class="o">..</span> <span class="s1">'|'</span> <span class="o">..</span> <span class="n">id</span> <span class="o">..</span> <span class="s1">']][[Kategori:Wikidatabaserade länkar som leder till sidor utan etikett]]'</span><span class="p">,</span> <span class="n">language</span> <span class="o">=</span> <span class="s1">''</span><span class="p">}</span> </span><span id="L-560"><a href="#L-560"><span class="linenos" data-line="560"></span></a> <span class="kr">end</span> </span><span id="L-561"><a href="#L-561"><span class="linenos" data-line="561"></span></a> <span class="kr">for</span> <span class="n">k</span><span class="p">,</span> <span class="n">v</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">fallback</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-562"><a href="#L-562"><span class="linenos" data-line="562"></span></a> <span class="kr">if</span> <span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">[</span><span class="n">v</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-563"><a href="#L-563"><span class="linenos" data-line="563"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">[</span><span class="n">v</span><span class="p">].</span><span class="n">value</span><span class="p">,</span> <span class="n">language</span> <span class="o">=</span> <span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">[</span><span class="n">v</span><span class="p">].</span><span class="n">language</span><span class="p">}</span> </span><span id="L-564"><a href="#L-564"><span class="linenos" data-line="564"></span></a> <span class="kr">end</span> </span><span id="L-565"><a href="#L-565"><span class="linenos" data-line="565"></span></a> <span class="kr">end</span> </span><span id="L-566"><a href="#L-566"><span class="linenos" data-line="566"></span></a> <span class="c1">-- Om inget fallback-språk finns av de i variabeln ovan, så används det först definierade i objektet</span> </span><span id="L-567"><a href="#L-567"><span class="linenos" data-line="567"></span></a> <span class="kr">if</span> <span class="n">entity</span><span class="p">.</span><span class="n">labels</span> <span class="kr">then</span> </span><span id="L-568"><a href="#L-568"><span class="linenos" data-line="568"></span></a> <span class="kr">for</span> <span class="n">v</span><span class="p">,</span> <span class="n">k</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-569"><a href="#L-569"><span class="linenos" data-line="569"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">k</span><span class="p">.</span><span class="n">value</span><span class="p">,</span> <span class="n">language</span> <span class="o">=</span> <span class="n">k</span><span class="p">.</span><span class="n">language</span><span class="p">}</span> </span><span id="L-570"><a href="#L-570"><span class="linenos" data-line="570"></span></a> <span class="kr">end</span> </span><span id="L-571"><a href="#L-571"><span class="linenos" data-line="571"></span></a> <span class="kr">end</span> </span><span id="L-572"><a href="#L-572"><span class="linenos" data-line="572"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="s1">'-'</span><span class="p">,</span> <span class="n">language</span> <span class="o">=</span> <span class="s1">''</span><span class="p">}</span> </span><span id="L-573"><a href="#L-573"><span class="linenos" data-line="573"></span></a><span class="kr">end</span> </span><span id="L-574"><a href="#L-574"><span class="linenos" data-line="574"></span></a> </span><span id="L-575"><a href="#L-575"><span class="linenos" data-line="575"></span></a><span class="kr">function</span> <span class="nf">getEntityFromId</span><span class="p">(</span> <span class="n">id</span> <span class="p">)</span> </span><span id="L-576"><a href="#L-576"><span class="linenos" data-line="576"></span></a> <span class="kr">if</span> <span class="n">id</span> <span class="ow">and</span> <span class="n">id</span> <span class="o">~=</span> <span class="s1">''</span><span class="kr">then</span> </span><span id="L-577"><a href="#L-577"><span class="linenos" data-line="577"></span></a> <span class="kr">return</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityObject</span><span class="p">(</span> <span class="n">id</span> <span class="p">)</span> </span><span id="L-578"><a href="#L-578"><span class="linenos" data-line="578"></span></a> <span class="kr">else</span> </span><span id="L-579"><a href="#L-579"><span class="linenos" data-line="579"></span></a> <span class="kr">return</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityObject</span><span class="p">()</span> </span><span id="L-580"><a href="#L-580"><span class="linenos" data-line="580"></span></a> <span class="kr">end</span> </span><span id="L-581"><a href="#L-581"><span class="linenos" data-line="581"></span></a><span class="kr">end</span> </span><span id="L-582"><a href="#L-582"><span class="linenos" data-line="582"></span></a> </span><span id="L-583"><a href="#L-583"><span class="linenos" data-line="583"></span></a><span class="kr">function</span> <span class="nf">getEntityIdFromValue</span><span class="p">(</span> <span class="n">value</span> <span class="p">)</span> </span><span id="L-584"><a href="#L-584"><span class="linenos" data-line="584"></span></a> <span class="kr">if</span> <span class="n">value</span><span class="p">[</span><span class="s1">'entity-type'</span><span class="p">]</span> <span class="o">==</span> <span class="s1">'item'</span> <span class="kr">then</span> </span><span id="L-585"><a href="#L-585"><span class="linenos" data-line="585"></span></a> <span class="kr">return</span> <span class="s1">'Q'</span> <span class="o">..</span> <span class="n">value</span><span class="p">[</span><span class="s1">'numeric-id'</span><span class="p">]</span> </span><span id="L-586"><a href="#L-586"><span class="linenos" data-line="586"></span></a> <span class="kr">elseif</span> <span class="n">value</span><span class="p">[</span><span class="s1">'entity-type'</span><span class="p">]</span> <span class="o">==</span> <span class="s1">'property'</span> <span class="kr">then</span> </span><span id="L-587"><a href="#L-587"><span class="linenos" data-line="587"></span></a> <span class="kr">return</span> <span class="s1">'P'</span> <span class="o">..</span> <span class="n">value</span><span class="p">[</span><span class="s1">'numeric-id'</span><span class="p">]</span> </span><span id="L-588"><a href="#L-588"><span class="linenos" data-line="588"></span></a> <span class="kr">else</span> </span><span id="L-589"><a href="#L-589"><span class="linenos" data-line="589"></span></a> <span class="kr">return</span> <span class="n">formatError</span><span class="p">(</span> <span class="s1">'unknown-entity-type'</span> <span class="p">)</span> </span><span id="L-590"><a href="#L-590"><span class="linenos" data-line="590"></span></a> <span class="kr">end</span> </span><span id="L-591"><a href="#L-591"><span class="linenos" data-line="591"></span></a><span class="kr">end</span> </span><span id="L-592"><a href="#L-592"><span class="linenos" data-line="592"></span></a> </span><span id="L-593"><a href="#L-593"><span class="linenos" data-line="593"></span></a><span class="kr">function</span> <span class="nf">formatError</span><span class="p">(</span> <span class="n">key</span> <span class="p">)</span> </span><span id="L-594"><a href="#L-594"><span class="linenos" data-line="594"></span></a> <span class="kr">return</span> <span class="s1">'<span class="error">'</span> <span class="o">..</span> <span class="n">i18n</span><span class="p">.</span><span class="n">errors</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">..</span> <span class="s1">'</span>'</span> </span><span id="L-595"><a href="#L-595"><span class="linenos" data-line="595"></span></a><span class="kr">end</span> </span><span id="L-596"><a href="#L-596"><span class="linenos" data-line="596"></span></a> </span><span id="L-597"><a href="#L-597"><span class="linenos" data-line="597"></span></a><span class="kr">function</span> <span class="nf">formatStatements</span><span class="p">(</span> <span class="n">options</span><span class="p">,</span> <span class="n">ref</span> <span class="p">)</span> </span><span id="L-598"><a href="#L-598"><span class="linenos" data-line="598"></span></a> <span class="kd">local</span> <span class="n">formattedStatements</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-599"><a href="#L-599"><span class="linenos" data-line="599"></span></a> <span class="kd">local</span> <span class="n">claims</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-600"><a href="#L-600"><span class="linenos" data-line="600"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">options</span><span class="p">.</span><span class="n">property</span> <span class="kr">then</span> </span><span id="L-601"><a href="#L-601"><span class="linenos" data-line="601"></span></a> <span class="kr">return</span> <span class="n">formatError</span><span class="p">(</span> <span class="s1">'property-param-not-provided'</span> <span class="p">)</span> </span><span id="L-602"><a href="#L-602"><span class="linenos" data-line="602"></span></a> <span class="kr">end</span> </span><span id="L-603"><a href="#L-603"><span class="linenos" data-line="603"></span></a> </span><span id="L-604"><a href="#L-604"><span class="linenos" data-line="604"></span></a> <span class="kr">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">ref</span><span class="p">)</span> <span class="o">==</span> <span class="s1">'table'</span> <span class="kr">then</span> <span class="c1">-- för de fall där funktionen anropas och alla claims redan finns i en tabell</span> </span><span id="L-605"><a href="#L-605"><span class="linenos" data-line="605"></span></a> <span class="n">claims</span> <span class="o">=</span> <span class="n">ref</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">]</span> <span class="ow">or</span> <span class="p">{}</span> </span><span id="L-606"><a href="#L-606"><span class="linenos" data-line="606"></span></a> <span class="kr">else</span> </span><span id="L-607"><a href="#L-607"><span class="linenos" data-line="607"></span></a> <span class="c1">--Get entity</span> </span><span id="L-608"><a href="#L-608"><span class="linenos" data-line="608"></span></a> <span class="kd">local</span> <span class="n">entity</span> <span class="o">=</span> <span class="kc">nil</span> </span><span id="L-609"><a href="#L-609"><span class="linenos" data-line="609"></span></a> </span><span id="L-610"><a href="#L-610"><span class="linenos" data-line="610"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">entity</span> <span class="ow">and</span> <span class="nb">type</span><span class="p">(</span> <span class="n">options</span><span class="p">.</span><span class="n">entity</span> <span class="p">)</span> <span class="o">==</span> <span class="s2">"table"</span> <span class="kr">then</span> </span><span id="L-611"><a href="#L-611"><span class="linenos" data-line="611"></span></a> <span class="n">entity</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">entity</span> </span><span id="L-612"><a href="#L-612"><span class="linenos" data-line="612"></span></a> <span class="kr">else</span> </span><span id="L-613"><a href="#L-613"><span class="linenos" data-line="613"></span></a> <span class="n">entity</span> <span class="o">=</span> <span class="n">getEntityFromId</span><span class="p">(</span> <span class="n">options</span><span class="p">.</span><span class="n">entityId</span> <span class="p">)</span> </span><span id="L-614"><a href="#L-614"><span class="linenos" data-line="614"></span></a> <span class="n">options</span><span class="p">.</span><span class="n">entity</span> <span class="o">=</span> <span class="n">entity</span> </span><span id="L-615"><a href="#L-615"><span class="linenos" data-line="615"></span></a> <span class="kr">end</span> </span><span id="L-616"><a href="#L-616"><span class="linenos" data-line="616"></span></a> </span><span id="L-617"><a href="#L-617"><span class="linenos" data-line="617"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">entity</span> <span class="kr">then</span> </span><span id="L-618"><a href="#L-618"><span class="linenos" data-line="618"></span></a> <span class="kr">return</span> <span class="s1">''</span> <span class="c1">--TODO error?</span> </span><span id="L-619"><a href="#L-619"><span class="linenos" data-line="619"></span></a> <span class="kr">end</span> </span><span id="L-620"><a href="#L-620"><span class="linenos" data-line="620"></span></a> </span><span id="L-621"><a href="#L-621"><span class="linenos" data-line="621"></span></a> <span class="c1">-- if property is given as Pxxx/Pyyy/..../Pzzz then </span> </span><span id="L-622"><a href="#L-622"><span class="linenos" data-line="622"></span></a> <span class="c1">-- climb the property path and change entity successively for all P... except the last one.</span> </span><span id="L-623"><a href="#L-623"><span class="linenos" data-line="623"></span></a> <span class="c1">-- only the first claim for each P... is considered</span> </span><span id="L-624"><a href="#L-624"><span class="linenos" data-line="624"></span></a> <span class="c1">-- if property is given as Pxxx:Qrrr,Qsss,.../Pyyy:Qttt,Quuu,.../..../Pzzz then</span> </span><span id="L-625"><a href="#L-625"><span class="linenos" data-line="625"></span></a> <span class="c1">-- filter for entities with P31=any of the given Q... on each level</span> </span><span id="L-626"><a href="#L-626"><span class="linenos" data-line="626"></span></a> <span class="c1">-- to filter on the last level, parameter "getonly" should be used</span> </span><span id="L-627"><a href="#L-627"><span class="linenos" data-line="627"></span></a> <span class="kd">local</span> <span class="n">props</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">split</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">:</span><span class="n">upper</span><span class="p">(),</span><span class="s1">'/'</span><span class="p">)</span> </span><span id="L-628"><a href="#L-628"><span class="linenos" data-line="628"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span><span class="n">prop</span> <span class="kr">in</span> <span class="nb">ipairs</span><span class="p">(</span><span class="n">props</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-629"><a href="#L-629"><span class="linenos" data-line="629"></span></a> <span class="kr">if</span> <span class="n">i</span><span class="o"><#</span><span class="n">props</span> <span class="kr">then</span> </span><span id="L-630"><a href="#L-630"><span class="linenos" data-line="630"></span></a> <span class="kd">local</span> <span class="n">prop_and_getonlys</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">split</span><span class="p">(</span><span class="n">prop</span><span class="p">,</span><span class="s1">':'</span><span class="p">)</span> </span><span id="L-631"><a href="#L-631"><span class="linenos" data-line="631"></span></a> <span class="kr">if</span> <span class="o">#</span><span class="n">prop_and_getonlys</span> <span class="o">==</span> <span class="mi">1</span> <span class="kr">then</span> <span class="c1">-- no getonly values</span> </span><span id="L-632"><a href="#L-632"><span class="linenos" data-line="632"></span></a> <span class="kr">if</span> <span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">prop</span><span class="p">]</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> <span class="kr">return</span> <span class="s1">''</span> <span class="kr">end</span> </span><span id="L-633"><a href="#L-633"><span class="linenos" data-line="633"></span></a> <span class="kr">if</span> <span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">prop</span><span class="p">][</span><span class="mi">1</span><span class="p">][</span><span class="s1">'mainsnak'</span><span class="p">].</span><span class="n">datavalue</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> <span class="kr">return</span> <span class="s1">''</span> <span class="kr">end</span> </span><span id="L-634"><a href="#L-634"><span class="linenos" data-line="634"></span></a> <span class="kr">if</span> <span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">prop</span><span class="p">][</span><span class="mi">1</span><span class="p">][</span><span class="s1">'mainsnak'</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> <span class="kr">return</span> <span class="s1">''</span> <span class="kr">end</span> </span><span id="L-635"><a href="#L-635"><span class="linenos" data-line="635"></span></a> <span class="n">options</span><span class="p">.</span><span class="n">entityId</span><span class="o">=</span><span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">prop</span><span class="p">][</span><span class="mi">1</span><span class="p">][</span><span class="s1">'mainsnak'</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">id</span> <span class="c1">-- just use the first value if no filter given</span> </span><span id="L-636"><a href="#L-636"><span class="linenos" data-line="636"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">entityId</span> <span class="o">==</span> <span class="kc">nil</span> <span class="ow">or</span> <span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">prop</span><span class="p">][</span><span class="mi">1</span><span class="p">][</span><span class="s1">'rank'</span><span class="p">]</span> <span class="o">==</span> <span class="s1">'deprecated'</span> <span class="kr">then</span> </span><span id="L-637"><a href="#L-637"><span class="linenos" data-line="637"></span></a> <span class="kr">return</span> <span class="s1">''</span> </span><span id="L-638"><a href="#L-638"><span class="linenos" data-line="638"></span></a> <span class="kr">end</span> </span><span id="L-639"><a href="#L-639"><span class="linenos" data-line="639"></span></a> <span class="n">entity</span> <span class="o">=</span> <span class="n">getEntityFromId</span><span class="p">(</span> <span class="n">options</span><span class="p">.</span><span class="n">entityId</span> <span class="p">)</span> </span><span id="L-640"><a href="#L-640"><span class="linenos" data-line="640"></span></a> <span class="kr">else</span> <span class="c1">-- one or more getonly values to be used as filter</span> </span><span id="L-641"><a href="#L-641"><span class="linenos" data-line="641"></span></a> <span class="n">prop</span> <span class="o">=</span> <span class="n">prop_and_getonlys</span><span class="p">[</span><span class="mi">1</span><span class="p">]:</span><span class="n">upper</span><span class="p">()</span> </span><span id="L-642"><a href="#L-642"><span class="linenos" data-line="642"></span></a> <span class="kd">local</span> <span class="n">foundentity</span> <span class="o">=</span> <span class="kc">false</span> </span><span id="L-643"><a href="#L-643"><span class="linenos" data-line="643"></span></a> <span class="kr">if</span> <span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">prop</span><span class="p">]</span> <span class="o">~=</span> <span class="kc">nil</span> <span class="kr">then</span> </span><span id="L-644"><a href="#L-644"><span class="linenos" data-line="644"></span></a> <span class="kr">for</span> <span class="n">k</span><span class="p">,</span><span class="n">q</span> <span class="kr">in</span> <span class="nb">ipairs</span><span class="p">(</span><span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">prop</span><span class="p">])</span> <span class="kr">do</span> <span class="c1">-- check all values for match</span> </span><span id="L-645"><a href="#L-645"><span class="linenos" data-line="645"></span></a> <span class="n">testentity</span> <span class="o">=</span> <span class="n">getEntityFromId</span><span class="p">(</span><span class="n">q</span><span class="p">[</span><span class="s1">'mainsnak'</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">id</span><span class="p">)</span> </span><span id="L-646"><a href="#L-646"><span class="linenos" data-line="646"></span></a> <span class="n">p31s</span> <span class="o">=</span> <span class="n">testentity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="s1">'P31'</span><span class="p">]</span> </span><span id="L-647"><a href="#L-647"><span class="linenos" data-line="647"></span></a> <span class="kr">for</span> <span class="n">m</span><span class="p">,</span><span class="n">p31</span> <span class="kr">in</span> <span class="nb">ipairs</span><span class="p">(</span><span class="n">p31s</span><span class="p">)</span> <span class="kr">do</span> <span class="c1">-- check all values for P31 </span> </span><span id="L-648"><a href="#L-648"><span class="linenos" data-line="648"></span></a> <span class="n">p31value</span> <span class="o">=</span> <span class="n">p31</span><span class="p">[</span><span class="s1">'mainsnak'</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">id</span> </span><span id="L-649"><a href="#L-649"><span class="linenos" data-line="649"></span></a> <span class="kr">for</span> <span class="n">j</span><span class="p">,</span><span class="n">getonly</span> <span class="kr">in</span> <span class="nb">ipairs</span><span class="p">(</span><span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">split</span><span class="p">(</span><span class="n">prop_and_getonlys</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="s1">','</span><span class="p">))</span> <span class="kr">do</span> <span class="c1">-- check against all getonly values</span> </span><span id="L-650"><a href="#L-650"><span class="linenos" data-line="650"></span></a> <span class="kr">if</span> <span class="n">p31value</span> <span class="o">==</span> <span class="n">getonly</span> <span class="ow">and</span> <span class="n">p31</span><span class="p">[</span><span class="s1">'rank'</span><span class="p">]</span> <span class="o">~=</span> <span class="s1">'deprecated'</span> <span class="kr">then</span> </span><span id="L-651"><a href="#L-651"><span class="linenos" data-line="651"></span></a> <span class="n">foundentity</span> <span class="o">=</span> <span class="n">testentity</span> </span><span id="L-652"><a href="#L-652"><span class="linenos" data-line="652"></span></a> <span class="kr">end</span> </span><span id="L-653"><a href="#L-653"><span class="linenos" data-line="653"></span></a> <span class="kr">end</span> </span><span id="L-654"><a href="#L-654"><span class="linenos" data-line="654"></span></a> <span class="kr">end</span> </span><span id="L-655"><a href="#L-655"><span class="linenos" data-line="655"></span></a> <span class="kr">end</span> </span><span id="L-656"><a href="#L-656"><span class="linenos" data-line="656"></span></a> <span class="kr">end</span> </span><span id="L-657"><a href="#L-657"><span class="linenos" data-line="657"></span></a> <span class="kr">if</span> <span class="n">foundentity</span> <span class="kr">then</span> </span><span id="L-658"><a href="#L-658"><span class="linenos" data-line="658"></span></a> <span class="n">entity</span> <span class="o">=</span> <span class="n">foundentity</span> </span><span id="L-659"><a href="#L-659"><span class="linenos" data-line="659"></span></a> <span class="kr">else</span> </span><span id="L-660"><a href="#L-660"><span class="linenos" data-line="660"></span></a> <span class="kr">return</span> <span class="s1">''</span> </span><span id="L-661"><a href="#L-661"><span class="linenos" data-line="661"></span></a> <span class="kr">end</span> </span><span id="L-662"><a href="#L-662"><span class="linenos" data-line="662"></span></a> <span class="kr">end</span> </span><span id="L-663"><a href="#L-663"><span class="linenos" data-line="663"></span></a> <span class="kr">else</span> </span><span id="L-664"><a href="#L-664"><span class="linenos" data-line="664"></span></a> <span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="o">=</span><span class="n">prop</span><span class="p">:</span><span class="n">upper</span><span class="p">()</span> </span><span id="L-665"><a href="#L-665"><span class="linenos" data-line="665"></span></a> <span class="kr">end</span> </span><span id="L-666"><a href="#L-666"><span class="linenos" data-line="666"></span></a> <span class="kr">end</span> </span><span id="L-667"><a href="#L-667"><span class="linenos" data-line="667"></span></a> </span><span id="L-668"><a href="#L-668"><span class="linenos" data-line="668"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">entity</span><span class="p">.</span><span class="n">claims</span> <span class="ow">or</span> <span class="ow">not</span> <span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">:</span><span class="n">upper</span><span class="p">()]</span> <span class="kr">then</span> </span><span id="L-669"><a href="#L-669"><span class="linenos" data-line="669"></span></a> <span class="kr">return</span> <span class="s1">''</span> <span class="c1">--TODO error?</span> </span><span id="L-670"><a href="#L-670"><span class="linenos" data-line="670"></span></a> <span class="kr">end</span> </span><span id="L-671"><a href="#L-671"><span class="linenos" data-line="671"></span></a> </span><span id="L-672"><a href="#L-672"><span class="linenos" data-line="672"></span></a> <span class="c1">--Format statement and concat them cleanly</span> </span><span id="L-673"><a href="#L-673"><span class="linenos" data-line="673"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">rank</span> <span class="o">==</span> <span class="s1">'best'</span> <span class="ow">or</span> <span class="ow">not</span> <span class="n">options</span><span class="p">.</span><span class="n">rank</span> <span class="kr">then</span> </span><span id="L-674"><a href="#L-674"><span class="linenos" data-line="674"></span></a> <span class="n">claims</span> <span class="o">=</span> <span class="n">entity</span><span class="p">:</span><span class="n">getBestStatements</span><span class="p">(</span> <span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">:</span><span class="n">upper</span><span class="p">()</span> <span class="p">)</span> </span><span id="L-675"><a href="#L-675"><span class="linenos" data-line="675"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">rank</span> <span class="o">==</span> <span class="s1">'valid'</span> <span class="kr">then</span> </span><span id="L-676"><a href="#L-676"><span class="linenos" data-line="676"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">statement</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span> <span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">:</span><span class="n">upper</span><span class="p">()]</span> <span class="p">)</span> <span class="kr">do</span> </span><span id="L-677"><a href="#L-677"><span class="linenos" data-line="677"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">rank</span> <span class="o">==</span> <span class="s1">'preferred'</span> <span class="kr">then</span> </span><span id="L-678"><a href="#L-678"><span class="linenos" data-line="678"></span></a> <span class="nb">table.insert</span><span class="p">(</span> <span class="n">claims</span><span class="p">,</span> <span class="n">statement</span> <span class="p">)</span> </span><span id="L-679"><a href="#L-679"><span class="linenos" data-line="679"></span></a> <span class="kr">end</span> </span><span id="L-680"><a href="#L-680"><span class="linenos" data-line="680"></span></a> <span class="kr">end</span> </span><span id="L-681"><a href="#L-681"><span class="linenos" data-line="681"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">statement</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span> <span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">:</span><span class="n">upper</span><span class="p">()]</span> <span class="p">)</span> <span class="kr">do</span> </span><span id="L-682"><a href="#L-682"><span class="linenos" data-line="682"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">rank</span> <span class="o">==</span> <span class="s1">'normal'</span> <span class="kr">then</span> </span><span id="L-683"><a href="#L-683"><span class="linenos" data-line="683"></span></a> <span class="nb">table.insert</span><span class="p">(</span> <span class="n">claims</span><span class="p">,</span> <span class="n">statement</span> <span class="p">)</span> </span><span id="L-684"><a href="#L-684"><span class="linenos" data-line="684"></span></a> <span class="kr">end</span> </span><span id="L-685"><a href="#L-685"><span class="linenos" data-line="685"></span></a> <span class="kr">end</span> </span><span id="L-686"><a href="#L-686"><span class="linenos" data-line="686"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">rank</span> <span class="o">==</span> <span class="s1">'all'</span> <span class="kr">then</span> </span><span id="L-687"><a href="#L-687"><span class="linenos" data-line="687"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">statement</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span> <span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">:</span><span class="n">upper</span><span class="p">()]</span> <span class="p">)</span> <span class="kr">do</span> </span><span id="L-688"><a href="#L-688"><span class="linenos" data-line="688"></span></a> <span class="nb">table.insert</span><span class="p">(</span> <span class="n">claims</span><span class="p">,</span> <span class="n">statement</span> <span class="p">)</span> </span><span id="L-689"><a href="#L-689"><span class="linenos" data-line="689"></span></a> <span class="kr">end</span> </span><span id="L-690"><a href="#L-690"><span class="linenos" data-line="690"></span></a> <span class="kr">else</span> </span><span id="L-691"><a href="#L-691"><span class="linenos" data-line="691"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">statement</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span> <span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">:</span><span class="n">upper</span><span class="p">()]</span> <span class="p">)</span> <span class="kr">do</span> </span><span id="L-692"><a href="#L-692"><span class="linenos" data-line="692"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">rank</span> <span class="o">==</span> <span class="n">options</span><span class="p">.</span><span class="n">rank</span> <span class="kr">then</span> </span><span id="L-693"><a href="#L-693"><span class="linenos" data-line="693"></span></a> <span class="nb">table.insert</span><span class="p">(</span> <span class="n">claims</span><span class="p">,</span> <span class="n">statement</span> <span class="p">)</span> </span><span id="L-694"><a href="#L-694"><span class="linenos" data-line="694"></span></a> <span class="kr">end</span> </span><span id="L-695"><a href="#L-695"><span class="linenos" data-line="695"></span></a> <span class="kr">end</span> </span><span id="L-696"><a href="#L-696"><span class="linenos" data-line="696"></span></a> <span class="kr">end</span> </span><span id="L-697"><a href="#L-697"><span class="linenos" data-line="697"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">avoidqualifier</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">avoidqualifierand</span> <span class="kr">then</span> </span><span id="L-698"><a href="#L-698"><span class="linenos" data-line="698"></span></a> <span class="kd">local</span> <span class="n">claims2</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-699"><a href="#L-699"><span class="linenos" data-line="699"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">statement</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span> <span class="n">claims</span> <span class="p">)</span> <span class="kr">do</span> </span><span id="L-700"><a href="#L-700"><span class="linenos" data-line="700"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span> <span class="kr">then</span> </span><span id="L-701"><a href="#L-701"><span class="linenos" data-line="701"></span></a> <span class="nb">table.insert</span><span class="p">(</span> <span class="n">claims2</span><span class="p">,</span> <span class="n">statement</span><span class="p">)</span> </span><span id="L-702"><a href="#L-702"><span class="linenos" data-line="702"></span></a> <span class="kr">else</span> </span><span id="L-703"><a href="#L-703"><span class="linenos" data-line="703"></span></a> <span class="kd">local</span> <span class="n">avoid</span><span class="o">=</span> <span class="kc">false</span> </span><span id="L-704"><a href="#L-704"><span class="linenos" data-line="704"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">avoidqualifier</span> <span class="kr">then</span> </span><span id="L-705"><a href="#L-705"><span class="linenos" data-line="705"></span></a> <span class="kd">local</span> <span class="n">ptoavoid</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">split</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">avoidqualifier</span><span class="p">:</span><span class="n">upper</span><span class="p">():</span><span class="n">gsub</span><span class="p">(</span><span class="s1">' '</span><span class="p">,</span><span class="s1">''</span><span class="p">),</span><span class="s1">','</span><span class="p">)</span> </span><span id="L-706"><a href="#L-706"><span class="linenos" data-line="706"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">p</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">ptoavoid</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-707"><a href="#L-707"><span class="linenos" data-line="707"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="n">p</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-708"><a href="#L-708"><span class="linenos" data-line="708"></span></a> <span class="n">avoid</span><span class="o">=</span><span class="kc">true</span> </span><span id="L-709"><a href="#L-709"><span class="linenos" data-line="709"></span></a> <span class="kr">end</span> </span><span id="L-710"><a href="#L-710"><span class="linenos" data-line="710"></span></a> <span class="kr">end</span> </span><span id="L-711"><a href="#L-711"><span class="linenos" data-line="711"></span></a> <span class="kr">end</span> </span><span id="L-712"><a href="#L-712"><span class="linenos" data-line="712"></span></a> <span class="kd">local</span> <span class="n">avoidand</span> <span class="o">=</span> <span class="kc">false</span> </span><span id="L-713"><a href="#L-713"><span class="linenos" data-line="713"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">avoidqualifierand</span> <span class="kr">then</span> </span><span id="L-714"><a href="#L-714"><span class="linenos" data-line="714"></span></a> <span class="n">avoidand</span> <span class="o">=</span> <span class="kc">true</span> </span><span id="L-715"><a href="#L-715"><span class="linenos" data-line="715"></span></a> <span class="kd">local</span> <span class="n">ptoavoid</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">split</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">avoidqualifierand</span><span class="p">:</span><span class="n">upper</span><span class="p">():</span><span class="n">gsub</span><span class="p">(</span><span class="s1">' '</span><span class="p">,</span><span class="s1">''</span><span class="p">),</span><span class="s1">','</span><span class="p">)</span> </span><span id="L-716"><a href="#L-716"><span class="linenos" data-line="716"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span><span class="n">p</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">ptoavoid</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-717"><a href="#L-717"><span class="linenos" data-line="717"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="n">p</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-718"><a href="#L-718"><span class="linenos" data-line="718"></span></a> <span class="n">avoidand</span> <span class="o">=</span> <span class="kc">false</span> </span><span id="L-719"><a href="#L-719"><span class="linenos" data-line="719"></span></a> <span class="kr">end</span> </span><span id="L-720"><a href="#L-720"><span class="linenos" data-line="720"></span></a> <span class="kr">end</span> </span><span id="L-721"><a href="#L-721"><span class="linenos" data-line="721"></span></a> <span class="kr">end</span> </span><span id="L-722"><a href="#L-722"><span class="linenos" data-line="722"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="p">(</span><span class="n">avoid</span> <span class="ow">or</span> <span class="n">avoidand</span><span class="p">)</span> <span class="kr">then</span> </span><span id="L-723"><a href="#L-723"><span class="linenos" data-line="723"></span></a> <span class="nb">table.insert</span><span class="p">(</span> <span class="n">claims2</span><span class="p">,</span> <span class="n">statement</span><span class="p">)</span> </span><span id="L-724"><a href="#L-724"><span class="linenos" data-line="724"></span></a> <span class="kr">end</span> </span><span id="L-725"><a href="#L-725"><span class="linenos" data-line="725"></span></a> <span class="kr">end</span> </span><span id="L-726"><a href="#L-726"><span class="linenos" data-line="726"></span></a> <span class="kr">end</span> </span><span id="L-727"><a href="#L-727"><span class="linenos" data-line="727"></span></a> <span class="n">claims</span> <span class="o">=</span> <span class="n">claims2</span> </span><span id="L-728"><a href="#L-728"><span class="linenos" data-line="728"></span></a> <span class="kr">end</span> </span><span id="L-729"><a href="#L-729"><span class="linenos" data-line="729"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">preferqualifier</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">preferqualifier</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-730"><a href="#L-730"><span class="linenos" data-line="730"></span></a> <span class="n">claims</span> <span class="o">=</span> <span class="n">preferqualifier</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-731"><a href="#L-731"><span class="linenos" data-line="731"></span></a> <span class="kr">end</span> </span><span id="L-732"><a href="#L-732"><span class="linenos" data-line="732"></span></a> </span><span id="L-733"><a href="#L-733"><span class="linenos" data-line="733"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">avoidstringpattern</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">avoidstringpattern</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-734"><a href="#L-734"><span class="linenos" data-line="734"></span></a> <span class="kd">local</span> <span class="n">claims2</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-735"><a href="#L-735"><span class="linenos" data-line="735"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">statement</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span> <span class="n">claims</span> <span class="p">)</span> <span class="kr">do</span> </span><span id="L-736"><a href="#L-736"><span class="linenos" data-line="736"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span> <span class="ow">and</span> <span class="n">statement</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">type</span> <span class="o">==</span> <span class="s1">'string'</span> <span class="kr">then</span> </span><span id="L-737"><a href="#L-737"><span class="linenos" data-line="737"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="p">(</span><span class="nb">string.find</span><span class="p">(</span><span class="n">statement</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">,</span><span class="n">options</span><span class="p">.</span><span class="n">avoidstringpattern</span><span class="p">))</span> <span class="kr">then</span> </span><span id="L-738"><a href="#L-738"><span class="linenos" data-line="738"></span></a> <span class="nb">table.insert</span><span class="p">(</span><span class="n">claims2</span><span class="p">,</span> <span class="n">statement</span><span class="p">)</span> </span><span id="L-739"><a href="#L-739"><span class="linenos" data-line="739"></span></a> <span class="kr">end</span> </span><span id="L-740"><a href="#L-740"><span class="linenos" data-line="740"></span></a> <span class="kr">else</span> </span><span id="L-741"><a href="#L-741"><span class="linenos" data-line="741"></span></a> <span class="nb">table.insert</span><span class="p">(</span><span class="n">claims2</span><span class="p">,</span> <span class="n">statement</span><span class="p">)</span> </span><span id="L-742"><a href="#L-742"><span class="linenos" data-line="742"></span></a> <span class="kr">end</span> </span><span id="L-743"><a href="#L-743"><span class="linenos" data-line="743"></span></a> <span class="kr">end</span> </span><span id="L-744"><a href="#L-744"><span class="linenos" data-line="744"></span></a> <span class="n">claims</span> <span class="o">=</span> <span class="n">claims2</span> </span><span id="L-745"><a href="#L-745"><span class="linenos" data-line="745"></span></a> <span class="kr">end</span> </span><span id="L-746"><a href="#L-746"><span class="linenos" data-line="746"></span></a> </span><span id="L-747"><a href="#L-747"><span class="linenos" data-line="747"></span></a> <span class="c1">--om det finns vissa statements som har en qualifier som säger "språk = svenska", ta bara med dessa</span> </span><span id="L-748"><a href="#L-748"><span class="linenos" data-line="748"></span></a> <span class="c1">--alternativt om det finns statements som har en qualifier som säger "skriptsystem == latinska alfabetet"</span> </span><span id="L-749"><a href="#L-749"><span class="linenos" data-line="749"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">options</span><span class="p">.</span><span class="n">langpref</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">langpref</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-750"><a href="#L-750"><span class="linenos" data-line="750"></span></a> <span class="kd">local</span> <span class="n">claims2</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-751"><a href="#L-751"><span class="linenos" data-line="751"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">statement</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span> <span class="n">claims</span> <span class="p">)</span> <span class="kr">do</span> </span><span id="L-752"><a href="#L-752"><span class="linenos" data-line="752"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span> <span class="ow">and</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P407</span> <span class="kr">then</span> </span><span id="L-753"><a href="#L-753"><span class="linenos" data-line="753"></span></a> <span class="kr">for</span> <span class="n">k</span><span class="p">,</span> <span class="n">v</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P407</span> <span class="p">)</span> <span class="kr">do</span> </span><span id="L-754"><a href="#L-754"><span class="linenos" data-line="754"></span></a> <span class="kr">if</span> <span class="n">v</span><span class="p">.</span><span class="n">snaktype</span> <span class="o">==</span> <span class="s1">'value'</span> <span class="ow">and</span> <span class="n">v</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">[</span><span class="s1">'numeric-id'</span><span class="p">]</span> <span class="o">==</span> <span class="mi">9027</span> <span class="kr">then</span> <span class="c1">-- Q9027 = 'svenska'</span> </span><span id="L-755"><a href="#L-755"><span class="linenos" data-line="755"></span></a> <span class="nb">table.insert</span><span class="p">(</span> <span class="n">claims2</span><span class="p">,</span> <span class="n">statement</span> <span class="p">)</span> </span><span id="L-756"><a href="#L-756"><span class="linenos" data-line="756"></span></a> <span class="kr">end</span> </span><span id="L-757"><a href="#L-757"><span class="linenos" data-line="757"></span></a> <span class="kr">end</span> </span><span id="L-758"><a href="#L-758"><span class="linenos" data-line="758"></span></a> <span class="kr">elseif</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span> <span class="ow">and</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P282</span> <span class="kr">then</span> </span><span id="L-759"><a href="#L-759"><span class="linenos" data-line="759"></span></a> <span class="kr">for</span> <span class="n">k</span><span class="p">,</span> <span class="n">v</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P282</span> <span class="p">)</span> <span class="kr">do</span> </span><span id="L-760"><a href="#L-760"><span class="linenos" data-line="760"></span></a> <span class="kr">if</span> <span class="n">v</span><span class="p">.</span><span class="n">snaktype</span> <span class="o">==</span> <span class="s1">'value'</span> <span class="ow">and</span> <span class="n">v</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">[</span><span class="s1">'numeric-id'</span><span class="p">]</span> <span class="o">==</span> <span class="mi">8229</span> <span class="kr">then</span> <span class="c1">-- Q8229 = 'latinska alfabetet'</span> </span><span id="L-761"><a href="#L-761"><span class="linenos" data-line="761"></span></a> <span class="nb">table.insert</span><span class="p">(</span> <span class="n">claims2</span><span class="p">,</span> <span class="n">statement</span> <span class="p">)</span> </span><span id="L-762"><a href="#L-762"><span class="linenos" data-line="762"></span></a> <span class="kr">end</span> </span><span id="L-763"><a href="#L-763"><span class="linenos" data-line="763"></span></a> <span class="kr">end</span> </span><span id="L-764"><a href="#L-764"><span class="linenos" data-line="764"></span></a> <span class="kr">end</span> </span><span id="L-765"><a href="#L-765"><span class="linenos" data-line="765"></span></a> <span class="kr">end</span> </span><span id="L-766"><a href="#L-766"><span class="linenos" data-line="766"></span></a> <span class="kr">if</span> <span class="o">#</span><span class="n">claims2</span> <span class="o">></span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-767"><a href="#L-767"><span class="linenos" data-line="767"></span></a> <span class="n">claims</span> <span class="o">=</span> <span class="n">claims2</span> </span><span id="L-768"><a href="#L-768"><span class="linenos" data-line="768"></span></a> <span class="kr">end</span> </span><span id="L-769"><a href="#L-769"><span class="linenos" data-line="769"></span></a> <span class="kr">end</span> </span><span id="L-770"><a href="#L-770"><span class="linenos" data-line="770"></span></a> <span class="kr">if</span> <span class="o">#</span><span class="n">claims</span> <span class="o">></span> <span class="mi">1</span> <span class="kr">then</span> </span><span id="L-771"><a href="#L-771"><span class="linenos" data-line="771"></span></a> <span class="n">claims</span> <span class="o">=</span> <span class="n">sortbylanguage</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-772"><a href="#L-772"><span class="linenos" data-line="772"></span></a> <span class="kr">end</span> </span><span id="L-773"><a href="#L-773"><span class="linenos" data-line="773"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">sortbytime</span> <span class="o">==</span> <span class="s1">'chronological'</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">sortbytime</span> <span class="o">==</span> <span class="s1">'inverted'</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">sortbyvalue</span> <span class="o">==</span> <span class="s1">'ascending'</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">sortbyvalue</span> <span class="o">==</span> <span class="s1">'descending'</span> <span class="kr">then</span> </span><span id="L-774"><a href="#L-774"><span class="linenos" data-line="774"></span></a> <span class="n">claims</span> <span class="o">=</span> <span class="n">sortbyqualifier</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-775"><a href="#L-775"><span class="linenos" data-line="775"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">sortbyarbitrary</span> <span class="o">==</span> <span class="s1">'chronological'</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">sortbyarbitrary</span> <span class="o">==</span> <span class="s1">'inverted'</span> <span class="kr">then</span> </span><span id="L-776"><a href="#L-776"><span class="linenos" data-line="776"></span></a> <span class="n">claims</span> <span class="o">=</span> <span class="n">sortbyarb</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-777"><a href="#L-777"><span class="linenos" data-line="777"></span></a> <span class="kr">end</span> </span><span id="L-778"><a href="#L-778"><span class="linenos" data-line="778"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">getonly</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">getonly</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-779"><a href="#L-779"><span class="linenos" data-line="779"></span></a> <span class="n">claims</span> <span class="o">=</span> <span class="n">getonly</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-780"><a href="#L-780"><span class="linenos" data-line="780"></span></a> <span class="kr">end</span> </span><span id="L-781"><a href="#L-781"><span class="linenos" data-line="781"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">getonlyids</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">getonlyids</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-782"><a href="#L-782"><span class="linenos" data-line="782"></span></a> <span class="n">claims</span> <span class="o">=</span> <span class="n">getonly</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-783"><a href="#L-783"><span class="linenos" data-line="783"></span></a> <span class="kr">end</span> </span><span id="L-784"><a href="#L-784"><span class="linenos" data-line="784"></span></a> <span class="kr">end</span> </span><span id="L-785"><a href="#L-785"><span class="linenos" data-line="785"></span></a> </span><span id="L-786"><a href="#L-786"><span class="linenos" data-line="786"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">claimindex</span> <span class="ow">and</span> <span class="o">#</span><span class="n">claims</span> <span class="o">></span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-787"><a href="#L-787"><span class="linenos" data-line="787"></span></a> <span class="n">claims</span> <span class="o">=</span> <span class="n">claimindex</span><span class="p">(</span><span class="n">claims</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-788"><a href="#L-788"><span class="linenos" data-line="788"></span></a> <span class="kr">end</span> </span><span id="L-789"><a href="#L-789"><span class="linenos" data-line="789"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">enbarten</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">enbarten</span> <span class="o">~=</span> <span class="s1">''</span> <span class="ow">and</span> <span class="o">#</span><span class="n">claims</span> <span class="o">></span> <span class="mi">1</span> <span class="kr">then</span> </span><span id="L-790"><a href="#L-790"><span class="linenos" data-line="790"></span></a> <span class="n">claims</span> <span class="o">=</span> <span class="p">{</span><span class="n">claims</span><span class="p">[</span><span class="mi">1</span><span class="p">]}</span> </span><span id="L-791"><a href="#L-791"><span class="linenos" data-line="791"></span></a> <span class="kr">end</span> </span><span id="L-792"><a href="#L-792"><span class="linenos" data-line="792"></span></a> <span class="kd">local</span> <span class="n">statementsraw</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-793"><a href="#L-793"><span class="linenos" data-line="793"></span></a> <span class="kr">if</span> <span class="n">claims</span> <span class="kr">then</span> </span><span id="L-794"><a href="#L-794"><span class="linenos" data-line="794"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">statement</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span> <span class="n">claims</span> <span class="p">)</span> <span class="kr">do</span> </span><span id="L-795"><a href="#L-795"><span class="linenos" data-line="795"></span></a> <span class="n">options</span><span class="p">.</span><span class="n">num</span> <span class="o">=</span> <span class="n">i</span> </span><span id="L-796"><a href="#L-796"><span class="linenos" data-line="796"></span></a> <span class="kd">local</span> <span class="n">stat</span> <span class="o">=</span> <span class="n">formatStatement</span><span class="p">(</span> <span class="n">statement</span><span class="p">,</span> <span class="n">options</span> <span class="p">)</span> </span><span id="L-797"><a href="#L-797"><span class="linenos" data-line="797"></span></a> <span class="kr">if</span> <span class="n">stat</span> <span class="kr">then</span> </span><span id="L-798"><a href="#L-798"><span class="linenos" data-line="798"></span></a> <span class="kd">local</span> <span class="n">s</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">value</span> </span><span id="L-799"><a href="#L-799"><span class="linenos" data-line="799"></span></a> <span class="kd">local</span> <span class="n">spostref</span> <span class="o">=</span> <span class="s1">''</span> </span><span id="L-800"><a href="#L-800"><span class="linenos" data-line="800"></span></a> <span class="kd">local</span> <span class="n">d</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">datum</span> </span><span id="L-801"><a href="#L-801"><span class="linenos" data-line="801"></span></a> <span class="kd">local</span> <span class="n">tf</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">tifr</span> </span><span id="L-802"><a href="#L-802"><span class="linenos" data-line="802"></span></a> <span class="kd">local</span> <span class="n">pr</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">pr</span> </span><span id="L-803"><a href="#L-803"><span class="linenos" data-line="803"></span></a> <span class="kd">local</span> <span class="n">av</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">av</span> </span><span id="L-804"><a href="#L-804"><span class="linenos" data-line="804"></span></a> <span class="kd">local</span> <span class="n">utgivort</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">utgivort</span> </span><span id="L-805"><a href="#L-805"><span class="linenos" data-line="805"></span></a> <span class="kd">local</span> <span class="n">m</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">mandatperiod</span> </span><span id="L-806"><a href="#L-806"><span class="linenos" data-line="806"></span></a> <span class="kd">local</span> <span class="n">valkrets</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">valkrets</span> </span><span id="L-807"><a href="#L-807"><span class="linenos" data-line="807"></span></a> <span class="kd">local</span> <span class="n">regering</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">regering</span> </span><span id="L-808"><a href="#L-808"><span class="linenos" data-line="808"></span></a> <span class="kd">local</span> <span class="n">arb</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">forarbete</span> </span><span id="L-809"><a href="#L-809"><span class="linenos" data-line="809"></span></a> <span class="kd">local</span> <span class="n">ordningsnummer</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">ordningsnummer</span> </span><span id="L-810"><a href="#L-810"><span class="linenos" data-line="810"></span></a> <span class="kd">local</span> <span class="n">parti</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">parti</span> </span><span id="L-811"><a href="#L-811"><span class="linenos" data-line="811"></span></a> <span class="kd">local</span> <span class="n">partycolor</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">partycolor</span> </span><span id="L-812"><a href="#L-812"><span class="linenos" data-line="812"></span></a> <span class="kd">local</span> <span class="n">partilong</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">partilong</span> </span><span id="L-813"><a href="#L-813"><span class="linenos" data-line="813"></span></a> <span class="kd">local</span> <span class="n">objektroll</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">objektroll</span> </span><span id="L-814"><a href="#L-814"><span class="linenos" data-line="814"></span></a> <span class="kd">local</span> <span class="n">gatunr</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">gatunr</span> </span><span id="L-815"><a href="#L-815"><span class="linenos" data-line="815"></span></a> <span class="kd">local</span> <span class="n">tilsmns</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">tillsammans</span> </span><span id="L-816"><a href="#L-816"><span class="linenos" data-line="816"></span></a> <span class="kd">local</span> <span class="n">kellege</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">kellege</span> </span><span id="L-817"><a href="#L-817"><span class="linenos" data-line="817"></span></a> <span class="kd">local</span> <span class="n">foretradare</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">foretradare</span> </span><span id="L-818"><a href="#L-818"><span class="linenos" data-line="818"></span></a> <span class="kd">local</span> <span class="n">eftertradare</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">eftertradare</span> </span><span id="L-819"><a href="#L-819"><span class="linenos" data-line="819"></span></a> <span class="kd">local</span> <span class="n">slutorsak</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">slutorsak</span> </span><span id="L-820"><a href="#L-820"><span class="linenos" data-line="820"></span></a> <span class="kd">local</span> <span class="n">bd</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">berorddel</span> </span><span id="L-821"><a href="#L-821"><span class="linenos" data-line="821"></span></a> <span class="kr">if</span> <span class="n">s</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> <span class="n">s</span> <span class="o">=</span> <span class="kc">nil</span> <span class="kr">end</span> </span><span id="L-822"><a href="#L-822"><span class="linenos" data-line="822"></span></a> <span class="kr">if</span> <span class="n">s</span> <span class="kr">then</span> </span><span id="L-823"><a href="#L-823"><span class="linenos" data-line="823"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">av</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">av</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-824"><a href="#L-824"><span class="linenos" data-line="824"></span></a> <span class="kr">if</span> <span class="n">stat</span><span class="p">.</span><span class="n">av</span> <span class="ow">and</span> <span class="n">stat</span><span class="p">.</span><span class="n">av</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-825"><a href="#L-825"><span class="linenos" data-line="825"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">avalt</span> <span class="ow">or</span> <span class="s1">' av'</span><span class="p">)</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">stat</span><span class="p">.</span><span class="n">av</span> </span><span id="L-826"><a href="#L-826"><span class="linenos" data-line="826"></span></a> <span class="kr">end</span> </span><span id="L-827"><a href="#L-827"><span class="linenos" data-line="827"></span></a> <span class="kr">end</span> </span><span id="L-828"><a href="#L-828"><span class="linenos" data-line="828"></span></a> <span class="kr">if</span> <span class="n">m</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withmandatperiod</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withmandatperiod</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-829"><a href="#L-829"><span class="linenos" data-line="829"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'br'</span><span class="p">)</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'small'</span><span class="p">,</span> <span class="p">{},</span> <span class="n">m</span><span class="p">)</span> </span><span id="L-830"><a href="#L-830"><span class="linenos" data-line="830"></span></a> <span class="kr">end</span> </span><span id="L-831"><a href="#L-831"><span class="linenos" data-line="831"></span></a> <span class="kr">if</span> <span class="n">valkrets</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withvalkrets</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withvalkrets</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-832"><a href="#L-832"><span class="linenos" data-line="832"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'small'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">', '</span> <span class="o">..</span> <span class="n">valkrets</span><span class="p">)</span> </span><span id="L-833"><a href="#L-833"><span class="linenos" data-line="833"></span></a> <span class="kr">end</span> </span><span id="L-834"><a href="#L-834"><span class="linenos" data-line="834"></span></a> <span class="kr">if</span> <span class="n">regering</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withregering</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withregering</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-835"><a href="#L-835"><span class="linenos" data-line="835"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">withregering</span> <span class="o">==</span> <span class="s1">'komma'</span> <span class="kr">then</span> </span><span id="L-836"><a href="#L-836"><span class="linenos" data-line="836"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">', '</span> <span class="o">..</span> <span class="n">regering</span> </span><span id="L-837"><a href="#L-837"><span class="linenos" data-line="837"></span></a> <span class="kr">else</span> </span><span id="L-838"><a href="#L-838"><span class="linenos" data-line="838"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'br'</span><span class="p">)</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'small'</span><span class="p">,</span> <span class="p">{},</span> <span class="n">regering</span><span class="p">)</span> </span><span id="L-839"><a href="#L-839"><span class="linenos" data-line="839"></span></a> <span class="kr">end</span> </span><span id="L-840"><a href="#L-840"><span class="linenos" data-line="840"></span></a> <span class="kr">end</span> </span><span id="L-841"><a href="#L-841"><span class="linenos" data-line="841"></span></a> <span class="kr">if</span> <span class="n">arb</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withforarbete</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withforarbete</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-842"><a href="#L-842"><span class="linenos" data-line="842"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">', för '</span><span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'i'</span><span class="p">,</span> <span class="p">{},</span> <span class="n">arb</span><span class="p">)</span> </span><span id="L-843"><a href="#L-843"><span class="linenos" data-line="843"></span></a> <span class="kr">end</span> </span><span id="L-844"><a href="#L-844"><span class="linenos" data-line="844"></span></a> <span class="kr">if</span> <span class="n">ordningsnummer</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">ordningsnummer</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">ordningsnummer</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-845"><a href="#L-845"><span class="linenos" data-line="845"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">ordningsnummer</span> <span class="o">..</span> <span class="s1">'. '</span> <span class="o">..</span> <span class="n">s</span> </span><span id="L-846"><a href="#L-846"><span class="linenos" data-line="846"></span></a> <span class="kr">end</span> </span><span id="L-847"><a href="#L-847"><span class="linenos" data-line="847"></span></a> <span class="kr">if</span> <span class="n">objektroll</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">objektroll</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">objektroll</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-848"><a href="#L-848"><span class="linenos" data-line="848"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">', '</span> <span class="o">..</span> <span class="n">objektroll</span> </span><span id="L-849"><a href="#L-849"><span class="linenos" data-line="849"></span></a> <span class="kr">end</span> </span><span id="L-850"><a href="#L-850"><span class="linenos" data-line="850"></span></a> <span class="kr">if</span> <span class="n">gatunr</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">gatunr</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">gatunr</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-851"><a href="#L-851"><span class="linenos" data-line="851"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">gatunr</span> </span><span id="L-852"><a href="#L-852"><span class="linenos" data-line="852"></span></a> <span class="kr">end</span> </span><span id="L-853"><a href="#L-853"><span class="linenos" data-line="853"></span></a> <span class="kr">if</span> <span class="n">parti</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">parti</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">parti</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-854"><a href="#L-854"><span class="linenos" data-line="854"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">', '</span> <span class="o">..</span> <span class="n">parti</span> </span><span id="L-855"><a href="#L-855"><span class="linenos" data-line="855"></span></a> <span class="kr">end</span> </span><span id="L-856"><a href="#L-856"><span class="linenos" data-line="856"></span></a> <span class="kr">if</span> <span class="n">partycolor</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">partycolor</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">partycolor</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-857"><a href="#L-857"><span class="linenos" data-line="857"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="s1">'<span style="background-color:#'</span> <span class="o">..</span> <span class="n">partycolor</span> <span class="o">..</span> <span class="s1">'; color:white;border:1px solid darkgray;"> &nbsp; &nbsp; </span>&nbsp;'</span> <span class="o">..</span> <span class="n">s</span> </span><span id="L-858"><a href="#L-858"><span class="linenos" data-line="858"></span></a> <span class="kr">end</span> </span><span id="L-859"><a href="#L-859"><span class="linenos" data-line="859"></span></a> <span class="kr">if</span> <span class="n">partilong</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">partilong</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">partilong</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-860"><a href="#L-860"><span class="linenos" data-line="860"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">', '</span> <span class="o">..</span> <span class="n">partilong</span> </span><span id="L-861"><a href="#L-861"><span class="linenos" data-line="861"></span></a> <span class="kr">end</span> </span><span id="L-862"><a href="#L-862"><span class="linenos" data-line="862"></span></a> <span class="kr">if</span> <span class="n">tilsmns</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withtillsammans</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withtillsammans</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-863"><a href="#L-863"><span class="linenos" data-line="863"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">', med '</span><span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">tilsmns</span> </span><span id="L-864"><a href="#L-864"><span class="linenos" data-line="864"></span></a> <span class="kr">end</span> </span><span id="L-865"><a href="#L-865"><span class="linenos" data-line="865"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">helpmall</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">helpmall</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-866"><a href="#L-866"><span class="linenos" data-line="866"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="s2">"{{"</span> <span class="o">..</span> <span class="n">options</span><span class="p">.</span><span class="n">helpmall</span> <span class="o">..</span> <span class="s2">"|wdid="</span> <span class="o">..</span> <span class="n">s</span> <span class="o">..</span> <span class="s2">"}}"</span><span class="p">)</span> </span><span id="L-867"><a href="#L-867"><span class="linenos" data-line="867"></span></a> <span class="kr">end</span> </span><span id="L-868"><a href="#L-868"><span class="linenos" data-line="868"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">succession</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">succession</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-869"><a href="#L-869"><span class="linenos" data-line="869"></span></a> <span class="kr">if</span> <span class="n">tf</span> <span class="ow">and</span> <span class="n">foretradare</span> <span class="ow">and</span> <span class="n">eftertradare</span> <span class="kr">then</span> </span><span id="L-870"><a href="#L-870"><span class="linenos" data-line="870"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="s2">"<tr style='text-align:center'><td style='width:30%' rowspan='1'><span style='white-space:nowrap'><small>Företrädare:</small><br/>"</span> <span class="o">..</span> <span class="n">foretradare</span> <span class="o">..</span> <span class="s2">"</td><td style='width: 40%; text-align: center;' rowspan='1'>"</span> <span class="o">..</span> <span class="n">s</span> <span class="o">..</span> <span class="s2">"<br/>"</span> <span class="o">..</span> <span class="n">tf</span> <span class="o">..</span> <span class="s2">"</td><td style='width: 30%; text-align: center;' rowspan='1'><small>Efterträdare:</small><br/>"</span> <span class="o">..</span> <span class="n">eftertradare</span> <span class="o">..</span> <span class="s2">"</td></tr>"</span><span class="p">)</span> </span><span id="L-871"><a href="#L-871"><span class="linenos" data-line="871"></span></a> <span class="kr">else</span> </span><span id="L-872"><a href="#L-872"><span class="linenos" data-line="872"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="s2">"<tr style='text-align:center'><td style='width:30%' rowspan='1'><span style='white-space:nowrap'><small>Företrädare:</small><br/>"</span> <span class="o">..</span> <span class="p">(</span><span class="n">foretradare</span> <span class="ow">or</span> <span class="s1">''</span><span class="p">)</span> <span class="o">..</span> <span class="s2">"</td><td style='width: 40%; text-align: center;' rowspan='1'>"</span> <span class="o">..</span> <span class="n">s</span> <span class="o">..</span> <span class="s2">"<br/>"</span> <span class="o">..</span> <span class="p">(</span><span class="n">tf</span> <span class="ow">or</span> <span class="s1">''</span><span class="p">)</span> <span class="o">..</span> <span class="s2">"</td><td style='width: 30%; text-align: center;' rowspan='1'><small>Efterträdare:</small><br/>"</span> <span class="o">..</span> <span class="p">(</span><span class="n">eftertradare</span> <span class="ow">or</span> <span class="s1">''</span><span class="p">)</span> <span class="o">..</span> <span class="s2">"</td></tr>"</span><span class="p">)</span> </span><span id="L-873"><a href="#L-873"><span class="linenos" data-line="873"></span></a> <span class="kr">end</span> </span><span id="L-874"><a href="#L-874"><span class="linenos" data-line="874"></span></a> <span class="kr">end</span> </span><span id="L-875"><a href="#L-875"><span class="linenos" data-line="875"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">examen</span> <span class="kr">then</span> </span><span id="L-876"><a href="#L-876"><span class="linenos" data-line="876"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">examen</span> <span class="o">==</span> <span class="s1">'examenslutdatum'</span> <span class="ow">and</span> <span class="n">stat</span><span class="p">.</span><span class="n">examen</span> <span class="o">~=</span> <span class="s1">''</span> <span class="ow">and</span> <span class="n">stat</span><span class="p">.</span><span class="n">examen</span> <span class="ow">and</span> <span class="n">stat</span><span class="p">.</span><span class="n">ti</span> <span class="ow">and</span> <span class="n">stat</span><span class="p">.</span><span class="n">ti</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-877"><a href="#L-877"><span class="linenos" data-line="877"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">', '</span> <span class="o">..</span> <span class="n">stat</span><span class="p">.</span><span class="n">examen</span> <span class="o">..</span> <span class="s1">', '</span> <span class="o">..</span> <span class="n">stat</span><span class="p">.</span><span class="n">ti</span> </span><span id="L-878"><a href="#L-878"><span class="linenos" data-line="878"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">examen</span> <span class="o">==</span> <span class="s1">'examenslutdatum'</span> <span class="ow">and</span> <span class="n">stat</span><span class="p">.</span><span class="n">examen</span> <span class="ow">and</span> <span class="n">stat</span><span class="p">.</span><span class="n">examen</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-879"><a href="#L-879"><span class="linenos" data-line="879"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">', '</span> <span class="o">..</span> <span class="n">stat</span><span class="p">.</span><span class="n">examen</span> </span><span id="L-880"><a href="#L-880"><span class="linenos" data-line="880"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">examen</span> <span class="o">==</span> <span class="s1">'examenslutdatum'</span> <span class="ow">and</span> <span class="n">stat</span><span class="p">.</span><span class="n">ti</span> <span class="ow">and</span> <span class="n">stat</span><span class="p">.</span><span class="n">ti</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-881"><a href="#L-881"><span class="linenos" data-line="881"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">', '</span> <span class="o">..</span> <span class="n">stat</span><span class="p">.</span><span class="n">ti</span> </span><span id="L-882"><a href="#L-882"><span class="linenos" data-line="882"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">examen</span> <span class="o">==</span> <span class="s1">'baraslutdatum'</span> <span class="ow">and</span> <span class="n">stat</span><span class="p">.</span><span class="n">ti</span> <span class="ow">and</span> <span class="n">stat</span><span class="p">.</span><span class="n">ti</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-883"><a href="#L-883"><span class="linenos" data-line="883"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">stat</span><span class="p">.</span><span class="n">ti</span> </span><span id="L-884"><a href="#L-884"><span class="linenos" data-line="884"></span></a> <span class="kr">end</span> </span><span id="L-885"><a href="#L-885"><span class="linenos" data-line="885"></span></a> <span class="kr">end</span> </span><span id="L-886"><a href="#L-886"><span class="linenos" data-line="886"></span></a> <span class="kr">if</span> <span class="n">d</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withdate</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withdate</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-887"><a href="#L-887"><span class="linenos" data-line="887"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">withdate</span> <span class="o">==</span> <span class="s1">'komma'</span> <span class="kr">then</span> </span><span id="L-888"><a href="#L-888"><span class="linenos" data-line="888"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">', '</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">d</span> </span><span id="L-889"><a href="#L-889"><span class="linenos" data-line="889"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">withdate</span> <span class="o">==</span> <span class="s1">'parentes'</span> <span class="kr">then</span> </span><span id="L-890"><a href="#L-890"><span class="linenos" data-line="890"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">' ('</span> <span class="o">..</span> <span class="n">d</span> <span class="o">..</span> <span class="s1">')'</span> </span><span id="L-891"><a href="#L-891"><span class="linenos" data-line="891"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">withdate</span> <span class="o">==</span> <span class="s1">'only'</span> <span class="kr">then</span> </span><span id="L-892"><a href="#L-892"><span class="linenos" data-line="892"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">d</span> </span><span id="L-893"><a href="#L-893"><span class="linenos" data-line="893"></span></a> <span class="kr">else</span> </span><span id="L-894"><a href="#L-894"><span class="linenos" data-line="894"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'small'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">' ('</span> <span class="o">..</span> <span class="n">d</span> <span class="o">..</span> <span class="s1">')'</span><span class="p">)</span> </span><span id="L-895"><a href="#L-895"><span class="linenos" data-line="895"></span></a> <span class="kr">end</span> </span><span id="L-896"><a href="#L-896"><span class="linenos" data-line="896"></span></a> <span class="kr">end</span> </span><span id="L-897"><a href="#L-897"><span class="linenos" data-line="897"></span></a> <span class="kr">if</span> <span class="n">d</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">dateonly</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">dateonly</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-898"><a href="#L-898"><span class="linenos" data-line="898"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">d</span> </span><span id="L-899"><a href="#L-899"><span class="linenos" data-line="899"></span></a> <span class="kr">end</span> </span><span id="L-900"><a href="#L-900"><span class="linenos" data-line="900"></span></a> <span class="kr">if</span> <span class="n">d</span> <span class="o">==</span> <span class="kc">nil</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">dateonly</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">dateonly</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-901"><a href="#L-901"><span class="linenos" data-line="901"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="s1">'-'</span> </span><span id="L-902"><a href="#L-902"><span class="linenos" data-line="902"></span></a> <span class="kr">end</span> </span><span id="L-903"><a href="#L-903"><span class="linenos" data-line="903"></span></a> <span class="kr">if</span> <span class="n">tf</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withintervall</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withintervall</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-904"><a href="#L-904"><span class="linenos" data-line="904"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">withintervallformat</span> <span class="o">==</span> <span class="s1">'Y'</span> <span class="kr">then</span> </span><span id="L-905"><a href="#L-905"><span class="linenos" data-line="905"></span></a> <span class="kr">for</span> <span class="n">i</span> <span class="kr">in</span> <span class="n">mw</span><span class="p">.</span><span class="n">ustring</span><span class="p">.</span><span class="n">gmatch</span><span class="p">(</span><span class="n">tf</span><span class="p">,</span><span class="s1">'">([^<]*)<'</span><span class="p">,</span><span class="kc">false</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-906"><a href="#L-906"><span class="linenos" data-line="906"></span></a> <span class="n">j</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">ustring</span><span class="p">.</span><span class="n">gsub</span><span class="p">(</span><span class="n">mw</span><span class="p">.</span><span class="n">ustring</span><span class="p">.</span><span class="n">gsub</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="s1">'"'</span><span class="p">,</span><span class="s1">''</span><span class="p">),</span><span class="s1">'%-'</span><span class="p">,</span><span class="s1">'%%-'</span><span class="p">)</span> </span><span id="L-907"><a href="#L-907"><span class="linenos" data-line="907"></span></a> <span class="n">tf</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">ustring</span><span class="p">.</span><span class="n">gsub</span><span class="p">(</span><span class="n">tf</span><span class="p">,</span><span class="n">j</span><span class="p">,</span><span class="n">mw</span><span class="p">.</span><span class="n">ustring</span><span class="p">.</span><span class="n">sub</span><span class="p">(</span><span class="n">j</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">4</span><span class="p">))</span> </span><span id="L-908"><a href="#L-908"><span class="linenos" data-line="908"></span></a> <span class="kr">end</span> </span><span id="L-909"><a href="#L-909"><span class="linenos" data-line="909"></span></a> <span class="kr">end</span> </span><span id="L-910"><a href="#L-910"><span class="linenos" data-line="910"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">withintervall</span> <span class="o">==</span> <span class="s1">'gift'</span> <span class="kr">then</span> </span><span id="L-911"><a href="#L-911"><span class="linenos" data-line="911"></span></a> <span class="kr">if</span> <span class="n">kellege</span> <span class="kr">then</span> </span><span id="L-912"><a href="#L-912"><span class="linenos" data-line="912"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'br'</span><span class="p">)</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'small'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">'(g. '</span> <span class="o">..</span> <span class="n">tf</span> <span class="o">..</span> <span class="s1">', '</span> <span class="o">..</span> <span class="n">kellege</span> <span class="o">..</span> <span class="s1">'[[Kategori:Uppgifter från Wikidata med förbehåll – äktenskap]])'</span><span class="p">)</span> </span><span id="L-913"><a href="#L-913"><span class="linenos" data-line="913"></span></a> <span class="kr">else</span> </span><span id="L-914"><a href="#L-914"><span class="linenos" data-line="914"></span></a> <span class="kr">if</span> <span class="n">slutorsak</span> <span class="kr">then</span> </span><span id="L-915"><a href="#L-915"><span class="linenos" data-line="915"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'br'</span><span class="p">)</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'small'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">'(g. '</span> <span class="o">..</span> <span class="n">tf</span> <span class="o">..</span> <span class="s1">', '</span> <span class="o">..</span> <span class="n">slutorsak</span> <span class="o">..</span> <span class="s1">')'</span><span class="p">)</span> </span><span id="L-916"><a href="#L-916"><span class="linenos" data-line="916"></span></a> <span class="kr">else</span> </span><span id="L-917"><a href="#L-917"><span class="linenos" data-line="917"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'br'</span><span class="p">)</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'small'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">'(g. '</span> <span class="o">..</span> <span class="n">tf</span> <span class="o">..</span> <span class="s1">')'</span><span class="p">)</span> </span><span id="L-918"><a href="#L-918"><span class="linenos" data-line="918"></span></a> <span class="kr">end</span> </span><span id="L-919"><a href="#L-919"><span class="linenos" data-line="919"></span></a> <span class="kr">end</span> </span><span id="L-920"><a href="#L-920"><span class="linenos" data-line="920"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">withintervall</span> <span class="o">==</span> <span class="s1">'komma'</span> <span class="kr">then</span> </span><span id="L-921"><a href="#L-921"><span class="linenos" data-line="921"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">', '</span> <span class="o">..</span> <span class="n">tf</span> </span><span id="L-922"><a href="#L-922"><span class="linenos" data-line="922"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">withintervall</span> <span class="o">==</span> <span class="s1">'bara'</span> <span class="kr">then</span> </span><span id="L-923"><a href="#L-923"><span class="linenos" data-line="923"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">tf</span> </span><span id="L-924"><a href="#L-924"><span class="linenos" data-line="924"></span></a> <span class="kr">else</span> </span><span id="L-925"><a href="#L-925"><span class="linenos" data-line="925"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'small'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">' ('</span> <span class="o">..</span> <span class="n">tf</span> <span class="o">..</span> <span class="s1">')'</span><span class="p">)</span> </span><span id="L-926"><a href="#L-926"><span class="linenos" data-line="926"></span></a> <span class="kr">end</span> </span><span id="L-927"><a href="#L-927"><span class="linenos" data-line="927"></span></a> <span class="kr">end</span> </span><span id="L-928"><a href="#L-928"><span class="linenos" data-line="928"></span></a> <span class="kr">if</span> <span class="n">kellege</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withkellege</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withkellege</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-929"><a href="#L-929"><span class="linenos" data-line="929"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">' ('</span><span class="o">..</span> <span class="n">kellege</span><span class="o">..</span> <span class="s1">')[[Kategori:Uppgifter från Wikidata med förbehåll]]'</span> </span><span id="L-930"><a href="#L-930"><span class="linenos" data-line="930"></span></a> <span class="kr">end</span> </span><span id="L-931"><a href="#L-931"><span class="linenos" data-line="931"></span></a> <span class="kr">if</span> <span class="n">utgivort</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withutgivort</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withutgivort</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-932"><a href="#L-932"><span class="linenos" data-line="932"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">withutgivort</span> <span class="o">==</span> <span class="s1">'parantes och small'</span> <span class="kr">then</span> </span><span id="L-933"><a href="#L-933"><span class="linenos" data-line="933"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'small'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">' ('</span> <span class="o">..</span> <span class="n">utgivort</span> <span class="o">..</span> <span class="s1">')'</span><span class="p">)</span> </span><span id="L-934"><a href="#L-934"><span class="linenos" data-line="934"></span></a> <span class="kr">else</span> </span><span id="L-935"><a href="#L-935"><span class="linenos" data-line="935"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">utgivort</span> </span><span id="L-936"><a href="#L-936"><span class="linenos" data-line="936"></span></a> <span class="kr">end</span> </span><span id="L-937"><a href="#L-937"><span class="linenos" data-line="937"></span></a> <span class="kr">end</span> </span><span id="L-938"><a href="#L-938"><span class="linenos" data-line="938"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">getsimpleproperty</span> <span class="o">==</span> <span class="s1">'född'</span> <span class="ow">and</span> <span class="n">pr</span> <span class="ow">and</span> <span class="n">pr</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-939"><a href="#L-939"><span class="linenos" data-line="939"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'small'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">'(f. '</span> <span class="o">..</span> <span class="n">pr</span> <span class="o">..</span> <span class="s1">')'</span><span class="p">)</span> </span><span id="L-940"><a href="#L-940"><span class="linenos" data-line="940"></span></a> <span class="kr">end</span> </span><span id="L-941"><a href="#L-941"><span class="linenos" data-line="941"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">getsimpleproperty</span> <span class="o">==</span> <span class="s1">'parentes'</span> <span class="ow">and</span> <span class="n">pr</span> <span class="ow">and</span> <span class="n">pr</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-942"><a href="#L-942"><span class="linenos" data-line="942"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'span'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">'('</span> <span class="o">..</span> <span class="n">pr</span> <span class="o">..</span> <span class="s1">')'</span><span class="p">)</span> </span><span id="L-943"><a href="#L-943"><span class="linenos" data-line="943"></span></a> <span class="kr">end</span> </span><span id="L-944"><a href="#L-944"><span class="linenos" data-line="944"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">getsimpleproperty</span> <span class="o">==</span> <span class="s1">'avnågon'</span> <span class="ow">and</span> <span class="n">pr</span> <span class="ow">and</span> <span class="n">pr</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-945"><a href="#L-945"><span class="linenos" data-line="945"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'span'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">' av '</span> <span class="o">..</span> <span class="n">pr</span> <span class="o">..</span> <span class="s1">''</span><span class="p">)</span> </span><span id="L-946"><a href="#L-946"><span class="linenos" data-line="946"></span></a> <span class="kr">end</span> </span><span id="L-947"><a href="#L-947"><span class="linenos" data-line="947"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">getsimpleproperty</span> <span class="o">==</span> <span class="s1">'15px'</span> <span class="ow">and</span> <span class="n">pr</span> <span class="ow">and</span> <span class="n">pr</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-948"><a href="#L-948"><span class="linenos" data-line="948"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="s1">'[[File:'</span> <span class="o">..</span> <span class="n">pr</span> <span class="o">..</span> <span class="s1">'|15px]]&nbsp;'</span> <span class="o">..</span> <span class="n">s</span> </span><span id="L-949"><a href="#L-949"><span class="linenos" data-line="949"></span></a> <span class="kr">end</span> </span><span id="L-950"><a href="#L-950"><span class="linenos" data-line="950"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">getsimpleproperty</span> <span class="o">==</span> <span class="s1">'slepspenne'</span> <span class="ow">and</span> <span class="n">pr</span> <span class="ow">and</span> <span class="n">pr</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-951"><a href="#L-951"><span class="linenos" data-line="951"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="s1">'[[File:'</span> <span class="o">..</span> <span class="n">pr</span> <span class="o">..</span> <span class="s1">'|50x20px]]&nbsp;'</span> <span class="o">..</span> <span class="n">s</span> </span><span id="L-952"><a href="#L-952"><span class="linenos" data-line="952"></span></a> <span class="kr">end</span> </span><span id="L-953"><a href="#L-953"><span class="linenos" data-line="953"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">getsimpleproperty</span> <span class="o">==</span> <span class="s1">'only'</span> <span class="kr">then</span> </span><span id="L-954"><a href="#L-954"><span class="linenos" data-line="954"></span></a> <span class="kr">if</span> <span class="n">pr</span> <span class="ow">and</span> <span class="n">pr</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-955"><a href="#L-955"><span class="linenos" data-line="955"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">pr</span> </span><span id="L-956"><a href="#L-956"><span class="linenos" data-line="956"></span></a> <span class="kr">else</span> </span><span id="L-957"><a href="#L-957"><span class="linenos" data-line="957"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="s1">''</span> </span><span id="L-958"><a href="#L-958"><span class="linenos" data-line="958"></span></a> <span class="kr">end</span> </span><span id="L-959"><a href="#L-959"><span class="linenos" data-line="959"></span></a> <span class="kr">end</span> </span><span id="L-960"><a href="#L-960"><span class="linenos" data-line="960"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">grav</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">grav</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-961"><a href="#L-961"><span class="linenos" data-line="961"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">grav</span> <span class="o">==</span> <span class="s1">'coordonly'</span> <span class="kr">then</span> </span><span id="L-962"><a href="#L-962"><span class="linenos" data-line="962"></span></a> <span class="kr">if</span> <span class="n">stat</span><span class="p">.</span><span class="n">koord</span> <span class="kr">then</span> </span><span id="L-963"><a href="#L-963"><span class="linenos" data-line="963"></span></a> <span class="n">spostref</span> <span class="o">=</span> <span class="s1">'<br/>'</span> <span class="o">..</span> <span class="n">stat</span><span class="p">.</span><span class="n">koord</span> </span><span id="L-964"><a href="#L-964"><span class="linenos" data-line="964"></span></a> <span class="kr">end</span> </span><span id="L-965"><a href="#L-965"><span class="linenos" data-line="965"></span></a> <span class="kr">else</span> </span><span id="L-966"><a href="#L-966"><span class="linenos" data-line="966"></span></a> <span class="kr">if</span> <span class="n">stat</span><span class="p">.</span><span class="n">gravid</span> <span class="kr">then</span> </span><span id="L-967"><a href="#L-967"><span class="linenos" data-line="967"></span></a> <span class="n">spostref</span> <span class="o">=</span> <span class="s1">'<br/>'</span> <span class="o">..</span> <span class="n">stat</span><span class="p">.</span><span class="n">gravid</span> </span><span id="L-968"><a href="#L-968"><span class="linenos" data-line="968"></span></a> <span class="kr">end</span> </span><span id="L-969"><a href="#L-969"><span class="linenos" data-line="969"></span></a> <span class="kr">if</span> <span class="n">stat</span><span class="p">.</span><span class="n">koord</span> <span class="kr">then</span> </span><span id="L-970"><a href="#L-970"><span class="linenos" data-line="970"></span></a> <span class="n">spostref</span> <span class="o">=</span> <span class="n">spostref</span> <span class="o">..</span> <span class="s1">'<br/>'</span> <span class="o">..</span> <span class="n">stat</span><span class="p">.</span><span class="n">koord</span> </span><span id="L-971"><a href="#L-971"><span class="linenos" data-line="971"></span></a> <span class="kr">end</span> </span><span id="L-972"><a href="#L-972"><span class="linenos" data-line="972"></span></a> <span class="kr">end</span> </span><span id="L-973"><a href="#L-973"><span class="linenos" data-line="973"></span></a> <span class="kr">end</span> </span><span id="L-974"><a href="#L-974"><span class="linenos" data-line="974"></span></a> <span class="kr">if</span> <span class="n">bd</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withbd</span> <span class="kr">then</span> </span><span id="L-975"><a href="#L-975"><span class="linenos" data-line="975"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'small'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">'<br />('</span><span class="o">..</span> <span class="n">bd</span> <span class="o">..</span><span class="s1">')'</span><span class="p">)</span> </span><span id="L-976"><a href="#L-976"><span class="linenos" data-line="976"></span></a> <span class="kr">end</span> </span><span id="L-977"><a href="#L-977"><span class="linenos" data-line="977"></span></a> <span class="kr">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">ref</span><span class="p">)</span> <span class="o">==</span> <span class="s1">'table'</span> <span class="kr">then</span> <span class="c1">--Inte leta efter referenser om själva anropet görs från en referens</span> </span><span id="L-978"><a href="#L-978"><span class="linenos" data-line="978"></span></a> <span class="nb">table.insert</span><span class="p">(</span> <span class="n">formattedStatements</span><span class="p">,</span> <span class="n">s</span> <span class="o">..</span> <span class="n">spostref</span> <span class="p">)</span> </span><span id="L-979"><a href="#L-979"><span class="linenos" data-line="979"></span></a> <span class="kr">else</span> </span><span id="L-980"><a href="#L-980"><span class="linenos" data-line="980"></span></a> <span class="kd">local</span> <span class="n">t</span> <span class="o">=</span> <span class="n">formatReferencesNew</span><span class="p">(</span> <span class="n">statement</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-981"><a href="#L-981"><span class="linenos" data-line="981"></span></a> <span class="kr">if</span> <span class="n">t</span><span class="p">.</span><span class="n">flag</span> <span class="kr">then</span> </span><span id="L-982"><a href="#L-982"><span class="linenos" data-line="982"></span></a> <span class="nb">table.insert</span><span class="p">(</span> <span class="n">formattedStatements</span><span class="p">,</span> <span class="n">s</span> <span class="o">..</span> <span class="n">t</span><span class="p">.</span><span class="n">value</span> <span class="o">..</span> <span class="n">spostref</span><span class="p">)</span> </span><span id="L-983"><a href="#L-983"><span class="linenos" data-line="983"></span></a> <span class="n">stat</span><span class="p">.</span><span class="n">ref</span> <span class="o">=</span> <span class="n">t</span><span class="p">.</span><span class="n">value</span> </span><span id="L-984"><a href="#L-984"><span class="linenos" data-line="984"></span></a> <span class="n">stat</span><span class="p">.</span><span class="n">refraw</span> <span class="o">=</span> <span class="n">t</span><span class="p">.</span><span class="n">refraw</span> </span><span id="L-985"><a href="#L-985"><span class="linenos" data-line="985"></span></a> <span class="n">stat</span><span class="p">.</span><span class="n">refquality</span> <span class="o">=</span> <span class="n">t</span><span class="p">.</span><span class="n">refquality</span> </span><span id="L-986"><a href="#L-986"><span class="linenos" data-line="986"></span></a> <span class="kr">else</span> </span><span id="L-987"><a href="#L-987"><span class="linenos" data-line="987"></span></a> <span class="n">stat</span> <span class="o">=</span> <span class="kc">nil</span> </span><span id="L-988"><a href="#L-988"><span class="linenos" data-line="988"></span></a> <span class="kr">end</span> </span><span id="L-989"><a href="#L-989"><span class="linenos" data-line="989"></span></a> <span class="kr">end</span> </span><span id="L-990"><a href="#L-990"><span class="linenos" data-line="990"></span></a> <span class="kr">end</span> </span><span id="L-991"><a href="#L-991"><span class="linenos" data-line="991"></span></a> <span class="kr">if</span> <span class="n">stat</span> <span class="kr">then</span> </span><span id="L-992"><a href="#L-992"><span class="linenos" data-line="992"></span></a> <span class="nb">table.insert</span><span class="p">(</span><span class="n">statementsraw</span><span class="p">,</span> <span class="n">stat</span><span class="p">)</span> </span><span id="L-993"><a href="#L-993"><span class="linenos" data-line="993"></span></a> <span class="kr">end</span> </span><span id="L-994"><a href="#L-994"><span class="linenos" data-line="994"></span></a> <span class="kr">end</span> </span><span id="L-995"><a href="#L-995"><span class="linenos" data-line="995"></span></a> <span class="kr">end</span> </span><span id="L-996"><a href="#L-996"><span class="linenos" data-line="996"></span></a> <span class="kr">end</span> </span><span id="L-997"><a href="#L-997"><span class="linenos" data-line="997"></span></a> </span><span id="L-998"><a href="#L-998"><span class="linenos" data-line="998"></span></a> </span><span id="L-999"><a href="#L-999"><span class="linenos" data-line="999"></span></a> <span class="kd">local</span> <span class="n">tot</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">listToText</span><span class="p">(</span> <span class="n">formattedStatements</span><span class="p">,</span> <span class="n">options</span><span class="p">.</span><span class="n">separator</span><span class="p">,</span> <span class="n">options</span><span class="p">.</span><span class="n">conjunction</span> <span class="p">)</span> </span><span id="L-1000"><a href="#L-1000"><span class="linenos" data-line="1000"></span></a> <span class="kr">if</span> <span class="n">tot</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> <span class="n">tot</span> <span class="o">=</span> <span class="kc">nil</span> <span class="kr">end</span> </span><span id="L-1001"><a href="#L-1001"><span class="linenos" data-line="1001"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">wdlink</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">wdlink</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1002"><a href="#L-1002"><span class="linenos" data-line="1002"></span></a> <span class="kd">local</span> <span class="n">dlink</span> <span class="o">=</span> <span class="s1">''</span> </span><span id="L-1003"><a href="#L-1003"><span class="linenos" data-line="1003"></span></a> <span class="kd">local</span> <span class="n">wdlabel</span> <span class="o">=</span> <span class="s1">'WD'</span> </span><span id="L-1004"><a href="#L-1004"><span class="linenos" data-line="1004"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">wdlinklabel</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">wdlinklabel</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1005"><a href="#L-1005"><span class="linenos" data-line="1005"></span></a> <span class="n">wdlabel</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">wdlinklabel</span> </span><span id="L-1006"><a href="#L-1006"><span class="linenos" data-line="1006"></span></a> <span class="kr">end</span> </span><span id="L-1007"><a href="#L-1007"><span class="linenos" data-line="1007"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">entityId</span> <span class="kr">then</span> </span><span id="L-1008"><a href="#L-1008"><span class="linenos" data-line="1008"></span></a> <span class="n">dlink</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">entityId</span> <span class="o">..</span> <span class="s1">'#'</span> <span class="o">..</span> <span class="n">options</span><span class="p">.</span><span class="n">property</span> </span><span id="L-1009"><a href="#L-1009"><span class="linenos" data-line="1009"></span></a> <span class="kr">else</span> </span><span id="L-1010"><a href="#L-1010"><span class="linenos" data-line="1010"></span></a> <span class="n">dlink</span> <span class="o">=</span> <span class="s1">'Special:ItemByTitle/svwiki/'</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">getParent</span><span class="p">():</span><span class="n">getTitle</span><span class="p">()</span> <span class="o">..</span> <span class="s1">'#'</span> <span class="o">..</span> <span class="n">options</span><span class="p">.</span><span class="n">property</span> </span><span id="L-1011"><a href="#L-1011"><span class="linenos" data-line="1011"></span></a> <span class="kr">end</span> </span><span id="L-1012"><a href="#L-1012"><span class="linenos" data-line="1012"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">wdlink</span> <span class="o">==</span> <span class="s1">'sub'</span> <span class="kr">then</span> </span><span id="L-1013"><a href="#L-1013"><span class="linenos" data-line="1013"></span></a> <span class="n">tot</span> <span class="o">=</span> <span class="n">tot</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'sub'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">'[[d:'</span> <span class="o">..</span> <span class="n">dlink</span> <span class="o">..</span> <span class="s1">'|'</span> <span class="o">..</span> <span class="n">wdlabel</span> <span class="o">..</span> <span class="s1">']]'</span><span class="p">)</span> </span><span id="L-1014"><a href="#L-1014"><span class="linenos" data-line="1014"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">wdlink</span> <span class="o">==</span> <span class="s1">'sup'</span> <span class="kr">then</span> </span><span id="L-1015"><a href="#L-1015"><span class="linenos" data-line="1015"></span></a> <span class="n">tot</span> <span class="o">=</span> <span class="n">tot</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'sup'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">'[[d:'</span> <span class="o">..</span> <span class="n">dlink</span> <span class="o">..</span> <span class="s1">'|'</span> <span class="o">..</span> <span class="n">wdlabel</span> <span class="o">..</span> <span class="s1">']]'</span><span class="p">)</span> </span><span id="L-1016"><a href="#L-1016"><span class="linenos" data-line="1016"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">wdlink</span> <span class="o">==</span> <span class="s1">'small'</span> <span class="kr">then</span> </span><span id="L-1017"><a href="#L-1017"><span class="linenos" data-line="1017"></span></a> <span class="n">tot</span> <span class="o">=</span> <span class="n">tot</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'small'</span><span class="p">,</span> <span class="p">{},</span> <span class="s1">'[[d:'</span> <span class="o">..</span> <span class="n">dlink</span> <span class="o">..</span> <span class="s1">'|'</span> <span class="o">..</span> <span class="n">wdlabel</span> <span class="o">..</span> <span class="s1">']]'</span><span class="p">)</span> </span><span id="L-1018"><a href="#L-1018"><span class="linenos" data-line="1018"></span></a> <span class="kr">else</span> </span><span id="L-1019"><a href="#L-1019"><span class="linenos" data-line="1019"></span></a> <span class="n">tot</span> <span class="o">=</span> <span class="n">tot</span> <span class="o">..</span> <span class="s1">' [[d:'</span> <span class="o">..</span> <span class="n">dlink</span> <span class="o">..</span> <span class="s1">'|'</span><span class="o">..</span> <span class="n">wdlabel</span> <span class="o">..</span><span class="s1">']][[Kategori:Wikidatatest4]]'</span> </span><span id="L-1020"><a href="#L-1020"><span class="linenos" data-line="1020"></span></a> <span class="kr">end</span> </span><span id="L-1021"><a href="#L-1021"><span class="linenos" data-line="1021"></span></a> <span class="kr">end</span> </span><span id="L-1022"><a href="#L-1022"><span class="linenos" data-line="1022"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">raw</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">raw</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1023"><a href="#L-1023"><span class="linenos" data-line="1023"></span></a> <span class="kr">return</span> <span class="n">statementsraw</span> </span><span id="L-1024"><a href="#L-1024"><span class="linenos" data-line="1024"></span></a> <span class="kr">end</span> </span><span id="L-1025"><a href="#L-1025"><span class="linenos" data-line="1025"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">numberofclaims</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">numberofclaims</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1026"><a href="#L-1026"><span class="linenos" data-line="1026"></span></a> <span class="kr">return</span> <span class="o">#</span><span class="n">formattedStatements</span> </span><span id="L-1027"><a href="#L-1027"><span class="linenos" data-line="1027"></span></a> <span class="kr">end</span> </span><span id="L-1028"><a href="#L-1028"><span class="linenos" data-line="1028"></span></a> <span class="kr">return</span> <span class="n">tot</span> </span><span id="L-1029"><a href="#L-1029"><span class="linenos" data-line="1029"></span></a><span class="kr">end</span> </span><span id="L-1030"><a href="#L-1030"><span class="linenos" data-line="1030"></span></a> </span><span id="L-1031"><a href="#L-1031"><span class="linenos" data-line="1031"></span></a><span class="kr">function</span> <span class="nf">formatReferencesNew</span><span class="p">(</span> <span class="n">statement</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-1032"><a href="#L-1032"><span class="linenos" data-line="1032"></span></a> <span class="kd">local</span> <span class="n">limit</span> <span class="o">=</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">sourcelimit</span><span class="p">)</span> <span class="ow">or</span> <span class="mi">3</span> </span><span id="L-1033"><a href="#L-1033"><span class="linenos" data-line="1033"></span></a> <span class="kd">local</span> <span class="n">reference</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-1034"><a href="#L-1034"><span class="linenos" data-line="1034"></span></a> <span class="kd">local</span> <span class="n">references</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-1035"><a href="#L-1035"><span class="linenos" data-line="1035"></span></a> <span class="kd">local</span> <span class="n">quality</span> <span class="o">=</span> <span class="mi">0</span> <span class="c1">-- ingen källa alls</span> </span><span id="L-1036"><a href="#L-1036"><span class="linenos" data-line="1036"></span></a> <span class="kd">local</span> <span class="n">flagga</span> <span class="o">=</span> <span class="kc">false</span> </span><span id="L-1037"><a href="#L-1037"><span class="linenos" data-line="1037"></span></a> <span class="kd">local</span> <span class="n">limitcounter</span> <span class="o">=</span> <span class="mi">0</span> </span><span id="L-1038"><a href="#L-1038"><span class="linenos" data-line="1038"></span></a> <span class="kd">local</span> <span class="n">qualmax</span> <span class="o">=</span> <span class="mi">0</span> </span><span id="L-1039"><a href="#L-1039"><span class="linenos" data-line="1039"></span></a> <span class="kd">local</span> <span class="n">qual2</span> <span class="o">=</span> <span class="mi">0</span> </span><span id="L-1040"><a href="#L-1040"><span class="linenos" data-line="1040"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">references</span> <span class="kr">then</span> </span><span id="L-1041"><a href="#L-1041"><span class="linenos" data-line="1041"></span></a> <span class="kd">local</span> <span class="n">cite</span> <span class="o">=</span> <span class="nb">require</span><span class="p">(</span><span class="s1">'Modul:Cite'</span><span class="p">)</span> </span><span id="L-1042"><a href="#L-1042"><span class="linenos" data-line="1042"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">ref</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">statement</span><span class="p">.</span><span class="n">references</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-1043"><a href="#L-1043"><span class="linenos" data-line="1043"></span></a> <span class="kd">local</span> <span class="n">items</span><span class="p">,</span> <span class="n">s</span> <span class="o">=</span> <span class="p">{},</span> <span class="kc">nil</span> </span><span id="L-1044"><a href="#L-1044"><span class="linenos" data-line="1044"></span></a> <span class="n">qual2</span> <span class="o">=</span> <span class="mi">100</span> </span><span id="L-1045"><a href="#L-1045"><span class="linenos" data-line="1045"></span></a> <span class="kr">if</span> <span class="n">ref</span><span class="p">.</span><span class="n">snaks</span> <span class="kr">then</span> </span><span id="L-1046"><a href="#L-1046"><span class="linenos" data-line="1046"></span></a> <span class="kr">if</span> <span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P248</span> <span class="kr">then</span> </span><span id="L-1047"><a href="#L-1047"><span class="linenos" data-line="1047"></span></a> <span class="kr">for</span> <span class="n">j</span><span class="p">,</span> <span class="n">prop</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P248</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-1048"><a href="#L-1048"><span class="linenos" data-line="1048"></span></a> <span class="kr">if</span> <span class="n">prop</span><span class="p">.</span><span class="n">snaktype</span><span class="o">==</span><span class="s1">'value'</span> <span class="kr">then</span> </span><span id="L-1049"><a href="#L-1049"><span class="linenos" data-line="1049"></span></a> <span class="nb">table.insert</span><span class="p">(</span><span class="n">items</span><span class="p">,</span> <span class="n">getEntityIdFromValue</span><span class="p">(</span> <span class="n">prop</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> <span class="p">))</span> </span><span id="L-1050"><a href="#L-1050"><span class="linenos" data-line="1050"></span></a> <span class="kr">end</span> </span><span id="L-1051"><a href="#L-1051"><span class="linenos" data-line="1051"></span></a> <span class="kr">end</span> </span><span id="L-1052"><a href="#L-1052"><span class="linenos" data-line="1052"></span></a> <span class="kr">end</span> </span><span id="L-1053"><a href="#L-1053"><span class="linenos" data-line="1053"></span></a> <span class="kr">if</span> <span class="n">quality</span> <span class="o"><</span> <span class="mi">10</span> <span class="ow">and</span> <span class="p">(</span><span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P143</span> <span class="ow">or</span> <span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P4656</span> <span class="ow">or</span> <span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P3452</span><span class="p">)</span> <span class="kr">then</span> </span><span id="L-1054"><a href="#L-1054"><span class="linenos" data-line="1054"></span></a> <span class="n">quality</span> <span class="o">=</span> <span class="mi">10</span> <span class="c1">-- kvalite (importerad från och härlett från)</span> </span><span id="L-1055"><a href="#L-1055"><span class="linenos" data-line="1055"></span></a> <span class="kr">end</span> </span><span id="L-1056"><a href="#L-1056"><span class="linenos" data-line="1056"></span></a> <span class="kr">if</span> <span class="n">quality</span> <span class="o"><</span> <span class="mi">100</span> <span class="ow">and</span> <span class="ow">not</span> <span class="p">(</span><span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P143</span> <span class="ow">or</span> <span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P4656</span> <span class="ow">or</span> <span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P3452</span><span class="p">)</span> <span class="kr">then</span> </span><span id="L-1057"><a href="#L-1057"><span class="linenos" data-line="1057"></span></a> <span class="n">quality</span> <span class="o">=</span> <span class="mi">100</span> <span class="c1">-- källa finns och den är (förhoppningsvis) bättre än "importerad från" och "härlett från".</span> </span><span id="L-1058"><a href="#L-1058"><span class="linenos" data-line="1058"></span></a> <span class="kr">end</span> </span><span id="L-1059"><a href="#L-1059"><span class="linenos" data-line="1059"></span></a> <span class="kr">if</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">noref</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">noref</span> <span class="o">~=</span> <span class="s1">''</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">noref</span> <span class="o">~=</span> <span class="s1">'noimport'</span><span class="p">)</span> <span class="ow">or</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">noref</span> <span class="o">==</span> <span class="s1">'noimport'</span> <span class="ow">and</span> <span class="p">(</span><span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P143</span> <span class="ow">or</span> <span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P4656</span> <span class="ow">or</span> <span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P3452</span> <span class="ow">or</span> <span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P887</span><span class="p">))</span> <span class="kr">then</span> </span><span id="L-1060"><a href="#L-1060"><span class="linenos" data-line="1060"></span></a> <span class="c1">--</span> </span><span id="L-1061"><a href="#L-1061"><span class="linenos" data-line="1061"></span></a> <span class="kr">else</span> </span><span id="L-1062"><a href="#L-1062"><span class="linenos" data-line="1062"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="n">cite</span><span class="p">.</span><span class="n">citeitem</span><span class="p">(</span> <span class="n">items</span><span class="p">,</span> <span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">,</span> <span class="n">options</span> <span class="p">)</span> </span><span id="L-1063"><a href="#L-1063"><span class="linenos" data-line="1063"></span></a> <span class="kr">if</span> <span class="n">s</span> <span class="o">==</span> <span class="s1">''</span> <span class="ow">or</span> <span class="ow">not</span> <span class="n">s</span> <span class="kr">then</span> </span><span id="L-1064"><a href="#L-1064"><span class="linenos" data-line="1064"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="s1">'[[Kategori:Källangivelser på Wikidata som använder egenskaper som inte känns igen]]Källangivelsen på Wikidata använder egenskaper (properties) som inte känns igen av Modul:Cite'</span> </span><span id="L-1065"><a href="#L-1065"><span class="linenos" data-line="1065"></span></a> <span class="n">qual2</span> <span class="o">=</span> <span class="mi">10</span> </span><span id="L-1066"><a href="#L-1066"><span class="linenos" data-line="1066"></span></a> <span class="kr">end</span> </span><span id="L-1067"><a href="#L-1067"><span class="linenos" data-line="1067"></span></a> <span class="kr">if</span> <span class="p">(</span><span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P143</span> <span class="ow">or</span> <span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P4656</span> <span class="ow">or</span> <span class="n">ref</span><span class="p">.</span><span class="n">snaks</span><span class="p">.</span><span class="n">P3452</span><span class="p">)</span> <span class="kr">then</span> </span><span id="L-1068"><a href="#L-1068"><span class="linenos" data-line="1068"></span></a> <span class="n">qual2</span> <span class="o">=</span> <span class="mi">25</span> <span class="c1">-- importerad från</span> </span><span id="L-1069"><a href="#L-1069"><span class="linenos" data-line="1069"></span></a> <span class="kr">end</span> </span><span id="L-1070"><a href="#L-1070"><span class="linenos" data-line="1070"></span></a> <span class="kr">if</span> <span class="n">s</span> <span class="kr">then</span> </span><span id="L-1071"><a href="#L-1071"><span class="linenos" data-line="1071"></span></a> <span class="kr">for</span> <span class="n">j</span><span class="p">,</span> <span class="n">rr</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">redundanta</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-1072"><a href="#L-1072"><span class="linenos" data-line="1072"></span></a> <span class="kr">if</span> <span class="n">s</span><span class="p">:</span><span class="n">match</span><span class="p">(</span><span class="n">rr</span><span class="p">)</span> <span class="kr">then</span> </span><span id="L-1073"><a href="#L-1073"><span class="linenos" data-line="1073"></span></a> <span class="n">qual2</span> <span class="o">=</span> <span class="mi">50</span> </span><span id="L-1074"><a href="#L-1074"><span class="linenos" data-line="1074"></span></a> <span class="kr">end</span> </span><span id="L-1075"><a href="#L-1075"><span class="linenos" data-line="1075"></span></a> <span class="kr">end</span> </span><span id="L-1076"><a href="#L-1076"><span class="linenos" data-line="1076"></span></a> <span class="kr">end</span> </span><span id="L-1077"><a href="#L-1077"><span class="linenos" data-line="1077"></span></a> <span class="kr">end</span> </span><span id="L-1078"><a href="#L-1078"><span class="linenos" data-line="1078"></span></a> <span class="kr">end</span> </span><span id="L-1079"><a href="#L-1079"><span class="linenos" data-line="1079"></span></a> <span class="kr">if</span> <span class="n">s</span> <span class="ow">and</span> <span class="n">s</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1080"><a href="#L-1080"><span class="linenos" data-line="1080"></span></a><span class="c1">-- ta bort unika koder med oklart syfte, </span> </span><span id="L-1081"><a href="#L-1081"><span class="linenos" data-line="1081"></span></a><span class="c1">-- de gjorde att det blev Referensfel: Taggen <ref> är ogiltig; namnet "..." definieras flera gånger med olika innehåll </span> </span><span id="L-1082"><a href="#L-1082"><span class="linenos" data-line="1082"></span></a> <span class="n">s</span><span class="o">=</span><span class="n">s</span><span class="p">:</span><span class="n">gsub</span><span class="p">(</span><span class="s1">'</span><span class="se">\"</span><span class="err">\</span><span class="s1">`UNIQ.-QINU`</span><span class="se">\"</span><span class="s1">'</span><span class="p">,</span><span class="s1">''</span><span class="p">)</span> </span><span id="L-1083"><a href="#L-1083"><span class="linenos" data-line="1083"></span></a> <span class="nb">table.insert</span><span class="p">(</span><span class="n">reference</span><span class="p">,</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">s</span><span class="p">,</span> <span class="n">name</span> <span class="o">=</span> <span class="n">ref</span><span class="p">.</span><span class="n">hash</span><span class="p">,</span> <span class="n">qq</span> <span class="o">=</span> <span class="n">qual2</span><span class="p">})</span> </span><span id="L-1084"><a href="#L-1084"><span class="linenos" data-line="1084"></span></a> <span class="kr">end</span> </span><span id="L-1085"><a href="#L-1085"><span class="linenos" data-line="1085"></span></a> <span class="kr">if</span> <span class="n">qual2</span> <span class="o">></span> <span class="n">qualmax</span> <span class="kr">then</span> </span><span id="L-1086"><a href="#L-1086"><span class="linenos" data-line="1086"></span></a> <span class="n">qualmax</span> <span class="o">=</span> <span class="n">qual2</span> </span><span id="L-1087"><a href="#L-1087"><span class="linenos" data-line="1087"></span></a> <span class="kr">end</span> </span><span id="L-1088"><a href="#L-1088"><span class="linenos" data-line="1088"></span></a> <span class="kr">end</span> </span><span id="L-1089"><a href="#L-1089"><span class="linenos" data-line="1089"></span></a> <span class="kr">if</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">sources</span> <span class="o">==</span> <span class="s1">'required'</span> <span class="ow">and</span> <span class="n">quality</span> <span class="o">></span> <span class="mi">99</span><span class="p">)</span> <span class="ow">or</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">sources</span> <span class="o">==</span> <span class="s1">'basic'</span> <span class="ow">and</span> <span class="n">quality</span> <span class="o">></span> <span class="mi">9</span><span class="p">)</span> <span class="ow">or</span> <span class="p">(</span><span class="ow">not</span> <span class="n">options</span><span class="p">.</span><span class="n">sources</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">sources</span> <span class="o">==</span> <span class="s1">''</span><span class="p">)</span> <span class="kr">then</span> </span><span id="L-1090"><a href="#L-1090"><span class="linenos" data-line="1090"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">ref</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">reference</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-1091"><a href="#L-1091"><span class="linenos" data-line="1091"></span></a> <span class="kr">if</span> <span class="n">limitcounter</span> <span class="o"><</span> <span class="n">limit</span> <span class="kr">then</span> </span><span id="L-1092"><a href="#L-1092"><span class="linenos" data-line="1092"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">norefrank</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">norefrank</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1093"><a href="#L-1093"><span class="linenos" data-line="1093"></span></a> <span class="nb">table.insert</span><span class="p">(</span><span class="n">references</span><span class="p">,</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">extensionTag</span><span class="p">(</span> <span class="s1">'ref'</span><span class="p">,</span> <span class="n">ref</span><span class="p">.</span><span class="n">value</span><span class="p">,</span> <span class="p">{</span><span class="n">name</span> <span class="o">=</span> <span class="n">ref</span><span class="p">.</span><span class="n">name</span><span class="p">}))</span> </span><span id="L-1094"><a href="#L-1094"><span class="linenos" data-line="1094"></span></a> <span class="n">limitcounter</span> <span class="o">=</span> <span class="n">limitcounter</span> <span class="o">+</span> <span class="mi">1</span> </span><span id="L-1095"><a href="#L-1095"><span class="linenos" data-line="1095"></span></a> <span class="kr">else</span> </span><span id="L-1096"><a href="#L-1096"><span class="linenos" data-line="1096"></span></a> <span class="kr">if</span> <span class="n">ref</span><span class="p">.</span><span class="n">qq</span> <span class="o">>=</span> <span class="n">qualmax</span> <span class="kr">then</span> </span><span id="L-1097"><a href="#L-1097"><span class="linenos" data-line="1097"></span></a> <span class="nb">table.insert</span><span class="p">(</span><span class="n">references</span><span class="p">,</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">extensionTag</span><span class="p">(</span> <span class="s1">'ref'</span><span class="p">,</span> <span class="n">ref</span><span class="p">.</span><span class="n">value</span><span class="p">,</span> <span class="p">{</span><span class="n">name</span> <span class="o">=</span> <span class="n">ref</span><span class="p">.</span><span class="n">name</span><span class="p">}))</span> </span><span id="L-1098"><a href="#L-1098"><span class="linenos" data-line="1098"></span></a> <span class="n">limitcounter</span> <span class="o">=</span> <span class="n">limitcounter</span> <span class="o">+</span> <span class="mi">1</span> </span><span id="L-1099"><a href="#L-1099"><span class="linenos" data-line="1099"></span></a> <span class="kr">end</span> </span><span id="L-1100"><a href="#L-1100"><span class="linenos" data-line="1100"></span></a> <span class="kr">end</span> </span><span id="L-1101"><a href="#L-1101"><span class="linenos" data-line="1101"></span></a> <span class="kr">end</span> </span><span id="L-1102"><a href="#L-1102"><span class="linenos" data-line="1102"></span></a> <span class="kr">end</span> </span><span id="L-1103"><a href="#L-1103"><span class="linenos" data-line="1103"></span></a> <span class="n">flagga</span> <span class="o">=</span> <span class="kc">true</span> </span><span id="L-1104"><a href="#L-1104"><span class="linenos" data-line="1104"></span></a> <span class="kr">else</span> </span><span id="L-1105"><a href="#L-1105"><span class="linenos" data-line="1105"></span></a> <span class="n">flagga</span> <span class="o">=</span> <span class="kc">false</span> </span><span id="L-1106"><a href="#L-1106"><span class="linenos" data-line="1106"></span></a> <span class="kr">end</span> </span><span id="L-1107"><a href="#L-1107"><span class="linenos" data-line="1107"></span></a> <span class="kr">else</span> </span><span id="L-1108"><a href="#L-1108"><span class="linenos" data-line="1108"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">options</span><span class="p">.</span><span class="n">sources</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">sources</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1109"><a href="#L-1109"><span class="linenos" data-line="1109"></span></a> <span class="n">flagga</span> <span class="o">=</span> <span class="kc">true</span> </span><span id="L-1110"><a href="#L-1110"><span class="linenos" data-line="1110"></span></a> <span class="kr">end</span> </span><span id="L-1111"><a href="#L-1111"><span class="linenos" data-line="1111"></span></a> <span class="kr">end</span> </span><span id="L-1112"><a href="#L-1112"><span class="linenos" data-line="1112"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="nb">table.concat</span><span class="p">(</span><span class="n">references</span><span class="p">),</span> <span class="n">refquality</span> <span class="o">=</span> <span class="n">quality</span><span class="p">,</span> <span class="n">refraw</span> <span class="o">=</span> <span class="n">reference</span><span class="p">,</span> <span class="n">flag</span> <span class="o">=</span> <span class="n">flagga</span><span class="p">}</span> </span><span id="L-1113"><a href="#L-1113"><span class="linenos" data-line="1113"></span></a><span class="kr">end</span> </span><span id="L-1114"><a href="#L-1114"><span class="linenos" data-line="1114"></span></a> </span><span id="L-1115"><a href="#L-1115"><span class="linenos" data-line="1115"></span></a><span class="kr">function</span> <span class="nf">formatStatement</span><span class="p">(</span> <span class="n">statement</span><span class="p">,</span> <span class="n">options</span> <span class="p">)</span> </span><span id="L-1116"><a href="#L-1116"><span class="linenos" data-line="1116"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">type</span> <span class="o">==</span> <span class="s1">'statement'</span> <span class="kr">then</span> </span><span id="L-1117"><a href="#L-1117"><span class="linenos" data-line="1117"></span></a> <span class="kd">local</span> <span class="n">s</span> <span class="o">=</span> <span class="n">formatSnak</span><span class="p">(</span> <span class="n">statement</span><span class="p">.</span><span class="n">mainsnak</span><span class="p">,</span> <span class="n">options</span> <span class="p">)</span> </span><span id="L-1118"><a href="#L-1118"><span class="linenos" data-line="1118"></span></a> <span class="kr">if</span> <span class="n">s</span> <span class="ow">and</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span> <span class="kr">then</span> </span><span id="L-1119"><a href="#L-1119"><span class="linenos" data-line="1119"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P102</span> <span class="kr">then</span> <span class="c1">-- tillhör politiskt parti</span> </span><span id="L-1120"><a href="#L-1120"><span class="linenos" data-line="1120"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">parti</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P102"</span><span class="p">,</span> <span class="n">conjunction</span> <span class="o">=</span> <span class="s1">', '</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">kortnamn</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1121"><a href="#L-1121"><span class="linenos" data-line="1121"></span></a> <span class="kr">end</span> </span><span id="L-1122"><a href="#L-1122"><span class="linenos" data-line="1122"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P102</span> <span class="kr">then</span> <span class="c1">-- partifärg</span> </span><span id="L-1123"><a href="#L-1123"><span class="linenos" data-line="1123"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">partycolor</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P102"</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">RGBcolor</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">nolink</span><span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1124"><a href="#L-1124"><span class="linenos" data-line="1124"></span></a> <span class="kr">end</span> </span><span id="L-1125"><a href="#L-1125"><span class="linenos" data-line="1125"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P102</span> <span class="kr">then</span> <span class="c1">-- långt namn på politiskt parti</span> </span><span id="L-1126"><a href="#L-1126"><span class="linenos" data-line="1126"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">partilong</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P102"</span><span class="p">,</span> <span class="n">conjunction</span> <span class="o">=</span> <span class="s1">', '</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1127"><a href="#L-1127"><span class="linenos" data-line="1127"></span></a> <span class="kr">end</span> </span><span id="L-1128"><a href="#L-1128"><span class="linenos" data-line="1128"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P3831</span> <span class="kr">then</span> <span class="c1">-- objektroll</span> </span><span id="L-1129"><a href="#L-1129"><span class="linenos" data-line="1129"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">objektroll</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P3831"</span><span class="p">,</span> <span class="n">conjunction</span> <span class="o">=</span> <span class="s1">', '</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">kortnamn</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1130"><a href="#L-1130"><span class="linenos" data-line="1130"></span></a> <span class="kr">end</span> </span><span id="L-1131"><a href="#L-1131"><span class="linenos" data-line="1131"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P670</span> <span class="kr">then</span> <span class="c1">-- gatunummer</span> </span><span id="L-1132"><a href="#L-1132"><span class="linenos" data-line="1132"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">gatunr</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P670"</span><span class="p">,</span> <span class="n">conjunction</span> <span class="o">=</span> <span class="s1">', '</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1133"><a href="#L-1133"><span class="linenos" data-line="1133"></span></a> <span class="kr">end</span> </span><span id="L-1134"><a href="#L-1134"><span class="linenos" data-line="1134"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P574</span> <span class="kr">then</span> </span><span id="L-1135"><a href="#L-1135"><span class="linenos" data-line="1135"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">dateoftaxpub</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P574"</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">modifytime</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">modifyqualifiertime</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1136"><a href="#L-1136"><span class="linenos" data-line="1136"></span></a> <span class="kr">end</span> </span><span id="L-1137"><a href="#L-1137"><span class="linenos" data-line="1137"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P585</span> <span class="kr">then</span> </span><span id="L-1138"><a href="#L-1138"><span class="linenos" data-line="1138"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">datum</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P585"</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">modifytime</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">modifyqualifiertime</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1139"><a href="#L-1139"><span class="linenos" data-line="1139"></span></a> <span class="kr">end</span> </span><span id="L-1140"><a href="#L-1140"><span class="linenos" data-line="1140"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P512</span> <span class="kr">then</span> <span class="c1">-- akademisk examen</span> </span><span id="L-1141"><a href="#L-1141"><span class="linenos" data-line="1141"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">examen</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P512"</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">modifytime</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">modifyqualifiertime</span><span class="p">,</span> <span class="n">somevalue</span> <span class="o">=</span> <span class="s1">''</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1142"><a href="#L-1142"><span class="linenos" data-line="1142"></span></a> <span class="kr">end</span> </span><span id="L-1143"><a href="#L-1143"><span class="linenos" data-line="1143"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P625</span> <span class="kr">then</span> </span><span id="L-1144"><a href="#L-1144"><span class="linenos" data-line="1144"></span></a> <span class="kr">if</span> <span class="n">s</span><span class="p">.</span><span class="n">item</span> <span class="kr">then</span> </span><span id="L-1145"><a href="#L-1145"><span class="linenos" data-line="1145"></span></a> <span class="kd">local</span> <span class="n">opt</span> <span class="o">=</span> <span class="n">options</span> </span><span id="L-1146"><a href="#L-1146"><span class="linenos" data-line="1146"></span></a> <span class="n">opt</span><span class="p">.</span><span class="n">entity</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityObject</span><span class="p">(</span> <span class="n">s</span><span class="p">.</span><span class="n">item</span> <span class="p">)</span> </span><span id="L-1147"><a href="#L-1147"><span class="linenos" data-line="1147"></span></a> <span class="kd">local</span> <span class="n">region</span> <span class="o">=</span> <span class="n">regional</span><span class="p">(</span><span class="n">opt</span><span class="p">)</span> </span><span id="L-1148"><a href="#L-1148"><span class="linenos" data-line="1148"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">koord</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P625"</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">label</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">koordlabel</span><span class="p">,</span> <span class="n">typen</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">koordtypen</span><span class="p">,</span> <span class="n">primary</span> <span class="o">=</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">koordprimary</span> <span class="ow">or</span> <span class="s1">'secondary'</span><span class="p">),</span> <span class="n">pagename</span><span class="o">=</span><span class="n">options</span><span class="p">.</span><span class="n">koordpagename</span><span class="p">,</span> <span class="n">geodataparseronly</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">geodataparseronly</span><span class="p">,</span> <span class="n">region</span> <span class="o">=</span> <span class="n">region</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1149"><a href="#L-1149"><span class="linenos" data-line="1149"></span></a> <span class="kr">else</span> </span><span id="L-1150"><a href="#L-1150"><span class="linenos" data-line="1150"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">koord</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P625"</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">label</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">koordlabel</span><span class="p">,</span> <span class="n">typen</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">koordtypen</span><span class="p">,</span> <span class="n">primary</span> <span class="o">=</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">koordprimary</span> <span class="ow">or</span> <span class="s1">'secondary'</span><span class="p">),</span> <span class="n">pagename</span><span class="o">=</span><span class="n">options</span><span class="p">.</span><span class="n">koordpagename</span><span class="p">,</span> <span class="n">geodataparseronly</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">geodataparseronly</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1151"><a href="#L-1151"><span class="linenos" data-line="1151"></span></a> <span class="kr">end</span> </span><span id="L-1152"><a href="#L-1152"><span class="linenos" data-line="1152"></span></a> <span class="kr">end</span> </span><span id="L-1153"><a href="#L-1153"><span class="linenos" data-line="1153"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P965</span> <span class="kr">then</span> </span><span id="L-1154"><a href="#L-1154"><span class="linenos" data-line="1154"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">gravid</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P965"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1155"><a href="#L-1155"><span class="linenos" data-line="1155"></span></a> <span class="kr">end</span> </span><span id="L-1156"><a href="#L-1156"><span class="linenos" data-line="1156"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P405</span> <span class="kr">then</span> </span><span id="L-1157"><a href="#L-1157"><span class="linenos" data-line="1157"></span></a> <span class="kd">local</span> <span class="n">auktorer</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-1158"><a href="#L-1158"><span class="linenos" data-line="1158"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">j</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P405</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-1159"><a href="#L-1159"><span class="linenos" data-line="1159"></span></a> <span class="kr">if</span> <span class="n">j</span><span class="p">.</span><span class="n">snaktype</span> <span class="o">==</span> <span class="s1">'value'</span> <span class="kr">then</span> </span><span id="L-1160"><a href="#L-1160"><span class="linenos" data-line="1160"></span></a> <span class="kd">local</span> <span class="n">item</span> <span class="o">=</span> <span class="n">getEntityIdFromValue</span><span class="p">(</span> <span class="n">j</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> <span class="p">)</span> </span><span id="L-1161"><a href="#L-1161"><span class="linenos" data-line="1161"></span></a> <span class="kd">local</span> <span class="n">auktorsnamn</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P428"</span><span class="p">,</span> <span class="n">entityId</span> <span class="o">=</span> <span class="n">item</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'ja'</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'ja'</span><span class="p">})</span> </span><span id="L-1162"><a href="#L-1162"><span class="linenos" data-line="1162"></span></a> <span class="kr">if</span> <span class="n">auktorsnamn</span> <span class="ow">and</span> <span class="n">auktorsnamn</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1163"><a href="#L-1163"><span class="linenos" data-line="1163"></span></a> <span class="nb">table.insert</span><span class="p">(</span><span class="n">auktorer</span><span class="p">,</span> <span class="n">formatEntityId</span><span class="p">(</span><span class="n">item</span><span class="p">,</span> <span class="p">{</span><span class="n">label</span> <span class="o">=</span> <span class="n">auktorsnamn</span><span class="p">}).</span><span class="n">value</span><span class="p">)</span> </span><span id="L-1164"><a href="#L-1164"><span class="linenos" data-line="1164"></span></a> <span class="kr">else</span> </span><span id="L-1165"><a href="#L-1165"><span class="linenos" data-line="1165"></span></a> <span class="nb">table.insert</span><span class="p">(</span><span class="n">auktorer</span><span class="p">,</span> <span class="n">formatEntityId</span><span class="p">(</span><span class="n">item</span><span class="p">,</span> <span class="p">{}).</span><span class="n">value</span><span class="p">)</span> </span><span id="L-1166"><a href="#L-1166"><span class="linenos" data-line="1166"></span></a> <span class="kr">end</span> </span><span id="L-1167"><a href="#L-1167"><span class="linenos" data-line="1167"></span></a> <span class="kr">end</span> </span><span id="L-1168"><a href="#L-1168"><span class="linenos" data-line="1168"></span></a> <span class="kr">end</span> </span><span id="L-1169"><a href="#L-1169"><span class="linenos" data-line="1169"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">auktor</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">listToText</span><span class="p">(</span><span class="n">auktorer</span><span class="p">,</span> <span class="s1">', '</span><span class="p">,</span> <span class="s1">' & '</span><span class="p">)</span> </span><span id="L-1170"><a href="#L-1170"><span class="linenos" data-line="1170"></span></a> <span class="kr">end</span> </span><span id="L-1171"><a href="#L-1171"><span class="linenos" data-line="1171"></span></a> <span class="kr">if</span> <span class="n">s</span> <span class="ow">and</span> <span class="p">(</span><span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P580</span> <span class="ow">or</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P582</span><span class="p">)</span> <span class="kr">then</span> </span><span id="L-1172"><a href="#L-1172"><span class="linenos" data-line="1172"></span></a> <span class="kd">local</span> <span class="n">f</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P580"</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">modifytime</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">modifyqualifiertime</span><span class="p">,</span> <span class="n">somevalue</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">intervallsomevalue</span> <span class="ow">or</span> <span class="s1">''</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> <span class="ow">or</span> <span class="s1">''</span> </span><span id="L-1173"><a href="#L-1173"><span class="linenos" data-line="1173"></span></a> <span class="kd">local</span> <span class="n">t</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P582"</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">modifytime</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">modifyqualifiertime</span><span class="p">,</span> <span class="n">somevalue</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">intervallsomevalue</span> <span class="ow">or</span> <span class="s1">''</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> <span class="ow">or</span> <span class="s1">''</span> </span><span id="L-1174"><a href="#L-1174"><span class="linenos" data-line="1174"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">tifr</span> <span class="o">=</span> <span class="n">f</span> <span class="o">..</span> <span class="s1">'–'</span> <span class="o">..</span> <span class="n">t</span> </span><span id="L-1175"><a href="#L-1175"><span class="linenos" data-line="1175"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P582</span> <span class="kr">then</span> </span><span id="L-1176"><a href="#L-1176"><span class="linenos" data-line="1176"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">ti</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P582"</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">modifytime</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">modifyqualifiertime</span><span class="p">,</span> <span class="n">somevalue</span> <span class="o">=</span> <span class="s1">''</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> <span class="ow">or</span> <span class="s1">''</span> </span><span id="L-1177"><a href="#L-1177"><span class="linenos" data-line="1177"></span></a> <span class="kr">end</span> </span><span id="L-1178"><a href="#L-1178"><span class="linenos" data-line="1178"></span></a> <span class="kr">end</span> </span><span id="L-1179"><a href="#L-1179"><span class="linenos" data-line="1179"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P642</span> <span class="kr">then</span> </span><span id="L-1180"><a href="#L-1180"><span class="linenos" data-line="1180"></span></a> <span class="kd">local</span> <span class="n">av</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P642"</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">relevantred</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> <span class="ow">or</span> <span class="s1">''</span> </span><span id="L-1181"><a href="#L-1181"><span class="linenos" data-line="1181"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">av</span> <span class="o">=</span> <span class="n">av</span> </span><span id="L-1182"><a href="#L-1182"><span class="linenos" data-line="1182"></span></a> <span class="kr">end</span> </span><span id="L-1183"><a href="#L-1183"><span class="linenos" data-line="1183"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P291</span> <span class="kr">then</span> </span><span id="L-1184"><a href="#L-1184"><span class="linenos" data-line="1184"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">utgivort</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P291"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">separator</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierseparator</span><span class="p">,</span> <span class="n">conjunction</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierconjunction</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1185"><a href="#L-1185"><span class="linenos" data-line="1185"></span></a> <span class="kr">end</span> </span><span id="L-1186"><a href="#L-1186"><span class="linenos" data-line="1186"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P2096</span> <span class="kr">then</span> </span><span id="L-1187"><a href="#L-1187"><span class="linenos" data-line="1187"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">bildtext</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P2096"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">langpref</span> <span class="o">=</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">langpref</span> <span class="ow">or</span> <span class="s1">'sv'</span><span class="p">)},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1188"><a href="#L-1188"><span class="linenos" data-line="1188"></span></a> <span class="kr">end</span> </span><span id="L-1189"><a href="#L-1189"><span class="linenos" data-line="1189"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P180</span> <span class="kr">then</span> </span><span id="L-1190"><a href="#L-1190"><span class="linenos" data-line="1190"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">motiv</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P180"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1191"><a href="#L-1191"><span class="linenos" data-line="1191"></span></a> <span class="kr">end</span> </span><span id="L-1192"><a href="#L-1192"><span class="linenos" data-line="1192"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P2937</span> <span class="kr">then</span> </span><span id="L-1193"><a href="#L-1193"><span class="linenos" data-line="1193"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">mandatperiod</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P2937"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">novalue</span> <span class="o">=</span> <span class="s1">''</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1194"><a href="#L-1194"><span class="linenos" data-line="1194"></span></a> <span class="kr">end</span> </span><span id="L-1195"><a href="#L-1195"><span class="linenos" data-line="1195"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P768</span> <span class="kr">then</span> </span><span id="L-1196"><a href="#L-1196"><span class="linenos" data-line="1196"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">valkrets</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P768"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1197"><a href="#L-1197"><span class="linenos" data-line="1197"></span></a> <span class="kr">end</span> </span><span id="L-1198"><a href="#L-1198"><span class="linenos" data-line="1198"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P5054</span> <span class="kr">then</span> </span><span id="L-1199"><a href="#L-1199"><span class="linenos" data-line="1199"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">regering</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P5054"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">relevantred</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1200"><a href="#L-1200"><span class="linenos" data-line="1200"></span></a> <span class="kr">end</span> </span><span id="L-1201"><a href="#L-1201"><span class="linenos" data-line="1201"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P1686</span> <span class="kr">then</span> </span><span id="L-1202"><a href="#L-1202"><span class="linenos" data-line="1202"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">forarbete</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P1686"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">relevantred</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1203"><a href="#L-1203"><span class="linenos" data-line="1203"></span></a> <span class="kr">end</span> </span><span id="L-1204"><a href="#L-1204"><span class="linenos" data-line="1204"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P1545</span> <span class="kr">then</span> </span><span id="L-1205"><a href="#L-1205"><span class="linenos" data-line="1205"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">ordningsnummer</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P1545"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1206"><a href="#L-1206"><span class="linenos" data-line="1206"></span></a> <span class="kr">end</span> </span><span id="L-1207"><a href="#L-1207"><span class="linenos" data-line="1207"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P1706</span> <span class="kr">then</span> </span><span id="L-1208"><a href="#L-1208"><span class="linenos" data-line="1208"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">tillsammans</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P1706"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1209"><a href="#L-1209"><span class="linenos" data-line="1209"></span></a> <span class="kr">end</span> </span><span id="L-1210"><a href="#L-1210"><span class="linenos" data-line="1210"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P1480</span> <span class="kr">then</span> </span><span id="L-1211"><a href="#L-1211"><span class="linenos" data-line="1211"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">kellege</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P1480"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1212"><a href="#L-1212"><span class="linenos" data-line="1212"></span></a> <span class="kr">end</span> </span><span id="L-1213"><a href="#L-1213"><span class="linenos" data-line="1213"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P1365</span> <span class="kr">then</span> </span><span id="L-1214"><a href="#L-1214"><span class="linenos" data-line="1214"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">foretradare</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P1365"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">redlink</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">novalue</span> <span class="o">=</span> <span class="s1">''</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1215"><a href="#L-1215"><span class="linenos" data-line="1215"></span></a> <span class="kr">end</span> </span><span id="L-1216"><a href="#L-1216"><span class="linenos" data-line="1216"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P1366</span> <span class="kr">then</span> </span><span id="L-1217"><a href="#L-1217"><span class="linenos" data-line="1217"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">eftertradare</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P1366"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">redlink</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">novalue</span> <span class="o">=</span> <span class="s1">''</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1218"><a href="#L-1218"><span class="linenos" data-line="1218"></span></a> <span class="kr">end</span> </span><span id="L-1219"><a href="#L-1219"><span class="linenos" data-line="1219"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P1534</span> <span class="kr">then</span> </span><span id="L-1220"><a href="#L-1220"><span class="linenos" data-line="1220"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">slutorsak</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P1534"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1221"><a href="#L-1221"><span class="linenos" data-line="1221"></span></a> <span class="kr">end</span> </span><span id="L-1222"><a href="#L-1222"><span class="linenos" data-line="1222"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P518</span> <span class="kr">then</span> </span><span id="L-1223"><a href="#L-1223"><span class="linenos" data-line="1223"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">berorddel</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P518"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1224"><a href="#L-1224"><span class="linenos" data-line="1224"></span></a> <span class="kr">end</span> </span><span id="L-1225"><a href="#L-1225"><span class="linenos" data-line="1225"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P7903</span> <span class="kr">then</span> </span><span id="L-1226"><a href="#L-1226"><span class="linenos" data-line="1226"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">fick</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P7903"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1227"><a href="#L-1227"><span class="linenos" data-line="1227"></span></a> <span class="kr">end</span> </span><span id="L-1228"><a href="#L-1228"><span class="linenos" data-line="1228"></span></a> <span class="kr">if</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">.</span><span class="n">P7904</span> <span class="kr">then</span> </span><span id="L-1229"><a href="#L-1229"><span class="linenos" data-line="1229"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">gav</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P7904"</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1230"><a href="#L-1230"><span class="linenos" data-line="1230"></span></a> <span class="kr">end</span> </span><span id="L-1231"><a href="#L-1231"><span class="linenos" data-line="1231"></span></a> <span class="kr">if</span> <span class="n">s</span> <span class="kr">then</span> </span><span id="L-1232"><a href="#L-1232"><span class="linenos" data-line="1232"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">qual1</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">qual1</span> <span class="o">~=</span> <span class="s1">''</span> <span class="ow">and</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">qual1</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-1233"><a href="#L-1233"><span class="linenos" data-line="1233"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">qp1</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qual1</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">separator</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierseparator</span><span class="p">,</span> <span class="n">conjunction</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierconjunction</span><span class="p">,</span> <span class="n">convertunit</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierconvertunit</span><span class="p">,</span> <span class="n">withoutunit</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierwithoutunit</span><span class="p">,</span> <span class="n">noformatera</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifiernoformatera</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1234"><a href="#L-1234"><span class="linenos" data-line="1234"></span></a> <span class="kr">end</span> </span><span id="L-1235"><a href="#L-1235"><span class="linenos" data-line="1235"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">qual2</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">qual2</span> <span class="o">~=</span> <span class="s1">''</span> <span class="ow">and</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">qual2</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-1236"><a href="#L-1236"><span class="linenos" data-line="1236"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">qp2</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qual2</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">separator</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierseparator</span><span class="p">,</span> <span class="n">conjunction</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierconjunction</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1237"><a href="#L-1237"><span class="linenos" data-line="1237"></span></a> <span class="kr">end</span> </span><span id="L-1238"><a href="#L-1238"><span class="linenos" data-line="1238"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">qual3</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">qual3</span> <span class="o">~=</span> <span class="s1">''</span> <span class="ow">and</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">qual3</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-1239"><a href="#L-1239"><span class="linenos" data-line="1239"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">qp3</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qual3</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">separator</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierseparator</span><span class="p">,</span> <span class="n">conjunction</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierconjunction</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1240"><a href="#L-1240"><span class="linenos" data-line="1240"></span></a> <span class="kr">end</span> </span><span id="L-1241"><a href="#L-1241"><span class="linenos" data-line="1241"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">qual4</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">qual4</span> <span class="o">~=</span> <span class="s1">''</span> <span class="ow">and</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">qual4</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-1242"><a href="#L-1242"><span class="linenos" data-line="1242"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">qp4</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qual4</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">separator</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierseparator</span><span class="p">,</span> <span class="n">conjunction</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierconjunction</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1243"><a href="#L-1243"><span class="linenos" data-line="1243"></span></a> <span class="kr">end</span> </span><span id="L-1244"><a href="#L-1244"><span class="linenos" data-line="1244"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">qual5</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">qual5</span> <span class="o">~=</span> <span class="s1">''</span> <span class="ow">and</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">qual5</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-1245"><a href="#L-1245"><span class="linenos" data-line="1245"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">qp5</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qual5</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">separator</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierseparator</span><span class="p">,</span> <span class="n">conjunction</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">qualifierconjunction</span><span class="p">},</span> <span class="n">statement</span><span class="p">.</span><span class="n">qualifiers</span><span class="p">)</span> </span><span id="L-1246"><a href="#L-1246"><span class="linenos" data-line="1246"></span></a> <span class="kr">end</span> </span><span id="L-1247"><a href="#L-1247"><span class="linenos" data-line="1247"></span></a> <span class="kr">end</span> </span><span id="L-1248"><a href="#L-1248"><span class="linenos" data-line="1248"></span></a> <span class="kr">end</span> </span><span id="L-1249"><a href="#L-1249"><span class="linenos" data-line="1249"></span></a> <span class="kr">return</span> <span class="n">s</span> </span><span id="L-1250"><a href="#L-1250"><span class="linenos" data-line="1250"></span></a> <span class="kr">elseif</span> <span class="ow">not</span> <span class="n">statement</span><span class="p">.</span><span class="n">type</span> <span class="kr">then</span> </span><span id="L-1251"><a href="#L-1251"><span class="linenos" data-line="1251"></span></a> <span class="kr">return</span> <span class="n">formatSnak</span><span class="p">(</span> <span class="n">statement</span><span class="p">,</span> <span class="n">options</span> <span class="p">)</span> </span><span id="L-1252"><a href="#L-1252"><span class="linenos" data-line="1252"></span></a> <span class="kr">end</span> </span><span id="L-1253"><a href="#L-1253"><span class="linenos" data-line="1253"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">formatError</span><span class="p">(</span> <span class="s1">'unknown-claim-type'</span> <span class="p">)}</span> </span><span id="L-1254"><a href="#L-1254"><span class="linenos" data-line="1254"></span></a><span class="kr">end</span> </span><span id="L-1255"><a href="#L-1255"><span class="linenos" data-line="1255"></span></a> </span><span id="L-1256"><a href="#L-1256"><span class="linenos" data-line="1256"></span></a><span class="kr">function</span> <span class="nf">formatSnak</span><span class="p">(</span> <span class="n">snak</span><span class="p">,</span> <span class="n">options</span> <span class="p">)</span> </span><span id="L-1257"><a href="#L-1257"><span class="linenos" data-line="1257"></span></a> <span class="kr">if</span> <span class="n">snak</span><span class="p">.</span><span class="n">snaktype</span> <span class="o">==</span> <span class="s1">'somevalue'</span> <span class="kr">then</span> </span><span id="L-1258"><a href="#L-1258"><span class="linenos" data-line="1258"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">somevalue</span> <span class="kr">then</span> </span><span id="L-1259"><a href="#L-1259"><span class="linenos" data-line="1259"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">somevalue</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1260"><a href="#L-1260"><span class="linenos" data-line="1260"></span></a> <span class="kr">return</span> <span class="kc">nil</span> </span><span id="L-1261"><a href="#L-1261"><span class="linenos" data-line="1261"></span></a> <span class="kr">else</span> </span><span id="L-1262"><a href="#L-1262"><span class="linenos" data-line="1262"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">somevalue</span><span class="p">}</span> </span><span id="L-1263"><a href="#L-1263"><span class="linenos" data-line="1263"></span></a> <span class="kr">end</span> </span><span id="L-1264"><a href="#L-1264"><span class="linenos" data-line="1264"></span></a> <span class="kr">end</span> </span><span id="L-1265"><a href="#L-1265"><span class="linenos" data-line="1265"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">i18n</span><span class="p">[</span><span class="s1">'somevalue'</span><span class="p">]}</span> </span><span id="L-1266"><a href="#L-1266"><span class="linenos" data-line="1266"></span></a> <span class="kr">elseif</span> <span class="n">snak</span><span class="p">.</span><span class="n">snaktype</span> <span class="o">==</span> <span class="s1">'novalue'</span> <span class="kr">then</span> </span><span id="L-1267"><a href="#L-1267"><span class="linenos" data-line="1267"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">novalue</span> <span class="kr">then</span> </span><span id="L-1268"><a href="#L-1268"><span class="linenos" data-line="1268"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">novalue</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1269"><a href="#L-1269"><span class="linenos" data-line="1269"></span></a> <span class="kr">return</span> <span class="kc">nil</span> </span><span id="L-1270"><a href="#L-1270"><span class="linenos" data-line="1270"></span></a> <span class="kr">else</span> </span><span id="L-1271"><a href="#L-1271"><span class="linenos" data-line="1271"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">novalue</span><span class="p">}</span> </span><span id="L-1272"><a href="#L-1272"><span class="linenos" data-line="1272"></span></a> <span class="kr">end</span> </span><span id="L-1273"><a href="#L-1273"><span class="linenos" data-line="1273"></span></a> <span class="kr">end</span> </span><span id="L-1274"><a href="#L-1274"><span class="linenos" data-line="1274"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">i18n</span><span class="p">[</span><span class="s1">'novalue'</span><span class="p">]}</span> </span><span id="L-1275"><a href="#L-1275"><span class="linenos" data-line="1275"></span></a> <span class="kr">elseif</span> <span class="n">snak</span><span class="p">.</span><span class="n">snaktype</span> <span class="o">==</span> <span class="s1">'value'</span> <span class="kr">then</span> </span><span id="L-1276"><a href="#L-1276"><span class="linenos" data-line="1276"></span></a> <span class="kd">local</span> <span class="n">s</span> <span class="o">=</span> <span class="n">formatDatavalue</span><span class="p">(</span> <span class="n">snak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">,</span> <span class="n">options</span><span class="p">,</span> <span class="n">snak</span><span class="p">.</span><span class="n">datatype</span> <span class="p">)</span> </span><span id="L-1277"><a href="#L-1277"><span class="linenos" data-line="1277"></span></a> <span class="kr">if</span> <span class="n">s</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">prefix</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">prefix</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1278"><a href="#L-1278"><span class="linenos" data-line="1278"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">value</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">prefix</span> <span class="o">..</span> <span class="n">s</span><span class="p">.</span><span class="n">value</span> </span><span id="L-1279"><a href="#L-1279"><span class="linenos" data-line="1279"></span></a> <span class="kr">end</span> </span><span id="L-1280"><a href="#L-1280"><span class="linenos" data-line="1280"></span></a> <span class="kr">if</span> <span class="n">s</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">suffix</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">suffix</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1281"><a href="#L-1281"><span class="linenos" data-line="1281"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">value</span> <span class="o">=</span> <span class="n">s</span><span class="p">.</span><span class="n">value</span> <span class="o">..</span> <span class="n">options</span><span class="p">.</span><span class="n">suffix</span> </span><span id="L-1282"><a href="#L-1282"><span class="linenos" data-line="1282"></span></a> <span class="kr">end</span> </span><span id="L-1283"><a href="#L-1283"><span class="linenos" data-line="1283"></span></a> <span class="kr">if</span> <span class="n">s</span> <span class="ow">and</span> <span class="n">s</span><span class="p">.</span><span class="n">item</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">getsimpleproperty</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">getsimpleproperty</span> <span class="o">~=</span> <span class="s1">''</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">getproperty</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">getproperty</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1284"><a href="#L-1284"><span class="linenos" data-line="1284"></span></a> <span class="kd">local</span> <span class="n">pr</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">getproperty</span><span class="p">,</span> <span class="n">entityId</span> <span class="o">=</span> <span class="n">s</span><span class="p">.</span><span class="n">item</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">getenbarten</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'ja'</span><span class="p">,</span> <span class="n">relevantred</span> <span class="o">=</span> <span class="s1">'ja'</span><span class="p">,</span> <span class="n">modifytime</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">getmodifytime</span><span class="p">,</span> <span class="n">somevalue</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">getsomevalue</span><span class="p">,</span> <span class="n">novalue</span><span class="o">=</span><span class="n">options</span><span class="p">.</span><span class="n">getnovalue</span> <span class="p">,</span><span class="n">raw</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">getraw</span><span class="p">})</span> </span><span id="L-1285"><a href="#L-1285"><span class="linenos" data-line="1285"></span></a> <span class="kr">if</span> <span class="n">pr</span> <span class="kr">then</span> <span class="n">s</span><span class="p">.</span><span class="n">pr</span> <span class="o">=</span> <span class="n">pr</span> <span class="kr">end</span> </span><span id="L-1286"><a href="#L-1286"><span class="linenos" data-line="1286"></span></a> <span class="kr">end</span> </span><span id="L-1287"><a href="#L-1287"><span class="linenos" data-line="1287"></span></a> <span class="kr">return</span> <span class="n">s</span> </span><span id="L-1288"><a href="#L-1288"><span class="linenos" data-line="1288"></span></a> <span class="kr">else</span> </span><span id="L-1289"><a href="#L-1289"><span class="linenos" data-line="1289"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">formatError</span><span class="p">(</span> <span class="s1">'unknown-snak-type'</span> <span class="p">)}</span> </span><span id="L-1290"><a href="#L-1290"><span class="linenos" data-line="1290"></span></a> <span class="kr">end</span> </span><span id="L-1291"><a href="#L-1291"><span class="linenos" data-line="1291"></span></a><span class="kr">end</span> </span><span id="L-1292"><a href="#L-1292"><span class="linenos" data-line="1292"></span></a> </span><span id="L-1293"><a href="#L-1293"><span class="linenos" data-line="1293"></span></a><span class="kr">function</span> <span class="nf">formatDatavalue</span><span class="p">(</span> <span class="n">datavalue</span><span class="p">,</span> <span class="n">options</span><span class="p">,</span> <span class="n">datatype</span> <span class="p">)</span> </span><span id="L-1294"><a href="#L-1294"><span class="linenos" data-line="1294"></span></a> <span class="c1">--Use the customize handler if provided</span> </span><span id="L-1295"><a href="#L-1295"><span class="linenos" data-line="1295"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">[</span><span class="s1">'value-module'</span><span class="p">]</span> <span class="ow">or</span> <span class="n">options</span><span class="p">[</span><span class="s1">'value-function'</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-1296"><a href="#L-1296"><span class="linenos" data-line="1296"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">options</span><span class="p">[</span><span class="s1">'value-module'</span><span class="p">]</span> <span class="ow">or</span> <span class="ow">not</span> <span class="n">options</span><span class="p">[</span><span class="s1">'value-function'</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-1297"><a href="#L-1297"><span class="linenos" data-line="1297"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">formatError</span><span class="p">(</span> <span class="s1">'unknown-value-module'</span> <span class="p">)}</span> </span><span id="L-1298"><a href="#L-1298"><span class="linenos" data-line="1298"></span></a> <span class="kr">end</span> </span><span id="L-1299"><a href="#L-1299"><span class="linenos" data-line="1299"></span></a> <span class="kd">local</span> <span class="n">formatter</span> <span class="o">=</span> <span class="nb">require</span> <span class="p">(</span><span class="s1">'Module:'</span> <span class="o">..</span> <span class="n">options</span><span class="p">[</span><span class="s1">'value-module'</span><span class="p">])</span> </span><span id="L-1300"><a href="#L-1300"><span class="linenos" data-line="1300"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">formatter</span> <span class="kr">then</span> </span><span id="L-1301"><a href="#L-1301"><span class="linenos" data-line="1301"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">formatError</span><span class="p">(</span> <span class="s1">'value-module-not-found'</span> <span class="p">)}</span> </span><span id="L-1302"><a href="#L-1302"><span class="linenos" data-line="1302"></span></a> <span class="kr">end</span> </span><span id="L-1303"><a href="#L-1303"><span class="linenos" data-line="1303"></span></a> <span class="kd">local</span> <span class="n">fun</span> <span class="o">=</span> <span class="n">formatter</span><span class="p">[</span><span class="n">options</span><span class="p">[</span><span class="s1">'value-function'</span><span class="p">]]</span> </span><span id="L-1304"><a href="#L-1304"><span class="linenos" data-line="1304"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">fun</span> <span class="kr">then</span> </span><span id="L-1305"><a href="#L-1305"><span class="linenos" data-line="1305"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">formatError</span><span class="p">(</span> <span class="s1">'value-function-not-found'</span> <span class="p">)}</span> </span><span id="L-1306"><a href="#L-1306"><span class="linenos" data-line="1306"></span></a> <span class="kr">end</span> </span><span id="L-1307"><a href="#L-1307"><span class="linenos" data-line="1307"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">fun</span><span class="p">(</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">,</span> <span class="n">options</span> <span class="p">)}</span> </span><span id="L-1308"><a href="#L-1308"><span class="linenos" data-line="1308"></span></a> <span class="kr">end</span> </span><span id="L-1309"><a href="#L-1309"><span class="linenos" data-line="1309"></span></a> </span><span id="L-1310"><a href="#L-1310"><span class="linenos" data-line="1310"></span></a> <span class="c1">--Default formatters</span> </span><span id="L-1311"><a href="#L-1311"><span class="linenos" data-line="1311"></span></a> <span class="kr">if</span> <span class="n">datatype</span> <span class="o">==</span> <span class="s1">'wikibase-item'</span> <span class="kr">then</span> </span><span id="L-1312"><a href="#L-1312"><span class="linenos" data-line="1312"></span></a> <span class="kd">local</span> <span class="n">s</span> <span class="o">=</span> <span class="n">formatEntityId</span><span class="p">(</span> <span class="n">getEntityIdFromValue</span><span class="p">(</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> <span class="p">),</span> <span class="n">options</span> <span class="p">)</span> </span><span id="L-1313"><a href="#L-1313"><span class="linenos" data-line="1313"></span></a> <span class="n">s</span><span class="p">.</span><span class="n">item</span> <span class="o">=</span> <span class="n">getEntityIdFromValue</span><span class="p">(</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> <span class="p">)</span> </span><span id="L-1314"><a href="#L-1314"><span class="linenos" data-line="1314"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">relevans</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">relevans</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1315"><a href="#L-1315"><span class="linenos" data-line="1315"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">sitelink</span><span class="p">(</span> <span class="n">s</span><span class="p">.</span><span class="n">item</span> <span class="p">)</span> <span class="kr">then</span> </span><span id="L-1316"><a href="#L-1316"><span class="linenos" data-line="1316"></span></a> <span class="kr">return</span> <span class="kc">nil</span> </span><span id="L-1317"><a href="#L-1317"><span class="linenos" data-line="1317"></span></a> <span class="kr">end</span> </span><span id="L-1318"><a href="#L-1318"><span class="linenos" data-line="1318"></span></a> <span class="kr">end</span> </span><span id="L-1319"><a href="#L-1319"><span class="linenos" data-line="1319"></span></a> <span class="kr">return</span> <span class="n">s</span> </span><span id="L-1320"><a href="#L-1320"><span class="linenos" data-line="1320"></span></a> </span><span id="L-1321"><a href="#L-1321"><span class="linenos" data-line="1321"></span></a> <span class="kr">elseif</span> <span class="n">datatype</span> <span class="o">==</span> <span class="s1">'string'</span> <span class="ow">or</span> <span class="n">datatype</span> <span class="o">==</span> <span class="s1">'commonsMedia'</span> <span class="ow">or</span> <span class="n">datatype</span> <span class="o">==</span> <span class="s1">'external-id'</span> <span class="kr">then</span> </span><span id="L-1322"><a href="#L-1322"><span class="linenos" data-line="1322"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">pattern</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">pattern</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1323"><a href="#L-1323"><span class="linenos" data-line="1323"></span></a> <span class="kd">local</span> <span class="n">patter</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">(</span> <span class="p">{</span><span class="n">property</span> <span class="o">=</span> <span class="s2">"P1630"</span><span class="p">,</span> <span class="n">entityId</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">property</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span> <span class="p">})</span> </span><span id="L-1324"><a href="#L-1324"><span class="linenos" data-line="1324"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">pattern</span> <span class="o">==</span> <span class="s2">"auktoritetsdata"</span> <span class="ow">and</span> <span class="n">patter</span> <span class="ow">and</span> <span class="n">patter</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1325"><a href="#L-1325"><span class="linenos" data-line="1325"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">formatFromPattern</span><span class="p">(</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">,</span> <span class="p">{</span><span class="n">pattern</span> <span class="o">=</span> <span class="n">patter</span><span class="p">}</span> <span class="p">)}</span> </span><span id="L-1326"><a href="#L-1326"><span class="linenos" data-line="1326"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">pattern</span> <span class="o">==</span> <span class="s2">"auktoritetsdata2"</span> <span class="ow">and</span> <span class="n">patter</span> <span class="ow">and</span> <span class="n">patter</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1327"><a href="#L-1327"><span class="linenos" data-line="1327"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="s1">'['</span> <span class="o">..</span> <span class="n">formatFromPattern</span><span class="p">(</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">,</span> <span class="p">{</span><span class="n">pattern</span> <span class="o">=</span> <span class="n">patter</span><span class="p">}</span> <span class="p">)</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> <span class="o">..</span> <span class="s1">']'</span> <span class="p">}</span> </span><span id="L-1328"><a href="#L-1328"><span class="linenos" data-line="1328"></span></a> <span class="kr">else</span> </span><span id="L-1329"><a href="#L-1329"><span class="linenos" data-line="1329"></span></a> <span class="kr">if</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">pattern</span> <span class="o">==</span> <span class="s2">"auktoritetsdata2"</span><span class="p">)</span> <span class="kr">then</span> </span><span id="L-1330"><a href="#L-1330"><span class="linenos" data-line="1330"></span></a> <span class="c1">-- options.pattern blir sönderskriven(?) av funktionen getMost() i Modul:Cite</span> </span><span id="L-1331"><a href="#L-1331"><span class="linenos" data-line="1331"></span></a> <span class="c1">-- återställer till ett defaultvärde i detta fall när P1630 saknas för property och formatFromPattern annars kör i diket</span> </span><span id="L-1332"><a href="#L-1332"><span class="linenos" data-line="1332"></span></a> <span class="n">options</span><span class="p">.</span><span class="n">pattern</span> <span class="o">=</span> <span class="s1">'$1'</span> </span><span id="L-1333"><a href="#L-1333"><span class="linenos" data-line="1333"></span></a> <span class="kr">end</span> </span><span id="L-1334"><a href="#L-1334"><span class="linenos" data-line="1334"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">formatFromPattern</span><span class="p">(</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">,</span> <span class="n">options</span><span class="p">),</span> <span class="n">options</span> <span class="p">)}</span> </span><span id="L-1335"><a href="#L-1335"><span class="linenos" data-line="1335"></span></a> <span class="kr">end</span> </span><span id="L-1336"><a href="#L-1336"><span class="linenos" data-line="1336"></span></a> <span class="kr">else</span> </span><span id="L-1337"><a href="#L-1337"><span class="linenos" data-line="1337"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">,</span> <span class="n">options</span><span class="p">),</span> <span class="n">label</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">}</span> </span><span id="L-1338"><a href="#L-1338"><span class="linenos" data-line="1338"></span></a> <span class="kr">end</span> </span><span id="L-1339"><a href="#L-1339"><span class="linenos" data-line="1339"></span></a> </span><span id="L-1340"><a href="#L-1340"><span class="linenos" data-line="1340"></span></a> <span class="kr">elseif</span> <span class="n">datatype</span> <span class="o">==</span> <span class="s1">'time'</span> <span class="kr">then</span> </span><span id="L-1341"><a href="#L-1341"><span class="linenos" data-line="1341"></span></a> <span class="kd">local</span> <span class="n">Time</span> <span class="o">=</span> <span class="nb">require</span> <span class="s1">'Module:Time'</span> </span><span id="L-1342"><a href="#L-1342"><span class="linenos" data-line="1342"></span></a> <span class="kd">local</span> <span class="n">tid</span> <span class="o">=</span> <span class="n">Time</span><span class="p">.</span><span class="n">newFromWikidataValue</span><span class="p">(</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> <span class="p">):</span><span class="n">toHtml</span><span class="p">()</span> </span><span id="L-1343"><a href="#L-1343"><span class="linenos" data-line="1343"></span></a> <span class="kd">local</span> <span class="n">gs</span> <span class="o">=</span> <span class="kc">nil</span> </span><span id="L-1344"><a href="#L-1344"><span class="linenos" data-line="1344"></span></a> <span class="kr">if</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">calendarmodel</span><span class="p">:</span><span class="n">match</span><span class="p">(</span><span class="s1">'Q%d+'</span><span class="p">)</span> <span class="o">==</span> <span class="s1">'Q1985786'</span> <span class="kr">then</span> <span class="c1">-- juliansk kalender</span> </span><span id="L-1345"><a href="#L-1345"><span class="linenos" data-line="1345"></span></a> <span class="kd">local</span> <span class="n">yr</span> <span class="o">=</span> <span class="nb">tonumber</span><span class="p">(</span><span class="nb">string.sub</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="nb">string.find</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span><span class="p">,</span> <span class="s1">'-'</span><span class="p">,</span> <span class="mi">2</span><span class="p">)</span><span class="o">-</span><span class="mi">1</span><span class="p">))</span> <span class="c1">--försök hämta årtalet oformaterat</span> </span><span id="L-1346"><a href="#L-1346"><span class="linenos" data-line="1346"></span></a> <span class="kd">local</span> <span class="n">gr</span> <span class="o">=</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">gs</span><span class="p">)</span> <span class="ow">or</span> <span class="mi">1582</span> <span class="c1">-- låt 1582 vara default-värde för när gs ska anges</span> </span><span id="L-1347"><a href="#L-1347"><span class="linenos" data-line="1347"></span></a> <span class="kr">if</span> <span class="n">yr</span> <span class="o">></span> <span class="n">gr</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">gs</span> <span class="o">==</span> <span class="s1">'always'</span> <span class="kr">then</span> <span class="c1">-- </span> </span><span id="L-1348"><a href="#L-1348"><span class="linenos" data-line="1348"></span></a> <span class="n">gs</span> <span class="o">=</span> <span class="s1">'([[Gamla stilen och nya stilen|g.s.]])'</span> </span><span id="L-1349"><a href="#L-1349"><span class="linenos" data-line="1349"></span></a> <span class="kr">end</span> </span><span id="L-1350"><a href="#L-1350"><span class="linenos" data-line="1350"></span></a> <span class="kr">end</span> </span><span id="L-1351"><a href="#L-1351"><span class="linenos" data-line="1351"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">modifytime</span> <span class="o">==</span> <span class="s1">'longdate'</span> <span class="kr">then</span> </span><span id="L-1352"><a href="#L-1352"><span class="linenos" data-line="1352"></span></a> <span class="kd">local</span> <span class="n">mall</span> <span class="o">=</span> <span class="s1">''</span> </span><span id="L-1353"><a href="#L-1353"><span class="linenos" data-line="1353"></span></a> <span class="kr">if</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">precision</span> <span class="o">>=</span> <span class="mi">11</span> <span class="kr">then</span> </span><span id="L-1354"><a href="#L-1354"><span class="linenos" data-line="1354"></span></a> <span class="n">mall</span> <span class="o">=</span> <span class="s1">'{{#time:j F Y|'</span> <span class="o">..</span> <span class="nb">string.gsub</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span><span class="p">,</span><span class="s1">'-00'</span><span class="p">,</span><span class="s1">'-01'</span><span class="p">)</span> <span class="o">..</span> <span class="s1">'}}'</span> </span><span id="L-1355"><a href="#L-1355"><span class="linenos" data-line="1355"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="n">mall</span><span class="p">)</span> </span><span id="L-1356"><a href="#L-1356"><span class="linenos" data-line="1356"></span></a> <span class="kr">elseif</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">precision</span> <span class="o">==</span> <span class="mi">10</span> <span class="kr">then</span> </span><span id="L-1357"><a href="#L-1357"><span class="linenos" data-line="1357"></span></a> <span class="n">mall</span> <span class="o">=</span> <span class="s1">'{{#time:F Y|'</span> <span class="o">..</span> <span class="nb">string.gsub</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span><span class="p">,</span><span class="s1">'-00'</span><span class="p">,</span><span class="s1">'-01'</span><span class="p">)</span> <span class="o">..</span> <span class="s1">'}}'</span> </span><span id="L-1358"><a href="#L-1358"><span class="linenos" data-line="1358"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="n">mall</span><span class="p">)</span> </span><span id="L-1359"><a href="#L-1359"><span class="linenos" data-line="1359"></span></a> <span class="kr">elseif</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">precision</span> <span class="o">==</span> <span class="mi">9</span> <span class="kr">then</span> </span><span id="L-1360"><a href="#L-1360"><span class="linenos" data-line="1360"></span></a> <span class="n">mall</span> <span class="o">=</span> <span class="s1">'{{#time:Y|'</span> <span class="o">..</span> <span class="nb">string.gsub</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span><span class="p">,</span><span class="s1">'-00'</span><span class="p">,</span><span class="s1">'-01'</span><span class="p">)</span> <span class="o">..</span> <span class="s1">'}}'</span> </span><span id="L-1361"><a href="#L-1361"><span class="linenos" data-line="1361"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="n">mall</span><span class="p">)</span> </span><span id="L-1362"><a href="#L-1362"><span class="linenos" data-line="1362"></span></a> <span class="kr">end</span> </span><span id="L-1363"><a href="#L-1363"><span class="linenos" data-line="1363"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">modifytime</span> <span class="o">==</span> <span class="s1">'longdatelink'</span> <span class="kr">then</span> </span><span id="L-1364"><a href="#L-1364"><span class="linenos" data-line="1364"></span></a> <span class="kd">local</span> <span class="n">mall</span> <span class="o">=</span> <span class="s1">''</span> </span><span id="L-1365"><a href="#L-1365"><span class="linenos" data-line="1365"></span></a> <span class="kr">if</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">precision</span> <span class="o">>=</span> <span class="mi">11</span> <span class="kr">then</span> </span><span id="L-1366"><a href="#L-1366"><span class="linenos" data-line="1366"></span></a> <span class="n">mall</span> <span class="o">=</span> <span class="s1">'{{#time:[[j F]] [[Y]]|'</span> <span class="o">..</span> <span class="nb">string.gsub</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span><span class="p">,</span><span class="s1">'-00'</span><span class="p">,</span><span class="s1">'-01'</span><span class="p">)</span> <span class="o">..</span> <span class="s1">'}}'</span> </span><span id="L-1367"><a href="#L-1367"><span class="linenos" data-line="1367"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="n">mall</span><span class="p">)</span> </span><span id="L-1368"><a href="#L-1368"><span class="linenos" data-line="1368"></span></a> <span class="kr">elseif</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">precision</span> <span class="o">==</span> <span class="mi">10</span> <span class="kr">then</span> </span><span id="L-1369"><a href="#L-1369"><span class="linenos" data-line="1369"></span></a> <span class="n">mall</span> <span class="o">=</span> <span class="s1">'{{#time:[[F]] [[Y]]|'</span> <span class="o">..</span> <span class="nb">string.gsub</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span><span class="p">,</span><span class="s1">'-00'</span><span class="p">,</span><span class="s1">'-01'</span><span class="p">)</span> <span class="o">..</span> <span class="s1">'}}'</span> </span><span id="L-1370"><a href="#L-1370"><span class="linenos" data-line="1370"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="nb">string.gsub</span><span class="p">(</span><span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="n">mall</span><span class="p">),</span><span class="s1">'mars'</span><span class="p">,</span><span class="s1">'mars (månad)|mars'</span><span class="p">)</span> </span><span id="L-1371"><a href="#L-1371"><span class="linenos" data-line="1371"></span></a> <span class="kr">elseif</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">precision</span> <span class="o">==</span> <span class="mi">9</span> <span class="kr">then</span> </span><span id="L-1372"><a href="#L-1372"><span class="linenos" data-line="1372"></span></a> <span class="n">mall</span> <span class="o">=</span> <span class="s1">'{{#time:[[Y]]|'</span> <span class="o">..</span> <span class="nb">string.gsub</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span><span class="p">,</span><span class="s1">'-00'</span><span class="p">,</span><span class="s1">'-01'</span><span class="p">)</span> <span class="o">..</span> <span class="s1">'}}'</span> </span><span id="L-1373"><a href="#L-1373"><span class="linenos" data-line="1373"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="n">mall</span><span class="p">)</span> </span><span id="L-1374"><a href="#L-1374"><span class="linenos" data-line="1374"></span></a> <span class="kr">end</span> </span><span id="L-1375"><a href="#L-1375"><span class="linenos" data-line="1375"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">modifytime</span> <span class="o">==</span> <span class="s1">'Y'</span> <span class="kr">then</span> </span><span id="L-1376"><a href="#L-1376"><span class="linenos" data-line="1376"></span></a> <span class="kd">local</span> <span class="n">mall</span> <span class="o">=</span> <span class="s1">''</span> </span><span id="L-1377"><a href="#L-1377"><span class="linenos" data-line="1377"></span></a> <span class="kd">local</span> <span class="n">thetime</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span> </span><span id="L-1378"><a href="#L-1378"><span class="linenos" data-line="1378"></span></a> <span class="kr">if</span> <span class="nb">string.sub</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">1</span><span class="p">)</span> <span class="o">==</span> <span class="s1">'-'</span> <span class="kr">then</span> </span><span id="L-1379"><a href="#L-1379"><span class="linenos" data-line="1379"></span></a> <span class="n">thetime</span> <span class="o">=</span> <span class="nb">string.sub</span><span class="p">(</span><span class="n">thetime</span><span class="p">,</span><span class="mi">2</span><span class="p">)</span> </span><span id="L-1380"><a href="#L-1380"><span class="linenos" data-line="1380"></span></a> <span class="n">mall</span> <span class="o">=</span> <span class="s1">'{{#time:Y|'</span> <span class="o">..</span> <span class="nb">string.gsub</span><span class="p">(</span><span class="n">thetime</span><span class="p">,</span><span class="s1">'-00'</span><span class="p">,</span><span class="s1">'-01'</span><span class="p">)</span> <span class="o">..</span> <span class="s1">'}}'</span> </span><span id="L-1381"><a href="#L-1381"><span class="linenos" data-line="1381"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="n">mall</span><span class="p">)</span><span class="o">..</span><span class="s1">' f.Kr.'</span> </span><span id="L-1382"><a href="#L-1382"><span class="linenos" data-line="1382"></span></a> <span class="kr">else</span> </span><span id="L-1383"><a href="#L-1383"><span class="linenos" data-line="1383"></span></a> <span class="n">mall</span> <span class="o">=</span> <span class="s1">'{{#time:Y|'</span> <span class="o">..</span> <span class="nb">string.gsub</span><span class="p">(</span><span class="n">thetime</span><span class="p">,</span><span class="s1">'-00'</span><span class="p">,</span><span class="s1">'-01'</span><span class="p">)</span> <span class="o">..</span> <span class="s1">'}}'</span> </span><span id="L-1384"><a href="#L-1384"><span class="linenos" data-line="1384"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="n">mall</span><span class="p">)</span> </span><span id="L-1385"><a href="#L-1385"><span class="linenos" data-line="1385"></span></a> <span class="kr">end</span> </span><span id="L-1386"><a href="#L-1386"><span class="linenos" data-line="1386"></span></a> <span class="kr">if</span> <span class="n">tid</span> <span class="o">==</span> <span class="s2">"0000"</span> <span class="kr">then</span> </span><span id="L-1387"><a href="#L-1387"><span class="linenos" data-line="1387"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="s2">"0"</span> </span><span id="L-1388"><a href="#L-1388"><span class="linenos" data-line="1388"></span></a> <span class="kr">else</span> </span><span id="L-1389"><a href="#L-1389"><span class="linenos" data-line="1389"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="nb">string.gsub</span><span class="p">(</span><span class="n">tid</span><span class="p">,</span><span class="s2">"^0+"</span><span class="p">,</span><span class="s2">""</span><span class="p">)</span> </span><span id="L-1390"><a href="#L-1390"><span class="linenos" data-line="1390"></span></a> <span class="kr">end</span> </span><span id="L-1391"><a href="#L-1391"><span class="linenos" data-line="1391"></span></a> <span class="kr">if</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">precision</span> <span class="o"><</span> <span class="mi">9</span> <span class="kr">then</span> </span><span id="L-1392"><a href="#L-1392"><span class="linenos" data-line="1392"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="s1">''</span> </span><span id="L-1393"><a href="#L-1393"><span class="linenos" data-line="1393"></span></a> <span class="kr">end</span> </span><span id="L-1394"><a href="#L-1394"><span class="linenos" data-line="1394"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">modifytime</span> <span class="o">==</span> <span class="s1">'Ylink'</span> <span class="kr">then</span> </span><span id="L-1395"><a href="#L-1395"><span class="linenos" data-line="1395"></span></a> <span class="kd">local</span> <span class="n">mall</span> <span class="o">=</span> <span class="s1">'{{#time:[[Y]]|'</span> <span class="o">..</span> <span class="nb">string.gsub</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">time</span><span class="p">,</span><span class="s1">'-00'</span><span class="p">,</span><span class="s1">'-01'</span><span class="p">)</span> <span class="o">..</span> <span class="s1">'}}'</span> </span><span id="L-1396"><a href="#L-1396"><span class="linenos" data-line="1396"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="n">mall</span><span class="p">)</span> </span><span id="L-1397"><a href="#L-1397"><span class="linenos" data-line="1397"></span></a> <span class="kr">end</span> </span><span id="L-1398"><a href="#L-1398"><span class="linenos" data-line="1398"></span></a><span class="c1">-- do not display time value if the precision is lower than lowesttimeprecision</span> </span><span id="L-1399"><a href="#L-1399"><span class="linenos" data-line="1399"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">lowesttimeprecision</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">lowesttimeprecision</span> <span class="o">~=</span> <span class="s1">''</span> <span class="ow">and</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">precision</span><span class="o"><</span><span class="nb">tonumber</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">lowesttimeprecision</span><span class="p">)</span> <span class="kr">then</span> </span><span id="L-1400"><a href="#L-1400"><span class="linenos" data-line="1400"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="s1">''</span> </span><span id="L-1401"><a href="#L-1401"><span class="linenos" data-line="1401"></span></a> <span class="kr">end</span> </span><span id="L-1402"><a href="#L-1402"><span class="linenos" data-line="1402"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">gs</span> <span class="ow">and</span> <span class="n">gs</span> <span class="kr">then</span> </span><span id="L-1403"><a href="#L-1403"><span class="linenos" data-line="1403"></span></a> <span class="n">tid</span> <span class="o">=</span> <span class="n">tid</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">gs</span> </span><span id="L-1404"><a href="#L-1404"><span class="linenos" data-line="1404"></span></a> <span class="kr">end</span> </span><span id="L-1405"><a href="#L-1405"><span class="linenos" data-line="1405"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">tid</span><span class="p">}</span> </span><span id="L-1406"><a href="#L-1406"><span class="linenos" data-line="1406"></span></a> </span><span id="L-1407"><a href="#L-1407"><span class="linenos" data-line="1407"></span></a> <span class="kr">elseif</span> <span class="n">datatype</span> <span class="o">==</span> <span class="s1">'globe-coordinate'</span> <span class="kr">then</span> </span><span id="L-1408"><a href="#L-1408"><span class="linenos" data-line="1408"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">koorder</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">,</span> <span class="n">options</span><span class="p">),</span> <span class="n">latitude</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">latitude</span><span class="p">,</span> <span class="n">longitude</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">longitude</span><span class="p">,</span> <span class="n">precision</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">precision</span><span class="p">,</span> <span class="n">globe</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">globe</span><span class="p">:</span><span class="n">match</span><span class="p">(</span><span class="s1">'Q%d+'</span><span class="p">)}</span> </span><span id="L-1409"><a href="#L-1409"><span class="linenos" data-line="1409"></span></a> </span><span id="L-1410"><a href="#L-1410"><span class="linenos" data-line="1410"></span></a> <span class="kr">elseif</span> <span class="n">datatype</span> <span class="o">==</span> <span class="s1">'quantity'</span> <span class="kr">then</span> </span><span id="L-1411"><a href="#L-1411"><span class="linenos" data-line="1411"></span></a> <span class="kd">local</span> <span class="n">amount</span><span class="p">,</span> <span class="n">unit</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">amount</span><span class="p">,</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">unit</span> </span><span id="L-1412"><a href="#L-1412"><span class="linenos" data-line="1412"></span></a> <span class="kd">local</span> <span class="n">amountR</span> <span class="o">=</span> <span class="n">formatera</span><span class="p">.</span><span class="n">newFromWikidataValueR</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">)</span> </span><span id="L-1413"><a href="#L-1413"><span class="linenos" data-line="1413"></span></a> <span class="kd">local</span> <span class="n">orginal</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> </span><span id="L-1414"><a href="#L-1414"><span class="linenos" data-line="1414"></span></a> </span><span id="L-1415"><a href="#L-1415"><span class="linenos" data-line="1415"></span></a> <span class="kd">local</span> <span class="n">amountsi</span><span class="p">,</span> <span class="n">unitsi</span><span class="p">,</span> <span class="n">unitrawsi</span><span class="p">,</span> <span class="n">numbersi</span><span class="p">,</span> <span class="n">valuesi</span><span class="o">=</span> <span class="kc">nil</span><span class="p">,</span> <span class="kc">nil</span><span class="p">,</span> <span class="kc">nil</span><span class="p">,</span> <span class="kc">nil</span><span class="p">,</span> <span class="kc">nil</span> </span><span id="L-1416"><a href="#L-1416"><span class="linenos" data-line="1416"></span></a> <span class="kd">local</span> <span class="n">amountsiupperBound</span><span class="p">,</span> <span class="n">amountsilowerBound</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">,</span> <span class="kc">nil</span> </span><span id="L-1417"><a href="#L-1417"><span class="linenos" data-line="1417"></span></a> <span class="kd">local</span> <span class="n">amountconv</span><span class="p">,</span> <span class="n">numberconv</span><span class="p">,</span> <span class="n">unitconv</span><span class="p">,</span> <span class="n">unitrawconv</span><span class="p">,</span> <span class="n">valueconv</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">,</span> <span class="kc">nil</span><span class="p">,</span> <span class="kc">nil</span><span class="p">,</span> <span class="kc">nil</span><span class="p">,</span> <span class="kc">nil</span> </span><span id="L-1418"><a href="#L-1418"><span class="linenos" data-line="1418"></span></a> </span><span id="L-1419"><a href="#L-1419"><span class="linenos" data-line="1419"></span></a> <span class="kr">if</span> <span class="n">unit</span> <span class="kr">then</span> </span><span id="L-1420"><a href="#L-1420"><span class="linenos" data-line="1420"></span></a> <span class="n">unit</span> <span class="o">=</span> <span class="n">unit</span><span class="p">:</span><span class="n">match</span><span class="p">(</span><span class="s1">'Q%d+'</span><span class="p">)</span> </span><span id="L-1421"><a href="#L-1421"><span class="linenos" data-line="1421"></span></a> <span class="kr">end</span> </span><span id="L-1422"><a href="#L-1422"><span class="linenos" data-line="1422"></span></a> <span class="kd">local</span> <span class="n">number</span> <span class="o">=</span> <span class="kc">nil</span> </span><span id="L-1423"><a href="#L-1423"><span class="linenos" data-line="1423"></span></a> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">norounding</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">norounding</span> </span><span id="L-1424"><a href="#L-1424"><span class="linenos" data-line="1424"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">noformatera</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">noformatera</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1425"><a href="#L-1425"><span class="linenos" data-line="1425"></span></a> <span class="n">number</span> <span class="o">=</span> <span class="n">formatera</span><span class="p">.</span><span class="n">newFromWikidataValueR</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">)</span> </span><span id="L-1426"><a href="#L-1426"><span class="linenos" data-line="1426"></span></a> <span class="kr">else</span> </span><span id="L-1427"><a href="#L-1427"><span class="linenos" data-line="1427"></span></a> <span class="n">number</span> <span class="o">=</span> <span class="n">formatera</span><span class="p">.</span><span class="n">newFromWikidataValue</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">)</span> </span><span id="L-1428"><a href="#L-1428"><span class="linenos" data-line="1428"></span></a> <span class="kr">end</span> </span><span id="L-1429"><a href="#L-1429"><span class="linenos" data-line="1429"></span></a> </span><span id="L-1430"><a href="#L-1430"><span class="linenos" data-line="1430"></span></a> <span class="kd">local</span> <span class="n">unitraw</span> <span class="o">=</span> <span class="n">unit</span> <span class="c1">-- enheten som Qid</span> </span><span id="L-1431"><a href="#L-1431"><span class="linenos" data-line="1431"></span></a> <span class="kr">if</span> <span class="n">unit</span> <span class="kr">then</span> </span><span id="L-1432"><a href="#L-1432"><span class="linenos" data-line="1432"></span></a> <span class="n">unit</span> <span class="o">=</span> <span class="n">unithandle</span><span class="p">(</span><span class="n">unit</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> <span class="c1">-- skickar tillbaka enheten i hanterbart format </span> </span><span id="L-1433"><a href="#L-1433"><span class="linenos" data-line="1433"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">options</span><span class="p">.</span><span class="n">antiloop</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">convertunit</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">convertunit</span> <span class="o">~=</span> <span class="s1">''</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">convertunit</span> <span class="o">~=</span> <span class="n">unitraw</span> <span class="kr">then</span> </span><span id="L-1434"><a href="#L-1434"><span class="linenos" data-line="1434"></span></a> <span class="c1">-- Av eknomiska skäl görs detta bara om konvertering efterfrågas och om den efterfrågade enheten inte är den som redan existerar</span> </span><span id="L-1435"><a href="#L-1435"><span class="linenos" data-line="1435"></span></a> <span class="kd">local</span> <span class="n">a</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s1">'P2370'</span><span class="p">,</span> <span class="n">entityId</span> <span class="o">=</span> <span class="n">unitraw</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">raw</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">antiloop</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">})</span> </span><span id="L-1436"><a href="#L-1436"><span class="linenos" data-line="1436"></span></a> <span class="kd">local</span> <span class="n">b</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span> <span class="o">=</span> <span class="s1">'P2370'</span><span class="p">,</span> <span class="n">entityId</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">convertunit</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">raw</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">,</span> <span class="n">antiloop</span> <span class="o">=</span> <span class="s1">'true'</span><span class="p">})</span> </span><span id="L-1437"><a href="#L-1437"><span class="linenos" data-line="1437"></span></a> <span class="kr">if</span> <span class="n">a</span> <span class="ow">and</span> <span class="n">b</span> <span class="ow">and</span> <span class="o">#</span><span class="n">a</span> <span class="o">></span> <span class="mi">0</span> <span class="ow">and</span> <span class="n">b</span> <span class="ow">and</span> <span class="o">#</span><span class="n">b</span> <span class="o">></span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-1438"><a href="#L-1438"><span class="linenos" data-line="1438"></span></a> <span class="kd">local</span> <span class="n">orginalsi</span> <span class="o">=</span> <span class="n">multiplikation</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">,</span> <span class="n">a</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span> <span class="s1">'*'</span><span class="p">)</span> <span class="c1">-- multiplicera orginalet för att få fram SI-enheten</span> </span><span id="L-1439"><a href="#L-1439"><span class="linenos" data-line="1439"></span></a> <span class="kd">local</span> <span class="n">orginalcv</span> <span class="o">=</span> <span class="n">multiplikation</span><span class="p">(</span><span class="n">orginalsi</span><span class="p">,</span> <span class="n">b</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span> <span class="s1">'/'</span><span class="p">)</span> <span class="c1">-- Dividera för att få fram den efterfrågade enheten</span> </span><span id="L-1440"><a href="#L-1440"><span class="linenos" data-line="1440"></span></a> <span class="n">amountsi</span> <span class="o">=</span> <span class="n">orginalsi</span><span class="p">.</span><span class="n">amount</span> </span><span id="L-1441"><a href="#L-1441"><span class="linenos" data-line="1441"></span></a> <span class="n">amountsiR</span> <span class="o">=</span> <span class="n">formatera</span><span class="p">.</span><span class="n">newFromWikidataValueR</span><span class="p">(</span><span class="n">orginalsi</span><span class="p">)</span> </span><span id="L-1442"><a href="#L-1442"><span class="linenos" data-line="1442"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">noformatera</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">noformatera</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1443"><a href="#L-1443"><span class="linenos" data-line="1443"></span></a> <span class="n">numbersi</span> <span class="o">=</span> <span class="n">amountsi</span> </span><span id="L-1444"><a href="#L-1444"><span class="linenos" data-line="1444"></span></a> <span class="kr">else</span> </span><span id="L-1445"><a href="#L-1445"><span class="linenos" data-line="1445"></span></a> <span class="kd">local</span> <span class="n">lang</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">language</span><span class="p">.</span><span class="n">new</span><span class="p">(</span> <span class="s1">'sv'</span> <span class="p">)</span> </span><span id="L-1446"><a href="#L-1446"><span class="linenos" data-line="1446"></span></a> <span class="n">numbersi</span> <span class="o">=</span> <span class="n">lang</span><span class="p">:</span><span class="n">formatNum</span><span class="p">(</span><span class="nb">tonumber</span><span class="p">(</span><span class="n">amountsi</span><span class="p">))</span> </span><span id="L-1447"><a href="#L-1447"><span class="linenos" data-line="1447"></span></a> <span class="kr">end</span> </span><span id="L-1448"><a href="#L-1448"><span class="linenos" data-line="1448"></span></a> <span class="n">unitsi</span> <span class="o">=</span> <span class="n">a</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">unit</span> </span><span id="L-1449"><a href="#L-1449"><span class="linenos" data-line="1449"></span></a> <span class="n">unitrawsi</span> <span class="o">=</span> <span class="n">a</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">unitraw</span> </span><span id="L-1450"><a href="#L-1450"><span class="linenos" data-line="1450"></span></a> <span class="n">valuesi</span> <span class="o">=</span> <span class="n">numbersi</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="p">(</span><span class="n">unitsi</span> <span class="ow">or</span> <span class="s1">''</span><span class="p">)</span> </span><span id="L-1451"><a href="#L-1451"><span class="linenos" data-line="1451"></span></a> <span class="n">amountconv</span> <span class="o">=</span> <span class="n">orginalcv</span><span class="p">.</span><span class="n">amount</span> </span><span id="L-1452"><a href="#L-1452"><span class="linenos" data-line="1452"></span></a> <span class="n">amountconvR</span> <span class="o">=</span> <span class="n">formatera</span><span class="p">.</span><span class="n">newFromWikidataValueR</span><span class="p">(</span><span class="n">orginalcv</span><span class="p">)</span> </span><span id="L-1453"><a href="#L-1453"><span class="linenos" data-line="1453"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">noformatera</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">noformatera</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1454"><a href="#L-1454"><span class="linenos" data-line="1454"></span></a> <span class="n">numberconv</span> <span class="o">=</span> <span class="n">formatera</span><span class="p">.</span><span class="n">newFromWikidataValueR</span><span class="p">(</span><span class="n">orginalcv</span><span class="p">)</span> </span><span id="L-1455"><a href="#L-1455"><span class="linenos" data-line="1455"></span></a> <span class="kr">else</span> </span><span id="L-1456"><a href="#L-1456"><span class="linenos" data-line="1456"></span></a> <span class="n">numberconv</span> <span class="o">=</span> <span class="n">formatera</span><span class="p">.</span><span class="n">newFromWikidataValue</span><span class="p">(</span><span class="n">orginalcv</span><span class="p">)</span> </span><span id="L-1457"><a href="#L-1457"><span class="linenos" data-line="1457"></span></a> <span class="kr">end</span> </span><span id="L-1458"><a href="#L-1458"><span class="linenos" data-line="1458"></span></a> <span class="n">unitrawconv</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">convertunit</span> </span><span id="L-1459"><a href="#L-1459"><span class="linenos" data-line="1459"></span></a> <span class="n">unitconv</span> <span class="o">=</span> <span class="n">unithandle</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">convertunit</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-1460"><a href="#L-1460"><span class="linenos" data-line="1460"></span></a> <span class="n">upperBoundconv</span><span class="p">,</span> <span class="n">lowerBoundconv</span> <span class="o">=</span> <span class="n">orginalcv</span><span class="p">.</span><span class="n">upperBound</span><span class="p">,</span> <span class="n">orginalcv</span><span class="p">.</span><span class="n">lowerBound</span> </span><span id="L-1461"><a href="#L-1461"><span class="linenos" data-line="1461"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">withoutunit</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withoutunit</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1462"><a href="#L-1462"><span class="linenos" data-line="1462"></span></a> <span class="n">valueconv</span> <span class="o">=</span> <span class="n">numberconv</span> </span><span id="L-1463"><a href="#L-1463"><span class="linenos" data-line="1463"></span></a> <span class="kr">else</span> </span><span id="L-1464"><a href="#L-1464"><span class="linenos" data-line="1464"></span></a> <span class="n">valueconv</span> <span class="o">=</span> <span class="n">numberconv</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="p">(</span><span class="n">unitconv</span> <span class="ow">or</span> <span class="s1">''</span><span class="p">)</span> </span><span id="L-1465"><a href="#L-1465"><span class="linenos" data-line="1465"></span></a> <span class="kr">end</span> </span><span id="L-1466"><a href="#L-1466"><span class="linenos" data-line="1466"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">valueconv</span><span class="p">,</span> <span class="n">amount</span> <span class="o">=</span> <span class="n">amountconv</span><span class="p">,</span> <span class="n">amountR</span> <span class="o">=</span> <span class="n">amountconvR</span><span class="p">,</span> <span class="n">upperBound</span> <span class="o">=</span> <span class="n">upperBoundconv</span><span class="p">,</span> <span class="n">lowerBound</span> <span class="o">=</span> <span class="n">lowerBoundconv</span><span class="p">,</span> <span class="n">unit</span> <span class="o">=</span> <span class="n">unitconv</span><span class="p">,</span> <span class="n">unitraw</span> <span class="o">=</span> <span class="n">unitrawconv</span><span class="p">,</span> <span class="n">valuesi</span> <span class="o">=</span> <span class="n">valuesi</span><span class="p">,</span> <span class="n">amountsi</span> <span class="o">=</span> <span class="n">amountsi</span><span class="p">,</span> <span class="n">amountsiR</span> <span class="o">=</span> <span class="n">amountsiR</span><span class="p">,</span> <span class="n">unitrawsi</span> <span class="o">=</span> <span class="n">unitrawsi</span><span class="p">,</span> <span class="n">unitsi</span> <span class="o">=</span> <span class="n">unitsi</span><span class="p">}</span> </span><span id="L-1467"><a href="#L-1467"><span class="linenos" data-line="1467"></span></a> <span class="kr">else</span> </span><span id="L-1468"><a href="#L-1468"><span class="linenos" data-line="1468"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">number</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="p">(</span><span class="n">unit</span> <span class="ow">or</span> <span class="s1">''</span><span class="p">)</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">formatError</span><span class="p">(</span> <span class="s1">'non-convertible unit'</span><span class="p">)</span> <span class="o">..</span> <span class="s1">'[[Kategori:Wikidata:Påståenden som inte går att konvertera]]'</span><span class="p">,</span> <span class="n">amount</span> <span class="o">=</span> <span class="n">amount</span><span class="p">,</span> <span class="n">amountR</span> <span class="o">=</span> <span class="n">amountR</span><span class="p">,</span> <span class="n">upperBound</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">upperBound</span><span class="p">,</span> <span class="n">lowerBound</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">lowerBound</span><span class="p">,</span> <span class="n">unit</span> <span class="o">=</span> <span class="n">unit</span><span class="p">,</span> <span class="n">unitraw</span> <span class="o">=</span> <span class="n">unitraw</span><span class="p">,</span> <span class="n">valuesi</span> <span class="o">=</span> <span class="n">valuesi</span><span class="p">,</span> <span class="n">amountsi</span> <span class="o">=</span> <span class="n">amountsi</span><span class="p">,</span> <span class="n">amountsiR</span> <span class="o">=</span> <span class="n">amountsiR</span><span class="p">,</span> <span class="n">unitrawsi</span> <span class="o">=</span> <span class="n">unitrawsi</span><span class="p">,</span> <span class="n">unitsi</span> <span class="o">=</span> <span class="n">unitsi</span><span class="p">}</span> </span><span id="L-1469"><a href="#L-1469"><span class="linenos" data-line="1469"></span></a> <span class="kr">end</span> </span><span id="L-1470"><a href="#L-1470"><span class="linenos" data-line="1470"></span></a> <span class="kr">end</span> </span><span id="L-1471"><a href="#L-1471"><span class="linenos" data-line="1471"></span></a> <span class="kr">end</span> </span><span id="L-1472"><a href="#L-1472"><span class="linenos" data-line="1472"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">unit</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">convertunit</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">convertunit</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1473"><a href="#L-1473"><span class="linenos" data-line="1473"></span></a> <span class="n">number</span> <span class="o">=</span> <span class="n">number</span> <span class="o">..</span> <span class="n">formatError</span><span class="p">(</span> <span class="s1">'non-convertible unit'</span><span class="p">)</span> <span class="o">..</span> <span class="s1">'[[Kategori:Wikidata:Påståenden som inte går att konvertera]]'</span> </span><span id="L-1474"><a href="#L-1474"><span class="linenos" data-line="1474"></span></a> <span class="kr">end</span> </span><span id="L-1475"><a href="#L-1475"><span class="linenos" data-line="1475"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">withoutunit</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">withoutunit</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1476"><a href="#L-1476"><span class="linenos" data-line="1476"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">number</span><span class="p">,</span> <span class="n">amount</span> <span class="o">=</span> <span class="n">amount</span><span class="p">,</span> <span class="n">amountR</span> <span class="o">=</span> <span class="n">amountR</span><span class="p">,</span> <span class="n">upperBound</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">upperBound</span><span class="p">,</span> <span class="n">lowerBound</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">lowerBound</span><span class="p">,</span> <span class="n">unit</span> <span class="o">=</span> <span class="n">unit</span><span class="p">,</span> <span class="n">unitraw</span> <span class="o">=</span> <span class="n">unitraw</span><span class="p">,</span> <span class="n">valuesi</span> <span class="o">=</span> <span class="n">valuesi</span><span class="p">,</span> <span class="n">amountsi</span> <span class="o">=</span> <span class="n">amountsi</span><span class="p">,</span> <span class="n">unitrawsi</span> <span class="o">=</span> <span class="n">unitrawsi</span><span class="p">,</span> <span class="n">unitsi</span> <span class="o">=</span> <span class="n">unitsi</span><span class="p">}</span> </span><span id="L-1477"><a href="#L-1477"><span class="linenos" data-line="1477"></span></a> <span class="kr">else</span> </span><span id="L-1478"><a href="#L-1478"><span class="linenos" data-line="1478"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">number</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="p">(</span><span class="n">unit</span> <span class="ow">or</span> <span class="s1">''</span><span class="p">),</span> <span class="n">amount</span> <span class="o">=</span> <span class="n">amount</span><span class="p">,</span> <span class="n">amountR</span> <span class="o">=</span> <span class="n">amountR</span><span class="p">,</span> <span class="n">upperBound</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">upperBound</span><span class="p">,</span> <span class="n">lowerBound</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">lowerBound</span><span class="p">,</span> <span class="n">unit</span> <span class="o">=</span> <span class="n">unit</span><span class="p">,</span> <span class="n">unitraw</span> <span class="o">=</span> <span class="n">unitraw</span><span class="p">,</span> <span class="n">valuesi</span> <span class="o">=</span> <span class="n">valuesi</span><span class="p">,</span> <span class="n">amountsi</span> <span class="o">=</span> <span class="n">amountsi</span><span class="p">,</span> <span class="n">unitrawsi</span> <span class="o">=</span> <span class="n">unitrawsi</span><span class="p">,</span> <span class="n">unitsi</span> <span class="o">=</span> <span class="n">unitsi</span><span class="p">}</span> </span><span id="L-1479"><a href="#L-1479"><span class="linenos" data-line="1479"></span></a> <span class="kr">end</span> </span><span id="L-1480"><a href="#L-1480"><span class="linenos" data-line="1480"></span></a> </span><span id="L-1481"><a href="#L-1481"><span class="linenos" data-line="1481"></span></a> <span class="kr">elseif</span> <span class="n">datatype</span> <span class="o">==</span> <span class="s1">'url'</span> <span class="kr">then</span> </span><span id="L-1482"><a href="#L-1482"><span class="linenos" data-line="1482"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">label</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">label</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1483"><a href="#L-1483"><span class="linenos" data-line="1483"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="s1">'['</span> <span class="o">..</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> <span class="o">..</span> <span class="s1">' '</span> <span class="o">..</span> <span class="n">options</span><span class="p">.</span><span class="n">label</span> <span class="o">..</span> <span class="s1">']'</span><span class="p">}</span> </span><span id="L-1484"><a href="#L-1484"><span class="linenos" data-line="1484"></span></a> <span class="kr">else</span> </span><span id="L-1485"><a href="#L-1485"><span class="linenos" data-line="1485"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">}</span> </span><span id="L-1486"><a href="#L-1486"><span class="linenos" data-line="1486"></span></a> <span class="kr">end</span> </span><span id="L-1487"><a href="#L-1487"><span class="linenos" data-line="1487"></span></a> </span><span id="L-1488"><a href="#L-1488"><span class="linenos" data-line="1488"></span></a> <span class="kr">elseif</span> <span class="n">datatype</span> <span class="o">==</span> <span class="s1">'monolingualtext'</span> <span class="kr">then</span> </span><span id="L-1489"><a href="#L-1489"><span class="linenos" data-line="1489"></span></a> <span class="kd">local</span> <span class="n">texten</span> <span class="o">=</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">text</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-1490"><a href="#L-1490"><span class="linenos" data-line="1490"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">options</span><span class="p">.</span><span class="n">langpref</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">langpref</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1491"><a href="#L-1491"><span class="linenos" data-line="1491"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'span'</span><span class="p">,</span> <span class="p">{</span><span class="n">title</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">language</span><span class="p">.</span><span class="n">fetchLanguageName</span><span class="p">(</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">language</span><span class="p">,</span> <span class="s1">'sv'</span><span class="p">)},</span> <span class="n">texten</span><span class="p">),</span> <span class="n">text</span> <span class="o">=</span> <span class="n">texten</span><span class="p">}</span> </span><span id="L-1492"><a href="#L-1492"><span class="linenos" data-line="1492"></span></a> <span class="kr">else</span> </span><span id="L-1493"><a href="#L-1493"><span class="linenos" data-line="1493"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">langpref</span> <span class="o">==</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">language</span> <span class="kr">then</span> </span><span id="L-1494"><a href="#L-1494"><span class="linenos" data-line="1494"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">texten</span><span class="p">,</span> <span class="n">text</span> <span class="o">=</span> <span class="n">texten</span><span class="p">}</span> </span><span id="L-1495"><a href="#L-1495"><span class="linenos" data-line="1495"></span></a> <span class="kr">end</span> </span><span id="L-1496"><a href="#L-1496"><span class="linenos" data-line="1496"></span></a> <span class="kr">end</span> </span><span id="L-1497"><a href="#L-1497"><span class="linenos" data-line="1497"></span></a> <span class="kr">elseif</span> <span class="n">datatype</span> <span class="o">==</span> <span class="s1">'geo-shape'</span> <span class="ow">and</span> <span class="n">datavalue</span> <span class="ow">and</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">type</span> <span class="ow">and</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">type</span> <span class="o">==</span> <span class="s2">"string"</span> <span class="kr">then</span> </span><span id="L-1498"><a href="#L-1498"><span class="linenos" data-line="1498"></span></a> <span class="kr">return</span> <span class="p">{</span> <span class="n">value</span> <span class="o">=</span> <span class="n">datavalue</span><span class="p">.</span><span class="n">value</span> <span class="p">}</span> </span><span id="L-1499"><a href="#L-1499"><span class="linenos" data-line="1499"></span></a> <span class="kr">else</span> </span><span id="L-1500"><a href="#L-1500"><span class="linenos" data-line="1500"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">formatError</span><span class="p">(</span> <span class="s1">'unknown-datatype'</span> <span class="p">)}</span> </span><span id="L-1501"><a href="#L-1501"><span class="linenos" data-line="1501"></span></a> <span class="kr">end</span> </span><span id="L-1502"><a href="#L-1502"><span class="linenos" data-line="1502"></span></a><span class="kr">end</span> </span><span id="L-1503"><a href="#L-1503"><span class="linenos" data-line="1503"></span></a> </span><span id="L-1504"><a href="#L-1504"><span class="linenos" data-line="1504"></span></a><span class="kr">function</span> <span class="nf">formatEntityId</span><span class="p">(</span> <span class="n">entityId</span><span class="p">,</span> <span class="n">options</span> <span class="p">)</span> </span><span id="L-1505"><a href="#L-1505"><span class="linenos" data-line="1505"></span></a> <span class="kd">local</span> <span class="n">label</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">label</span> <span class="ow">or</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getLabelByLang</span><span class="p">(</span> <span class="n">entityId</span><span class="p">,</span> <span class="s1">'sv'</span> <span class="p">)</span> <span class="ow">or</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getLabelByLang</span><span class="p">(</span> <span class="n">entityId</span><span class="p">,</span> <span class="s1">'mul'</span> <span class="p">)</span> </span><span id="L-1506"><a href="#L-1506"><span class="linenos" data-line="1506"></span></a> <span class="kr">if</span> <span class="n">label</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1507"><a href="#L-1507"><span class="linenos" data-line="1507"></span></a> <span class="n">label</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getLabelByLang</span><span class="p">(</span> <span class="n">entityId</span><span class="p">,</span> <span class="s1">'sv'</span> <span class="p">)</span> <span class="ow">or</span> <span class="kc">nil</span> </span><span id="L-1508"><a href="#L-1508"><span class="linenos" data-line="1508"></span></a> <span class="kr">end</span> </span><span id="L-1509"><a href="#L-1509"><span class="linenos" data-line="1509"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">labelformatter</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">labelformatter</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1510"><a href="#L-1510"><span class="linenos" data-line="1510"></span></a> <span class="kd">local</span> <span class="n">formatter</span> <span class="o">=</span> <span class="nb">require</span> <span class="p">(</span><span class="s1">'Module:Wikidata2/Aux2'</span><span class="p">)</span> </span><span id="L-1511"><a href="#L-1511"><span class="linenos" data-line="1511"></span></a> <span class="kd">local</span> <span class="n">fun</span> <span class="o">=</span> <span class="n">formatter</span><span class="p">[</span><span class="n">options</span><span class="p">.</span><span class="n">labelformatter</span><span class="p">]</span> </span><span id="L-1512"><a href="#L-1512"><span class="linenos" data-line="1512"></span></a> <span class="kr">if</span> <span class="n">fun</span> <span class="kr">then</span> </span><span id="L-1513"><a href="#L-1513"><span class="linenos" data-line="1513"></span></a> <span class="n">label</span> <span class="o">=</span> <span class="n">fun</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> </span><span id="L-1514"><a href="#L-1514"><span class="linenos" data-line="1514"></span></a> <span class="kr">end</span> </span><span id="L-1515"><a href="#L-1515"><span class="linenos" data-line="1515"></span></a> <span class="kr">end</span> </span><span id="L-1516"><a href="#L-1516"><span class="linenos" data-line="1516"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">labelgender</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">labelgender</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1517"><a href="#L-1517"><span class="linenos" data-line="1517"></span></a> <span class="kd">local</span> <span class="n">labelgenus</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span><span class="o">=</span><span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">labelgenderproperty</span> <span class="ow">or</span> <span class="s1">'P1549'</span><span class="p">),</span> <span class="n">entityId</span><span class="o">=</span><span class="n">entityId</span><span class="p">,</span> <span class="n">langpref</span> <span class="o">=</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">labelgenderlangpref</span> <span class="ow">or</span> <span class="s1">'sv'</span><span class="p">),</span> <span class="n">preferqualifier</span> <span class="o">=</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">labelgenderqualifier</span> <span class="ow">or</span> <span class="s1">'P518'</span><span class="p">),</span> <span class="n">preferqualifiervalue</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">labelgender</span><span class="p">,</span> <span class="n">noref</span><span class="o">=</span><span class="s1">'true'</span><span class="p">,</span> <span class="n">versalisering</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">versalisering</span><span class="p">,</span> <span class="n">firstversalisering</span> <span class="o">=</span> <span class="n">options</span><span class="p">.</span><span class="n">firstversalisering</span><span class="p">})</span> </span><span id="L-1518"><a href="#L-1518"><span class="linenos" data-line="1518"></span></a> <span class="kr">if</span> <span class="n">labelgenus</span> <span class="ow">and</span> <span class="n">labelgenus</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1519"><a href="#L-1519"><span class="linenos" data-line="1519"></span></a> <span class="n">label</span> <span class="o">=</span> <span class="n">labelgenus</span> </span><span id="L-1520"><a href="#L-1520"><span class="linenos" data-line="1520"></span></a> <span class="kr">end</span> </span><span id="L-1521"><a href="#L-1521"><span class="linenos" data-line="1521"></span></a> <span class="kr">end</span> </span><span id="L-1522"><a href="#L-1522"><span class="linenos" data-line="1522"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">kortnamn</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">kortnamn</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1523"><a href="#L-1523"><span class="linenos" data-line="1523"></span></a> <span class="kd">local</span> <span class="n">kortnamn</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span><span class="o">=</span><span class="s1">'P1813'</span><span class="p">,</span> <span class="n">entityId</span> <span class="o">=</span> <span class="n">entityId</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'ja'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'ja'</span><span class="p">})</span> </span><span id="L-1524"><a href="#L-1524"><span class="linenos" data-line="1524"></span></a> <span class="kr">if</span> <span class="n">kortnamn</span> <span class="ow">and</span> <span class="n">kortnamn</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1525"><a href="#L-1525"><span class="linenos" data-line="1525"></span></a> <span class="n">label</span> <span class="o">=</span> <span class="n">kortnamn</span> </span><span id="L-1526"><a href="#L-1526"><span class="linenos" data-line="1526"></span></a> <span class="kr">end</span> </span><span id="L-1527"><a href="#L-1527"><span class="linenos" data-line="1527"></span></a> <span class="kr">end</span> </span><span id="L-1528"><a href="#L-1528"><span class="linenos" data-line="1528"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">RGBcolor</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">RGBcolor</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1529"><a href="#L-1529"><span class="linenos" data-line="1529"></span></a> <span class="kd">local</span> <span class="n">RGBcolor</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">property</span><span class="o">=</span><span class="s1">'P465'</span><span class="p">,</span> <span class="n">entityId</span> <span class="o">=</span> <span class="n">entityId</span><span class="p">,</span> <span class="n">enbarten</span> <span class="o">=</span> <span class="s1">'ja'</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'ja'</span><span class="p">})</span> </span><span id="L-1530"><a href="#L-1530"><span class="linenos" data-line="1530"></span></a> <span class="kr">if</span> <span class="n">RGBcolor</span> <span class="ow">and</span> <span class="n">RGBcolor</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1531"><a href="#L-1531"><span class="linenos" data-line="1531"></span></a> <span class="n">label</span> <span class="o">=</span> <span class="n">RGBcolor</span> </span><span id="L-1532"><a href="#L-1532"><span class="linenos" data-line="1532"></span></a> <span class="kr">end</span> </span><span id="L-1533"><a href="#L-1533"><span class="linenos" data-line="1533"></span></a> <span class="kr">end</span> </span><span id="L-1534"><a href="#L-1534"><span class="linenos" data-line="1534"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">qvalue</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">qvalue</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1535"><a href="#L-1535"><span class="linenos" data-line="1535"></span></a> <span class="kd">local</span> <span class="n">qvalue</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">({</span><span class="n">entityId</span> <span class="o">=</span> <span class="n">entityId</span><span class="p">,</span> <span class="n">noref</span> <span class="o">=</span> <span class="s1">'ja'</span><span class="p">})</span> </span><span id="L-1536"><a href="#L-1536"><span class="linenos" data-line="1536"></span></a> <span class="kr">if</span> <span class="n">qvalue</span> <span class="ow">and</span> <span class="n">qvalue</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1537"><a href="#L-1537"><span class="linenos" data-line="1537"></span></a> <span class="n">label</span> <span class="o">=</span> <span class="n">entityId</span> </span><span id="L-1538"><a href="#L-1538"><span class="linenos" data-line="1538"></span></a> <span class="kr">end</span> </span><span id="L-1539"><a href="#L-1539"><span class="linenos" data-line="1539"></span></a> <span class="kr">end</span> </span><span id="L-1540"><a href="#L-1540"><span class="linenos" data-line="1540"></span></a> </span><span id="L-1541"><a href="#L-1541"><span class="linenos" data-line="1541"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">labelfromnameproperty</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">labelfromnameproperty</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1542"><a href="#L-1542"><span class="linenos" data-line="1542"></span></a> <span class="kd">local</span> <span class="n">newlabel</span> <span class="o">=</span> <span class="n">namefordate</span><span class="p">(</span><span class="n">options</span><span class="p">)</span> </span><span id="L-1543"><a href="#L-1543"><span class="linenos" data-line="1543"></span></a> <span class="kr">if</span> <span class="n">newlabel</span> <span class="ow">and</span> <span class="n">newlabel</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> <span class="n">label</span> <span class="o">=</span> <span class="n">newlabel</span> <span class="kr">end</span> </span><span id="L-1544"><a href="#L-1544"><span class="linenos" data-line="1544"></span></a> <span class="kr">end</span> </span><span id="L-1545"><a href="#L-1545"><span class="linenos" data-line="1545"></span></a> </span><span id="L-1546"><a href="#L-1546"><span class="linenos" data-line="1546"></span></a> <span class="kd">local</span> <span class="n">link</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">sitelink</span><span class="p">(</span> <span class="n">entityId</span> <span class="p">)</span> </span><span id="L-1547"><a href="#L-1547"><span class="linenos" data-line="1547"></span></a> </span><span id="L-1548"><a href="#L-1548"><span class="linenos" data-line="1548"></span></a> <span class="kr">if</span> <span class="n">link</span> <span class="ow">and</span> <span class="p">(</span><span class="ow">not</span> <span class="n">options</span><span class="p">.</span><span class="n">nolink</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">nolink</span> <span class="o">==</span> <span class="s1">''</span><span class="p">)</span> <span class="kr">then</span> </span><span id="L-1549"><a href="#L-1549"><span class="linenos" data-line="1549"></span></a> <span class="kr">if</span> <span class="n">label</span> <span class="ow">and</span> <span class="n">label</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1550"><a href="#L-1550"><span class="linenos" data-line="1550"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="s1">'[[:'</span> <span class="o">..</span> <span class="n">link</span> <span class="o">..</span> <span class="s1">'|'</span> <span class="o">..</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> <span class="o">..</span> <span class="s1">']]'</span><span class="p">,</span> <span class="n">label</span> <span class="o">=</span> <span class="n">label</span> <span class="p">}</span> </span><span id="L-1551"><a href="#L-1551"><span class="linenos" data-line="1551"></span></a> <span class="kr">else</span> </span><span id="L-1552"><a href="#L-1552"><span class="linenos" data-line="1552"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="s1">'[[:'</span> <span class="o">..</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">link</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> <span class="o">..</span> <span class="s1">']]'</span><span class="p">,</span> <span class="n">label</span> <span class="o">=</span> <span class="n">link</span> <span class="p">}</span> </span><span id="L-1553"><a href="#L-1553"><span class="linenos" data-line="1553"></span></a> <span class="kr">end</span> </span><span id="L-1554"><a href="#L-1554"><span class="linenos" data-line="1554"></span></a> <span class="kr">else</span> </span><span id="L-1555"><a href="#L-1555"><span class="linenos" data-line="1555"></span></a> <span class="kr">if</span> <span class="n">label</span> <span class="kr">then</span> </span><span id="L-1556"><a href="#L-1556"><span class="linenos" data-line="1556"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">redlink</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">redlink</span> <span class="o">~=</span> <span class="s1">''</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">relevantred</span> <span class="ow">or</span> <span class="n">options</span><span class="p">.</span><span class="n">relevantred</span> <span class="o">~=</span> <span class="s1">''</span><span class="p">)</span> <span class="kr">then</span> </span><span id="L-1557"><a href="#L-1557"><span class="linenos" data-line="1557"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">),</span> <span class="n">label</span> <span class="o">=</span> <span class="n">label</span><span class="p">}</span> </span><span id="L-1558"><a href="#L-1558"><span class="linenos" data-line="1558"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">redlink</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">redlink</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1559"><a href="#L-1559"><span class="linenos" data-line="1559"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="s2">"{{#ifexist:"</span> <span class="o">..</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> <span class="o">..</span> <span class="s2">"|[["</span> <span class="o">..</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> <span class="o">..</span> <span class="s2">" ("</span> <span class="o">..</span> <span class="n">entityId</span> <span class="o">..</span> <span class="s2">")|"</span> <span class="o">..</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> <span class="o">..</span> <span class="s2">"]]|[[:"</span> <span class="o">..</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> <span class="o">..</span> <span class="s1">']]}}'</span><span class="p">),</span> <span class="n">label</span> <span class="o">=</span> <span class="n">label</span><span class="p">}</span> </span><span id="L-1560"><a href="#L-1560"><span class="linenos" data-line="1560"></span></a> <span class="kr">elseif</span> <span class="n">options</span><span class="p">.</span><span class="n">relevantred</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">relevantred</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1561"><a href="#L-1561"><span class="linenos" data-line="1561"></span></a> <span class="kd">local</span> <span class="n">entity</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntity</span><span class="p">(</span> <span class="n">entityId</span> <span class="p">)</span> <span class="c1">-- Download</span> </span><span id="L-1562"><a href="#L-1562"><span class="linenos" data-line="1562"></span></a> <span class="kr">if</span> <span class="n">entity</span><span class="p">.</span><span class="n">sitelinks</span> <span class="kr">then</span> </span><span id="L-1563"><a href="#L-1563"><span class="linenos" data-line="1563"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">getCurrentFrame</span><span class="p">():</span><span class="n">preprocess</span><span class="p">(</span><span class="s2">"{{#ifexist:"</span> <span class="o">..</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> <span class="o">..</span> <span class="s2">"|[["</span> <span class="o">..</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> <span class="o">..</span> <span class="s2">" ("</span> <span class="o">..</span> <span class="n">entityId</span> <span class="o">..</span> <span class="s2">")|"</span> <span class="o">..</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> <span class="o">..</span> <span class="s2">"]]|[[:"</span> <span class="o">..</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> <span class="o">..</span> <span class="s1">']]}}'</span><span class="p">),</span> <span class="n">label</span> <span class="o">=</span> <span class="n">label</span><span class="p">}</span> </span><span id="L-1564"><a href="#L-1564"><span class="linenos" data-line="1564"></span></a> <span class="kr">else</span> </span><span id="L-1565"><a href="#L-1565"><span class="linenos" data-line="1565"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">),</span> <span class="n">label</span> <span class="o">=</span> <span class="n">label</span><span class="p">}</span> </span><span id="L-1566"><a href="#L-1566"><span class="linenos" data-line="1566"></span></a> <span class="kr">end</span> </span><span id="L-1567"><a href="#L-1567"><span class="linenos" data-line="1567"></span></a> <span class="kr">else</span> </span><span id="L-1568"><a href="#L-1568"><span class="linenos" data-line="1568"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">label</span><span class="p">,</span> <span class="n">options</span><span class="p">),</span> <span class="n">label</span> <span class="o">=</span> <span class="n">label</span><span class="p">}</span> </span><span id="L-1569"><a href="#L-1569"><span class="linenos" data-line="1569"></span></a> <span class="kr">end</span> </span><span id="L-1570"><a href="#L-1570"><span class="linenos" data-line="1570"></span></a> <span class="kr">else</span> </span><span id="L-1571"><a href="#L-1571"><span class="linenos" data-line="1571"></span></a> <span class="kd">local</span> <span class="n">s</span> <span class="o">=</span> <span class="n">getLabelFromFallBack</span><span class="p">(</span> <span class="n">entityId</span> <span class="p">)</span> </span><span id="L-1572"><a href="#L-1572"><span class="linenos" data-line="1572"></span></a> <span class="kd">local</span> <span class="n">l</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">language</span><span class="p">.</span><span class="n">fetchLanguageName</span><span class="p">(</span><span class="n">s</span><span class="p">.</span><span class="n">language</span><span class="p">,</span> <span class="s1">'sv'</span><span class="p">)</span> </span><span id="L-1573"><a href="#L-1573"><span class="linenos" data-line="1573"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">l</span> <span class="ow">or</span> <span class="n">l</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1574"><a href="#L-1574"><span class="linenos" data-line="1574"></span></a> <span class="n">l</span> <span class="o">=</span> <span class="s1">'okänt språk'</span> </span><span id="L-1575"><a href="#L-1575"><span class="linenos" data-line="1575"></span></a> <span class="kr">end</span> </span><span id="L-1576"><a href="#L-1576"><span class="linenos" data-line="1576"></span></a> <span class="kr">if</span> <span class="n">s</span> <span class="kr">then</span> </span><span id="L-1577"><a href="#L-1577"><span class="linenos" data-line="1577"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">cat</span> <span class="o">~=</span> <span class="s1">'false'</span> <span class="kr">then</span> </span><span id="L-1578"><a href="#L-1578"><span class="linenos" data-line="1578"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'span'</span><span class="p">,</span> <span class="p">{</span><span class="n">title</span> <span class="o">=</span> <span class="n">l</span><span class="p">,</span> <span class="p">[</span><span class="s1">'data-q'</span><span class="p">]</span> <span class="o">=</span> <span class="n">entityId</span><span class="p">,</span> <span class="n">class</span><span class="o">=</span><span class="s1">'modulwikidata2_missingswedishlabel'</span><span class="p">},</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">s</span><span class="p">.</span><span class="n">value</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> <span class="p">)</span> <span class="o">..</span> <span class="s1">'[[Kategori:Wikidataetiketter på '</span> <span class="o">..</span> <span class="n">l</span> <span class="o">..</span> <span class="s1">']][[Kategori:Wikidataetiketter på främmande språk för egenskapen '</span> <span class="o">..</span> <span class="p">(</span><span class="n">options</span><span class="p">.</span><span class="n">property</span> <span class="ow">or</span> <span class="s1">'okänd egenskap'</span><span class="p">)</span> <span class="o">..</span> <span class="s1">']]'</span><span class="p">,</span> <span class="n">label</span> <span class="o">=</span> <span class="n">s</span><span class="p">.</span><span class="n">value</span> <span class="p">}</span> </span><span id="L-1579"><a href="#L-1579"><span class="linenos" data-line="1579"></span></a> <span class="kr">else</span> </span><span id="L-1580"><a href="#L-1580"><span class="linenos" data-line="1580"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">tag</span><span class="p">(</span><span class="s1">'span'</span><span class="p">,</span> <span class="p">{</span><span class="n">title</span> <span class="o">=</span> <span class="n">l</span><span class="p">,</span> <span class="p">[</span><span class="s1">'data-q'</span><span class="p">]</span> <span class="o">=</span> <span class="n">entityId</span><span class="p">,</span> <span class="n">class</span><span class="o">=</span><span class="s1">'modulwikidata2_missingswedishlabel'</span><span class="p">},</span> <span class="n">versalisering</span><span class="p">(</span><span class="n">s</span><span class="p">.</span><span class="n">value</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span> <span class="p">),</span> <span class="n">label</span> <span class="o">=</span> <span class="n">s</span><span class="p">.</span><span class="n">value</span> <span class="p">}</span> </span><span id="L-1581"><a href="#L-1581"><span class="linenos" data-line="1581"></span></a> <span class="kr">end</span> </span><span id="L-1582"><a href="#L-1582"><span class="linenos" data-line="1582"></span></a> <span class="kr">end</span> </span><span id="L-1583"><a href="#L-1583"><span class="linenos" data-line="1583"></span></a> <span class="kr">end</span> </span><span id="L-1584"><a href="#L-1584"><span class="linenos" data-line="1584"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">cat</span> <span class="o">~=</span> <span class="s1">'false'</span> <span class="kr">then</span> </span><span id="L-1585"><a href="#L-1585"><span class="linenos" data-line="1585"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">entityId</span> <span class="o">..</span> <span class="s1">'[[Kategori:Wikidataetiketter med Qid]]'</span><span class="p">,</span> <span class="n">label</span> <span class="o">=</span> <span class="n">entityId</span><span class="p">}</span> </span><span id="L-1586"><a href="#L-1586"><span class="linenos" data-line="1586"></span></a> <span class="kr">else</span> </span><span id="L-1587"><a href="#L-1587"><span class="linenos" data-line="1587"></span></a> <span class="kr">return</span> <span class="p">{</span><span class="n">value</span> <span class="o">=</span> <span class="n">entityId</span><span class="p">,</span> <span class="n">label</span> <span class="o">=</span> <span class="n">entityId</span><span class="p">}</span> </span><span id="L-1588"><a href="#L-1588"><span class="linenos" data-line="1588"></span></a> <span class="kr">end</span> </span><span id="L-1589"><a href="#L-1589"><span class="linenos" data-line="1589"></span></a> <span class="kr">end</span> </span><span id="L-1590"><a href="#L-1590"><span class="linenos" data-line="1590"></span></a><span class="kr">end</span> </span><span id="L-1591"><a href="#L-1591"><span class="linenos" data-line="1591"></span></a> </span><span id="L-1592"><a href="#L-1592"><span class="linenos" data-line="1592"></span></a><span class="kr">function</span> <span class="nf">formatFromPattern</span><span class="p">(</span> <span class="n">str</span><span class="p">,</span> <span class="n">options</span> <span class="p">)</span> </span><span id="L-1593"><a href="#L-1593"><span class="linenos" data-line="1593"></span></a> <span class="c1">-- Escape any % in str with another % before using it as replacement in gsub</span> </span><span id="L-1594"><a href="#L-1594"><span class="linenos" data-line="1594"></span></a> <span class="n">str</span> <span class="o">=</span> <span class="nb">string.gsub</span><span class="p">(</span> <span class="n">str</span><span class="p">,</span> <span class="s1">'%%'</span><span class="p">,</span> <span class="s1">'%%%%'</span> <span class="p">)</span> </span><span id="L-1595"><a href="#L-1595"><span class="linenos" data-line="1595"></span></a> <span class="kr">return</span> <span class="n">mw</span><span class="p">.</span><span class="n">ustring</span><span class="p">.</span><span class="n">gsub</span><span class="p">(</span> <span class="n">options</span><span class="p">.</span><span class="n">pattern</span><span class="p">,</span> <span class="s1">'$1'</span><span class="p">,</span> <span class="n">str</span><span class="p">)</span> <span class="o">..</span> <span class="s1">''</span> <span class="c1">--Hack to get only the first result of the function</span> </span><span id="L-1596"><a href="#L-1596"><span class="linenos" data-line="1596"></span></a><span class="kr">end</span> </span><span id="L-1597"><a href="#L-1597"><span class="linenos" data-line="1597"></span></a> </span><span id="L-1598"><a href="#L-1598"><span class="linenos" data-line="1598"></span></a><span class="kd">local</span> <span class="n">p</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-1599"><a href="#L-1599"><span class="linenos" data-line="1599"></span></a> </span><span id="L-1600"><a href="#L-1600"><span class="linenos" data-line="1600"></span></a><span class="kr">function</span> <span class="nc">p</span><span class="p">.</span><span class="nf">formatEntityId</span><span class="p">(</span> <span class="n">entityId</span><span class="p">,</span> <span class="n">options</span> <span class="p">)</span> </span><span id="L-1601"><a href="#L-1601"><span class="linenos" data-line="1601"></span></a> <span class="kr">return</span> <span class="n">formatEntityId</span><span class="p">(</span> <span class="n">entityId</span><span class="p">,</span> <span class="p">(</span><span class="n">options</span> <span class="ow">or</span> <span class="p">{})</span> <span class="p">)</span> </span><span id="L-1602"><a href="#L-1602"><span class="linenos" data-line="1602"></span></a><span class="kr">end</span> </span><span id="L-1603"><a href="#L-1603"><span class="linenos" data-line="1603"></span></a> </span><span id="L-1604"><a href="#L-1604"><span class="linenos" data-line="1604"></span></a><span class="kr">function</span> <span class="nc">p</span><span class="p">.</span><span class="nf">formatStatements</span><span class="p">(</span> <span class="n">frame</span><span class="p">,</span> <span class="n">key</span> <span class="p">)</span> </span><span id="L-1605"><a href="#L-1605"><span class="linenos" data-line="1605"></span></a> <span class="kd">local</span> <span class="n">args</span> <span class="o">=</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span> </span><span id="L-1606"><a href="#L-1606"><span class="linenos" data-line="1606"></span></a> </span><span id="L-1607"><a href="#L-1607"><span class="linenos" data-line="1607"></span></a> <span class="c1">--If a value if already set, use it</span> </span><span id="L-1608"><a href="#L-1608"><span class="linenos" data-line="1608"></span></a> <span class="kr">if</span> <span class="n">args</span><span class="p">.</span><span class="n">value</span> <span class="ow">and</span> <span class="n">args</span><span class="p">.</span><span class="n">value</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1609"><a href="#L-1609"><span class="linenos" data-line="1609"></span></a> <span class="kr">return</span> <span class="n">args</span><span class="p">.</span><span class="n">value</span> </span><span id="L-1610"><a href="#L-1610"><span class="linenos" data-line="1610"></span></a> <span class="kr">end</span> </span><span id="L-1611"><a href="#L-1611"><span class="linenos" data-line="1611"></span></a> <span class="kr">return</span> <span class="n">formatStatements</span><span class="p">(</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span><span class="p">,</span> <span class="n">key</span> <span class="p">)</span> </span><span id="L-1612"><a href="#L-1612"><span class="linenos" data-line="1612"></span></a><span class="kr">end</span> </span><span id="L-1613"><a href="#L-1613"><span class="linenos" data-line="1613"></span></a> </span><span id="L-1614"><a href="#L-1614"><span class="linenos" data-line="1614"></span></a><span class="kr">function</span> <span class="nc">p</span><span class="p">.</span><span class="nf">formatStatementsFromLua</span><span class="p">(</span> <span class="n">options</span><span class="p">,</span> <span class="n">key</span> <span class="p">)</span> </span><span id="L-1615"><a href="#L-1615"><span class="linenos" data-line="1615"></span></a> <span class="c1">--If a value if already set, use it</span> </span><span id="L-1616"><a href="#L-1616"><span class="linenos" data-line="1616"></span></a> <span class="kr">if</span> <span class="n">options</span><span class="p">.</span><span class="n">value</span> <span class="ow">and</span> <span class="n">options</span><span class="p">.</span><span class="n">value</span> <span class="o">~=</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1617"><a href="#L-1617"><span class="linenos" data-line="1617"></span></a> <span class="kr">return</span> <span class="n">options</span><span class="p">.</span><span class="n">value</span> </span><span id="L-1618"><a href="#L-1618"><span class="linenos" data-line="1618"></span></a> <span class="kr">end</span> </span><span id="L-1619"><a href="#L-1619"><span class="linenos" data-line="1619"></span></a> <span class="kd">local</span> <span class="n">s</span> <span class="o">=</span> <span class="n">formatStatements</span><span class="p">(</span> <span class="n">options</span><span class="p">,</span> <span class="n">key</span> <span class="p">)</span> </span><span id="L-1620"><a href="#L-1620"><span class="linenos" data-line="1620"></span></a> <span class="kr">if</span> <span class="n">s</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1621"><a href="#L-1621"><span class="linenos" data-line="1621"></span></a> <span class="n">s</span> <span class="o">=</span> <span class="kc">nil</span> </span><span id="L-1622"><a href="#L-1622"><span class="linenos" data-line="1622"></span></a> <span class="kr">end</span> </span><span id="L-1623"><a href="#L-1623"><span class="linenos" data-line="1623"></span></a> <span class="kr">return</span> <span class="n">s</span> </span><span id="L-1624"><a href="#L-1624"><span class="linenos" data-line="1624"></span></a><span class="kr">end</span> </span><span id="L-1625"><a href="#L-1625"><span class="linenos" data-line="1625"></span></a> </span><span id="L-1626"><a href="#L-1626"><span class="linenos" data-line="1626"></span></a><span class="c1">-- Return the site link (for the current site) for a given data item.</span> </span><span id="L-1627"><a href="#L-1627"><span class="linenos" data-line="1627"></span></a><span class="kr">function</span> <span class="nc">p</span><span class="p">.</span><span class="nf">getSiteLink</span><span class="p">(</span> <span class="n">frame</span> <span class="p">)</span> </span><span id="L-1628"><a href="#L-1628"><span class="linenos" data-line="1628"></span></a> <span class="kr">if</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> </span><span id="L-1629"><a href="#L-1629"><span class="linenos" data-line="1629"></span></a> <span class="n">entity</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityObject</span><span class="p">()</span> </span><span id="L-1630"><a href="#L-1630"><span class="linenos" data-line="1630"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">entity</span> <span class="kr">then</span> </span><span id="L-1631"><a href="#L-1631"><span class="linenos" data-line="1631"></span></a> <span class="n">entity</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityObject</span><span class="p">(</span><span class="n">frame</span><span class="p">.</span><span class="n">args</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span> </span><span id="L-1632"><a href="#L-1632"><span class="linenos" data-line="1632"></span></a> <span class="kr">end</span> </span><span id="L-1633"><a href="#L-1633"><span class="linenos" data-line="1633"></span></a> <span class="n">id</span> <span class="o">=</span> <span class="n">entity</span><span class="p">.</span><span class="n">id</span> </span><span id="L-1634"><a href="#L-1634"><span class="linenos" data-line="1634"></span></a> <span class="kr">else</span> </span><span id="L-1635"><a href="#L-1635"><span class="linenos" data-line="1635"></span></a> <span class="n">id</span> <span class="o">=</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> </span><span id="L-1636"><a href="#L-1636"><span class="linenos" data-line="1636"></span></a> <span class="kr">end</span> </span><span id="L-1637"><a href="#L-1637"><span class="linenos" data-line="1637"></span></a> </span><span id="L-1638"><a href="#L-1638"><span class="linenos" data-line="1638"></span></a> <span class="kr">return</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">sitelink</span><span class="p">(</span> <span class="n">id</span> <span class="p">)</span> </span><span id="L-1639"><a href="#L-1639"><span class="linenos" data-line="1639"></span></a><span class="kr">end</span> </span><span id="L-1640"><a href="#L-1640"><span class="linenos" data-line="1640"></span></a> </span><span id="L-1641"><a href="#L-1641"><span class="linenos" data-line="1641"></span></a><span class="kd">local</span> <span class="kr">function</span> <span class="nf">defaultLabel</span><span class="p">(</span><span class="n">entity</span><span class="p">,</span> <span class="n">lang</span><span class="p">,</span> <span class="n">displayformat</span><span class="p">)</span> <span class="c1">-- label when no label is available</span> </span><span id="L-1642"><a href="#L-1642"><span class="linenos" data-line="1642"></span></a> <span class="kr">if</span> <span class="n">entity</span> <span class="ow">and</span> <span class="n">displayformat</span> <span class="o">==</span> <span class="s1">'id'</span> <span class="kr">then</span> </span><span id="L-1643"><a href="#L-1643"><span class="linenos" data-line="1643"></span></a> <span class="kr">return</span> <span class="n">entity</span><span class="p">.</span><span class="n">id</span> </span><span id="L-1644"><a href="#L-1644"><span class="linenos" data-line="1644"></span></a> <span class="kr">end</span> </span><span id="L-1645"><a href="#L-1645"><span class="linenos" data-line="1645"></span></a> <span class="kr">return</span> <span class="n">formatError</span><span class="p">(</span><span class="s1">'no-label'</span><span class="p">)</span> </span><span id="L-1646"><a href="#L-1646"><span class="linenos" data-line="1646"></span></a><span class="kr">end</span> </span><span id="L-1647"><a href="#L-1647"><span class="linenos" data-line="1647"></span></a> </span><span id="L-1648"><a href="#L-1648"><span class="linenos" data-line="1648"></span></a><span class="kr">function</span> <span class="nc">p</span><span class="p">.</span><span class="nf">_getLabel</span><span class="p">(</span><span class="n">entity</span><span class="p">,</span> <span class="n">lang</span><span class="p">,</span> <span class="n">default</span><span class="p">)</span> </span><span id="L-1649"><a href="#L-1649"><span class="linenos" data-line="1649"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">entity</span> <span class="kr">then</span> </span><span id="L-1650"><a href="#L-1650"><span class="linenos" data-line="1650"></span></a> <span class="kr">return</span> <span class="kc">nil</span> </span><span id="L-1651"><a href="#L-1651"><span class="linenos" data-line="1651"></span></a> <span class="kr">end</span> </span><span id="L-1652"><a href="#L-1652"><span class="linenos" data-line="1652"></span></a> <span class="kr">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">entity</span><span class="p">)</span> <span class="o">~=</span> <span class="s1">'table'</span> <span class="kr">then</span> </span><span id="L-1653"><a href="#L-1653"><span class="linenos" data-line="1653"></span></a> <span class="n">entity</span> <span class="o">=</span> <span class="n">p</span><span class="p">.</span><span class="n">getEntity</span><span class="p">(</span><span class="n">entity</span><span class="p">)</span> </span><span id="L-1654"><a href="#L-1654"><span class="linenos" data-line="1654"></span></a> <span class="kr">end</span> </span><span id="L-1655"><a href="#L-1655"><span class="linenos" data-line="1655"></span></a> <span class="kr">if</span> <span class="n">entity</span> <span class="ow">and</span> <span class="n">entity</span><span class="p">.</span><span class="n">labels</span> <span class="kr">then</span> </span><span id="L-1656"><a href="#L-1656"><span class="linenos" data-line="1656"></span></a> <span class="kr">if</span> <span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">[</span><span class="n">lang</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-1657"><a href="#L-1657"><span class="linenos" data-line="1657"></span></a> <span class="kr">return</span> <span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">[</span><span class="n">lang</span><span class="p">].</span><span class="n">value</span> </span><span id="L-1658"><a href="#L-1658"><span class="linenos" data-line="1658"></span></a> <span class="kr">end</span> </span><span id="L-1659"><a href="#L-1659"><span class="linenos" data-line="1659"></span></a> <span class="kr">if</span> <span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">[</span><span class="s2">"sv"</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-1660"><a href="#L-1660"><span class="linenos" data-line="1660"></span></a> <span class="kr">return</span> <span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">[</span><span class="s2">"sv"</span><span class="p">].</span><span class="n">value</span> </span><span id="L-1661"><a href="#L-1661"><span class="linenos" data-line="1661"></span></a> <span class="kr">else</span> </span><span id="L-1662"><a href="#L-1662"><span class="linenos" data-line="1662"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">lg</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">fallback</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-1663"><a href="#L-1663"><span class="linenos" data-line="1663"></span></a> <span class="kr">if</span> <span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">[</span><span class="n">lg</span><span class="p">]</span> <span class="kr">then</span> </span><span id="L-1664"><a href="#L-1664"><span class="linenos" data-line="1664"></span></a> <span class="kr">return</span> <span class="n">entity</span><span class="p">.</span><span class="n">labels</span><span class="p">[</span><span class="n">lg</span><span class="p">].</span><span class="n">value</span> </span><span id="L-1665"><a href="#L-1665"><span class="linenos" data-line="1665"></span></a> <span class="kr">end</span> </span><span id="L-1666"><a href="#L-1666"><span class="linenos" data-line="1666"></span></a> <span class="kr">end</span> </span><span id="L-1667"><a href="#L-1667"><span class="linenos" data-line="1667"></span></a> <span class="kr">end</span> </span><span id="L-1668"><a href="#L-1668"><span class="linenos" data-line="1668"></span></a> <span class="kr">end</span> </span><span id="L-1669"><a href="#L-1669"><span class="linenos" data-line="1669"></span></a> <span class="kr">return</span> <span class="n">defaultLabel</span><span class="p">(</span><span class="n">entity</span><span class="p">,</span> <span class="n">lang</span><span class="p">,</span> <span class="n">default</span><span class="p">)</span> </span><span id="L-1670"><a href="#L-1670"><span class="linenos" data-line="1670"></span></a><span class="kr">end</span> </span><span id="L-1671"><a href="#L-1671"><span class="linenos" data-line="1671"></span></a> </span><span id="L-1672"><a href="#L-1672"><span class="linenos" data-line="1672"></span></a><span class="kr">function</span> <span class="nc">p</span><span class="p">.</span><span class="nf">getEntity</span><span class="p">(</span> <span class="n">val</span> <span class="p">)</span> </span><span id="L-1673"><a href="#L-1673"><span class="linenos" data-line="1673"></span></a> <span class="kr">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">val</span><span class="p">)</span> <span class="o">==</span> <span class="s1">'table'</span> <span class="kr">then</span> </span><span id="L-1674"><a href="#L-1674"><span class="linenos" data-line="1674"></span></a> <span class="kr">return</span> <span class="n">val</span> </span><span id="L-1675"><a href="#L-1675"><span class="linenos" data-line="1675"></span></a> <span class="kr">end</span> </span><span id="L-1676"><a href="#L-1676"><span class="linenos" data-line="1676"></span></a> <span class="kr">return</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityObject</span><span class="p">(</span><span class="n">val</span><span class="p">)</span> </span><span id="L-1677"><a href="#L-1677"><span class="linenos" data-line="1677"></span></a><span class="kr">end</span> </span><span id="L-1678"><a href="#L-1678"><span class="linenos" data-line="1678"></span></a> </span><span id="L-1679"><a href="#L-1679"><span class="linenos" data-line="1679"></span></a><span class="c1">-- Simple for simple templates like {{Q|}}}</span> </span><span id="L-1680"><a href="#L-1680"><span class="linenos" data-line="1680"></span></a><span class="kr">function</span> <span class="nc">p</span><span class="p">.</span><span class="nf">getLabel</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span> </span><span id="L-1681"><a href="#L-1681"><span class="linenos" data-line="1681"></span></a> <span class="kd">local</span> <span class="n">args</span> <span class="o">=</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span> </span><span id="L-1682"><a href="#L-1682"><span class="linenos" data-line="1682"></span></a> <span class="kd">local</span> <span class="n">entity</span> <span class="o">=</span> <span class="n">args</span><span class="p">.</span><span class="n">entity</span> </span><span id="L-1683"><a href="#L-1683"><span class="linenos" data-line="1683"></span></a> <span class="kd">local</span> <span class="n">lang</span> <span class="o">=</span> <span class="n">args</span><span class="p">.</span><span class="n">lang</span> </span><span id="L-1684"><a href="#L-1684"><span class="linenos" data-line="1684"></span></a> <span class="kr">if</span> <span class="n">lang</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1685"><a href="#L-1685"><span class="linenos" data-line="1685"></span></a> <span class="n">lang</span> <span class="o">=</span> <span class="n">defaultlang</span> </span><span id="L-1686"><a href="#L-1686"><span class="linenos" data-line="1686"></span></a> <span class="kr">end</span> </span><span id="L-1687"><a href="#L-1687"><span class="linenos" data-line="1687"></span></a> </span><span id="L-1688"><a href="#L-1688"><span class="linenos" data-line="1688"></span></a> <span class="kr">if</span> <span class="nb">string.sub</span><span class="p">(</span><span class="n">entity</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span> <span class="o">==</span> <span class="s1">'Property:P'</span> <span class="kr">then</span> </span><span id="L-1689"><a href="#L-1689"><span class="linenos" data-line="1689"></span></a> <span class="n">entity</span> <span class="o">=</span> <span class="nb">string.sub</span><span class="p">(</span><span class="n">entity</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span> </span><span id="L-1690"><a href="#L-1690"><span class="linenos" data-line="1690"></span></a> <span class="kr">elseif</span> <span class="p">(</span><span class="nb">string.sub</span><span class="p">(</span><span class="n">entity</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span> <span class="o">~=</span> <span class="s1">'P'</span> <span class="ow">and</span> <span class="nb">string.sub</span><span class="p">(</span><span class="n">entity</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span> <span class="o">~=</span> <span class="s1">'Q'</span><span class="p">)</span> <span class="ow">or</span> <span class="p">(</span><span class="ow">not</span> <span class="nb">tonumber</span><span class="p">(</span><span class="nb">string.sub</span><span class="p">(</span><span class="n">entity</span><span class="p">,</span> <span class="mi">2</span><span class="p">)))</span> <span class="kr">then</span> </span><span id="L-1691"><a href="#L-1691"><span class="linenos" data-line="1691"></span></a> <span class="kr">return</span> <span class="n">formatError</span><span class="p">(</span><span class="s1">'invalid-id'</span><span class="p">)</span> </span><span id="L-1692"><a href="#L-1692"><span class="linenos" data-line="1692"></span></a> <span class="kr">end</span> </span><span id="L-1693"><a href="#L-1693"><span class="linenos" data-line="1693"></span></a> </span><span id="L-1694"><a href="#L-1694"><span class="linenos" data-line="1694"></span></a> <span class="kr">if</span> <span class="ow">not</span> <span class="n">args</span><span class="p">.</span><span class="n">link</span> <span class="ow">or</span> <span class="n">args</span><span class="p">.</span><span class="n">link</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> <span class="c1">-- by default: no link</span> </span><span id="L-1695"><a href="#L-1695"><span class="linenos" data-line="1695"></span></a> <span class="n">args</span><span class="p">.</span><span class="n">link</span> <span class="o">=</span> <span class="s1">'-'</span> </span><span id="L-1696"><a href="#L-1696"><span class="linenos" data-line="1696"></span></a> <span class="kr">end</span> </span><span id="L-1697"><a href="#L-1697"><span class="linenos" data-line="1697"></span></a> <span class="kr">if</span> <span class="n">args</span><span class="p">.</span><span class="n">link</span> <span class="o">==</span> <span class="s1">'-'</span> <span class="kr">then</span> </span><span id="L-1698"><a href="#L-1698"><span class="linenos" data-line="1698"></span></a> <span class="kr">return</span> <span class="n">p</span><span class="p">.</span><span class="n">_getLabel</span><span class="p">(</span><span class="n">entity</span><span class="p">,</span> <span class="n">lang</span><span class="p">)</span> <span class="ow">or</span> <span class="n">formatError</span><span class="p">(</span><span class="s1">'invalid-id'</span><span class="p">)</span> </span><span id="L-1699"><a href="#L-1699"><span class="linenos" data-line="1699"></span></a> <span class="kr">else</span> </span><span id="L-1700"><a href="#L-1700"><span class="linenos" data-line="1700"></span></a> <span class="kr">return</span> <span class="n">p</span><span class="p">.</span><span class="n">formatEntity</span><span class="p">(</span><span class="n">entity</span><span class="p">,</span> <span class="n">args</span><span class="p">)</span> </span><span id="L-1701"><a href="#L-1701"><span class="linenos" data-line="1701"></span></a> <span class="kr">end</span> </span><span id="L-1702"><a href="#L-1702"><span class="linenos" data-line="1702"></span></a><span class="kr">end</span> </span><span id="L-1703"><a href="#L-1703"><span class="linenos" data-line="1703"></span></a> </span><span id="L-1704"><a href="#L-1704"><span class="linenos" data-line="1704"></span></a><span class="c1">-- This is used to get the TA98 (Terminologia Anatomica first edition 1998) values like 'A01.1.00.005' (property P1323)</span> </span><span id="L-1705"><a href="#L-1705"><span class="linenos" data-line="1705"></span></a><span class="c1">-- which are then linked to http://www.unifr.ch/ifaa/Public/EntryPage/TA98%20Tree/Entity%20TA98%20EN/01.1.00.005%20Entity%20TA98%20EN.htm</span> </span><span id="L-1706"><a href="#L-1706"><span class="linenos" data-line="1706"></span></a><span class="c1">-- uses the newer mw.wikibase calls instead of directly using the snaks</span> </span><span id="L-1707"><a href="#L-1707"><span class="linenos" data-line="1707"></span></a><span class="c1">-- formatPropertyValues returns a table with the P1323 values concatenated with ", " so we have to split them out into a table in order to construct the return string</span> </span><span id="L-1708"><a href="#L-1708"><span class="linenos" data-line="1708"></span></a><span class="n">p</span><span class="p">.</span><span class="n">getTAValue</span> <span class="o">=</span> <span class="kr">function</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span> </span><span id="L-1709"><a href="#L-1709"><span class="linenos" data-line="1709"></span></a> <span class="kd">local</span> <span class="n">ent</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityObject</span><span class="p">()</span> </span><span id="L-1710"><a href="#L-1710"><span class="linenos" data-line="1710"></span></a> <span class="kd">local</span> <span class="n">props</span> <span class="o">=</span> <span class="n">ent</span><span class="p">:</span><span class="n">formatPropertyValues</span><span class="p">(</span><span class="s1">'P1323'</span><span class="p">)</span> </span><span id="L-1711"><a href="#L-1711"><span class="linenos" data-line="1711"></span></a> <span class="kd">local</span> <span class="n">out</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-1712"><a href="#L-1712"><span class="linenos" data-line="1712"></span></a> <span class="kd">local</span> <span class="n">t</span> <span class="o">=</span> <span class="p">{}</span> </span><span id="L-1713"><a href="#L-1713"><span class="linenos" data-line="1713"></span></a> <span class="kr">for</span> <span class="n">k</span><span class="p">,</span> <span class="n">v</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">props</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-1714"><a href="#L-1714"><span class="linenos" data-line="1714"></span></a> <span class="kr">if</span> <span class="n">k</span> <span class="o">==</span> <span class="s1">'value'</span> <span class="kr">then</span> </span><span id="L-1715"><a href="#L-1715"><span class="linenos" data-line="1715"></span></a> <span class="n">t</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">split</span><span class="p">(</span> <span class="n">v</span><span class="p">,</span> <span class="s2">", "</span><span class="p">)</span> </span><span id="L-1716"><a href="#L-1716"><span class="linenos" data-line="1716"></span></a> <span class="kr">for</span> <span class="n">k2</span><span class="p">,</span> <span class="n">v2</span> <span class="kr">in</span> <span class="nb">pairs</span><span class="p">(</span><span class="n">t</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-1717"><a href="#L-1717"><span class="linenos" data-line="1717"></span></a> <span class="n">out</span><span class="p">[</span><span class="o">#</span><span class="n">out</span> <span class="o">+</span> <span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"[http://www.unifr.ch/ifaa/Public/EntryPage/TA98%20Tree/Entity%20TA98%20EN/"</span> <span class="o">..</span> <span class="nb">string.sub</span><span class="p">(</span><span class="n">v2</span><span class="p">,</span> <span class="mi">2</span><span class="p">)</span> <span class="o">..</span> <span class="s2">"%20Entity%20TA98%20EN.htm "</span> <span class="o">..</span> <span class="n">v2</span> <span class="o">..</span> <span class="s2">"]"</span> </span><span id="L-1718"><a href="#L-1718"><span class="linenos" data-line="1718"></span></a> <span class="kr">end</span> </span><span id="L-1719"><a href="#L-1719"><span class="linenos" data-line="1719"></span></a> <span class="kr">end</span> </span><span id="L-1720"><a href="#L-1720"><span class="linenos" data-line="1720"></span></a> <span class="kr">end</span> </span><span id="L-1721"><a href="#L-1721"><span class="linenos" data-line="1721"></span></a> <span class="n">ret</span> <span class="o">=</span> <span class="nb">table.concat</span><span class="p">(</span><span class="n">out</span><span class="p">,</span> <span class="s2">"<br> "</span><span class="p">)</span> </span><span id="L-1722"><a href="#L-1722"><span class="linenos" data-line="1722"></span></a> <span class="kr">if</span> <span class="o">#</span><span class="n">ret</span> <span class="o">==</span> <span class="mi">0</span> <span class="kr">then</span> </span><span id="L-1723"><a href="#L-1723"><span class="linenos" data-line="1723"></span></a> <span class="n">ret</span> <span class="o">=</span> <span class="s2">"Invalid TA"</span> </span><span id="L-1724"><a href="#L-1724"><span class="linenos" data-line="1724"></span></a> <span class="kr">end</span> </span><span id="L-1725"><a href="#L-1725"><span class="linenos" data-line="1725"></span></a> <span class="kr">return</span> <span class="n">ret</span> </span><span id="L-1726"><a href="#L-1726"><span class="linenos" data-line="1726"></span></a><span class="kr">end</span> </span><span id="L-1727"><a href="#L-1727"><span class="linenos" data-line="1727"></span></a> </span><span id="L-1728"><a href="#L-1728"><span class="linenos" data-line="1728"></span></a><span class="n">p</span><span class="p">.</span><span class="n">commonscat_WD</span> <span class="o">=</span> <span class="kr">function</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span> <span class="c1">-- används av mallen commonscat_WD</span> </span><span id="L-1729"><a href="#L-1729"><span class="linenos" data-line="1729"></span></a> <span class="kd">local</span> <span class="n">res</span> <span class="o">=</span> <span class="s1">''</span> </span><span id="L-1730"><a href="#L-1730"><span class="linenos" data-line="1730"></span></a> <span class="kd">local</span> <span class="n">item</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityObject</span><span class="p">()</span> </span><span id="L-1731"><a href="#L-1731"><span class="linenos" data-line="1731"></span></a> <span class="kd">local</span> <span class="n">qid</span> <span class="o">=</span> <span class="n">frame</span><span class="p">:</span><span class="n">getParent</span><span class="p">().</span><span class="n">args</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> </span><span id="L-1732"><a href="#L-1732"><span class="linenos" data-line="1732"></span></a> <span class="kr">if</span> <span class="n">qid</span> <span class="kr">then</span> <span class="n">item</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityObject</span><span class="p">(</span><span class="n">qid</span><span class="p">)</span> <span class="kr">end</span> </span><span id="L-1733"><a href="#L-1733"><span class="linenos" data-line="1733"></span></a> <span class="kr">if</span> <span class="n">item</span> <span class="ow">and</span> <span class="n">p</span><span class="p">.</span><span class="n">formatStatementsFromLua</span><span class="p">({</span><span class="n">property</span><span class="o">=</span><span class="s2">"p373"</span><span class="p">,</span><span class="n">noref</span><span class="o">=</span><span class="s2">"ja"</span><span class="p">,</span><span class="n">entityId</span><span class="o">=</span><span class="n">item</span><span class="p">.</span><span class="n">id</span><span class="p">})</span> <span class="kr">then</span> </span><span id="L-1734"><a href="#L-1734"><span class="linenos" data-line="1734"></span></a> <span class="n">svlabel</span> <span class="o">=</span> <span class="n">item</span><span class="p">.</span><span class="n">labels</span><span class="p">[</span><span class="s1">'sv'</span><span class="p">]</span> </span><span id="L-1735"><a href="#L-1735"><span class="linenos" data-line="1735"></span></a> <span class="kr">if</span> <span class="n">svlabel</span> <span class="kr">then</span> </span><span id="L-1736"><a href="#L-1736"><span class="linenos" data-line="1736"></span></a> <span class="n">linktext</span> <span class="o">=</span> <span class="n">svlabel</span><span class="p">.</span><span class="n">value</span> </span><span id="L-1737"><a href="#L-1737"><span class="linenos" data-line="1737"></span></a> <span class="kr">else</span> </span><span id="L-1738"><a href="#L-1738"><span class="linenos" data-line="1738"></span></a> <span class="n">linktext</span> <span class="o">=</span> <span class="s1">'$1'</span> </span><span id="L-1739"><a href="#L-1739"><span class="linenos" data-line="1739"></span></a> <span class="kr">end</span> </span><span id="L-1740"><a href="#L-1740"><span class="linenos" data-line="1740"></span></a> <span class="n">res</span> <span class="o">=</span> <span class="s1">'[[Fil:Commons-logo.svg|15px|länk=]] Wikimedia Commons har media som rör '</span> <span class="o">..</span> <span class="n">p</span><span class="p">.</span><span class="n">formatStatementsFromLua</span><span class="p">({</span><span class="n">property</span><span class="o">=</span><span class="s2">"p373"</span><span class="p">,</span><span class="n">noref</span><span class="o">=</span><span class="s2">"ja"</span><span class="p">,</span><span class="n">pattern</span><span class="o">=</span><span class="s2">"[[:Commons:Category:$1|"</span><span class="o">..</span><span class="n">linktext</span><span class="o">..</span><span class="s2">"]]"</span><span class="p">,</span><span class="n">entityId</span><span class="o">=</span><span class="n">item</span><span class="p">.</span><span class="n">id</span><span class="p">})</span><span class="o">..</span><span class="s1">'.'</span> </span><span id="L-1741"><a href="#L-1741"><span class="linenos" data-line="1741"></span></a> <span class="kr">else</span> </span><span id="L-1742"><a href="#L-1742"><span class="linenos" data-line="1742"></span></a> <span class="n">res</span> <span class="o">=</span> <span class="s1">'[[Kategori:Wikipedia:Artiklar med mallen Commonscat WD som saknar property P373]]'</span> </span><span id="L-1743"><a href="#L-1743"><span class="linenos" data-line="1743"></span></a> <span class="kr">end</span> </span><span id="L-1744"><a href="#L-1744"><span class="linenos" data-line="1744"></span></a> <span class="kr">return</span> <span class="n">res</span> </span><span id="L-1745"><a href="#L-1745"><span class="linenos" data-line="1745"></span></a><span class="kr">end</span> </span><span id="L-1746"><a href="#L-1746"><span class="linenos" data-line="1746"></span></a> </span><span id="L-1747"><a href="#L-1747"><span class="linenos" data-line="1747"></span></a><span class="n">p</span><span class="p">.</span><span class="n">getEntityIdForCurrentPage</span> <span class="o">=</span> <span class="kr">function</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span> </span><span id="L-1748"><a href="#L-1748"><span class="linenos" data-line="1748"></span></a> <span class="kr">return</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityIdForCurrentPage</span><span class="p">()</span> </span><span id="L-1749"><a href="#L-1749"><span class="linenos" data-line="1749"></span></a><span class="kr">end</span> </span><span id="L-1750"><a href="#L-1750"><span class="linenos" data-line="1750"></span></a> </span><span id="L-1751"><a href="#L-1751"><span class="linenos" data-line="1751"></span></a><span class="n">p</span><span class="p">.</span><span class="n">getcoord</span> <span class="o">=</span> <span class="kr">function</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span> </span><span id="L-1752"><a href="#L-1752"><span class="linenos" data-line="1752"></span></a> <span class="kd">local</span> <span class="n">qid</span> <span class="o">=</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span><span class="p">[</span><span class="s1">'qid'</span><span class="p">]</span> <span class="ow">or</span> <span class="s1">''</span> </span><span id="L-1753"><a href="#L-1753"><span class="linenos" data-line="1753"></span></a> <span class="kd">local</span> <span class="n">what</span> <span class="o">=</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span><span class="p">[</span><span class="s1">'what'</span><span class="p">]</span> <span class="ow">or</span> <span class="s1">''</span> </span><span id="L-1754"><a href="#L-1754"><span class="linenos" data-line="1754"></span></a> <span class="kd">local</span> <span class="n">item</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityObject</span><span class="p">(</span><span class="n">qid</span><span class="p">)</span> </span><span id="L-1755"><a href="#L-1755"><span class="linenos" data-line="1755"></span></a> <span class="kd">local</span> <span class="n">claims</span> <span class="o">=</span> <span class="n">item</span><span class="p">:</span><span class="n">getBestStatements</span><span class="p">(</span> <span class="s1">'P625'</span> <span class="p">)</span> </span><span id="L-1756"><a href="#L-1756"><span class="linenos" data-line="1756"></span></a> <span class="kr">if</span> <span class="n">what</span> <span class="o">==</span> <span class="s1">'lat'</span> <span class="kr">then</span> </span><span id="L-1757"><a href="#L-1757"><span class="linenos" data-line="1757"></span></a> <span class="kr">return</span> <span class="n">claims</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">latitude</span> </span><span id="L-1758"><a href="#L-1758"><span class="linenos" data-line="1758"></span></a> <span class="kr">end</span> </span><span id="L-1759"><a href="#L-1759"><span class="linenos" data-line="1759"></span></a> <span class="kr">if</span> <span class="n">what</span> <span class="o">==</span> <span class="s1">'long'</span> <span class="kr">then</span> </span><span id="L-1760"><a href="#L-1760"><span class="linenos" data-line="1760"></span></a> <span class="kr">return</span> <span class="n">claims</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">longitude</span> </span><span id="L-1761"><a href="#L-1761"><span class="linenos" data-line="1761"></span></a> <span class="kr">end</span> </span><span id="L-1762"><a href="#L-1762"><span class="linenos" data-line="1762"></span></a> <span class="kr">return</span> <span class="s1">''</span> </span><span id="L-1763"><a href="#L-1763"><span class="linenos" data-line="1763"></span></a><span class="kr">end</span> </span><span id="L-1764"><a href="#L-1764"><span class="linenos" data-line="1764"></span></a> </span><span id="L-1765"><a href="#L-1765"><span class="linenos" data-line="1765"></span></a><span class="n">p</span><span class="p">.</span><span class="n">getcoordfromproperty</span> <span class="o">=</span> <span class="kr">function</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span> </span><span id="L-1766"><a href="#L-1766"><span class="linenos" data-line="1766"></span></a> <span class="kd">local</span> <span class="n">qid</span> <span class="o">=</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span><span class="p">[</span><span class="s1">'qid'</span><span class="p">]</span> <span class="ow">or</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityIdForCurrentPage</span><span class="p">()</span> <span class="ow">or</span> <span class="s1">''</span> </span><span id="L-1767"><a href="#L-1767"><span class="linenos" data-line="1767"></span></a> <span class="kr">if</span> <span class="n">qid</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> </span><span id="L-1768"><a href="#L-1768"><span class="linenos" data-line="1768"></span></a> <span class="kr">return</span> <span class="s1">''</span> </span><span id="L-1769"><a href="#L-1769"><span class="linenos" data-line="1769"></span></a> <span class="kr">end</span> </span><span id="L-1770"><a href="#L-1770"><span class="linenos" data-line="1770"></span></a> <span class="kd">local</span> <span class="n">what</span> <span class="o">=</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span><span class="p">[</span><span class="s1">'what'</span><span class="p">]</span> <span class="ow">or</span> <span class="s1">''</span> </span><span id="L-1771"><a href="#L-1771"><span class="linenos" data-line="1771"></span></a> <span class="kd">local</span> <span class="n">property</span> <span class="o">=</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span><span class="p">[</span><span class="s1">'property'</span><span class="p">]</span> <span class="ow">or</span> <span class="s1">''</span> </span><span id="L-1772"><a href="#L-1772"><span class="linenos" data-line="1772"></span></a> <span class="kd">local</span> <span class="n">item</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityObject</span><span class="p">(</span><span class="n">qid</span><span class="p">)</span> </span><span id="L-1773"><a href="#L-1773"><span class="linenos" data-line="1773"></span></a> <span class="kr">if</span> <span class="n">item</span><span class="p">[</span><span class="s1">'claims'</span><span class="p">]</span> <span class="ow">and</span> <span class="n">item</span><span class="p">[</span><span class="s1">'claims'</span><span class="p">][</span><span class="n">property</span><span class="p">]</span> <span class="ow">and</span> <span class="n">item</span><span class="p">[</span><span class="s1">'claims'</span><span class="p">][</span><span class="n">property</span><span class="p">][</span><span class="mi">1</span><span class="p">][</span><span class="s1">'qualifiers'</span><span class="p">]</span> <span class="ow">and</span> <span class="n">item</span><span class="p">[</span><span class="s1">'claims'</span><span class="p">][</span><span class="n">property</span><span class="p">][</span><span class="mi">1</span><span class="p">][</span><span class="s1">'qualifiers'</span><span class="p">][</span><span class="s1">'P625'</span><span class="p">]</span><span class="kr">then</span> </span><span id="L-1774"><a href="#L-1774"><span class="linenos" data-line="1774"></span></a> <span class="kr">if</span> <span class="n">what</span><span class="o">==</span><span class="s1">'lat'</span> <span class="kr">then</span> <span class="kr">return</span> <span class="n">item</span><span class="p">[</span><span class="s1">'claims'</span><span class="p">][</span><span class="n">property</span><span class="p">][</span><span class="mi">1</span><span class="p">][</span><span class="s1">'qualifiers'</span><span class="p">][</span><span class="s1">'P625'</span><span class="p">][</span><span class="mi">1</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">latitude</span> <span class="kr">end</span> </span><span id="L-1775"><a href="#L-1775"><span class="linenos" data-line="1775"></span></a> <span class="kr">if</span> <span class="n">what</span><span class="o">==</span><span class="s1">'long'</span> <span class="kr">then</span> <span class="kr">return</span> <span class="n">item</span><span class="p">[</span><span class="s1">'claims'</span><span class="p">][</span><span class="n">property</span><span class="p">][</span><span class="mi">1</span><span class="p">][</span><span class="s1">'qualifiers'</span><span class="p">][</span><span class="s1">'P625'</span><span class="p">][</span><span class="mi">1</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">longitude</span> <span class="kr">end</span> </span><span id="L-1776"><a href="#L-1776"><span class="linenos" data-line="1776"></span></a> <span class="kr">return</span> <span class="s1">''</span> </span><span id="L-1777"><a href="#L-1777"><span class="linenos" data-line="1777"></span></a> <span class="kr">else</span> </span><span id="L-1778"><a href="#L-1778"><span class="linenos" data-line="1778"></span></a> <span class="kr">return</span> <span class="s1">''</span> </span><span id="L-1779"><a href="#L-1779"><span class="linenos" data-line="1779"></span></a> <span class="kr">end</span> </span><span id="L-1780"><a href="#L-1780"><span class="linenos" data-line="1780"></span></a><span class="kr">end</span> </span><span id="L-1781"><a href="#L-1781"><span class="linenos" data-line="1781"></span></a> </span><span id="L-1782"><a href="#L-1782"><span class="linenos" data-line="1782"></span></a><span class="n">p</span><span class="p">.</span><span class="n">averagepropertyvalue</span> <span class="o">=</span> <span class="kr">function</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span> </span><span id="L-1783"><a href="#L-1783"><span class="linenos" data-line="1783"></span></a> <span class="c1">-- property is given as Pwww/Pxxx/..../Pyyy/Pzzz (at least two parts)</span> </span><span id="L-1784"><a href="#L-1784"><span class="linenos" data-line="1784"></span></a> <span class="c1">-- all properties except the last one should return wikibase items</span> </span><span id="L-1785"><a href="#L-1785"><span class="linenos" data-line="1785"></span></a> <span class="c1">-- climb the property path and change entity successively for all P... except the last two.</span> </span><span id="L-1786"><a href="#L-1786"><span class="linenos" data-line="1786"></span></a> <span class="c1">-- only the first claim for each P... is considered</span> </span><span id="L-1787"><a href="#L-1787"><span class="linenos" data-line="1787"></span></a> <span class="c1">-- finally get the values for the last property (Pzzz) for all values (objects) of Pyyy and return the average value</span> </span><span id="L-1788"><a href="#L-1788"><span class="linenos" data-line="1788"></span></a> <span class="c1">-- ranks are not considered</span> </span><span id="L-1789"><a href="#L-1789"><span class="linenos" data-line="1789"></span></a> <span class="c1">-- claims with a qualifier corresponding to the argument 'avoidqalifier' is not included in the average</span> </span><span id="L-1790"><a href="#L-1790"><span class="linenos" data-line="1790"></span></a> <span class="kd">local</span> <span class="n">options</span> <span class="o">=</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span> </span><span id="L-1791"><a href="#L-1791"><span class="linenos" data-line="1791"></span></a> <span class="kd">local</span> <span class="n">what</span> <span class="o">=</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span><span class="p">[</span><span class="s1">'what'</span><span class="p">]</span> </span><span id="L-1792"><a href="#L-1792"><span class="linenos" data-line="1792"></span></a> <span class="kd">local</span> <span class="n">avoidqualifier</span> <span class="o">=</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span><span class="p">[</span><span class="s1">'avoidqualifier'</span><span class="p">]</span> </span><span id="L-1793"><a href="#L-1793"><span class="linenos" data-line="1793"></span></a> <span class="kd">local</span> <span class="n">entityId</span> <span class="o">=</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span><span class="p">[</span><span class="s1">'qid'</span><span class="p">]</span> <span class="ow">or</span> <span class="n">mw</span><span class="p">.</span><span class="n">wikibase</span><span class="p">.</span><span class="n">getEntityIdForCurrentPage</span><span class="p">()</span> <span class="ow">or</span> <span class="s1">''</span> </span><span id="L-1794"><a href="#L-1794"><span class="linenos" data-line="1794"></span></a> <span class="kr">if</span> <span class="n">entityId</span> <span class="o">==</span> <span class="s1">''</span> <span class="kr">then</span> <span class="kr">return</span> <span class="s1">''</span> <span class="kr">end</span> </span><span id="L-1795"><a href="#L-1795"><span class="linenos" data-line="1795"></span></a> <span class="n">entity</span> <span class="o">=</span> <span class="n">getEntityFromId</span><span class="p">(</span> <span class="n">entityId</span> <span class="p">)</span> </span><span id="L-1796"><a href="#L-1796"><span class="linenos" data-line="1796"></span></a> <span class="kd">local</span> <span class="n">property</span> <span class="o">=</span> <span class="n">frame</span><span class="p">.</span><span class="n">args</span><span class="p">[</span><span class="s1">'property'</span><span class="p">]</span> </span><span id="L-1797"><a href="#L-1797"><span class="linenos" data-line="1797"></span></a> <span class="kr">if</span> <span class="n">property</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> <span class="kr">return</span> <span class="s1">''</span> <span class="kr">end</span> </span><span id="L-1798"><a href="#L-1798"><span class="linenos" data-line="1798"></span></a> <span class="kd">local</span> <span class="n">props</span> <span class="o">=</span> <span class="n">mw</span><span class="p">.</span><span class="n">text</span><span class="p">.</span><span class="n">split</span><span class="p">(</span><span class="n">property</span><span class="p">:</span><span class="n">upper</span><span class="p">(),</span><span class="s1">'/'</span><span class="p">)</span> </span><span id="L-1799"><a href="#L-1799"><span class="linenos" data-line="1799"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span><span class="n">prop</span> <span class="kr">in</span> <span class="nb">ipairs</span><span class="p">(</span><span class="n">props</span><span class="p">)</span> <span class="kr">do</span> </span><span id="L-1800"><a href="#L-1800"><span class="linenos" data-line="1800"></span></a> <span class="kr">if</span> <span class="n">i</span><span class="o"><#</span><span class="n">props</span><span class="o">-</span><span class="mi">1</span> <span class="kr">then</span> </span><span id="L-1801"><a href="#L-1801"><span class="linenos" data-line="1801"></span></a> <span class="kr">if</span> <span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">prop</span><span class="p">]</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> <span class="kr">return</span> <span class="s1">''</span> <span class="kr">end</span> </span><span id="L-1802"><a href="#L-1802"><span class="linenos" data-line="1802"></span></a> <span class="n">entityId</span><span class="o">=</span><span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">prop</span><span class="p">][</span><span class="mi">1</span><span class="p">][</span><span class="s1">'mainsnak'</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">id</span> </span><span id="L-1803"><a href="#L-1803"><span class="linenos" data-line="1803"></span></a> <span class="kr">if</span> <span class="n">entityId</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> <span class="kr">return</span> <span class="s1">''</span> <span class="kr">end</span> </span><span id="L-1804"><a href="#L-1804"><span class="linenos" data-line="1804"></span></a> <span class="n">entity</span> <span class="o">=</span> <span class="n">getEntityFromId</span><span class="p">(</span> <span class="n">entityId</span> <span class="p">)</span> </span><span id="L-1805"><a href="#L-1805"><span class="linenos" data-line="1805"></span></a> <span class="kr">end</span> </span><span id="L-1806"><a href="#L-1806"><span class="linenos" data-line="1806"></span></a> <span class="kr">if</span> <span class="n">i</span> <span class="o">==</span> <span class="o">#</span><span class="n">props</span><span class="o">-</span><span class="mi">1</span> <span class="kr">then</span> <span class="n">theobjects</span> <span class="o">=</span> <span class="n">prop</span> <span class="kr">end</span> <span class="c1">-- the second last property</span> </span><span id="L-1807"><a href="#L-1807"><span class="linenos" data-line="1807"></span></a> <span class="kr">if</span> <span class="n">i</span> <span class="o">==</span> <span class="o">#</span><span class="n">props</span> <span class="kr">then</span> <span class="n">theprop</span> <span class="o">=</span> <span class="n">prop</span> <span class="kr">end</span> <span class="c1">-- the very last property</span> </span><span id="L-1808"><a href="#L-1808"><span class="linenos" data-line="1808"></span></a> <span class="kr">end</span> </span><span id="L-1809"><a href="#L-1809"><span class="linenos" data-line="1809"></span></a> <span class="kd">local</span> <span class="n">summa</span> <span class="o">=</span> <span class="mi">0</span> </span><span id="L-1810"><a href="#L-1810"><span class="linenos" data-line="1810"></span></a> <span class="kd">local</span> <span class="n">n</span> <span class="o">=</span> <span class="mi">0</span> </span><span id="L-1811"><a href="#L-1811"><span class="linenos" data-line="1811"></span></a> <span class="n">res</span> <span class="o">=</span> <span class="s1">''</span> </span><span id="L-1812"><a href="#L-1812"><span class="linenos" data-line="1812"></span></a> <span class="kr">if</span> <span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">theobjects</span><span class="p">]</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> <span class="kr">return</span> <span class="s1">''</span> <span class="kr">end</span> </span><span id="L-1813"><a href="#L-1813"><span class="linenos" data-line="1813"></span></a> <span class="kr">for</span> <span class="n">i</span><span class="p">,</span><span class="n">v</span> <span class="kr">in</span> <span class="nb">ipairs</span><span class="p">(</span><span class="n">entity</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">theobjects</span><span class="p">])</span> <span class="kr">do</span> </span><span id="L-1814"><a href="#L-1814"><span class="linenos" data-line="1814"></span></a> <span class="kr">if</span> <span class="n">v</span><span class="p">[</span><span class="s1">'mainsnak'</span><span class="p">].</span><span class="n">datatype</span> <span class="o">~=</span> <span class="s1">'wikibase-item'</span> <span class="kr">then</span> <span class="kr">return</span> <span class="s1">''</span> <span class="kr">end</span> </span><span id="L-1815"><a href="#L-1815"><span class="linenos" data-line="1815"></span></a> <span class="kr">if</span> <span class="n">v</span><span class="p">[</span><span class="s1">'qualifiers'</span><span class="p">]</span> <span class="o">==</span> <span class="kc">nil</span> <span class="ow">or</span> <span class="n">v</span><span class="p">[</span><span class="s1">'qualifiers'</span><span class="p">]</span> <span class="ow">and</span> <span class="n">v</span><span class="p">[</span><span class="s1">'qualifiers'</span><span class="p">][</span><span class="n">avoidqualifier</span><span class="p">]</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> </span><span id="L-1816"><a href="#L-1816"><span class="linenos" data-line="1816"></span></a> <span class="n">entityterm</span> <span class="o">=</span> <span class="n">getEntityFromId</span><span class="p">(</span><span class="n">v</span><span class="p">[</span><span class="s1">'mainsnak'</span><span class="p">].</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">id</span><span class="p">)</span> </span><span id="L-1817"><a href="#L-1817"><span class="linenos" data-line="1817"></span></a> <span class="kr">if</span> <span class="n">entityterm</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">theprop</span><span class="p">]</span> <span class="o">==</span> <span class="kc">nil</span> <span class="kr">then</span> <span class="kr">return</span> <span class="s1">''</span> <span class="kr">end</span> </span><span id="L-1818"><a href="#L-1818"><span class="linenos" data-line="1818"></span></a> <span class="kr">if</span> <span class="n">entityterm</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">theprop</span><span class="p">][</span><span class="mi">1</span><span class="p">].</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datatype</span> <span class="o">==</span> <span class="s1">'quantity'</span> <span class="kr">then</span> </span><span id="L-1819"><a href="#L-1819"><span class="linenos" data-line="1819"></span></a> <span class="n">n</span> <span class="o">=</span> <span class="n">n</span> <span class="o">+</span> <span class="mi">1</span> </span><span id="L-1820"><a href="#L-1820"><span class="linenos" data-line="1820"></span></a> <span class="n">summa</span> <span class="o">=</span> <span class="n">summa</span> <span class="o">+</span> <span class="nb">tonumber</span><span class="p">(</span><span class="n">entityterm</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">theprop</span><span class="p">][</span><span class="mi">1</span><span class="p">].</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">amount</span><span class="p">)</span> </span><span id="L-1821"><a href="#L-1821"><span class="linenos" data-line="1821"></span></a> <span class="n">res</span> <span class="o">=</span> <span class="n">summa</span><span class="o">/</span><span class="n">n</span> </span><span id="L-1822"><a href="#L-1822"><span class="linenos" data-line="1822"></span></a> <span class="kr">elseif</span> <span class="n">entityterm</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">theprop</span><span class="p">][</span><span class="mi">1</span><span class="p">].</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datatype</span> <span class="o">==</span> <span class="s1">'globe-coordinate'</span> <span class="kr">then</span> </span><span id="L-1823"><a href="#L-1823"><span class="linenos" data-line="1823"></span></a> <span class="kr">if</span> <span class="n">what</span><span class="o">==</span><span class="s1">'lat'</span> <span class="kr">then</span> </span><span id="L-1824"><a href="#L-1824"><span class="linenos" data-line="1824"></span></a> <span class="n">n</span> <span class="o">=</span> <span class="n">n</span> <span class="o">+</span> <span class="mi">1</span> </span><span id="L-1825"><a href="#L-1825"><span class="linenos" data-line="1825"></span></a> <span class="n">summa</span> <span class="o">=</span> <span class="n">summa</span> <span class="o">+</span> <span class="n">entityterm</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">theprop</span><span class="p">][</span><span class="mi">1</span><span class="p">].</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">latitude</span> </span><span id="L-1826"><a href="#L-1826"><span class="linenos" data-line="1826"></span></a> <span class="n">res</span> <span class="o">=</span> <span class="n">summa</span><span class="o">/</span><span class="n">n</span> </span><span id="L-1827"><a href="#L-1827"><span class="linenos" data-line="1827"></span></a> <span class="kr">elseif</span> <span class="n">what</span><span class="o">==</span><span class="s1">'long'</span> <span class="kr">then</span> </span><span id="L-1828"><a href="#L-1828"><span class="linenos" data-line="1828"></span></a> <span class="n">n</span> <span class="o">=</span> <span class="n">n</span> <span class="o">+</span> <span class="mi">1</span> </span><span id="L-1829"><a href="#L-1829"><span class="linenos" data-line="1829"></span></a> <span class="n">summa</span> <span class="o">=</span> <span class="n">summa</span> <span class="o">+</span> <span class="n">entityterm</span><span class="p">.</span><span class="n">claims</span><span class="p">[</span><span class="n">theprop</span><span class="p">][</span><span class="mi">1</span><span class="p">].</span><span class="n">mainsnak</span><span class="p">.</span><span class="n">datavalue</span><span class="p">.</span><span class="n">value</span><span class="p">.</span><span class="n">longitude</span> </span><span id="L-1830"><a href="#L-1830"><span class="linenos" data-line="1830"></span></a> <span class="n">res</span> <span class="o">=</span> <span class="n">summa</span><span class="o">/</span><span class="n">n</span> </span><span id="L-1831"><a href="#L-1831"><span class="linenos" data-line="1831"></span></a> <span class="kr">else</span> </span><span id="L-1832"><a href="#L-1832"><span class="linenos" data-line="1832"></span></a> <span class="kr">return</span> <span class="s1">''</span> </span><span id="L-1833"><a href="#L-1833"><span class="linenos" data-line="1833"></span></a> <span class="kr">end</span> </span><span id="L-1834"><a href="#L-1834"><span class="linenos" data-line="1834"></span></a> <span class="kr">else</span> </span><span id="L-1835"><a href="#L-1835"><span class="linenos" data-line="1835"></span></a> <span class="c1">--TODO, not yet implemented</span> </span><span id="L-1836"><a href="#L-1836"><span class="linenos" data-line="1836"></span></a> <span class="kr">return</span> <span class="s1">''</span> </span><span id="L-1837"><a href="#L-1837"><span class="linenos" data-line="1837"></span></a> <span class="kr">end</span> </span><span id="L-1838"><a href="#L-1838"><span class="linenos" data-line="1838"></span></a> <span class="kr">end</span> </span><span id="L-1839"><a href="#L-1839"><span class="linenos" data-line="1839"></span></a> <span class="kr">end</span> </span><span id="L-1840"><a href="#L-1840"><span class="linenos" data-line="1840"></span></a> <span class="kr">return</span> <span class="n">res</span> </span><span id="L-1841"><a href="#L-1841"><span class="linenos" data-line="1841"></span></a><span class="kr">end</span> </span><span id="L-1842"><a href="#L-1842"><span class="linenos" data-line="1842"></span></a> </span><span id="L-1843"><a href="#L-1843"><span class="linenos" data-line="1843"></span></a><span class="kr">return</span> <span class="n">p</span> </span></pre></div> <!-- NewPP limit report Parsed by mw‐web.codfw.main‐78f4c97c5d‐6xzm8 Cached time: 20241129031903 Cache expiry: 2592000 Reduced expiry: false Complications: [show‐toc] CPU time usage: 0.075 seconds Real time usage: 0.102 seconds Preprocessor visited node count: 326/1000000 Post‐expand include size: 24913/2097152 bytes Template argument size: 180/2097152 bytes Highest expansion depth: 8/100 Expensive parser function count: 0/500 Unstrip recursion depth: 0/20 Unstrip post‐expand size: 842/5000000 bytes Lua time usage: 0.020/10.000 seconds Lua memory usage: 1085750/52428800 bytes Number of Wikibase entities loaded: 0/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 79.590 1 -total 93.35% 74.301 1 Modul:Wikidata2/dok 61.79% 49.182 8 Mall:Q 9.39% 7.474 1 Mall:Propertyspårning 3.37% 2.683 1 Mall:Rensa 2.31% 1.841 4 Mall:Dokumentation/doknamn --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?type=1x1&useformat=desktop" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Hämtad från ”<a dir="ltr" href="https://sv.wikipedia.org/w/index.php?title=Modul:Wikidata2&oldid=56106350">https://sv.wikipedia.org/w/index.php?title=Modul:Wikidata2&oldid=56106350</a>”</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Wikipedia:Kategorier" title="Wikipedia:Kategorier">Kategorier</a>: <ul><li><a href="/wiki/Kategori:Wikidatamoduler" title="Kategori:Wikidatamoduler">Wikidatamoduler</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P31" title="Kategori:Mallar och moduler som använder Property:P31">Mallar och moduler som använder Property:P31</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P102" title="Kategori:Mallar och moduler som använder Property:P102">Mallar och moduler som använder Property:P102</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P143" title="Kategori:Mallar och moduler som använder Property:P143">Mallar och moduler som använder Property:P143</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P180" title="Kategori:Mallar och moduler som använder Property:P180">Mallar och moduler som använder Property:P180</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P248" title="Kategori:Mallar och moduler som använder Property:P248">Mallar och moduler som använder Property:P248</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P291" title="Kategori:Mallar och moduler som använder Property:P291">Mallar och moduler som använder Property:P291</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P373" title="Kategori:Mallar och moduler som använder Property:P373">Mallar och moduler som använder Property:P373</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P405" title="Kategori:Mallar och moduler som använder Property:P405">Mallar och moduler som använder Property:P405</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P428" title="Kategori:Mallar och moduler som använder Property:P428">Mallar och moduler som använder Property:P428</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P512" title="Kategori:Mallar och moduler som använder Property:P512">Mallar och moduler som använder Property:P512</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P518" title="Kategori:Mallar och moduler som använder Property:P518">Mallar och moduler som använder Property:P518</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P574" title="Kategori:Mallar och moduler som använder Property:P574">Mallar och moduler som använder Property:P574</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P580" title="Kategori:Mallar och moduler som använder Property:P580">Mallar och moduler som använder Property:P580</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P582" title="Kategori:Mallar och moduler som använder Property:P582">Mallar och moduler som använder Property:P582</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P585" title="Kategori:Mallar och moduler som använder Property:P585">Mallar och moduler som använder Property:P585</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P625" title="Kategori:Mallar och moduler som använder Property:P625">Mallar och moduler som använder Property:P625</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P642" title="Kategori:Mallar och moduler som använder Property:P642">Mallar och moduler som använder Property:P642</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P965" title="Kategori:Mallar och moduler som använder Property:P965">Mallar och moduler som använder Property:P965</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P1323" title="Kategori:Mallar och moduler som använder Property:P1323">Mallar och moduler som använder Property:P1323</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P1630" title="Kategori:Mallar och moduler som använder Property:P1630">Mallar och moduler som använder Property:P1630</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P1686" title="Kategori:Mallar och moduler som använder Property:P1686">Mallar och moduler som använder Property:P1686</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P2096" title="Kategori:Mallar och moduler som använder Property:P2096">Mallar och moduler som använder Property:P2096</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P2370" title="Kategori:Mallar och moduler som använder Property:P2370">Mallar och moduler som använder Property:P2370</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P2937" title="Kategori:Mallar och moduler som använder Property:P2937">Mallar och moduler som använder Property:P2937</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P7903" title="Kategori:Mallar och moduler som använder Property:P7903">Mallar och moduler som använder Property:P7903</a></li><li><a href="/wiki/Kategori:Mallar_och_moduler_som_anv%C3%A4nder_Property:P7904" title="Kategori:Mallar och moduler som använder Property:P7904">Mallar och moduler som använder Property:P7904</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> Sidan redigerades senast den 22 oktober 2024 kl. 18.26.</li> <li id="footer-info-copyright">Wikipedias text är tillgänglig under licensen <a rel="nofollow" class="external text" href="//creativecommons.org/licenses/by-sa/4.0/deed.sv">Creative Commons Erkännande-dela-lika 4.0 Unported</a>. För bilder, se respektive bildsida (klicka på bilden). Se vidare <a href="/wiki/Wikipedia:Upphovsr%C3%A4tt" title="Wikipedia:Upphovsrätt">Wikipedia:Upphovsrätt</a> och <a class="external text" href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use">användarvillkor</a>.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Wikimedias integritetspolicy</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia:Om">Om Wikipedia</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:Allm%C3%A4nt_f%C3%B6rbeh%C3%A5ll">Förbehåll</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Uppförandekod</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Utvecklare</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/sv.wikipedia.org">Statistik</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Information om kakor</a></li> <li id="footer-places-mobileview"><a href="//sv.m.wikipedia.org/w/index.php?title=Modul:Wikidata2&mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Mobilvy</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/w/resources/assets/poweredby_mediawiki.svg" alt="Powered by MediaWiki" width="88" height="31" loading="lazy"></a></li> </ul> </footer> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-78f4c97c5d-6xzm8","wgBackendResponseTime":481,"wgPageParseReport":{"limitreport":{"cputime":"0.075","walltime":"0.102","ppvisitednodes":{"value":326,"limit":1000000},"postexpandincludesize":{"value":24913,"limit":2097152},"templateargumentsize":{"value":180,"limit":2097152},"expansiondepth":{"value":8,"limit":100},"expensivefunctioncount":{"value":0,"limit":500},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":842,"limit":5000000},"entityaccesscount":{"value":0,"limit":400},"timingprofile":["100.00% 79.590 1 -total"," 93.35% 74.301 1 Modul:Wikidata2/dok"," 61.79% 49.182 8 Mall:Q"," 9.39% 7.474 1 Mall:Propertyspårning"," 3.37% 2.683 1 Mall:Rensa"," 2.31% 1.841 4 Mall:Dokumentation/doknamn"]},"scribunto":{"limitreport-timeusage":{"value":"0.020","limit":"10.000"},"limitreport-memusage":{"value":1085750,"limit":52428800}},"cachereport":{"origin":"mw-web.codfw.main-78f4c97c5d-6xzm8","timestamp":"20241129031903","ttl":2592000,"transientcontent":false}}});});</script> </body> </html>