# Knowledge Graphs
- A knowledge graph is a structured representation of information that connects data points through relationships, forming a semantic network.
- It is used to represent knowledge where entities are nodes and relationships are edges.
- It is designed to capture the meaning and context of data, enabling machines to understand and reason about information.
- Knowledge graphs facilitate efficient data discovery and exploration. They provide a common language for expressing and sharing knowledge, fostering collaboration and knowledge sharing among different stakeholders.
- They're great at representing a domain's data, and, together with a model, can deliver answers, though the questions need to be formulated as a query by an expert.
- Linked data enables us to use the web as a large, decentralized graph database. Using links everywhere in data has amazing merits: links remove ambiguity, they enable exploration, they enable connected datasets.
- Why didn't it catch on?
- Graphs always appear like a complicated mess, and we prefer hierarchies and categories.
- The Knowledge Graph seems like the purest representation of all data in a company but requires you to have all the data in the right format correctly annotated, correctly maintained, changed, and available.
- It takes too much effort to maintain and keep it semantic instead of copy-paste text around. This is one of the most interesting [[Large Language Models]] application.
- It offers no protection against some team inside the company breaking the whole web by moving to a different URI or refactoring their domain model in incompatible ways.
- For the Semantic Web to work, the infrastructure behind it needs to permanently keep all of the necessary sources that a file relies on. This could be a place where [[IPFS]] or others [[Decentralized Protocols]] could help!
- It tends to assume that the world fits into neat categories. Instead, we live in a world where membership in categories is partial, probabilistic, contested (Pluto), and changes over time.
- Knowledge graphs might be a great way to give AI a "world view".
- The status quo of the semantic web space is still SPARQL.
- You can build [a knowledge graph database on top of a relational engine](https://twitter.com/RelationalAI).
- Knowledge Graphs act as a semantic layer.
- Tables in SQL (relational databases) are collections of relationships.
- Is possible to make append only and dynamic KGs with Temporal Knowledge Graphs!
## Projects
- [Plow](https://plow.pm/) - A package manager for ontologies empowering anyone to build reliable solutions with ontologies.
- [Golden](https://golden.com/)
- [Geo Browser](https://www.geobrowser.io/)
- [Atomic Data](https://docs.atomicdata.dev/) - Modular specification for sharing, modifying and modeling graph data. It combines the ease of use of JSON, the connectivity of RDF (linked data) and the reliability of type-safety.