private static void WriteXml(Offsets offsets, XmlWriter writer) { WriteXmlOffsetPair(writer, offsets.Sentence, SENTENCE_TAG); WriteXmlOffsetPair(writer, offsets.Subject, SUBJECT_TAG); WriteXmlOffsetPair(writer, offsets.Object, OBJECT_TAG); WriteXmlOffsetPair(writer, offsets.Indirectspeech, INDIRECTSPEECH_TAG); WriteXmlOffsetPair(writer, offsets.Directspeech, DIRECTSPEECH_TAG); WriteXmlOffsetPair(writer, offsets.PositiveTonality, POSITIVETONALITY_TAG); WriteXmlOffsetPair(writer, offsets.NegativeTonality, NEGATIVETONALITY_TAG); WriteXmlOffsetPair(writer, offsets.NeutralTonality, NEUTRALTONALITY_TAG); WriteXmlOffsetPair(writer, offsets.Anaphoria, ANAPHORIA_TAG); }
private static void ReadXml(Offsets offsets, XmlReader reader) { var xd = XDocument.Parse(reader.ReadOuterXml()); offsets.Sentence = ReadXmlOffsetPair(xd, SENTENCE_TAG, true); offsets.Subject = ReadXmlOffsetPair(xd, SUBJECT_TAG); offsets.Object = ReadXmlOffsetPair(xd, OBJECT_TAG); offsets.Indirectspeech = ReadXmlOffsetPairs(xd, INDIRECTSPEECH_TAG); offsets.Directspeech = ReadXmlOffsetPairs(xd, DIRECTSPEECH_TAG); offsets.PositiveTonality = ReadXmlOffsetPairTonalitys(xd, POSITIVETONALITY_TAG); offsets.NegativeTonality = ReadXmlOffsetPairTonalitys(xd, NEGATIVETONALITY_TAG); offsets.NeutralTonality = ReadXmlOffsetPairs(xd, NEUTRALTONALITY_TAG); offsets.Anaphoria = ReadXmlOffsetPairAnaphorias(xd, ANAPHORIA_TAG); }
internal static Offsets FromXmlString(string offsetsXml) { var ofs = new Offsets(); using (var sr = new StringReader(offsetsXml)) using (var xr = new XmlTextReader(sr)) { xr.Read(); ReadXml(ofs, xr); } return(ofs); }
public static string ToTextString(Offsets offsets) { var sb = new StringBuilder(); WriteOffsetPair(sb, offsets.Sentence); sb.Append(FIELD_SEPARATOR); WriteOffsetPair(sb, offsets.Subject); sb.Append(FIELD_SEPARATOR); WriteOffsetPair(sb, offsets.Object); sb.Append(FIELD_SEPARATOR); WriteOffsetPair(sb, offsets.Indirectspeech); sb.Append(FIELD_SEPARATOR); WriteOffsetPair(sb, offsets.Directspeech); sb.Append(FIELD_SEPARATOR); WriteOffsetPair(sb, offsets.PositiveTonality); sb.Append(FIELD_SEPARATOR); WriteOffsetPair(sb, offsets.NegativeTonality); sb.Append(FIELD_SEPARATOR); WriteOffsetPair(sb, offsets.NeutralTonality); sb.Append(FIELD_SEPARATOR); WriteOffsetPair(sb, offsets.Anaphoria); sb.Append(FIELD_SEPARATOR); return(sb.ToString()); }
public static string ToXmlString(Offsets offsets) { var sb = new StringBuilder(); using (var sw = new StringWriter(sb)) using (var xw = new XmlTextWriter(sw) { Formatting = Formatting.None }) { xw.WriteStartElement(ROOT_TAG); WriteXml(offsets, xw); xw.WriteEndElement(); } return(sb.ToString()); }
public static XDocument ConvertToHierarchy(string originalText, string offsetsString, TextFormat textFormat = TextFormat.Text) { originalText.ThrowIfEmptyOrNull("originalText"); offsetsString.ThrowIfEmptyOrNull("offsetsString"); var offsets = Offsets.FromString(offsetsString, textFormat); #region [.create point's.] var points = point.createFrom(offsets.Subject, tag_type.subject) .Concat ( point.createFrom(offsets.Object, tag_type.@object) ) .Concat ( point.createFrom(offsets.Indirectspeech, tag_type.indirectspeech) ) .Concat ( point.createFrom(offsets.Directspeech, tag_type.directspeech) ) .Concat ( point.createFrom(offsets.PositiveTonality, tag_type.positivetonality) ) .Concat ( point.createFrom(offsets.NegativeTonality, tag_type.negativetonality) ) .Concat ( point.createFrom(offsets.NeutralTonality, tag_type.neutraltonality) ) .Concat ( point.createFrom(offsets.Anaphoria, tag_type.anaphoria) ); #endregion return(OffsetsString2XDocumentConverterHelper.ConvertToHierarchy(originalText, offsets, points)); }
internal static Offsets FromTextString(string offsetsText) { var ofs = new Offsets(); var fields = offsetsText.Split(new[] { FIELD_SEPARATOR }, StringSplitOptions.None); if (fields.Length < FIELD_COUNT) { throw (new ArgumentException("offsetsText.Split( new[] { FIELD_SEPARATOR }, StringSplitOptions.RemoveEmptyEntries ) < " + FIELD_COUNT)); } ofs.Sentence = ReadOffsetPair(fields[0], true); ofs.Subject = ReadOffsetPair(fields[1]); ofs.Object = ReadOffsetPair(fields[2]); ofs.Indirectspeech = ReadOffsetPairs(fields[3]); ofs.Directspeech = ReadOffsetPairs(fields[4]); ofs.PositiveTonality = ReadOffsetPairTonalitys(fields[5]); ofs.NegativeTonality = ReadOffsetPairTonalitys(fields[6]); ofs.NeutralTonality = ReadOffsetPairs(fields[7]); ofs.Anaphoria = ReadOffsetPairAnaphorias(fields[8]); return(ofs); }