Syntax erro - Pointers must begin with "#/"
Hi there, I just started getting this error today. Not sure what changed or how to fix it.

Any ideas?
This error means that you have an invalid $ref somewhere in your schema. Without actually seeing your schema, I can't get any more specific than that.
This is a valid bug; it violates the spec WRT internal links. Internal links are not necessarily JSON pointers.
$ node -e 'require("json-schema-ref-parser").dereference({"$ref": "#bar", "definitions": {"bar": {"$id": "#bar"}}}).then(s=>console.log(s))'
(node:17237) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2):
SyntaxError: Invalid $ref pointer "bar". Pointers must begin with "#/"
$ ajv -d <(echo null) -s <(echo '{"$ref": "#bar", "definitions": {"bar": {"$id": "#bar"}}}')
/dev/fd/63 valid
ajv gets it right
see also
http://json-schema.org/latest/json-schema-core.html#rfc.section.9.2 $id
"To name subschemas in a JSON Schema document, subschemas can use "$id" to give themselves a document-local identifier. This is done by setting "$id" to a URI reference consisting only of a fragment. The fragment identifier MUST begin with a letter ([A-Za-z]), followed by any number of letters, digits ([0-9]), hyphens ("-"), underscores ("_"), colons (":"), or periods (".")."
http://json-schema.org/latest/json-schema-core.html#rfc.section.9.2.1 Internal links
"Schemas can be identified by any URI that has been given to them, including a JSON Pointer or their URI given directly by "$id".
Tools SHOULD take note of the URIs that schemas, including subschemas, provide for themselves using "$id". This is known as "Internal referencing"."
http://json-schema.org/latest/json-schema-core.html#rfc.section.5 Fragment identifiers
"plain name fragment identifiers are reserved for referencing locally named schemas. All fragment identifiers that do not match the JSON Pointer syntax MUST be interpreted as plain name fragment identifiers."
as a stopgap the program could simply ignore internal refs. Not ideal but better than crashing.
Example dereferencing local refs
_walkSchema(schema, accum) {
return _.reduce(Object.entries(schema), (a, [k, v])=>{
if (k === '$id') a.ids[v] = a.parent;
k === '$ref' && a.refs.push(a.parent);
if (v && typeof v == "object") {
let oldParent = a.parent;
a.parent = v;
let r = this._walkSchema(v, a)
a.parent = oldParent;
return r;
}
return a;
}, accum);
}
_derefLocal(schema) {
let stuff = this._walkSchema(
schema,
{parent: schema, ids: {}, refs: []}
);
stuff.refs.forEach(ref=>{
if (ref.$ref[0] === '#' && ref.$ref[1] !== '/') {
_.assign(ref, stuff.ids[ref.$ref]);
delete ref.$id;
delete ref.$ref;
}
})
console.log(stuff);
return schema;
}
this seems to duplicate https://github.com/BigstickCarpet/json-schema-ref-parser/issues/17
I intend to support inline references in the next version of JSON Schema $Ref Parser, which I have already begun working on. 👍
In the meantime, I will implement @n1ywb's stopgap recommendation of ignoring these references.
I just published version 3.3.1, which includes the stopgap fix that @n1ywb suggested
6.1.0 has the same bug
I think this might also be related to #136
Faced it today in 9.0.6 version.