Permanently protected module

모듈:위키데이터

Module

-- vim: noexpand 탭 ft=luats=4 sw=4 설정: 요구하다('strict')  현지의 p = {} 현지의 디버그하다 = 거짓의   ------------------------------------------------------------------------------ -- 모듈 로컬 변수 및 함수  현지의 위키 = {  랭코드 = mw.언어.getContentLanguage().코드를 }  -- 국제화 현지의 i18n = {  [errors] =  {   ["property를 찾을 수 없음"] = "속성을 찾을 수 없습니다.",   ["entity를 찾을 수 없음"] = "Wikidata 개체를 찾을 수 없습니다.",   ["unknown-claim형"] = "알 수 없는 클레임 유형",   ["unknown-entity형"] = "알 수 없는 엔터티 유형"입니다.,   ["qualifier를 찾을 수 없음"] = "적격자를 찾을 수 없습니다.",   ["사이트를 찾을 수 없음"] = "Wikimedia 프로젝트를 찾을 수 없습니다.",   ["unknown-날짜-시간 형식] = "알 수 없는 날짜 시간 형식입니다.",   ["로컬 기사를 찾을 수 없음"] = "이 위키에는 아직 기사가 없습니다."  },  ["날짜 시간"] =  {   -- $1은 실제 숫자의 자리 표시자입니다.   [0] = "10억년", -- 정밀도 : 10억년   [1] = "1억년", -- 정밀도 : 억년   [2] = "천만년", -- 정밀도 : 천만 년   [3] = "100만년", -- 정밀도 : 백만 년   [4] = "100,000년",  -- 정밀도 : 십만년   [5] = "10,000년",  -- 정밀도 : 만년   [6] = "100만 달러",  -- 정밀도 : 밀레니엄   [7] = $1 century,   -- 정밀도 : 세기   [8] = "$1s",    -- 정밀도 : decade   -- 다음은 #time parser 함수의 형식을 사용합니다.   [9]  = "Y",     -- 정밀도: 연도,   [10] = "FY",    -- 정밀도 : 월   [11] = "FJ,Y",   -- 정밀도 : 일   [12] = FJ,Yga,   -- 정밀도 : 시간   [13] = "FJ, Yg:ia",  -- 정밀도 : 분   [14] = "Fj, Yg:i:sa",  -- 정밀도: 초   ["지금 전에"] = "$1 BCE", -- 0에서 5까지의 정밀도에 대한 음수의 형식을 지정하는 방법   ["지금부터"] = "$1 CE",  -- 정확도 0에서 5까지의 양수를 포맷하는 방법   ["bc"] = $1 "BCE",  -- 마이너스 연도를 인쇄하는 방법   ["광고"] = "$1",    -- 양년을 인쇄하는 방법   -- 다음은 함수 getDateValue() 및 getQualifierDateValue()에 대한 것입니다.   ["기본 형식"] = "dmy", -- #3(getDateValue)의 기본값 또는          -- #4 (getQualifierDateValue) 인수   ["기본 추가 기능"] = "BC", -- #4의 기본값(getDateValue) 또는          -- #5 (getQualifierDateValue) 인수   ["prefix애던"] = 거짓의, -- 언어에 대해 true로 설정하고 "BC"를 앞에 놓습니다.          -- datetime 문자열. 그렇지 않으면 addon에 접미사가 붙습니다.   ["sep 추가"] = " ",  -- datetime 문자열과 addon(또는 역) 사이의 구분자   ["형식"] =    -- 세 번째 논법의 선택 사항   {    ["mdy"] = "FJ,Y",    ["나의"] = "FY",    ["y"] = "Y",    ["dmy"] = "j FY",    ["ymd"] = "Y-m-d",    ["ym"] = "Y-m"   }  },  ["단일어 텍스트"] = '<span lang="%language">%text</span>',  [워덤프] = "[카테고리:모듈 Wikidata]]에서 함수 'Dump' 호출",  ["보통의"] =  {   [1] = "st",   [2] = "nd",   [3] = "rd",   ["기본값"] = "th"  } }  한다면 위키.랭코드 ~= en 그리고나서  --require("Module:i18n").load I18n("Module:Wikidata/i18n", i18n)  -- [[:w:]에서 아이디어를 얻었습니다.모듈:Wd]]  현지의 모듈_; 한다면 ... == 0의 그리고나서   모듈_ = mw.getCurrentFrame():칭호를 얻다()  또 다른   모듈_ = ...  끝.  요구하다('모듈:i18n').load I18n(모듈_..'/i18n', i18n) 끝.  -- 이 기능은 다음 사항과 함께 국제화되어야 합니다. -- 기수를 숫자로 사용하고 기수를 문자열로 반환합니다. -- 1등, 2등, 3등, 21등, 31등 3가지 예외가 필요합니다. 현지의 기능. 서수를 만들다 (기수의)  현지의 서픽스 = i18n.서수의.체납  한다면 기수의 % 10 == 1 그리고나서   서픽스 = i18n.서수의[1]  그 외의 경우에는 기수의 % 10 == 2 그리고나서   서픽스 = i18n.서수의[2]  그 외의 경우에는 기수의 % 10 == 3 그리고나서   서픽스 = i18n.서수의[3]  끝.  -- 영어에서 1, 21, 31 등은 'st'를 사용하지만 11, 111 등은 'th'를 사용합니다.  -- 12, 13 등에 대해서도 마찬가지입니다.  한다면 (기수의 % 100 == 11) 아니면 (기수의 % 100 == 12) 아니면 (기수의 % 100 == 13) 그리고나서   서픽스 = i18n.서수의.체납  끝.  돌아가다 끈을 매다(기수의) .. 서픽스 끝.  현지의 기능. 인쇄 오류(코드를)  돌아가다 '<span class="error">' .. (i18n.오류들[코드를] 아니면 코드를) .. '/span>' 끝. 현지의 기능. parseDateFormat(f, 타임스탬프, 추가로, 접두사_addon, 덧셈_)   현지의 년_  현지의 tstr = ""  현지의 lang_obj = mw.언어.신규(위키.랭코드)  현지의 f_부품 = mw.본문.분열되다(f, 'Y', 진실의)  위해서 idx, f_파트 인에 쌍들(f_부품) 하다   년_ = ''   한다면 문자열.성냥(f_파트, "x[마이콧]$") 그리고나서    -- 그레고리력이 아닌 해에    f_파트 = f_파트 .. 'Y'   그 외의 경우에는 idx < #f_부품 그리고나서    -- 연도의 선두 0을 억제합니다.    년_ = lang_obj:형식날짜('Y', 타임스탬프)    년_ = string.gsub(년_, '^0+', '', 1)   끝.   tstr = tstr .. lang_obj:형식날짜(f_파트, 타임스탬프) .. 년_  끝.  한다면 추가로 ~= "" 그리고. 접두사_addon 그리고나서   돌아가다 추가로 .. 덧셈_ .. tstr  그 외의 경우에는 추가로 ~= "" 그리고나서   돌아가다 tstr .. 덧셈_ .. 추가로  또 다른   돌아가다 tstr  끝. 끝. 현지의 기능. parseDateValue(타임스탬프, date_format, date_addon)  현지의 접두사_addon = i18n["날짜 시간"]["prefix애던"]  현지의 덧셈_ = i18n["날짜 시간"]["sep 추가"]  현지의 추가로 = ""   -- 마이너스 날짜를 확인합니다.  한다면 문자열.서브(타임스탬프, 1, 1) == '-' 그리고나서   타임스탬프 = '+' .. 문자열.서브(타임스탬프, 2)   추가로 = date_addon  끝.  현지의 _date_format = i18n["날짜 시간"]["형식"][date_format]  한다면 _date_format ~= 0의 그리고나서   돌아가다 parseDateFormat(_date_format, 타임스탬프, 추가로, 접두사_addon, 덧셈_)  또 다른   돌아가다 인쇄 오류("unknown-날짜-시간 형식)  끝. 끝.  -- 이 로컬 기능은 parseDateValue{}의 연도/월/일/BCE 처리를 결합합니다. -- 형식을 천 년/세기/십 년 동안 취급한 날짜()와 함께. 현지의 기능. parseDateFull(타임스탬프, 정확, date_format, date_addon)  현지의 접두사_addon = i18n["날짜 시간"]["prefix애던"]  현지의 덧셈_ = i18n["날짜 시간"]["sep 추가"]  현지의 추가로 = ""   -- 마이너스 날짜를 확인합니다.  한다면 문자열.서브(타임스탬프, 1, 1) == '-' 그리고나서   타임스탬프 = '+' .. 문자열.서브(타임스탬프, 2)   추가로 = date_addon  끝.   -- + 뒤에 다음 4자를 얻습니다(모든 경우에 지금이 되어야 함).  -- 그래요, 그럼 이건 더럽지만 일단 작동부터 시키죠  현지의 년중에 = 수적으로(문자열.서브(타임스탬프, 2, 5))  한다면 년중에 == 0 그리고. 정확 <= 9 그리고나서   돌아가다 ""  끝.   -- 정밀도는 10000년 또는 그 이상입니다.  한다면 정확 <= 5 그리고나서   현지의 요소를 = 10 ^ ((5 - 정확) + 4)   현지의 y2 = 수학.(수학.abs(년중에) / 요소를)   현지의 관련있는 = mw.utstring.gsub(i18n.날짜 시간[정확], "$1", 끈을 매다(y2))   한다면 추가로 ~= "" 그리고나서    -- 마이너스 날짜    관련있는 = mw.utstring.gsub(i18n.날짜 시간.지금 전에, "$1", 관련있는)   또 다른    관련있는 = mw.utstring.gsub(i18n.날짜 시간.후에, "$1", 관련있는)   끝.   돌아가다 관련있는  끝.   -- 정밀도는 수십 년 (8), 세기 (7) 및 천년 (6)  현지의 시대를, 카드를  한다면 정확 == 6 그리고나서   카드를 = 수학.바닥((년중에 - 1) / 1000) + 1   시대를 = mw.utstring.gsub(i18n.날짜 시간[6], "$1", 서수를 만들다(카드를))  끝.  한다면 정확 == 7 그리고나서   카드를 = 수학.바닥((년중에 - 1) / 100) + 1   시대를 = mw.utstring.gsub(i18n.날짜 시간[7], "$1", 서수를 만들다(카드를))  끝.  한다면 정확 == 8 그리고나서   시대를 = mw.utstring.gsub(i18n.날짜 시간[8], "$1", 끈을 매다(수학.바닥(수학.abs(년중에) / 10) * 10))  끝.  한다면 시대를 그리고나서   한다면 추가로 ~= "" 그리고나서    시대를 = mw.utstring.gsub(mw.utstring.gsub(i18n.날짜 시간.bc, '"', ""), "$1", 시대를)   또 다른    시대를 = mw.utstring.gsub(mw.utstring.gsub(i18n.날짜 시간.광고를, '"', ""), "$1", 시대를)   끝.   돌아가다 시대를  끝.   현지의 _date_format = i18n["날짜 시간"]["형식"][date_format]  한다면 _date_format ~= 0의 그리고나서   -- 정밀도가 연도인지 확인하고 제공된 date_format을 재정의합니다.   한다면 정확 == 9 그리고나서    _date_format = i18n["날짜 시간"][9]   끝.   돌아가다 parseDateFormat(_date_format, 타임스탬프, 추가로, 접두사_addon, 덧셈_)  또 다른   돌아가다 인쇄 오류("unknown-날짜-시간 형식)  끝. 끝.  -- "예선"과 "스낵" 필드는 각각의 "예선-순서"와 "스낵-순서" 필드를 갖습니다. -- 이것들을 두번째 매개변수로 사용하고 내장된 "pairs" 함수 대신에 이 함수를 사용합니다. -- 모든 예선전을 반복하고 의도된 순서대로 스니크를 합니다. 현지의 기능. 질서정연한 짝(배열하다, 주문)  한다면 것은 아니다. 주문 그리고나서 돌아가다 쌍들(배열하다) 끝.   -- 반환 반복기 함수  현지의 i = 0  돌아가다 기능.()   i = i + 1   한다면 주문[i] 그리고나서    돌아가다 주문[i], 배열하다[주문[i]]   끝.  끝. 끝.  -- 정밀도: 0 - 억 년, 1 - 억 년, ..., 6 - 천년, 7 세기, 8 - 10 년, 9 년, 10 월, 11 일, 12 시간, 13 분, 14 초 현지의 기능. 정규화날짜(날짜.)  날짜. = mw.본문.다듬다(날짜., "+")  -- 추출년도  현지의 years str = mw.utstring.경기(날짜., "^\-?%d+")  현지의 연도 = 수적으로(years str)  -- 연도의 선행 0을 제거합니다.  돌아가다 연도 .. mw.utstring.후보선수(날짜., #years str + 1), 연도 끝.  현지의 기능. 형식날짜(날짜., 정확, 시간대)  정확 = 정확 아니면 11  현지의 날짜., 연도 = 정규화날짜(날짜.)  한다면 연도 == 0 그리고. 정확 <= 9 그리고나서 돌아가다 "" 끝.   -- 정밀도는 10000년 또는 그 이상입니다.  한다면 정확 <= 5 그리고나서   현지의 요소를 = 10 ^ ((5 - 정확) + 4)   현지의 y2 = 수학.(수학.abs(연도) / 요소를)   현지의 관련있는 = mw.utstring.gsub(i18n.날짜 시간[정확], "$1", 끈을 매다(y2))   한다면 연도 < 0 그리고나서    관련있는 = mw.utstring.gsub(i18n.날짜 시간.지금 전에, "$1", 관련있는)   또 다른    관련있는 = mw.utstring.gsub(i18n.날짜 시간.후에, "$1", 관련있는)   끝.   돌아가다 관련있는  끝.   -- 정밀도는 수 십년, 수 세기 그리고 수 천년입니다.  현지의 시대를  한다면 정확 == 6 그리고나서 시대를 = mw.utstring.gsub(i18n.날짜 시간[6], "$1", 끈을 매다(수학.바닥((수학.abs(연도) - 1) / 1000) + 1)) 끝.  한다면 정확 == 7 그리고나서 시대를 = mw.utstring.gsub(i18n.날짜 시간[7], "$1", 끈을 매다(수학.바닥((수학.abs(연도) - 1) / 100) + 1)) 끝.  한다면 정확 == 8 그리고나서 시대를 = mw.utstring.gsub(i18n.날짜 시간[8], "$1", 끈을 매다(수학.바닥(수학.abs(연도) / 10) * 10)) 끝.  한다면 시대를 그리고나서   한다면 연도 < 0 그리고나서 시대를 = mw.utstring.gsub(mw.utstring.gsub(i18n.날짜 시간.bc, '"', ""), "$1", 시대를)   그 외의 경우에는 연도 > 0 그리고나서 시대를 = mw.utstring.gsub(mw.utstring.gsub(i18n.날짜 시간.광고를, '"', ""), "$1", 시대를) 끝.   돌아가다 시대를  끝.   -- 정밀도는 년입니다.  한다면 정확 == 9 그리고나서   돌아가다 연도  끝.   -- 정밀도가 연보다 작습니다.  한다면 정확 > 9 그리고나서   --[[ 다음 코드는 UTC 접미사를 주어진 부정된 시간대로 바꾸어 전역 시간을 주어진 현지 시간으로 변환합니다. 시간대 = to number(시간대) 시간대 및 시간대 ~= 0인 경우 시간대 = -시간대 시간대 = 문자열입니다.형식은 ("%.2d%.2d), 표준 시간대 / 60, 표준 시간대 % 60)입니다. timezone[1] ~= '-'인 경우, timezone = "+" ... timezone end date = mw.text. trim(date, "Z")..." " .. 시간대 끝. ]]--    현지의 포맷스트r = i18n.날짜 시간[정확]   한다면 연도 == 0 그리고나서 포맷스트r = mw.utstring.gsub(포맷스트r, i18n.날짜 시간[9], "")   그 외의 경우에는 연도 < 0 그리고나서    -- Mediawiki 형식Date가 마이너스 연도를 지원하지 않습니다.    날짜. = mw.utstring.후보선수(날짜., 2)    포맷스트r = mw.utstring.gsub(포맷스트r, i18n.날짜 시간[9], mw.utstring.gsub(i18n.날짜 시간.bc, "$1", i18n.날짜 시간[9]))   그 외의 경우에는 연도 > 0 그리고. i18n.날짜 시간.광고를 ~= "$1" 그리고나서    포맷스트r = mw.utstring.gsub(포맷스트r, i18n.날짜 시간[9], mw.utstring.gsub(i18n.날짜 시간.광고를, "$1", i18n.날짜 시간[9]))   끝.   돌아가다 mw.언어.신규(위키.랭코드):형식날짜(포맷스트r, 날짜.)  끝. 끝.  현지의 기능. printDatavalueEntity(데이터., 매개변수)  -- 데이터 필드: 엔티티 유형 [문자열], 숫자-id [int, Wikidata id]  현지의 이드   한다면 데이터.["entity형"] == "항목" 그리고나서 이드 = "Q" .. 데이터.["numeric-id"]  그 외의 경우에는 데이터.["entity형"] == property 그리고나서 이드 = "P" .. 데이터.["numeric-id"]  또 다른 돌아가다 인쇄 오류("unknown-entity형")  끝.   한다면 매개변수 그리고나서   한다면 매개변수 == "링크" 그리고나서    현지의 linkTarget = mw.위키베이스.getSitelink(이드)    현지의 linkName = mw.위키베이스.getLabel(이드)    한다면 linkTarget 그리고나서     -- 라벨 또는 기사 제목을 사용하여 로컬 위키백과 기사 링크가 있는 경우     돌아가다 "[[" .. linkTarget .. " " .. (linkName 아니면 linkTarget) .. "]]"    또 다른     -- 로컬 위키백과 기사가 없는 경우 사용자가 적절한 레이블을 입력할 수 있도록 위키데이터 객체에 대한 레이블 또는 링크를 출력합니다.     한다면 linkName 그리고나서 돌아가다 linkName 또 다른 돌아가다 "[:d:" .. 이드 .. " " .. 이드 .. "]]" 끝.    끝.   또 다른    돌아가다 데이터.[매개변수]   끝.  또 다른   돌아가다 mw.위키베이스.getLabel(이드) 아니면 이드  끝. 끝.  현지의 기능. 인쇄데이터 값시간(데이터., 매개변수)  -- 데이터 필드: 시간 [ISO 8601 시간], 시간대 [분 단위], 이전 [int], 이후 [int], 정밀도 [int], 일정관리 모델 [wikidata URI]  --   정밀도: 0 - 억 년, 1 - 억 년, ..., 6 - 천년, 7 세기, 8 - 10 년, 9 년, 10 월, 11 일, 12 시간, 13 분, 14 초  --   달력 모델: 예: 프롤레틱 그레고리안 달력의 경우 http://www.wikidata.org/entity/Q1985727 또는 율리우스력의 경우 http://www.wikidata.org/wiki/Q11184 ]  한다면 매개변수 그리고나서   한다면 매개변수 == "calend기 모델" 그리고나서 데이터..달력 모델 = mw.utstring.경기(데이터..달력 모델, "Q%d+") -- 캘린더 모델 URI에서 엔티티 ID 추출   그 외의 경우에는 매개변수 == "시간" 그리고나서 데이터..시간을 = 정규화날짜(데이터..시간을) 끝.   돌아가다 데이터.[매개변수]  또 다른   돌아가다 형식날짜(데이터..시간을, 데이터..정확, 데이터..시간대)  끝. 끝.  현지의 기능. printDatavalue단일어 텍스트(데이터., 매개변수)  -- 데이터 필드: 언어 [문자열], 텍스트 [문자열]  한다면 매개변수 그리고나서   돌아가다 데이터.[매개변수]  또 다른   현지의 결과 = mw.utstring.gsub(mw.utstring.gsub(i18n.단일 언어 텍스트, "%% language", 데이터.["언어"]), "%% 텍스트", 데이터.["text"])   돌아가다 결과  끝. 끝.  현지의 기능. 클레임 찾기(독립체, 소유물)  한다면 것은 아니다. 소유물 아니면 것은 아니다. 독립체 아니면 것은 아니다. 독립체.주장하다 그리고나서 돌아가다 끝.   한다면 mw.utstring.경기(소유물, "^P%d+$") 그리고나서   -- ID(P...)로 속성이 지정된 경우 이 ID로 클레임 목록에 액세스합니다.   돌아가다 독립체.주장하다[소유물]  또 다른   소유물 = mw.위키베이스.resolvePropertyId(소유물)   한다면 것은 아니다. 소유물 그리고나서 돌아가다 끝.    돌아가다 독립체.주장하다[소유물]  끝. 끝.  현지의 기능. 스내크 값을 가져옵니다.(잽싸게, 매개변수)  한다면 잽싸게.스네이크 타입 == "가치" 그리고나서   -- 해당 스네이크 파서를 호출합니다.   한다면 잽싸게.데이터 값.유형 == "스트링" 그리고나서 돌아가다 잽싸게.데이터 값.가치   그 외의 경우에는 잽싸게.데이터 값.유형 == "글로브 좌표" 그리고나서 돌아가다 인쇄 데이터 값좌표(잽싸게.데이터 값.가치, 매개변수)   그 외의 경우에는 잽싸게.데이터 값.유형 == quantity 그리고나서 돌아가다 인쇄 데이터 값수량(잽싸게.데이터 값.가치, 매개변수)   그 외의 경우에는 잽싸게.데이터 값.유형 == "시간" 그리고나서 돌아가다 인쇄데이터 값시간(잽싸게.데이터 값.가치, 매개변수)   그 외의 경우에는 잽싸게.데이터 값.유형 == "wikibase- entityid" 그리고나서 돌아가다 printDatavalueEntity(잽싸게.데이터 값.가치, 매개변수)   그 외의 경우에는 잽싸게.데이터 값.유형 == "단일어 텍스트" 그리고나서 돌아가다 printDatavalue단일어 텍스트(잽싸게.데이터 값.가치, 매개변수)   끝.  끝.  돌아가다 mw.위키베이스.스낙을 렌더하다(잽싸게) 끝.  현지의 기능. getQualifierSnak(주장하다, 예선전이드)  -- "snak"는 타이핑된 키/값 쌍에 대한 위키데이터 용어입니다.  -- 클레임은 이 클레임의 주요 정보를 보유한 메인 스낵으로 구성되어 있고,  -- 속성 스네이크 목록과 참조 스네이크 목록 뿐만 아니라  한다면 예선전이드 그리고나서   -- 지정된 한정자를 키로 사용하여 속성 스내크 검색   한다면 주장하다.예선전 그리고나서    현지의 예선전 = 주장하다.예선전[예선전이드]    한다면 예선전 그리고나서 돌아가다 예선전[1] 끝.   끝.   돌아가다 0의, 인쇄 오류("qualifier를 찾을 수 없음")  또 다른   -- 그렇지 않으면 메인 스낵을 반환합니다.   돌아가다 주장하다.메인스네이크  끝. 끝.  현지의 기능. 클레임 값 가져오기(주장하다, 예선전이드, 매개변수)  현지의 오류를  현지의 잽싸게  잽싸게, 오류를 = getQualifierSnak(주장하다, 예선전이드)  한다면 잽싸게 그리고나서   돌아가다 스내크 값을 가져옵니다.(잽싸게, 매개변수)  또 다른   돌아가다 0의, 오류를  끝. 끝.  현지의 기능. 레퍼런스 받기(, 주장하다)  현지의 결과 = ""  -- 모든 참고 문헌을 두루 조사합니다.  위해서 ref 인에 쌍들(주장하다.참고문헌 아니면 {}) 하다   현지의 레파츠   -- 현재 참조의 모든 부분을 횡단합니다.   위해서 스네키, 스네이크발 인에 질서정연한 짝(주장하다.참고문헌[ref].스네이크 아니면 {}, 주장하다.참고문헌[ref]["snak-order"]) 하다    한다면 레파츠 그리고나서 레파츠 = 레파츠 .. ", " 또 다른 레파츠 = "" 끝.    -- P143에 대해 "imported from"과 같은 참조 부품의 속성 라벨을 출력합니다.    레파츠 = 레파츠 .. 끈을 매다(mw.위키베이스.getLabel(스네키)) .. ": "    -- 두 사이트에서 참조된 주장을 가져온 경우 이 참조 부분의 모든 값을 출력합니다. 예를 들어 "독일어 위키백과"와 "영어 위키백과"    위해서 스나이키덱스 = 1, #스네이크발 하다     한다면 스나이키덱스 > 1 그리고나서 레파츠 = 레파츠 .. ", " 끝.     레파츠 = 레파츠 .. 스내크 값을 가져옵니다.(스네이크발[스나이키덱스])    끝.   끝.   한다면 레파츠 그리고나서 결과 = 결과 .. :확장 태그("ref", 레파츠) 끝.  끝.  돌아가다 결과 끝.  현지의 기능. 구문 분석 입력()  현지의 qid = .아그스.qid  한다면 qid 그리고. (#qid == 0) 그리고나서 qid = 0의 끝.  현지의 속성ID = mw.본문.다듬다(.아그스[1] 아니면 "")  현지의 입력_팜 = mw.본문.다듬다(.아그스[2] 아니면 "")  한다면 입력_팜 ~= "FETCH_WIKIDATA" 그리고나서   돌아가다 거짓의, 입력_팜, 0의, 0의  끝.  현지의 독립체 = mw.위키베이스.getEntity(qid)  현지의 주장하다  한다면 독립체 그리고. 독립체.주장하다 그리고나서   주장하다 = 독립체.주장하다[속성ID]   한다면 것은 아니다. 주장하다 그리고나서    돌아가다 거짓의, "", 0의, 0의   끝.  또 다른   돌아가다 거짓의, "", 0의, 0의  끝.  돌아가다 진실의, 독립체, 주장하다, 속성ID 끝. 현지의 기능. is타입(주장하다, 유형)  돌아가다 주장하다[1] 그리고. 주장하다[1].메인스네이크.스네이크 타입 == "가치" 그리고. 주장하다[1].메인스네이크.데이터 값.유형 == 유형 끝. 현지의 기능. getValue(독립체, 주장하다, 속성ID, 구분을 짓다, 라벨 후크)   한다면 라벨 후크 == 0의 그리고나서   라벨 후크 = 기능. (q수)    돌아가다 0의;   끝.  끝.  한다면 is타입(주장하다, "wikibase- entityid") 그리고나서   현지의 나가. = {}   위해서 k, v 인에 쌍들(주장하다) 하다    현지의 q수 = "Q" .. v.메인스네이크.데이터 값.가치["numeric-id"]    현지의 부지 링크 = mw.위키베이스.getSitelink(q수)    현지의 라벨. = 라벨 후크(q수) 아니면 mw.위키베이스.getLabel(q수) 아니면 q수    한다면 부지 링크 그리고나서     나가.[#나가. + 1] = "[[" .. 부지 링크 .. " " .. 라벨. .. "]]"    또 다른     나가.[#나가. + 1] = "[:d:" .. q수 .. " " .. 라벨. .. "]<abbr title='" .. i18n[errors]["로컬 기사를 찾을 수 없음"] .. "">[*]//abbr>"    끝.   끝.   돌아가다 테이블.콘캣(나가., 구분을 짓다)  또 다른   -- 최상의 값만 반환합니다.   돌아가다 독립체:formatPropertyValues(속성ID).가치  끝. 끝.  ------------------------------------------------------------------------------ -- 모듈 전역 함수  한다면 디버그하다 그리고나서  기능. p.I18n을 조사()   현지의 발의 = i18n   위해서 _, 열쇠 인에 쌍들(.아그스) 하다    열쇠 = mw.본문.다듬다(열쇠)    발의 = 발의[열쇠]   끝.   돌아가다 발의  끝. 끝.  기능. p.묘사()  현지의 랭코드 = .아그스[1]  현지의 이드 = .아그스[2]  -- 지정된 언어 또는 이 위키백과 사이트의 기본 언어로 된 위키데이터 개체에 대한 설명을 반환합니다.  돌아가다 mw.위키베이스.getEntity(이드):getDescription(랭코드 아니면 위키.랭코드) 끝.  기능. p.라벨인()  현지의 랭코드 = .아그스[1]  현지의 이드 = .아그스[2]  -- 지정된 언어 또는 이 위키백과 사이트의 기본 언어로 된 위키데이터 개체의 반환 레이블  돌아가다 mw.위키베이스.getEntity(이드):getLabel(랭코드 아니면 위키.랭코드) 끝.  -- 값을 가져오거나 값이 여러 개 존재할 경우 쉼표로 구분된 목록을 가져오는 데 사용됩니다. p.getValue = 기능.()  현지의 구분 기본값 = ", " -- **나중에 국제화**  현지의 구분을 짓다 = .아그스.구분 기호 아니면 ""  구분을 짓다 = string.gsub(구분을 짓다, '"', '')  한다면 #구분을 짓다 == 0 그리고나서   구분을 짓다 = 구분 기본값  끝.  현지의 가세요, errorOrentity, 주장하다, 속성ID = 구문 분석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 errorOrentity  끝.  돌아가다 getValue(errorOrentity, 주장하다, 속성ID, 구분을 짓다) 끝.  -- 위와 동일하지만 사용 가능한 경우 레이블에 짧은 이름 속성을 사용합니다. p.getValueShortName = 기능.()  현지의 가세요, errorOrentity, 주장하다, 속성ID = 구문 분석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 errorOrentity  끝.  현지의 독립체 = errorOrentity  -- wiki-linked value 출력이 가능한 경우.  현지의 기능. 라벨 후크 (q수)   현지의 라벨.   현지의 클레임엔티 = mw.위키베이스.getEntity(q수)   한다면 클레임엔티 ~= 0의 그리고나서    한다면 클레임엔티.주장하다.P1813 그리고나서     위해서 k2, v2 인에 쌍들(클레임엔티.주장하다.P1813) 하다      한다면 v2.메인스네이크.데이터 값.가치.언어 == en 그리고나서       라벨. = v2.메인스네이크.데이터 값.가치.본문      끝.     끝.    끝.   끝.   한다면 라벨. == 0의 아니면 라벨. == "" 그리고나서 돌아가다 0의 끝.   돌아가다 라벨.  끝.  돌아가다 getValue(errorOrentity, 주장하다, 속성ID, ", ", 라벨 후크); 끝.  -- 값을 가져오거나 값이 여러 개 존재할 경우 쉼표로 구분된 목록을 가져오는 데 사용됩니다. -- QID를 사용한 임의의 엔트리로부터. -- 사용: {{#invoke:Wikidata get Value From아이디 <ID> <속성> FETCH_WIKIDATA}} -- 예:{{#invoke:Wikidata get Value FromID Q151973 P26 FETCH_WIKIDATA} - 'Richard Burton'(Q151973)에서 '배우자'(P26) 값을 가져옵니다. -- *비싼 통화입니다*. 사용을 아껴주세요. p.ID에서 값 가져오기 = 기능.()  현지의 품명ID = mw.본문.다듬다(.아그스[1] 아니면 "")  현지의 속성ID = mw.본문.다듬다(.아그스[2] 아니면 "")  현지의 입력_팜 = mw.본문.다듬다(.아그스[3] 아니면 "")  한다면 입력_팜 == "FETCH_WIKIDATA" 그리고나서   현지의 독립체 = mw.위키베이스.getEntity(품명ID)   현지의 주장하다   한다면 독립체 그리고. 독립체.주장하다 그리고나서    주장하다 = 독립체.주장하다[속성ID]   끝.   한다면 주장하다 그리고나서    돌아가다 getValue(독립체, 주장하다, 속성ID, ", ")   또 다른    돌아가다 ""   끝.  또 다른   돌아가다 입력_팜  끝. 끝. 현지의 기능. getQualifier(, 출력 후크)   현지의 속성ID = mw.본문.다듬다(.아그스[1] 아니면 "")  현지의 한정자 ID = mw.본문.다듬다(.아그스[2] 아니면 "")  현지의 입력_팜 = mw.본문.다듬다(.아그스[3] 아니면 "")  한다면 입력_팜 == "FETCH_WIKIDATA" 그리고나서   현지의 독립체 = mw.위키베이스.getEntity()   한다면 독립체.주장하다[속성ID] ~= 0의 그리고나서    현지의 나가. = {}    위해서 k, v 인에 쌍들(독립체.주장하다[속성ID]) 하다     위해서 k2, v2 인에 쌍들(v.예선전[한정자 ID]) 하다      한다면 v2.스네이크 타입 == '가치' 그리고나서       나가.[#나가. + 1] = 출력 후크(v2);      끝.     끝.    끝.    돌아가다 테이블.콘캣(나가., ", "), 진실의   또 다른    돌아가다 "", 거짓의   끝.  또 다른   돌아가다 입력_팜, 거짓의  끝. 끝. p.한정자 값 가져오기 = 기능.()  현지의 기능. outputValue(가치)   현지의 q수 = "Q" .. 가치.데이터 값.가치["numeric-id"]   한다면 (mw.위키베이스.getSitelink(q수)) 그리고나서    돌아가다 "[[" .. mw.위키베이스.getSitelink(q수) .. "]]"   또 다른    돌아가다 "[:d:" .. q수 .. " " ..q수 .. "]<abbr title='" .. i18n[errors]["로컬 기사를 찾을 수 없음"] .. "">[*]//abbr>"   끝.  끝.  돌아가다 (getQualifier(, outputValue)) 끝.  -- 이것은 연결되지 않는 '수'(속성 p21의 경우)와 천 개의 구분자가 없는 숫자와 같은 값을 얻기 위해 사용됩니다. p.원시 값 가져오기 = 기능.()  현지의 가세요, errorOrentity, 주장하다, 속성ID = 구문 분석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 errorOrentity  끝.  현지의 독립체 = errorOrentity  현지의 결과 = 독립체:formatPropertyValues(속성ID, mw.위키베이스.독립체.클레임 랭크).가치  -- if number type: 천 개의 구분자, 경계 및 단위 제거  한다면 is타입(주장하다, quantity) 그리고나서   결과 = mw.utstring.gsub(결과, "(%d),(%d)", "%1%2")   결과 = mw.utstring.gsub(결과, "(%d)±.*", "%1")  끝.  돌아가다 결과 끝.  -- getRawValue에서 반환되는 숫자 값의 단위 이름을 가져오는 데 사용됩니다. p.유닛을 얻다 = 기능.()  현지의 가세요, errorOrentity, 주장하다, 속성ID = 구문 분석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 errorOrentity  끝.  현지의 독립체 = errorOrentity  현지의 결과 = 독립체:formatPropertyValues(속성ID, mw.위키베이스.독립체.클레임 랭크).가치  한다면 is타입(주장하다, quantity) 그리고나서   결과 = mw.utstring.후보선수(결과, mw.utstring.찾아내다(결과, " ")+1, -1)  끝.  돌아가다 결과 끝.  -- getRawValue에서 반환된 숫자 값과 함께 사용할 장치의 QID를 가져오는 데 사용됩니다. p.유닛ID를 가져옵니다. = 기능.()  현지의 가세요, errorOrentity, 주장하다 = 구문 분석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 errorOrentity  끝.  현지의 독립체 = errorOrentity  현지의 결과  한다면 is타입(주장하다, quantity) 그리고나서   -- Wikidata에서 장치 항목의 URL을 가져옵니다.   결과 = 주장하다[1].메인스네이크.데이터 값.가치.구성 단위   -- 마지막 비트를 "Q"에서 끝(QID)으로 반환하면 됩니다.   결과 = mw.utstring.후보선수(결과, mw.utstring.찾아내다(결과, "Q"), -1)  끝.  돌아가다 결과 끝.  p.원시 한정자 값 가져오기 = 기능.()  현지의 기능. 출력 후크(가치)   한다면 가치.데이터 값.가치["numeric-id"] 그리고나서    돌아가다 mw.위키베이스.getLabel("Q" .. 가치.데이터 값.가치["numeric-id"])   또 다른    돌아가다 가치.데이터 값.가치   끝.  끝.  현지의 레트, gotData = getQualifier(, 출력 후크)  한다면 gotData 그리고나서   레트 = 끈.상단(문자열.서브(레트, 1, 1)) .. 문자열.서브(레트, 2)  끝.  돌아가다 레트 끝.  -- 링크되지 않는 Date_of_birth(P569) 등의 날짜 값을 구하는 데 사용됩니다. -- 날짜와 시간은 ISO 8601 형식으로 저장됩니다. -- 현재 로컬 형식Date(날짜, 정밀도, 시간대) 함수가 시간대를 처리하지 않습니다. -- 그래서 저는 아래의 날짜를 포맷할 통화에서 "Z"를 입력하겠습니다. p.getDateValue = 기능.()  현지의 date_format = mw.본문.다듬다(.아그스[3] 아니면 i18n["날짜 시간"]["기본 형식"])  현지의 date_addon = mw.본문.다듬다(.아그스[4] 아니면 i18n["날짜 시간"]["기본 추가 기능"])  현지의 가세요, errorOrentity, 주장하다 = 구문 분석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 errorOrentity  끝.  현지의 독립체 = errorOrentity  현지의 나가. = {}  위해서 k, v 인에 쌍들(주장하다) 하다   한다면 v.메인스네이크.데이터 값.유형 == '시간' 그리고나서    현지의 타임스탬프 = v.메인스네이크.데이터 값.가치.시간을    현지의 날짜 정확도 = v.메인스네이크.데이터 값.가치.정확    -- 1년은 이렇게 저장할 수 있습니다: "+1872-00-00T00:00:00Z",    -- 여기서 마치 "+1872-01-01T00:00:00Z" 전날처럼 처리가 됩니다.    -- 1871년의 마지막 날이니까 해가 틀렸습니다    -- 월 0, 일 0 타임스탬프를 대신 1 January로 수정합니다.    타임스탬프 = 타임스탬프:gsub("%-00%-00T", "-01-01T")    나가.[#나가. + 1] = parseDateFull(타임스탬프, 날짜 정확도, date_format, date_addon)   끝.  끝.  돌아가다 테이블.콘캣(나가., ", ") 끝. p.getQualifierDateValue = 기능.()  현지의 date_format = mw.본문.다듬다(.아그스[4] 아니면 i18n["날짜 시간"]["기본 형식"])  현지의 date_addon = mw.본문.다듬다(.아그스[5] 아니면 i18n["날짜 시간"]["기본 추가 기능"])  현지의 기능. 출력 후크(가치)   현지의 타임스탬프 = 가치.데이터 값.가치.시간을   돌아가다 parseDateValue(타임스탬프, date_format, date_addon)  끝.  돌아가다 (getQualifier(, 출력 후크)) 끝.  -- 이미지(P18), Gene Atlas Image(P692) 등 특정 속성을 가진 모든 이미지를 가져오는 데 사용됩니다. -- 매개 변수는 속성입니다.ID 값 / FETCH_WIKIDATA / nil 구분자 (default=space) 크기 (default=frameless) -- 표준 위키 마크업 [파일:크기 및 구분 기호(html일 수 있음)를 선택할 수 있는 각 이미지에 대한 파일 이름 크기] -- 예: {{# invoke:Wikidata getImages P18 FETCH_WIKIDATA} -- 예: {{# invoke:위키데이터 getImages P18 FETCH_WIKIDATA <br> 250px} -- commonsMedia 유형이 아닌 속성을 선택하면 빈 텍스트가 반환됩니다. p.이미지 가져오기 = 기능.()  현지의  = mw.본문.다듬다(.아그스[3] 아니면 " ")  현지의 엠지사이즈 = mw.본문.다듬다(.아그스[4] 아니면 "테두리 없는")  현지의 가세요, errorOrentity, 주장하다 = 구문 분석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 errorOrentity  끝.  현지의 독립체 = errorOrentity  한다면 (주장하다[1] 그리고. 주장하다[1].메인스네이크.자료형 == "커먼 미디어") 그리고나서   현지의 나가. = {}   위해서 k, v 인에 쌍들(주장하다) 하다    현지의 파일명 = v.메인스네이크.데이터 값.가치    나가.[#나가. + 1] = "[파일:" .. 파일명 .. " " .. 엠지사이즈 .. "]]"   끝.   돌아가다 테이블.콘캣(나가., )  또 다른   돌아가다 ""  끝. 끝.  -- 이것은 'A01.1.00.005'(속성 P1323)와 같은 TA98(Termologia Anatomica first edition 1998) 값을 얻는 데 사용됩니다. -- 그런 다음 https://ifaa.unifr.ch/Public/EntryPage/TA98%20Tree/Entity%20TA98%20EN/01.1.00.005%20Entity%20TA98%20EN.htm 에 링크됩니다. -- 새로운 mw를 사용합니다.snaks를 직접 사용하는 대신 wikibase 호출 -- formatPropertyValues는 ", "와 연결된 P1323 값을 가진 테이블을 반환하므로 반환 문자열을 구성하기 위해 테이블로 분할해야 합니다. p.TAV 값을 얻다 = 기능.()  현지의 엔트 = mw.위키베이스.getEntity()  현지의 소품들 = 엔트:formatPropertyValues('P1323')  현지의 나가. = {}  현지의 t = {}  위해서 k, v 인에 쌍들(소품들) 하다   한다면 k == '가치' 그리고나서    t = mw.본문.분열되다( v, ", ")    위해서 k2, v2 인에 쌍들(t) 하다     나가.[#나가. + 1] = "[https://ifaa.unifr.ch/Public/EntryPage/TA98%20Tree/Entity%20TA98%20EN/ ]" .. 문자열.서브(v2, 2) .. "%20 엔티티 %20TA98%20EN.htm" .. v2 .. "]"    끝.   끝.  끝.  현지의 레트 = 테이블.콘캣(나가., "<br>")  한다면 #레트 == 0 그리고나서   레트 = "잘못된 TA"  끝.  돌아가다 레트 끝.  --[[ Wikidata에서 이미지 범례를 반환하는 데 사용됩니다. 이미지는 속성 P18입니다. 이미지 범례는 속성 P2096입니다.  {{#invoke:Wikidata getImageLegend <PARAMETER> lang=<ISO-639code> id= <QID>} 항목 QID(고가 호출)에서 "FETCH_WIKIDATA"와 동일하지 않은 경우 PARAMER를 반환합니다. QID가 생략되거나 공백인 경우 현재 기사가 사용됩니다(고가 통화가 아님). lang이 생략되면 로컬 wiki 언어를 사용하고, 그렇지 않으면 제공된 ISO-639 언어 코드를 사용합니다. ISO-639: https://docs.oracle.com/cd/E13214_01/wli/docs92/xref/xqisocodes.html#wp1252447  순위: '선호' > '보통' 첫 번째 이미지에서 '선호' 순위의 레이블을 반환합니다. 또는 선호하는 경우 '보통' 순위를 가진 첫 번째 이미지의 라벨은 아무것도 반환하지 않습니다. 순위: https://www.mediawiki.org/wiki/Extension:Wikibase_Client/Lua ]]  p.이미지레전드 가져오기 = 기능.()  -- 이름이 지정된 매개 변수 ID를 찾습니다. 공백이면 0으로 만듭니다.  현지의 이드 = .아그스.이드  한다면 이드 그리고. (#이드 == 0) 그리고나서   이드 = 0의  끝.   -- 명명된 매개 변수 언어를 찾습니다.  -- 두 문자 ISO-639 언어 코드를 포함해야 합니다.  -- 공백인 경우 로컬 위키의 언어를 가져옵니다.  현지의  = .아그스.  한다면 (것은 아니다. ) 아니면 (# < 2) 그리고나서    = mw.언어.getContentLanguage().코드를  끝.   -- 이름이 없는 첫 번째 매개 변수는 로컬 매개 변수(제공된 경우)입니다.  현지의 입력_팜 = mw.본문.다듬다(.아그스[1] 아니면 "")  한다면 입력_팜 == "FETCH_WIKIDATA" 그리고나서   현지의 엔트 = mw.위키베이스.getEntity(이드)   현지의 igms   한다면 엔트 그리고. 엔트.주장하다 그리고나서    igms = 엔트.주장하다.P18   끝.   현지의 엉거주춤한   한다면 igms 그리고나서    -- 'preferred' 등급의 이미지를 찾습니다.    위해서 k1, v1 인에 쌍들(igms) 하다     한다면 v1.순위 == preferred 그리고. v1.예선전 그리고. v1.예선전.P2096 그리고나서      현지의 엉거주춤한 소리 = v1.예선전.P2096      위해서 k2, v2 인에 쌍들(엉거주춤한 소리) 하다       한다면 v2.데이터 값.가치.언어 ==  그리고나서        엉거주춤한 = v2.데이터 값.가치.본문        브레이크.       끝.      끝.     끝.    끝.    -- 찾을 수 없는 경우 '보통' 순위의 이미지를 찾습니다.    한다면 (것은 아니다. 엉거주춤한) 그리고나서     위해서 k1, v1 인에 쌍들(igms) 하다      한다면 v1.순위 == "보통" 그리고. v1.예선전 그리고. v1.예선전.P2096 그리고나서       현지의 엉거주춤한 소리 = v1.예선전.P2096       위해서 k2, v2 인에 쌍들(엉거주춤한 소리) 하다        한다면 v2.데이터 값.가치.언어 ==  그리고나서         엉거주춤한 = v2.데이터 값.가치.본문         브레이크.        끝.       끝.      끝.     끝.    끝.   끝.   돌아가다 엉거주춤한  또 다른   돌아가다 입력_팜  끝. 끝.  -- 값이 여러 개인 경우 쉼표로 구분된 목록으로 속성의 모든 값의 QID를 가져오는 데 사용됩니다. -- 사용량: {{# 호출:Wikidata get PropertyID <속성ID> FETCH_WIKIDATA}} -- 사용량: {{# 호출:Wikidata get PropertyID <속성ID> <입력파라미터> qid=<QID>}"  p.get Property신분증 = 기능.()  현지의 가세요, errorOrentity, 소구 사항 = 구문 분석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 errorOrentity  끝.  현지의 독립체 = errorOrentity  -- wiki-linked 값이 테이블에 QID를 수집하는 경우  한다면 (소구 사항[1] 그리고. 소구 사항[1].메인스네이크.스네이크 타입 == "가치" 그리고. 소구 사항[1].메인스네이크.데이터 값.유형 == "wikibase- entityid") 그리고나서   현지의 나가. = {}   위해서 k, v 인에 쌍들(소구 사항) 하다    나가.[#나가. + 1] = "Q" .. v.메인스네이크.데이터 값.가치["numeric-id"]   끝.   돌아가다 테이블.콘캣(나가., ", ")  또 다른   -- wikibase- entityid가 아니므로 빈 상태로 반환합니다.   돌아가다 ""  끝. 끝.  -- 현재 페이지의 페이지 ID(Q...)를 반환하거나 Wikidata에 연결되지 않은 페이지가 없습니다. 기능. p.pageId()  돌아가다 mw.위키베이스.현재 페이지에 대한 getEntityId() 끝.  기능. p.주장하다()  현지의 소유물 = .아그스[1] 아니면 ""  현지의 이드 = .아그스["id"]  현지의 예선전이드 = .아그스[qualifier]  현지의 매개변수 = .아그스["parameter"]  현지의 목록. = .아그스["리스트"]  현지의 참고문헌 = .아그스["refe 차이"]  현지의 소나기 오싹 = .아그스["shower 오류"]  현지의 체납 = .아그스["기본값"]  한다면 체납 그리고나서 소나기 오싹 = 0의 끝.   -- wikidata 엔티티 가져오기  현지의 독립체 = mw.위키베이스.getEntity(이드)  한다면 것은 아니다. 독립체 그리고나서   한다면 소나기 오싹 그리고나서 돌아가다 인쇄 오류("entity를 찾을 수 없음") 또 다른 돌아가다 체납 끝.  끝.  -- 주어진 재산을 만족시킨다는 최초의 요구를 들어내다.  현지의 주장하다 = 클레임 찾기(독립체, 소유물)  한다면 것은 아니다. 주장하다 아니면 것은 아니다. 주장하다[1] 그리고나서   한다면 소나기 오싹 그리고나서 돌아가다 인쇄 오류("property를 찾을 수 없음") 또 다른 돌아가다 체납 끝.  끝.   -- 초기 정렬 인덱스 가져오기  현지의 지표를 분류하다 = {}  위해서 idx 인에 쌍들(주장하다) 하다   지표를 분류하다[#지표를 분류하다 + 1] = idx  끝.  -- 클레임 순위에 따라 정렬합니다.  현지의 비교자 = 기능.(a, b)   현지의 순위표 = { 감가상각된 = 2, 보통의 = 1, 선호된 = 0 }   현지의 순위를 매기다 = 순위표[주장하다[a].순위 아니면 "보통"] .. 문자열.형식("%08d", a)   현지의 등수를 매기다 = 순위표[주장하다[b].순위 아니면 "보통"] .. 문자열.형식("%08d", b)   돌아가다 순위를 매기다 < 등수를 매기다  끝.  식탁에 앉히다(지표를 분류하다, 비교자)   현지의 결과  현지의 오류를  한다면 목록. 그리고나서   현지의 가치   -- 모든 요소에 대해 반복하고 값을 반환합니다(존재하는 경우).   결과 = {}   위해서 idx 인에 쌍들(주장하다) 하다    현지의 주장하다 = 주장하다[지표를 분류하다[idx]]    가치, 오류를 = 클레임 값 가져오기(주장하다, 예선전이드, 매개변수)    한다면 것은 아니다. 가치 그리고. 소나기 오싹 그리고나서 가치 = 오류를 끝.    한다면 가치 그리고. 참고문헌 그리고나서 가치 = 가치 .. 레퍼런스 받기(, 주장하다) 끝.    결과[#결과 + 1] = 가치   끝.   결과 = 테이블.콘캣(결과, 목록.)  또 다른   -- 첫번째 요소를 반환합니다.   현지의 주장하다 = 주장하다[지표를 분류하다[1]]   결과, 오류를 = 클레임 값 가져오기(주장하다, 예선전이드, 매개변수)   한다면 결과 그리고. 참고문헌 그리고나서 결과 = 결과 .. 레퍼런스 받기(, 주장하다) 끝.  끝.   한다면 결과 그리고나서 돌아가다 결과 또 다른   한다면 소나기 오싹 그리고나서 돌아가다 오류를 또 다른 돌아가다 체납 끝.  끝. 끝.  -- 개체 개체를 조사합니다. 기능. p.보기Something()  현지의 f = (.아그스[1] 아니면 .아그스.이드) 그리고.  아니면 :부모님 가져오기()  현지의 이드 = f.아그스.이드  한다면 이드 그리고. (#이드 == 0) 그리고나서   이드 = 0의  끝.  현지의 데이터. = mw.위키베이스.getEntity(이드)  한다면 것은 아니다. 데이터. 그리고나서   돌아가다 0의  끝.   현지의 i = 1  하는 동안에 진실의 하다   현지의 색인을 보다 = f.아그스[i]   한다면 것은 아니다. 색인을 보다 그리고나서    한다면 유형(데이터.) == "테이블" 그리고나서     돌아가다 mw.본문.jsonEncode(데이터., mw.본문.JSON_PRERSEVE_KEYS + mw.본문.JSON_예쁘다)    또 다른     돌아가다 끈을 매다(데이터.)    끝.   끝.    데이터. = 데이터.[색인을 보다] 아니면 데이터.[수적으로(색인을 보다)]   한다면 것은 아니다. 데이터. 그리고나서    돌아가다   끝.    i = i + 1  끝. 끝.  -- 지정된 위키의 사이트 링크 가져오기 -- qid가 제공되지 않은 경우 현재 항목의 사이트 링크 가져오기 기능. p.getSiteLink()  현지의 qid = .아그스.qid  한다면 qid == "" 그리고나서 qid = 0의 끝.  현지의 f = mw.본문.다듬다( .아그스[1] 아니면 "")  현지의 독립체 = mw.위키베이스.getEntity(qid)  한다면 것은 아니다. 독립체 그리고나서   돌아가다  끝.  현지의 연결고리 = 독립체:getSitelink( f )  한다면 것은 아니다. 연결고리 그리고나서   돌아가다  끝.  돌아가다 연결고리 끝.  기능. p.버리다()  현지의 f = (.아그스[1] 아니면 .아그스.이드) 그리고.  아니면 :부모님 가져오기()  현지의 데이터. = mw.위키베이스.getEntity(f.아그스.이드)  한다면 것은 아니다. 데이터. 그리고나서   돌아가다 i18n.경고 덤프  끝.   현지의 i = 1  하는 동안에 진실의 하다   현지의 색인을 보다 = f.아그스[i]   한다면 것은 아니다. 색인을 보다 그리고나서    돌아가다 "<pre>"..mw.dumpObject(데이터.).."/pre>".. i18n.경고 덤프   끝.    데이터. = 데이터.[색인을 보다] 아니면 데이터.[수적으로(색인을 보다)]   한다면 것은 아니다. 데이터. 그리고나서    돌아가다 i18n.경고 덤프   끝.    i = i + 1  끝. 끝.  돌아가다 p