← 스킬 목록으로 돌아가기

xml-xsd-validator

v1.0.0 approved Development ⬇ 7 오늘 업데이트
USK v3 ✅ Verified ⚡ Auto-Convert
⬇ 다운로드
설치 가이드↓
🤖 에이전트용 설치 명령 (curl / MCP / Claude Desktop)
▸ curl 한 줄 다운로드
curl -L -o xml-xsd-validator.skill   "https://aiskillstore.io/v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download?platform=ClaudeCode"
▸ MCP 도구 호출 (Skill Store MCP 등록 시)
{
  "tool": "download_skill",
  "arguments": {
    "skill_id": "e6758f19-3b68-4495-8b9f-d40c5366e260",
    "platform": "ClaudeCode"
  }
}
▸ Claude Desktop / Cursor MCP 설정 (1회)
{
  "mcpServers": {
    "skill-store": {
      "url": "https://aiskillstore.io/mcp/"
    }
  }
}
📖 에이전트용 전체 API 가이드: /llms.txt  ·  MCP server card

Validate XML documents against XSD schemas; returns structured JSON with XPath paths, messages, and line numbers. Supports inline or URL-fetched XML/XSD.

기본 정보

소유자 👤 aiskillstore-team 카테고리 Development 등록일 2026-06-15 최종 업데이트 2026-06-15 최신 버전 1.0.0 패키지 날짜 2026-06-15 검증 상태 approved 다운로드 수 7회 체크섬 (SHA256) a39ddf8d897c09f499dca051cfcd2b29403357ae6083a86a4a7227259462eb2b

⚡ AGENT INFO USK v3

Capabilities
xml_validation xsd_schema_parsing structured_error_reporting url_fetching namespace_aware_validation
Permissions
✓ network
✗ filesystem
✗ subprocess
Interface
type: cli   entry_point: main.py   runtime: python3   call_pattern: stdin_stdout
Agent API
# 스킬 스키마 조회 (에이전트가 호출 방법을 파악) GET /v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/schema # 플랫폼별 자동 변환 다운로드 GET /v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download?platform=OpenClaw GET /v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download?platform=ClaudeCode GET /v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download?platform=ClaudeCodeAgentSkill GET /v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download?platform=Cursor GET /v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download?platform=GeminiCLI GET /v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download?platform=CodexCLI GET /v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download?platform=CustomAgent

설치 방법

호환 플랫폼: any

1
openclaw_skill_manager.py로 스킬을 설치합니다.
python openclaw_skill_manager.py --install xml-xsd-validator
2
설치 확인
python openclaw_skill_manager.py --list-installed
3
특정 버전 설치 (선택)
python openclaw_skill_manager.py --install xml-xsd-validator --version 1.0.0
1
스킬 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download
2
Claude Code commands 디렉터리에 배치합니다.
unzip xml-xsd-validator.skill -d ~/.claude/commands/xml-xsd-validator/
3
Claude Code에서 슬래시 커맨드로 사용합니다.
/xml-xsd-validator
1
Agent Skills 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download?platform=ClaudeCodeAgentSkill
2
Claude Code skills 디렉터리에 압축을 해제합니다.
unzip xml-xsd-validator-agent-skill-*.skill -d ~/.claude/skills/xml-xsd-validator/
3
Claude Code를 재시작하면 세션 시작 시 자동으로 로드됩니다. 슬래시 커맨드 없이 자연어로 사용 가능합니다.
1
Cursor 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download?platform=Cursor
2
압축 해제 후 영구 위치에 저장합니다.
unzip xml-xsd-validator-cursor-*.skill -d ~/.cursor/skills/xml-xsd-validator/
3
.cursor/mcp.json에 MCP 서버 설정을 추가하고 Cursor를 재시작합니다.
cat ~/.cursor/skills/xml-xsd-validator/cursor_mcp_config.json
1
Gemini CLI 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download?platform=GeminiCLI
2
압축 해제 후 영구 위치에 저장합니다.
unzip xml-xsd-validator-geminicli-*.skill -d ~/.gemini/skills/xml-xsd-validator/
3
~/.gemini/settings.json에 MCP 서버 설정을 추가하고 Gemini CLI를 재시작합니다.
cat ~/.gemini/skills/xml-xsd-validator/gemini_settings_snippet.json
1
Codex CLI 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download?platform=CodexCLI
2
압축 해제 후 영구 위치에 저장합니다.
unzip xml-xsd-validator-codexcli-*.skill -d ~/.codex/skills/xml-xsd-validator/
3
~/.codex/config.toml에 MCP 서버 설정을 추가하고 Codex CLI를 재시작합니다.
cat ~/.codex/skills/xml-xsd-validator/codex_config_snippet.toml
1
REST API로 스킬 패키지를 다운로드합니다.
GET https://aiskillstore.io/v1/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/download
2
에이전트 플랫폼의 skills 디렉터리에 배치합니다.
cp xml-xsd-validator.skill ./skills/
3
설치 가이드 API로 플랫폼별 상세 정보를 조회합니다.
GET https://aiskillstore.io/v1/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/install-guide?platform=CustomAgent

