Language
Up one levelLanguage Specification
-
Introduction
- Structure of Documentation, Different Syntaxes, ...
-
Data Terms
- Data terms represent XML documents and data items in semistructured databases. Data terms correspond to ground functional programming expressions and ground logical atoms. Apart from the special constructs for ordered/unordered term specification and the Xcerpt reference mechanism, data terms are just a simplified syntax for XML, or ``XML in disguise''. Data terms are not restricted to representing XML data or semistructured expressions: they are meant as an abstraction of many of the available formalisms for rooted, graph structured data like data represented in OEM or ACeDB, but also Lisp S-expressions or RDF graphs.
-
Example Documents
-
Query Terms
- Query terms are (possibly incomplete) patterns matched against Web resources represented by data terms. A pattern is like a form augmented by variables acting as place holders for data retrieved from data terms, very similar to (non-ground) atoms in logic programming. Query terms build upon data terms, but may contain variables, constructs for expressing incompleteness, as well as position specifications, subterm negation, and subterm exclusion.
-
Construct Terms
- Construct terms serve to reassemble variable bindings, which are determined by query terms, so as to form new data terms. Whereas query terms are patterns for the data (and thus may contain partial term specifications), construct terms are patterns for the result (and thus may only contain total term specifications). Construct terms may furthermore contain variables (but no -> restrictions), and so-called grouping constructs used for grouping different substitutions. Like in data terms, both constructs [ ] and { } may occur in construct terms for expressing ordered and unordered sequences of subterms. The constructs [[ ]] and {{ }} are not allowed, as they express partial term specifications which do not make sense when constructing data items.