{"_id":"@aiql-org/inference","_rev":"9-b599f5a7638f411e48a97019b1bd5f7a","name":"@aiql-org/inference","dist-tags":{"latest":"2.9.0"},"versions":{"2.6.1":{"name":"@aiql-org/inference","version":"2.6.1","keywords":["aiql","inference","ontology","reasoning","meta-ontology"],"author":{"name":"AIQL Contributors"},"license":"MIT","_id":"@aiql-org/inference@2.6.1","maintainers":[{"name":"aiql_valsee","email":"info@aiql.org"}],"homepage":"https://github.com/AI-Memory/aiql.ws#readme","bugs":{"url":"https://github.com/AI-Memory/aiql.ws/issues"},"dist":{"shasum":"6bed956cd2313ac88468887af357cb0caa6b144c","tarball":"https://registry.npmjs.org/@aiql-org/inference/-/inference-2.6.1.tgz","fileCount":22,"integrity":"sha512-pxIcp6fFkAKM4HY9LsnQ9Mm5FwYW1C2cJ+rvINlMiffU/hgHVnVduTqy9tHUe8JUtwfWdI436g7WCgAguLWcqw==","signatures":[{"sig":"MEUCIQD6yXwCQsRxi+ce05bhWjDmJiKRefDtn8EjDyQwE3vjaAIgeZ+J384/9shGlwD1nDcBXlyk+YkeUMsXX3T8pETTjC4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":178066},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"49ae8e6f4e7fc5b8c889b741e77d3bf8ab925858","scripts":{"test":"tsc && node dist/test.js","build":"tsc","clean":"rm -rf dist","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"aiql_valsee","email":"info@aiql.org"},"repository":{"url":"git+https://github.com/AI-Memory/aiql.ws.git","type":"git","directory":"packages/inference"},"_npmVersion":"11.7.0","description":"AIQL Inference Engine - Ontology reasoning, meta-ontology, and logical inference","directories":{},"_nodeVersion":"25.4.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"peerDependencies":{"@aiql-org/core":"^2.6.1","@aiql-org/security":"^2.6.1"},"_npmOperationalInternal":{"tmp":"tmp/inference_2.6.1_1771284307385_0.035061926561686496","host":"s3://npm-registry-packages-npm-production"}},"2.6.2":{"name":"@aiql-org/inference","version":"2.6.2","keywords":["aiql","inference","ontology","reasoning","meta-ontology"],"author":{"name":"AIQL Contributors"},"license":"MIT","_id":"@aiql-org/inference@2.6.2","maintainers":[{"name":"aiql_valsee","email":"info@aiql.org"}],"homepage":"https://github.com/AI-Memory/aiql.ws#readme","bugs":{"url":"https://github.com/AI-Memory/aiql.ws/issues"},"dist":{"shasum":"e33f3ab7bd89f96e670ef8dad94fa55bfc696796","tarball":"https://registry.npmjs.org/@aiql-org/inference/-/inference-2.6.2.tgz","fileCount":22,"integrity":"sha512-URUMiTNrZ/MB+o06fPkdCJ2R+z2srl3obnJHZnGgLwi1GiLI7FZHZgr8b6fRZ+sVAc+VmMvQLr5IqooUvXrpew==","signatures":[{"sig":"MEUCIAS00A0EMPRZaf6gVgWLyrCSG20fD7+rg/BoshqbLSjgAiEAovtIjPUSG5StyVi8a8kctBUM1Jp41Uq0CqHDwW+Hnac=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":178066},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"4c636623b43e2262461358541e139d74ec2a5316","scripts":{"test":"tsc && node dist/test.js","build":"tsc","clean":"rm -rf dist","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"aiql_valsee","email":"info@aiql.org"},"repository":{"url":"git+https://github.com/AI-Memory/aiql.ws.git","type":"git","directory":"packages/inference"},"_npmVersion":"11.7.0","description":"AIQL Inference Engine - Ontology reasoning, meta-ontology, and logical inference","directories":{},"_nodeVersion":"25.4.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"peerDependencies":{"@aiql-org/core":"^2.6.2","@aiql-org/security":"^2.6.2"},"_npmOperationalInternal":{"tmp":"tmp/inference_2.6.2_1771284915005_0.48011935018636565","host":"s3://npm-registry-packages-npm-production"}},"2.6.3":{"name":"@aiql-org/inference","version":"2.6.3","keywords":["aiql","inference","ontology","reasoning","meta-ontology"],"author":{"name":"AIQL Contributors"},"license":"MIT","_id":"@aiql-org/inference@2.6.3","maintainers":[{"name":"aiql_valsee","email":"info@aiql.org"}],"homepage":"https://github.com/aiql-org/aiql-core#readme","bugs":{"url":"https://github.com/aiql-org/aiql-core/issues"},"dist":{"shasum":"9228a269735bb5294572b357965b78ce8e1714ed","tarball":"https://registry.npmjs.org/@aiql-org/inference/-/inference-2.6.3.tgz","fileCount":22,"integrity":"sha512-iKDNBQF4Pa3tWih9qBJKiqyzgRaNmK6WHNojurq8Klp0/Vew2JxMDIzwaZsvdtLvCPWS5qBdb1hKWvir5SaUhQ==","signatures":[{"sig":"MEUCIQC7tSnkAwQGIqyaYbMJLwJeH1ELdKFVP2vHu3tIKfLIOwIgaDMMTjcTbZeyXaL/hrd8WTF8UudVibfFLkSp6dVbw1w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":177990},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"0a0872ab53c75781440db292ac010c2e8d581bd5","scripts":{"test":"tsc && node dist/test.js","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"aiql_valsee","email":"info@aiql.org"},"repository":{"url":"git+https://github.com/aiql-org/aiql-core.git","type":"git","directory":"packages/inference"},"_npmVersion":"10.8.2","description":"AIQL Inference Engine - Ontology reasoning, meta-ontology, and logical inference","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@aiql-org/core":"^2.6.3","@aiql-org/security":"^2.6.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/inference_2.6.3_1771293738888_0.0041569886395269595","host":"s3://npm-registry-packages-npm-production"}},"2.6.4":{"name":"@aiql-org/inference","version":"2.6.4","keywords":["aiql","inference","ontology","reasoning","meta-ontology"],"author":{"name":"AIQL Contributors"},"license":"MIT","_id":"@aiql-org/inference@2.6.4","maintainers":[{"name":"aiql_valsee","email":"info@aiql.org"}],"homepage":"https://github.com/aiql-org/aiql-core#readme","bugs":{"url":"https://github.com/aiql-org/aiql-core/issues"},"dist":{"shasum":"7c5e4eb7d25e18e0a1b366dbc9d43d18e6ef510e","tarball":"https://registry.npmjs.org/@aiql-org/inference/-/inference-2.6.4.tgz","fileCount":22,"integrity":"sha512-IsOHT7VD0OQZ005biq7ftMhV3XqobjxazUKsezp4+i+7AtCdDq8wi9kM9igzpR+xnzWaZ7JTVxT4xicPWG1/aA==","signatures":[{"sig":"MEUCIQCfJ0JoiqyUg0vQndWP+ekGZ9OO/4wcGSQU64Z7VQuuwAIgQkrfHKnH0PIu0yvlUUBZAnzWyma8X4TRgzNsrbO70LI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179692},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"0758dae2aed5084040360065ca50c559aaaa231d","scripts":{"test":"tsc && node dist/test.js","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"aiql_valsee","email":"info@aiql.org"},"repository":{"url":"git+https://github.com/aiql-org/aiql-core.git","type":"git","directory":"packages/inference"},"_npmVersion":"10.8.2","description":"AIQL Inference Engine - Ontology reasoning, meta-ontology, and logical inference","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@aiql-org/core":"^2.6.4","@aiql-org/security":"^2.6.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/inference_2.6.4_1771315171989_0.5024222415593578","host":"s3://npm-registry-packages-npm-production"}},"2.6.5":{"name":"@aiql-org/inference","version":"2.6.5","keywords":["aiql","inference","ontology","reasoning","meta-ontology"],"author":{"name":"AIQL Contributors"},"license":"MIT","_id":"@aiql-org/inference@2.6.5","maintainers":[{"name":"aiql_valsee","email":"info@aiql.org"}],"homepage":"https://github.com/aiql-org/aiql-core#readme","bugs":{"url":"https://github.com/aiql-org/aiql-core/issues"},"dist":{"shasum":"b15785119f6d66324e183e2360a5ab26ba0716d2","tarball":"https://registry.npmjs.org/@aiql-org/inference/-/inference-2.6.5.tgz","fileCount":22,"integrity":"sha512-tOw/KtyEjHXPCSx3uKOyDqR5tqI6OziAfBuq4Csalq2RB0wOuIqZdWVl+dVOe/+IMU8qxXoGMIy2CeSiZbLV6g==","signatures":[{"sig":"MEUCIQDRXSbO8hwUfb+X/ncEejaijTbvlcsLK+oJBYHhoPrwiQIgXCnFHKvntt92D+rQudbka68aDmaU+77YQ01HXguLhqk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179692},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"f8aef5680ddf447b5ecbcd869bb1eb133e50974f","scripts":{"test":"tsc && node dist/test.js","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"aiql_valsee","email":"info@aiql.org"},"repository":{"url":"git+https://github.com/aiql-org/aiql-core.git","type":"git","directory":"packages/inference"},"_npmVersion":"10.8.2","description":"AIQL Inference Engine - Ontology reasoning, meta-ontology, and logical inference","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@aiql-org/core":"^2.6.5","@aiql-org/security":"^2.6.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/inference_2.6.5_1771363386181_0.569287743482481","host":"s3://npm-registry-packages-npm-production"}},"2.6.6":{"name":"@aiql-org/inference","version":"2.6.6","keywords":["aiql","inference","ontology","reasoning","meta-ontology"],"author":{"name":"AIQL Contributors"},"license":"MIT","_id":"@aiql-org/inference@2.6.6","maintainers":[{"name":"aiql_valsee","email":"info@aiql.org"}],"homepage":"https://github.com/aiql-org/aiql-core#readme","bugs":{"url":"https://github.com/aiql-org/aiql-core/issues"},"dist":{"shasum":"c126b5afe23a9c5de6e2e51a3f7ad3e2451f97e5","tarball":"https://registry.npmjs.org/@aiql-org/inference/-/inference-2.6.6.tgz","fileCount":22,"integrity":"sha512-crmQrlVZRKT69V/5f5BiGV543yKUpARyeo2SF9gCQ8sSaNgNZTw+kMK0scntSgxtjly9ZflP6cm0z6fbzgM91Q==","signatures":[{"sig":"MEQCIDFMqWqab2uIPbq9WXSREP4kKt8EIhoiTUQCLBZp4+IyAiAKkugnnvPxtQXr54bndpEZqd+B/KC0vw/A8n/t1HZvXw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179692},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"36acb0e5b77d57e8171fc301f433fe6aa98c1cf0","scripts":{"test":"tsc && node dist/test.js","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"aiql_valsee","email":"info@aiql.org"},"repository":{"url":"git+https://github.com/aiql-org/aiql-core.git","type":"git","directory":"packages/inference"},"_npmVersion":"10.8.2","description":"AIQL Inference Engine - Ontology reasoning, meta-ontology, and logical inference","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@aiql-org/core":"^2.6.6","@aiql-org/security":"^2.6.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/inference_2.6.6_1771381125051_0.8842224074272595","host":"s3://npm-registry-packages-npm-production"}},"2.7.0":{"name":"@aiql-org/inference","version":"2.7.0","keywords":["aiql","inference","ontology","reasoning","meta-ontology"],"author":{"name":"AIQL Contributors"},"license":"MIT","_id":"@aiql-org/inference@2.7.0","maintainers":[{"name":"aiql_valsee","email":"info@aiql.org"}],"homepage":"https://github.com/aiql-org/aiql-core#readme","bugs":{"url":"https://github.com/aiql-org/aiql-core/issues"},"dist":{"shasum":"52a16750e76dd0dd2aaf863ad4d5218a79560c64","tarball":"https://registry.npmjs.org/@aiql-org/inference/-/inference-2.7.0.tgz","fileCount":22,"integrity":"sha512-9TXzB/D52YfAV0GKXEc9taFaRz3zJeebBPtRVRErib/mBTr1yAauv90CrZGvPc4h3uldlO6NoXTMVeR1aVYLVA==","signatures":[{"sig":"MEYCIQC2VcbXrWgtk2mmytp5g3mOlLQ1zmFqzR/J0FhRb0TOyQIhANNHfJXSb4DHsoN1ND6uTkxSMtnG2Ekv7hy9ZcJpnsqB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":191161},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"c432946a51e16767eb305a63a25b214ce89dff51","scripts":{"test":"tsc && node dist/test.js","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"aiql_valsee","email":"info@aiql.org"},"repository":{"url":"git+https://github.com/aiql-org/aiql-core.git","type":"git","directory":"packages/inference"},"_npmVersion":"10.8.2","description":"AIQL Inference Engine - Ontology reasoning, meta-ontology, and logical inference","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@aiql-org/core":"^2.7.0","@aiql-org/security":"^2.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/inference_2.7.0_1771437109582_0.9282983245016396","host":"s3://npm-registry-packages-npm-production"}},"2.8.0":{"name":"@aiql-org/inference","version":"2.8.0","keywords":["aiql","inference","ontology","reasoning","meta-ontology"],"author":{"name":"AIQL Contributors"},"license":"MIT","_id":"@aiql-org/inference@2.8.0","maintainers":[{"name":"aiql_valsee","email":"info@aiql.org"}],"homepage":"https://github.com/aiql-org/aiql-core#readme","bugs":{"url":"https://github.com/aiql-org/aiql-core/issues"},"dist":{"shasum":"5953b99cb1db1318b053041db74a4a609fa7037c","tarball":"https://registry.npmjs.org/@aiql-org/inference/-/inference-2.8.0.tgz","fileCount":22,"integrity":"sha512-867QbwHW/fsw30lylJquTTsCkwXqy15fTQ7aRolAbqKMSoCJGZ3gFRsREbZvd1GMHY2YGTxrWGfesBtrAhxxzQ==","signatures":[{"sig":"MEQCIF7S1Z51Ogqmz+Ebla/4ejr3lxOd/x6qapFm0idmq7+eAiABUVpNYl3HRy3Bq+Ih92JBSC8eJJNOIfxV0o/Kjds7Vw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":191161},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"ddaced045e75ddb5ed1258c4556bd98016daf847","scripts":{"test":"tsc && node dist/test.js","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"aiql_valsee","email":"info@aiql.org"},"repository":{"url":"git+https://github.com/aiql-org/aiql-core.git","type":"git","directory":"packages/inference"},"_npmVersion":"10.8.2","description":"AIQL Inference Engine - Ontology reasoning, meta-ontology, and logical inference","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@aiql-org/core":"^2.8.0","@aiql-org/security":"^2.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/inference_2.8.0_1771468746361_0.9721848096384444","host":"s3://npm-registry-packages-npm-production"}},"2.9.0":{"name":"@aiql-org/inference","version":"2.9.0","description":"AIQL Inference Engine - Ontology reasoning, meta-ontology, and logical inference","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"scripts":{"build":"tsc","test":"tsc && node dist/test.js","clean":"rm -rf dist"},"keywords":["aiql","inference","ontology","reasoning","meta-ontology"],"author":{"name":"AIQL Contributors"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/aiql-org/aiql-core.git","directory":"packages/inference"},"publishConfig":{"access":"public"},"dependencies":{"@aiql-org/core":"^2.9.0","@aiql-org/security":"^2.9.0"},"devDependencies":{"typescript":"^5.0.0"},"engines":{"node":">=20.0.0"},"_id":"@aiql-org/inference@2.9.0","gitHead":"12866c47f211ab63f82c911b9d1e805d29ed2864","bugs":{"url":"https://github.com/aiql-org/aiql-core/issues"},"homepage":"https://github.com/aiql-org/aiql-core#readme","_nodeVersion":"20.20.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-jcx4u7JkBVbs6at8Vk5Z6VL7Wb87KQpBWtSbDrX+T4/NH1ek45WYc6hDsWK1okfN2BHC55KonFDVgptjjjYdTA==","shasum":"d47758a7fb0bfb88173eebab8ed1b75f9e5f900f","tarball":"https://registry.npmjs.org/@aiql-org/inference/-/inference-2.9.0.tgz","fileCount":22,"unpackedSize":191161,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCM6/HFFNd/mEHX4yh3ldCs+1ccmL3wfOnCdXrPglrx2gIgCPlnKd6qjlsF0qJls6jRxrto4f41LjEGm+lCRG5sQ7c="}]},"_npmUser":{"name":"aiql_valsee","email":"info@aiql.org"},"directories":{},"maintainers":[{"name":"aiql_valsee","email":"info@aiql.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/inference_2.9.0_1771478739139_0.9855450199998272"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-16T23:25:07.302Z","modified":"2026-02-19T05:25:39.801Z","2.6.1":"2026-02-16T23:25:07.550Z","2.6.2":"2026-02-16T23:35:15.168Z","2.6.3":"2026-02-17T02:02:19.038Z","2.6.4":"2026-02-17T07:59:32.128Z","2.6.5":"2026-02-17T21:23:06.322Z","2.6.6":"2026-02-18T02:18:45.199Z","2.7.0":"2026-02-18T17:51:49.723Z","2.8.0":"2026-02-19T02:39:06.536Z","2.9.0":"2026-02-19T05:25:39.285Z"},"bugs":{"url":"https://github.com/aiql-org/aiql-core/issues"},"author":{"name":"AIQL Contributors"},"license":"MIT","homepage":"https://github.com/aiql-org/aiql-core#readme","keywords":["aiql","inference","ontology","reasoning","meta-ontology"],"repository":{"type":"git","url":"git+https://github.com/aiql-org/aiql-core.git","directory":"packages/inference"},"description":"AIQL Inference Engine - Ontology reasoning, meta-ontology, and logical inference","maintainers":[{"name":"aiql_valsee","email":"info@aiql.org"}],"readme":"# @aiql-org/inference\n\nOntology reasoning, meta-ontology, and logical inference engine for AIQL.\n\n## Features\n\n- **Inference Engine** — Forward/backward chaining over AIQL rules\n- **Ontology Reasoner** — OWL-style reasoning over semantic triples\n- **Meta-Ontology** — Self-referential ontology reasoning\n- **Attribute Unification** — Match and extract data from statement attributes\n\n## Usage\n\n```typescript\nimport { InferenceEngine, OntologyReasoner } from '@aiql-org/inference';\n\n// Initialize engine\nconst engine = new InferenceEngine();\n\n// Add facts\nengine.addFact({\n  subject: { name: 'Paper1', type: 'Concept' },\n  relation: { name: 'published_in', type: 'Identifier' },\n  object: { name: 'Nature', type: 'Concept' },\n  attributes: { year: 2024 }\n});\n\n// Query with attributes\nconst query = {\n  subject: { name: 'Paper1', type: 'Concept' },\n  relation: { name: 'published_in', type: 'Identifier' },\n  object: { name: 'Nature', type: 'Concept' },\n  attributes: { year: { name: 'Year', type: 'Variable' } } // Extract year\n};\n\nconst results = engine.query(query);\nconsole.log(results); // [{ substitutions: { Year: 2024 } }]\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}