보안 검증 보고서

검증 결과 APPROVED

검사 결과: ["메타데이터 경고: 권장 필드 없음: 'tags' (SKILL.md v2 권장)", "메타데이터 경고: 권장 필드 없음: 'requirements' (SKILL.md v2 권장)"]

✅ 보안 위험 항목이 발견되지 않았습니다.

AI 검수 단계

검수 주체 gemini 위험도 🟢 낮음 검수 요약 XML/XSD 유효성 검사 스킬은 선언된 권한과 코드 품질이 양호하며, 악의적인 동작이 발견되지 않았습니다.
판단 근거

스킬 메타데이터와 코드 파일을 분석한 결과, 다음과 같은 판단을 내렸습니다: 1. **권한 일치 여부:** * `network: true` 권한이 선언되었으며, `lib/validator.py` 파일에서 `urllib.request.urlopen`을 사용하여 `xml_url` 또는 `xsd_url`로부터 콘텐츠를 가져오는 데 사용됩니다. 이는 선언된 권한과 일치합니다. * `filesystem: false` 권한이 선언되었으며, 코드에서 `os.path` 관련 함수는 모듈 경로 설정(`sys.path.insert`)에만 사용될 뿐, 임의의 파일 시스템 접근이나 수정은 발견되지 않았습니다. 이는 선언된 권한과 일치합니다. * `subprocess: false` 권한이 선언되었으며, 코드에서 `subprocess` 모듈 사용이 전혀 발견되지 않았습니다. 이는 선언된 권한과 일치합니다. 2. **악의적 목적의 코드:** * 코드의 주 목적은 XML 문서를 XSD 스키마에 대해 유효성 검사하는 것입니다. 이 과정에서 사용자 입력 데이터나 원격에서 가져온 데이터를 외부로 무단 전송하거나, 시스템을 파괴할 수 있는 코드는 발견되지 않았습니다. * `lxml` 라이브러리는 XML 처리에서 일반적으로 안전한 것으로 알려져 있으며, XXE(XML External Entity) 공격 등으로부터 보호하는 메커니즘을 내장하고 있습니다. 코드 내에서 `lxml`의 사용 방식은 표준적이며 안전해 보입니다. * 코드 난독화는 발견되지 않았으며, 정적 분석 결과도 이를 뒷받침합니다. 3. **선언되지 않은 외부 통신:** * `urllib.request`를 통한 HTTP/HTTPS 통신 외에 다른 형태의 외부 통신은 발견되지 않았습니다. 이는 `network: true` 권한으로 명시적으로 허용된 범위 내입니다. 4. **사용자 데이터 무단 수집/전송:** * 스킬은 사용자로부터 XML/XSD 콘텐츠 또는 URL을 입력받아 유효성 검사 결과를 반환합니다. 이 과정에서 사용자 입력 데이터나 처리된 데이터를 무단으로 저장, 로깅 또는 제3자에게 전송하는 코드는 발견되지 않았습니다. 5. **코드 품질:** * `main.py`는 입력 처리 및 핵심 로직 호출을 담당하고, `lib/validator.py`는 실제 유효성 검사 로직을 포함하는 등 모듈화가 잘 되어 있습니다. * JSON 입력 파싱 오류, URL 페치 오류, XSD 파싱 오류 등 다양한 예외 상황에 대한 구조화된 오류 처리가 잘 구현되어 있습니다. * `max_errors` 입력 값에 대한 유효성 검사(1-100 범위 제한)가 적용되어 있습니다. * 코드 가독성이 높고, 파이썬 표준 코딩 스타일에 부합합니다. 정적 분석 결과 또한 'approved' 상태로 'red_flags_found', 'obfuscation_warnings', 'forbidden_exec_files_found' 항목에서 아무런 문제가 발견되지 않았습니다. 전반적으로 이 스킬은 안전하며 의도된 기능을 충실히 수행하는 것으로 판단됩니다.

버전 히스토리

버전 USK v3 검증 상태 패키지 날짜 다운로드 변경사항
v1.0.0 approved 2026-06-15 ⬇ 7 1.0.0: Initial release

사용 예시 (Examples) 7 개

이 스킬의 대표적인 입출력 예시입니다. 에이전트는 이 예시를 보고 스킬 호출 방법과 결과 형태를 이해할 수 있습니다.

Valid XML passes schema
# valid# basic

A well-formed XML that satisfies all XSD constraints returns valid=true and empty errors

