@kanonak-protocol/sdk 6.5.0 → 6.6.0

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.
Files changed (42) hide show
  1. package/dist/browser.d.ts +1 -1
  2. package/dist/browser.js +1 -1
  3. package/dist/chunk-6WOPXTIL.js +1 -0
  4. package/dist/{chunk-GXEKJFXG.js → chunk-CPENAANM.js} +27 -27
  5. package/dist/{chunk-AAYMTPG7.js → chunk-DQGXJDQU.js} +1 -1
  6. package/dist/{chunk-7TNZ7ICK.js → chunk-FS7UGDEX.js} +1 -1
  7. package/dist/{chunk-Q57XCPAQ.js → chunk-I2T6ORSG.js} +1 -1
  8. package/dist/{chunk-5AMN6MW7.js → chunk-IWPCPQQY.js} +1 -1
  9. package/dist/{chunk-X4V6DEZL.js → chunk-LIN5SG5I.js} +1 -1
  10. package/dist/chunk-LK5SHY4B.js +1 -0
  11. package/dist/{chunk-FB5QKDNM.js → chunk-OHF4RIKS.js} +1 -1
  12. package/dist/{chunk-LKJVNKCN.js → chunk-SBWD7EOG.js} +1 -1
  13. package/dist/{chunk-MSOUPUUB.js → chunk-TF23WBSZ.js} +1 -1
  14. package/dist/chunk-VJUZKHQU.js +1 -0
  15. package/dist/index.d.ts +3 -3
  16. package/dist/index.js +4 -2
  17. package/dist/look/LookRenderer.d.ts +10 -4
  18. package/dist/parsing/index.js +1 -1
  19. package/dist/producer/index.js +1 -1
  20. package/dist/reasoning/KanonakVocabulary.d.ts +9 -0
  21. package/dist/reasoning/Reasoner.d.ts +6 -0
  22. package/dist/reasoning/index.d.ts +1 -1
  23. package/dist/reasoning/index.js +1 -1
  24. package/dist/resolution/index.js +1 -1
  25. package/dist/search/index.js +1 -1
  26. package/dist/server/closure.d.ts +11 -6
  27. package/dist/server/index.js +5 -5
  28. package/dist/shacl/ConformanceEvaluator.d.ts +8 -3
  29. package/dist/shacl/ConformanceScope.d.ts +32 -4
  30. package/dist/shacl/ShapesModel.d.ts +23 -0
  31. package/dist/shacl/index.d.ts +3 -3
  32. package/dist/shacl/uris.d.ts +1 -0
  33. package/dist/transformations/index.js +2 -2
  34. package/dist/transformations/v3/ExpressionEngineV3.d.ts +15 -0
  35. package/dist/uri-helpers/UriHelpers.d.ts +8 -0
  36. package/dist/uri-helpers/index.d.ts +1 -1
  37. package/dist/uri-helpers/index.js +1 -1
  38. package/dist/validation/index.js +1 -1
  39. package/package.json +2 -2
  40. package/dist/chunk-A224OOBZ.js +0 -1
  41. package/dist/chunk-PC3MYDGL.js +0 -1
  42. package/dist/chunk-WXUMROTA.js +0 -1
package/dist/browser.d.ts CHANGED
@@ -23,7 +23,7 @@ export type { ResourceResolutionResult, ILogger, DocumentVersionPick, } from './
23
23
  export { InMemoryKanonakDocumentRepository } from './repositories/InMemoryKanonakDocumentRepository.js';
24
24
  export { HttpKanonakDocumentRepository } from './repositories/HttpKanonakDocumentRepository.js';
25
25
  export { PublisherIndex } from './repositories/PublisherIndex.js';
26
- export { KanonakVocabulary } from './reasoning/KanonakVocabulary.js';
26
+ export { KanonakVocabulary, OWL_HAS_KEY } from './reasoning/KanonakVocabulary.js';
27
27
  export { SHACL_PUBLISHER, SHACL_PACKAGE, SH_SHAPE, SH_NODE_SHAPE, SH_PROPERTY_SHAPE, } from './shacl/uris.js';
28
28
  export { PublisherConfigResolver } from './repositories/PublisherConfig.js';
29
29
  export type { PublisherConfig } from './repositories/PublisherConfig.js';
