n3 3.0.0-alpha.3 → 3.0.0-alpha.4

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.
@@ -9,11 +9,11 @@ var Dl=Object.create;var rr=Object.defineProperty,Ml=Object.defineProperties,$l=
9
9
  ${this._encodePredicate(this._predicate=r)} ${this._encodeObject(i)}`,s):this._write(`${(this._subject===null?"":`.
10
10
  `)+this._encodeSubject(this._subject=e)} ${this._encodePredicate(this._predicate=r)} ${this._encodeObject(i)}`,s)}catch(o){s&&s(o)}}_writeQuadLine(e,r,i,n,s){delete this._prefixMatch,this._write(this.quadToString(e,r,i,n),s)}quadToString(e,r,i,n){return`${this._encodeSubject(e)} ${r.termType==="Literal"?this._encodeLiteral(r):this._encodeIriOrBlank(r)} ${this._encodeObject(i)}${n&&!ae(n)?` ${this._encodeIriOrBlank(n)} .
11
11
  `:` .
12
- `}`}quadsToString(e){let r="";for(let i of e)r+=this.quadToString(i.subject,i.predicate,i.object,i.graph);return r}_encodeSubject(e){switch(e.termType){case"Quad":return this._encodeQuad(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeIriOrBlank(e){if(e.termType!=="NamedNode")return this._lists&&e.value in this._lists&&(e=this.list(this._lists[e.value])),e instanceof Q?e.id:e.termType==="Variable"?`?${e.value}`:`_:${e.value}`;let r=e.value;this._baseIri&&(r=this._baseIri.toRelative(r)),ps.test(r)&&(r=r.replace(bs,gs));let i=this._hasPrefixes?this._prefixRegex.exec(r):null;return i?i[1]?this._prefixIRIs[i[1]]+i[2]:r:`<${r}>`}_encodeLiteral(e){let r=e.value;ps.test(r)&&(r=r.replace(bs,gs));let i=e.language;if(i){let n=e.direction,s=n?`--${n}`:"";return`"${r}"@${i}${s}`}if(this._lineMode){if(e.datatype.value===_t.string)return`"${r}"`}else switch(e.datatype.value){case _t.string:return`"${r}"`;case _t.boolean:if(r==="true"||r==="false")return r;break;case _t.integer:if(/^[+-]?\d+$/.test(r))return r;break;case _t.decimal:if(/^[+-]?\d*\.\d+$/.test(r))return r;break;case _t.double:if(/^[+-]?(?:\d+\.\d*|\.?\d+)[eE][+-]?\d+$/.test(r))return r;break}return`"${r}"^^${this._encodeIriOrBlank(e.datatype)}`}_encodePredicate(e){switch(e.termType){case"NamedNode":return e.value===Gu.type?"a":this._encodeIriOrBlank(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeObject(e){switch(e.termType){case"Quad":return this._encodeQuad(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeQuad({subject:e,predicate:r,object:i,graph:n}){return`<<(${this._encodeSubject(e)} ${this._encodePredicate(r)} ${this._encodeObject(i)}${ae(n)?"":` ${this._encodeIriOrBlank(n)}`})>>`}_blockedWrite(){throw new Error("Cannot write because the writer has been closed.")}addQuad(e,r,i,n,s){i===void 0?this._writeQuad(e.subject,e.predicate,e.object,e.graph,r):typeof n=="function"?this._writeQuad(e,r,i,Dt,n):this._writeQuad(e,r,i,n||Dt,s)}addQuads(e){for(let r=0;r<e.length;r++)this.addQuad(e[r])}addPrefix(e,r,i){let n={};n[e]=r,this.addPrefixes(n,i)}addPrefixes(e,r){if(!this._prefixIRIs)return r&&r();let i=!1;for(let n in e){let s=e[n];typeof s!="string"&&(s=s.value),i=!0,this._subject!==null&&(this._write(this._inDefaultGraph?`.
12
+ `}`}quadsToString(e){let r="";for(let i of e)r+=this.quadToString(i.subject,i.predicate,i.object,i.graph);return r}_encodeSubject(e){switch(e.termType){case"Quad":return this._encodeQuad(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeIriOrBlank(e){if(e.termType!=="NamedNode")return this._lists&&e.value in this._lists&&(e=this.list(this._lists[e.value])),e instanceof Q?e.id:e.termType==="Variable"?`?${e.value}`:`_:${e.value}`;let r=e.value;this._baseIri&&(r=this._baseIri.toRelative(r)),ps.test(r)&&(r=r.replace(bs,gs));let i=this._hasPrefixes?this._prefixRegex.exec(r):null;return i?this._prefixIRIs[i[1]]+i[2]:`<${r}>`}_encodeLiteral(e){let r=e.value;ps.test(r)&&(r=r.replace(bs,gs));let i=e.language;if(i){let n=e.direction,s=n?`--${n}`:"";return`"${r}"@${i}${s}`}if(this._lineMode){if(e.datatype.value===_t.string)return`"${r}"`}else switch(e.datatype.value){case _t.string:return`"${r}"`;case _t.boolean:if(r==="true"||r==="false")return r;break;case _t.integer:if(/^[+-]?\d+$/.test(r))return r;break;case _t.decimal:if(/^[+-]?\d*\.\d+$/.test(r))return r;break;case _t.double:if(/^[+-]?(?:\d+\.\d*|\.?\d+)[eE][+-]?\d+$/.test(r))return r;break}return`"${r}"^^${this._encodeIriOrBlank(e.datatype)}`}_encodePredicate(e){switch(e.termType){case"NamedNode":return e.value===Gu.type?"a":this._encodeIriOrBlank(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeObject(e){switch(e.termType){case"Quad":return this._encodeQuad(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeQuad({subject:e,predicate:r,object:i,graph:n}){return`<<(${this._encodeSubject(e)} ${this._encodePredicate(r)} ${this._encodeObject(i)}${ae(n)?"":` ${this._encodeIriOrBlank(n)}`})>>`}_blockedWrite(){throw new Error("Cannot write because the writer has been closed.")}addQuad(e,r,i,n,s){i===void 0?this._writeQuad(e.subject,e.predicate,e.object,e.graph,r):typeof n=="function"?this._writeQuad(e,r,i,Dt,n):this._writeQuad(e,r,i,n||Dt,s)}addQuads(e){for(let r=0;r<e.length;r++)this.addQuad(e[r])}addPrefix(e,r,i){let n={};n[e]=r,this.addPrefixes(n,i)}addPrefixes(e,r){if(!this._prefixIRIs)return r&&r();let i=!1;for(let n in e){let s=e[n];typeof s!="string"&&(s=s.value),i=!0,this._subject!==null&&(this._write(this._inDefaultGraph?`.
13
13
  `:`
14
14
  }
15
15
  `),this._subject=null,this._graph=""),this._prefixIRIs[s]=n+=":",this._write(`@prefix ${n} <${s}>.
16
- `)}if(i){this._hasPrefixes=!0;let n="",s="";for(let o in this._prefixIRIs)n+=n?`|${o}`:o,s+=(s?"|":"")+this._prefixIRIs[o];n=ht(n,/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&"),this._prefixRegex=new RegExp(`^(?:${s})[^/]*$|^(${n})([_a-zA-Z0-9](?:\\.?[\\-_a-zA-Z0-9])*)$`)}this._write(i?`
16
+ `)}if(i){this._hasPrefixes=!0;let n="";for(let s in this._prefixIRIs)n+=n?`|${s}`:s;n=ht(n,/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&"),this._prefixRegex=new RegExp(`^(${n})([_a-zA-Z0-9](?:\\.?[\\-_a-zA-Z0-9])*)$`)}this._write(i?`
17
17
  `:"",r)}blank(e,r){let i=e,n,s;switch(e===void 0?i=[]:e.termType?i=[{predicate:e,object:r}]:"length"in e||(i=[e]),s=i.length){case 0:return new ze("[]");case 1:if(n=i[0],!(n.object instanceof ze))return new ze(`[ ${this._encodePredicate(n.predicate)} ${this._encodeObject(n.object)} ]`);default:let o="[";for(let a=0;a<s;a++)n=i[a],n.predicate.equals(e)?o+=`, ${this._encodeObject(n.object)}`:(o+=`${(a?`;
18
18
  `:`
19
19
  `)+this._encodePredicate(n.predicate)} ${this._encodeObject(n.object)}`,e=n.predicate);return new ze(`${o}
package/browser/n3.min.js CHANGED
@@ -9,11 +9,11 @@ var N3=(()=>{var $l=Object.create;var kt=Object.defineProperty,kl=Object.defineP
9
9
  ${this._encodePredicate(this._predicate=r)} ${this._encodeObject(i)}`,s):this._write(`${(this._subject===null?"":`.
10
10
  `)+this._encodeSubject(this._subject=e)} ${this._encodePredicate(this._predicate=r)} ${this._encodeObject(i)}`,s)}catch(o){s&&s(o)}}_writeQuadLine(e,r,i,n,s){delete this._prefixMatch,this._write(this.quadToString(e,r,i,n),s)}quadToString(e,r,i,n){return`${this._encodeSubject(e)} ${r.termType==="Literal"?this._encodeLiteral(r):this._encodeIriOrBlank(r)} ${this._encodeObject(i)}${n&&!fe(n)?` ${this._encodeIriOrBlank(n)} .
11
11
  `:` .
12
- `}`}quadsToString(e){let r="";for(let i of e)r+=this.quadToString(i.subject,i.predicate,i.object,i.graph);return r}_encodeSubject(e){switch(e.termType){case"Quad":return this._encodeQuad(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeIriOrBlank(e){if(e.termType!=="NamedNode")return this._lists&&e.value in this._lists&&(e=this.list(this._lists[e.value])),e instanceof W?e.id:e.termType==="Variable"?`?${e.value}`:`_:${e.value}`;let r=e.value;this._baseIri&&(r=this._baseIri.toRelative(r)),ys.test(r)&&(r=r.replace(ms,ws));let i=this._hasPrefixes?this._prefixRegex.exec(r):null;return i?i[1]?this._prefixIRIs[i[1]]+i[2]:r:`<${r}>`}_encodeLiteral(e){let r=e.value;ys.test(r)&&(r=r.replace(ms,ws));let i=e.language;if(i){let n=e.direction,s=n?`--${n}`:"";return`"${r}"@${i}${s}`}if(this._lineMode){if(e.datatype.value===gt.string)return`"${r}"`}else switch(e.datatype.value){case gt.string:return`"${r}"`;case gt.boolean:if(r==="true"||r==="false")return r;break;case gt.integer:if(/^[+-]?\d+$/.test(r))return r;break;case gt.decimal:if(/^[+-]?\d*\.\d+$/.test(r))return r;break;case gt.double:if(/^[+-]?(?:\d+\.\d*|\.?\d+)[eE][+-]?\d+$/.test(r))return r;break}return`"${r}"^^${this._encodeIriOrBlank(e.datatype)}`}_encodePredicate(e){switch(e.termType){case"NamedNode":return e.value===Qu.type?"a":this._encodeIriOrBlank(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeObject(e){switch(e.termType){case"Quad":return this._encodeQuad(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeQuad({subject:e,predicate:r,object:i,graph:n}){return`<<(${this._encodeSubject(e)} ${this._encodePredicate(r)} ${this._encodeObject(i)}${fe(n)?"":` ${this._encodeIriOrBlank(n)}`})>>`}_blockedWrite(){throw new Error("Cannot write because the writer has been closed.")}addQuad(e,r,i,n,s){i===void 0?this._writeQuad(e.subject,e.predicate,e.object,e.graph,r):typeof n=="function"?this._writeQuad(e,r,i,Wt,n):this._writeQuad(e,r,i,n||Wt,s)}addQuads(e){for(let r=0;r<e.length;r++)this.addQuad(e[r])}addPrefix(e,r,i){let n={};n[e]=r,this.addPrefixes(n,i)}addPrefixes(e,r){if(!this._prefixIRIs)return r&&r();let i=!1;for(let n in e){let s=e[n];typeof s!="string"&&(s=s.value),i=!0,this._subject!==null&&(this._write(this._inDefaultGraph?`.
12
+ `}`}quadsToString(e){let r="";for(let i of e)r+=this.quadToString(i.subject,i.predicate,i.object,i.graph);return r}_encodeSubject(e){switch(e.termType){case"Quad":return this._encodeQuad(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeIriOrBlank(e){if(e.termType!=="NamedNode")return this._lists&&e.value in this._lists&&(e=this.list(this._lists[e.value])),e instanceof W?e.id:e.termType==="Variable"?`?${e.value}`:`_:${e.value}`;let r=e.value;this._baseIri&&(r=this._baseIri.toRelative(r)),ys.test(r)&&(r=r.replace(ms,ws));let i=this._hasPrefixes?this._prefixRegex.exec(r):null;return i?this._prefixIRIs[i[1]]+i[2]:`<${r}>`}_encodeLiteral(e){let r=e.value;ys.test(r)&&(r=r.replace(ms,ws));let i=e.language;if(i){let n=e.direction,s=n?`--${n}`:"";return`"${r}"@${i}${s}`}if(this._lineMode){if(e.datatype.value===gt.string)return`"${r}"`}else switch(e.datatype.value){case gt.string:return`"${r}"`;case gt.boolean:if(r==="true"||r==="false")return r;break;case gt.integer:if(/^[+-]?\d+$/.test(r))return r;break;case gt.decimal:if(/^[+-]?\d*\.\d+$/.test(r))return r;break;case gt.double:if(/^[+-]?(?:\d+\.\d*|\.?\d+)[eE][+-]?\d+$/.test(r))return r;break}return`"${r}"^^${this._encodeIriOrBlank(e.datatype)}`}_encodePredicate(e){switch(e.termType){case"NamedNode":return e.value===Qu.type?"a":this._encodeIriOrBlank(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeObject(e){switch(e.termType){case"Quad":return this._encodeQuad(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeQuad({subject:e,predicate:r,object:i,graph:n}){return`<<(${this._encodeSubject(e)} ${this._encodePredicate(r)} ${this._encodeObject(i)}${fe(n)?"":` ${this._encodeIriOrBlank(n)}`})>>`}_blockedWrite(){throw new Error("Cannot write because the writer has been closed.")}addQuad(e,r,i,n,s){i===void 0?this._writeQuad(e.subject,e.predicate,e.object,e.graph,r):typeof n=="function"?this._writeQuad(e,r,i,Wt,n):this._writeQuad(e,r,i,n||Wt,s)}addQuads(e){for(let r=0;r<e.length;r++)this.addQuad(e[r])}addPrefix(e,r,i){let n={};n[e]=r,this.addPrefixes(n,i)}addPrefixes(e,r){if(!this._prefixIRIs)return r&&r();let i=!1;for(let n in e){let s=e[n];typeof s!="string"&&(s=s.value),i=!0,this._subject!==null&&(this._write(this._inDefaultGraph?`.
13
13
  `:`
14
14
  }
15
15
  `),this._subject=null,this._graph=""),this._prefixIRIs[s]=n+=":",this._write(`@prefix ${n} <${s}>.
16
- `)}if(i){this._hasPrefixes=!0;let n="",s="";for(let o in this._prefixIRIs)n+=n?`|${o}`:o,s+=(s?"|":"")+this._prefixIRIs[o];n=bt(n,/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&"),this._prefixRegex=new RegExp(`^(?:${s})[^/]*$|^(${n})([_a-zA-Z0-9](?:\\.?[\\-_a-zA-Z0-9])*)$`)}this._write(i?`
16
+ `)}if(i){this._hasPrefixes=!0;let n="";for(let s in this._prefixIRIs)n+=n?`|${s}`:s;n=bt(n,/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&"),this._prefixRegex=new RegExp(`^(${n})([_a-zA-Z0-9](?:\\.?[\\-_a-zA-Z0-9])*)$`)}this._write(i?`
17
17
  `:"",r)}blank(e,r){let i=e,n,s;switch(e===void 0?i=[]:e.termType?i=[{predicate:e,object:r}]:"length"in e||(i=[e]),s=i.length){case 0:return new Ve("[]");case 1:if(n=i[0],!(n.object instanceof Ve))return new Ve(`[ ${this._encodePredicate(n.predicate)} ${this._encodeObject(n.object)} ]`);default:let o="[";for(let a=0;a<s;a++)n=i[a],n.predicate.equals(e)?o+=`, ${this._encodeObject(n.object)}`:(o+=`${(a?`;
18
18
  `:`
19
19
  `)+this._encodePredicate(n.predicate)} ${this._encodeObject(n.object)}`,e=n.predicate);return new Ve(`${o}
package/lib/N3Writer.js CHANGED
@@ -177,7 +177,7 @@ class N3Writer {
177
177
  if (escape.test(iri)) iri = iri.replace(escapeAll, characterReplacer);
178
178
  // Try to represent the IRI as prefixed name, unless no prefixes were added
179
179
  const prefixMatch = this._hasPrefixes ? this._prefixRegex.exec(iri) : null;
180
- return !prefixMatch ? `<${iri}>` : !prefixMatch[1] ? iri : this._prefixIRIs[prefixMatch[1]] + prefixMatch[2];
180
+ return !prefixMatch ? `<${iri}>` : this._prefixIRIs[prefixMatch[1]] + prefixMatch[2];
181
181
  }
182
182
 
183
183
  // ### `_encodeLiteral` represents a literal
@@ -307,14 +307,10 @@ class N3Writer {
307
307
  // Recreate the prefix matcher
308
308
  if (hasPrefixes) {
309
309
  this._hasPrefixes = true;
310
- let IRIlist = '',
311
- prefixList = '';
312
- for (const prefixIRI in this._prefixIRIs) {
313
- IRIlist += IRIlist ? `|${prefixIRI}` : prefixIRI;
314
- prefixList += (prefixList ? '|' : '') + this._prefixIRIs[prefixIRI];
315
- }
310
+ let IRIlist = '';
311
+ for (const prefixIRI in this._prefixIRIs) IRIlist += IRIlist ? `|${prefixIRI}` : prefixIRI;
316
312
  IRIlist = (0, _Util.escapeRegex)(IRIlist, /[\]\/\(\)\*\+\?\.\\\$]/g, '\\$&');
317
- this._prefixRegex = new RegExp(`^(?:${prefixList})[^\/]*$|` + `^(${IRIlist})([_a-zA-Z0-9](?:\\.?[\\-_a-zA-Z0-9])*)$`);
313
+ this._prefixRegex = new RegExp(`^(${IRIlist})([_a-zA-Z0-9](?:\\.?[\\-_a-zA-Z0-9])*)$`);
318
314
  }
319
315
  // End a prefix block with a newline
320
316
  this._write(hasPrefixes ? '\n' : '', done);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "n3",
3
- "version": "3.0.0-alpha.3",
3
+ "version": "3.0.0-alpha.4",
4
4
  "description": "Lightning fast, asynchronous, streaming Turtle / N3 / RDF library.",
5
5
  "author": "Ruben Verborgh <ruben.verborgh@gmail.com>",
6
6
  "keywords": [
package/src/N3Writer.js CHANGED
@@ -178,8 +178,7 @@ export default class N3Writer {
178
178
  iri = iri.replace(escapeAll, characterReplacer);
179
179
  // Try to represent the IRI as prefixed name, unless no prefixes were added
180
180
  const prefixMatch = this._hasPrefixes ? this._prefixRegex.exec(iri) : null;
181
- return !prefixMatch ? `<${iri}>` :
182
- (!prefixMatch[1] ? iri : this._prefixIRIs[prefixMatch[1]] + prefixMatch[2]);
181
+ return !prefixMatch ? `<${iri}>` : this._prefixIRIs[prefixMatch[1]] + prefixMatch[2];
183
182
  }
184
183
 
185
184
  // ### `_encodeLiteral` represents a literal
@@ -321,14 +320,11 @@ export default class N3Writer {
321
320
  // Recreate the prefix matcher
322
321
  if (hasPrefixes) {
323
322
  this._hasPrefixes = true;
324
- let IRIlist = '', prefixList = '';
325
- for (const prefixIRI in this._prefixIRIs) {
323
+ let IRIlist = '';
324
+ for (const prefixIRI in this._prefixIRIs)
326
325
  IRIlist += IRIlist ? `|${prefixIRI}` : prefixIRI;
327
- prefixList += (prefixList ? '|' : '') + this._prefixIRIs[prefixIRI];
328
- }
329
326
  IRIlist = escapeRegex(IRIlist, /[\]\/\(\)\*\+\?\.\\\$]/g, '\\$&');
330
- this._prefixRegex = new RegExp(`^(?:${prefixList})[^\/]*$|` +
331
- `^(${IRIlist})([_a-zA-Z0-9](?:\\.?[\\-_a-zA-Z0-9])*)$`);
327
+ this._prefixRegex = new RegExp(`^(${IRIlist})([_a-zA-Z0-9](?:\\.?[\\-_a-zA-Z0-9])*)$`);
332
328
  }
333
329
  // End a prefix block with a newline
334
330
  this._write(hasPrefixes ? '\n' : '', done);