OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
RE: RDF people, please define "surface syntax" and "concrete syntax"

The distinction between abstract and concrete syntax is demonstrated more-or-less exhaustively in ISO 8879 (for SGML).  There, the pointy brackets etc. later adopted by XML, are defined as the "reference concrete syntax" for SGML.  In SGML, one can declare an alternative concrete syntax in the SGML Declaration, but in XML, that option is closed.

Yesterday, I spent twenty minutes explaining to an attorney that quotation marks surrounding an attribute value did not contradict the rule that quotation marks must be replaced with a character entity in the content of an instance.  It's too bad that XML reserves some ASCII characters, but I can't imagine changing it now, even though there are probably many more alternatives for delimiters these days.

Delimiter (the idea) is the abstract syntax, and " (the symbol) is the concrete syntax.  Converting an XML document from its native (concrete) syntax to another type of tree will preserve the abstract tree, while altering the concrete representation of the tree.  Is that what your definition says?

Bruce B Cox
OCIO/AED/Software Architecture and Engineering Division

-----Original Message-----
From: Costello, Roger L. [mailto:costello@mitre.org] 
Sent: 2012 February 20, Monday 12:22
To: xml-dev@lists.xml.org
Subject: RE: RDF people, please define "surface syntax" and "concrete syntax"

Thanks Norman and Frank.

> As used in these articles, the terms are synonymous

Okay, good. 

"Surface Syntax" and "concrete syntax" are synonymous.

> The distinction between abstract and concrete syntaxes comes from programming languages

I took a definition of concrete syntax [1] and modified it to apply specifically to XML. Is this definition consistent with its use with programming languages? 

    XML Concrete Syntax (a.k.a. surface syntax): The XML syntax including all the features visible 
    in an instance document such as angle brackets and quotation characters. The concrete syntax 
    is used when parsing the document, during which it is usually converted into some kind of 
    abstract syntax tree (such as an infoset).


[1] http://dictionary.reference.com/browse/concrete+syntax

-----Original Message-----
From: Frank Manola [mailto:fmanola@acm.org] 
Sent: Monday, February 20, 2012 12:03 PM
To: Costello, Roger L.
Cc: xml-dev@lists.xml.org
Subject: Re: RDF people, please define "surface syntax" and "concrete syntax"


As used in these articles, the terms are synonymous.  The first article, by Pat Hayes, explains why you might want to separately talk about an abstract syntax (in the case of RDF, the graphs), and a surface or concrete syntax (RDF/XML, Turtle, etc.;  the ways you might encode those graphs for presentation to a computer).  The distinction between abstract and concrete syntaxes comes from programming languages;  these ideas were not developed specifically for RDF.  The RDF specifications themselves tend to use "concrete" rather than "surface" (except for one reference to "surface" in Semantics).


On Feb 20, 2012, at 7:49 AM, Costello, Roger L. wrote:

> Hi Folks,
> I see usage of the terms "surface syntax" and "concrete syntax" in multiple RDF articles, e.g.,
>    The RDF graph syntax is in several important respects simpler than any surface syntax, 
>    and makes possible a very simple and straightforward - almost elementary - approach 
>    to some surface-syntactic issues which are notoriously troublesome to get exactly right, 
>    especially the issue of bound name scopes. [1]
> and
>    In this section we present an RDF concrete syntax for the rules. It is straightforward to 
>    provide such an RDF concrete syntax for rules, but the presence of variables in rules 
>    goes beyond the RDF Semantics. [2]
> Would someone from the RDF community please define "surface syntax" and "concrete syntax"?
> /Roger
> [1] http://www.ihmc.us/users/phayes/RDFGraphSyntax.html
> [2] http://www.daml.org/2004/04/swrl/rdfsyntax.html 

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS