Abstract
This article presents a model of general-purpose computing on a semantic network substrate. The concepts presented are applicable to any semantic network representation. However, due to the standards and technological infrastructure devoted to the Semantic Web effort, this article is presented from this point of view. In the proposed model of computing, the application programming interface, the run-time program, and the state of the computing virtual machine are all represented in the Resource Description Framework (RDF). The implementation of the concepts presented provides a computing paradigm that leverages the distributed and standardized representational-layer of the Semantic Web.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 2.
For the sake of brevity, prefixes are usually used instead of the full namespace. For instance, http://www.w3.org/1999/02/22-rdf-syntax-ns# is prefixed as rdf:.
- 3.
Many triple store applications support reasoning about resources during a query (at run-time). For example, suppose that the triple (lanl:marko, rdf:type, ex:ComputerScientist) does not exist in the RDF network, but instead there exist the triples (lanl:marko, rdf:type, ex:ComputerEngineer) and (ex:ComputerEngineer, owl:sameAs, ex:ComputerScientist). With OWL reasoning, ?x would still bind to lanl:marko because ex:ComputerEngineer and ex:ComputerScientist are the same according to OWL semantics. The RDF computing concepts presented in this article primarily focus on triple pattern matching and thus, beyond direct URI and literal name matching, no other semantics are used.
- 4.
This is interpreted in OWL semantics as saying: “A human is something that has a single human as a friend.” In OWL, given that it is a description logic [4], an ontology defines descriptions and the purpose of the OWL reasoner is to determine which instances are subsumed by which descriptions.
- 5.
In this article, ontology diagrams will not explicitly represent the constructs rdfs:domain, rdfs:range, nor the owl:Restriction anonymous URIs. These URIs are assumed to be apparent from the diagram. For example, the restriction shown as [0..1] in Fig. 4.2 is represented by an owl:Restriction for the ex:hasFriend property where the owl:maxCardinality is 1 and ex:Human is an rdfs:subClassOf of this owl:Restriction.
- 6.
While OWL has many features that are useful for reasoning about RDF data, the primary purpose of OWL with respect to the concepts presented in this article is to utilize OWL for its ability to create restricted data models. These restricted models form the APIs and ensure that instance RDF triple-code can be unambiguously generated by an RVM.
- 7.
This fact was taken from Wikipedia at http://en.wikipedia.org/wiki/UUID.
- 8.
Java generics as represented by the < > notation is supported by Java 1.5+.
- 9.
When there are no ambiguities in naming, the class declaration can be written without prefixes.
- 10.
This constraint does not apply to owl:Restrictions as Neno classes utilize owl:Restrictions to make explicit property restrictions. Thus, excluding owl:Restriction subclassing, a Neno object class can only be the subclass of a single class.
- 11.
When the term Fhat is used, it is referring to the entire virtual machine, when the teletyped term Fhat is used, it is referring to the virtual machine process identified by the URI Fhat.
- 12.
Conditions are unique in that they have a trueInst and a falseInst property. If the Condition is true, the next Instruction is the one pointed to by the trueInst property, else the next Instruction is the one pointed to by the falseInst property.
References
Aasman, J.: Allegro graph. Technical Report 1, Franz Incorporated (2006). http://www.franz.com/products/allegrograph/allegrograph.datasheet.pdf
Aho, A.W., Sethi, R., Ullman, J.D.: Compilers: Principles, Techniques, and Tools. Addison-Wesley, Reading (1986)
Alesso, H.P., Smith, C.F.: Developing Semantic Web Services. A.K. Peters Ltd, Wellesley (2005)
Baader, F., Calvanese, D., Mcguinness, D.L., Nardi, D., Patel-Schneider, P.F. (eds.): The Description Logic Handbook: Theory, Implementation and Applications. Cambridge University Press, Cambridge (2003)
Beckett, D.: N-Triples. Technical Report, University of Bristol (2001). http://www.dajobe.org/2001/06/ntriples/
Berners-Lee, T.: Notation 3. Technical Report, World Wide Web Consortium (1998). http://www.w3.org/DesignIssues/Notation3
Berners-Lee, T.: Linked data. Technical Report, World Wide Web Consortium (2006). http://www.w3.org/DesignIssues/LinkedData.html
Berners-Lee, T., Fielding, R., Software, D., Masinter, L., Systems, A.: Uniform Resource Identifier (URI): Generic Syntax (2005). http://www.ietf.org/rfc/rfc2396.txt
Biron, P.V., Malhotra, A.: XML schema part 2: Datatypes second edition. Technical Report, World Wide Web Consortium (2004). http://www.w3.org/TR/xmlschema-2/
Bray, T., Hollander, D., Layman, A., Tobin, R.: Namespaces in XML 1.0. Technical Report, World Wide Web Consortium (2006). http://www.w3.org/TR/REC-xml-names/
Britton, R.: MIPS Assembly Language Programming. Prentice-Hall, Englewood Cliffs (2003)
Carroll, J.J., Stickler, P.: RDF triples in XML. In: Extreme Markup Languages. IDEAlliance, Montréal, Québec (2004)
Coelho, D., Stanculescu, A.: A state-of-the-art VHDL simulator. In: Thirty-Third IEEE Computer Society International Conference, pp. 320–323. San Francisco, CA (1988)
Craig, I.D.: Virtual Machines. Springer, Berlin (2005)
Davies, J., Fensel, D., van Harmelen, F.: Towards the Semantic Web: Ontology-Driven Knowledge Management. Wiley, New York (2003)
Eckel, B.: Thinking in Java. Prentice-Hall, Englewood Cliffs (2002). http://www.mindview.net/Books/TIJ/
Fensel, D.: Triple-space computing: Semantic web services based on persistent publication of information. In: Proceedings of the International Conference on Intelligence in Communication Systems, pp. 43–53. Bangkok, Thailand (2004)
Fensel, D., Hendler, J.A., Lieberman, H., Wahlster, W. (eds.): Spinning the Semantic Web: Bringing the World Wide Web to Its Full Potential. MIT Press, Cambridge (2003)
Hennessy, J.L., Patterson, D.A.: Computer Architecture: A Quantitative Approach. Morgan Kaufmann, San Mateo (2002)
Horrocks, I., Patel-Schneider, P.F., Boley, H., Tabet, S., Grosof, B., Dean, M.: SWRL: A Semantic Web rule language combining OWL and RuleML. Technical Report, World Wide Web Consortium (2004). http://www.w3.org/Submission/SWRL/
Kifer, M., Lausen, G., Wu, J.: Logical foundations of object-oriented and frame-based languages. Journal of the ACM 42(4), 741–843 (1995)
Kiryakov, A., Ognyanov, D., Manov, D.: OWLIM—a pragmatic semantic repository for OWL. In: International Workshop on Scalable Semantic Web Knowledge Base Systems. Lecture Notes in Computer Science, vol. 3807, pp. 182–192. Springer, New York (2005)
Koide, S., Kawamura, M.: SWCLOS: A Semantic Web processor on Common Lisp object system. In: Proceedings of the International Semantic Web Conference, Hiroshima, Japan (2004)
Lacy, L.W.: OWL: Representing Information Using the Web Ontology Language. Trafford Publishing, Victoria (2005)
Leach, P.: A Universally Unique IDentifier (UUID) URN Namespace. Technical Report, Network Working Group (2005). http://www.rfc-archive.org/getrfc.php?rfc=4122
Lee, R.: Scalability report on triple store applications. Technical Report, Massachusetts Institute of Technology (2004)
Lindholm, T., Yellin, F.: The Java Virtual Machine Specification. Addison-Wesley, Reading (1999)
Lorie, R.A.: Long term preservation of digital information. In: Proceedings of the 1st ACM/IEEE-CS Joint Conference on Digital Libraries, pp. 346–352. ACM, New York (2001). doi:10.1145/379437.379726
Louden, K.C.: Programming Languages: Principles and Practice. Brooks/Cole–Thomson Learning (2003)
Manola, F., Miller, E.: RDF primer: W3C recommendation (2004). http://www.w3.org/TR/rdf-primer/
Martin, D., Burstein, M., Hobbs, J., Lassila, O., McDermott, D., McIlraith, S., Narayanan, S., Paolucci, M., Parsia, B., Payne, T., Sirin, E., Srinivasan, N., Sycara, K.: OWL-S: Semantic markup for web services. Technical Report, World Wide Web Consortium (2004). http://www.w3.org/Submission/OWL-S/
McGuinness, D.L., van Harmelen, F.: OWL web ontology language overview (2004)
Miller, E.: An introduction to the Resource Description Framework. D-Lib Magazine (1998). http://dx.doi.org/hdl:cnri.dlib/may98-miller
Nelson, M.L., McCown, F., Smith, J., Klein, M.: Using the web infrastructure to preserve web pages. International Journal on Digital Libraries (2007). doi:10.1007/s00799-007-0012-y
Oren, E., Delbru, R., Gerke, S., Haller, A., Decker, S.: ActiveRDF: Object-oriented semantic web programming. In: Proceedings of the International World Wide Web Conference WWW07, Banff, Canada (2007)
Prud’hommeaux, E., Seaborne, A.: SPARQL query language for RDF. Technical Report, World Wide Web Consortium (2004). http://www.w3.org/TR/2004/WD-rdf-sparql-query-20041012/
Satyanarayanan, M., Gilbert, B., Toups, M., Tolia, N., Surie, A., O’Hallaron, D.R., Wolbach, A., Harkes, J., Perrig, A., Farber, D.J., Kozuch, M.A., Helfrich, C.J., Nath, P., Lagar-Cavilla, H.A.: Pervasive personal computing in an Internet suspend/resume system. IEEE Internet Computing 11(2), 16–25 (2007)
Seaborne, A., Manjunath, G.: SPARQL/Update: A language for updating RDF graphs. Technical Report, Hewlett-Packard (2007). http://jena.hpl.hp.com/~afs/SPARQL-Update.html
Sebesta, R.W.: Concepts of Programming Languages. Addison-Wesley, Reading (2005)
Shinavier, J.: Functional programs as linked data. In: 3rd Workshop on Scripting for the Semantic Web, Innsbruck, Austria (2007)
Sowa, J.F.: Principles of Semantic Networks: Explorations in the Representation of Knowledge. Morgan Kaufmann, San Mateo (1991)
Sowa, J.F.: Knowledge Representation: Logical, Philosophical, and Computational Foundations. Course Technology (1999)
Turing, A.M.: On computable numbers with an application to the entscheidungsproblem. Proceedings of the London Mathematical Society 42(2), 230–265 (1937)
Wang, H.H., Noy, N., Rector, A., Musen, M., Redmond, T., Rubin, D., Tu, S., Tudorache, T., Drummond, N., Horridge, M., Sedenberg, J.: Frames and OWL side by side. In: 10th International Protégé Conference, Budapest, Hungary (2007)
Acknowledgements
This research was made possible by a generous grant from the Andrew W. Mellon Foundation. Herbert Van de Sompel, Ryan Chute, and Johan Bollen all provided much insight during the development of these ideas. Neno/Fhat was originally designed in the fall of 2006. At the completion of this article, the author was introduced to the Ripple RDF programming language being developed by Joshua Shinavier [40]. The similarity in ideas has fostered a close collaboration.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag London
About this chapter
Cite this chapter
Rodriguez, M.A. (2010). General-Purpose Computing on a Semantic Network Substrate. In: Badr, Y., Chbeir, R., Abraham, A., Hassanien, AE. (eds) Emergent Web Intelligence: Advanced Semantic Technologies. Advanced Information and Knowledge Processing. Springer, London. https://doi.org/10.1007/978-1-84996-077-9_4
Download citation
DOI: https://doi.org/10.1007/978-1-84996-077-9_4
Publisher Name: Springer, London
Print ISBN: 978-1-84996-076-2
Online ISBN: 978-1-84996-077-9
eBook Packages: Computer ScienceComputer Science (R0)