CtrlK
BlogDocsLog inGet started
Tessl Logo

parsing-ccda-documents

Parses C-CDA / CCD XML clinical documents to extract human-readable section narrative plus coded entries, keyed by section LOINC codes and templateIds. Use before OpenMed processing when ingesting C-CDA R2.1 documents (CCD, Discharge Summary, H&P, Consultation Note) exported from an EHR and you need the narrative section text de-identified and analyzed. Hand section narrative to openmed.deidentify and openmed.analyze_text; XML-aware de-identification that preserves CDA markup is available via openmed.interop.cda. Trigger keywords: C-CDA, CCD, CDA, clinical document, templateId, LOINC section, narrative block, discharge summary XML, ClinicalDocument.

72

Quality

88%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

76%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured, highly actionable skill body with executable code and clear sections. Its main gap is the missing validation/verification feedback loop for the destructive de-identification step, which caps workflow clarity; conciseness and progressive disclosure are strong but not perfect.

Suggestions

Add an explicit verification step after de-identification — e.g., re-parse redact_cda output to confirm valid XML and spot-check that no PHI tokens remain — with a fix-and-retry loop, which would lift workflow clarity above the destructive-operation cap of 3.

Tighten the intro paragraph by trimming the Meaningful Use/ONC background to one line so the body leans more fully on Claude's existing knowledge.

Consider extracting the SECTION_LOINC mapping or the redact_cda parameter reference into a short reference file to give the overview clearer one-level-deep progressive disclosure.

DimensionReasoningScore

Conciseness

Mostly lean and code-heavy with every section earning its place; the 8-line intro ('C-CDA ... is the XML document standard behind Meaningful Use / ONC certification — the CCD ... you get when an EHR exports a chart') is mild domain framing that could be trimmed but is largely justified orientation for a specialized skill.

4 / 5

Actionability

Quick start and the XML-aware de-id section provide fully executable, copy-paste-ready Python (ET.parse, itertext flatten, openmed.deidentify/analyze_text, redact_cda, is_cda_document) covering the common cases, plus concrete parameter guidance (text_redactor=, date_shift_days=, keep_year=).

5 / 5

Workflow Clarity

The 5-step Workflow is clearly sequenced and step 1 includes a guard ('Reject XML with DOCTYPE/ENTITY declarations'), but because this is destructive XML/document manipulation (irreversible PHI de-identification) with no validate→fix→retry feedback loop or verification of the redacted output, the rubric's destructive/batch cap holds it at 3.

3 / 5

Progressive Disclosure

Well-organized into clear sections (When to use, structure, Quick start, de-id, Workflow, Hand-off, Edge cases, Standards & references) with appropriately placed inline content and external standards links; no bundle files exist and nothing obviously needs splitting, but at ~155 lines it does not use one-level-deep reference files that would push it to 5.

4 / 5

Total

16

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong, third-person description that explicitly answers both what and when, names several concrete actions, and enumerates natural trigger keywords with synonyms. It is specific to a clear niche with low conflict risk.

DimensionReasoningScore

Specificity

Names multiple concrete actions — 'Parses C-CDA / CCD XML clinical documents to extract human-readable section narrative plus coded entries, keyed by section LOINC codes and templateIds', 'Hand section narrative to openmed.deidentify and openmed.analyze_text', and 'XML-aware de-identification that preserves CDA markup' — giving comprehensive coverage rather than generic verbs.

5 / 5

Completeness

Clearly states what it does (parse/extract narrative + coded entries keyed by LOINC/templateIds, hand to deidentify/analyze) and when to use it ('Use before OpenMed processing when ingesting C-CDA R2.1 documents (CCD, Discharge Summary, H&P, Consultation Note) exported from an EHR'), satisfying both halves with concrete triggers.

5 / 5

Trigger Term Quality

An explicit 'Trigger keywords:' list covers synonyms and domain markers (C-CDA, CCD, CDA, clinical document, discharge summary XML, ClinicalDocument) that the target informatics user would naturally say; no canonical file extension exists for this domain to omit.

5 / 5

Distinctiveness Conflict Risk

Occupies a clear niche (C-CDA/CCD clinical documents for OpenMed ingestion) with domain-specific triggers (templateId, LOINC section, ClinicalDocument) that make conflict with unrelated skills minimal.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
maziyarpanahi/openmed
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.