Grammar Engineering Frequently Asked Questions

When I load my grammar, I get *"Feature ... is introduced at multiple types (...)". What is causing this?

Features can only be declared for one type. If two types need the same feature, they need to have a common supertype from which to inherit it. You might hit this error if you happen to try to reuse a feature name already in use in the matrix, or if you try to declare a feature for two types at the same time (e.g., FORM on verb and prep) instead of putting it on a supertype.

NB: You can of course mention features on multiple types, and often need to in order to constrain their values appropriately. They just need to be introduced on a supertype to all types that they are appropriate for. This doesn't mean that e.g., trans-verb-lex needs to inherit from noun in order to constrain a value of CASE on one of its arguments. In the example below, CASE remains a feature of noun, which happens to be the value at the end of a path inside verb-lex.

trans-verb-lex := verb-lex & transitive-lex-item &
   [ SYNSEM.LOCAL.CAT.VAL.COMPS < [ LOCAL.CAT.HEAD noun &
                                            [ CASE acc ] ] > ].

Related topics


Back to FAQs page

Back to main course page

-- EmilyBender - 18 May 2005

Topic revision: r1 - 2005-05-18 - 21:31:37 - EmilyBender
 

This site is powered by the TWiki collaboration platformCopyright & by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback
Privacy Statement Terms & Conditions