skip to main content
10.1145/1316902.1316904acmconferencesArticle/Chapter ViewAbstractPublication PagescikmConference Proceedingsconference-collections
research-article

XCentric: logic programming for XML processing

Published: 09 November 2007 Publication History

Abstract

Here we present the logic-programming language XCentric, discuss design issues, and show its adequacy for XML processing. Distinctive features of XCentric are a powerful unification algorithm for terms with functors of arbitrary arity (which correspond closely to XML documents) and a rich type language that uses operators such as repetition (*), alternation, etc, as types allowing a compact representation of terms with functors with an arbitrary number of arguments (closely related to standard type languages for XML). This new form of unification together with an appropriate use of types yields a substantial degree of flexibility in programming.

References

[1]
Véronique Benzaken, Giuseppe Castagna, and Alain Frisch. CDuce: an XML-centric general-purpose language. In Proceedings of the eighth ACM SIGPLAN Int. Conference on Functional Programming, Uppsala, Sweden, 2003.
[2]
F. Bry and S. Schaffert. The XML Query Language Xcerpt: Design Principles, Examples, and Semantics. In 2nd Annual International Workshop Web and Databases, volume 2593 of LNCS, 2002.
[3]
F. Bry and S. Schaffert. Towards a Declarative Query and Transformation Language for XML and Semistructured Data: Simulation Unification. In International Conference on Logic Programming (ICLP), volume 2401 of LNCS, 2002.
[4]
Jorge Coelho and Mário Florido. Type-based static and dynamic website verification (to appear). In ICIW'07. IEEE Computer Society, 2007.
[5]
Jorge Coelho and Mário Florido. Xcentric: A logic--programming language for xml processing (sofwatre demonstration). In PLAN-X, pages 93--94, 2007.
[6]
Jorge Coelho and Mário Florido. Type-based XML Processing in Logic Programming. In Practical Aspects of Declarative Languages, volume 2562 of LNCS, 2003.
[7]
Jorge Coelho and Mário Florido. CLP(Flex): Constraint Logic Programming Applied to XML Processing. In Ontologies, Databases and Applications of SEmantics (ODBASE), volume 3291 of LNCS. Springer Verlag, 2004.
[8]
Jorge Coelho and Mário Florido. Unification with flexible arity symbols: a typed approach. In Informal proceedings of the 20th International Workshop on Unification (UNIF'06), Seattle, USA, 2006.
[9]
Jorge Coelho and Mário Florido. VeriFLog: Constraint Logic Programming Applied to Verification of Website Content. In Int. Workshop XML Research and Applications (XRA'06), volume 3842 of LNCS. Springer-Verlag, 2006.
[10]
A. Colmerauer. An introduction to Prolog III. Communications of the ACM, 33(7):69--90, 1990.
[11]
P. Dart and J. Zobel. A regular type language for logic programs. In Frank Pfenning, editor, Types in Logic Programming. The MIT Press, 1992.
[12]
Mário Florido and Luís Damas. Types as theories. In Proc. of post-conference workshop on Proofs and Types, Joint International Conference and Symposium on Logic Programming, 1992.
[13]
Thom W. Fruhwirth, Ehud Y. Shapiro, Moshe Y. Vardi, and Eyal Yardeni. Logic programs as types for logic programs. In LICS, pages 300--309, 1991.
[14]
Georg Gottlob and Christoph Koch. Monadic datalog and the expressive power of languages for web information extraction. J. ACM, 51(1):74--113, 2004.
[15]
Haruo Hosoya and Benjamin Pierce. XDuce: A typed XML processing language. In Third Int. Workshop on the Web and Databases, volume 1997 of LNCS, 2000.
[16]
J. Jaffar. Minimal and complete word unification. Journal of the ACM, 37(1):47--85, 1990.
[17]
Shinya Kawanaka and Haruo Hosoya. biXid: a bidirectional transformation language for XML. In John H. Reppy and Julia L. Lawall, editors, ICFP, pages 201--214. ACM, 2006.
[18]
Temur Kutsia. Unification with sequence variables and flexible arity symbols and its extension with pattern-terms. In Joint AISC'2002 - Calculemus'2002 conference, LNAI, 2002.
[19]
Temur Kutsia. Context sequence matching for xml. In Proceedings of the 1th Int. Workshop on Automated Specification and Verification of Web Sites, 2005.
[20]
Temur Kutsia and Mircea Marin. Can context sequence matching be used for querying xml? In Laurent Vigneron, editor, Proceedings of the 19th Int. Workshop on Unification (UNIF'05), pages 77--92, Nara, Japan, 22 April 2005.
[21]
J. W. Lloyd. Foundations of Logic Programming. Springer-Verlag, second edition, 1987.
[22]
G. S. Makanin. The problem of solvability of equations in a free semigroup. Math. Sbornik USSR, 103:147--236, 1977.
[23]
Pillow: Programming in (Constraint) Logic Languages on the Web. http://clip.dia.fi.upm.es/Software/pillow/pillow.html, 2001.
[24]
SWI Prolog. http://www.swi-prolog.org/.
[25]
XML Schema. http://www.w3.org/XML/Schema/, 2000.
[26]
J. W. Thatcher. Tree automata: An informal survey. Prentice-Hall, 1973.
[27]
Extensible Markup Language (XML). http://www.w3.org/XML/, 2003.
[28]
XQuery Use Cases. http://www.w3.org/TR/xquery-use-cases/, 2005.
[29]
XSL Transformations (XSLT). http://www.w3.org/TR/xslt/, 1999.
[30]
Xtatic. http://www.cis.upenn.edu/bcpierce/xtatic/, 2004.
[31]
E. Yardeni and E. Shapiro. A type system for logic programs. In The Journal of Logic Programming, 1990.
[32]
Justin Zobel. Derivation of polymorphic types for prolog programs. In Proc. of the 1987 International Conference on Logic Programming. MIT Press, 1987.

Cited By

View all
  • (2017)Unranked tableaux calculus for web related applications2017 IEEE First Ukraine Conference on Electrical and Computer Engineering (UKRCON)10.1109/UKRCON.2017.8100435(1181-1184)Online publication date: May-2017
  • (2017)Pattern-based calculi with finitary matchingLogic Journal of the IGPL10.1093/JIGPAL/jzx05926:2(203-243)Online publication date: 29-Dec-2017
  • (2015)Lambda Calculus with Regular TypesProceedings of the 2015 17th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC)10.1109/SYNASC.2015.29(129-136)Online publication date: 21-Sep-2015
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
WIDM '07: Proceedings of the 9th annual ACM international workshop on Web information and data management
November 2007
168 pages
ISBN:9781595938299
DOI:10.1145/1316902
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 09 November 2007

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. XML processing
  2. logic programming

Qualifiers

  • Research-article

Conference

CIKM07

Upcoming Conference

CIKM '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 15 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2017)Unranked tableaux calculus for web related applications2017 IEEE First Ukraine Conference on Electrical and Computer Engineering (UKRCON)10.1109/UKRCON.2017.8100435(1181-1184)Online publication date: May-2017
  • (2017)Pattern-based calculi with finitary matchingLogic Journal of the IGPL10.1093/JIGPAL/jzx05926:2(203-243)Online publication date: 29-Dec-2017
  • (2015)Lambda Calculus with Regular TypesProceedings of the 2015 17th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC)10.1109/SYNASC.2015.29(129-136)Online publication date: 21-Sep-2015
  • (2014)Constraint Logic Programming for Hedges: A Semantic ReconstructionFunctional and Logic Programming10.1007/978-3-319-07151-0_18(285-301)Online publication date: 2014
  • (2012)XPath Query Processing in a Functional-Logic LanguageElectronic Notes in Theoretical Computer Science (ENTCS)10.5555/2952790.2952849282:C(19-34)Online publication date: 5-May-2012
  • (2012)A High Level Approach to Web Content VerificationAdvances in Computer Science, Engineering & Applications10.1007/978-3-642-30157-5_75(755-764)Online publication date: 2012
  • (2011)XQuery in the functional-logic language toyProceedings of the 20th international conference on Functional and constraint logic programming10.5555/2032603.2032607(35-51)Online publication date: 19-Jul-2011
  • (2011)Filtering XML content for publication and presentation on the web2011 Sixth International Conference on Digital Information Management10.1109/ICDIM.2011.6093342(85-89)Online publication date: Sep-2011
  • (2011)Semantic Verification in an Open Collaboration ScenarioFuture Information Technology10.1007/978-3-642-22309-9_6(44-53)Online publication date: 2011
  • (2009)Collaborative schema construction using regular sequence typesProceedings of the 10th IEEE international conference on Information Reuse & Integration10.5555/1689250.1689303(290-295)Online publication date: 10-Aug-2009
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media