/// <summary>
        /// Create a person name from the specified name set
        /// </summary>
        public ON CreateON(MARC.HI.EHRS.SVC.Core.DataTypes.NameSet nameSet)
        {
            EntityNameUse enUse = EntityNameUse.Legal;

            if (nameSet == null)
            {
                return(null);
            }

            try
            {
                enUse = (EntityNameUse)Enum.Parse(typeof(EntityNameUse), nameSet.Use.ToString());
            }
            catch
            {
                throw;
            }

            ON retVal = new ON();

            if (enUse != EntityNameUse.Search)
            {
                retVal.Use = new SET <CS <EntityNameUse> >(enUse);
            }

            // Parts
            foreach (var part in nameSet.Parts)
            {
                retVal.Part.Add(new ENXP(part.Value));
            }

            return(retVal);
        }
Example #2
0
        /// <summary>
        /// Creates an EN instance from a family and given name
        /// </summary>
        public static PN FromFamilyGiven(EntityNameUse use, String family, params String[] given)
        {
            var retVal = PN.CreatePN(use, new ENXP(family, EntityNamePartType.Family));

            foreach (var giv in given)
            {
                retVal.Part.Add(new ENXP(giv, EntityNamePartType.Given));
            }
            return(retVal);
        }
        /// <summary>
        /// Create a person name from the specified name set
        /// </summary>
        public PN CreatePN(MARC.HI.EHRS.SVC.Core.DataTypes.NameSet nameSet)
        {
            EntityNameUse enUse = EntityNameUse.Legal;

            try
            {
                enUse = (EntityNameUse)Enum.Parse(typeof(EntityNameUse), nameSet.Use.ToString());
            }
            catch
            {
                throw;
            }

            PN retVal = new PN();

            if (enUse != EntityNameUse.Search)
            {
                retVal.Use = new SET <CS <EntityNameUse> >(enUse);
            }

            // Parts
            foreach (var part in nameSet.Parts)
            {
                switch (part.Type)
                {
                case NamePart.NamePartType.Family:
                    retVal.Part.Add(new ENXP(part.Value, EntityNamePartType.Family));
                    break;

                case NamePart.NamePartType.Delimeter:
                    retVal.Part.Add(new ENXP(part.Value, EntityNamePartType.Delimiter));
                    break;

                case NamePart.NamePartType.Given:
                    retVal.Part.Add(new ENXP(part.Value, EntityNamePartType.Given));
                    break;

                case NamePart.NamePartType.Prefix:
                    retVal.Part.Add(new ENXP(part.Value, EntityNamePartType.Prefix));
                    break;

                case NamePart.NamePartType.Suffix:
                    retVal.Part.Add(new ENXP(part.Value, EntityNamePartType.Suffix));
                    break;

                default:
                    break;
                }
            }

            return(retVal);
        }
Example #4
0
        public static Extension CreatePNUseExtension(NameSet.NameSetUse nameSetUse)
        {
            EntityNameUse entityNameUse = EntityNameUse.Alphabetic;

            if (Enum.TryParse <EntityNameUse>(nameSetUse.ToString(), out entityNameUse))
            {
                return new Extension()
                       {
                           Url   = GetExtensionNameUrl("nameUse"),
                           Value = new Coding(
                               typeof(EntityNameUse).GetValueSetDefinition(),
                               MARC.Everest.Connectors.Util.ToWireFormat(entityNameUse)
                               )
                       }
            }
            ;
            return(null);
        }
Example #5
0
 /// <summary>
 /// Creates an organization name
 /// </summary>
 public static ON CreateON(EntityNameUse use, params ENXP[] parts)
 {
     return(new ON(use, parts));
 }
Example #6
0
 /// <summary>
 /// Create a new entity named instance using the specified values
 /// </summary>
 /// <param name="parts">The parts of the names</param>
 /// <param name="use">The uses of this name</param>
 public ON(EntityNameUse use, IEnumerable <ENXP> parts)
     : base(use, parts)
 {
 }
Example #7
0
 /// <summary>
 /// Create a new instance of a simple PN
 /// </summary>
 public PN(EntityNameUse use, string value) : this(use, new ENXP[] { new ENXP(value) })
 {
 }
Example #8
0
 /// <summary>
 /// Adds a name use to this name.
 /// </summary>
 ///
 /// <param name="use">the name use to add</param>
 public void AddUse(EntityNameUse use)
 {
     ILOG.J2CsMapping.Collections.Generics.Collections.Add(this.uses, use);
 }
Example #9
0
 /// <summary>
 /// Create a new entity named instance using the specified values
 /// </summary>
 /// <param name="parts">The parts of the names</param>
 /// <param name="use">The uses of this name</param>
 public EN(EntityNameUse use, IEnumerable <ENXP> parts) : this()
 {
     Part = new List <ENXP>(parts); this.Use = new SET <CS <EntityNameUse> >(use);
 }