public RelatedPerson(XmlNode xmlNode)
 {
     XmlNode personReferenceNode = xmlNode.SelectSingleNode("personReference");
     
     if (personReferenceNode != null)
     {
         if (personReferenceNode.Attributes["href"] != null || personReferenceNode.Attributes["id"] != null) 
         {
             if (personReferenceNode.Attributes["id"] != null) 
             {
                 personReferenceIDRef_ = personReferenceNode.Attributes["id"].Value;
                 PersonReference ob = new PersonReference(personReferenceNode);
                 IDManager.SetID(personReferenceIDRef_, ob);
             }
             else if (personReferenceNode.Attributes["href"] != null)
             {
                 personReferenceIDRef_ = personReferenceNode.Attributes["href"].Value;
             }
             else
             {
                 personReference_ = new PersonReference(personReferenceNode);
             }
         }
         else
         {
             personReference_ = new PersonReference(personReferenceNode);
         }
     }
     
 
     XmlNode roleNode = xmlNode.SelectSingleNode("role");
     
     if (roleNode != null)
     {
         if (roleNode.Attributes["href"] != null || roleNode.Attributes["id"] != null) 
         {
             if (roleNode.Attributes["id"] != null) 
             {
                 roleIDRef_ = roleNode.Attributes["id"].Value;
                 PersonRole ob = new PersonRole(roleNode);
                 IDManager.SetID(roleIDRef_, ob);
             }
             else if (roleNode.Attributes["href"] != null)
             {
                 roleIDRef_ = roleNode.Attributes["href"].Value;
             }
             else
             {
                 role_ = new PersonRole(roleNode);
             }
         }
         else
         {
             role_ = new PersonRole(roleNode);
         }
     }
     
 
 }
        public RelatedPerson(XmlNode xmlNode)
        {
            XmlNodeList personReferenceNodeList = xmlNode.SelectNodes("personReference");

            if (personReferenceNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in personReferenceNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        personReferenceIDRef = item.Attributes["id"].Name;
                        PersonReference ob = PersonReference();
                        IDManager.SetID(personReferenceIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        personReferenceIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        personReference = new PersonReference(item);
                    }
                }
            }


            XmlNodeList roleNodeList = xmlNode.SelectNodes("role");

            if (roleNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in roleNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        roleIDRef = item.Attributes["id"].Name;
                        PersonRole ob = PersonRole();
                        IDManager.SetID(roleIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        roleIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        role = new PersonRole(item);
                    }
                }
            }
        }
 public RelatedPerson(XmlNode xmlNode)
 {
     XmlNodeList personReferenceNodeList = xmlNode.SelectNodes("personReference");
     if (personReferenceNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in personReferenceNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 personReferenceIDRef = item.Attributes["id"].Name;
                 PersonReference ob = PersonReference();
                 IDManager.SetID(personReferenceIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 personReferenceIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 personReference = new PersonReference(item);
             }
         }
     }
     
 
     XmlNodeList roleNodeList = xmlNode.SelectNodes("role");
     if (roleNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in roleNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 roleIDRef = item.Attributes["id"].Name;
                 PersonRole ob = PersonRole();
                 IDManager.SetID(roleIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 roleIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 role = new PersonRole(item);
             }
         }
     }
     
 
 }
        public RelatedPerson(XmlNode xmlNode)
        {
            XmlNode personReferenceNode = xmlNode.SelectSingleNode("personReference");

            if (personReferenceNode != null)
            {
                if (personReferenceNode.Attributes["href"] != null || personReferenceNode.Attributes["id"] != null)
                {
                    if (personReferenceNode.Attributes["id"] != null)
                    {
                        personReferenceIDRef_ = personReferenceNode.Attributes["id"].Value;
                        PersonReference ob = new PersonReference(personReferenceNode);
                        IDManager.SetID(personReferenceIDRef_, ob);
                    }
                    else if (personReferenceNode.Attributes["href"] != null)
                    {
                        personReferenceIDRef_ = personReferenceNode.Attributes["href"].Value;
                    }
                    else
                    {
                        personReference_ = new PersonReference(personReferenceNode);
                    }
                }
                else
                {
                    personReference_ = new PersonReference(personReferenceNode);
                }
            }


            XmlNode roleNode = xmlNode.SelectSingleNode("role");

            if (roleNode != null)
            {
                if (roleNode.Attributes["href"] != null || roleNode.Attributes["id"] != null)
                {
                    if (roleNode.Attributes["id"] != null)
                    {
                        roleIDRef_ = roleNode.Attributes["id"].Value;
                        PersonRole ob = new PersonRole(roleNode);
                        IDManager.SetID(roleIDRef_, ob);
                    }
                    else if (roleNode.Attributes["href"] != null)
                    {
                        roleIDRef_ = roleNode.Attributes["href"].Value;
                    }
                    else
                    {
                        role_ = new PersonRole(roleNode);
                    }
                }
                else
                {
                    role_ = new PersonRole(roleNode);
                }
            }
        }