Yesterday I pondered whether we can make sense of 'competent user' of a language, given that we can never fully master any language. There about 170,000 words in current use in the English language, of which I probably know about 15,000. New words are being added every year. In addition to that, there are billions of proper names whose meaning no single person has knowledge of. I'm assuming that French, German, Indian and Japanese proper names count, given that they, or some Anglicised version of them can meaningfully be used as part of an English sentence.
Is there any sense to the notion of 'competent user'? Perhaps we should distinguish between 'competent use' of a language and 'specialist use'. A specialist user will understand all or most of the terms connected with the specialism. The specialism might be in medical terms, engineering or scientific or legal terms, in place names, historical figures. Of course, nearly everyone is a "Facebook" specialist in the sense they know the names of their friends - names whose meaning they know but probably 99.99% of the people on the planet do not. A generalist user, by contrast, will be equipped to communicate using terms that are in general use. It might be difficult to set a boundary for such generalist terms, but it would probably include all the words in the Shorter Oxford Dictionary, many proper names such as 'London', 'America', 'Caesar', 'Elizabeth II' and so on.
I will then define a discourse (i.e. a sentence or group of sentences) as 'semantically complete' when its meaning is clear to any generalist user of the language.