LC Comment 1.3.1, editorial

"""The following applies to languages, in particular the specifications 
of data formats, of message formats, and URIs. """"

I have trouble parsing this statement. The *specifications* of data 
formats are languages?


"""Note: This document does not distinguish in any formal way the terms 
"format" and "language." Context has determined which term is used.

Language subset: one language is a subset (or, "profile") of a second 
language if any document in the first language is also a valid document 
in the second language and has the same interpretation in the second 
language.

Language extension: one language is an extension of a second language 
if the second is a language subset of the first (thus, the extension is 
a superset). Clearly, creating an extension language is better for 
interoperability than creating an incompatible language."""

There is a big difference between an extension language and a language 
extension, at least, conceptually. An extension language is a language 
for writing extensions, e.g., elisp. A language extension, in your 
terminology, is a superset of the extended language.


"""Ideally, many instances of a superset language can be safely and 
usefully processed as though they were in the subset language.""""

Actually, *all* the instances of the extension language which are 
instances of the subset language can be usefully processed as though 
they were in the subset language, by dint of the sheer fact that they 
are *in* the subset language.

""" Languages that exhibit this property are said to be "extensible." 
Language designers can facilitate extensibility by defining how 
implementations must handle unknown extensions -- for example, that 
they be ignored (in some way) or should be considered errors."""

Ok, what you're after is clear, I guess, i.e.,  that many instances of 
the superset language which are *not* instances of the subset language 
can be usefully processed as though they were.

It's unclear to me why only such languages are considered extensible, 
especially if the way the "useful processing" of an instance of the 
language extension which isn't an instance of the subset language is to 
say that it is, when processed as an instance of the subset language, 
erroneous. I can't figure out what languages *aren't* extensible!

Cheers,
Bijan Parsia.

Received on Friday, 5 March 2004 13:16:31 UTC