TABLE태그안의 텍스트 위치 일정하게 뒤에 배치해서 오탈자 채점하도록 수정

This commit is contained in:
2025-02-06 14:48:54 +09:00
parent 893517392b
commit e229a8eaef
7 changed files with 151 additions and 146 deletions

View File

@@ -315,8 +315,13 @@ class XMLScorer:
root_origin = tree_origin.getroot()
# xpath로 바이너리 부분추출
input_text = root.xpath('//CHAR//text()[not(ancestor::HEADER)]')
input_text_origin = root_origin.xpath('//CHAR//text()[not(ancestor::HEADER)]')
input_text = root.xpath('//CHAR//text()[not(ancestor::HEADER) and not(ancestor::TABLE)]')
table_text = root.xpath('//TABLE//CHAR//text()')
input_text += table_text
input_text_origin = root_origin.xpath('//CHAR//text()[not(ancestor::HEADER) and not(ancestor::TABLE)]')
talbe_text_origin = root_origin.xpath('//TABLE//CHAR//text()')
input_text_origin += talbe_text_origin
# 각 요소에서 공백 제거
input_text = [text.replace(' ', '') for text in input_text]

View File

@@ -29,101 +29,101 @@
"1-1":{
"path": "//TEXTART[@Text='{searchValue}']/TEXTARTSHAPE/@FontName",
"path2": null,
"searchValue": "전통주페어링특강안내",
"value": "휴먼옛체",
"searchValue": "거창에살으리랏다",
"value": "견고딕",
"points": 2,
"category": "글맵시",
"item":"문구 (전통주페어링특강안내)/① 글씨체 : 휴먼옛체"
"item":"문구 (거창에살으리랏다)/① 글씨체 : 견고딕"
},
"1-2": {
"path": "//TEXTART[@Text='{searchValue}']/descendant::WINDOWBRUSH/@FaceColor",
"path2": null,
"searchValue": "전통주페어링특강안내",
"value": "7246108",
"searchValue": "거창에살으리랏다",
"value": "759884",
"points": 2,
"category": "글맵시",
"item":"문구 (전통주페어링특강안내)/② 채우기 : 색상(RGB:28,145,110)"
"item":"문구 (거창에살으리랏다)/② 채우기 : 색상(RGB:76,152,11)"
},
"1-3": {
"path": "//TEXTART[@Text='{searchValue}']/SHAPEOBJECT/SIZE/@Width",
"path2": null,
"searchValue": "전통주페어링특강안내",
"value": 22677,
"searchValue": "거창에살으리랏다",
"value": 25512,
"points": 2,
"category": "글맵시",
"item":"문구 (전통주페어링특강안내)/③ 크기 : 너비(80mm)"
"item":"문구 (거창에살으리랏다)/③ 크기 : 너비(90mm)"
},
"1-4": {
"path": "//TEXTART[@Text='{searchValue}']/SHAPEOBJECT/SIZE/@Height",
"path2": null,
"searchValue": "전통주페어링특강안내",
"searchValue": "거창에살으리랏다",
"value": 5669,
"points": 2,
"category": "글맵시",
"item":"문구 (전통주페어링특강안내)/④ 크기 : 높이(20mm)"
"item":"문구 (거창에살으리랏다)/④ 크기 : 높이(20mm)"
},
"1-5": {
"path": "//TEXTART[@Text='{searchValue}']/SHAPEOBJECT/POSITION/@TreatAsChar",
"path2": null,
"searchValue": "전통주페어링특강안내",
"searchValue": "거창에살으리랏다",
"value": "true",
"points": 2,
"category": "글맵시",
"item":"문구 (전통주페어링특강안내)/⑤ 위치 (글자처럼 취급)"
"item":"문구 (거창에살으리랏다)/⑤ 위치 (글자처럼 취급)"
},
"1-6": {
"path": "//PARASHAPE[@Id=//TEXTART[@Text='{searchValue}']/ancestor::P/@ParaShape]/@Align",
"path2": null,
"searchValue": "전통주페어링특강안내",
"searchValue": "거창에살으리랏다",
"value": "Center",
"points": 2,
"category": "글맵시",
"item":"문구 (전통주페어링특강안내)/⑥ 정렬 (가운데 정렬)"
"item":"문구 (거창에살으리랏다)/⑥ 정렬 (가운데 정렬)"
},
"1-7":{
"path": "",
"path2": null,
"searchValue": "전통주페어링특강안내",
"searchValue": "거창에살으리랏다",
"value": null,
"points": 2,
"category": "글맵시",
"item":"문구 (전통주페어링특강안내)/⑦ 글맵시모양 (육안확인)"
"item":"문구 (거창에살으리랏다)/⑦ 글맵시모양 (육안확인)"
},
"1-8": {
"path": "boolean(//CHARSHAPE[@Id=//CHAR[contains(text()[1],'{searchValue}')]/parent::TEXT/@CharShape][BOLD])",
"path2": null,
"searchValue": "혼술, 홈술, 집술",
"searchValue": "중위연령, 고령화지수, 출산율",
"value": true,
"points": 2,
"category": "글꼴속성",
"item":"문구 (혼술, 홈술, 집술)/진하게"
"item":"문구 (중위연령, 고령화지수, 출산율)/진하게"
},
"1-9": {
"path": "boolean(//CHARSHAPE[@Id=//CHAR[contains(text()[1],'{searchValue}')]/parent::TEXT/@CharShape][UNDERLINE])",
"path2": null,
"searchValue": "혼술, 홈술, 집술",
"searchValue": "중위연령, 고령화지수, 출산율",
"value": true,
"points": 2,
"category": "글꼴속성",
"item":"문구 (혼술, 홈술, 집술)/밑줄"
"item":"문구 (중위연령, 고령화지수, 출산율)/밑줄"
},
"1-10": {
"path": "count(//CHAR[contains(text(),'')]) + count(//CHAR[contains(text(),'※')])",
"path2": "string-length(//CHAR[contains(text(),'')]) - string-length(translate(//CHAR[contains(text(),'')], '', '')) + string-length(//CHAR[contains(text(),'※')]) - string-length(translate(//CHAR[contains(text(),'※')], '※', ''))",
"path": "count(//CHAR[contains(text(),'')]) + count(//CHAR[contains(text(),'※')])",
"path2": "string-length(//CHAR[contains(text(),'')]) - string-length(translate(//CHAR[contains(text(),'')], '', '')) + string-length(//CHAR[contains(text(),'※')]) - string-length(translate(//CHAR[contains(text(),'※')], '※', ''))",
"searchValue": null,
"value": 3.0,
"points": 3,
"category": "특수문자",
"item":"① , ② , ③ ※"
"item":"① , ② , ③ ※"
},
"1-11": {
"path": "//FONTFACE[@Lang='Hangul']/FONT[@Id=//CHARSHAPE[@Id=//CHAR[contains(text(),'{searchValue}')]/parent::TEXT/@CharShape]/FONTID/@Hangul]/@Name",
"path2": null,
"searchValue": "행사안내",
"value": "한양중고딕",
"value": "굴림",
"points": 1,
"category": "글꼴 속성",
"item":"문구 (행사안내)/① 글씨체 (중고딕)"
"item":"문구 (행사안내)/① 글씨체 (굴림)"
},
"1-12": {
"path": "//PARASHAPE[@Id=//CHAR[contains(text(),'{searchValue}')]/ancestor::P/@ParaShape]/@Align",
@@ -135,22 +135,22 @@
"item":"문구 (행사안내)/② 정렬 (가운데 정렬)"
},
"1-13": {
"path": "boolean(//CHARSHAPE[@Id=//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape][BOLD])",
"path2": null,
"searchValue": "2025년 2월 2일(일) 18:00까지 온라인으로 등록",
"value": true,
"points": 1,
"category": "글꼴 속성",
"item":"문구 (2025년 2월 2일(일) 18:00까지 온라인으로 등록)/① 진하게"
},
"1-14": {
"path": "boolean(//CHARSHAPE[@Id=//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape][ITALIC])",
"path2": null,
"searchValue": "2025년 2월 2일(일) 18:00까지 온라인으로 등록",
"searchValue": "2025.01.31.(금) 18:00까지 온라인으로 등록(http://www.ihd.or.kr)",
"value": true,
"points": 1,
"category": "글꼴 속성",
"item":"문구 (2025년 2월 2일(일) 18:00까지 온라인으로 등록)/ 기울임"
"item":"문구 (2025.01.31.(금) 18:00까지 온라인으로 등록(http://www.ihd.or.kr))/ 기울임"
},
"1-14": {
"path": "boolean(//CHARSHAPE[@Id=//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape][UNDERLINE])",
"path2": null,
"searchValue": "2025.01.31.(금) 18:00까지 온라인으로 등록(http://www.ihd.or.kr)",
"value": true,
"points": 1,
"category": "글꼴 속성",
"item":"문구 (2025.01.31.(금) 18:00까지 온라인으로 등록(http://www.ihd.or.kr))/② 밑줄"
},
"1-15": {
"path": "boolean(//PARASHAPE[@Id=//CHAR[contains(text(),'{searchValue}')]/ancestor::P/following-sibling::P[1]/@ParaShape]/PARAMARGIN/@Left=2000 and //PARASHAPE[@Id=//CHAR[contains(text(),'{searchValue}')]/ancestor::P/following-sibling::P[1]/@ParaShape]/PARAMARGIN/@Indent=-2400)",
@@ -164,56 +164,56 @@
"1-16": {
"path": "//CHARSHAPE[@Id=//CHAR[contains(text(),'{searchValue}')]/parent::TEXT/@CharShape]/@Height",
"path2": null,
"searchValue": "2025. 1. 15.",
"value": 1300,
"searchValue": "2025. 01. 18.",
"value": 1400,
"points": 2,
"category": "글꼴 속성",
"item":"문구 (2025. 1. 15.)/① 크기 (13pt)"
"item":"문구 (2025. 01. 18.)/① 크기 (14pt)"
},
"1-17": {
"path": "//PARASHAPE[@Id=//CHAR[contains(text(),'{searchValue}')]/ancestor::P/@ParaShape]/@Align",
"path2": null,
"searchValue": "2025. 1. 15.",
"searchValue": "2025. 01. 18.",
"value": "Center",
"points": 1,
"category": "글꼴 속성",
"item":"문구 (2025. 1. 15.)/② 정렬 (가운데 정렬)"
"item":"문구 (2025. 01. 18.)/② 정렬 (가운데 정렬)"
},
"1-18": {
"path": "//FONTFACE[@Lang='Hangul']/FONT[@Id=//CHARSHAPE[@Id=//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape]/FONTID/@Hangul]/@Name",
"path2": null,
"searchValue": "대한민국전통주살리기협회",
"value": "궁서체",
"searchValue": "거창군청",
"value": "휴먼옛체",
"points": 2,
"category": "글꼴 속성",
"item":"문구 (대한민국전통주살리기협회)/① 글씨체 (궁서체)"
"item":"문구 (거창군청)/① 글씨체 (휴먼옛체)"
},
"1-19": {
"path": "//CHARSHAPE[@Id=//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape]/@Height",
"path2": null,
"searchValue": "대한민국전통주살리기협회",
"searchValue": "거창군청",
"value": 2700,
"points": 2,
"category": "글꼴 속성",
"item":"문구 (대한민국전통주살리기협회)/② 크기 (27pt)"
"item":"문구 (거창군청)/② 크기 (27pt)"
},
"1-20": {
"path": "//PARASHAPE[@Id=//CHAR[text()='{searchValue}']/ancestor::P/@ParaShape]/@Align",
"path2": null,
"searchValue": "대한민국전통주살리기협회",
"searchValue": "거창군청",
"value": "Center",
"points": 2,
"category": "글꼴 속성",
"item":"문구 (대한민국전통주살리기협회)/정렬 (가운데 정렬)"
"item":"문구 (거창군청)/정렬 (가운데 정렬)"
},
"1-21": {
"path": "//FONTFACE[@Lang='Hangul']/FONT[@Id=//CHARSHAPE[@Id=//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape]/FONTID/@Hangul]/@Name",
"path2": null,
"searchValue": "DIAT",
"value": "굴림",
"value": "궁서",
"points": 2,
"category": "머리말",
"item":"문구 (DIAT)/① 글꼴 (굴림)"
"item":"문구 (DIAT)/① 글꼴 (궁서)"
},
"1-22": {
"path": "//CHARSHAPE[@Id=//SECTION[1]//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape]/@Height",
@@ -261,7 +261,7 @@
"item": "이중 실선, 머리말 포함"
},
"2-02":{
"path":"count(//SECTION)>1 or (//P/@PageBreak='true')",
"path":"count(//SECTION)>1",
"path2": null,
"searchValue": null,
"value":true,
@@ -281,92 +281,92 @@
"2-04":{
"path":"//RECTANGLE//CHAR[text()='{searchValue}']/ancestor::RECTANGLE/SHAPEOBJECT/SIZE/@Width",
"path2": null,
"searchValue": "한국의 전통주",
"value":14173,
"searchValue": "인구절벽",
"value":18425,
"points": 1,
"category": "글상자",
"item": "문구 (한국의 전통주)/① 크기-너비 (50mm)"
"item": "문구 (인구절벽)/① 크기-너비 (65mm)"
},
"2-05":{
"path":"//RECTANGLE//CHAR[text()='{searchValue}']/ancestor::RECTANGLE/SHAPEOBJECT/SIZE/@Height",
"path2": null,
"searchValue": "한국의 전통주",
"searchValue": "인구절벽",
"value":3402,
"points": 1,
"category": "글상자",
"item": "문구 (한국의 전통주)/② 크기-높이 (12mm)"
"item": "문구 (인구절벽)/② 크기-높이 (12mm)"
},
"2-06":{
"path":"//RECTANGLE//CHAR[text()='{searchValue}']/ancestor::RECTANGLE/descendant::LINESHAPE/@Style",
"path2": null,
"searchValue": "한국의 전통주",
"searchValue": "인구절벽",
"value":"DoubleSlim",
"points": 2,
"category": "글상자",
"item": "문구 (한국의 전통주)/③ 테두리 : 이중 실선(1.00mm)"
"item": "문구 (인구절벽)/③ 테두리 : 이중 실선(1.00mm)"
},
"2-07":{
"path":"//RECTANGLE//CHAR[text()='{searchValue}']/ancestor::RECTANGLE/@Ratio>0",
"path":"//RECTANGLE//CHAR[text()='{searchValue}']/ancestor::RECTANGLE/@Ratio",
"path2": null,
"searchValue": "한국의 전통주",
"value":true,
"searchValue": "인구절벽",
"value": 50,
"points": 1,
"category": "글상자",
"item": "문구 (한국의 전통주)/④ 글상자 모서리 (둥근 모양)"
"item": "문구 (인구절벽)/④ ④ 글상자 모서리 (반원)"
},
"2-08":{
"path":"//RECTANGLE//CHAR[text()='{searchValue}']/ancestor::RECTANGLE/descendant::WINDOWBRUSH/@FaceColor",
"path2": null,
"searchValue": "한국의 전통주",
"value":"9537333",
"searchValue": "인구절벽",
"value":"57825",
"points": 2,
"category": "글상자",
"item": "문구 (한국의 전통주)/⑤ 채우기 : 색상(RGB:53,135,145)"
"item": "문구 (인구절벽)/⑤ 채우기 : 색상(RGB:225,225,0)"
},
"2-09":{
"path":"//RECTANGLE//CHAR[text()='{searchValue}']/ancestor::RECTANGLE/SHAPEOBJECT/POSITION/@TreatAsChar",
"path2": null,
"searchValue": "한국의 전통주",
"searchValue": "인구절벽",
"value":"true",
"points": 1,
"category": "글상자",
"item": "문구 (한국의 전통주)/⑥ 글상자 위치 (글자처럼 취급)"
"item": "문구 (인구절벽)/⑥ 글상자 위치 (글자처럼 취급)"
},
"2-10":{
"path":"//PARASHAPE[@Id=//RECTANGLE//CHAR[text()='{searchValue}']/ancestor::P[last()]/@ParaShape]/@Align",
"path2": null,
"searchValue": "한국의 전통주",
"searchValue": "인구절벽",
"value": "Center",
"points": 1,
"category": "글상자",
"item": "문구 (한국의 전통주)/⑦ 글상자 정렬 (가운데 정렬)"
"item": "문구 (인구절벽)/⑦ 글상자 정렬 (가운데 정렬)"
},
"2-11":{
"path":"//FONTFACE[@Lang='Hangul']/FONT[@Id=//CHARSHAPE[@Id=//RECTANGLE//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape]/FONTID/@Hangul]/@Name",
"path2": null,
"searchValue": "한국의 전통주",
"value":"궁서체",
"searchValue": "인구절벽",
"value":"휴먼옛체",
"points": 1,
"category": "글상자",
"item": "문구 (한국의 전통주)/⑧ 글씨체 (궁서체)"
"item": "문구 (인구절벽)/⑧ 글씨체 (휴먼옛체)"
},
"2-12":{
"path":"boolean(//CHARSHAPE[@Id=//RECTANGLE//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape]/@Height='2000')",
"path2": null,
"searchValue": "한국의 전통주",
"searchValue": "인구절벽",
"value":true,
"points": 1,
"category": "글상자",
"item": "문구 (한국의 전통주)/⑨ 글씨크기 (20pt)"
"item": "문구 (인구절벽)/⑨ 글씨크기 (20pt)"
},
"2-13":{
"path":"//PARASHAPE[@Id=//RECTANGLE//CHAR[text()='{searchValue}']/ancestor::P[1]/@ParaShape]/@Align",
"path2": null,
"searchValue": "한국의 전통주",
"searchValue": "인구절벽",
"value":"Center",
"points": 1,
"category": "글상자",
"item": "문구 (한국의 전통주)/⑩ 정렬 (가운데 정렬)"
"item": "문구 (인구절벽)/⑩ 정렬 (가운데 정렬)"
},
"2-14":{
"path":"boolean(//PICTURE/descendant::SHAPECOMMENT[contains(text(),'{searchValue}')])",
@@ -375,13 +375,13 @@
"value":true,
"points": 2,
"category": "그림삽입",
"item": "① 파일명 \"그림B.jpg\" 삽입"
"item": "① 파일명 \"그림C.jpg\" 삽입"
},
"2-15":{
"path":"//IMAGE[@BinItem=//BINITEM[@Format='JPG']/@BinData]/preceding-sibling::SHAPEOBJECT/SIZE/@Width",
"path2": null,
"searchValue": null,
"value":8503,
"value":8504,
"points": 2,
"category": "그림삽입",
"item": "② 크기-너비 (30mm)"
@@ -390,7 +390,7 @@
"path":"//IMAGE[@BinItem=//BINITEM[@Format='JPG']/@BinData]/preceding-sibling::SHAPEOBJECT/SIZE/@Height",
"path2": null,
"searchValue": null,
"value":8503,
"value":8504,
"points": 2,
"category": "그림삽입",
"item": "③ 크기-높이 (30mm)"
@@ -416,155 +416,155 @@
"2-19":{
"path":"//FONTFACE[@Lang='Hangul']/FONT[@Id=//CHARSHAPE[@Id=//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape]/FONTID/@Hangul]/@Name",
"path2": null,
"searchValue": "1. 한국 전통주",
"value":"돋움",
"searchValue": "1. 인구절벽이란?",
"value":"한양중고딕",
"points": 1,
"category": "속성",
"item": "문구① (1. 한국 전통주)/① 글씨체 (돋움)"
"item": "문구① (1. 인구절벽이란?)/① 글씨체 (한양중고딕)"
},
"2-20":{
"path":"//CHARSHAPE[@Id=//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape]/@Height",
"path2": null,
"searchValue": "1. 한국 전통주",
"searchValue": "1. 인구절벽이란?",
"value":1200,
"points": 1,
"category": "속성",
"item": "문구① (1. 한국 전통주)/② 크기 (12pt)"
"item": "문구① (1. 인구절벽이란?)/② 크기 (12pt)"
},
"2-21":{
"path":"boolean(//CHARSHAPE[@Id=//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape]/BOLD)",
"path2": null,
"searchValue": "1. 한국 전통주",
"searchValue": "1. 인구절벽이란?",
"value":true,
"points": 1,
"category": "속성",
"item": "문구① (1. 한국 전통주)/③ 진하게"
"item": "문구① (1. 인구절벽이란?)/③ 진하게"
},
"2-22":{
"path":"//FONTFACE[@Lang='Hangul']/FONT[@Id=//CHARSHAPE[@Id=//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape]/FONTID/@Hangul]/@Name",
"path2": null,
"searchValue": "2. 패러다임 바뀐 음주 문화",
"value":"돋움",
"searchValue": "2. 인구절벽 대응책",
"value":"한양중고딕",
"points": 1,
"category": "속성",
"item": "문구② (2. 패러다임 바뀐 음주 문화)/① 글씨체 (돋움)"
"item": "문구② (2. 인구절벽 대응책)/① 글씨체 (한양중고딕)"
},
"2-23":{
"path":"//CHARSHAPE[@Id=//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape]/@Height",
"path2": null,
"searchValue": "2. 패러다임 바뀐 음주 문화",
"searchValue": "2. 인구절벽 대응책",
"value":1200,
"points": 1,
"category": "속성",
"item": "문구② (2. 패러다임 바뀐 음주 문화)/② 크기 (12pt)"
"item": "문구② (2. 인구절벽 대응책)/② 크기 (12pt)"
},
"2-24":{
"path":"boolean(//CHARSHAPE[@Id=//CHAR[text()='{searchValue}']/parent::TEXT/@CharShape]/BOLD)",
"path2": null,
"searchValue": "2. 패러다임 바뀐 음주 문화",
"searchValue": "2. 인구절벽 대응책",
"value":true,
"points": 1,
"category": "속성",
"item": "문구② (2. 패러다임 바뀐 음주 문화)/③ 진하게"
"item": "문구② (2. 인구절벽 대응책)/③ 진하게"
},
"2-25":{
"path": "boolean(//CHAR[contains(text(),'MZ세대')]/following-sibling::FOOTNOTE/descendant::CHAR[contains(text(),'밀레니얼 세대와 Z세대를 통틀어 지칭하는 신조어')])",
"path2": "boolean(//CHAR[substring(., string-length(.) - string-length('MZ세대') + 1) = 'MZ세대']/following-sibling::FOOTNOTE/descendant::CHAR[contains(text(),'밀레니얼 세대와 Z세대를 통틀어 지칭하는 신조어')])",
"path":"boolean(//CHAR[contains(text(),'생산가능인구')]/ancestor::TEXT/FOOTNOTE/descendant::CHAR[contains(text(),'전체 인구가 늘더라도 생산가능인구가 감소한다면 생산가능인구가 짊어져야 하는 비용은 증가한다')])",
"path2": "boolean(//CHAR[substring(., string-length(.) - string-length('생산가능인구') + 1) = '생산가능인구']/following-sibling::FOOTNOTE/descendant::CHAR[contains(text(),'전체 인구가 늘더라도 생산가능인구가 감소한다면 생산가능인구가 짊어져야 하는 비용은 증가한다')])",
"searchValue": null,
"value":true,
"points": 3,
"category": "각주",
"item": "문구 (MZ세대)/① 문구입력"
"item": "문구 (생산가능인구)/① 문구입력"
},
"2-26":{
"path":"//FONTFACE[@Lang='Hangul']/FONT[@Id=//CHARSHAPE[@Id=//CHAR[contains(text(),'{searchValue}')]/parent::TEXT/@CharShape]/FONTID/@Hangul]/@Name",
"path2": null,
"searchValue": "밀레니얼 세대와 Z세대를 통틀어 지칭하는 신조어",
"value": "굴림",
"searchValue": "전체 인구가 늘더라도 생산가능인구가 감소한다면 생산가능인구가 짊어져야 하는 비용은 증가한다.",
"value": "돋움",
"points": 2,
"category": "",
"item": "문구 (MZ세대)/② 글씨체 (굴림)"
"category": "각주",
"item": "문구 (생산가능인구)/② 글씨체 (돋움)"
},
"2-27":{
"path":"//CHARSHAPE[@Id=//CHAR[contains(text(),'{searchValue}')]/parent::TEXT/@CharShape]/@Height",
"path2": null,
"searchValue": "밀레니얼 세대와 Z세대를 통틀어 지칭하는 신조어",
"searchValue": "전체 인구가 늘더라도 생산가능인구가 감소한다면 생산가능인구가 짊어져야 하는 비용은 증가한다.",
"value":900,
"points": 2,
"category": "",
"item": "문구 (MZ세대)/③ 크기 (9pt)"
"category": "각주",
"item": "문구 (생산가능인구)/③ 크기 (9pt)"
},
"2-28":{
"path":"(count(//CHAR[contains(text(),'양조')][contains(text(),'釀造')])+count(//CHAR[contains(text(),'노동자')][contains(text(),'勞動者')])+count(//CHAR[contains(text(),'문인')][contains(text(),'文人')])+count(//CHAR[contains(text(),'백주')][contains(text(),'白酒')])+count(//CHAR[contains(text(),'질적')][contains(text(),'質的')]))*2",
"path":"(count(//CHAR[contains(text(),'이론')][contains(text(),'理論')])+count(//CHAR[contains(text(),'분포')][contains(text(),'分布')])+count(//CHAR[contains(text(),'확산')][contains(text(),'擴散')])+count(//CHAR[contains(text(),'변화')][contains(text(),'變化')])+count(//CHAR[contains(text(),'확대')][contains(text(),'擴大')]))*2",
"path2": null,
"searchValue": null,
"value": 10,
"points": 10,
"category": "한자",
"item": "① 양조(釀造), ② 노동자(勞動者), ③ 문인(文人), ④ 백주(白酒), ⑤ 질적(質的)"
"item": "① 이론(理論), ② 분포(分布), ③ 확산(擴散), ④ 변화(變化), ⑤ 확대(擴大)"
},
"2-29":{
"path":"boolean(//CHAR[contains(translate(text(), ' ', ''),'에도막걸')])",
"path":"boolean(//CHAR[contains(translate(text(), ' ', ''),'취업기회')])",
"path2": null,
"searchValue": null,
"value":true,
"points": 2,
"category": "편집",
"item": "문구 (…문인(文人)들의 문집에토 막걸리로…)/\"\" → \"\" 글자바꿈"
"item": "문구 (…청년들의 취협 기회도…)/\"\" → \"\" 글자바꿈"
},
"2-30":{
"path":"boolean(//CHAR[contains(translate(text(), ' ', ''),'하는문화')])",
"path":"boolean(//CHAR[contains(translate(text(), ' ', ''),'지기시작')])",
"path2": null,
"searchValue": null,
"value":true,
"points": 2,
"category": "편집",
"item": "문구 (…마시고 문화에서 취하는 술의 맛과…)/\"문화에서\" / \"취하는\" 순서바꿈"
"item": "문구 (…기점으로 시작하는 약해지기 현상을…)/\"시작하는\" / \"약해지기\" 순서바꿈"
},
"2-31":{
"path":"//FONTFACE[@Lang='Hangul']/FONT[@Id=//CHARSHAPE[@Id=//CHAR[contains(text(),'{searchValue}')]/parent::TEXT/@CharShape]/FONTID/@Hangul]/@Name",
"path2": null,
"searchValue": "월평균 주종별 음주(단위:%)",
"value":"돋움체",
"searchValue": "OECD 주요국 합계출산율",
"value":"궁서",
"points": 1,
"category": "표",
"item": "제목 문구 (월평균 주종별 음주(단위:%))/① 글씨체 (돋움체)"
"item": "제목 문구 (OECD 주요국 합계출산율)/① 글씨체 (궁서)"
},
"2-32":{
"path":"//CHARSHAPE[@Id=//CHAR[contains(text(),'{searchValue}')]/parent::TEXT/@CharShape]/@Height",
"path2": null,
"searchValue": "월평균 주종별 음주(단위:%)",
"searchValue": "OECD 주요국 합계출산율",
"value": 1200,
"points": 1,
"category": "표",
"item": "제목 문구 (월평균 주종별 음주(단위:%))/② 크기 (12pt)"
"item": "제목 문구 (OECD 주요국 합계출산율)/② 크기 (12pt)"
},
"2-33":{
"path":"boolean(//CHARSHAPE[@Id=//CHAR[contains(text(),'{searchValue}')]/parent::TEXT/@CharShape]/BOLD)",
"path2": null,
"searchValue": "월평균 주종별 음주(단위:%)",
"searchValue": "OECD 주요국 합계출산율",
"value":true,
"points": 1,
"category": "표",
"item": "제목 문구 (월평균 주종별 음주(단위:%))/③ 진하게"
"item": "제목 문구 (OECD 주요국 합계출산율)/③ 진하게"
},
"2-34":{
"path":"//PARASHAPE[@Id=//CHAR[contains(text(),'{searchValue}')]/ancestor::P/@ParaShape]/@Align",
"path2": null,
"searchValue": "월평균 주종별 음주(단위:%)",
"searchValue": "OECD 주요국 합계출산율",
"value": "Center",
"points": 1,
"category": "표",
"item": "제목 문구 (월평균 주종별 음주(단위:%))/④ 정렬 (가운데 정렬)"
"item": "제목 문구 (OECD 주요국 합계출산율)/④ 정렬 (가운데 정렬)"
},
"2-35":{
"path":"//BORDERFILL[@Id=//TABLE/ROW[1]/CELL/@BorderFill]/FILLBRUSH/WINDOWBRUSH/@FaceColor",
"path2": "//BORDERFILL[@Id=//CELLZONE[@StartRowAddr='0' and @EndRowAddr='0' and @StartColAddr='0' and @EndColAddr='2']/@BorderFill]/FILLBRUSH/WINDOWBRUSH/@FaceColor",
"searchValue": null,
"value": "10966730",
"value": "26367",
"points": 2,
"category": "표",
"item": "위쪽 제목 셀/① 색상(RGB:202,86,167)"
"item": "위쪽 제목 셀/① 색상(RGB:255,102,0)"
},
"2-36":{
"path":"boolean(//CHARSHAPE[@Id=//TABLE/ROW[1]/descendant::TEXT/@CharShape]/BOLD)",
@@ -588,10 +588,10 @@
"path":"//FONTFACE[@Lang='Hangul']/FONT[@Id=//CHARSHAPE[@Id=//TABLE/ROW/descendant::TEXT/@CharShape]/FONTID/@Hangul]/@Name",
"path2": null,
"searchValue": null,
"value":"한양중고딕",
"value":"굴림",
"points": 2,
"category": "표",
"item": "글자모양/① 글씨체 (중고딕)"
"item": "글자모양/① 글씨체 (굴림)"
},
"2-39":{
"path":"//CHARSHAPE[@Id=//TABLE/ROW/descendant::TEXT/@CharShape]/@Height",
@@ -612,13 +612,13 @@
"item": "글자모양/③ 정렬 (가운데 정렬)"
},
"2-41":{
"path":"//c:lineChart/c:grouping/@val",
"path":"boolean(//c:barChart[c:barDir[@val='bar'] and c:grouping[@val='clustered']])",
"path2": null,
"searchValue": null,
"value": "standard",
"value": true,
"points": 3,
"category": "chart_xml",
"item": "① 종류 (꺾은선형)"
"item": "① 종류 (묶은가로막대형)"
},
"2-42":{
"path":"//OLE[@BinItem=//BINITEM[@Format='OLE']/@BinData]/descendant::SIZE/@Width",
@@ -641,38 +641,38 @@
"2-44":{
"path":"//a:t[text()='{searchValue}']/ancestor::a:r//a:ea/@typeface",
"path2": null,
"searchValue": "월평균 주종별 음주",
"searchValue": "OECD 주요국 합계출산율",
"value": "궁서체",
"points": 2,
"category": "chart_xml",
"item": "제목 문구 (\"월평균 주종별 음주\")/① 글씨체 (궁서체)"
"item": "제목 문구 (OECD 주요국 합계출산율)/① 글씨체 (궁서체)"
},
"2-45":{
"path":"//a:t[text()='{searchValue}']/ancestor::a:r/a:rPr/@sz",
"path2": null,
"searchValue": "월평균 주종별 음주",
"value": 1300,
"searchValue": "OECD 주요국 합계출산율",
"value": 1200,
"points": 2,
"category": "chart_xml",
"item": "제목 문구 (\"월평균 주종별 음주\")/② 크기 (13pt)"
"item": "제목 문구 (OECD 주요국 합계출산율)/② 크기 (12pt)"
},
"2-46":{
"path":"//a:t[text()='{searchValue}']/ancestor::a:r/a:rPr/@b",
"path2": null,
"searchValue": "월평균 주종별 음주",
"searchValue": "OECD 주요국 합계출산율",
"value": 1,
"points": 2,
"category": "chart_xml",
"item": "제목 문구 (\"월평균 주종별 음주\")/③ 진하게"
"item": "제목 문구 (OECD 주요국 합계출산율)/③ 진하게"
},
"2-47":{
"path":"//c:catAx//a:ea/@typeface",
"path2": null,
"searchValue": null,
"value": "맑은 고딕",
"value": "궁서",
"points": 2,
"category": "chart_xml",
"item": "X축/① 글꼴 (맑은 고딕)"
"item": "X축/① 글꼴 (궁서)"
},
"2-48":{
"path":"//c:catAx//a:defRPr/@sz",
@@ -696,10 +696,10 @@
"path":"//c:valAx//a:ea/@typeface",
"path2": null,
"searchValue": null,
"value": "맑은 고딕",
"value": "궁서",
"points": 2,
"category": "chart_xml",
"item": "Y축/① 글꼴 (맑은 고딕)"
"item": "Y축/① 글꼴 (궁서)"
},
"2-51":{
"path":"//c:valAx//a:defRPr/@sz",
@@ -723,10 +723,10 @@
"path":"//c:legend//a:ea/@typeface",
"path2": null,
"searchValue": null,
"value":"맑은 고딕",
"value":"궁서",
"points": 2,
"category": "chart_xml",
"item": "범례/① 글꼴 (맑은 고딕)"
"item": "범례/① 글꼴 (궁서)"
},
"2-54":{
"path":"//c:legend//a:defRPr/@sz",

View File

@@ -261,7 +261,7 @@
"item": "이중 실선, 머리말 포함"
},
"2-02":{
"path":"count(//SECTION)>1 or (//P/@PageBreak='true')",
"path":"count(//SECTION)>1",
"path2": null,
"searchValue": null,
"value":true,

View File

@@ -261,7 +261,7 @@
"item": "이중 실선, 머리말 포함"
},
"2-02":{
"path":"count(//SECTION)>1 or (//P/@PageBreak='true')",
"path":"count(//SECTION)>1",
"path2": null,
"searchValue": null,
"value":true,

View File

@@ -261,7 +261,7 @@
"item": "이중 실선, 머리말 포함"
},
"2-02":{
"path":"count(//SECTION)>1 or (//P/@PageBreak='true')",
"path":"count(//SECTION)>1",
"path2": null,
"searchValue": null,
"value":true,

View File

@@ -261,7 +261,7 @@
"item": "이중 실선, 머리말 포함"
},
"2-02":{
"path":"count(//SECTION)>1 or (//P/@PageBreak='true')",
"path":"count(//SECTION)>1",
"path2": null,
"searchValue": null,
"value":true,

File diff suppressed because one or more lines are too long