A semantic triple, or RDF triple or simply triple, is the atomic data entity in the Resource Description Framework (RDF) data model.[1] 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

edit

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:

http://example.name#BobSmith12 http://xmlns.com/foaf/0.1/knows http://example.name#JohnDoe34.

Given this precise representation, semantic data can be unambiguously queried and reasoned about.

 
The basic semantic triple model

The 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 to relational databases

edit

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. A RDF-triple storage can be converted into an SQL database and the other way around.[2] 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 storage isn't created with a table editor. The preferred tool is a knowledge editor, for example Protégé.[3] 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.[4]

Limitations

edit

One concern about triple storage is its lack of database scalability.[5] 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.[6] Thus, the knowledge model should answer hypothetical questions in advance before an action is taken.

See also

edit

References

edit
  1. ^ http://www.w3.org/TR/PR-rdf-syntax/ "Resource Description Framework (RDF) Model and Syntax Specification"
  2. ^ Cuddihy, Paul and McHugh, Justin and Williams, Jenny Weisenberg and Mulwad, Varish and Aggour, Kareem S (2017). "SemTK: An Ontology-first, Open Source Semantic Toolkit for Managing and Querying Knowledge Graphs". arXiv:1710.11531 [cs.AI].{{cite arXiv}}: CS1 maint: multiple names: authors list (link)
  3. ^ Katis, Evangelos (2018). Semantic modeling of educational curriculum and syllabus (PhD). Technological Educational Institute of Crete.
  4. ^ Kluwer, Tina and Adolphs, Peter and Xu, Feiyu and Uszkoreit, Hans and Cheng, Xiwen (2010). Talking NPCs in a virtual game world. Proceedings of the ACL 2010 System Demonstrations. pp. 36–41.{{cite conference}}: CS1 maint: multiple names: authors list (link)
  5. ^ Jaroslav Pokorny (2015). "Graph Databases: Their Power and Limitations" (PDF). Computer Information Systems and Industrial Management. Computer Information Systems and Industrial Management. Lecture Notes in Computer Science. Vol. 9339. Springer International Publishing. pp. 58–69. doi:10.1007/978-3-319-24369-6_5. ISBN 978-3-319-24368-9.
  6. ^ Claudio Gutierrez and Carlos Hurtado and Alejandro Vaisman (2007). "Introducing Time into RDF". IEEE Transactions on Knowledge and Data Engineering. 19 (2). Institute of Electrical and Electronics Engineers (IEEE): 207–218. doi:10.1109/tkde.2007.34. S2CID 9749119.
edit