LambdaDL: Syntax and Semantics (Preliminary Report)

Semantic data fuels many different applications, but is still lacking proper integration into programming languages. Untyped access is error-prone while mapping approaches cannot fully capture the conceptualization of semantic data. In this paper, we present $\lambda_{DL}$,a $\lambda$-calculus with a modified type system to provide type-safe integration of semantic data. This is achieved by the integration of description logics into the $\lambda$-calculus for typing and data access. It is centered around several key design principles. Among these are (1) the usage of semantic conceptualizations as types, (2) subtype inference for these types, and (3) type-checked query access to the data by both ensuring the satisfiability of queries as well as typing query results precisely in $\lambda_{DL}$. The paper motivates the use of a modified type system for semantic data and it provides the theoretic foundation for the integration of description logics as well as the core formal specifications of $\lambda_{DL}$ including a proof of type safety.

[1]  Boris Motik,et al.  Query Answering for OWL-DL with Rules , 2004, SEMWEB.

[2]  Simon L. Peyton Jones,et al.  Scrap your boilerplate: a practical design pattern for generic programming , 2003, TLDI '03.

[3]  Gabriel Ciobanu,et al.  Descriptive Types for Linked Data Resources , 2014, Ershov Memorial Conference.

[4]  Philip Wadler,et al.  Featherweight Java: a minimal core calculus for Java and GJ , 2001, TOPL.

[5]  Karl Crary,et al.  Intensional polymorphism in type-erasure semantics , 1998, ICFP '98.

[6]  Philip A. Bernstein,et al.  Mapping XSD to OO Schemas , 2009, ICOODB.

[7]  Walid Taha,et al.  Gradual Typing for Objects , 2007, ECOOP.

[8]  Kenji Takeda,et al.  Themes in information-rich functional programming for internet-scale data sources , 2013, DDFP '13.

[9]  Fernando Silva Parreiras Automatic Generation of Ontology APIs , 2012 .

[10]  Jeremy G. Siek Gradual Typing for Functional Languages , 2006 .

[11]  Volker Linnemann,et al.  SWOBE - embedding the semantic web languages RDF, SPARQL and SPARUL into java for guaranteeing type safety, for checking the satisfiability of queries and for the determination of query result types , 2009, SAC '09.

[12]  J. Carroll,et al.  Jena: implementing the semantic web recommendations , 2004, WWW Alt. '04.

[13]  Sean Bechhofer,et al.  The OWL API: A Java API for OWL ontologies , 2011, Semantic Web.

[14]  Michael Hanus,et al.  The Integration of Functions into Logic Programming: From Theory to Practice , 1994, J. Log. Program..

[15]  Boris Motik,et al.  Query Answering for OWL-DL with Rules , 2004, International Semantic Web Conference.

[16]  Michael Hanus,et al.  The integration of functions into logic programming: a survey , 1994 .

[17]  Diego Calvanese,et al.  Ontology-based Database Access , 2007, SEBD.

[18]  Steffen Staab,et al.  APIs à gogo: Automatic Generation of Ontology APIs , 2009, 2009 IEEE International Conference on Semantic Computing.

[19]  Benjamin C. Pierce,et al.  XDuce: A statically typed XML processing language , 2003, TOIT.

[20]  Martín Abadi,et al.  Dynamic typing in polymorphic languages , 1995, Journal of Functional Programming.

[21]  Sebastian Rudolph,et al.  Reasonable Highly Expressive Query Languages - IJCAI-15 Distinguished Paper (Honorary Mention) , 2015, IJCAI.

[22]  Denny Vrandecic,et al.  Zhi# - OWL Aware Compilation , 2011, ESWC.

[23]  Giuseppe Castagna,et al.  CDuce: an XML-centric general-purpose language , 2003, ACM SIGPLAN Notices.

[24]  Ralf Lämmel,et al.  Scrap your boilerplate: a practical approach to generic programming , 2003 .

[25]  Markus Krötzsch,et al.  Wikidata , 2014, Commun. ACM.

[26]  Benjamin C. Pierce,et al.  Types and programming languages: the next generation , 2003, 18th Annual IEEE Symposium of Logic in Computer Science, 2003. Proceedings..

[27]  Guilin Qi,et al.  Knowledge Base Revision in Description Logics , 2006, JELIA.

[28]  Elizabeth J. O'Neil,et al.  Object/relational mapping 2008: hibernate and the entity data model (edm) , 2008, SIGMOD Conference.

[29]  Julian Padget,et al.  Automatic Mapping of OWL Ontologies into Java , 2004, SEKE.

[30]  Steffen Staab,et al.  Semantic Web Application Development with LITEQ , 2014, International Semantic Web Conference.

[31]  Diego Calvanese,et al.  Reasoning on UML class diagrams , 2005, Artif. Intell..

[32]  Ralf Lämmel,et al.  Revealing the X/O Impedance Mismatch - (Changing Lead into Gold) , 2006, SSDGP.

[33]  Gavin M. Bierman,et al.  First-Class Relationships in an Object-Oriented Language , 2005, ECOOP.

[34]  John C. Reynolds,et al.  Types, Abstraction and Parametric Polymorphism , 1983, IFIP Congress.

[35]  Domenico Beneventano,et al.  Description logics for semantic query optimization in object-oriented database systems , 2003, TODS.

[36]  Colin Runciman,et al.  Haskell and XML: generic combinators or type-based translation? , 1999, ICFP '99.

[37]  Ralf Lämmel,et al.  Mappings Make Data Processing Go 'Round , 2005, GTTSE.

[38]  Gabriel Ciobanu,et al.  Minimal type inference for Linked Data consumers , 2015, J. Log. Algebraic Methods Program..

[39]  Gavin M. Bierman,et al.  The Essence of Data Access in Comega , 2005, European Conference on Object-Oriented Programming.

[40]  Premkumar T. Devanbu,et al.  Static checking of dynamically generated queries in database applications , 2004, Proceedings. 26th International Conference on Software Engineering.

[41]  Eyal Oren,et al.  ActiveRDF: Embedding Semantic Web data into object-oriented languages , 2008, J. Web Semant..