    # File lib/wordnet/synset.rb, line 282
                    def initialize( lexicon, offset, pos, word=nil, data=nil )
                            @lexicon             = lexicon or
                                    raise ArgumentError, "%p is not a WordNet::Lexicon" % lexicon
                            @partOfSpeech        = SyntacticSymbols[ pos ] or
                                    raise ArgumentError, "No such part of speech %p" % pos
                            @mutex                       = Sync::new
                            @pointers            = []

                            if data
                                    @offset = offset.to_i
                                    @filenum, @wordlist, @pointerlist,
                                            @frameslist, @gloss = data.split( DelimRe )
                            else
                                    @offset = 1
                                    @wordlist = word ? word : ''
                                    @filenum, @pointerlist, @frameslist, @gloss = [''] * 4
                            end
                    end