• multi-surface language: different surface syntaxes for different communities

    SELECT for the SQL folks, corporate style

    select $a / name
    where
        $a isa person &
        is-creator-of (creator: $a, opus: $o, ...) &
        $o isa document

    FLWOR for the XML-heads, integration into XML application servers

    for $a in %map // person
    where
        is-creator-of (creator: $a, opus: $o, ...) &
        $o isa document
    return
        ($a / name)

    Path Expressions for the beardy Perl/UNIX hard-core engineer

    %map // person [ . <- creator -> opus ] / name