uss-xsd-engine 0.1.0-beta.4 → 0.1.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +55 -21
- package/dist/uss-xsd-engine.esm.js +435 -45
- package/dist/uss-xsd-engine.standalone.js +435 -45
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -5,6 +5,7 @@ Browser-first XSD engine for schema diagnostics, tree extraction, sample XML gen
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|

|
|
8
|
+
[](https://www.jsdelivr.com/package/npm/uss-xsd-engine)
|
|
8
9
|
|
|
9
10
|
---
|
|
10
11
|
|
|
@@ -93,12 +94,19 @@ import {
|
|
|
93
94
|
generateSampleXml,
|
|
94
95
|
validateXml
|
|
95
96
|
} from "uss-xsd-engine";
|
|
97
|
+
|
|
98
|
+
const result = validateXml(schema, xml);
|
|
99
|
+
console.log(result.issues);
|
|
96
100
|
```
|
|
97
101
|
|
|
98
102
|
### CDN/Browser
|
|
99
103
|
|
|
100
104
|
```HTML
|
|
101
|
-
<script src="https://unpkg.com/uss-xsd-engine@
|
|
105
|
+
<script src="https://unpkg.com/uss-xsd-engine@latest/dist/uss-xsd-engine.standalone.js"></script>
|
|
106
|
+
|
|
107
|
+
or
|
|
108
|
+
|
|
109
|
+
<script src="https://cdn.jsdelivr.net/npm/uss-xsd-engine@latest/dist/uss-xsd-engine.esm.min.js"></script>
|
|
102
110
|
|
|
103
111
|
<script>
|
|
104
112
|
const result = UssXsdEngine.getSchemaDiagnostics({ xsdText });
|
|
@@ -291,38 +299,64 @@ Use **uss-xsd-engine** if you need:
|
|
|
291
299
|
---
|
|
292
300
|
|
|
293
301
|
## ⚠️ Supported vs Not Fully Supported
|
|
294
|
-
### ✅ Supported (v0.1.x)
|
|
295
|
-
-
|
|
296
|
-
- Namespace-aware resolution
|
|
302
|
+
### ✅ Supported (v0.1.x / RC)
|
|
303
|
+
- XSD parsing into an internal schema model
|
|
304
|
+
- Namespace-aware resolution (elements, types, attributes, groups)
|
|
297
305
|
- Extensions (`xs:extension`)
|
|
298
|
-
- Restrictions (subset
|
|
299
|
-
- Facet validation
|
|
300
|
-
-
|
|
301
|
-
-
|
|
302
|
-
-
|
|
303
|
-
-
|
|
306
|
+
- Restrictions (subset enforcement, occurrence narrowing, attribute constraints)
|
|
307
|
+
- Facet validation:
|
|
308
|
+
- length, numeric, pattern, enumeration, digits
|
|
309
|
+
- Default / fixed semantics (schema + XML validation)
|
|
310
|
+
- Include/import:
|
|
311
|
+
- manual provision via `externalDocuments`
|
|
312
|
+
- recursive resolution
|
|
313
|
+
- strict namespace enforcement
|
|
314
|
+
- Chameleon includes (namespace adoption for no-targetNamespace schemas)
|
|
315
|
+
- Namespace-aware sample XML generation:
|
|
316
|
+
- minimal + representative modes
|
|
317
|
+
- pattern-aware generation (e.g., UETR, BIC)
|
|
318
|
+
- XML validation:
|
|
319
|
+
- structural validation (sequence, choice, all, groups)
|
|
320
|
+
- simpleContent + complexContent enforcement
|
|
321
|
+
- mixed content handling
|
|
322
|
+
- restriction validation (pass 2)
|
|
323
|
+
- Root and nested `simpleContent` validation alignment
|
|
304
324
|
- XML parse diagnostics with line/column support
|
|
305
|
-
- Semantic
|
|
306
|
-
- Attribute and
|
|
325
|
+
- Semantic XML diagnostics with line/column support
|
|
326
|
+
- Attribute, value, and text source mapping
|
|
307
327
|
- Namespace-aware schema tree extraction
|
|
328
|
+
- Imported schema isolation with namespace-safe lookup
|
|
329
|
+
- QName resolution:
|
|
330
|
+
- prefixed + default namespace handling
|
|
331
|
+
- no cross-namespace leakage
|
|
308
332
|
|
|
309
333
|
---
|
|
310
334
|
|
|
311
335
|
## ⚠️ Partially Supported / In Progress
|
|
312
|
-
- Deep sample XML expansion
|
|
313
|
-
-
|
|
314
|
-
-
|
|
315
|
-
-
|
|
316
|
-
-
|
|
336
|
+
- Deep sample XML expansion:
|
|
337
|
+
- complex choice branching
|
|
338
|
+
- recursion depth control
|
|
339
|
+
- Full restriction theorem validation:
|
|
340
|
+
- advanced edge cases (beyond practical subset checks)
|
|
341
|
+
- Advanced wildcard handling:
|
|
342
|
+
- `xs:any`
|
|
343
|
+
- `xs:anyAttribute`
|
|
344
|
+
- Attribute namespace qualification edge cases
|
|
317
345
|
|
|
318
346
|
---
|
|
319
347
|
|
|
320
348
|
## ❌ Not Supported Yet
|
|
321
|
-
- Identity constraints
|
|
349
|
+
- Identity constraints:
|
|
350
|
+
- `xs:key`
|
|
351
|
+
- `xs:keyref`
|
|
352
|
+
- `xs:unique`
|
|
353
|
+
- `xs:redefine`
|
|
322
354
|
- Automatic network fetching of schemas
|
|
323
|
-
-
|
|
324
|
-
-
|
|
325
|
-
-
|
|
355
|
+
- (engine is intentionally browser-first and caller-driven)
|
|
356
|
+
- Full W3C spec completeness
|
|
357
|
+
- (focus is practical + real-world coverage)
|
|
358
|
+
- Streaming / incremental validation for very large XML
|
|
359
|
+
|
|
326
360
|
|
|
327
361
|
---
|
|
328
362
|
|