package/dist/browser.js CHANGED
@@ -1 +1 @@
1
- import{a as ce,b as me,c as de,d as Ze,e as $e,f as er,g as rr,i as or,j as tr,k as nr,l as ar,m as ir,n as sr,o as pr,p as lr,q as cr,r as mr,s as dr}from"./chunk-MSOUPUUB.js";import{a as ur}from"./chunk-5AMN6MW7.js";import{a as qe,b as We,c as Ye,d as ze,e as Xe,f as Je,g as Qe,h as Rr,i as fr,j as yr,k as kr,l as Pr}from"./chunk-7TNZ7ICK.js";import{a as f,b as y,c as k,e as P,g as E,h as C,i as S,j as g,k as I,m as h,o as A,p as K,q as O,r as D,s as b,t as j,u as N}from"./chunk-Z2444SWM.js";import{a as ue,b as Re,c as fe}from"./chunk-FB5QKDNM.js";import{a as ye}from"./chunk-X4V6DEZL.js";import"./chunk-SC5M74NM.js";import{A as we,B as Fe,C as Me,M as Ge,a as ke,b as Pe,c as xe,d as Ee,g as Ce,h as Se,i as ge,j as Ie,l as he,m as Ae,n as Ke,o as Oe,p as De,q as be,r as je,s as Ne,t as Te,u as Ve,v as He,w as _e,x as ve,y as Le,z as Ue}from"./chunk-Q57XCPAQ.js";import"./chunk-A224OOBZ.js";import{m as Be}from"./chunk-GXEKJFXG.js";import"./chunk-QHABFCRC.js";import{a as c,b as m,c as d,d as u,e as R}from"./chunk-5FVUBF7N.js";import{a as p}from"./chunk-WXXZOJ4O.js";import{a as ie,g as se,h as pe,k as le}from"./chunk-LKJVNKCN.js";import{a as l}from"./chunk-5ZRVFYCP.js";import"./chunk-PEJALHXK.js";import{a as Y,b as z,h as Q,i as Z,j as $,k as ee,ka as oe,l as re,ma as te}from"./chunk-WXUMROTA.js";import{G as ne,H as ae,a as T,b as V,c as H,d as _,e as v,g as L,h as U,i as w,j as F,k as M,l as B,m as G,n as q,o as W,s as X,t as J}from"./chunk-PC3MYDGL.js";import"./chunk-F67UH4FD.js";import{c as e,d as r,e as o,f as t,g as n,h as a,i,k as s}from"./chunk-GGK6A6QK.js";import{a as x}from"./chunk-FUUTGGJS.js";export{E as ANY_PUBLISHER,He as AmbiguousReferenceRule,M as BooleanStatement,Ye as CANONICAL_FORM_VERSION,pr as CREDENTIAL_EXPIRY_SKEW_SECONDS,tr as CREDENTIAL_HELPER_PROTOCOL_VERSION,se as Carrier,Fe as ClassDefinitionRule,Oe as ClassHierarchyCycleRule,R as CredentialError,V as DefinedKanonak,me as EdgeType,_ as EmbeddedKanonak,he as EmbeddedKanonakTypeRule,G as EmbeddedStatement,kr as EntitlementDeniedError,Pr as EntitlementProducer,de as GraphBuilder,N as HttpKanonakDocumentRepository,A as INTEGRITY_PREFIX,Je as ImportBook,Ae as ImportExistenceRule,p as InMemoryKanonakDocumentRepository,f as KANONAK_USER_AGENT,T as Kanonak,Re as KanonakDocumentPositions,c as KanonakHttpError,le as KanonakObjectParser,Ge as KanonakObjectValidator,l as KanonakParser,x as KanonakUri,ye as KanonakUriBuilder,oe as KanonakVocabulary,q as ListStatement,Me as MarkdownLinkRule,W as MarkdownStatement,Te as NamespaceImportCycleRule,Ce as NamespacePrefixRule,ce as NodeType,F as NumberStatement,or as OAuthDiscovery,ve as ObjectPropertyValueValidationRule,xe as OntologyValidationError,ke as OntologyValidationResult,ze as PackageBuilder,Rr as ProducerRepository,Le as PropertyDomainRule,De as PropertyHierarchyCycleRule,Ue as PropertyKindRangeConsistencyRule,ue as PropertyMetadata,_e as PropertyRangeReferenceRule,be as PropertyRangeRequiredRule,ge as PropertyTypeSpecificityRule,h as PublisherConfigResolver,j as PublisherIndex,v as ReferenceKanonak,B as ReferenceStatement,we as ReservedNameShadowRule,Se as ResourceNamingRule,Y as ResourceResolver,te as ResourceTypeClassifier,Z as SHACL_PACKAGE,Q as SHACL_PUBLISHER,ee as SH_NODE_SHAPE,re as SH_PROPERTY_SHAPE,$ as SH_SHAPE,U as ScalarStatement,L as Statement,w as StringStatement,je as SubClassOfReferenceRule,Ne as SubPropertyOfReferenceRule,H as SubjectKanonak,Ie as SubjectKanonakTypeRequiredRule,cr as TOKEN_ENV,dr as TokenCredentialProvider,z as TypeResolver,Ve as UnresolvedPredicateRule,Ke as UnresolvedReferenceRule,Ee as ValidationContext,Pe as ValidationSeverity,fr as allowAllPolicy,b as assertIntegrityAsync,Be as buildOntologyModel,qe as canonicalForm,We as canonicalHash,pe as carrierOf,nr as checkCredentialAnswer,ar as checkHelperAnswer,ir as checkHelperEraseAnswer,S as checkPackageUrlTemplate,C as checkPackageUrlTemplates,e as compareVersions,D as computeIntegrityAsync,Xe as contentAddressedName,lr as createCredentialedFetch,t as createVersion,d as describeResponse,I as fillPackageUrlTemplate,ur as findDerivation,o as formatVersion,k as getKanonakUserAgent,m as httpError,a as isCompatibleVersion,i as isMajorCompatible,P as kanonakFetch,rr as narrowestScope,yr as noopMeter,Ze as normalizeHost,g as packageUrlTemplateFor,K as parseLockFile,$e as parseScope,n as parseVersionString,fe as parseWithPositions,sr as parseWwwAuthenticate,s as pickHighestDocument,J as referenceUris,u as retryAfterSecondsOf,Qe as sanitizeName,er as scopeContains,O as serializeLockFile,y as setKanonakUserAgent,ae as subjectAddress,mr as tokenEnvKeyFor,X as typeReferenceUris,ne as valuesOf,r as versionsEqual,ie as walkDefinedKanonaks};
1
+ import{a as me,b as de,c as ue,d as $e,e as er,f as rr,g as or,i as tr,j as nr,k as ar,l as ir,m as sr,n as pr,o as lr,p as cr,q as mr,r as dr,s as ur}from"./chunk-TF23WBSZ.js";import{a as Rr}from"./chunk-IWPCPQQY.js";import{a as We,b as Ye,c as ze,d as Xe,e as Je,f as Qe,g as Ze,h as fr,i as yr,j as kr,k as Pr,l as xr}from"./chunk-FS7UGDEX.js";import{a as f,b as y,c as k,e as P,g as E,h as C,i as S,j as g,k as A,m as I,o as h,p as K,q as O,r as D,s as b,t as j,u as N}from"./chunk-Z2444SWM.js";import{a as Re,b as fe,c as ye}from"./chunk-OHF4RIKS.js";import{a as ke}from"./chunk-LIN5SG5I.js";import"./chunk-SC5M74NM.js";import{A as Fe,B as Me,C as Be,M as qe,a as Pe,b as xe,c as Ee,d as Ce,g as Se,h as ge,i as Ae,j as Ie,l as he,m as Ke,n as Oe,o as De,p as be,q as je,r as Ne,s as Te,t as Ve,u as He,v as _e,w as Le,x as ve,y as Ue,z as we}from"./chunk-I2T6ORSG.js";import"./chunk-VJUZKHQU.js";import{m as Ge}from"./chunk-CPENAANM.js";import"./chunk-QHABFCRC.js";import{a as c,b as m,c as d,d as u,e as R}from"./chunk-5FVUBF7N.js";import{a as p}from"./chunk-WXXZOJ4O.js";import{a as se,g as pe,h as le,k as ce}from"./chunk-SBWD7EOG.js";import{a as l}from"./chunk-5ZRVFYCP.js";import"./chunk-PEJALHXK.js";import{a as Y,b as z,ga as oe,h as Q,i as Z,j as $,k as ee,l as re,ma as te,oa as ne}from"./chunk-6WOPXTIL.js";import{H as ae,I as ie,a as T,b as V,c as H,d as _,e as L,g as v,h as U,i as w,j as F,k as M,l as B,m as G,n as q,o as W,s as X,t as J}from"./chunk-LK5SHY4B.js";import"./chunk-F67UH4FD.js";import{c as e,d as r,e as o,f as t,g as n,h as a,i,k as s}from"./chunk-GGK6A6QK.js";import{a as x}from"./chunk-FUUTGGJS.js";export{E as ANY_PUBLISHER,_e as AmbiguousReferenceRule,M as BooleanStatement,ze as CANONICAL_FORM_VERSION,lr as CREDENTIAL_EXPIRY_SKEW_SECONDS,nr as CREDENTIAL_HELPER_PROTOCOL_VERSION,pe as Carrier,Me as ClassDefinitionRule,De as ClassHierarchyCycleRule,R as CredentialError,V as DefinedKanonak,de as EdgeType,_ as EmbeddedKanonak,he as EmbeddedKanonakTypeRule,G as EmbeddedStatement,Pr as EntitlementDeniedError,xr as EntitlementProducer,ue as GraphBuilder,N as HttpKanonakDocumentRepository,h as INTEGRITY_PREFIX,Qe as ImportBook,Ke as ImportExistenceRule,p as InMemoryKanonakDocumentRepository,f as KANONAK_USER_AGENT,T as Kanonak,fe as KanonakDocumentPositions,c as KanonakHttpError,ce as KanonakObjectParser,qe as KanonakObjectValidator,l as KanonakParser,x as KanonakUri,ke as KanonakUriBuilder,te as KanonakVocabulary,q as ListStatement,Be as MarkdownLinkRule,W as MarkdownStatement,Ve as NamespaceImportCycleRule,Se as NamespacePrefixRule,me as NodeType,F as NumberStatement,tr as OAuthDiscovery,oe as OWL_HAS_KEY,ve as ObjectPropertyValueValidationRule,Ee as OntologyValidationError,Pe as OntologyValidationResult,Xe as PackageBuilder,fr as ProducerRepository,Ue as PropertyDomainRule,be as PropertyHierarchyCycleRule,we as PropertyKindRangeConsistencyRule,Re as PropertyMetadata,Le as PropertyRangeReferenceRule,je as PropertyRangeRequiredRule,Ae as PropertyTypeSpecificityRule,I as PublisherConfigResolver,j as PublisherIndex,L as ReferenceKanonak,B as ReferenceStatement,Fe as ReservedNameShadowRule,ge as ResourceNamingRule,Y as ResourceResolver,ne as ResourceTypeClassifier,Z as SHACL_PACKAGE,Q as SHACL_PUBLISHER,ee as SH_NODE_SHAPE,re as SH_PROPERTY_SHAPE,$ as SH_SHAPE,U as ScalarStatement,v as Statement,w as StringStatement,Ne as SubClassOfReferenceRule,Te as SubPropertyOfReferenceRule,H as SubjectKanonak,Ie as SubjectKanonakTypeRequiredRule,mr as TOKEN_ENV,ur as TokenCredentialProvider,z as TypeResolver,He as UnresolvedPredicateRule,Oe as UnresolvedReferenceRule,Ce as ValidationContext,xe as ValidationSeverity,yr as allowAllPolicy,b as assertIntegrityAsync,Ge as buildOntologyModel,We as canonicalForm,Ye as canonicalHash,le as carrierOf,ar as checkCredentialAnswer,ir as checkHelperAnswer,sr as checkHelperEraseAnswer,S as checkPackageUrlTemplate,C as checkPackageUrlTemplates,e as compareVersions,D as computeIntegrityAsync,Je as contentAddressedName,cr as createCredentialedFetch,t as createVersion,d as describeResponse,A as fillPackageUrlTemplate,Rr as findDerivation,o as formatVersion,k as getKanonakUserAgent,m as httpError,a as isCompatibleVersion,i as isMajorCompatible,P as kanonakFetch,or as narrowestScope,kr as noopMeter,$e as normalizeHost,g as packageUrlTemplateFor,K as parseLockFile,er as parseScope,n as parseVersionString,ye as parseWithPositions,pr as parseWwwAuthenticate,s as pickHighestDocument,J as referenceUris,u as retryAfterSecondsOf,Ze as sanitizeName,rr as scopeContains,O as serializeLockFile,y as setKanonakUserAgent,ie as subjectAddress,dr as tokenEnvKeyFor,X as typeReferenceUris,ae as valuesOf,r as versionsEqual,se as walkDefinedKanonaks};
@@ -0,0 +1 @@
1
+ import{D as w,E as Q,c as G,d as X,p as S,q as Y,s as q,t as I,y as W,z as L}from"./chunk-LK5SHY4B.js";import{b as H}from"./chunk-F67UH4FD.js";import{l as B}from"./chunk-GGK6A6QK.js";import{a as x}from"./chunk-FUUTGGJS.js";var z=class{cache=new Map;repository;logger;constructor(e,n){this.repository=e,this.logger=n}async resolveEntityAsync(e,n){let o=n.metadata?.namespace_?.toString()??"unknown",s=this.cache.get(o);if(s){let i=s.get(e);if(i)return i}let a=await this.buildEntityIndexAsyncInternal(n,new Set,"",new Map);return this.cache.set(o,a),a.get(e)??null}async resolveAllEntitiesAsync(e,n){let o=await this.buildAllEntitiesIndexAsync(n,new Set,"");if(e.includes(".")){let s=e.split("."),a=s[0],i=s[1],y=await this.findDocumentForAlias(n,a);return y?await this.resolveAllEntitiesAsync(i,y):[]}return o.filter(s=>s.entityName===e)}async buildAllEntitiesIndexAsync(e,n,o){let s=[],a=e.metadata?.namespace_?.toString()??"unknown";if(this.logger?.debug?.(`Building ALL entities index for namespace: ${a}`),n.has(a))return this.logger?.debug?.(`Skipping ${a} - already visited (circular import prevention)`),s;n.add(a);let i=o.length===0?a:`${o} \u2192 ${a}`;for(let[y,l]of Object.entries(e.body))if(!y.includes(".")&&l&&typeof l=="object"&&!Array.isArray(l)){if(!e.metadata.namespace_)continue;let g=e.metadata.namespace_.version??{major:1,minor:0,patch:0,toString:()=>"1.0.0",equals:()=>!1,getHashCode:()=>0,compareTo:()=>0};s.push({entityName:y,uri:new x(e.metadata.namespace_.publisher,e.metadata.namespace_.package_,y,g),entity:l,definedInNamespace:a,isImported:o.length>0,importPath:i})}if(this.logger?.debug?.(`Collected ${s.length} entities from ${a}`),e.metadata?.imports){let y=Object.values(e.metadata.imports).reduce((l,g)=>l+g.length,0);this.logger?.debug?.(`Processing ${y} import(s) for ${a}`);for(let[l,g]of Object.entries(e.metadata.imports))for(let d of g)if(!H(d))try{this.logger?.debug?.(`Resolving import: ${l}/${d.packageName}`);let m=await this.repository.getHighestCompatibleVersionAsync(l,d);if(m){this.logger?.debug?.(`Successfully loaded import: ${m.metadata?.namespace_?.toString()}`);let k=await this.buildAllEntitiesIndexAsync(m,n,i);s.push(...k),this.logger?.debug?.(`Added ${k.length} entities from import ${m.metadata?.namespace_?.toString()}`)}else this.logger?.warn?.(`Failed to load import: ${l}/${d.packageName}`)}catch(m){let k=m;throw this.logger?.error?.(`Failed to process import ${l}/${d.packageName} for namespace ${a}. Error: ${k.message}`,k),new Error(`Failed to process import ${l}/${d.packageName} for namespace ${a}. See inner exception for details.`,{cause:m})}}return s}async buildEntityIndexAsync(e){return await this.buildEntityIndexAsyncInternal(e,new Set,"",new Map)}async buildEntityIndexAsyncInternal(e,n,o,s){let a=new Map,i=e.metadata?.namespace_?.toString()??"unknown";if(this.logger?.debug?.(`Building entity index for namespace: ${i}`),n.has(i))return this.logger?.debug?.(`Skipping ${i} - circular import in progress`),a;let y=s.get(i);if(y)return y;n.add(i);let l=o.length===0?i:`${o} \u2192 ${i}`,g=0;for(let[d,m]of Object.entries(e.body))if(!d.includes(".")&&m&&typeof m=="object"&&!Array.isArray(m)){if(!e.metadata.namespace_)continue;if(!a.has(d)){let k=e.metadata.namespace_.version??{major:1,minor:0,patch:0,toString:()=>"1.0.0",equals:()=>!1,getHashCode:()=>0,compareTo:()=>0};a.set(d,{entityName:d,uri:new x(e.metadata.namespace_.publisher,e.metadata.namespace_.package_,d,k),entity:m,definedInNamespace:i,isImported:o.length>0,importPath:l}),g++}}if(this.logger?.debug?.(`Indexed ${g} entities from ${i}`),e.metadata?.imports){let d=Object.values(e.metadata.imports).reduce((m,k)=>m+k.length,0);this.logger?.debug?.(`Processing ${d} import(s) for ${i}`);for(let[m,k]of Object.entries(e.metadata.imports))for(let b of k)if(!H(b))try{this.logger?.debug?.(`Resolving import: ${m}/${b.packageName}`);let h=await this.repository.getHighestCompatibleVersionAsync(m,b);if(h){this.logger?.debug?.(`Successfully loaded import: ${h.metadata?.namespace_?.toString()}`);let U=await this.buildEntityIndexAsyncInternal(h,n,l,s),v=0;for(let[A,P]of U.entries()){let _=a.get(A);if(!_)a.set(A,P),v++;else if(_.isImported&&P.isImported&&(_.uri.publisher!==P.uri.publisher||_.uri.package_!==P.uri.package_)){let C=_.isAmbiguous?_:{..._,isAmbiguous:!0,ambiguousNamespaces:[_.definedInNamespace]};C.ambiguousNamespaces.includes(P.definedInNamespace)||C.ambiguousNamespaces.push(P.definedInNamespace),a.set(A,C),this.logger?.warn?.(`Ambiguous reference '${A}': defined in ${C.ambiguousNamespaces.join(", ")}`)}if(b.alias&&!A.includes(".")){let C=`${b.alias}.${A}`;a.has(C)||(a.set(C,P),v++)}}this.logger?.debug?.(`Merged ${v} entities from import ${h.metadata?.namespace_?.toString()}`)}else this.logger?.warn?.(`Failed to load import: ${m}/${b.packageName}`)}catch(h){let U=h;throw this.logger?.error?.(`Failed to process import ${m}/${b.packageName} for namespace ${i}. Error: ${U.message}`,U),new Error(`Failed to process import ${m}/${b.packageName} for namespace ${i}. See inner exception for details.`,{cause:h})}}return n.delete(i),s.set(i,a),a}async findDocumentForAlias(e,n){if(!e.metadata?.imports)return null;for(let[o,s]of Object.entries(e.metadata.imports))for(let a of s)if(!H(a)){if(a.alias===n)return await this.repository.getHighestCompatibleVersionAsync(o,a);if(!a.alias&&a.packageName===n)return await this.repository.getHighestCompatibleVersionAsync(o,a)}return null}clearCache(){this.cache.clear()}clearCacheForDocument(e){this.cache.delete(e)}};var J=class t{static KNOWN_XSD_DATATYPES=new Set(["string","integer","int","boolean","decimal","float","double","date","datetime","time","duration","anyuri","base64binary","hexbinary","long","short","byte","nonnegativeinteger","positiveinteger","negativeinteger","nonpositiveinteger","unsignedint","unsignedlong","unsignedshort","unsignedbyte"]);resourceResolver;constructor(e){this.resourceResolver=e}isXsdDatatype(e){return e?e.publisher==="kanonak.org"&&e.package_==="core-xsd"&&t.KNOWN_XSD_DATATYPES.has(e.name.toLowerCase()):!1}isLiteralType(e){return e?e.publisher==="kanonak.org"&&e.package_==="core-rdf"&&e.name==="Literal":!1}isMarkdownDatatype(e){return e?e.publisher==="kanonak.org"&&e.package_==="core-prose"&&e.name==="Markdown":!1}isSubstitutableDatatype(e){return t.isSubstitutableDatatypeUri(e)}static isSubstitutableDatatypeUri(e){return e?e.publisher==="kanonak.org"&&e.package_==="core-prose"&&(e.name==="SubstitutableString"||e.name==="Markdown"):!1}isKnownXsdDatatypeName(e){let n=e.includes(".")?e.split(".")[1]:e;return t.KNOWN_XSD_DATATYPES.has(n.toLowerCase())}async isClassTypeAsync(e,n){if(this.isKnownXsdDatatypeName(e))return!1;let o=await this.resourceResolver.resolveEntityAsync(e,n);if(o){let s=o.entity.type;if(s){let a=String(s);return a==="Class"||a==="rdfs.Class"||a.endsWith(".Class")}}return!0}getPropertyTypeClassification(e){if(!e||e.trim().length===0)return"Property";switch(e.includes(".")?e.split(".")[1]:e){case"DatatypeProperty":return"DatatypeProperty";case"ObjectProperty":return"ObjectProperty";case"AnnotationProperty":return"AnnotationProperty";case"Property":return"Property";default:return"Property"}}isEffectiveDatatypeProperty(e,n){return!!(e==="DatatypeProperty"||e==="Property"&&this.isXsdDatatype(n)||e==="Property"&&this.isLiteralType(n))}isEffectiveObjectProperty(e,n){return!!(e==="ObjectProperty"||e==="Property"&&n&&!this.isXsdDatatype(n)&&!this.isLiteralType(n))}};function He(t){return`${t.publisher}/${t.package_}/${t.name}`}function u(t,e,n){return`${t}/${e}/${n}`}function Ie(t){return`${t.s}|${t.p}|${ae(t.o)}`}function ae(t){switch(t.kind){case"uri":return`u:${t.key}`;case"literal":return`l:${t.datatype}:${t.lexical}`;case"blank":return`b:${t.id}`}}function De(t,e,n){return{s:t,p:e,o:{kind:"uri",key:n}}}var se="kanonak.org",ie="core-shacl",r=t=>({publisher:se,package_:ie,name:t}),D=r("Shape"),N=r("NodeShape"),T=r("PropertyShape"),Te=r("targetClass"),je=r("property"),$e=r("path"),Me=r("minCount"),ve=r("maxCount"),Le=r("datatype"),we=r("class"),Ve=r("in"),Fe=r("pattern"),Be=r("flags"),Ge=r("minLength"),Xe=r("maxLength"),Ye=r("minInclusive"),qe=r("maxInclusive"),We=r("message"),Qe=r("targetNode"),ze=r("targetSubjectsOf"),Je=r("targetObjectsOf"),Ze=r("closed"),et=r("ignoredProperties"),tt=r("nodeKind"),nt=r("IRI"),rt=r("BlankNode"),ot=r("Literal"),at=r("severity"),st=r("Violation"),it=r("Warning"),pt=r("Info"),ct=r("ValidationReport"),lt=r("conforms"),ut=r("result"),yt=r("ValidationResult"),mt=r("focusNode"),dt=r("resultPath"),gt=r("resultMessage"),ft=r("resultSeverity"),kt=r("sourceShape"),St=r("value"),bt=r("sourceConstraintComponent"),_t=r("MinCountConstraintComponent"),ht=r("MaxCountConstraintComponent"),Pt=r("DatatypeConstraintComponent"),Ct=r("ClassConstraintComponent"),Kt=r("InConstraintComponent"),Et=r("PatternConstraintComponent"),At=r("MinLengthConstraintComponent"),xt=r("MaxLengthConstraintComponent"),Rt=r("MinInclusiveConstraintComponent"),Ot=r("MaxInclusiveConstraintComponent"),Ut=r("NodeKindConstraintComponent"),Ht=r("ClosedConstraintComponent"),It=r("hasValue"),Dt=r("qualifiedValueShape"),Nt=r("qualifiedMinCount"),Tt=r("qualifiedMaxCount"),jt=r("HasValueConstraintComponent"),$t=r("QualifiedMinCountConstraintComponent"),Mt=r("QualifiedMaxCountConstraintComponent"),vt=r("HasKeyConstraintComponent");var p="kanonak.org",c="core-rdf",f="core-owl",ee="core-kanonak",pe={publisher:p,package_:f,name:"hasKey"},$=new Map([["type",c],["subClassOf",c],["subPropertyOf",c],["domain",c],["range",c],["label",c],["comment",c],["seeAlso",c],["isDefinedBy",c],["member",c],["Resource",c],["Class",c],["Property",c],["Datatype",c],["Literal",c],["List",c],["ObjectProperty",f],["DatatypeProperty",f],["AnnotationProperty",f],["Thing",f],["Nothing",f],["Package",ee]]),ce=new Set(["type","subClassOf","subPropertyOf","domain","range"]);function Ft(t){return $.has(t)}function le(t){let e=$.get(t);return e?{publisher:p,package_:e}:void 0}function Bt(){return[...new Set($.values())].map(t=>({publisher:p,package_:t}))}function Gt(t){let e=le(t);if(!e)throw new Error(`builtinUri: '${t}' is not a reserved built-in term.`);return{...e,name:t}}function V(t,e,n){if(!t||!t.name)return;let o=$.get(t.name);if(!o)return;let s=()=>{t.publisher=p,t.package_=o,n&&(t.version=n.get(o))};if(ce.has(t.name)){let a=t.publisher===p&&t.package_===o;t.publisher=p,t.package_=o,!a&&n&&(t.version=n.get(o));return}t.publisher===p&&t.package_===o||t.publisher&&t.publisher.length>0&&(!e||e(t))||s()}var Z=class{type=u(p,c,"type");subClassOf=u(p,c,"subClassOf");subPropertyOf=u(p,c,"subPropertyOf");domain=u(p,c,"domain");range=u(p,c,"range");label=u(p,c,"label");comment=u(p,c,"comment");resource=u(p,c,"Resource");class_=u(p,c,"Class");datatype=u(p,c,"Datatype");literal=u(p,c,"Literal");equivalentClass=u(p,f,"equivalentClass");equivalentProperty=u(p,f,"equivalentProperty");inverseOf=u(p,f,"inverseOf");sameAs=u(p,f,"sameAs");transitiveProperty=u(p,f,"TransitiveProperty");symmetricProperty=u(p,f,"SymmetricProperty");objectProperty=u(p,f,"ObjectProperty");datatypeProperty=u(p,f,"DatatypeProperty");annotationProperty=u(p,f,"AnnotationProperty");hasKey=j(pe);package_=u(p,ee,"Package");shape=j(D);nodeShape=j(N);propertyShape=j(T)};function j(t){return u(t.publisher,t.package_,t.name)}var ue=new Set(["kanonak.org/core-rdf","kanonak.org/core-owl","kanonak.org/core-xsd","kanonak.org/core-kanonak"]);function R(t){let e=t;if(e.entity&&typeof e.entity=="object"){let n=e.entity.type;if(typeof n=="string"){let s={publisher:"",package_:"",name:n.includes(".")?n.substring(n.lastIndexOf(".")+1):n};return V(s),{publisher:s.publisher,package_:s.package_,name:s.name}}}return ne(t)[0]??null}function ne(t){let e=t;if(e.entity&&typeof e.entity=="object"){let n=R(t);return n?[n]:[]}return Array.isArray(e.statement)?q(t).map(n=>{let o={publisher:n.publisher??"",package_:n.package_??"",name:n.name};return V(o),{publisher:o.publisher,package_:o.package_,name:o.name}}):[]}var ye=[D,N,T];function O(t,e){return ue.has(`${t}/${e}`)}var me=new Set(["Property","ObjectProperty","DatatypeProperty","AnnotationProperty"]);function F(t){if(O(t.publisher,t.package_))return me.has(t.name)?t.name:void 0}var te=class t{static getTypeUri(e){return R(e)}static isCoreOntologyType(e){return O(e.publisher,e.package_)}static hasCoreType(e,n){return ne(e).some(o=>O(o.publisher,o.package_)&&o.name===n)}static isClassType(e){return t.hasCoreType(e,"Class")}static isDatatypeType(e){return t.hasCoreType(e,"Datatype")}static isDatatypePropertyType(e){return t.hasCoreType(e,"DatatypeProperty")}static isObjectPropertyType(e){return t.hasCoreType(e,"ObjectProperty")}static isAnnotationPropertyType(e){return t.hasCoreType(e,"AnnotationProperty")}static isGenericPropertyType(e){return t.hasCoreType(e,"Property")}static isAnyPropertyType(e){let n=R(e);return!n||!O(n.publisher,n.package_)?!1:n.name==="Property"||n.name==="DatatypeProperty"||n.name==="ObjectProperty"||n.name==="AnnotationProperty"}static isShapeType(e){let n=R(e);return n?ye.some(o=>Y(n,o)):!1}static isSchemaDefinitionType(e){if(t.isShapeType(e))return!0;let n=R(e);return!n||!O(n.publisher,n.package_)?!1:n.name==="Class"||n.name==="Property"||n.name==="DatatypeProperty"||n.name==="ObjectProperty"||n.name==="AnnotationProperty"||n.name==="Datatype"}static isInstanceOfKnownClass(e,n){if(t.isSchemaDefinitionType(e))return!1;let o=R(e);return o?n.has(o.name):!1}};var K="kanonak.org",E="core-rdf",de={publisher:K,package_:E,name:"domain"},ge={publisher:K,package_:E,name:"range"},fe={publisher:K,package_:E,name:"subClassOf"},ke={publisher:K,package_:E,name:"type"},Se={publisher:K,package_:E,name:"label"},be={publisher:K,package_:E,name:"comment"},_e=new x(K,E,"Resource");function he(t){try{let e=B(`${t.namespace}/${t.name}`);return e.kind==="resource"?e.uri:void 0}catch{return}}function oe(t,e){let n=[],o=new Set,s="version"in e?e.version:void 0,a=[new x(e.publisher,e.package_,e.name,s??void 0)];for(;a.length>0;){let i=a.shift(),y=S(i);if(o.has(y))continue;o.add(y),n.push(i);let l=Pe(t,i);l&&a.push(...I(l,fe))}return n}function Pe(t,e){return e.version&&typeof e.version.major=="number"?W(t,e)??L(t,e)[0]:L(t,e)[0]}function M(t,e){let n;for(let o of Ae(e)){let s=Ce(t,o);if(s){if(s!=="Property")return s;n??=s}}return n}function Ce(t,e){let n=F(e);if(n)return n;let o=re.get(t);o||(o=new Map,re.set(t,o));let s=e.version,a=s&&typeof s.major=="number"?`${S(e)}@${s.major}.${s.minor}.${s.patch}`:S(e),i=o.get(a);if(i!==void 0)return i??void 0;let y;for(let l of oe(t,e)){let g=F(l);if(g){if(g!=="Property"){y=g;break}y??="Property"}}return o.set(a,y??null),y}var re=new WeakMap;function on(t,e){return M(t,e)!==void 0}function an(t,e){return M(t,e)==="ObjectProperty"}function sn(t,e){return M(t,e)==="DatatypeProperty"}function Ke(t,e){let n=new Set([S(_e)]);for(let o of oe(t,e))n.add(S(o));return n}function Ee(t,e){let n=Ke(t,e),o=[],s=new Set;for(let a of t){if(!(a instanceof G))continue;let i=M(t,a);if(!i)continue;let y=I(a,de);if(!y.some(d=>n.has(S(d))))continue;let l=he(a);if(!l)continue;let g=S(l);s.has(g)||(s.add(g),o.push({uri:l,label:w(a,Se),comment:w(a,be),kind:i==="ObjectProperty"?"object":i==="DatatypeProperty"?"datatype":"other",range:Q(a,ge),domains:y}))}return o}function pn(t,e,n){let o=Ee(t,e).find(s=>S(s.uri)===S(n));return o?{ok:!0,descriptor:o}:{ok:!1,message:`Property ${n.publisher}/${n.package_}/${n.name} is not in scope for ${e.publisher}/${e.package_}/${e.name}.`}}function Ae(t){let e=I(t,ke);return e.length>0?e:t instanceof X&&t.rangeType?[t.rangeType]:[]}export{z as a,J as b,He as c,u as d,Ie as e,ae as f,De as g,se as h,ie as i,D as j,N as k,T as l,Te as m,je as n,$e as o,Me as p,ve as q,Le as r,we as s,Ve as t,Fe as u,Be as v,Ge as w,Xe as x,Ye as y,qe as z,We as A,Qe as B,ze as C,Je as D,Ze as E,et as F,tt as G,nt as H,rt as I,ot as J,at as K,st as L,it as M,pt as N,_t as O,ht as P,Pt as Q,Ct as R,Kt as S,Et as T,At as U,xt as V,Rt as W,Ot as X,Ut as Y,Ht as Z,It as _,Dt as $,Nt as aa,Tt as ba,jt as ca,$t as da,Mt as ea,vt as fa,pe as ga,Ft as ha,le as ia,Bt as ja,Gt as ka,V as la,Z as ma,F as na,te as oa,he as pa,oe as qa,M as ra,on as sa,an as ta,sn as ua,Ee as va,pn as wa,Ae as xa};