- From: <stan.devitt@agfa.com>
- Date: Fri, 24 Jun 2005 09:48:39 -0400
- To: syosi@MIT.EDU
- Cc: connolly@w3.org, EspeonEefi <eefi@MIT.EDU>, "Eric Prud'hommeaux" <eric@w3.org>, public-cwm-bugs@w3.org
Yosi, The main reason I lump prefixes and keywords together is that both change the meaning of what is parsed. I agree fully with your concern about keywords potentially changing the way the file is parsed, and I'd prefer not changing the parsing and/or the interpretation half way through the parse with the following possible exception, and so I'd prefer a weaker form of keyword and I am leaning towards a header. As for scoping, I see it as follows: 1. A formula is very analogous to a file in that it groups a number of statements together for interpretation in a given context. Thus, it can be used to encapsulate the information that is normally contained in a file. 2. This enables a sort of meta-reasoning wherein the parts of a statement are each equivalent to something that is described by the contents of a file, but inlined as a formula. This metareasoning is important for everything from proof results to being able to build in a modular fasion. For it to work properly. a) Files and the bodies of formulae must support exactly the same structure. b) That structure should include keywords and prefixes in the same way. c) The scope of the prefixes and keywords should be the file in the case of a file, and a formula in the case of a formula, with some sort of nested lexical scoping. This way, a formula is exactly equivalent to { contents of an n3 file }. ----- As for the keywords and prefixes, I get the impression that the keywords and prefixes are intended for the entire file. In practice at the moment they may occur outside the header, but always occur before they are used so it is effectively the same as if they occured in a header (nasty keyword examples aside). 3. Scoping of keywords and prefixes (by nested formulae) have not generally been an issue as usually the prefixes and aliases are the same. ---- Thus I am thinking: A. put the prefixes and keywords in a header. B. Make sure a formula is exactly equivalent to { contents of an n3 file } (This implies that the prolog of the formula applies just to the body of the formula.) (We probably want something like nested lexical scoping so that outer definitions apply unless overridden in an inner scope.) C. (a completely separate issue) limit the power of keywords somewhat so that we can more easily automate the parser and tokenizer generation and build on existing tools. Stan. Yosi Scharf <syosi@MIT.EDU> 06/23/2005 09:21 PM To: Stan Devitt/AWKCT/CAN/AGFA/CA/BAYER@AGFA cc: connolly@w3.org, EspeonEefi <eefi@MIT.EDU>, "Eric Prud'hommeaux" <eric@w3.org>, public-cwm-bugs@w3.org Subject: Re: string escapes reverted on purpose? @keywords can quite drastically change the meaning / parseability of a file. Statements like: ... The above is an evil file, and should be disallowed. Cwm right now has no problems with it. However, I think that @prefix is a file processing detail about the meanings of certain tokens. It has nothing to do with formulae per se, so formula scoping makes little sense to me. To allow for redefinitions of prefixes / prefixes after the header I see little use for, besides maybe changing what namespace is barenamed, but I also don't see why it should be disallowed. Yosi
Received on Friday, 24 June 2005 13:48:58 UTC