@ulb-darmstadt/shacl-form
Version:
SHACL form generator
1 lines • 3.1 kB
JavaScript
import{DataFactory as e}from"n3";import"rdfxml-streaming-parser";import"jsonld";var t=class{constructor(e,t){this.predicate=e.predicate,this.datatype=e.datatype,t&&(this.stylesheet=new CSSStyleSheet,this.stylesheet.replaceSync(t))}createViewer(e,t){return e.config.theme.createViewer(e.label,t,e)}},n=`http://www.w3.org/ns/shacl#`,r=`http://datashapes.org/dash#`,i=`http://www.w3.org/2001/XMLSchema#`,a=`http://www.w3.org/1999/02/22-rdf-syntax-ns#`,o=`http://www.w3.org/2000/01/rdf-schema#`,s=`http://www.w3.org/2004/02/skos/core#`,c=`http://www.w3.org/2002/07/owl#`,l=`http://www.w3.org/ns/oa#`,u=`http://purl.org/dc/terms/`,d=e.namedNode(`loaded-shapes`),f=e.namedNode(`loaded-data`),p=e.namedNode(a+`type`),m=e.namedNode(a+`langString`);e.namedNode(u+`conformsTo`);var h=e.namedNode(o+`subClassOf`),g=e.namedNode(c+`imports`),_=e.namedNode(s+`broader`),v=e.namedNode(s+`narrower`);e.namedNode(n+`NodeShape`),e.namedNode(n+`IRI`),e.namedNode(n+`property`);var y=e.namedNode(n+`class`);e.namedNode(n+`node`),e.namedNode(n+`targetClass`),e.namedNode(n+`nodeKind`),e.namedNode(i+`string`),e.namedNode(i+`boolean`);function b(e,t,r=n,i){let a=``,o=x(e,t,r,i);return o&&(a=o.value),a}function x(e,t,r=n,i){let a,o=r+t;if(i?.length){for(let t of i)for(let n of e)if(n.predicate.value===o){if(n.object.id.endsWith(`@${t}`))return n.object;n.object.id.indexOf(`@`)<0?a=n.object:a||=n.object}}else for(let t of e)if(t.predicate.value===o)return t.object;return a}function S(e,t){return b(e,`prefLabel`,`http://www.w3.org/2004/02/skos/core#`,t)||b(e,`label`,`http://www.w3.org/2000/01/rdf-schema#`,t)||b(e,`title`,`http://purl.org/dc/terms/`,t)||b(e,`name`,`http://xmlns.com/foaf/0.1/`,t)}function C(e,t,n){let r=[];for(let i of e)r.push({value:i,label:S(t.getQuads(i,null,null,null),n),children:[]});return r}function w(e,t,n,r,i=new Set){for(let a of t.owlImports)i.has(a.id)||(i.add(a.id),r.push(...n.getSubjects(p,e,a)));t.parent&&w(e,t.parent,n,r,i)}function T(e,t){if(t.in){let e=t.config.lists[t.in];return C(e?.length?e:[],t.config.store,t.config.languages)}else{let n=t.config.store.getSubjects(p,e,d);n.push(...t.config.store.getSubjects(p,e,f)),w(e,t,t.config.store,n);let r=new Map,i=new Map;for(let e of n)r.set(e.id,{value:e,label:S(t.config.store.getQuads(e,null,null,null),t.config.languages),children:[]});for(let e of n){for(let n of t.config.store.getObjects(e,_,null))r.has(n.id)&&i.set(e.id,n.id);for(let n of t.config.store.getObjects(e,v,null))r.has(n.id)&&i.set(n.id,e.id);for(let n of t.config.store.getObjects(e,h,null))r.has(n.id)&&i.set(e.id,n.id)}for(let[e,t]of i.entries())r.get(t)?.children?.push(r.get(e));let a=[];for(let[e,t]of r.entries())i.has(e)||a.push(t);for(let n of t.config.store.getSubjects(h,e,null))a.push(...T(n,t));return a}}`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${r}`,`${r}`,`${l}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,`${n}`,g.id,y.id,`${n}`,`${n}`;function E(e){return Math.max(e.minCount??0,e.qualifiedMinCount??0)}export{m as a,i,C as n,t as o,T as r,E as t};