public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { var arguments = args.ToList(); var l1 = arguments[0]; arguments.RemoveAt(0); var w1 = arguments[0]; arguments.RemoveAt(0); var l2 = arguments[0]; arguments.RemoveAt(0); var vm = new PositionFrequencyViewModel { Selection = selection, LayerDisplayname = l1, LayerQueries = new[] { w1 }, CorrespondingLayerValueFilter = new CorrespondingLayerValueFilterViewModel { Layer1Displayname = l1, Layer2Displayname = l2, AnyMatch = true, Layer2ValueFilters = new HashSet <string>(arguments), Selection = selection } }; vm.Execute(); writer.WriteTable(selection.Displayname, vm.GetDataTable()); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { if (args == null || args.Length < 2) { return; } var queries = new List <string>(args); queries.RemoveAt(0); queries = ResolveFileQueriesRecursive(queries); var spanHelper = new KwicSpanHelper(queries); var vm = new TextLiveSearchViewModel { Selection = selection, AddContextSentencesPre = spanHelper.SentencePre, AddContextSentencesPost = spanHelper.SentencePost }; vm.AddQuery(GetQuery(args[0], spanHelper.CleanArguments)); vm.Execute(); writer.WriteTable(selection.Displayname, vm.GetUniqueDataTableCsv()); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { var vm = new NgramViewModel { Selection = selection }; if (args.Length == 0) { vm.NGramSize = 5; } if (args.Length >= 1) { vm.NGramSize = int.Parse(args[0]); } if (args.Length >= 2) { vm.LayerDisplayname = args[1]; } if (args.Length == 3) { vm.NGramMinFrequency = int.Parse(args[2]); } vm.Execute(); writer.WriteTable(selection.Displayname, vm.GetDataTable()); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { var columns = selection.GetDocumentMetadataPrototypeOnlyPropertiesAndTypes(); if (columns.ContainsKey(Resources.Guid)) { columns.Remove(Resources.Guid); } var dt = new DataTable(); dt.Columns.Add(Resources.Guid, typeof(string)); foreach (var column in columns) { dt.Columns.Add(column.Key, column.Value); } dt.BeginLoadData(); foreach (var pair in selection.DocumentMetadata) { var items = new List <object> { pair.Key.ToString("N") }; items.AddRange(columns.Select(column => pair.Value.ContainsKey(column.Key) ? pair.Value[column.Key] : null)); dt.Rows.Add(items.ToArray()); } dt.EndLoadData(); writer.WriteTable(selection.Displayname, dt); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { if (args == null || args.Length != 1) { return; } var guid = Guid.Parse(args[0]); if (!selection.ContainsDocument(guid)) { return; } var columns = selection.GetDocumentMetadata(guid); var dt = new DataTable(); dt.Columns.Add(Resources.Category, typeof(string)); dt.Columns.Add(Resources.Value, typeof(string)); dt.BeginLoadData(); dt.Rows.Add(Resources.Guid, args[0]); foreach (var pair in columns) { dt.Rows.Add(pair.Key, pair.Value.ToString()); } dt.EndLoadData(); writer.WriteTable(selection.Displayname, dt); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { if (args == null || args.Length != 3) { return; } var s = args[0].Split(new[] { "::" }, StringSplitOptions.RemoveEmptyEntries); if (s.Length != 2) { return; } var query = QueryParser.Parse(args[0]); if (query is FilterQueryUnsupportedParserFeature feature) { UnsupportedQueryParserFeatureHelper.Handle(selection, feature, args[1], writer); return; } var sub = selection.Create(new[] { query }, Path.GetFileNameWithoutExtension(args[1]), false); writer.WriteTable(args[2], sub.GetDocumentGuidAndDisplaynamesAsDataTable()); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { var vm = new CooccurrenceViewModel { Selection = selection }; var arguments = args.ToList(); var l1 = arguments[0]; arguments.RemoveAt(0); var l2 = arguments[0]; arguments.RemoveAt(0); var any = bool.Parse(arguments[0]); arguments.RemoveAt(0); vm.LayerDisplayname = l1; vm.CorrespondingLayerValueFilter = new CorrespondingLayerValueFilterViewModel { Layer1Displayname = l1, Layer2Displayname = l2, AnyMatch = any, Layer2ValueFilters = new HashSet <string>(arguments), Selection = selection }; vm.Execute(); writer.WriteTable(selection.Displayname, vm.GetFullDataTable()); }
private static IEnumerable <Selection> UnsupportedParserRandomFeatureToFile( AbstractTableWriter writer, string output, RandomSelectionBlock block) { var outputOptions = output.Split(new[] { "#" }, StringSplitOptions.RemoveEmptyEntries); if (outputOptions.Length != 2) { return(null); } var export = new ConvertAction(); export.Execute(block.RandomSelection, new[] { output }, writer); var form = outputOptions[0]; var path = outputOptions[1]; var nam = Path.GetFileNameWithoutExtension(path); var ext = Path.GetExtension(path); var dir = Path.GetDirectoryName(path); if (!string.IsNullOrWhiteSpace(dir) && !Directory.Exists(dir)) { Directory.CreateDirectory(dir); } export.Execute(block.RandomInvertSelection, new[] { $"{form}#\"{Path.Combine(dir, $"{nam}_inverse{ext}")}\"" }, writer); return(null); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { if (args == null || args.Length < 4) { return; } var queries = new List <string>(args); queries.RemoveAt(0); queries.RemoveAt(0); queries.RemoveAt(0); var vm = new TextFlowSearchViewModel { Selection = selection, Layer1Displayname = args[0], Layer2Displayname = args[1], MinFrequency = int.Parse(args[2]), LayerQueryPhrase = queries, AutoJoin = true, HighlightCooccurrences = false }; vm.Execute(); writer.WriteDirectThroughStream(Convert(vm.DiscoveredConnections.ToArray())); }
private static IEnumerable <Selection> UnsupportedParserFeatureAutosplitToFile( AbstractTableWriter writer, string output, IEnumerable <Selection> selections) { var outputOptions = output.Split(new[] { "#" }, StringSplitOptions.RemoveEmptyEntries); if (outputOptions.Length != 2) { return(null); } var form = outputOptions[0]; var path = outputOptions[1]; var dir = Path.GetDirectoryName(path); var nam = Path.GetFileNameWithoutExtension(path); var ext = Path.GetExtension(path); if (!string.IsNullOrWhiteSpace(dir) && !Directory.Exists(dir)) { Directory.CreateDirectory(dir); } var export = new ConvertAction(); foreach (var cluster in selections) { export.Execute(cluster, new[] { $"{form}#\"{Path.Combine(dir, $"{nam}_{cluster.Displayname.EnsureFileName()}{ext}")}\"" }, writer); } return(null); }
public static IEnumerable <Selection> Handle(Selection selection, FilterQueryUnsupportedParserFeature query, string output = null, AbstractTableWriter writer = null) { return(query.MetaLabel == "<:RANDOM:>" ? UnsupportedParserRandomFeature(selection, query, output, writer) : UnsupportedParserFeatureAutosplit(selection, query, output, writer)); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { if (args.Length != 1) { return; } var query = QueryParser.Parse(args[0]); if (!(query is FilterQueryUnsupportedParserFeature)) { return; } var selections = UnsupportedQueryParserFeatureHelper.Handle(selection, (FilterQueryUnsupportedParserFeature)query); if (selections == null) { return; } foreach (var sub in selections) { writer.WriteTable(sub.Displayname, sub.GetDocumentGuidAndDisplaynamesAsDataTable()); } }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { if (args.Length < 4) { return; } var vm = new Ngram1LayerSelectiveViewModel { Selection = selection, NGramSize = int.Parse(args[0]), LayerDisplayname = args[1], NGramMinFrequency = int.Parse(args[2]) }; var queries = args.ToList(); queries.RemoveAt(0); queries.RemoveAt(0); queries.RemoveAt(0); if (queries.Count == 1 && queries[0].StartsWith("FILE:")) { vm.LayerQueries = File.ReadAllLines(queries[0].Replace("FILE:", ""), Configuration.Encoding); } else { vm.LayerQueries = queries; } vm.Execute(); writer.WriteTable(selection.Displayname, vm.GetDataTable()); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { if (args == null || args.Length != 2) { return; } var block = selection.CreateBlock <CorrespondingLayerValueBlock>(); block.Layer1Displayname = args[0]; block.Layer2Displayname = args[1]; block.Calculate(); var dt = new DataTable(); dt.Columns.Add(args[0], typeof(string)); dt.Columns.Add(args[1], typeof(string)); dt.BeginLoadData(); foreach (var x in block.CorrespondingLayerValues) { dt.Rows.Add(x.Key, string.Join(" | ", x.Value)); } dt.EndLoadData(); writer.WriteTable(selection.Displayname, dt); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { if (args.Length != 2) { return; } var layer = args[0]; selection.LayerDelete(layer); var output = args[1].Split(new[] { "#" }, StringSplitOptions.RemoveEmptyEntries); if (output.Length != 2) { return; } var exporter = Configuration.AddonExporters.GetReflectedType(output[0], "Exporter"); if (exporter == null) { return; } var path = output[1].Replace("\"", ""); var dir = Path.GetDirectoryName(path); if (!string.IsNullOrWhiteSpace(dir) && !Directory.Exists(dir)) { Directory.CreateDirectory(dir); } exporter.Export(selection, path); }
private void ExecuteFileQuery(string tid, AbstractTableWriter writer, Frequency1LayerViewModel vm, double div, string path) { var lines = File.ReadAllLines(path, Configuration.Encoding); var res = new DataTable(); res.Columns.Add(vm.LayerDisplayname, typeof(string)); res.Columns.Add(Resources.Frequency, typeof(double)); res.Columns.Add(Resources.FrequencyRel, typeof(double)); res.BeginLoadData(); foreach (var line in lines) { if (!vm.Frequency.ContainsKey(line)) { continue; } var sum = vm.Frequency[line]; res.Rows.Add(line, sum, sum / div); } res.EndLoadData(); writer.WriteTable(tid, res); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { var vm = new ValidateSelectionIntegrityViewModel { Selection = selection }; vm.Execute(); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { var vm = new CorpusWeightUnlimmitedViewModel { Selection = selection }; vm.Execute(); writer.WriteTable(selection.Displayname, vm.GetDataTable()); }
private void ExecuteSdmFileQuery(string tid, AbstractTableWriter writer, Frequency1LayerViewModel vm, double div, string path) { var lines = File.ReadAllLines(path, Configuration.Encoding); var res = new DataTable(); res.Columns.Add(Resources.Category, typeof(string)); res.Columns.Add(vm.LayerDisplayname, typeof(string)); res.Columns.Add(Resources.Frequency, typeof(double)); res.Columns.Add(Resources.FrequencyRel, typeof(double)); res.Columns.Add(Resources.Value, typeof(double)); res.BeginLoadData(); var match = 0d; foreach (var line in lines) { var split = line.Split(new[] { "\t" }, StringSplitOptions.RemoveEmptyEntries); if (split.Length != 3) { continue; } var word = split[1]; if (word.StartsWith("*")) // Postfix { foreach (var w in GetSdmPostfixQuery(word.Substring(1), vm.Frequency)) { res.Rows.Add(split[0], w.Key, w.Value, w.Value / div, split[2]); match += w.Value; } } else if (word.EndsWith("*")) // Prefix { foreach (var w in GetSdmPrefixQuery(word.Substring(0, word.Length - 1), vm.Frequency)) { res.Rows.Add(split[0], w.Key, w.Value, w.Value / div, split[2]); match += w.Value; } } else if (vm.Frequency.ContainsKey(word)) { res.Rows.Add(split[0], word, vm.Frequency[word], vm.Frequency[word] / div, split[2]); match += vm.Frequency[word]; } } var other = vm.Selection.CountToken - match; res.Rows.Add(Resources.Other, Resources.TokenCount, other, other / div, 0); res.EndLoadData(); writer.WriteTable(tid, res); }
protected AbstractWebService(AbstractTableWriter writer, string ip, int port, int timeout = 0) { Writer = writer; _ip = ip; _port = port; _timeout = timeout; Writer = writer; Mime = writer.MimeType; Url = $"http://{ip}:{port}/"; InitializeDefaultParameter(); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { var dt = new DataTable(); dt.Columns.Add(Resources.Param, typeof(string)); dt.Columns.Add(Resources.Value, typeof(double)); dt.BeginLoadData(); dt.Rows.Add(Resources.Documents, (double)selection.CountDocuments); dt.EndLoadData(); writer.WriteTable(selection.Displayname, dt); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { var vm = new DocumentTermFrequencyViewModel { Selection = selection, MetadataKey = args[0] }; if (args.Length == 2) { vm.LayerDisplayname = args[1]; } vm.Execute(); writer.WriteTable(selection.Displayname, vm.GetDataTable()); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { if (args.Length != 1) { return; } var vm = new DocumentMetadataViewModel { Selection = selection }; vm.Execute(); vm.Export(args[0]); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { if (args == null || args.Length == 0) { return; } var vm = new CorpusWeightUnlimmitedViewModel { Selection = selection }; vm.Execute(); writer.WriteTable(selection.Displayname, vm.GetFilteredDataTable(args)); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { var vm = new EditDistantCalculationViewModel { Selection = selection }; if (args.Length >= 1) { vm.LayerDisplayname = args[0]; } vm.Execute(); writer.WriteTable(selection.Displayname, vm.GetDataTable()); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { var vm = new VocabularyComplexityViewModel { Selection = selection }; if (args != null && args.Length == 1) { vm.LayerDisplayname = args[0]; } vm.Execute(); writer.WriteTable(selection.Displayname, vm.GetDataTableSimple()); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { var vm = new Frequency1LayerViewModel { Selection = selection }; if (args != null && args.Length == 1) { vm.LayerDisplayname = args[0]; } vm.Execute(); writer.WriteTable(selection.Displayname, vm.GetNormalizedDataTable()); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { if (args.Length != 2) { return; } var block = selection.CreateBlock <NgramHighlightCooccurrencesBlock>(); block.NGramSize = int.Parse(args[0]); block.LayerDisplayname = args[1]; block.Calculate(); var dt = new DataTable(); dt.Columns.Add(Resources.NGram, typeof(string)); var max = block.NgramsWeighted[0].Key.Length; for (var cnt = 1; cnt <= max; cnt++) { dt.Columns.Add($"{Resources.Token} ({cnt})", typeof(string)); dt.Columns.Add($"{Resources.Rank} ({cnt})", typeof(byte)); } dt.Columns.Add(Resources.Frequency, typeof(double)); dt.Columns.Add(Resources.Significance + " (max.)", typeof(double)); dt.Columns.Add(Resources.Significance + " (sum)", typeof(double)); dt.BeginLoadData(); foreach (var x in block.NgramsWeighted) { var data = new List <object> { string.Join(" ", x.Key.Select(y => y.Key)) }; foreach (var y in x.Key) { data.Add(y.Key); data.Add(y.Value); } data.Add(x.Value[0]); data.Add(x.Value[1]); data.Add(x.Value[2]); dt.Rows.Add(data.ToArray()); } dt.EndLoadData(); writer.WriteTable(selection.Displayname, dt); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { var dt = new DataTable(); dt.Columns.Add(Resources.Layernames, typeof(string)); dt.BeginLoadData(); foreach (var x in selection.LayerDisplaynames) { dt.Rows.Add(x); } dt.EndLoadData(); writer.WriteTable(selection.Displayname, dt); }
public void Execute(Selection selection, string[] args, AbstractTableWriter writer) { var dt = new DataTable(); dt.Columns.Add(Resources.Tokens, typeof(string)); dt.BeginLoadData(); foreach (var v in selection.GetLayers(args[0]).FirstOrDefault().Values) { dt.Rows.Add(v); } dt.EndLoadData(); writer.WriteTable(selection.Displayname, dt); }