{"id":13760544,"url":"https://github.com/lambdamikel/OntoLisp","last_synced_at":"2025-05-10T11:30:21.770Z","repository":{"id":53488966,"uuid":"345919955","full_name":"lambdamikel/OntoLisp","owner":"lambdamikel","description":"A Common Lisp Framework for the Semantic Web","archived":false,"fork":false,"pushed_at":"2021-03-28T23:37:34.000Z","size":576,"stargazers_count":21,"open_issues_count":0,"forks_count":3,"subscribers_count":4,"default_branch":"main","last_synced_at":"2024-11-16T17:41:12.998Z","etag":null,"topics":["common-lisp","description-logics","lisp","ontologies","owlapi","owllink","semantic-web","semantic-web-language"],"latest_commit_sha":null,"homepage":"https://www.michael-wessel.info/","language":"Common Lisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lambdamikel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-03-09T07:31:10.000Z","updated_at":"2024-10-29T23:45:36.000Z","dependencies_parsed_at":"2022-08-18T06:05:11.672Z","dependency_job_id":null,"html_url":"https://github.com/lambdamikel/OntoLisp","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lambdamikel%2FOntoLisp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lambdamikel%2FOntoLisp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lambdamikel%2FOntoLisp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lambdamikel%2FOntoLisp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lambdamikel","download_url":"https://codeload.github.com/lambdamikel/OntoLisp/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253409878,"owners_count":21903984,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["common-lisp","description-logics","lisp","ontologies","owlapi","owllink","semantic-web","semantic-web-language"],"created_at":"2024-08-03T13:01:12.589Z","updated_at":"2025-05-10T11:30:21.312Z","avatar_url":"https://github.com/lambdamikel.png","language":"Common Lisp","funding_links":[],"categories":["Common Lisp"],"sub_categories":[],"readme":"# OntoLisp\nA Common Lisp Framework for the Semantic Web\n\n## Contributors\n\n[Tom Gillespi](https://github.com/tgbugs) - thanks for the QuickLisp and ASDF changes! \n\n## Loading OntoLisp using ql:quickload\nOntoLisp uses [Quicklisp](https://www.quicklisp.org/) to load dependencies.\n\nAdd the following block to your `~/.sbclrc` file or equivalent\nor `~/.config/common-lisp/source-registry.conf`.\n\n```lisp\n(asdf:initialize-source-registry\n '(:source-registry\n   (:tree #p\"/path/to/OntoLisp/\")\n   :inherit-configuration))\n```\n\nFrom a repl you can then run\n```lisp\n(ql:quickload :ontolisp)\n(owlapi::owlapi-test)\n(owl-syntaxes::owl-syntaxes-test)\n```\nIf compilation is trigger on multiple calls to `ql:quickload`\nyou can call `(asdf:compile-system :ontolisp)` which should prevent\nthe need to compile the system on each load.\n\n## About \n\n(Old README.TXT) \n\n```\nOntoLisp (NOSA): A Semantic Web Framework for OWL 2 and OWLlink in Common Lisp\n\nby Michael Wessel \n\nVersion 0.9 \n\nOntoLisp (NOSA) is a Common Lisp library providing:\n\n- an ontology management framework inspired by the Java OWLAPI (v2.2)\n\n  http://owlapi.sourceforge.net/\n\n- OWl 2 parsers for OWL 2 functional and OWL 2 XML syntax\n  \n  http://www.w3.org/TR/owl2-syntax/\n\n- OWL 2 renderers for OWL 2 functional, OWL 2 XML, and OWL 2 RDF syntax\n\n- an OWLlink implementation \n\n  http://www.owllink.org/\n   \n  featuring the OWLlink XML, OWLlink functional, \n  and OWLlink S-Exression syntax, as well as a converter for these\n  different syntaxes.   \n\nOntoLisp has been tested with Allegro Common Lisp (ACL) 8.2, Lispworks\n(LW) 5.2, and Steel Bank Common Lisp (SBCL) 1.0.40, using Linux and\nMac OS-X.\n\n\nOntoLisp is under the Lisp Lesser GNU Public License\n\nhttp://opensource.franz.com/preamble.html\n\n\nOntoLisp uses the following third-party libraries / files: \n\n- ASDF - Another System Definition Facility by Daniel Barlow et al.\n\n  http://common-lisp.net/project/asdf/\n\n  as the system definition facility (ontolisp:ontolisp.asd)\n\n- Wilbur2 by Ora Lassila\n\n  http://www.lassila.org/\n\n  is currently used only for the XML parsing\n  (soon for RDF as well, when OWL 2 RDF support will be added in a \n  future version)\n\n  I have made some changes to Wilbur2, please consult \n  wilbur2:wilbur.asd. \n\n- S-HTTP-Client by Sven Van Caekenberghe\n\n  http://homepage.mac.com/svc/s-http-client/\n\n  is used for s-http-client:do-http-request \n\n  Alternatively, CL-HTTP (http://www.cl-http.org:8001/cl-http/)\n  or AllegroServe (http://allegroserve.sourceforge.net/) could \n  be used (see ontolisp:http-stream.lisp)\n\n- the other included systems (puri, s-utils, s-sysdeps, s-base64)\n  are required by S-HTTP-Client and are included here for\n  convenience (if you don't use S-HTTP-CLIENT, these directories\n  can be deleted) \n\n- the ontolisp:test; library contains (original and modified version) of\n  the OWL 2 primer in different syntaxes for testing purposes, \n  \n  http://www.w3.org/TR/owl2-primer/\n\n  as well as the famous people \u0026 pets ontology in functional syntax\n  by Sean Bechhofer . These ontologies are public and can be found \n  in various ontology repositories on the web, e.g.,\n  \n  http://owl.cs.manchester.ac.uk/repository/\n\n\n\nIn order to load OntoLisp, simply evaluate\n\n(load \"/home/\u003cyourhomedir\u003e/ontolisp/ontolisp.lisp\") \n\nPlease note that \"~\" will not work under SBCL, and evaluating the\nontolisp.lisp buffer from emacs will not work - the file has to be\nloaded, due to the utilized *load-pathname*. If loading doesn't work\nfor you, simply edit ontolisp.lisp (at the position of the break).\n\nSourcecode / API documentation is currently not provided. Please work\nthrough the provided examples in order to see what OntoLisp can do for\nyou. Start inspecting ontolisp:owlapi-test.lisp and evaluate\n\n(owlapi::owlapi-test)\n\nin your Listener to become familiar with the OWLAPI of OntoLisp.\n\nThen, to learn about the OWL 2 parsing and rendering facilities as\nwell as the OWLlink processor and converter, inspect\nontolisp:owl-syntaxes-test.lisp and evaluate\n\n(owl-syntaxes::owl-syntaxes-test)\n\nin your Listener.\n\nPlease note that OntoLisp currently does not come with a DL reasoner\nand hence cannot really perform reasoning. Rather. a set of dummy\nfunctions is provided as the bridge to the reasoner which produce some\noutput.  I will add a DL reasoner in a future version of OntoLisp.\n\nHence, the framework currently only addresses the syntactic aspects /\nmanagement of OWL 2 and OWL ontologies. It is rather straight-forward\nto connect OntoLisp to an existing KRSS-compliant DL reasoner. Please\nconsult the file ontolisp:dummy-functions.lisp. These bridge functions\nhave to be implemented in order to attach a real DL reasoner to\nOntoLisp. For illustration purposes, I have provided the reasoner\nbridge implementation of RacerPro with the files\nontolisp:reasoner-bridge-for-owlapi.lisp and\nontolisp:owllink-reasoner-bridge.lisp. Of course, this can only give\nyou some hints on how these functions would look like for a different\nKRSS-compliant reasoner.\n\nOntoLisp was designed in a way to depend as less as possible on\nthird-party libraries. Consequently, aspects like URI representation\nand handling may seem impoverished int he code, compared to, say,\nPURI. Also the OWL 2 functional parsers etc. are hand written. But I\nprefer to have things under my control and work out things for myself\nrather than relying / depending on some library that I don't fully\nunderstand. I would argue that the provided solutions are \"good\nenough\" for what OntoLisp is trying to do, but of course, things could\nbe improved quite a bit. Still I hope the library contains useful\nfunctionality and code fragments to get your OWL 2 or OWLlink project\nstarted. The provided examples should give some hints and contain more\nexplanations on how to go on. Otherwise drop me a mail if you have\nspecific questions / problems.\n\nFuture plans:\n\n- add OWL 2 RDF parser using Wilbur2 \n- add the MiDeLoRa DL system \n\n\nRegards,\n\nMichael Wessel, Hamburg / Germany, 2010-07-03 \n\nmailto:michael_wessel@gmx.de\nmailto:wessel@racer-systems-com \nhttp://www.michael-wessel.info\nhttp://www.racer-systems.com\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flambdamikel%2FOntoLisp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flambdamikel%2FOntoLisp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flambdamikel%2FOntoLisp/lists"}