shapes-ISSUE-52 (labra): Define an Abstract Syntax for SHACL [SHACL Spec]

shapes-ISSUE-52 (labra): Define an Abstract Syntax for SHACL [SHACL Spec]

http://www.w3.org/2014/data-shapes/track/issues/52

Raised by: Jose Emilio Labra Gayo
On product: SHACL Spec

One of the already approved requirements is that SHACL should be a higher
level language.

To do that, most languages define an abstract syntax
or functional specification which describes the main constructs of the
language without depending on any concrete syntax.

Most language specifications are defined based on an abstract syntax. For
example:

RDF Abstract Syntax and concepts (http://www.w3.org/TR/rdf11-concepts/)

SPARQL (http://www.w3.org/TR/sparql11-query/#sparqlDefinition)

OWL (http://www.w3.org/TR/2012/REC-owl2-syntax-20121211/)

There are several advantages when defining an abstract syntax for describing
a language like: 

-Separation of concerns: it is possible to identify which are the language constructs and separate them from the semantic formalism in which they are defined

- Allowing the language designers to concentrate on the language concepts instead of syntactic details

- Identification of possible redundant constructs or constructs that can be added

- Mapping between one concrete syntax to another concrete syntax. In the last VF2F3 meeting there seemed to be some consensus on defining a compact syntax for SHACL. In order to do so, it will be helpful to define first that abstract syntax so we could later map from that abstract syntax to the concrete syntax.

This issue is only about defining an abstract syntax for SHACL. 

Having such an abstract syntax does not imply any compromise about the formalism used for the semantic definition which could be either by mappings to SPARQL or by other formalisms. 

Received on Saturday, 23 May 2015 05:23:28 UTC