header { package org.apache.directory.shared.ldap.schema; } class AttributeTypeDescriptionParser extends LdapSchemaDefinitionsBaseParser; options { k=2; } attributeTypeDescription : LPAREN ( SPACE )* numericoid ( options { greedy=true; } : ( SPACE )+ ID_NAME ( SPACE )+ qdescrs )? ( options { greedy=true; } : ( SPACE )+ ID_DESC ( SPACE )+ qdstring )? ( options { greedy=true; } : ( SPACE )+ ID_OBSOLETE )? ( options { greedy=true; } : ( SPACE )+ ID_SUP ( SPACE )+ oid )? ( options { greedy=true; } : ( SPACE )+ ID_EQUALITY ( SPACE )+ oid )? ( options { greedy=true; } : ( SPACE )+ ID_ORDERING ( SPACE )+ oid )? ( options { greedy=true; } : ( SPACE )+ ID_SUBSTR ( SPACE )+ oid )? ( options { greedy=true; } : ( SPACE )+ ID_SYNTAX ( SPACE )+ noidlen )? ( options { greedy=true; } : ( SPACE )+ ID_SINGLE_VALUE )? ( options { greedy=true; } : ( SPACE )+ ID_COLLECTIVE )? ( options { greedy=true; } : ( SPACE )+ ID_NO_USER_MODIFICATION )? ( options { greedy=true; } : ( SPACE )+ ID_USAGE ( SPACE )+ usage )? extensions ( SPACE )* RPAREN ; usage : ID_USER_APPLICATIONS | ID_DIRECTORY_OPERATION | ID_DISTRIBUTED_OPERATION | ID_DSA_OPERATION ; class AttributeTypeDescriptionLexer extends LdapSchemaDefinitionsBaseLexer; options { k=3; } ID_USER_APPLICATIONS : "userApplications"; ID_DIRECTORY_OPERATION : "directoryOperation"; ID_DISTRIBUTED_OPERATION : "distributedOperation"; ID_DSA_OPERATION : "dSAOperation";