[Bug 1804] [FS] editorial: E.1.4.2 Erases

http://www.w3.org/Bugs/Public/show_bug.cgi?id=1804





------- Comment #4 from jmdyck@ibiblio.org  2006-04-14 02:22 -------
(In reply to comment #3)
> 
> When you instantiate the rule, there is no such thing as a 'SimpleValue',

I disagree.

I suppose it comes down to how you interpret section 2.1.2: What is the nature
of the "objects" that are bound to the italicized non-terminals in judgments,
and which ones can be "substituted legally" for a given non-terminal?

My interpretation is that:
-- all such objects are syntactic objects (derivation trees, roughly speaking):
objects defined by, and structured according to, the various grammars of the
spec; and
-- the objects that can be substituted legally for a given non-terminal are
those whose root symbol is, or can be derived from, that non-terminal. (E.g.,
an italicized SimpleValue1 can be bound to any syntactic object deriveable from
the non-terminal SimpleValue.)

I'll admit that this interpretation raises questions. (In fact, I posed such a
question in Bug 1535. I don't think it's been answered yet.) However, it's
simple, consistent, and seems to fit the available data fairly well.

I believe your interpretation is something like the following:

-- The objects that can be bound to italicized non-terminals: some of these
objects are syntactic, but some aren't (even though the FS has grammar rules
that appear to define them as such). Instead, they are abstract entities
defined by external specs like the XQuery/XPath Data Model and XML Schema.

-- The particular objects that can be substituted legally for a given
non-terminal: if the non-terminal belongs to the XQuery/XPath or Core grammars
(I'm guessing), then the legal objects are perhaps something like I described
in my interpretation; if the non-terminal belongs to the Formal grammar, the
legal objects are those abstract entities that satisfy the definition of some
term similar in spelling to the non-terminal. (E.g., an italicized SimpleValue1
can be bound to any entity that satisfies section 2.3.1's definition of "simple
value".)

The FS does a lot to reinforce my interpretation that Formal objects are
syntactic:

-- It gives productions for Formal non-terminals, in exactly the same way as
for other non-terminals. (If a Formal non-terminal were to be treated as a
reference to a definition of abstract entities, why supply a production for
it?)

-- Section 2.3.2 gives nice concrete phrases apparently derived from the Value
non-terminal. Various sections in 2.4 do likewise for type-related
non-terminals.

-- Many judgments contain patterns that use syntax from Formal productions, in
the same way that they use syntax from Core productions. (If you had a premise
judgment in which a Formal non-terminal were bound to an abstract entity, how
would you match that against conclusion judgments that have patterns involving
Formal syntax?)

As far as I can tell, saying that Formal objects aren't syntactic will make the
inference process a lot more complicated, and with no compensating benefit.

> you will get a value in the language generated by SimpleValue.

This is an interesting statement. The phrase "the language generated by [a
non-terminal]" would normally have a purely syntactic meaning, where each
member of that language is a sequence of symbols or tokens or characters
(depending on how one defined the boundary of the grammar). But you seem to be
saying that each member is a value, by which I'm pretty sure you mean an XDM
value.

Received on Friday, 14 April 2006 02:22:40 UTC