표준 전문 진단도구
스마트공장 시스템끼리 주고받는 표준 전문이 규격에 맞는지 확인하는 자리. 서버도 데이터베이스도 로그인도 없이 담당자 PC 에 설치하는 데스크톱 프로그램 한 벌뿐이고, 화면은 진단 하나에 규칙 편집 창이 딸린 구성입니다.
담당자 PC 단독 설치
설치 파일 하나로 망 안에서 전문을 검사합니다
시스템끼리 주고받는 전문에는 품목과 소요량이 그대로 들어 있어, 규격에 맞는지 보겠다고 외부 검증 서비스에 올릴 수 없습니다. 검사용 서버를 따로 세우면 회선과 계정, 그것을 관리할 사람이 함께 따라옵니다.
서버도 데이터베이스도 로그인도 없이 담당자 PC 에 설치하는 데스크톱 프로그램 한 벌로 만들었습니다. 규칙파일(XSD)은 한 번에 여러 개 올릴 수 있고, 파일명이 그대로 진단대상 줄이 됩니다. 진단은 모든 줄에 규칙파일과 전문 파일이 갖춰지기 전에는 시작되지 않아, 일부만 검사한 결과가 전체 결과로 읽히는 일이 없습니다.
자료를 밖으로 내보내지 않고 담당자 자리에서 검사를 마칩니다. 검사한 전문을 어디에도 쌓아 두지 않으므로 보관 대상이 늘지도 않습니다.
XPath 필드 비교 규칙
스키마가 담지 못하는 값 사이 관계를 규칙으로 더합니다
표준 스키마는 항목이 제자리에 있는지, 자료형이 맞는지까지만 봅니다. 소요량이 소요기준량보다 커야 한다거나 보내는 시스템과 받는 시스템이 달라야 한다는 값 사이 관계는 스키마 파일에 적을 수 없어, 검증을 통과한 전문에도 그대로 남습니다.
진단대상 줄마다 기타규칙을 따로 붙이게 했습니다. 규칙 한 줄은 전문 안의 두 위치를 XPath 로 가리키고 여섯 가지 비교 연산 중 하나로 대조합니다. 같은 이름의 항목이 여러 번 나오는 전문이면 두 위치에서 찾은 노드를 순서대로 짝지어 항목마다 확인합니다. 만든 규칙은 JSON 파일로 주고받아, 다음 진단과 다른 담당자의 진단에 같은 기준이 그대로 적용됩니다.
검사 기준이 담당자 기억이 아니라 파일로 남습니다.
완전성·유효성·정확성 분류
오류를 세 갈래로 나누고 몇 번째 줄인지 함께 냅니다
검증 라이브러리가 내는 오류는 영문 한 줄이라, 받은 쪽에서는 전문을 다시 만들어야 하는 문제인지 값 하나만 고치면 되는 문제인지 가리기 어렵습니다.
오류가 난 진단대상은 전문 원문이 줄 번호와 함께 오른쪽에 놓이고, 어긋난 줄만 붉게 표시됩니다. 그 아래 오류 목록은 스키마 검증 코드에 따라 완전성과 유효성으로 나뉘고, 기타규칙을 어긴 것은 코드가 없으므로 정확성에 놓입니다. 같은 목록을 진단결과 파일로 내려받습니다.
어느 줄의 무엇이 표준과 어긋났는지 짚어, 전문을 보낸 쪽에 고칠 자리를 그대로 회신합니다.