Skip to content
Validates whether a string matches the production for an XML name or qualified name
JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib Update everything to modern JS May 8, 2016
scripts
test Update everything to modern JS May 8, 2016
.editorconfig Initial commit Dec 28, 2014
.eslintignore
.eslintrc.json Update everything to modern JS May 8, 2016
.gitignore Working name validator Dec 28, 2014
.travis.yml
LICENSE.txt
README.md Revert back to v2.0.0 Feb 23, 2015
package.json 3.0.0 Oct 23, 2017

README.md

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's default export takes a string and will return an object of the form { success, error }, where success is a boolean and if it is false, then error is a string containing some hint as to where the match went wrong.

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

// Will return { success: true, error: undefined }
xnv.name("x");
xnv.name(":");
xnv.name("a:0");
xnv.name("a:b:c");

// Will return { success: false, error: <an explanatory string> }
xnv.name("\\");
xnv.name("'");
xnv.name("0");
xnv.name("a!");

// Will return { success: true, error: undefined }
xnv.qname("x");
xnv.qname("a0");
xnv.qname("a:b");

// Will return { success: false, error: <an explanatory string> }
xnv.qname(":a");
xnv.qname(":b");
xnv.qname("a:b:c");
xnv.qname("a:0");
You can’t perform that action at this time.