protected override CompletionDataList GetAttributeCompletions(IAttributedXObject attributedOb,
                                                                      Dictionary <string, string> existingAtts)
        {
            var path = GetElementPath();

            if (path.Elements.Count > 0)
            {
                IXmlCompletionProvider schema = FindSchema(path);
                if (schema == null)
                {
                    schema = inferredCompletionData;
                }
                if (schema != null)
                {
                    return(schema.GetAttributeCompletionData(path));
                }
            }
            return(null);
        }
        protected override Task <CompletionDataList> GetAttributeCompletions(IAttributedXObject attributedOb,
                                                                             Dictionary <string, string> existingAtts, CancellationToken token)
        {
            var path = GetElementPath();

            if (path.Elements.Count > 0)
            {
                IXmlCompletionProvider schema = FindSchema(path);
                if (schema == null)
                {
                    schema = inferredCompletionData;
                }

                if (schema != null)
                {
                    return(schema.GetAttributeCompletionData(path, token));
                }
            }
            return(Task.FromResult(new CompletionDataList()));
        }