📥 입력
{
  "xml_content": "\u003croot\u003ehello\u003c/root\u003e",
  "xsd_content": "\u003cxs:schema xmlns:xs=\u0027http://www.w3.org/2001/XMLSchema\u0027\u003e\u003cxs:element name=\u0027root\u0027 type=\u0027xs:string\u0027/\u003e\u003c/xs:schema\u003e"
}
📤 출력
{
  "error_count": 0,
  "errors": [],
  "schema_info": {
    "complex_types": 0,
    "element_count": 1,
    "target_namespace": null
  },
  "valid": true
}
Invalid XML returns error detail
# invalid# missing-element

XML missing a required element returns valid=false with XPath path and line number

📥 입력
{
  "xml_content": "\u003cperson\u003e\u003cname\u003eAlice\u003c/name\u003e\u003c/person\u003e",
  "xsd_content": "inline XSD requiring name and age elements"
}
📤 출력
{
  "error_count": 1,
  "errors": [
    {
      "line": 2,
      "message": "Element \u0027age\u0027 is required but missing",
      "path": "/person",
      "schema_path": "/xs:schema/xs:complexType[@name=\u0027person\u0027]/xs:sequence/xs:element[@name=\u0027age\u0027]"
    }
  ],
  "schema_info": {
    "complex_types": 1,
    "element_count": 2,
    "target_namespace": null
  },
  "valid": false
}
Namespace-aware validation
# namespace# targetNamespace

XML with a target namespace correctly resolved against namespaced XSD

📥 입력
{
  "xml_content": "\u003cns:root xmlns:ns=\u0027http://example.com/ns\u0027\u003evalue\u003c/ns:root\u003e",
  "xsd_content": "inline XSD with targetNamespace http://example.com/ns"
}
📤 출력
{
  "error_count": 0,
  "errors": [],
  "schema_info": {
    "complex_types": 0,
    "element_count": 1,
    "target_namespace": "http://example.com/ns"
  },
  "valid": true
}
Multiple errors with max_errors cap
# max-errors# multiple-violations

Document with many violations returns up to max_errors entries

📥 입력
{
  "max_errors": 2,
  "xml_content": "\u003citems\u003e\u003citem\u003e1\u003c/item\u003e\u003citem\u003ebad\u003c/item\u003e\u003citem\u003ealso-bad\u003c/item\u003e\u003c/items\u003e",
  "xsd_content": "inline XSD requiring integer items"
}
📤 출력
{
  "error_count": 2,
  "errors": [
    {
      "line": 3,
      "message": "Value is not valid for type integer",
      "path": "/items/item[2]",
      "schema_path": "/xs:schema/xs:element[@name=\u0027item\u0027]"
    },
    {
      "line": 4,
      "message": "Value is not valid for type integer",
      "path": "/items/item[3]",
      "schema_path": "/xs:schema/xs:element[@name=\u0027item\u0027]"
    }
  ],
  "schema_info": {
    "complex_types": 1,
    "element_count": 2,
    "target_namespace": null
  },
  "valid": false
}
XSD fetched from URL, XML inline
# url-fetch# xsd-url

Schema fetched from remote URL while XML provided inline; network permission used

📥 입력
{
  "xml_content": "\u003cinvoice\u003e\u003cnumber\u003eINV-2026-001\u003c/number\u003e\u003camount\u003e500.00\u003c/amount\u003e\u003c/invoice\u003e",
  "xsd_url": "https://example.com/schemas/invoice.xsd"
}
📤 출력
{
  "error_count": 0,
  "errors": [],
  "schema_info": {
    "complex_types": 2,
    "element_count": 5,
    "target_namespace": "http://example.com/invoice"
  },
  "valid": true
}
Malformed XSD returns XSD_PARSE_ERROR
# error-handling# xsd-parse-error

Syntactically invalid XSD returns structured error without crashing

📥 입력
{
  "xml_content": "\u003croot/\u003e",
  "xsd_content": "invalid-xsd-markup"
}
📤 출력
{
  "error": {
    "code": "XSD_PARSE_ERROR",
    "message": "Failed to parse XSD: parse error detail"
  }
}
URL fetch failure returns URL_FETCH_ERROR
# error-handling# url-fetch-error

Unreachable xml_url returns structured URL_FETCH_ERROR

📥 입력
{
  "xml_url": "https://unreachable.example.invalid/doc.xml",
  "xsd_content": "inline XSD with string root element"
}
📤 출력
{
  "error": {
    "code": "URL_FETCH_ERROR",
    "message": "Failed to fetch URL: connection error detail"
  }
}

모든 예시는 에이전트 API로도 조회 가능: /v1/agent/skills/e6758f19-3b68-4495-8b9f-d40c5366e260/schema

리뷰 & 평점

아직 리뷰가 없습니다. 첫 번째 리뷰를 남겨보세요!

✍️ 리뷰 작성