T.R | Title | User | Personal Name | Date | Lines |
---|
781.1 | | TOOK::CALLANDER | | Wed Mar 13 1991 10:22 | 24 |
| Actually you are right on target...but the reason you didn't see what
you expected was because the parser tried multiple things before giving
you the error message.
MCC> show branch aim Task Persistence Time
We recognized the Verb no problem;
then we were able to pick up branch aim;
we then pick up task and find an entity match and attempt
to match on the instance (I don't know what data type task has
but it looks like persistence didn't match)
if the entity didn't match it would then try to
match "task" to an attribute of branch, and that is the
error you saw.
If "persistence" had been a legal instance value on task I would have
expected an error on "time". Now I could be off some where because I
made a number of assumptions here that might be invalid (like task even
takes an instance); but I think you get the general idea.
Please note though there is still a qar on the FCL for it's lack of
informative error messages.
jill
|
781.2 | instance wouldn't match | COOKIE::KITTELL | Richard - Architected Info Mgmt | Wed Mar 13 1991 14:56 | 5 |
|
Jill, your assumption was correct, the identifier on Task is numeric, so
Persistence wouldn't match. I guess the presence of the Task entity
causes the parser to focus on Task, instead of trying to match Task Persistence
Time with the attributes.
|
781.3 | Still a bit confused... | DFLAT::PLOUFFE | Jerry | Wed Mar 13 1991 16:24 | 28 |
| RE: .1
> if the entity didn't match it would then try to
> match "task" to an attribute of branch, and that is the
> error you saw.
Jill, I still don't understand something.
The parser seemed to do all the right things up to the moment after it tried
to "match "task" to an attribute of branch".
Why didn't it try to continue and see is "task persistence" was a valid
attribute of branch?
Assuming that this would fail, why didn't it continue to see if "task
persistence time" was a valid attribute of branch?
In other words, why did the parser fail to realize that "task", "persistence"
and "time" were separate keywords of a valid attribute of the branch class?
It seemingly was trying to parse for an attribute and the parser already
parses multi-keyword attributes.
I'm just curious...
- Jerry
P.S. I have a hunch that it really tried to parse for an attribute starting
with the word "persistence". Is this possibly what happened?
|
781.4 | more detail on parsing | TOOK::HAO | | Thu Mar 14 1991 09:30 | 23 |
| Hi Richard,
I don't know why your command is failing. From what I understand of
the parser, it should be doing something close to what Jill described.
When the parser gets to the keyword "Task", it tried to match on it as
a child entity of "Branch". When that failed due to the instance
datatype mismatch, the parser tries to match "Task" as the first
keyword of an attribute. IF that succeeded, the parser checks if
"Task" has another keyword. The parser keeps trying to parse the
longest (set of keywords) attribute it can find, as indicated by the
parse tables. If the longest attribute isn't valid for the entity, the
parser will backtrack -- lop off the keywords to try and find if a
shorter attribute is valid.
However, judging from your error msg-- "unknown attr" -- it sounds as
if the keyword "Task" was NOT found in the parse tables at all. This
is different from finding "Task" in the parse tables but not knowing
that it was valid for your entity. You may want to doublecheck that
your parse tables are properly updated.
Christine
|
781.5 | INFO: check of parse tables | COOKIE::KITTELL | Richard - Architected Info Mgmt | Thu Mar 14 1991 10:56 | 13 |
|
Hi Christine.
> However, judging from your error msg-- "unknown attr" -- it sounds as
> if the keyword "Task" was NOT found in the parse tables at all. This
> is different from finding "Task" in the parse tables but not knowing
> that it was valid for your entity. You may want to doublecheck that
> your parse tables are properly updated.
From the MCC_PTB_PARSER.DAT file:
Command: SHOW BRANCHLIBRARY TASK PERSISTENCE TIME
|
781.6 | last suggestion | TOOK::HAO | | Fri Mar 15 1991 09:10 | 12 |
| Hi Richard,
Did you try specifying "show branch library aim task persistence time"
instead of leaving the 2nd keyword of the GE out? Do you get the same
error or a different one?
At this point, I'm out of suggestions. My knowledge of FCL and parsing
grows fuzzier every day!! Anyways, Jill or Pete Ditmars can help you
from here.
Christine
|
781.7 | single-word global entity name | COOKIE::KITTELL | Richard - Architected Info Mgmt | Fri Mar 15 1991 10:34 | 13 |
|
RE: .6
> Did you try specifying "show branch library aim task persistence time"
> instead of leaving the 2nd keyword of the GE out? Do you get the same
> error or a different one?
Sorry, I entered the global name incorrectly in the basenote. We had to
change the name from Branch Library to BranchLibrary for now because the
iconic PM doesn't find the icon file for multi-world global entities. So
it is a one-keyword entity name, and "Branch" is just an abbreviation of it.
Thanks for the suggestions, Christine.
|