protected void Validate(Cardinality cardinality) { Invariant(cardinality.Interval != null, string.Format( CommonStrings.XMustNotBeNull, "Cardinality.Interval")); Invariant(!cardinality.Interval.LowerUnbounded, AmValidationStrings.CardinalityLowerUnbounded); }
private void ReadXml(Cardinality cardinality) { Check.Require(cardinality != null, string.Format(CommonStrings.XMustNotBeNull, "cardinality")); reader.ReadStartElement(); reader.MoveToContent(); Check.Assert(reader.LocalName == "is_ordered", "local name must be 'is_ordered' rather than " + reader.LocalName); cardinality.IsOrdered = reader.ReadElementContentAsBoolean("is_ordered", OpenEhrNamespace); reader.MoveToContent(); Check.Assert(reader.LocalName == "is_unique", "local name must be 'is_unique' rather than " + reader.LocalName); cardinality.IsUnique = reader.ReadElementContentAsBoolean("is_unique", OpenEhrNamespace); reader.MoveToContent(); if (reader.LocalName != "interval") { throw new InvalidXmlException("interval", reader.LocalName); } cardinality.Interval = new Interval<int>(); this.ReadXml(cardinality.Interval); DesignByContract.Check.Assert(reader.NodeType == System.Xml.XmlNodeType.EndElement, "Expected endElement of cardinality"); reader.ReadEndElement(); reader.MoveToContent(); }
private void WriteXml(Cardinality cardinality) { Check.Require(cardinality != null, string.Format(CommonStrings.XMustNotBeNull, "cardinality")); Check.Require(cardinality.Interval != null, string.Format(CommonStrings.XMustNotBeNull, "cardinality.Interval")); writer.WriteElementString(UseOpenEhrPrefix(writer), "is_ordered", OpenEhrNamespace, cardinality.IsOrdered.ToString().ToLower()); writer.WriteElementString(UseOpenEhrPrefix(writer), "is_unique", OpenEhrNamespace, cardinality.IsUnique.ToString().ToLower()); writer.WriteStartElement(UseOpenEhrPrefix(writer), "interval", OpenEhrNamespace); this.WriteXml(cardinality.Interval); writer.WriteEndElement(); }
public void WriteCardinality(XmlWriter writer, Cardinality cardinality) { this.writer = writer; WriteXml(cardinality); }
public void ReadCardinality(XmlReader reader, Cardinality cardinality) { this.reader = reader; ReadXml(cardinality); }