예제 #1
0
        void ReadXml(XmlReader reader, ExtractEntityIdentifier entityIdentifier)
        {
            reader.ReadStartElement();
            reader.MoveToContent();

            //<xs:element name="entity_id" type="HIER_OBJECT_ID" minOccurs="0"/>
            if (reader.Name == "entity_id")
            {
                entityIdentifier.EntityId = new HierObjectId();
                entityIdentifier.EntityId.ReadXml(reader);
            }

            //<xs:element name="subject" type="PARTY_IDENTIFIED" minOccurs="0"/>
            if (reader.Name == "subject")
            {
                if (reader.HasAttributes)
                {
                    throw new NotSupportedException("PARTY_RELATED subject not supporteed");
                }

                entityIdentifier.Subject = new PartyIdentified();
                entityIdentifier.Subject.ReadXml(reader);
            }

            reader.ReadEndElement();
            reader.MoveToContent();
        }
예제 #2
0
        void WriteXml(XmlWriter writer, ExtractEntityIdentifier entityIdentifier)
        {
            //<xs:element name="entity_id" type="HIER_OBJECT_ID" minOccurs="0"/>
            if (entityIdentifier.EntityId != null)
            {
                writer.WriteStartElement("entity_id", RmXmlSerializer.OpenEhrNamespace);
                ((System.Xml.Serialization.IXmlSerializable)entityIdentifier.EntityId).WriteXml(writer);
                writer.WriteEndElement();
            }

            //<xs:element name="subject" type="PARTY_IDENTIFIED" minOccurs="0"/>
            if (entityIdentifier.Subject != null)
            {
                writer.WriteStartElement("subject", RmXmlSerializer.OpenEhrNamespace);
                ((System.Xml.Serialization.IXmlSerializable)entityIdentifier.Subject).WriteXml(writer);
                writer.WriteEndElement();
            }
        }