모듈:Wikidata/샌드박스

Module
-- vim: noexpandtab ft=lua ts=4 sw=4 를 설정합니다. 요구하다('모듈:글로벌 없음)  현지의 p = {} 현지의 디버깅 = 거짓의   ------------------------------------------------------------------------------ -- 모듈 로컬 변수 및 함수  현지의 위키 = {  언어 코드 = .언어.get Content Language(get Content Language)().코드 }  --국제화 현지의 18n = {  ["실패"] =  {   ["오디오를 찾을 수 없습니다"] = "속성을 찾을 수 없습니다.",   ["오디오를 찾을 수 없습니다"] = "Wikidata 엔티티를 찾을 수 없습니다.",   ["contract-type"] = "알 수 없는 클레임 유형입니다.",   ["contract-type"] = "알 수 없는 엔티티 유형입니다.",   ["오디오를 찾을 수 없습니다"] = "적격자를 찾을 수 없습니다.",   ["사이트를 찾을 수 없습니다"] = "Wikimedia 프로젝트를 찾을 수 없습니다.",   ["filename-datetime-format"] = "알 수 없는 날짜/시간 형식입니다.",   ["로컬 문서를 찾을 수 없습니다."] = 이 Wiki에서는 아직 기사를 이용할 수 없습니다.  },  ["일시"] =  {   -- 1달러는 실제 숫자의 자리 표시자입니다.   [0] = "10억달러", -- 정밀도: 10억 년   [1] = "1억달러", -- 정밀도: 1억 년   [2] = "1000만 년", -- 정밀도: 천만 년   [3] = "100만달러", -- 정밀도: 백만 년   [4] = "10만달러",  -- 정밀도: 10만 년   [5] = "10,000년",  -- 정밀도: 만 년   [6] = "1천년치",  -- 정밀도: 밀레니엄   [7] = '1세기',   -- 정밀도: 세기   [8] = "1달러",    -- 정밀도: 10년   --다음은 #time parser 함수 형식을 사용합니다.   [9]  = 'Y',     -- 정밀도: 년,   [10] = 'F Y',    -- precision : 월   [11] = "FJ, Y",   -- precision : 일   [12] = "F J, Y ga",   -- precision :   [13] = "F J, Y g:ia",  -- precision : 분   [14] = "FJ, Y g:i:sa",  -- precision :   ["지금까지"] = "기원전 1달러", -- 정밀도 0 ~5의 음수 형식을 지정하는 방법   ['아프터 나우] = "1 CE달러",  -- 정밀도 0 ~5의 양수 형식을 지정하는 방법   ["bc"] = '1달러 BCE',  -- 마이너스 연도를 인쇄하는 방법   [광고] = "$1",    --양년도를 인쇄하는 방법   -- 다음은 getDateValue() 및 getQualifierDateValue() 함수의 경우입니다.   ["기본 형식"] = "dmy", -- #3(getDateValue)의 디폴트값 또는          -- #4 ( get Qualifier Date Value )인수   ["디폴트 애드온"] = 'BC', -- #4(getDateValue)의 디폴트값 또는          -- #5 ( get Qualifier Date Value )인수   ["하이브리드 애드온"] = 거짓의, -- 언어의 경우 true로 설정됩니다.          -- datetime 문자열. 그렇지 않으면 애드온은 접미사가 붙습니다.   ['애드온'] = " ",  -- datetime 문자열과 addon 사이의 구분자(또는 역)   ["형식"] =    -- 세 번째 인수 옵션   {    ["mdy"] = "FJ, Y",    ['내'] = 'F Y',    ["y"] = 'Y',    ["dmy"] = "j F Y",    ["ymd"] = "Y-m-d",    ["ym"] = "Y-m"   }  },  ["단일 언어 텍스트"] = '%text' </span> </span>,  ["warndump"] = "[카테고리:모듈 Wikidata에서 호출된 함수 '덤프']",  ["정상"] =  {   [1] = 「st」,   [2] = "nd",   [3] = "rd",   ["디폴트"] = "th"  } }  한다면 위키.언어 코드 ~= "en" 그리고나서  --require("Module:i18n").loadI18n("Module:Wikidata/i18n", i18n)  --[:w:]에서 아이디어를 얻었습니다.모듈: WD]]  현지의 module_module_module_syslogs; 한다면 ... == 제로 그리고나서   module_module_module_syslogs = .get Current Frame(전류 프레임)():getTitle(제목)()  또 다른   module_module_module_syslogs = ...  끝.  요구하다('모듈:i18n').로드I18n(module_module_module_syslogs..'/i18n', 18n) 끝.  -- 이 기능은 위와 같이 국제화해야 합니다. -- 기수를 수치로 하여 서수를 문자열로 반환한다. 1차, 2차, 3차, 21차, 31일 등 영어의 3가지 예외가 필요합니다. 현지의 기능. makeOrdinal (주요)  현지의 ordsuffix = 18n.서수의.체납  한다면 주요 % 10 == 1 그리고나서   ordsuffix = 18n.서수의[1]  그렇지 않으면 주요 % 10 == 2 그리고나서   ordsuffix = 18n.서수의[2]  그렇지 않으면 주요 % 10 == 3 그리고나서   ordsuffix = 18n.서수의[3]  끝.  ·영어로 1, 21, 31 등은 'st'를 사용하지만 11, 111 등은 'th'를 사용한다.  -- 12, 13 등에서도 마찬가지입니다.  한다면 (주요 % 100 == 11) 또는 (주요 % 100 == 12) 또는 (주요 % 100 == 13) 그리고나서   ordsuffix = 18n.서수의.체납  끝.  돌아가다 스트링(주요) .. ordsuffix 끝.  현지의 기능. print Error(인쇄 오류)(코드)  돌아가다 '<span class="error">' .. (18n.에러[코드] 또는 코드) .. '</span>' 끝. 현지의 기능. parseDateFormat(f, 타임스탬프, 애드온, prefix_addon, addon_displays(addon_displays))   현지의 년도  현지의 동작하다 = ""  현지의 lang_obj = .언어.신규(위키.언어 코드)  현지의 f_parts(f_parts) = .본문.분열되다(f, 'Y', 진실의)  위해서 idx, f_parts 에서 쌍들(f_parts(f_parts)) 하다   년도 = ''   한다면 string.match(f_parts, "x[mijkot]$") 그리고나서    --그레고리우스 이외의 해    f_parts = f_parts .. 'Y'   그렇지 않으면 idx < > #f_parts(f_parts) 그리고나서    --연도의 선행 제로를 억제합니다.    년도 = lang_obj:포맷 날짜('Y', 타임스탬프)    년도 = string.gsub(년도, '^0+', '', 1)   끝.   동작하다 = 동작하다 .. lang_obj:포맷 날짜(f_parts, 타임스탬프) .. 년도  끝.  한다면 애드온 ~= "" 그리고. prefix_addon 그리고나서   돌아가다 애드온 .. addon_displays(addon_displays) .. 동작하다  그렇지 않으면 애드온 ~= "" 그리고나서   돌아가다 동작하다 .. addon_displays(addon_displays) .. 애드온  또 다른   돌아가다 동작하다  끝. 끝. 현지의 기능. parseDateValue 값(타임스탬프, date_format, date_addon)  현지의 prefix_addon = 18n["일시"]["하이브리드 애드온"]  현지의 addon_displays(addon_displays) = 18n["일시"]['애드온']  현지의 애드온 = ""   -- 마이너스 날짜를 확인합니다.  한다면 스트링.서브(타임스탬프, 1, 1) == '-' 그리고나서   타임스탬프 = '+' .. 스트링.서브(타임스탬프, 2)   애드온 = date_addon  끝.  현지의 _date_형식 = 18n["일시"]["형식"][date_format]  한다면 _date_형식 ~= 제로 그리고나서   돌아가다 parseDateFormat(_date_형식, 타임스탬프, 애드온, prefix_addon, addon_displays(addon_displays))  또 다른   돌아가다 print Error(인쇄 오류)("filename-datetime-format")  끝. 끝.  -- 이 로컬 함수는 parseDateValue{}의 년/월/일/BC/BCE 처리를 결합합니다. -- formatDate()의 밀레니엄/세기/10년 처리와 함께 현지의 기능. parseDateFull(타임스탬프, 정확, date_format, date_addon)  현지의 prefix_addon = 18n["일시"]["하이브리드 애드온"]  현지의 addon_displays(addon_displays) = 18n["일시"]['애드온']  현지의 애드온 = ""   -- 마이너스 날짜를 확인합니다.  한다면 스트링.서브(타임스탬프, 1, 1) == '-' 그리고나서   타임스탬프 = '+' .. 스트링.서브(타임스탬프, 2)   애드온 = date_addon  끝.   -- + 뒤에 다음 4글자를 가져옵니다(모든 경우 현재 연도여야 합니다).  --좋아요, 그럼 이건 더럽지만, 먼저 작동시키죠.  현지의 연내 = 톤수(스트링.서브(타임스탬프, 2, 5))  한다면 연내 == 0 그리고. 정확 <=> 9 그리고나서   돌아가다 ""  끝.   -- 정밀도는 10000년 이상  한다면 정확 <=> 5 그리고나서   현지의 인자 = 10 ^ ((5 - 정확) + 4)   현지의 y2 = math.matrix(math.abs(연내) / 인자)   현지의 관련있는 = .스트링.서브(18n.날짜[정확], "$1", 스트링(y2))   한다면 애드온 ~= "" 그리고나서    -- 마이너스 날짜    관련있는 = .스트링.서브(18n.날짜.지금까지, "$1", 관련있는)   또 다른    관련있는 = .스트링.서브(18n.날짜.나중에, "$1", 관련있는)   끝.   돌아가다 관련있는  끝.   --정밀도는 10년(8), 세기(7), 천년(6)이다.  현지의 시대, 카드  한다면 정확 == 6 그리고나서   카드 = math.floor((연내 - 1) / 1000) + 1   시대 = .스트링.서브(18n.날짜[6], "$1", makeOrdinal(카드))  끝.  한다면 정확 == 7 그리고나서   카드 = math.floor((연내 - 1) / 100) + 1   시대 = .스트링.서브(18n.날짜[7], "$1", makeOrdinal(카드))  끝.  한다면 정확 == 8 그리고나서   시대 = .스트링.서브(18n.날짜[8], "$1", 스트링(math.floor(math.abs(연내) / 10) * 10))  끝.  한다면 시대 그리고나서   한다면 애드온 ~= "" 그리고나서    시대 = .스트링.서브(.스트링.서브(18n.날짜.bc, '"', ""), "$1", 시대)   또 다른    시대 = .스트링.서브(.스트링.서브(18n.날짜.광고, '"', ""), "$1", 시대)   끝.   돌아가다 시대  끝.   현지의 _date_형식 = 18n["일시"]["형식"][date_format]  한다면 _date_형식 ~= 제로 그리고나서   -- 정밀도가 year인지 확인하고 제공된 date_format을 덮어씁니다.   한다면 정확 == 9 그리고나서    _date_형식 = 18n["일시"][9]   끝.   돌아가다 parseDateFormat(_date_형식, 타임스탬프, 애드온, prefix_addon, addon_displays(addon_displays))  또 다른   돌아가다 print Error(인쇄 오류)("filename-datetime-format")  끝. 끝.  -- "qualifiers" 및 "snaks" 필드에는 각각 "qualifiers-order" 및 "snaks-order" 필드가 있습니다. --이러한 파라미터를두 번째 파라미터로사용하고내장된"필수"함수대신이함수를사용합니다. -- 모든 예선 및 스니크를 의도된 순서로 반복합니다. 현지의 기능. 순서쌍(배열, 주문)  한다면 것은 아니다. 주문 그리고나서 돌아가다 쌍들(배열) 끝.   --반환 반복기 함수  현지의 i = 0  돌아가다 기능.()   i = i + 1   한다면 주문[i] 그리고나서    돌아가다 주문[i], 배열[주문[i]]   끝.  끝. 끝.  -- 정밀도: 0-억년, 1억년, ..., 6-천년, 7세기, 8년, 9년, 10개월, 11일, 12시간, 13분, 14초 현지의 기능. 정규화 날짜(날짜.)  날짜. = .본문.다듬다(날짜., "+")  -- 추출년  현지의 연도 = .스트링.경기(날짜., "^\-? %d+")  현지의 연도 = 톤수(연도)  --연도의 선행 제로를 삭제합니다.  돌아가다 연도 .. .스트링.후보선수(날짜., #연도 + 1), 연도 끝.  현지의 기능. 포맷 날짜(날짜., 정확, 시간대)  정확 = 정확 또는 11  현지의 날짜., 연도 = 정규화 날짜(날짜.)  한다면 연도 == 0 그리고. 정확 <=> 9 그리고나서 돌아가다 "" 끝.   -- 정밀도는 10000년 이상  한다면 정확 <=> 5 그리고나서   현지의 인자 = 10 ^ ((5 - 정확) + 4)   현지의 y2 = math.matrix(math.abs(연도) / 인자)   현지의 관련있는 = .스트링.서브(18n.날짜[정확], "$1", 스트링(y2))   한다면 연도 < > 0 그리고나서    관련있는 = .스트링.서브(18n.날짜.지금까지, "$1", 관련있는)   또 다른    관련있는 = .스트링.서브(18n.날짜.나중에, "$1", 관련있는)   끝.   돌아가다 관련있는  끝.   - 정밀도는 수십 년, 세기, 천 년이다.  현지의 시대  한다면 정확 == 6 그리고나서 시대 = .스트링.서브(18n.날짜[6], "$1", 스트링(math.floor((math.abs(연도) - 1) / 1000) + 1)) 끝.  한다면 정확 == 7 그리고나서 시대 = .스트링.서브(18n.날짜[7], "$1", 스트링(math.floor((math.abs(연도) - 1) / 100) + 1)) 끝.  한다면 정확 == 8 그리고나서 시대 = .스트링.서브(18n.날짜[8], "$1", 스트링(math.floor(math.abs(연도) / 10) * 10)) 끝.  한다면 시대 그리고나서   한다면 연도 < > 0 그리고나서 시대 = .스트링.서브(.스트링.서브(18n.날짜.bc, '"', ""), "$1", 시대)   그렇지 않으면 연도 > 0 그리고나서 시대 = .스트링.서브(.스트링.서브(18n.날짜.광고, '"', ""), "$1", 시대) 끝.   돌아가다 시대  끝.   -- 정밀도는 연도입니다.  한다면 정확 == 9 그리고나서   돌아가다 연도  끝.   --정밀도가 년 미만입니다.  한다면 정확 > 9 그리고나서   --[[다음 코드는 UTC 서픽스를 지정된 부정 시간대로 대체하여 글로벌 시간을 지정된 현지 시간으로 변환합니다. timezone = tonumber(타임존) 표준 시간대 및 표준 시간대 ~= 0이면 timezone = -timezone timezone = 문자열.포맷 %.%. 。 2 d . 2 d " , timezone / 60 , timezone % 60 ) timezone[1] ~= '-'이면 timezone = "+" .. timezone이 종료됩니다. date = mw.text.date(날짜, "Z").." ..타임존 끝. ]]--    현지의 포맷스트래 = 18n.날짜[정확]   한다면 연도 == 0 그리고나서 포맷스트래 = .스트링.서브(포맷스트래, 18n.날짜[9], "")   그렇지 않으면 연도 < > 0 그리고나서    -- Mediawiki 형식 날짜는 마이너스 연도를 지원하지 않습니다.    날짜. = .스트링.후보선수(날짜., 2)    포맷스트래 = .스트링.서브(포맷스트래, 18n.날짜[9], .스트링.서브(18n.날짜.bc, "$1", 18n.날짜[9]))   그렇지 않으면 연도 > 0 그리고. 18n.날짜.광고 ~= "$1" 그리고나서    포맷스트래 = .스트링.서브(포맷스트래, 18n.날짜[9], .스트링.서브(18n.날짜.광고, "$1", 18n.날짜[9]))   끝.   돌아가다 .언어.신규(위키.언어 코드):포맷 날짜(포맷스트래, 날짜.)  끝. 끝.  현지의 기능. printDatavalueEntity(데이터., 파라미터)  -- 데이터 필드: entity-type [string ], numeric-id [int, Wikidata id]  현지의 아이디   한다면 데이터.["유형"] == "항목" 그리고나서 아이디 = 'Q' .. 데이터.["contract-id"]  그렇지 않으면 데이터.["유형"] == "실패" 그리고나서 아이디 = 'P' .. 데이터.["contract-id"]  또 다른 돌아가다 print Error(인쇄 오류)("contract-type")  끝.   한다면 파라미터 그리고나서   한다면 파라미터 == 링크 그리고나서    현지의 link Target(링크 타깃) = .키보드.get Sitelink를 취득하다(아이디)    현지의 링크명 = .키보드.get Label(라벨)(아이디)    한다면 link Target(링크 타깃) 그리고나서     -- 라벨 또는 문서 제목을 사용하여 로컬 Wikipedia 문서가 있는 경우 링크     돌아가다 "[[" .. link Target(링크 타깃) .. " " .. (링크명 또는 link Target(링크 타깃)) .. "]]"    또 다른     -- 로컬 Wikipedia 문서가 없는 경우 사용자가 적절한 라벨을 입력할 수 있도록 Wikidata 오브젝트에 대한 라벨 또는 링크를 출력합니다.     한다면 링크명 그리고나서 돌아가다 링크명 또 다른 돌아가다 "[:d:] .. 아이디 .. " " .. 아이디 .. "]]" 끝.    끝.   또 다른    돌아가다 데이터.[파라미터]   끝.  또 다른   돌아가다 .키보드.get Label(라벨)(아이디) 또는 아이디  끝. 끝.  현지의 기능. printDatavalue시간(데이터., 파라미터)  -- 데이터 필드: time [ISO 8601 time], timezone [int in minutes], [int]전, [int]후, precision [int], calendarmodel [wikidata URI]  -- 정밀도: 0-억년, 1억년, ..., 6-천년, 7세기, 8년, 9년, 10개월, 11일, 12시간, 13분, 14초  -- calendarmodel : 예: http://www.wikidata.org/entity/Q1985727 (전경 그레고리력) 또는 http://www.wikidata.org/wiki/Q11184 (율리우스력)  한다면 파라미터 그리고나서   한다면 파라미터 == "카모델" 그리고나서 데이터..캘린더 모델 = .스트링.경기(데이터..캘린더 모델, "Q%d+") -- 캘린더 모델 URI에서 엔티티 ID를 추출합니다.   그렇지 않으면 파라미터 == "시간" 그리고나서 데이터..시간을 = 정규화 날짜(데이터..시간을) 끝.   돌아가다 데이터.[파라미터]  또 다른   돌아가다 포맷 날짜(데이터..시간을, 데이터..정확, 데이터..시간대)  끝. 끝.  현지의 기능. printDatavalueMonualText(데이터., 파라미터)  -- 데이터 필드: 언어 [문자열], 텍스트 [문자열]  한다면 파라미터 그리고나서   돌아가다 데이터.[파라미터]  또 다른   현지의 결과 = .스트링.서브(.스트링.서브(18n.단일 언어 텍스트, %% 언어, 데이터.["언어"]), %%text, 데이터.["텍스트"])   돌아가다 결과  끝. 끝.  현지의 기능. 클레임 검색(독립체, 소유물)  한다면 것은 아니다. 소유물 또는 것은 아니다. 독립체 또는 것은 아니다. .키보드.get Best Statements(베스트 스테이트먼트)(독립체, 소유물)[1] 그리고나서 돌아가다 끝.   한다면 .스트링.경기(소유물, "^P%d+$") 그리고나서   -- 속성이 ID(P..)로 지정된 경우 이 ID로 클레임 목록에 액세스합니다.   돌아가다 .키보드.get Best Statements(베스트 스테이트먼트)(독립체, 소유물)  또 다른   소유물 = .키보드.resolve PropertyId(소유물)   한다면 것은 아니다. 소유물 그리고나서 돌아가다 끝.    돌아가다 .키보드.get Best Statements(베스트 스테이트먼트)(독립체, 소유물)  끝. 끝.  현지의 기능. snak Value를 취득하다(코딱지 않다, 파라미터)  한다면 코딱지 않다.스냅타이프 == "값" 그리고나서   -- 각 스낵파서를 호출합니다.   한다면 코딱지 않다.데이터.유형 == "문자열' 그리고나서 돌아가다 코딱지 않다.데이터.가치   그렇지 않으면 코딱지 않다.데이터.유형 == "불균등" 그리고나서 돌아가다 printDatavalueCoordinate(코딱지 않다.데이터.가치, 파라미터)   그렇지 않으면 코딱지 않다.데이터.유형 == "실패" 그리고나서 돌아가다 print Datavalue 수량(코딱지 않다.데이터.가치, 파라미터)   그렇지 않으면 코딱지 않다.데이터.유형 == "시간" 그리고나서 돌아가다 printDatavalue시간(코딱지 않다.데이터.가치, 파라미터)   그렇지 않으면 코딱지 않다.데이터.유형 == '아세틸화효소-아세틸화합물 그리고나서 돌아가다 printDatavalueEntity(코딱지 않다.데이터.가치, 파라미터)   그렇지 않으면 코딱지 않다.데이터.유형 == "단일 언어 텍스트" 그리고나서 돌아가다 printDatavalueMonualText(코딱지 않다.데이터.가치, 파라미터)   끝.  끝.  돌아가다 .키보드.스낵을 렌더링하다(코딱지 않다) 끝.  현지의 기능. get Qualifier Snak(주장하다, 한정자아이디)  -- "snak"는 Wikidata 용어로 입력된 키/값 쌍을 나타냅니다.  -- 클레임은 이 클레임의 주요 정보를 보유하는 주요 스낵으로 구성됩니다.  --아트리뷰트 스니크의 리스트와 참조 스니크의 리스트가 있습니다.  한다면 한정자아이디 그리고나서   -- 지정된 수식자를 키로 속성 snak을 검색합니다.   한다면 주장하다.수식자 그리고나서    현지의 한정자 = 주장하다.수식자[한정자아이디]    한다면 한정자 그리고나서 돌아가다 한정자[1] 끝.   끝.   돌아가다 제로, print Error(인쇄 오류)("오디오를 찾을 수 없습니다")  또 다른   --그렇지 않으면 메인 스낵을 반환합니다.   돌아가다 주장하다[1].메인음  끝. 끝.  현지의 기능. get Value Of Claim(가액 청구)(주장하다, 한정자아이디, 파라미터)  현지의 에러  현지의 코딱지 않다  코딱지 않다, 에러 = get Qualifier Snak(주장하다, 한정자아이디)  한다면 코딱지 않다 그리고나서   돌아가다 snak Value를 취득하다(코딱지 않다, 파라미터)  또 다른   돌아가다 제로, 에러  끝. 끝.  현지의 기능. 참조를 취득하다(, 주장하다)  현지의 결과 = ""  -- 모든 참조를 트래버스 합니다.  위해서 레퍼런스 에서 쌍들(주장하다.레퍼런스 또는 {}) 하다   현지의 레퍼런스   -- 현재 참조의 모든 부분을 통과합니다.   위해서 스니키, 스나카루 에서 순서쌍(주장하다.레퍼런스[레퍼런스].스니크 또는 {}, 주장하다.레퍼런스[레퍼런스]["스낵스 오더']) 하다    한다면 레퍼런스 그리고나서 레퍼런스 = 레퍼런스 .. ", " 또 다른 레퍼런스 = "" 끝.    -- 참조 부품의 속성 라벨을 출력합니다(예: P143의 경우 "imported from").    레퍼런스 = 레퍼런스 .. 스트링(.키보드.get Label(라벨)(스니키)) .. ": "    -- 이 참조 파트의 모든 값(예를 들어 참조된 클레임이 양쪽 사이트에서 Import된 경우 "독일어 위키백과" 및 "영어 위키백과")을 출력합니다.    위해서 스나크 = 1, #스나카루 하다     한다면 스나크 > 1 그리고나서 레퍼런스 = 레퍼런스 .. ", " 끝.     레퍼런스 = 레퍼런스 .. snak Value를 취득하다(스나카루[스나크])    끝.   끝.   한다면 레퍼런스 그리고나서 결과 = 결과 .. :확장 태그("ref", 레퍼런스) 끝.  끝.  돌아가다 결과 끝.  현지의 기능. 해석 입력()  현지의 qid = .args.qid 또는 .키보드.getEntityIdForCurrentPage() 또는 제로  한다면 qid 그리고. (#qid == 0) 그리고나서 qid = 제로 끝.  현지의 소유물아이디 = .본문.다듬다(.args[1] 또는 "")  현지의 input_parm = .본문.다듬다(.args[2] 또는 "")  한다면 input_parm ~= "페치_위키다타" 그리고나서   돌아가다 거짓의, input_parm, 제로, 제로  끝.  현지의 주장하다  한다면 qid 그리고. .키보드.entity Exists(엔티티 엑시스)(qid) 그리고. .키보드.get Best Statements(베스트 스테이트먼트)(qid, 소유물아이디)[1] 그리고나서   주장하다 = .키보드.get Best Statements(베스트 스테이트먼트)(qid, 소유물아이디)   한다면 것은 아니다. 주장하다 그리고나서    돌아가다 거짓의, "", 제로, 제로   끝.  또 다른   돌아가다 거짓의, "", 제로, 제로  끝.  돌아가다 진실의, 주장하다 끝. 현지의 기능. is Type(isType)(주장하다, 유형)  돌아가다 주장하다 그리고. 주장하다.메인음.스냅타이프 == "값" 그리고. 주장하다.메인음.데이터.유형 == 유형 끝. 현지의 기능. 가치의 취득(주장하다, 구분하다, 라벨 훅)   한다면 라벨 훅 == 제로 그리고나서   라벨 훅 = 기능. (q번호)    돌아가다 제로;   끝.  끝.  현지의 나가. = {}  한다면 주장하다[1] 그리고나서   현지의 i = 1   하는 동안에 주장하다[i] ~= 제로 하다    한다면 is Type(isType)(주장하다[i], '아세틸화효소-아세틸화합물) 그리고나서     현지의 q번호 = 'Q' .. 주장하다[i].메인음.데이터.가치["contract-id"]     현지의 시트링크 = .키보드.get Sitelink를 취득하다(q번호)     현지의 라벨. = 라벨 훅(q번호) 또는 .키보드.get Label(라벨)(q번호) 또는 q번호     한다면 시트링크 그리고나서      나가.[#나가. + 1] = "[[" .. 시트링크 .. " " .. 라벨. .. "]]"     또 다른      나가.[#나가. + 1] = "[:d:] .. q번호 .. " " .. 라벨. .. "]] <abbr title='" .. 18n["실패"]["로컬 문서를 찾을 수 없습니다."] .. "[*] </abbr>"     끝.    또 다른     나가.[#나가. + 1] = .키보드.스낵을 렌더링하다(주장하다[i].메인음)    끝.    i = i + 1   끝.  끝.  돌아가다 table.concat(나가., 구분하다) 끝.  ------------------------------------------------------------------------------ -- 모듈 글로벌 함수  한다면 디버깅 그리고나서  기능. p.검사I18n()   현지의  = 18n   위해서 _, 열쇠 에서 쌍들(.args) 하다    열쇠 = .본문.다듬다(열쇠)     = [열쇠]   끝.   돌아가다   끝. 끝.  기능. p.묘사()  현지의 언어 코드 = .args[1]  현지의 아이디 = .args[2]  -- 지정된 언어 또는 이 Wikipedia 사이트의 기본 언어로 된 Wikidata 엔티티에 대한 설명을 반환합니다.  돌아가다 .키보드.엔티티(아이디):getDescription(설명)(언어 코드 또는 위키.언어 코드) 끝.  기능. p.라벨 입력()  현지의 언어 코드 = .args[1]  현지의 아이디 = .args[2]  -- 지정된 언어 또는 이 위키피디아 사이트의 기본 언어로 된 Wikidata 엔티티의 반환 라벨  돌아가다 .키보드.엔티티(아이디):get Label(라벨)(언어 코드 또는 위키.언어 코드) 끝.  -- 이것은 하나의 값 또는 여러 개의 값이 존재하는 경우 쉼표로 구분된 목록을 얻기 위해 사용됩니다. p.가치의 취득 = 기능.()  현지의 디폴트 구분 = ", " -- **나중에 국제화**  현지의 구분하다 = .args.구분자 또는 ""  구분하다 = string.gsub(구분하다, '"', '')  한다면 #구분하다 == 0 그리고나서   구분하다 = 디폴트 구분  끝.  현지의 가세요, 주장하다 = 해석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 주장하다  끝.  돌아가다 가치의 취득(주장하다, 구분하다) 끝.  -- 위와 동일하지만, 사용 가능한 경우 레이블에 단축 이름 속성을 사용합니다. p.getValueShortName = 기능.()  현지의 가세요, 주장하다 = 해석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 주장하다  끝.  -- Wiki 링크된 값이 가능하면 링크로 출력되는 경우  현지의 기능. 라벨 훅 (q번호)   현지의 라벨.   현지의 i = 1   한다면 .키보드.entity Exists(엔티티 엑시스)(q번호) 그리고나서    한다면 .키보드.get Best Statements(베스트 스테이트먼트)(q번호, "P1813")[1] 그리고나서     하는 동안에 .키보드.get Best Statements(베스트 스테이트먼트)(q번호, "P1813")[i] ~= 제로 하다      한다면 .키보드.get Best Statements(베스트 스테이트먼트)(q번호, "P1813")[i].메인음.데이터.가치.언어 == "en" 그리고나서       라벨. = .키보드.get Best Statements(베스트 스테이트먼트)(q번호, "P1813")[i].메인음.데이터.가치.본문      끝.      i = i + 1     끝.    끝.   끝.   한다면 라벨. == 제로 또는 라벨. == "" 그리고나서 돌아가다 제로 끝.   돌아가다 라벨.  끝.  돌아가다 가치의 취득(주장하다, ", ", 라벨 훅); 끝.  -- 이것은 하나의 값 또는 여러 개의 값이 존재하는 경우 쉼표로 구분된 목록을 얻기 위해 사용됩니다. -- QID를 사용하여 임의의 엔트리에서 가져옵니다. -- 사용방법: {{#호출:Wikidata get Value FromID <ID> <프로퍼티> FETCH_WIKIDATA} -- 예:{{#제외:Wikidata get Value FromID Q151973 P26 FETCH_WIKIDATA} - '리처드 버튼'에서 '배우자'(P26) 값을 가져옵니다(Q151973) --사용은 삼가해 주세요.*비싼 콜입니다* p.값 취득원아이디 = 기능.()  현지의 아이템 아이디 = .본문.다듬다(.args[1] 또는 "")  현지의 소유물아이디 = .본문.다듬다(.args[2] 또는 "")  현지의 input_parm = .본문.다듬다(.args[3] 또는 "")  한다면 input_parm == "페치_위키다타" 그리고나서   현지의 주장하다   한다면 .args[1] 그리고. .키보드.entity Exists(엔티티 엑시스)(아이템 아이디) 그리고. .키보드.get Best Statements(베스트 스테이트먼트)(아이템 아이디, 소유물아이디)[1] 그리고나서    주장하다 = .키보드.get Best Statements(베스트 스테이트먼트)(아이템 아이디, 소유물아이디)   끝.   한다면 주장하다 그리고나서    돌아가다 가치의 취득(주장하다, ", ")   또 다른    돌아가다 ""   끝.  또 다른   돌아가다 input_parm  끝. 끝. 현지의 기능. get Qualifier(, 출력 훅)   현지의 소유물아이디 = .본문.다듬다(.args[1] 또는 "")  현지의 한정자아이디 = .본문.다듬다(.args[2] 또는 "")  현지의 input_parm = .본문.다듬다(.args[3] 또는 "")  한다면 input_parm == "페치_위키다타" 그리고나서   현지의 엔티티ID = .키보드.getEntityIdForCurrentPage()   한다면 .키보드.entity Exists(엔티티 엑시스)(엔티티ID) ~= 제로 그리고. .키보드.get Best Statements(베스트 스테이트먼트)(엔티티ID, 소유물아이디)[1] ~= 제로 그리고나서    현지의 나가. = {}    현지의 i = 1    하는 동안에 .키보드.get Best Statements(베스트 스테이트먼트)(엔티티ID, 소유물아이디)[i] ~= 제로 하다     위해서 k2, v2 에서 쌍들(.키보드.get Best Statements(베스트 스테이트먼트)(엔티티ID, 소유물아이디)[i].수식자[한정자아이디]) 하다      한다면 v2.스냅타이프 == '값' 그리고나서       나가.[#나가. + 1] = 출력 훅(v2);      끝.     끝.     i = i + 1    끝.    돌아가다 table.concat(나가., ", "), 진실의   또 다른    돌아가다 "", 거짓의   끝.  또 다른   돌아가다 input_parm, 거짓의  끝. 끝. p.get Qualifier Value = 기능.()  현지의 기능. 출력값(가치)   현지의 q번호 = 'Q' .. 가치.데이터.가치["contract-id"]   한다면 (.키보드.get Sitelink를 취득하다(q번호)) 그리고나서    돌아가다 "[[" .. .키보드.get Sitelink를 취득하다(q번호) .. "]]"   또 다른    돌아가다 "[:d:] .. q번호 .. " " ..q번호 .. "]] <abbr title='" .. 18n["실패"]["로컬 문서를 찾을 수 없습니다."] .. "[*] </abbr>"   끝.  끝.  돌아가다 (get Qualifier(, 출력값)) 끝.  -- 이것은 연결되지 않는 'male'(속성 p21)과 같은 값 및 천 개의 구분자가 없는 숫자를 얻기 위해 사용됩니다. p.취득 Raw Value = 기능.()  현지의 가세요, 주장하다 = 해석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 주장하다  끝.  현지의 결과 = {}  현지의 i = 1  하는 동안에 주장하다[i] ~= 제로 하다   -- number type: 1,000개의 구분자, 경계 및 단위를 삭제합니다.   한다면 is Type(isType)(주장하다[i], "실패") 그리고나서    결과[#결과 +1] = .스트링.서브(.키보드.스낵을 렌더링하다(주장하다[i].메인음), (%d), (%d)", "%1%2")    결과[#결과 +1] = .스트링.서브(.키보드.스낵을 렌더링하다(주장하다[i].메인음), (%d)±.*", "%1")   또 다른    결과[#결과 + 1] = .키보드.스낵을 렌더링하다(주장하다[i].메인음)   끝.   i = i + 1  끝.  돌아가다 table.concat(결과, ', ') 끝.  -- getRawValue에 의해 반환된 숫자 값의 단위 이름을 가져오는 데 사용됩니다. p.유닛을 취득하다 = 기능.()  현지의 가세요, 주장하다 = 해석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 주장하다  끝.  현지의 결과 = {}  현지의 i = 1  하는 동안에 주장하다[i] ~= 제로 하다   현지의 i = 1   한다면 is Type(isType)(주장하다[i], "실패") 그리고나서    결과[#결과 +1] = .스트링.후보선수(.스낵을 렌더링하다(주장하다[i].메인음), .스트링.발견하다(결과, " ")+1, -1)   또 다른    결과[#결과 + 1] = .스낵을 렌더링하다(주장하다[i].메인음)   끝.   i = i + 1  끝.  돌아가다 결과 끝.  -- getRawValue에서 반환된 수치와 함께 장치의 QID를 사용하기 위해 사용됩니다. p.get Unit ID(유닛ID = 기능.()  현지의 가세요, 주장하다 = 해석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 주장하다  끝.  현지의 결과  한다면 is Type(isType)(주장하다[1], "실패") 그리고나서   -- Wikidata에서 유닛 엔트리의 URL을 가져옵니다.   결과 = 주장하다[1].메인음.데이터.가치.구성 단위   -- "Q"에서 마지막 비트(QID)로 다시 입력합니다.   결과 = .스트링.후보선수(결과, .스트링.발견하다(결과, 'Q'), -1)  끝.  돌아가다 결과 끝.  p.get Raw Qualifier Value = 기능.()  현지의 기능. 출력 훅(가치)   한다면 가치.데이터.가치["contract-id"] 그리고나서    돌아가다 .키보드.get Label(라벨)('Q' .. 가치.데이터.가치["contract-id"])   또 다른    돌아가다 가치.데이터.가치   끝.  끝.  현지의 리트, 데이터 취득 = get Qualifier(, 출력 훅)  한다면 데이터 취득 그리고나서   리트 = string.uper(스트링.서브(리트, 1, 1)) .. 스트링.서브(리트, 2)  끝.  돌아가다 리트 끝.  -- 링크되지 않는 date_of_birth(P569) 등의 날짜 값을 취득할 때 사용합니다. -- 날짜와 시간은 ISO 8601 형식(일부)으로 저장됩니다. 현재 로컬 포맷 날짜(날짜, 정밀도, 시간대) 함수는 시간대를 처리하지 않습니다. --그래서 아래 formatDate 호출에 "Z"를 입력합니다. p.get Date Value(날짜 값) = 기능.()  현지의 date_format = .본문.다듬다(.args[3] 또는 18n["일시"]["기본 형식"])  현지의 date_addon = .본문.다듬다(.args[4] 또는 18n["일시"]["디폴트 애드온"])  현지의 가세요, 주장하다 = 해석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 주장하다  끝.  현지의 나가. = {}  현지의 i = 1  하는 동안에 주장하다[i] ~= 제로 하다   한다면 주장하다[i].메인음.데이터.유형 == '시간 그리고나서    현지의 타임스탬프 = 주장하다[i].메인음.데이터.가치.시간을    현지의 날짜 정밀도 = 주장하다[i].메인음.데이터.가치.정확    -- 1년은 다음과 같이 저장할 수 있습니다.+ 1872-00-00T00:00:00Z",    -- "+1872-01-01T00:00:00Z" 전날처럼 여기서 처리됩니다.    그리고 그것이 1871년의 마지막 날이기 때문에 그 해는 틀렸다.    -- 따라서 월 0, 일 0 타임스탬프를 1월 1일로 수정합니다.    타임스탬프 = 타임스탬프:서브("%-00%-00T", - 01-01T)    나가.[#나가. + 1] = parseDateFull(타임스탬프, 날짜 정밀도, date_format, date_addon)    i = i + 1   끝.  끝.  돌아가다 table.concat(나가., ", ") 끝. p.get Qualifier Date Value = 기능.()  현지의 date_format = .본문.다듬다(.args[4] 또는 18n["일시"]["기본 형식"])  현지의 date_addon = .본문.다듬다(.args[5] 또는 18n["일시"]["디폴트 애드온"])  현지의 기능. 출력 훅(가치)   현지의 타임스탬프 = 가치.데이터.가치.시간을   돌아가다 parseDateValue 값(타임스탬프, date_format, date_addon)  끝.  돌아가다 (get Qualifier(, 출력 훅)) 끝.  --이미지(P18), Gene Atlas 이미지(P692) 등 특정 속성을 가진 모든 이미지를 가져오기 위해 사용합니다. -- 파라미터는 속성입니다.ID 값 / FETCH_WIKIDATA / 0 구분자(기본값=스페이스) 크기(기본값=프레임 없음) -- 표준 wiki-markup [[File:선택 가능한 크기와 구분자(html)를 가진 각 이미지의 파일 이름 크기] -- 예: {{##filename:Wikidata getImages P18 FETCH_WIKIDATA}} -- 예: {{##filename:Wikidata getImages P18 FETCH_WIKIDATA <br> 250px} -- "Commons Media" 유형이 아닌 속성을 선택하면 빈 텍스트가 반환됩니다. p.이미지 가져오기 = 기능.()  현지의 세프 = .본문.다듬다(.args[3] 또는 " ")  현지의 imgsize를 하다 = .본문.다듬다(.args[4] 또는 "프레임 없음")  현지의 가세요, 주장하다 = 해석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 주장하다  끝.  한다면 (주장하다[1] 그리고. 주장하다[1].메인음.데이터형 == "Commons Media") 그리고나서   현지의 나가. = {}   현지의 i = 1   하는 동안에 주장하다[i] ~= 제로 하다    현지의 파일명 = 주장하다[i].메인음.데이터.가치    나가.[#나가. + 1] = "[파일:] .. 파일명 .. " " .. imgsize를 하다 .. "]]"    i = i + 1   끝.   돌아가다 table.concat(나가., 세프)  또 다른   돌아가다 ""  끝. 끝.  -- 이것은 'A01.1.00.005'(속성 P1323)와 같은 TA98(Termologia Anatomica 초판 1998) 값을 얻기 위해 사용됩니다. --이것들은 http://www.unifr.ch/ifaa/Public/EntryPage/TA98%20Tree/Entity%20TA98%20EN/01.1.00.005%20Entity%20TA98%20EN.htm에 링크됩니다. -- 새로운 mw를 사용합니다.직접 스낵을 사용하지 않고 Wikibase 호출을 실행하다 -- formatPropertyValues는 P1323 값이 ", "와 연결된 테이블을 반환하므로 반환 문자열을 작성하려면 테이블로 분할해야 합니다. p.취득하다 = 기능.()  현지의 entid = .키보드.getEntityIdForCurrentPage()  현지의 소품 = .키보드.엔티티(entid):format Property Values('P1323')  현지의 나가. = {}  현지의 t = {}  위해서 k, v 에서 쌍들(소품) 하다   한다면 k == '값' 그리고나서    t = .본문.분열되다( v, ", ")    위해서 k2, v2 에서 쌍들(t) 하다     나가.[#나가. + 1] = [http://www.unifr.ch/ifaa/Public/EntryPage/TA98%20Tree/Entity%20TA98%20EN/] .. 스트링.서브(v2, 2) .. %20 엔티티 %20TA98%20EN.htm" .. v2 .. "]"    끝.   끝.  끝.  현지의 리트 = table.concat(나가., "<br>")  한다면 #리트 == 0 그리고나서   리트 = "잘못된 TA"  끝.  돌아가다 리트 끝.  --[[ Wikidata에서 이미지 범례를 반환하는 데 사용됩니다. image는 속성 P18입니다. 이미지 범례는 속성 P2096입니다.  호출: {{#invoke:Wikidata get Image Legend <PARAMETER> lang=<ISO-639 코드> id=<QID >}}: 항목 QID(비용 호출)에서 "FETCH_WIKIDATA"와 동일한 경우를 제외하고 매개 변수를 반환합니다. 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.get Image Legend = 기능.()  -- 이름 있는 파라미터 ID를 찾습니다.이 ID가 공백일 경우 0으로 합니다.  현지의 아이디 = .args.아이디  한다면 아이디 그리고. (#아이디 == 0) 그리고나서   아이디 = 제로  끝.   -- 이름 있는 파라미터 lang을 찾습니다.  -- 2글자의 ISO-639 언어 코드를 포함해야 합니다.  -- 공백일 경우 로컬 Wiki 언어를 가져옵니다.  현지의 언어 = .args.언어  한다면 (것은 아니다. 언어) 또는 (#언어 < > 2) 그리고나서   언어 = .언어.get Content Language(get Content Language)().코드  끝.   -- first named 파라미터는 로컬파라미터입니다(지정된 경우).  현지의 input_parm = .본문.다듬다(.args[1] 또는 "")  한다면 input_parm == "페치_위키다타" 그리고나서   현지의 imgll   한다면 아이디 그리고. .키보드.entity Exists(엔티티 엑시스)(아이디) 그리고. .키보드.get Best Statements(베스트 스테이트먼트)(아이디, 'P18')[1] 그리고.    .키보드.get Best Statements(베스트 스테이트먼트)(아이디, 'P18')[1].메인음.데이터 그리고.    .키보드.get Best Statements(베스트 스테이트먼트)(아이디, 'P18')[1].순위 == "실패" 그리고나서 -- getBestStatements 에서는 우선값이 있는 경우 우선 순위가 매겨집니다.    imgll = .키보드.get Best Statements(베스트 스테이트먼트)(아이디, 'P18')[1].메인음.데이터.가치   그렇지 않으면 아이디 그리고. .키보드.entity Exists(엔티티 엑시스)(아이디) 그리고. .키보드.get Best Statements(베스트 스테이트먼트)(아이디, 'P18')[1] 그리고.     .키보드.get Best Statements(베스트 스테이트먼트)(아이디, 'P18')[1].메인음.데이터 그리고나서 -- best 스테이트먼트에서 출력되는 정상 및 우선 순위 값만    imgll = .키보드.get Best Statements(베스트 스테이트먼트)(아이디, 'P18')[1].메인음.데이터.가치   끝.      돌아가다 imgll  또 다른   돌아가다 input_parm  끝. 끝.  -- 이것은 여러 개의 값이 존재하는 경우 쉼표로 구분된 목록으로 속성의 모든 값의 QID를 가져오기 위해 사용됩니다. -- 사용방법: {{# 호출:Wikidata getPropertyID <프로퍼티>ID > FETCH_WIKIDATA}} -- 사용방법: {{# 호출:Wikidata getPropertyID <프로퍼티>ID > <Input Parameter> qid = <QID >}}:  p.getProperty아이디 = 기능.()  현지의 가세요, 청구하다 = 해석 입력()  한다면 것은 아니다. 가세요 그리고나서   돌아가다 청구하다  끝.  -- Wiki 링크된 값이 테이블 내의 QID를 수집하는 경우  한다면 (청구하다[1] 그리고. 청구하다[1].메인음.스냅타이프 == "값" 그리고. 청구하다[1].메인음.데이터.유형 == '아세틸화효소-아세틸화합물) 그리고나서   현지의 나가. = {}   현지의 i = 1   하는 동안에 주장하다[i] ~= 제로 하다    나가.[#나가. + 1] = 'Q' .. 주장하다[i].메인음.데이터.가치["contract-id"]    i = i + 1   끝.   돌아가다 table.concat(나가., ", ")  또 다른   -- Wikibase-displayid가 아니므로 빈칸으로 되돌립니다.   돌아가다 ""  끝. 끝.  -- 현재 페이지의 페이지 ID(Q...)를 반환하거나 Wikidata에 연결되지 않은 페이지가 없습니다. 기능. p.페이지 ID()  돌아가다 .키보드.getEntityIdForCurrentPage() 끝.  기능. p.주장하다()  현지의 소유물 = .args[1] 또는 ""  현지의 아이디 = .args["id"] 또는 .키보드.getEntityIdForCurrentPage()  현지의 한정자아이디 = .args["실패"]  현지의 파라미터 = .args["파라미터"]  현지의 목록. = .args[리스트]  현지의 레퍼런스 = .args["참고 자료"]  현지의 샤워기 = .args["드라이브러"]  현지의 체납 = .args["디폴트"]  한다면 체납 그리고나서 샤워기 = 제로 끝.   -- Wikidata 엔티티를 확인합니다.    한다면 것은 아니다. .키보드.entity Exists(엔티티 엑시스)(아이디) 그리고나서   한다면 샤워기 그리고나서 돌아가다 print Error(인쇄 오류)("오디오를 찾을 수 없습니다") 또 다른 돌아가다 체납 끝.  끝.  -- 지정된 속성을 만족시키는 첫 번째 클레임을 가져옵니다.  현지의 주장하다 = .키보드.get Best Statements(베스트 스테이트먼트)(아이디, 소유물) 또는 제로  한다면 것은 아니다. 주장하다 또는 것은 아니다. 주장하다[1] 그리고나서   한다면 샤워기 그리고나서 돌아가다 print Error(인쇄 오류)("오디오를 찾을 수 없습니다") 또 다른 돌아가다 체납 끝.  끝.   -- 정렬할 필요가 없습니다.최고의 스테이트먼트는 우선 순위를 매긴다.   현지의 결과  현지의 에러  현지의 i = 1  한다면 목록. 그리고나서   현지의 가치   -- 모든 요소에 대해 반복하여 값을 반환합니다(존재하는 경우).   결과 = {}   위해서 idx 에서 쌍들(주장하다) 하다    현지의 주장하다 = 주장하다[i]    가치, 에러 = get Value Of Claim(가액 청구)(주장하다, 한정자아이디, 파라미터)    한다면 것은 아니다. 가치 그리고. 샤워기 그리고나서 가치 = 에러 끝.    한다면 가치 그리고. 레퍼런스 그리고나서 가치 = 가치 .. 참조를 취득하다(, 주장하다) 끝.    결과[#결과 + 1] = 가치    i = i + 1   끝.   결과 = table.concat(결과, 목록.)  또 다른   -- 첫 번째 요소를 반환합니다.   현지의 주장하다 = 주장하다[i]   결과, 에러 = get Value Of Claim(가액 청구)(주장하다, 한정자아이디, 파라미터)   한다면 결과 그리고. 레퍼런스 그리고나서 결과 = 결과 .. 참조를 취득하다(, 주장하다) 끝.  끝.   한다면 결과 그리고나서 돌아가다 결과 또 다른   한다면 샤워기 그리고나서 돌아가다 에러 또 다른 돌아가다 체납 끝.  끝. 끝.  -- 엔티티 오브젝트를 조사합니다. 기능. p.보기()  현지의 f = (.args[1] 또는 .args.아이디) 그리고.  또는 :부모 취득()  현지의 아이디 = f.args.아이디  한다면 아이디 그리고. (#아이디 == 0) 그리고나서   아이디 = 제로  끝.  현지의 데이터. = .키보드.엔티티(아이디)  한다면 것은 아니다. 아이디 또는 것은 아니다. .키보드.entity Exists(엔티티 엑시스)(아이디) 그리고나서   돌아가다 제로  끝.   현지의 i = 1  하는 동안에 진실의 하다   현지의 색인 = f.args[i]   한다면 것은 아니다. 색인 그리고나서    한다면 유형(데이터.) == "테이블" 그리고나서     돌아가다 .본문.json Encode(입력 코드)(데이터., .본문.JSON_PRESERVE_KEYS + .본문.JSON_예쁘다)    또 다른     돌아가다 스트링(데이터.)    끝.   끝.    데이터. = 데이터.[색인] 또는 데이터.[톤수(색인)]   한다면 것은 아니다. 데이터. 그리고나서    돌아가다   끝.    i = i + 1  끝. 끝.  -- 특정 Wiki 사이트 링크 취득 --qid가 제공되지 않은 경우 현재 항목의 sitelink를 가져옵니다. 기능. p.get Site Link()  현지의 qid = .args.qid  한다면 qid == "" 그리고나서 qid = 제로 끝.  현지의 f = .본문.다듬다( .args[1] 또는 "")  한다면 것은 아니다. quid 또는 것은 아니다. .키보드.entity Exists(엔티티 엑시스)(qid) 그리고나서   돌아가다  끝.  현지의 링크 = .키보드.get Sitelink를 취득하다( f )  한다면 것은 아니다. 링크 그리고나서   돌아가다  끝.  돌아가다 링크 끝.  기능. p.버리다()  현지의 f = (.args[1] 또는 .args.아이디) 그리고.  또는 :부모 취득()  현지의 데이터. = .키보드.엔티티(f.args.아이디)  한다면 것은 아니다. 데이터. 그리고나서   돌아가다 18n.경고 덤프  끝.   현지의 i = 1  하는 동안에 진실의 하다   현지의 색인 = f.args[i]   한다면 것은 아니다. 색인 그리고나서    돌아가다 "<pre>"...덤프 오브젝트(데이터.).."</pre>".. 18n.경고 덤프   끝.    데이터. = 데이터.[색인] 또는 데이터.[톤수(색인)]   한다면 것은 아니다. 데이터. 그리고나서    돌아가다 18n.경고 덤프   끝.    i = i + 1  끝. 끝.  돌아가다 p