Semantic triple
{{Short description|Data modeling construct}}
A semantic triple, or RDF triple or simply triple, is the atomic data entity in the Resource Description Framework (RDF) data model.http://www.w3.org/TR/PR-rdf-syntax/ "Resource Description Framework (RDF) Model and Syntax Specification" As its name indicates, a triple is a sequence of three entities that codifies a statement about semantic data in the form of subject–predicate–object expressions (e.g., "Bob is 35", or "Bob knows John").
Subject, predicate and object
This format enables knowledge to be represented in a machine-readable way. Particularly, every part of an RDF triple is individually addressable via unique URIs—for example, the statement "Bob knows John" might be represented in RDF as:
.
Given this precise representation, semantic data can be unambiguously queried and reasoned about.
File:Basic RDF Graph.svgThe components of a triple, such as the statement "The sky has the color blue", consist of a subject ("the sky"), a predicate ("has the color"), and an object ("blue"). This is similar to the classical notation of an entity–attribute–value model within object-oriented design, where this example would be expressed as an entity (sky), an attribute (color) and a value (blue).
From this basic structure, triples can be composed into more complex models, by using triples as objects or subjects of other triples—for example, Mike → said → (triples → can be → objects)
.
Given their particular, consistent structure, a collection of triples is often stored in purpose-built databases called triplestores.
Difference from relational databases
A relational database is the classical form for information storage, working with different tables, which consist of rows. The query language SQL is able to retrieve information from such a database. In contrast, RDF triple storage works with logical predicates. No tables nor rows are needed, but the information is stored in a text file. An RDF-triple store can be converted into an SQL database and the other way around.{{cite arXiv |title=SemTK: An Ontology-first, Open Source Semantic Toolkit for Managing and Querying Knowledge Graphs |author=Cuddihy, Paul and McHugh, Justin and Williams, Jenny Weisenberg and Mulwad, Varish and Aggour, Kareem S |eprint=1710.11531 |year=2017 |class=cs.AI }} If the knowledge is highly unstructured and dedicated tables aren't flexible enough, semantic triples are used over classic relational storage.
In contrast to a traditional SQL database, an RDF triple store isn't created with a table editor. The preferred tool is a knowledge editor, for example Protégé.{{cite thesis |type=PhD |title=Semantic modeling of educational curriculum and syllabus |author=Katis, Evangelos |year=2018 |publisher=Technological Educational Institute of Crete }} Protégé looks similar to an object-oriented modeling application used for software engineering, but it's focused on natural language information. The RDF triples are aggregated into a knowledge base, which allows external parsers to run requests. Possible applications include the creation of non-player characters within video games.{{cite conference |title=Talking NPCs in a virtual game world |author=Kluwer, Tina and Adolphs, Peter and Xu, Feiyu and Uszkoreit, Hans and Cheng, Xiwen |conference=Proceedings of the ACL 2010 System Demonstrations |pages=36–41 |year=2010 }}
Limitations
One concern about triple storage is its lack of database scalability.{{cite conference |doi=10.1007/978-3-319-24369-6_5 |year=2015 |publisher=Springer International Publishing |pages=58–69 |author=Jaroslav Pokorny |title=Computer Information Systems and Industrial Management |chapter=Graph Databases: Their Power and Limitations |series=Lecture Notes in Computer Science |volume=9339 |isbn=978-3-319-24368-9 |chapter-url=https://hal.inria.fr/hal-01444505/file/978-3-319-24369-6_5_Chapter.pdf |conference=Computer Information Systems and Industrial Management |doi-access=free }} This problem is especially pertinent if millions of triples are stored and retrieved in a database. The seek time is larger than for classical SQL-based databases.
A more complex issue is a knowledge model's inability to predict future states. Even if all the domain knowledge is available as logical predicates, the model fails in answering what-if questions. For example, suppose in the RDF format a room with a robot and table is described. The robot knows what the location of the table is, is aware of the distance to the table and knows also that a table is a type of furniture. Before the robot can plan its next action, it needs temporal reasoning capabilities.{{cite journal |doi=10.1109/tkde.2007.34 |year=2007 |publisher=Institute of Electrical and Electronics Engineers (IEEE) |volume=19 |number=2 |pages=207–218 |author=Claudio Gutierrez and Carlos Hurtado and Alejandro Vaisman |title=Introducing Time into RDF |journal=IEEE Transactions on Knowledge and Data Engineering |s2cid=9749119 }} Thus, the knowledge model should answer hypothetical questions in advance before an action is taken.
See also
- Named graphs and quads, an extension to semantic triples to also include a context node as a fourth element.
- Graph database
- Link relation
References
{{reflist}}
External links
- {{cite web |url = https://www.w3.org/TR/rdf11-primer/#section-triple |title = RDF 1.1 Primer § Triples |publisher = W3C }}
- {{cite web |url = https://www.xiweb.it/triple-semantiche-ruolo-nella-seo-semantica/ |title = Il ruolo delle triple semantiche nella SEO }}XiWeb https://www.xiweb.it/
{{Semantic Web}}