markitect-main/node_modules/xml-name-validator
2025-11-04 21:59:22 +01:00
..
LICENSE.txt refactor: Still trying to reorganize edit mode to be more robust 2025-11-04 21:59:22 +01:00
package.json refactor: Still trying to reorganize edit mode to be more robust 2025-11-04 21:59:22 +01:00
README.md refactor: Still trying to reorganize edit mode to be more robust 2025-11-04 21:59:22 +01:00

Validate XML Names and Qualified Names

This package simply tells you whether or not a string matches the Name or QName productions in the XML Namespaces specification. We use it for implementing the validate algorithm in jsdom, but you can use it for whatever you want.

Usage

This package's main module exports two functions, name() and qname(). Both take a string and return a boolean indicating whether or not the string matches the relevant production.

"use strict":
const xnv = require("xml-name-validator");

// Will return true
xnv.name("x");
xnv.name(":");
xnv.name("a:0");
xnv.name("a:b:c");

// Will return false
xnv.name("\\");
xnv.name("'");
xnv.name("0");
xnv.name("a!");

// Will return true
xnv.qname("x");
xnv.qname("a0");
xnv.qname("a:b");

// Will return false
xnv.qname(":a");
xnv.qname(":b");
xnv.qname("a:b:c");
xnv.qname("a:0");