Esempio n. 1
0
        private void ProcessUnknownChildElements(ICollection <string> knownItems, XmlElement element, MessageVisitor visitor)
        {
            IList <XmlElement> children = NodeUtil.ToElementList(element);

            foreach (XmlElement child in children)
            {
                if (!NamespaceUtil.IsHl7Node(child))
                {
                }
                else
                {
                    // ignore it
                    string localOrTagName = NodeUtil.GetLocalOrTagName(child);
                    if (!knownItems.Contains(localOrTagName))
                    {
                        knownItems.Add(localOrTagName);
                        // this call will intentionally fail fast with an error (since relationship is null)
                        visitor.VisitNonStructuralAttribute(element, Arrays.AsList(child), null);
                    }
                }
            }
        }
Esempio n. 2
0
 private void ProcessRelationship(Interaction interaction, MessagePart messagePart, RelationshipBridge relationship, MessageVisitor
                                  visitor)
 {
     if (relationship.IsStructuralAttribute())
     {
         XmlAttribute attr = relationship.GetAttribute();
         visitor.VisitStructuralAttribute(relationship.GetBase(), attr, relationship.GetRelationship());
     }
     else
     {
         if (relationship.IsAssociation())
         {
             visitor.VisitAssociation(relationship.GetBase(), relationship.GetXmlName(), relationship.GetElements(), relationship.GetRelationship
                                          ());
             ProcessEachRelationshipValue(interaction, relationship, visitor);
         }
         else
         {
             visitor.VisitNonStructuralAttribute(relationship.GetBase(), relationship.GetElements(), relationship.GetRelationship());
         }
     }
 }