001package org.hl7.fhir.r4.model;
002
003/*-
004 * #%L
005 * org.hl7.fhir.r4
006 * %%
007 * Copyright (C) 2014 - 2019 Health Level 7
008 * %%
009 * Licensed under the Apache License, Version 2.0 (the "License");
010 * you may not use this file except in compliance with the License.
011 * You may obtain a copy of the License at
012 * 
013 *      http://www.apache.org/licenses/LICENSE-2.0
014 * 
015 * Unless required by applicable law or agreed to in writing, software
016 * distributed under the License is distributed on an "AS IS" BASIS,
017 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
018 * See the License for the specific language governing permissions and
019 * limitations under the License.
020 * #L%
021 */
022
023
024/*
025  Copyright (c) 2011+, HL7, Inc.
026  All rights reserved.
027  
028  Redistribution and use in source and binary forms, with or without modification, 
029  are permitted provided that the following conditions are met:
030  
031   * Redistributions of source code must retain the above copyright notice, this 
032     list of conditions and the following disclaimer.
033   * Redistributions in binary form must reproduce the above copyright notice, 
034     this list of conditions and the following disclaimer in the documentation 
035     and/or other materials provided with the distribution.
036   * Neither the name of HL7 nor the names of its contributors may be used to 
037     endorse or promote products derived from this software without specific 
038     prior written permission.
039  
040  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
041  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
042  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
043  IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
044  INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 
045  NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 
046  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 
047  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
048  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
049  POSSIBILITY OF SUCH DAMAGE.
050  
051*/
052
053// Generated on Thu, Dec 13, 2018 14:07+1100 for FHIR v4.0.0
054
055import org.hl7.fhir.exceptions.FHIRException;
056
057public class ResourceFactory extends Factory {
058
059    public static Resource createResource(String name) throws FHIRException {
060        if ("Appointment".equals(name))
061            return new Appointment();
062        if ("Account".equals(name))
063            return new Account();
064        if ("Invoice".equals(name))
065            return new Invoice();
066        if ("CatalogEntry".equals(name))
067            return new CatalogEntry();
068        if ("EventDefinition".equals(name))
069            return new EventDefinition();
070        if ("DocumentManifest".equals(name))
071            return new DocumentManifest();
072        if ("MessageDefinition".equals(name))
073            return new MessageDefinition();
074        if ("Goal".equals(name))
075            return new Goal();
076        if ("MedicinalProductPackaged".equals(name))
077            return new MedicinalProductPackaged();
078        if ("Endpoint".equals(name))
079            return new Endpoint();
080        if ("EnrollmentRequest".equals(name))
081            return new EnrollmentRequest();
082        if ("Consent".equals(name))
083            return new Consent();
084        if ("CapabilityStatement".equals(name))
085            return new CapabilityStatement();
086        if ("Medication".equals(name))
087            return new Medication();
088        if ("Measure".equals(name))
089            return new Measure();
090        if ("ResearchSubject".equals(name))
091            return new ResearchSubject();
092        if ("Subscription".equals(name))
093            return new Subscription();
094        if ("DocumentReference".equals(name))
095            return new DocumentReference();
096        if ("GraphDefinition".equals(name))
097            return new GraphDefinition();
098        if ("Parameters".equals(name))
099            return new Parameters();
100        if ("CoverageEligibilityResponse".equals(name))
101            return new CoverageEligibilityResponse();
102        if ("MeasureReport".equals(name))
103            return new MeasureReport();
104        if ("PractitionerRole".equals(name))
105            return new PractitionerRole();
106        if ("SubstanceReferenceInformation".equals(name))
107            return new SubstanceReferenceInformation();
108        if ("ServiceRequest".equals(name))
109            return new ServiceRequest();
110        if ("RelatedPerson".equals(name))
111            return new RelatedPerson();
112        if ("SupplyRequest".equals(name))
113            return new SupplyRequest();
114        if ("Practitioner".equals(name))
115            return new Practitioner();
116        if ("VerificationResult".equals(name))
117            return new VerificationResult();
118        if ("SubstanceProtein".equals(name))
119            return new SubstanceProtein();
120        if ("BodyStructure".equals(name))
121            return new BodyStructure();
122        if ("Slot".equals(name))
123            return new Slot();
124        if ("Person".equals(name))
125            return new Person();
126        if ("Contract".equals(name))
127            return new Contract();
128        if ("RiskAssessment".equals(name))
129            return new RiskAssessment();
130        if ("Group".equals(name))
131            return new Group();
132        if ("PaymentNotice".equals(name))
133            return new PaymentNotice();
134        if ("ResearchDefinition".equals(name))
135            return new ResearchDefinition();
136        if ("MedicinalProductManufactured".equals(name))
137            return new MedicinalProductManufactured();
138        if ("Organization".equals(name))
139            return new Organization();
140        if ("CareTeam".equals(name))
141            return new CareTeam();
142        if ("ImplementationGuide".equals(name))
143            return new ImplementationGuide();
144        if ("ImagingStudy".equals(name))
145            return new ImagingStudy();
146        if ("FamilyMemberHistory".equals(name))
147            return new FamilyMemberHistory();
148        if ("ChargeItem".equals(name))
149            return new ChargeItem();
150        if ("ResearchElementDefinition".equals(name))
151            return new ResearchElementDefinition();
152        if ("ObservationDefinition".equals(name))
153            return new ObservationDefinition();
154        if ("Encounter".equals(name))
155            return new Encounter();
156        if ("Substance".equals(name))
157            return new Substance();
158        if ("SubstanceSpecification".equals(name))
159            return new SubstanceSpecification();
160        if ("SearchParameter".equals(name))
161            return new SearchParameter();
162        if ("Communication".equals(name))
163            return new Communication();
164        if ("ActivityDefinition".equals(name))
165            return new ActivityDefinition();
166        if ("InsurancePlan".equals(name))
167            return new InsurancePlan();
168        if ("Linkage".equals(name))
169            return new Linkage();
170        if ("SubstanceSourceMaterial".equals(name))
171            return new SubstanceSourceMaterial();
172        if ("ImmunizationEvaluation".equals(name))
173            return new ImmunizationEvaluation();
174        if ("DeviceUseStatement".equals(name))
175            return new DeviceUseStatement();
176        if ("RequestGroup".equals(name))
177            return new RequestGroup();
178        if ("DeviceRequest".equals(name))
179            return new DeviceRequest();
180        if ("MessageHeader".equals(name))
181            return new MessageHeader();
182        if ("ImmunizationRecommendation".equals(name))
183            return new ImmunizationRecommendation();
184        if ("Provenance".equals(name))
185            return new Provenance();
186        if ("Task".equals(name))
187            return new Task();
188        if ("Questionnaire".equals(name))
189            return new Questionnaire();
190        if ("ExplanationOfBenefit".equals(name))
191            return new ExplanationOfBenefit();
192        if ("MedicinalProductPharmaceutical".equals(name))
193            return new MedicinalProductPharmaceutical();
194        if ("ResearchStudy".equals(name))
195            return new ResearchStudy();
196        if ("Specimen".equals(name))
197            return new Specimen();
198        if ("AllergyIntolerance".equals(name))
199            return new AllergyIntolerance();
200        if ("CarePlan".equals(name))
201            return new CarePlan();
202        if ("StructureDefinition".equals(name))
203            return new StructureDefinition();
204        if ("EpisodeOfCare".equals(name))
205            return new EpisodeOfCare();
206        if ("ChargeItemDefinition".equals(name))
207            return new ChargeItemDefinition();
208        if ("OperationOutcome".equals(name))
209            return new OperationOutcome();
210        if ("Procedure".equals(name))
211            return new Procedure();
212        if ("List".equals(name))
213            return new ListResource();
214        if ("ConceptMap".equals(name))
215            return new ConceptMap();
216        if ("ValueSet".equals(name))
217            return new ValueSet();
218        if ("OperationDefinition".equals(name))
219            return new OperationDefinition();
220        if ("Immunization".equals(name))
221            return new Immunization();
222        if ("MedicationRequest".equals(name))
223            return new MedicationRequest();
224        if ("EffectEvidenceSynthesis".equals(name))
225            return new EffectEvidenceSynthesis();
226        if ("BiologicallyDerivedProduct".equals(name))
227            return new BiologicallyDerivedProduct();
228        if ("Device".equals(name))
229            return new Device();
230        if ("VisionPrescription".equals(name))
231            return new VisionPrescription();
232        if ("Media".equals(name))
233            return new Media();
234        if ("MedicinalProductContraindication".equals(name))
235            return new MedicinalProductContraindication();
236        if ("MolecularSequence".equals(name))
237            return new MolecularSequence();
238        if ("EvidenceVariable".equals(name))
239            return new EvidenceVariable();
240        if ("MedicinalProduct".equals(name))
241            return new MedicinalProduct();
242        if ("DeviceMetric".equals(name))
243            return new DeviceMetric();
244        if ("Flag".equals(name))
245            return new Flag();
246        if ("CodeSystem".equals(name))
247            return new CodeSystem();
248        if ("SubstanceNucleicAcid".equals(name))
249            return new SubstanceNucleicAcid();
250        if ("RiskEvidenceSynthesis".equals(name))
251            return new RiskEvidenceSynthesis();
252        if ("AppointmentResponse".equals(name))
253            return new AppointmentResponse();
254        if ("StructureMap".equals(name))
255            return new StructureMap();
256        if ("AdverseEvent".equals(name))
257            return new AdverseEvent();
258        if ("GuidanceResponse".equals(name))
259            return new GuidanceResponse();
260        if ("Observation".equals(name))
261            return new Observation();
262        if ("MedicationAdministration".equals(name))
263            return new MedicationAdministration();
264        if ("EnrollmentResponse".equals(name))
265            return new EnrollmentResponse();
266        if ("Binary".equals(name))
267            return new Binary();
268        if ("Library".equals(name))
269            return new Library();
270        if ("MedicinalProductInteraction".equals(name))
271            return new MedicinalProductInteraction();
272        if ("MedicationStatement".equals(name))
273            return new MedicationStatement();
274        if ("CommunicationRequest".equals(name))
275            return new CommunicationRequest();
276        if ("TestScript".equals(name))
277            return new TestScript();
278        if ("Basic".equals(name))
279            return new Basic();
280        if ("SubstancePolymer".equals(name))
281            return new SubstancePolymer();
282        if ("TestReport".equals(name))
283            return new TestReport();
284        if ("ClaimResponse".equals(name))
285            return new ClaimResponse();
286        if ("MedicationDispense".equals(name))
287            return new MedicationDispense();
288        if ("DiagnosticReport".equals(name))
289            return new DiagnosticReport();
290        if ("OrganizationAffiliation".equals(name))
291            return new OrganizationAffiliation();
292        if ("HealthcareService".equals(name))
293            return new HealthcareService();
294        if ("MedicinalProductIndication".equals(name))
295            return new MedicinalProductIndication();
296        if ("NutritionOrder".equals(name))
297            return new NutritionOrder();
298        if ("TerminologyCapabilities".equals(name))
299            return new TerminologyCapabilities();
300        if ("Evidence".equals(name))
301            return new Evidence();
302        if ("AuditEvent".equals(name))
303            return new AuditEvent();
304        if ("PaymentReconciliation".equals(name))
305            return new PaymentReconciliation();
306        if ("Condition".equals(name))
307            return new Condition();
308        if ("SpecimenDefinition".equals(name))
309            return new SpecimenDefinition();
310        if ("Composition".equals(name))
311            return new Composition();
312        if ("DetectedIssue".equals(name))
313            return new DetectedIssue();
314        if ("Bundle".equals(name))
315            return new Bundle();
316        if ("CompartmentDefinition".equals(name))
317            return new CompartmentDefinition();
318        if ("MedicinalProductIngredient".equals(name))
319            return new MedicinalProductIngredient();
320        if ("MedicationKnowledge".equals(name))
321            return new MedicationKnowledge();
322        if ("Patient".equals(name))
323            return new Patient();
324        if ("Coverage".equals(name))
325            return new Coverage();
326        if ("QuestionnaireResponse".equals(name))
327            return new QuestionnaireResponse();
328        if ("CoverageEligibilityRequest".equals(name))
329            return new CoverageEligibilityRequest();
330        if ("NamingSystem".equals(name))
331            return new NamingSystem();
332        if ("MedicinalProductUndesirableEffect".equals(name))
333            return new MedicinalProductUndesirableEffect();
334        if ("ExampleScenario".equals(name))
335            return new ExampleScenario();
336        if ("Schedule".equals(name))
337            return new Schedule();
338        if ("SupplyDelivery".equals(name))
339            return new SupplyDelivery();
340        if ("ClinicalImpression".equals(name))
341            return new ClinicalImpression();
342        if ("DeviceDefinition".equals(name))
343            return new DeviceDefinition();
344        if ("PlanDefinition".equals(name))
345            return new PlanDefinition();
346        if ("MedicinalProductAuthorization".equals(name))
347            return new MedicinalProductAuthorization();
348        if ("Claim".equals(name))
349            return new Claim();
350        if ("Location".equals(name))
351            return new Location();
352        else
353            throw new FHIRException("Unknown Resource Name '"+name+"'");
354    }
355
356    public static Element createType(String name) throws FHIRException {
357        if ("date".equals(name))
358            return new DateType();
359        if ("Meta".equals(name))
360            return new Meta();
361        if ("MoneyQuantity".equals(name))
362            return new MoneyQuantity();
363        if ("Address".equals(name))
364            return new Address();
365        if ("Attachment".equals(name))
366            return new Attachment();
367        if ("integer".equals(name))
368            return new IntegerType();
369        if ("Count".equals(name))
370            return new Count();
371        if ("DataRequirement".equals(name))
372            return new DataRequirement();
373        if ("Dosage".equals(name))
374            return new Dosage();
375        if ("uuid".equals(name))
376            return new UuidType();
377        if ("Identifier".equals(name))
378            return new Identifier();
379        if ("SubstanceAmount".equals(name))
380            return new SubstanceAmount();
381        if ("Narrative".equals(name))
382            return new Narrative();
383        if ("Coding".equals(name))
384            return new Coding();
385        if ("SampledData".equals(name))
386            return new SampledData();
387        if ("id".equals(name))
388            return new IdType();
389        if ("positiveInt".equals(name))
390            return new PositiveIntType();
391        if ("ElementDefinition".equals(name))
392            return new ElementDefinition();
393        if ("Distance".equals(name))
394            return new Distance();
395        if ("Period".equals(name))
396            return new Period();
397        if ("Duration".equals(name))
398            return new Duration();
399        if ("canonical".equals(name))
400            return new CanonicalType();
401        if ("Range".equals(name))
402            return new Range();
403        if ("RelatedArtifact".equals(name))
404            return new RelatedArtifact();
405        if ("ProductShelfLife".equals(name))
406            return new ProductShelfLife();
407        if ("base64Binary".equals(name))
408            return new Base64BinaryType();
409        if ("UsageContext".equals(name))
410            return new UsageContext();
411        if ("Timing".equals(name))
412            return new Timing();
413        if ("decimal".equals(name))
414            return new DecimalType();
415        if ("ProdCharacteristic".equals(name))
416            return new ProdCharacteristic();
417        if ("CodeableConcept".equals(name))
418            return new CodeableConcept();
419        if ("ParameterDefinition".equals(name))
420            return new ParameterDefinition();
421        if ("dateTime".equals(name))
422            return new DateTimeType();
423        if ("code".equals(name))
424            return new CodeType();
425        if ("string".equals(name))
426            return new StringType();
427        if ("Contributor".equals(name))
428            return new Contributor();
429        if ("oid".equals(name))
430            return new OidType();
431        if ("instant".equals(name))
432            return new InstantType();
433        if ("Money".equals(name))
434            return new Money();
435        if ("HumanName".equals(name))
436            return new HumanName();
437        if ("ContactPoint".equals(name))
438            return new ContactPoint();
439        if ("MarketingStatus".equals(name))
440            return new MarketingStatus();
441        if ("markdown".equals(name))
442            return new MarkdownType();
443        if ("Population".equals(name))
444            return new Population();
445        if ("Ratio".equals(name))
446            return new Ratio();
447        if ("Age".equals(name))
448            return new Age();
449        if ("Reference".equals(name))
450            return new Reference();
451        if ("TriggerDefinition".equals(name))
452            return new TriggerDefinition();
453        if ("SimpleQuantity".equals(name))
454            return new SimpleQuantity();
455        if ("Quantity".equals(name))
456            return new Quantity();
457        if ("uri".equals(name))
458            return new UriType();
459        if ("url".equals(name))
460            return new UrlType();
461        if ("Annotation".equals(name))
462            return new Annotation();
463        if ("Extension".equals(name))
464            return new Extension();
465        if ("ContactDetail".equals(name))
466            return new ContactDetail();
467        if ("boolean".equals(name))
468            return new BooleanType();
469        if ("Expression".equals(name))
470            return new Expression();
471        if ("Signature".equals(name))
472            return new Signature();
473        if ("unsignedInt".equals(name))
474            return new UnsignedIntType();
475        if ("time".equals(name))
476            return new TimeType();
477        else
478            throw new FHIRException("Unknown Type Name '"+name+"'");
479    }
480
481    public static Base createResourceOrType(String name) throws FHIRException {
482      switch (name.hashCode()) {
483        case 487334413: return new Account();
484        case 851278306: return new ActivityDefinition();
485        case 516961236: return new Address();
486        case -329624856: return new AdverseEvent();
487        case 65759: return new Age();
488        case 1721380104: return new AllergyIntolerance();
489        case 438421327: return new Annotation();
490        case 192873343: return new Appointment();
491        case 1733332192: return new AppointmentResponse();
492        case 29963587: return new Attachment();
493        case -632949857: return new AuditEvent();
494        case 63955982: return new Basic();
495        case 1989867553: return new Binary();
496        case -310041824: return new BiologicallyDerivedProduct();
497        case -202769967: return new BodyStructure();
498        case 2000952482: return new Bundle();
499        case -871422185: return new CapabilityStatement();
500        case 57208314: return new CarePlan();
501        case 57320750: return new CareTeam();
502        case -1007602695: return new CatalogEntry();
503        case -883723257: return new ChargeItem();
504        case -315725638: return new ChargeItemDefinition();
505        case 65189916: return new Claim();
506        case 1488475261: return new ClaimResponse();
507        case -1268501092: return new ClinicalImpression();
508        case 1076953756: return new CodeSystem();
509        case -1153521791: return new CodeableConcept();
510        case 2023747466: return new Coding();
511        case -236322890: return new Communication();
512        case -1874423303: return new CommunicationRequest();
513        case 1287805733: return new CompartmentDefinition();
514        case 828944778: return new Composition();
515        case 57185780: return new ConceptMap();
516        case 1142656251: return new Condition();
517        case -1678813190: return new Consent();
518        case 973193329: return new ContactDetail();
519        case 1428236656: return new ContactPoint();
520        case -502303438: return new Contract();
521        case -227407685: return new Contributor();
522        case 65298671: return new Count();
523        case -287122936: return new Coverage();
524        case -140860822: return new CoverageEligibilityRequest();
525        case -18784314: return new CoverageEligibilityResponse();
526        case -367870439: return new DataRequirement();
527        case 850563927: return new DetectedIssue();
528        case 2043677302: return new Device();
529        case 1083244649: return new DeviceDefinition();
530        case -949306426: return new DeviceMetric();
531        case 776138553: return new DeviceRequest();
532        case 491858238: return new DeviceUseStatement();
533        case -1122842661: return new DiagnosticReport();
534        case 353103893: return new Distance();
535        case 1922784394: return new DocumentManifest();
536        case -1202791344: return new DocumentReference();
537        case 2052815575: return new Dosage();
538        case -1927368268: return new Duration();
539        case 2012162380: return new EffectEvidenceSynthesis();
540        case -1605049009: return new ElementDefinition();
541        case -766867181: return new Encounter();
542        case 1805746613: return new Endpoint();
543        case -1377846581: return new EnrollmentRequest();
544        case 289362821: return new EnrollmentResponse();
545        case -1093178557: return new EpisodeOfCare();
546        case 1851868013: return new EventDefinition();
547        case 447611511: return new Evidence();
548        case -1162161645: return new EvidenceVariable();
549        case 1175230202: return new ExampleScenario();
550        case -1001676601: return new ExplanationOfBenefit();
551        case 198012600: return new Expression();
552        case 1391410207: return new Extension();
553        case 1260711798: return new FamilyMemberHistory();
554        case 2192268: return new Flag();
555        case 2224947: return new Goal();
556        case -180371167: return new GraphDefinition();
557        case 69076575: return new Group();
558        case 997117913: return new GuidanceResponse();
559        case 933423720: return new HealthcareService();
560        case 1592332600: return new HumanName();
561        case 375032009: return new Identifier();
562        case -650580623: return new ImagingStudy();
563        case -2004863454: return new Immunization();
564        case -1768794370: return new ImmunizationEvaluation();
565        case 1728372347: return new ImmunizationRecommendation();
566        case 1410262602: return new ImplementationGuide();
567        case -1503864573: return new InsurancePlan();
568        case -670115059: return new Invoice();
569        case 1830861979: return new Library();
570        case 1841735333: return new Linkage();
571        case 2368702: return new ListResource();
572        case 1965687765: return new Location();
573        case -926250600: return new MarketingStatus();
574        case -1691992770: return new Measure();
575        case 1681397778: return new MeasureReport();
576        case 74219460: return new Media();
577        case -302536977: return new Medication();
578        case -342579923: return new MedicationAdministration();
579        case -408244884: return new MedicationDispense();
580        case 1537687119: return new MedicationKnowledge();
581        case 1627523232: return new MedicationRequest();
582        case -2097348800: return new MedicationStatement();
583        case -1349298375: return new MedicinalProduct();
584        case -29557312: return new MedicinalProductAuthorization();
585        case -1375810986: return new MedicinalProductContraindication();
586        case -961008267: return new MedicinalProductIndication();
587        case -570248726: return new MedicinalProductIngredient();
588        case -844984039: return new MedicinalProductInteraction();
589        case 568246684: return new MedicinalProductManufactured();
590        case -500906185: return new MedicinalProductPackaged();
591        case -1034780964: return new MedicinalProductPharmaceutical();
592        case 1717675156: return new MedicinalProductUndesirableEffect();
593        case -2037697382: return new MessageDefinition();
594        case -1087398572: return new MessageHeader();
595        case 2394661: return new Meta();
596        case -1839726095: return new MolecularSequence();
597        case 74526880: return new Money();
598        case 977885515: return new MoneyQuantity();
599        case 369315063: return new NamingSystem();
600        case -540546990: return new Narrative();
601        case 1247831734: return new NutritionOrder();
602        case 1790214156: return new Observation();
603        case 673706623: return new ObservationDefinition();
604        case -2140710406: return new OperationDefinition();
605        case -526550005: return new OperationOutcome();
606        case 1343242579: return new Organization();
607        case 2069161885: return new OrganizationAffiliation();
608        case 671337916: return new ParameterDefinition();
609        case -1842766326: return new Parameters();
610        case 873235173: return new Patient();
611        case 2082457694: return new PaymentNotice();
612        case 28778089: return new PaymentReconciliation();
613        case -1907858975: return new Period();
614        case -1907849355: return new Person();
615        case 1401244028: return new PlanDefinition();
616        case -30093459: return new Population();
617        case 738893626: return new Practitioner();
618        case -621058352: return new PractitionerRole();
619        case 908763827: return new Procedure();
620        case 458000626: return new ProdCharacteristic();
621        case 1209602103: return new ProductShelfLife();
622        case 2093211201: return new Provenance();
623        case -1220360021: return new Quantity();
624        case -218088061: return new Questionnaire();
625        case 269058788: return new QuestionnaireResponse();
626        case 78727453: return new Range();
627        case 78733291: return new Ratio();
628        case 1078812459: return new Reference();
629        case -330210563: return new RelatedArtifact();
630        case 846088000: return new RelatedPerson();
631        case 1445374288: return new RequestGroup();
632        case 237996398: return new ResearchDefinition();
633        case 463703284: return new ResearchElementDefinition();
634        case 1312904398: return new ResearchStudy();
635        case -1008013583: return new ResearchSubject();
636        case -766422255: return new RiskAssessment();
637        case 1935791054: return new RiskEvidenceSynthesis();
638        case 1824308900: return new SampledData();
639        case -633276745: return new Schedule();
640        case -912457023: return new SearchParameter();
641        case -1944810950: return new ServiceRequest();
642        case -1217415016: return new Signature();
643        case -1097468803: return new SimpleQuantity();
644        case 2579998: return new Slot();
645        case -2068224216: return new Specimen();
646        case 863741595: return new SpecimenDefinition();
647        case 1133777670: return new StructureDefinition();
648        case 1958247177: return new StructureMap();
649        case 505523517: return new Subscription();
650        case -1760959152: return new Substance();
651        case 1549526472: return new SubstanceAmount();
652        case -300807236: return new SubstanceNucleicAcid();
653        case 1272939294: return new SubstancePolymer();
654        case 1361440787: return new SubstanceProtein();
655        case 159007313: return new SubstanceReferenceInformation();
656        case -222622766: return new SubstanceSourceMaterial();
657        case 1472900499: return new SubstanceSpecification();
658        case 383030819: return new SupplyDelivery();
659        case 665843328: return new SupplyRequest();
660        case 2599333: return new Task();
661        case -549565975: return new TerminologyCapabilities();
662        case -616289146: return new TestReport();
663        case -589453283: return new TestScript();
664        case -1789797270: return new Timing();
665        case 770498827: return new TriggerDefinition();
666        case 1071332590: return new UsageContext();
667        case -1345530543: return new ValueSet();
668        case 957089336: return new VerificationResult();
669        case -555387838: return new VisionPrescription();
670        case -1216012752: return new Base64BinaryType();
671        case 64711720: return new BooleanType();
672        case 828351732: return new CanonicalType();
673        case 3059181: return new CodeType();
674        case 3076014: return new DateType();
675        case 1792749467: return new DateTimeType();
676        case 1542263633: return new DecimalType();
677        case 3355: return new IdType();
678        case 1957570017: return new InstantType();
679        case 1958052158: return new IntegerType();
680        case 246938863: return new MarkdownType();
681        case 110026: return new OidType();
682        case -131262666: return new PositiveIntType();
683        case -891985903: return new StringType();
684        case 3560141: return new TimeType();
685        case 1145198778: return new UnsignedIntType();
686        case 116076: return new UriType();
687        case 116079: return new UrlType();
688        case 3601339: return new UuidType();
689        case 114035747: return new XhtmlType();
690      default:
691        throw new FHIRException("Unknown Resource or Type Name '"+name+"': " + name.hashCode());
692    }
693  }
694
695
696}
697