001package org.hl7.fhir.r4.model; 002 003/* 004 Copyright (c) 2011+, HL7, Inc. 005 All rights reserved. 006 007 Redistribution and use in source and binary forms, with or without modification, 008 are permitted provided that the following conditions are met: 009 010 * Redistributions of source code must retain the above copyright notice, this 011 list of conditions and the following disclaimer. 012 * Redistributions in binary form must reproduce the above copyright notice, 013 this list of conditions and the following disclaimer in the documentation 014 and/or other materials provided with the distribution. 015 * Neither the name of HL7 nor the names of its contributors may be used to 016 endorse or promote products derived from this software without specific 017 prior written permission. 018 019 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 020 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 021 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 022 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 023 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 024 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 025 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 026 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 027 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 028 POSSIBILITY OF SUCH DAMAGE. 029 030*/ 031 032// Generated on Sun, May 6, 2018 17:51-0400 for FHIR v3.4.0 033 034import java.util.*; 035 036import org.hl7.fhir.utilities.Utilities; 037import org.hl7.fhir.r4.model.Enumerations.*; 038import ca.uhn.fhir.model.api.annotation.ResourceDef; 039import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 040import ca.uhn.fhir.model.api.annotation.Child; 041import ca.uhn.fhir.model.api.annotation.ChildOrder; 042import ca.uhn.fhir.model.api.annotation.Description; 043import ca.uhn.fhir.model.api.annotation.Block; 044import org.hl7.fhir.instance.model.api.*; 045import org.hl7.fhir.exceptions.FHIRException; 046/** 047 * A curated namespace that issues unique symbols within that namespace for the identification of concepts, people, devices, etc. Represents a "System" used within the Identifier and Coding data types. 048 */ 049@ResourceDef(name="NamingSystem", profile="http://hl7.org/fhir/Profile/NamingSystem") 050@ChildOrder(names={"name", "status", "kind", "date", "publisher", "contact", "responsible", "type", "description", "useContext", "jurisdiction", "usage", "uniqueId"}) 051public class NamingSystem extends MetadataResource { 052 053 public enum NamingSystemType { 054 /** 055 * The naming system is used to define concepts and symbols to represent those concepts; e.g. UCUM, LOINC, NDC code, local lab codes, etc. 056 */ 057 CODESYSTEM, 058 /** 059 * The naming system is used to manage identifiers (e.g. license numbers, order numbers, etc.). 060 */ 061 IDENTIFIER, 062 /** 063 * The naming system is used as the root for other identifiers and naming systems. 064 */ 065 ROOT, 066 /** 067 * added to help the parsers with the generic types 068 */ 069 NULL; 070 public static NamingSystemType fromCode(String codeString) throws FHIRException { 071 if (codeString == null || "".equals(codeString)) 072 return null; 073 if ("codesystem".equals(codeString)) 074 return CODESYSTEM; 075 if ("identifier".equals(codeString)) 076 return IDENTIFIER; 077 if ("root".equals(codeString)) 078 return ROOT; 079 if (Configuration.isAcceptInvalidEnums()) 080 return null; 081 else 082 throw new FHIRException("Unknown NamingSystemType code '"+codeString+"'"); 083 } 084 public String toCode() { 085 switch (this) { 086 case CODESYSTEM: return "codesystem"; 087 case IDENTIFIER: return "identifier"; 088 case ROOT: return "root"; 089 default: return "?"; 090 } 091 } 092 public String getSystem() { 093 switch (this) { 094 case CODESYSTEM: return "http://hl7.org/fhir/namingsystem-type"; 095 case IDENTIFIER: return "http://hl7.org/fhir/namingsystem-type"; 096 case ROOT: return "http://hl7.org/fhir/namingsystem-type"; 097 default: return "?"; 098 } 099 } 100 public String getDefinition() { 101 switch (this) { 102 case CODESYSTEM: return "The naming system is used to define concepts and symbols to represent those concepts; e.g. UCUM, LOINC, NDC code, local lab codes, etc."; 103 case IDENTIFIER: return "The naming system is used to manage identifiers (e.g. license numbers, order numbers, etc.)."; 104 case ROOT: return "The naming system is used as the root for other identifiers and naming systems."; 105 default: return "?"; 106 } 107 } 108 public String getDisplay() { 109 switch (this) { 110 case CODESYSTEM: return "Code System"; 111 case IDENTIFIER: return "Identifier"; 112 case ROOT: return "Root"; 113 default: return "?"; 114 } 115 } 116 } 117 118 public static class NamingSystemTypeEnumFactory implements EnumFactory<NamingSystemType> { 119 public NamingSystemType fromCode(String codeString) throws IllegalArgumentException { 120 if (codeString == null || "".equals(codeString)) 121 if (codeString == null || "".equals(codeString)) 122 return null; 123 if ("codesystem".equals(codeString)) 124 return NamingSystemType.CODESYSTEM; 125 if ("identifier".equals(codeString)) 126 return NamingSystemType.IDENTIFIER; 127 if ("root".equals(codeString)) 128 return NamingSystemType.ROOT; 129 throw new IllegalArgumentException("Unknown NamingSystemType code '"+codeString+"'"); 130 } 131 public Enumeration<NamingSystemType> fromType(Base code) throws FHIRException { 132 if (code == null) 133 return null; 134 if (code.isEmpty()) 135 return new Enumeration<NamingSystemType>(this); 136 String codeString = ((PrimitiveType) code).asStringValue(); 137 if (codeString == null || "".equals(codeString)) 138 return null; 139 if ("codesystem".equals(codeString)) 140 return new Enumeration<NamingSystemType>(this, NamingSystemType.CODESYSTEM); 141 if ("identifier".equals(codeString)) 142 return new Enumeration<NamingSystemType>(this, NamingSystemType.IDENTIFIER); 143 if ("root".equals(codeString)) 144 return new Enumeration<NamingSystemType>(this, NamingSystemType.ROOT); 145 throw new FHIRException("Unknown NamingSystemType code '"+codeString+"'"); 146 } 147 public String toCode(NamingSystemType code) { 148 if (code == NamingSystemType.CODESYSTEM) 149 return "codesystem"; 150 if (code == NamingSystemType.IDENTIFIER) 151 return "identifier"; 152 if (code == NamingSystemType.ROOT) 153 return "root"; 154 return "?"; 155 } 156 public String toSystem(NamingSystemType code) { 157 return code.getSystem(); 158 } 159 } 160 161 public enum NamingSystemIdentifierType { 162 /** 163 * An ISO object identifier; e.g. 1.2.3.4.5. 164 */ 165 OID, 166 /** 167 * A universally unique identifier of the form a5afddf4-e880-459b-876e-e4591b0acc11. 168 */ 169 UUID, 170 /** 171 * A uniform resource identifier (ideally a URL - uniform resource locator); e.g. http://unitsofmeasure.org. 172 */ 173 URI, 174 /** 175 * Some other type of unique identifier; e.g. HL7-assigned reserved string such as LN for LOINC. 176 */ 177 OTHER, 178 /** 179 * added to help the parsers with the generic types 180 */ 181 NULL; 182 public static NamingSystemIdentifierType fromCode(String codeString) throws FHIRException { 183 if (codeString == null || "".equals(codeString)) 184 return null; 185 if ("oid".equals(codeString)) 186 return OID; 187 if ("uuid".equals(codeString)) 188 return UUID; 189 if ("uri".equals(codeString)) 190 return URI; 191 if ("other".equals(codeString)) 192 return OTHER; 193 if (Configuration.isAcceptInvalidEnums()) 194 return null; 195 else 196 throw new FHIRException("Unknown NamingSystemIdentifierType code '"+codeString+"'"); 197 } 198 public String toCode() { 199 switch (this) { 200 case OID: return "oid"; 201 case UUID: return "uuid"; 202 case URI: return "uri"; 203 case OTHER: return "other"; 204 default: return "?"; 205 } 206 } 207 public String getSystem() { 208 switch (this) { 209 case OID: return "http://hl7.org/fhir/namingsystem-identifier-type"; 210 case UUID: return "http://hl7.org/fhir/namingsystem-identifier-type"; 211 case URI: return "http://hl7.org/fhir/namingsystem-identifier-type"; 212 case OTHER: return "http://hl7.org/fhir/namingsystem-identifier-type"; 213 default: return "?"; 214 } 215 } 216 public String getDefinition() { 217 switch (this) { 218 case OID: return "An ISO object identifier; e.g. 1.2.3.4.5."; 219 case UUID: return "A universally unique identifier of the form a5afddf4-e880-459b-876e-e4591b0acc11."; 220 case URI: return "A uniform resource identifier (ideally a URL - uniform resource locator); e.g. http://unitsofmeasure.org."; 221 case OTHER: return "Some other type of unique identifier; e.g. HL7-assigned reserved string such as LN for LOINC."; 222 default: return "?"; 223 } 224 } 225 public String getDisplay() { 226 switch (this) { 227 case OID: return "OID"; 228 case UUID: return "UUID"; 229 case URI: return "URI"; 230 case OTHER: return "Other"; 231 default: return "?"; 232 } 233 } 234 } 235 236 public static class NamingSystemIdentifierTypeEnumFactory implements EnumFactory<NamingSystemIdentifierType> { 237 public NamingSystemIdentifierType fromCode(String codeString) throws IllegalArgumentException { 238 if (codeString == null || "".equals(codeString)) 239 if (codeString == null || "".equals(codeString)) 240 return null; 241 if ("oid".equals(codeString)) 242 return NamingSystemIdentifierType.OID; 243 if ("uuid".equals(codeString)) 244 return NamingSystemIdentifierType.UUID; 245 if ("uri".equals(codeString)) 246 return NamingSystemIdentifierType.URI; 247 if ("other".equals(codeString)) 248 return NamingSystemIdentifierType.OTHER; 249 throw new IllegalArgumentException("Unknown NamingSystemIdentifierType code '"+codeString+"'"); 250 } 251 public Enumeration<NamingSystemIdentifierType> fromType(Base code) throws FHIRException { 252 if (code == null) 253 return null; 254 if (code.isEmpty()) 255 return new Enumeration<NamingSystemIdentifierType>(this); 256 String codeString = ((PrimitiveType) code).asStringValue(); 257 if (codeString == null || "".equals(codeString)) 258 return null; 259 if ("oid".equals(codeString)) 260 return new Enumeration<NamingSystemIdentifierType>(this, NamingSystemIdentifierType.OID); 261 if ("uuid".equals(codeString)) 262 return new Enumeration<NamingSystemIdentifierType>(this, NamingSystemIdentifierType.UUID); 263 if ("uri".equals(codeString)) 264 return new Enumeration<NamingSystemIdentifierType>(this, NamingSystemIdentifierType.URI); 265 if ("other".equals(codeString)) 266 return new Enumeration<NamingSystemIdentifierType>(this, NamingSystemIdentifierType.OTHER); 267 throw new FHIRException("Unknown NamingSystemIdentifierType code '"+codeString+"'"); 268 } 269 public String toCode(NamingSystemIdentifierType code) { 270 if (code == NamingSystemIdentifierType.OID) 271 return "oid"; 272 if (code == NamingSystemIdentifierType.UUID) 273 return "uuid"; 274 if (code == NamingSystemIdentifierType.URI) 275 return "uri"; 276 if (code == NamingSystemIdentifierType.OTHER) 277 return "other"; 278 return "?"; 279 } 280 public String toSystem(NamingSystemIdentifierType code) { 281 return code.getSystem(); 282 } 283 } 284 285 @Block() 286 public static class NamingSystemUniqueIdComponent extends BackboneElement implements IBaseBackboneElement { 287 /** 288 * Identifies the unique identifier scheme used for this particular identifier. 289 */ 290 @Child(name = "type", type = {CodeType.class}, order=1, min=1, max=1, modifier=false, summary=true) 291 @Description(shortDefinition="oid | uuid | uri | other", formalDefinition="Identifies the unique identifier scheme used for this particular identifier." ) 292 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/namingsystem-identifier-type") 293 protected Enumeration<NamingSystemIdentifierType> type; 294 295 /** 296 * The string that should be sent over the wire to identify the code system or identifier system. 297 */ 298 @Child(name = "value", type = {StringType.class}, order=2, min=1, max=1, modifier=false, summary=true) 299 @Description(shortDefinition="The unique identifier", formalDefinition="The string that should be sent over the wire to identify the code system or identifier system." ) 300 protected StringType value; 301 302 /** 303 * Indicates whether this identifier is the "preferred" identifier of this type. 304 */ 305 @Child(name = "preferred", type = {BooleanType.class}, order=3, min=0, max=1, modifier=false, summary=false) 306 @Description(shortDefinition="Is this the id that should be used for this type", formalDefinition="Indicates whether this identifier is the \"preferred\" identifier of this type." ) 307 protected BooleanType preferred; 308 309 /** 310 * Notes about the past or intended usage of this identifier. 311 */ 312 @Child(name = "comment", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=false) 313 @Description(shortDefinition="Notes about identifier usage", formalDefinition="Notes about the past or intended usage of this identifier." ) 314 protected StringType comment; 315 316 /** 317 * Identifies the period of time over which this identifier is considered appropriate to refer to the naming system. Outside of this window, the identifier might be non-deterministic. 318 */ 319 @Child(name = "period", type = {Period.class}, order=5, min=0, max=1, modifier=false, summary=false) 320 @Description(shortDefinition="When is identifier valid?", formalDefinition="Identifies the period of time over which this identifier is considered appropriate to refer to the naming system. Outside of this window, the identifier might be non-deterministic." ) 321 protected Period period; 322 323 private static final long serialVersionUID = -1458889328L; 324 325 /** 326 * Constructor 327 */ 328 public NamingSystemUniqueIdComponent() { 329 super(); 330 } 331 332 /** 333 * Constructor 334 */ 335 public NamingSystemUniqueIdComponent(Enumeration<NamingSystemIdentifierType> type, StringType value) { 336 super(); 337 this.type = type; 338 this.value = value; 339 } 340 341 /** 342 * @return {@link #type} (Identifies the unique identifier scheme used for this particular identifier.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value 343 */ 344 public Enumeration<NamingSystemIdentifierType> getTypeElement() { 345 if (this.type == null) 346 if (Configuration.errorOnAutoCreate()) 347 throw new Error("Attempt to auto-create NamingSystemUniqueIdComponent.type"); 348 else if (Configuration.doAutoCreate()) 349 this.type = new Enumeration<NamingSystemIdentifierType>(new NamingSystemIdentifierTypeEnumFactory()); // bb 350 return this.type; 351 } 352 353 public boolean hasTypeElement() { 354 return this.type != null && !this.type.isEmpty(); 355 } 356 357 public boolean hasType() { 358 return this.type != null && !this.type.isEmpty(); 359 } 360 361 /** 362 * @param value {@link #type} (Identifies the unique identifier scheme used for this particular identifier.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value 363 */ 364 public NamingSystemUniqueIdComponent setTypeElement(Enumeration<NamingSystemIdentifierType> value) { 365 this.type = value; 366 return this; 367 } 368 369 /** 370 * @return Identifies the unique identifier scheme used for this particular identifier. 371 */ 372 public NamingSystemIdentifierType getType() { 373 return this.type == null ? null : this.type.getValue(); 374 } 375 376 /** 377 * @param value Identifies the unique identifier scheme used for this particular identifier. 378 */ 379 public NamingSystemUniqueIdComponent setType(NamingSystemIdentifierType value) { 380 if (this.type == null) 381 this.type = new Enumeration<NamingSystemIdentifierType>(new NamingSystemIdentifierTypeEnumFactory()); 382 this.type.setValue(value); 383 return this; 384 } 385 386 /** 387 * @return {@link #value} (The string that should be sent over the wire to identify the code system or identifier system.). This is the underlying object with id, value and extensions. The accessor "getValue" gives direct access to the value 388 */ 389 public StringType getValueElement() { 390 if (this.value == null) 391 if (Configuration.errorOnAutoCreate()) 392 throw new Error("Attempt to auto-create NamingSystemUniqueIdComponent.value"); 393 else if (Configuration.doAutoCreate()) 394 this.value = new StringType(); // bb 395 return this.value; 396 } 397 398 public boolean hasValueElement() { 399 return this.value != null && !this.value.isEmpty(); 400 } 401 402 public boolean hasValue() { 403 return this.value != null && !this.value.isEmpty(); 404 } 405 406 /** 407 * @param value {@link #value} (The string that should be sent over the wire to identify the code system or identifier system.). This is the underlying object with id, value and extensions. The accessor "getValue" gives direct access to the value 408 */ 409 public NamingSystemUniqueIdComponent setValueElement(StringType value) { 410 this.value = value; 411 return this; 412 } 413 414 /** 415 * @return The string that should be sent over the wire to identify the code system or identifier system. 416 */ 417 public String getValue() { 418 return this.value == null ? null : this.value.getValue(); 419 } 420 421 /** 422 * @param value The string that should be sent over the wire to identify the code system or identifier system. 423 */ 424 public NamingSystemUniqueIdComponent setValue(String value) { 425 if (this.value == null) 426 this.value = new StringType(); 427 this.value.setValue(value); 428 return this; 429 } 430 431 /** 432 * @return {@link #preferred} (Indicates whether this identifier is the "preferred" identifier of this type.). This is the underlying object with id, value and extensions. The accessor "getPreferred" gives direct access to the value 433 */ 434 public BooleanType getPreferredElement() { 435 if (this.preferred == null) 436 if (Configuration.errorOnAutoCreate()) 437 throw new Error("Attempt to auto-create NamingSystemUniqueIdComponent.preferred"); 438 else if (Configuration.doAutoCreate()) 439 this.preferred = new BooleanType(); // bb 440 return this.preferred; 441 } 442 443 public boolean hasPreferredElement() { 444 return this.preferred != null && !this.preferred.isEmpty(); 445 } 446 447 public boolean hasPreferred() { 448 return this.preferred != null && !this.preferred.isEmpty(); 449 } 450 451 /** 452 * @param value {@link #preferred} (Indicates whether this identifier is the "preferred" identifier of this type.). This is the underlying object with id, value and extensions. The accessor "getPreferred" gives direct access to the value 453 */ 454 public NamingSystemUniqueIdComponent setPreferredElement(BooleanType value) { 455 this.preferred = value; 456 return this; 457 } 458 459 /** 460 * @return Indicates whether this identifier is the "preferred" identifier of this type. 461 */ 462 public boolean getPreferred() { 463 return this.preferred == null || this.preferred.isEmpty() ? false : this.preferred.getValue(); 464 } 465 466 /** 467 * @param value Indicates whether this identifier is the "preferred" identifier of this type. 468 */ 469 public NamingSystemUniqueIdComponent setPreferred(boolean value) { 470 if (this.preferred == null) 471 this.preferred = new BooleanType(); 472 this.preferred.setValue(value); 473 return this; 474 } 475 476 /** 477 * @return {@link #comment} (Notes about the past or intended usage of this identifier.). This is the underlying object with id, value and extensions. The accessor "getComment" gives direct access to the value 478 */ 479 public StringType getCommentElement() { 480 if (this.comment == null) 481 if (Configuration.errorOnAutoCreate()) 482 throw new Error("Attempt to auto-create NamingSystemUniqueIdComponent.comment"); 483 else if (Configuration.doAutoCreate()) 484 this.comment = new StringType(); // bb 485 return this.comment; 486 } 487 488 public boolean hasCommentElement() { 489 return this.comment != null && !this.comment.isEmpty(); 490 } 491 492 public boolean hasComment() { 493 return this.comment != null && !this.comment.isEmpty(); 494 } 495 496 /** 497 * @param value {@link #comment} (Notes about the past or intended usage of this identifier.). This is the underlying object with id, value and extensions. The accessor "getComment" gives direct access to the value 498 */ 499 public NamingSystemUniqueIdComponent setCommentElement(StringType value) { 500 this.comment = value; 501 return this; 502 } 503 504 /** 505 * @return Notes about the past or intended usage of this identifier. 506 */ 507 public String getComment() { 508 return this.comment == null ? null : this.comment.getValue(); 509 } 510 511 /** 512 * @param value Notes about the past or intended usage of this identifier. 513 */ 514 public NamingSystemUniqueIdComponent setComment(String value) { 515 if (Utilities.noString(value)) 516 this.comment = null; 517 else { 518 if (this.comment == null) 519 this.comment = new StringType(); 520 this.comment.setValue(value); 521 } 522 return this; 523 } 524 525 /** 526 * @return {@link #period} (Identifies the period of time over which this identifier is considered appropriate to refer to the naming system. Outside of this window, the identifier might be non-deterministic.) 527 */ 528 public Period getPeriod() { 529 if (this.period == null) 530 if (Configuration.errorOnAutoCreate()) 531 throw new Error("Attempt to auto-create NamingSystemUniqueIdComponent.period"); 532 else if (Configuration.doAutoCreate()) 533 this.period = new Period(); // cc 534 return this.period; 535 } 536 537 public boolean hasPeriod() { 538 return this.period != null && !this.period.isEmpty(); 539 } 540 541 /** 542 * @param value {@link #period} (Identifies the period of time over which this identifier is considered appropriate to refer to the naming system. Outside of this window, the identifier might be non-deterministic.) 543 */ 544 public NamingSystemUniqueIdComponent setPeriod(Period value) { 545 this.period = value; 546 return this; 547 } 548 549 protected void listChildren(List<Property> children) { 550 super.listChildren(children); 551 children.add(new Property("type", "code", "Identifies the unique identifier scheme used for this particular identifier.", 0, 1, type)); 552 children.add(new Property("value", "string", "The string that should be sent over the wire to identify the code system or identifier system.", 0, 1, value)); 553 children.add(new Property("preferred", "boolean", "Indicates whether this identifier is the \"preferred\" identifier of this type.", 0, 1, preferred)); 554 children.add(new Property("comment", "string", "Notes about the past or intended usage of this identifier.", 0, 1, comment)); 555 children.add(new Property("period", "Period", "Identifies the period of time over which this identifier is considered appropriate to refer to the naming system. Outside of this window, the identifier might be non-deterministic.", 0, 1, period)); 556 } 557 558 @Override 559 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 560 switch (_hash) { 561 case 3575610: /*type*/ return new Property("type", "code", "Identifies the unique identifier scheme used for this particular identifier.", 0, 1, type); 562 case 111972721: /*value*/ return new Property("value", "string", "The string that should be sent over the wire to identify the code system or identifier system.", 0, 1, value); 563 case -1294005119: /*preferred*/ return new Property("preferred", "boolean", "Indicates whether this identifier is the \"preferred\" identifier of this type.", 0, 1, preferred); 564 case 950398559: /*comment*/ return new Property("comment", "string", "Notes about the past or intended usage of this identifier.", 0, 1, comment); 565 case -991726143: /*period*/ return new Property("period", "Period", "Identifies the period of time over which this identifier is considered appropriate to refer to the naming system. Outside of this window, the identifier might be non-deterministic.", 0, 1, period); 566 default: return super.getNamedProperty(_hash, _name, _checkValid); 567 } 568 569 } 570 571 @Override 572 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 573 switch (hash) { 574 case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // Enumeration<NamingSystemIdentifierType> 575 case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // StringType 576 case -1294005119: /*preferred*/ return this.preferred == null ? new Base[0] : new Base[] {this.preferred}; // BooleanType 577 case 950398559: /*comment*/ return this.comment == null ? new Base[0] : new Base[] {this.comment}; // StringType 578 case -991726143: /*period*/ return this.period == null ? new Base[0] : new Base[] {this.period}; // Period 579 default: return super.getProperty(hash, name, checkValid); 580 } 581 582 } 583 584 @Override 585 public Base setProperty(int hash, String name, Base value) throws FHIRException { 586 switch (hash) { 587 case 3575610: // type 588 value = new NamingSystemIdentifierTypeEnumFactory().fromType(castToCode(value)); 589 this.type = (Enumeration) value; // Enumeration<NamingSystemIdentifierType> 590 return value; 591 case 111972721: // value 592 this.value = castToString(value); // StringType 593 return value; 594 case -1294005119: // preferred 595 this.preferred = castToBoolean(value); // BooleanType 596 return value; 597 case 950398559: // comment 598 this.comment = castToString(value); // StringType 599 return value; 600 case -991726143: // period 601 this.period = castToPeriod(value); // Period 602 return value; 603 default: return super.setProperty(hash, name, value); 604 } 605 606 } 607 608 @Override 609 public Base setProperty(String name, Base value) throws FHIRException { 610 if (name.equals("type")) { 611 value = new NamingSystemIdentifierTypeEnumFactory().fromType(castToCode(value)); 612 this.type = (Enumeration) value; // Enumeration<NamingSystemIdentifierType> 613 } else if (name.equals("value")) { 614 this.value = castToString(value); // StringType 615 } else if (name.equals("preferred")) { 616 this.preferred = castToBoolean(value); // BooleanType 617 } else if (name.equals("comment")) { 618 this.comment = castToString(value); // StringType 619 } else if (name.equals("period")) { 620 this.period = castToPeriod(value); // Period 621 } else 622 return super.setProperty(name, value); 623 return value; 624 } 625 626 @Override 627 public Base makeProperty(int hash, String name) throws FHIRException { 628 switch (hash) { 629 case 3575610: return getTypeElement(); 630 case 111972721: return getValueElement(); 631 case -1294005119: return getPreferredElement(); 632 case 950398559: return getCommentElement(); 633 case -991726143: return getPeriod(); 634 default: return super.makeProperty(hash, name); 635 } 636 637 } 638 639 @Override 640 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 641 switch (hash) { 642 case 3575610: /*type*/ return new String[] {"code"}; 643 case 111972721: /*value*/ return new String[] {"string"}; 644 case -1294005119: /*preferred*/ return new String[] {"boolean"}; 645 case 950398559: /*comment*/ return new String[] {"string"}; 646 case -991726143: /*period*/ return new String[] {"Period"}; 647 default: return super.getTypesForProperty(hash, name); 648 } 649 650 } 651 652 @Override 653 public Base addChild(String name) throws FHIRException { 654 if (name.equals("type")) { 655 throw new FHIRException("Cannot call addChild on a primitive type NamingSystem.type"); 656 } 657 else if (name.equals("value")) { 658 throw new FHIRException("Cannot call addChild on a primitive type NamingSystem.value"); 659 } 660 else if (name.equals("preferred")) { 661 throw new FHIRException("Cannot call addChild on a primitive type NamingSystem.preferred"); 662 } 663 else if (name.equals("comment")) { 664 throw new FHIRException("Cannot call addChild on a primitive type NamingSystem.comment"); 665 } 666 else if (name.equals("period")) { 667 this.period = new Period(); 668 return this.period; 669 } 670 else 671 return super.addChild(name); 672 } 673 674 public NamingSystemUniqueIdComponent copy() { 675 NamingSystemUniqueIdComponent dst = new NamingSystemUniqueIdComponent(); 676 copyValues(dst); 677 dst.type = type == null ? null : type.copy(); 678 dst.value = value == null ? null : value.copy(); 679 dst.preferred = preferred == null ? null : preferred.copy(); 680 dst.comment = comment == null ? null : comment.copy(); 681 dst.period = period == null ? null : period.copy(); 682 return dst; 683 } 684 685 @Override 686 public boolean equalsDeep(Base other_) { 687 if (!super.equalsDeep(other_)) 688 return false; 689 if (!(other_ instanceof NamingSystemUniqueIdComponent)) 690 return false; 691 NamingSystemUniqueIdComponent o = (NamingSystemUniqueIdComponent) other_; 692 return compareDeep(type, o.type, true) && compareDeep(value, o.value, true) && compareDeep(preferred, o.preferred, true) 693 && compareDeep(comment, o.comment, true) && compareDeep(period, o.period, true); 694 } 695 696 @Override 697 public boolean equalsShallow(Base other_) { 698 if (!super.equalsShallow(other_)) 699 return false; 700 if (!(other_ instanceof NamingSystemUniqueIdComponent)) 701 return false; 702 NamingSystemUniqueIdComponent o = (NamingSystemUniqueIdComponent) other_; 703 return compareValues(type, o.type, true) && compareValues(value, o.value, true) && compareValues(preferred, o.preferred, true) 704 && compareValues(comment, o.comment, true); 705 } 706 707 public boolean isEmpty() { 708 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, value, preferred, comment 709 , period); 710 } 711 712 public String fhirType() { 713 return "NamingSystem.uniqueId"; 714 715 } 716 717 } 718 719 /** 720 * Indicates the purpose for the naming system - what kinds of things does it make unique? 721 */ 722 @Child(name = "kind", type = {CodeType.class}, order=0, min=1, max=1, modifier=false, summary=true) 723 @Description(shortDefinition="codesystem | identifier | root", formalDefinition="Indicates the purpose for the naming system - what kinds of things does it make unique?" ) 724 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/namingsystem-type") 725 protected Enumeration<NamingSystemType> kind; 726 727 /** 728 * The name of the organization that is responsible for issuing identifiers or codes for this namespace and ensuring their non-collision. 729 */ 730 @Child(name = "responsible", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=false) 731 @Description(shortDefinition="Who maintains system namespace?", formalDefinition="The name of the organization that is responsible for issuing identifiers or codes for this namespace and ensuring their non-collision." ) 732 protected StringType responsible; 733 734 /** 735 * Categorizes a naming system for easier search by grouping related naming systems. 736 */ 737 @Child(name = "type", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=false) 738 @Description(shortDefinition="e.g. driver, provider, patient, bank etc.", formalDefinition="Categorizes a naming system for easier search by grouping related naming systems." ) 739 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/identifier-type") 740 protected CodeableConcept type; 741 742 /** 743 * Provides guidance on the use of the namespace, including the handling of formatting characters, use of upper vs. lower case, etc. 744 */ 745 @Child(name = "usage", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=false) 746 @Description(shortDefinition="How/where is it used", formalDefinition="Provides guidance on the use of the namespace, including the handling of formatting characters, use of upper vs. lower case, etc." ) 747 protected StringType usage; 748 749 /** 750 * Indicates how the system may be identified when referenced in electronic exchange. 751 */ 752 @Child(name = "uniqueId", type = {}, order=4, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 753 @Description(shortDefinition="Unique identifiers used for system", formalDefinition="Indicates how the system may be identified when referenced in electronic exchange." ) 754 protected List<NamingSystemUniqueIdComponent> uniqueId; 755 756 private static final long serialVersionUID = 1686086580L; 757 758 /** 759 * Constructor 760 */ 761 public NamingSystem() { 762 super(); 763 } 764 765 /** 766 * Constructor 767 */ 768 public NamingSystem(StringType name, Enumeration<PublicationStatus> status, Enumeration<NamingSystemType> kind, DateTimeType date) { 769 super(); 770 this.name = name; 771 this.status = status; 772 this.kind = kind; 773 this.date = date; 774 } 775 776 /** 777 * @return {@link #name} (A natural language name identifying the naming system. This name should be usable as an identifier for the module by machine processing applications such as code generation.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 778 */ 779 public StringType getNameElement() { 780 if (this.name == null) 781 if (Configuration.errorOnAutoCreate()) 782 throw new Error("Attempt to auto-create NamingSystem.name"); 783 else if (Configuration.doAutoCreate()) 784 this.name = new StringType(); // bb 785 return this.name; 786 } 787 788 public boolean hasNameElement() { 789 return this.name != null && !this.name.isEmpty(); 790 } 791 792 public boolean hasName() { 793 return this.name != null && !this.name.isEmpty(); 794 } 795 796 /** 797 * @param value {@link #name} (A natural language name identifying the naming system. This name should be usable as an identifier for the module by machine processing applications such as code generation.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 798 */ 799 public NamingSystem setNameElement(StringType value) { 800 this.name = value; 801 return this; 802 } 803 804 /** 805 * @return A natural language name identifying the naming system. This name should be usable as an identifier for the module by machine processing applications such as code generation. 806 */ 807 public String getName() { 808 return this.name == null ? null : this.name.getValue(); 809 } 810 811 /** 812 * @param value A natural language name identifying the naming system. This name should be usable as an identifier for the module by machine processing applications such as code generation. 813 */ 814 public NamingSystem setName(String value) { 815 if (this.name == null) 816 this.name = new StringType(); 817 this.name.setValue(value); 818 return this; 819 } 820 821 /** 822 * @return {@link #status} (The status of this naming system. Enables tracking the life-cycle of the content.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 823 */ 824 public Enumeration<PublicationStatus> getStatusElement() { 825 if (this.status == null) 826 if (Configuration.errorOnAutoCreate()) 827 throw new Error("Attempt to auto-create NamingSystem.status"); 828 else if (Configuration.doAutoCreate()) 829 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); // bb 830 return this.status; 831 } 832 833 public boolean hasStatusElement() { 834 return this.status != null && !this.status.isEmpty(); 835 } 836 837 public boolean hasStatus() { 838 return this.status != null && !this.status.isEmpty(); 839 } 840 841 /** 842 * @param value {@link #status} (The status of this naming system. Enables tracking the life-cycle of the content.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 843 */ 844 public NamingSystem setStatusElement(Enumeration<PublicationStatus> value) { 845 this.status = value; 846 return this; 847 } 848 849 /** 850 * @return The status of this naming system. Enables tracking the life-cycle of the content. 851 */ 852 public PublicationStatus getStatus() { 853 return this.status == null ? null : this.status.getValue(); 854 } 855 856 /** 857 * @param value The status of this naming system. Enables tracking the life-cycle of the content. 858 */ 859 public NamingSystem setStatus(PublicationStatus value) { 860 if (this.status == null) 861 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); 862 this.status.setValue(value); 863 return this; 864 } 865 866 /** 867 * @return {@link #kind} (Indicates the purpose for the naming system - what kinds of things does it make unique?). This is the underlying object with id, value and extensions. The accessor "getKind" gives direct access to the value 868 */ 869 public Enumeration<NamingSystemType> getKindElement() { 870 if (this.kind == null) 871 if (Configuration.errorOnAutoCreate()) 872 throw new Error("Attempt to auto-create NamingSystem.kind"); 873 else if (Configuration.doAutoCreate()) 874 this.kind = new Enumeration<NamingSystemType>(new NamingSystemTypeEnumFactory()); // bb 875 return this.kind; 876 } 877 878 public boolean hasKindElement() { 879 return this.kind != null && !this.kind.isEmpty(); 880 } 881 882 public boolean hasKind() { 883 return this.kind != null && !this.kind.isEmpty(); 884 } 885 886 /** 887 * @param value {@link #kind} (Indicates the purpose for the naming system - what kinds of things does it make unique?). This is the underlying object with id, value and extensions. The accessor "getKind" gives direct access to the value 888 */ 889 public NamingSystem setKindElement(Enumeration<NamingSystemType> value) { 890 this.kind = value; 891 return this; 892 } 893 894 /** 895 * @return Indicates the purpose for the naming system - what kinds of things does it make unique? 896 */ 897 public NamingSystemType getKind() { 898 return this.kind == null ? null : this.kind.getValue(); 899 } 900 901 /** 902 * @param value Indicates the purpose for the naming system - what kinds of things does it make unique? 903 */ 904 public NamingSystem setKind(NamingSystemType value) { 905 if (this.kind == null) 906 this.kind = new Enumeration<NamingSystemType>(new NamingSystemTypeEnumFactory()); 907 this.kind.setValue(value); 908 return this; 909 } 910 911 /** 912 * @return {@link #date} (The date (and optionally time) when the naming system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the naming system changes.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 913 */ 914 public DateTimeType getDateElement() { 915 if (this.date == null) 916 if (Configuration.errorOnAutoCreate()) 917 throw new Error("Attempt to auto-create NamingSystem.date"); 918 else if (Configuration.doAutoCreate()) 919 this.date = new DateTimeType(); // bb 920 return this.date; 921 } 922 923 public boolean hasDateElement() { 924 return this.date != null && !this.date.isEmpty(); 925 } 926 927 public boolean hasDate() { 928 return this.date != null && !this.date.isEmpty(); 929 } 930 931 /** 932 * @param value {@link #date} (The date (and optionally time) when the naming system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the naming system changes.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 933 */ 934 public NamingSystem setDateElement(DateTimeType value) { 935 this.date = value; 936 return this; 937 } 938 939 /** 940 * @return The date (and optionally time) when the naming system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the naming system changes. 941 */ 942 public Date getDate() { 943 return this.date == null ? null : this.date.getValue(); 944 } 945 946 /** 947 * @param value The date (and optionally time) when the naming system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the naming system changes. 948 */ 949 public NamingSystem setDate(Date value) { 950 if (this.date == null) 951 this.date = new DateTimeType(); 952 this.date.setValue(value); 953 return this; 954 } 955 956 /** 957 * @return {@link #publisher} (The name of the organization or individual that published the naming system.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value 958 */ 959 public StringType getPublisherElement() { 960 if (this.publisher == null) 961 if (Configuration.errorOnAutoCreate()) 962 throw new Error("Attempt to auto-create NamingSystem.publisher"); 963 else if (Configuration.doAutoCreate()) 964 this.publisher = new StringType(); // bb 965 return this.publisher; 966 } 967 968 public boolean hasPublisherElement() { 969 return this.publisher != null && !this.publisher.isEmpty(); 970 } 971 972 public boolean hasPublisher() { 973 return this.publisher != null && !this.publisher.isEmpty(); 974 } 975 976 /** 977 * @param value {@link #publisher} (The name of the organization or individual that published the naming system.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value 978 */ 979 public NamingSystem setPublisherElement(StringType value) { 980 this.publisher = value; 981 return this; 982 } 983 984 /** 985 * @return The name of the organization or individual that published the naming system. 986 */ 987 public String getPublisher() { 988 return this.publisher == null ? null : this.publisher.getValue(); 989 } 990 991 /** 992 * @param value The name of the organization or individual that published the naming system. 993 */ 994 public NamingSystem setPublisher(String value) { 995 if (Utilities.noString(value)) 996 this.publisher = null; 997 else { 998 if (this.publisher == null) 999 this.publisher = new StringType(); 1000 this.publisher.setValue(value); 1001 } 1002 return this; 1003 } 1004 1005 /** 1006 * @return {@link #contact} (Contact details to assist a user in finding and communicating with the publisher.) 1007 */ 1008 public List<ContactDetail> getContact() { 1009 if (this.contact == null) 1010 this.contact = new ArrayList<ContactDetail>(); 1011 return this.contact; 1012 } 1013 1014 /** 1015 * @return Returns a reference to <code>this</code> for easy method chaining 1016 */ 1017 public NamingSystem setContact(List<ContactDetail> theContact) { 1018 this.contact = theContact; 1019 return this; 1020 } 1021 1022 public boolean hasContact() { 1023 if (this.contact == null) 1024 return false; 1025 for (ContactDetail item : this.contact) 1026 if (!item.isEmpty()) 1027 return true; 1028 return false; 1029 } 1030 1031 public ContactDetail addContact() { //3 1032 ContactDetail t = new ContactDetail(); 1033 if (this.contact == null) 1034 this.contact = new ArrayList<ContactDetail>(); 1035 this.contact.add(t); 1036 return t; 1037 } 1038 1039 public NamingSystem addContact(ContactDetail t) { //3 1040 if (t == null) 1041 return this; 1042 if (this.contact == null) 1043 this.contact = new ArrayList<ContactDetail>(); 1044 this.contact.add(t); 1045 return this; 1046 } 1047 1048 /** 1049 * @return The first repetition of repeating field {@link #contact}, creating it if it does not already exist 1050 */ 1051 public ContactDetail getContactFirstRep() { 1052 if (getContact().isEmpty()) { 1053 addContact(); 1054 } 1055 return getContact().get(0); 1056 } 1057 1058 /** 1059 * @return {@link #responsible} (The name of the organization that is responsible for issuing identifiers or codes for this namespace and ensuring their non-collision.). This is the underlying object with id, value and extensions. The accessor "getResponsible" gives direct access to the value 1060 */ 1061 public StringType getResponsibleElement() { 1062 if (this.responsible == null) 1063 if (Configuration.errorOnAutoCreate()) 1064 throw new Error("Attempt to auto-create NamingSystem.responsible"); 1065 else if (Configuration.doAutoCreate()) 1066 this.responsible = new StringType(); // bb 1067 return this.responsible; 1068 } 1069 1070 public boolean hasResponsibleElement() { 1071 return this.responsible != null && !this.responsible.isEmpty(); 1072 } 1073 1074 public boolean hasResponsible() { 1075 return this.responsible != null && !this.responsible.isEmpty(); 1076 } 1077 1078 /** 1079 * @param value {@link #responsible} (The name of the organization that is responsible for issuing identifiers or codes for this namespace and ensuring their non-collision.). This is the underlying object with id, value and extensions. The accessor "getResponsible" gives direct access to the value 1080 */ 1081 public NamingSystem setResponsibleElement(StringType value) { 1082 this.responsible = value; 1083 return this; 1084 } 1085 1086 /** 1087 * @return The name of the organization that is responsible for issuing identifiers or codes for this namespace and ensuring their non-collision. 1088 */ 1089 public String getResponsible() { 1090 return this.responsible == null ? null : this.responsible.getValue(); 1091 } 1092 1093 /** 1094 * @param value The name of the organization that is responsible for issuing identifiers or codes for this namespace and ensuring their non-collision. 1095 */ 1096 public NamingSystem setResponsible(String value) { 1097 if (Utilities.noString(value)) 1098 this.responsible = null; 1099 else { 1100 if (this.responsible == null) 1101 this.responsible = new StringType(); 1102 this.responsible.setValue(value); 1103 } 1104 return this; 1105 } 1106 1107 /** 1108 * @return {@link #type} (Categorizes a naming system for easier search by grouping related naming systems.) 1109 */ 1110 public CodeableConcept getType() { 1111 if (this.type == null) 1112 if (Configuration.errorOnAutoCreate()) 1113 throw new Error("Attempt to auto-create NamingSystem.type"); 1114 else if (Configuration.doAutoCreate()) 1115 this.type = new CodeableConcept(); // cc 1116 return this.type; 1117 } 1118 1119 public boolean hasType() { 1120 return this.type != null && !this.type.isEmpty(); 1121 } 1122 1123 /** 1124 * @param value {@link #type} (Categorizes a naming system for easier search by grouping related naming systems.) 1125 */ 1126 public NamingSystem setType(CodeableConcept value) { 1127 this.type = value; 1128 return this; 1129 } 1130 1131 /** 1132 * @return {@link #description} (A free text natural language description of the naming system from a consumer's perspective. Details about what the namespace identifies including scope, granularity, version labeling, etc.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 1133 */ 1134 public MarkdownType getDescriptionElement() { 1135 if (this.description == null) 1136 if (Configuration.errorOnAutoCreate()) 1137 throw new Error("Attempt to auto-create NamingSystem.description"); 1138 else if (Configuration.doAutoCreate()) 1139 this.description = new MarkdownType(); // bb 1140 return this.description; 1141 } 1142 1143 public boolean hasDescriptionElement() { 1144 return this.description != null && !this.description.isEmpty(); 1145 } 1146 1147 public boolean hasDescription() { 1148 return this.description != null && !this.description.isEmpty(); 1149 } 1150 1151 /** 1152 * @param value {@link #description} (A free text natural language description of the naming system from a consumer's perspective. Details about what the namespace identifies including scope, granularity, version labeling, etc.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 1153 */ 1154 public NamingSystem setDescriptionElement(MarkdownType value) { 1155 this.description = value; 1156 return this; 1157 } 1158 1159 /** 1160 * @return A free text natural language description of the naming system from a consumer's perspective. Details about what the namespace identifies including scope, granularity, version labeling, etc. 1161 */ 1162 public String getDescription() { 1163 return this.description == null ? null : this.description.getValue(); 1164 } 1165 1166 /** 1167 * @param value A free text natural language description of the naming system from a consumer's perspective. Details about what the namespace identifies including scope, granularity, version labeling, etc. 1168 */ 1169 public NamingSystem setDescription(String value) { 1170 if (value == null) 1171 this.description = null; 1172 else { 1173 if (this.description == null) 1174 this.description = new MarkdownType(); 1175 this.description.setValue(value); 1176 } 1177 return this; 1178 } 1179 1180 /** 1181 * @return {@link #useContext} (The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching for appropriate naming system instances.) 1182 */ 1183 public List<UsageContext> getUseContext() { 1184 if (this.useContext == null) 1185 this.useContext = new ArrayList<UsageContext>(); 1186 return this.useContext; 1187 } 1188 1189 /** 1190 * @return Returns a reference to <code>this</code> for easy method chaining 1191 */ 1192 public NamingSystem setUseContext(List<UsageContext> theUseContext) { 1193 this.useContext = theUseContext; 1194 return this; 1195 } 1196 1197 public boolean hasUseContext() { 1198 if (this.useContext == null) 1199 return false; 1200 for (UsageContext item : this.useContext) 1201 if (!item.isEmpty()) 1202 return true; 1203 return false; 1204 } 1205 1206 public UsageContext addUseContext() { //3 1207 UsageContext t = new UsageContext(); 1208 if (this.useContext == null) 1209 this.useContext = new ArrayList<UsageContext>(); 1210 this.useContext.add(t); 1211 return t; 1212 } 1213 1214 public NamingSystem addUseContext(UsageContext t) { //3 1215 if (t == null) 1216 return this; 1217 if (this.useContext == null) 1218 this.useContext = new ArrayList<UsageContext>(); 1219 this.useContext.add(t); 1220 return this; 1221 } 1222 1223 /** 1224 * @return The first repetition of repeating field {@link #useContext}, creating it if it does not already exist 1225 */ 1226 public UsageContext getUseContextFirstRep() { 1227 if (getUseContext().isEmpty()) { 1228 addUseContext(); 1229 } 1230 return getUseContext().get(0); 1231 } 1232 1233 /** 1234 * @return {@link #jurisdiction} (A legal or geographic region in which the naming system is intended to be used.) 1235 */ 1236 public List<CodeableConcept> getJurisdiction() { 1237 if (this.jurisdiction == null) 1238 this.jurisdiction = new ArrayList<CodeableConcept>(); 1239 return this.jurisdiction; 1240 } 1241 1242 /** 1243 * @return Returns a reference to <code>this</code> for easy method chaining 1244 */ 1245 public NamingSystem setJurisdiction(List<CodeableConcept> theJurisdiction) { 1246 this.jurisdiction = theJurisdiction; 1247 return this; 1248 } 1249 1250 public boolean hasJurisdiction() { 1251 if (this.jurisdiction == null) 1252 return false; 1253 for (CodeableConcept item : this.jurisdiction) 1254 if (!item.isEmpty()) 1255 return true; 1256 return false; 1257 } 1258 1259 public CodeableConcept addJurisdiction() { //3 1260 CodeableConcept t = new CodeableConcept(); 1261 if (this.jurisdiction == null) 1262 this.jurisdiction = new ArrayList<CodeableConcept>(); 1263 this.jurisdiction.add(t); 1264 return t; 1265 } 1266 1267 public NamingSystem addJurisdiction(CodeableConcept t) { //3 1268 if (t == null) 1269 return this; 1270 if (this.jurisdiction == null) 1271 this.jurisdiction = new ArrayList<CodeableConcept>(); 1272 this.jurisdiction.add(t); 1273 return this; 1274 } 1275 1276 /** 1277 * @return The first repetition of repeating field {@link #jurisdiction}, creating it if it does not already exist 1278 */ 1279 public CodeableConcept getJurisdictionFirstRep() { 1280 if (getJurisdiction().isEmpty()) { 1281 addJurisdiction(); 1282 } 1283 return getJurisdiction().get(0); 1284 } 1285 1286 /** 1287 * @return {@link #usage} (Provides guidance on the use of the namespace, including the handling of formatting characters, use of upper vs. lower case, etc.). This is the underlying object with id, value and extensions. The accessor "getUsage" gives direct access to the value 1288 */ 1289 public StringType getUsageElement() { 1290 if (this.usage == null) 1291 if (Configuration.errorOnAutoCreate()) 1292 throw new Error("Attempt to auto-create NamingSystem.usage"); 1293 else if (Configuration.doAutoCreate()) 1294 this.usage = new StringType(); // bb 1295 return this.usage; 1296 } 1297 1298 public boolean hasUsageElement() { 1299 return this.usage != null && !this.usage.isEmpty(); 1300 } 1301 1302 public boolean hasUsage() { 1303 return this.usage != null && !this.usage.isEmpty(); 1304 } 1305 1306 /** 1307 * @param value {@link #usage} (Provides guidance on the use of the namespace, including the handling of formatting characters, use of upper vs. lower case, etc.). This is the underlying object with id, value and extensions. The accessor "getUsage" gives direct access to the value 1308 */ 1309 public NamingSystem setUsageElement(StringType value) { 1310 this.usage = value; 1311 return this; 1312 } 1313 1314 /** 1315 * @return Provides guidance on the use of the namespace, including the handling of formatting characters, use of upper vs. lower case, etc. 1316 */ 1317 public String getUsage() { 1318 return this.usage == null ? null : this.usage.getValue(); 1319 } 1320 1321 /** 1322 * @param value Provides guidance on the use of the namespace, including the handling of formatting characters, use of upper vs. lower case, etc. 1323 */ 1324 public NamingSystem setUsage(String value) { 1325 if (Utilities.noString(value)) 1326 this.usage = null; 1327 else { 1328 if (this.usage == null) 1329 this.usage = new StringType(); 1330 this.usage.setValue(value); 1331 } 1332 return this; 1333 } 1334 1335 /** 1336 * @return {@link #uniqueId} (Indicates how the system may be identified when referenced in electronic exchange.) 1337 */ 1338 public List<NamingSystemUniqueIdComponent> getUniqueId() { 1339 if (this.uniqueId == null) 1340 this.uniqueId = new ArrayList<NamingSystemUniqueIdComponent>(); 1341 return this.uniqueId; 1342 } 1343 1344 /** 1345 * @return Returns a reference to <code>this</code> for easy method chaining 1346 */ 1347 public NamingSystem setUniqueId(List<NamingSystemUniqueIdComponent> theUniqueId) { 1348 this.uniqueId = theUniqueId; 1349 return this; 1350 } 1351 1352 public boolean hasUniqueId() { 1353 if (this.uniqueId == null) 1354 return false; 1355 for (NamingSystemUniqueIdComponent item : this.uniqueId) 1356 if (!item.isEmpty()) 1357 return true; 1358 return false; 1359 } 1360 1361 public NamingSystemUniqueIdComponent addUniqueId() { //3 1362 NamingSystemUniqueIdComponent t = new NamingSystemUniqueIdComponent(); 1363 if (this.uniqueId == null) 1364 this.uniqueId = new ArrayList<NamingSystemUniqueIdComponent>(); 1365 this.uniqueId.add(t); 1366 return t; 1367 } 1368 1369 public NamingSystem addUniqueId(NamingSystemUniqueIdComponent t) { //3 1370 if (t == null) 1371 return this; 1372 if (this.uniqueId == null) 1373 this.uniqueId = new ArrayList<NamingSystemUniqueIdComponent>(); 1374 this.uniqueId.add(t); 1375 return this; 1376 } 1377 1378 /** 1379 * @return The first repetition of repeating field {@link #uniqueId}, creating it if it does not already exist 1380 */ 1381 public NamingSystemUniqueIdComponent getUniqueIdFirstRep() { 1382 if (getUniqueId().isEmpty()) { 1383 addUniqueId(); 1384 } 1385 return getUniqueId().get(0); 1386 } 1387 1388 protected void listChildren(List<Property> children) { 1389 super.listChildren(children); 1390 children.add(new Property("name", "string", "A natural language name identifying the naming system. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 0, 1, name)); 1391 children.add(new Property("status", "code", "The status of this naming system. Enables tracking the life-cycle of the content.", 0, 1, status)); 1392 children.add(new Property("kind", "code", "Indicates the purpose for the naming system - what kinds of things does it make unique?", 0, 1, kind)); 1393 children.add(new Property("date", "dateTime", "The date (and optionally time) when the naming system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the naming system changes.", 0, 1, date)); 1394 children.add(new Property("publisher", "string", "The name of the organization or individual that published the naming system.", 0, 1, publisher)); 1395 children.add(new Property("contact", "ContactDetail", "Contact details to assist a user in finding and communicating with the publisher.", 0, java.lang.Integer.MAX_VALUE, contact)); 1396 children.add(new Property("responsible", "string", "The name of the organization that is responsible for issuing identifiers or codes for this namespace and ensuring their non-collision.", 0, 1, responsible)); 1397 children.add(new Property("type", "CodeableConcept", "Categorizes a naming system for easier search by grouping related naming systems.", 0, 1, type)); 1398 children.add(new Property("description", "markdown", "A free text natural language description of the naming system from a consumer's perspective. Details about what the namespace identifies including scope, granularity, version labeling, etc.", 0, 1, description)); 1399 children.add(new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching for appropriate naming system instances.", 0, java.lang.Integer.MAX_VALUE, useContext)); 1400 children.add(new Property("jurisdiction", "CodeableConcept", "A legal or geographic region in which the naming system is intended to be used.", 0, java.lang.Integer.MAX_VALUE, jurisdiction)); 1401 children.add(new Property("usage", "string", "Provides guidance on the use of the namespace, including the handling of formatting characters, use of upper vs. lower case, etc.", 0, 1, usage)); 1402 children.add(new Property("uniqueId", "", "Indicates how the system may be identified when referenced in electronic exchange.", 0, java.lang.Integer.MAX_VALUE, uniqueId)); 1403 } 1404 1405 @Override 1406 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1407 switch (_hash) { 1408 case 3373707: /*name*/ return new Property("name", "string", "A natural language name identifying the naming system. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 0, 1, name); 1409 case -892481550: /*status*/ return new Property("status", "code", "The status of this naming system. Enables tracking the life-cycle of the content.", 0, 1, status); 1410 case 3292052: /*kind*/ return new Property("kind", "code", "Indicates the purpose for the naming system - what kinds of things does it make unique?", 0, 1, kind); 1411 case 3076014: /*date*/ return new Property("date", "dateTime", "The date (and optionally time) when the naming system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the naming system changes.", 0, 1, date); 1412 case 1447404028: /*publisher*/ return new Property("publisher", "string", "The name of the organization or individual that published the naming system.", 0, 1, publisher); 1413 case 951526432: /*contact*/ return new Property("contact", "ContactDetail", "Contact details to assist a user in finding and communicating with the publisher.", 0, java.lang.Integer.MAX_VALUE, contact); 1414 case 1847674614: /*responsible*/ return new Property("responsible", "string", "The name of the organization that is responsible for issuing identifiers or codes for this namespace and ensuring their non-collision.", 0, 1, responsible); 1415 case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Categorizes a naming system for easier search by grouping related naming systems.", 0, 1, type); 1416 case -1724546052: /*description*/ return new Property("description", "markdown", "A free text natural language description of the naming system from a consumer's perspective. Details about what the namespace identifies including scope, granularity, version labeling, etc.", 0, 1, description); 1417 case -669707736: /*useContext*/ return new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching for appropriate naming system instances.", 0, java.lang.Integer.MAX_VALUE, useContext); 1418 case -507075711: /*jurisdiction*/ return new Property("jurisdiction", "CodeableConcept", "A legal or geographic region in which the naming system is intended to be used.", 0, java.lang.Integer.MAX_VALUE, jurisdiction); 1419 case 111574433: /*usage*/ return new Property("usage", "string", "Provides guidance on the use of the namespace, including the handling of formatting characters, use of upper vs. lower case, etc.", 0, 1, usage); 1420 case -294460212: /*uniqueId*/ return new Property("uniqueId", "", "Indicates how the system may be identified when referenced in electronic exchange.", 0, java.lang.Integer.MAX_VALUE, uniqueId); 1421 default: return super.getNamedProperty(_hash, _name, _checkValid); 1422 } 1423 1424 } 1425 1426 @Override 1427 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1428 switch (hash) { 1429 case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType 1430 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<PublicationStatus> 1431 case 3292052: /*kind*/ return this.kind == null ? new Base[0] : new Base[] {this.kind}; // Enumeration<NamingSystemType> 1432 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType 1433 case 1447404028: /*publisher*/ return this.publisher == null ? new Base[0] : new Base[] {this.publisher}; // StringType 1434 case 951526432: /*contact*/ return this.contact == null ? new Base[0] : this.contact.toArray(new Base[this.contact.size()]); // ContactDetail 1435 case 1847674614: /*responsible*/ return this.responsible == null ? new Base[0] : new Base[] {this.responsible}; // StringType 1436 case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept 1437 case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType 1438 case -669707736: /*useContext*/ return this.useContext == null ? new Base[0] : this.useContext.toArray(new Base[this.useContext.size()]); // UsageContext 1439 case -507075711: /*jurisdiction*/ return this.jurisdiction == null ? new Base[0] : this.jurisdiction.toArray(new Base[this.jurisdiction.size()]); // CodeableConcept 1440 case 111574433: /*usage*/ return this.usage == null ? new Base[0] : new Base[] {this.usage}; // StringType 1441 case -294460212: /*uniqueId*/ return this.uniqueId == null ? new Base[0] : this.uniqueId.toArray(new Base[this.uniqueId.size()]); // NamingSystemUniqueIdComponent 1442 default: return super.getProperty(hash, name, checkValid); 1443 } 1444 1445 } 1446 1447 @Override 1448 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1449 switch (hash) { 1450 case 3373707: // name 1451 this.name = castToString(value); // StringType 1452 return value; 1453 case -892481550: // status 1454 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 1455 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 1456 return value; 1457 case 3292052: // kind 1458 value = new NamingSystemTypeEnumFactory().fromType(castToCode(value)); 1459 this.kind = (Enumeration) value; // Enumeration<NamingSystemType> 1460 return value; 1461 case 3076014: // date 1462 this.date = castToDateTime(value); // DateTimeType 1463 return value; 1464 case 1447404028: // publisher 1465 this.publisher = castToString(value); // StringType 1466 return value; 1467 case 951526432: // contact 1468 this.getContact().add(castToContactDetail(value)); // ContactDetail 1469 return value; 1470 case 1847674614: // responsible 1471 this.responsible = castToString(value); // StringType 1472 return value; 1473 case 3575610: // type 1474 this.type = castToCodeableConcept(value); // CodeableConcept 1475 return value; 1476 case -1724546052: // description 1477 this.description = castToMarkdown(value); // MarkdownType 1478 return value; 1479 case -669707736: // useContext 1480 this.getUseContext().add(castToUsageContext(value)); // UsageContext 1481 return value; 1482 case -507075711: // jurisdiction 1483 this.getJurisdiction().add(castToCodeableConcept(value)); // CodeableConcept 1484 return value; 1485 case 111574433: // usage 1486 this.usage = castToString(value); // StringType 1487 return value; 1488 case -294460212: // uniqueId 1489 this.getUniqueId().add((NamingSystemUniqueIdComponent) value); // NamingSystemUniqueIdComponent 1490 return value; 1491 default: return super.setProperty(hash, name, value); 1492 } 1493 1494 } 1495 1496 @Override 1497 public Base setProperty(String name, Base value) throws FHIRException { 1498 if (name.equals("name")) { 1499 this.name = castToString(value); // StringType 1500 } else if (name.equals("status")) { 1501 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 1502 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 1503 } else if (name.equals("kind")) { 1504 value = new NamingSystemTypeEnumFactory().fromType(castToCode(value)); 1505 this.kind = (Enumeration) value; // Enumeration<NamingSystemType> 1506 } else if (name.equals("date")) { 1507 this.date = castToDateTime(value); // DateTimeType 1508 } else if (name.equals("publisher")) { 1509 this.publisher = castToString(value); // StringType 1510 } else if (name.equals("contact")) { 1511 this.getContact().add(castToContactDetail(value)); 1512 } else if (name.equals("responsible")) { 1513 this.responsible = castToString(value); // StringType 1514 } else if (name.equals("type")) { 1515 this.type = castToCodeableConcept(value); // CodeableConcept 1516 } else if (name.equals("description")) { 1517 this.description = castToMarkdown(value); // MarkdownType 1518 } else if (name.equals("useContext")) { 1519 this.getUseContext().add(castToUsageContext(value)); 1520 } else if (name.equals("jurisdiction")) { 1521 this.getJurisdiction().add(castToCodeableConcept(value)); 1522 } else if (name.equals("usage")) { 1523 this.usage = castToString(value); // StringType 1524 } else if (name.equals("uniqueId")) { 1525 this.getUniqueId().add((NamingSystemUniqueIdComponent) value); 1526 } else 1527 return super.setProperty(name, value); 1528 return value; 1529 } 1530 1531 @Override 1532 public Base makeProperty(int hash, String name) throws FHIRException { 1533 switch (hash) { 1534 case 3373707: return getNameElement(); 1535 case -892481550: return getStatusElement(); 1536 case 3292052: return getKindElement(); 1537 case 3076014: return getDateElement(); 1538 case 1447404028: return getPublisherElement(); 1539 case 951526432: return addContact(); 1540 case 1847674614: return getResponsibleElement(); 1541 case 3575610: return getType(); 1542 case -1724546052: return getDescriptionElement(); 1543 case -669707736: return addUseContext(); 1544 case -507075711: return addJurisdiction(); 1545 case 111574433: return getUsageElement(); 1546 case -294460212: return addUniqueId(); 1547 default: return super.makeProperty(hash, name); 1548 } 1549 1550 } 1551 1552 @Override 1553 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1554 switch (hash) { 1555 case 3373707: /*name*/ return new String[] {"string"}; 1556 case -892481550: /*status*/ return new String[] {"code"}; 1557 case 3292052: /*kind*/ return new String[] {"code"}; 1558 case 3076014: /*date*/ return new String[] {"dateTime"}; 1559 case 1447404028: /*publisher*/ return new String[] {"string"}; 1560 case 951526432: /*contact*/ return new String[] {"ContactDetail"}; 1561 case 1847674614: /*responsible*/ return new String[] {"string"}; 1562 case 3575610: /*type*/ return new String[] {"CodeableConcept"}; 1563 case -1724546052: /*description*/ return new String[] {"markdown"}; 1564 case -669707736: /*useContext*/ return new String[] {"UsageContext"}; 1565 case -507075711: /*jurisdiction*/ return new String[] {"CodeableConcept"}; 1566 case 111574433: /*usage*/ return new String[] {"string"}; 1567 case -294460212: /*uniqueId*/ return new String[] {}; 1568 default: return super.getTypesForProperty(hash, name); 1569 } 1570 1571 } 1572 1573 @Override 1574 public Base addChild(String name) throws FHIRException { 1575 if (name.equals("name")) { 1576 throw new FHIRException("Cannot call addChild on a primitive type NamingSystem.name"); 1577 } 1578 else if (name.equals("status")) { 1579 throw new FHIRException("Cannot call addChild on a primitive type NamingSystem.status"); 1580 } 1581 else if (name.equals("kind")) { 1582 throw new FHIRException("Cannot call addChild on a primitive type NamingSystem.kind"); 1583 } 1584 else if (name.equals("date")) { 1585 throw new FHIRException("Cannot call addChild on a primitive type NamingSystem.date"); 1586 } 1587 else if (name.equals("publisher")) { 1588 throw new FHIRException("Cannot call addChild on a primitive type NamingSystem.publisher"); 1589 } 1590 else if (name.equals("contact")) { 1591 return addContact(); 1592 } 1593 else if (name.equals("responsible")) { 1594 throw new FHIRException("Cannot call addChild on a primitive type NamingSystem.responsible"); 1595 } 1596 else if (name.equals("type")) { 1597 this.type = new CodeableConcept(); 1598 return this.type; 1599 } 1600 else if (name.equals("description")) { 1601 throw new FHIRException("Cannot call addChild on a primitive type NamingSystem.description"); 1602 } 1603 else if (name.equals("useContext")) { 1604 return addUseContext(); 1605 } 1606 else if (name.equals("jurisdiction")) { 1607 return addJurisdiction(); 1608 } 1609 else if (name.equals("usage")) { 1610 throw new FHIRException("Cannot call addChild on a primitive type NamingSystem.usage"); 1611 } 1612 else if (name.equals("uniqueId")) { 1613 return addUniqueId(); 1614 } 1615 else 1616 return super.addChild(name); 1617 } 1618 1619 public String fhirType() { 1620 return "NamingSystem"; 1621 1622 } 1623 1624 public NamingSystem copy() { 1625 NamingSystem dst = new NamingSystem(); 1626 copyValues(dst); 1627 dst.name = name == null ? null : name.copy(); 1628 dst.status = status == null ? null : status.copy(); 1629 dst.kind = kind == null ? null : kind.copy(); 1630 dst.date = date == null ? null : date.copy(); 1631 dst.publisher = publisher == null ? null : publisher.copy(); 1632 if (contact != null) { 1633 dst.contact = new ArrayList<ContactDetail>(); 1634 for (ContactDetail i : contact) 1635 dst.contact.add(i.copy()); 1636 }; 1637 dst.responsible = responsible == null ? null : responsible.copy(); 1638 dst.type = type == null ? null : type.copy(); 1639 dst.description = description == null ? null : description.copy(); 1640 if (useContext != null) { 1641 dst.useContext = new ArrayList<UsageContext>(); 1642 for (UsageContext i : useContext) 1643 dst.useContext.add(i.copy()); 1644 }; 1645 if (jurisdiction != null) { 1646 dst.jurisdiction = new ArrayList<CodeableConcept>(); 1647 for (CodeableConcept i : jurisdiction) 1648 dst.jurisdiction.add(i.copy()); 1649 }; 1650 dst.usage = usage == null ? null : usage.copy(); 1651 if (uniqueId != null) { 1652 dst.uniqueId = new ArrayList<NamingSystemUniqueIdComponent>(); 1653 for (NamingSystemUniqueIdComponent i : uniqueId) 1654 dst.uniqueId.add(i.copy()); 1655 }; 1656 return dst; 1657 } 1658 1659 protected NamingSystem typedCopy() { 1660 return copy(); 1661 } 1662 1663 @Override 1664 public boolean equalsDeep(Base other_) { 1665 if (!super.equalsDeep(other_)) 1666 return false; 1667 if (!(other_ instanceof NamingSystem)) 1668 return false; 1669 NamingSystem o = (NamingSystem) other_; 1670 return compareDeep(kind, o.kind, true) && compareDeep(responsible, o.responsible, true) && compareDeep(type, o.type, true) 1671 && compareDeep(usage, o.usage, true) && compareDeep(uniqueId, o.uniqueId, true); 1672 } 1673 1674 @Override 1675 public boolean equalsShallow(Base other_) { 1676 if (!super.equalsShallow(other_)) 1677 return false; 1678 if (!(other_ instanceof NamingSystem)) 1679 return false; 1680 NamingSystem o = (NamingSystem) other_; 1681 return compareValues(kind, o.kind, true) && compareValues(responsible, o.responsible, true) && compareValues(usage, o.usage, true) 1682 ; 1683 } 1684 1685 public boolean isEmpty() { 1686 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(kind, responsible, type 1687 , usage, uniqueId); 1688 } 1689 1690 @Override 1691 public ResourceType getResourceType() { 1692 return ResourceType.NamingSystem; 1693 } 1694 1695 /** 1696 * Search parameter: <b>date</b> 1697 * <p> 1698 * Description: <b>The naming system publication date</b><br> 1699 * Type: <b>date</b><br> 1700 * Path: <b>NamingSystem.date</b><br> 1701 * </p> 1702 */ 1703 @SearchParamDefinition(name="date", path="NamingSystem.date", description="The naming system publication date", type="date" ) 1704 public static final String SP_DATE = "date"; 1705 /** 1706 * <b>Fluent Client</b> search parameter constant for <b>date</b> 1707 * <p> 1708 * Description: <b>The naming system publication date</b><br> 1709 * Type: <b>date</b><br> 1710 * Path: <b>NamingSystem.date</b><br> 1711 * </p> 1712 */ 1713 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); 1714 1715 /** 1716 * Search parameter: <b>period</b> 1717 * <p> 1718 * Description: <b>When is identifier valid?</b><br> 1719 * Type: <b>date</b><br> 1720 * Path: <b>NamingSystem.uniqueId.period</b><br> 1721 * </p> 1722 */ 1723 @SearchParamDefinition(name="period", path="NamingSystem.uniqueId.period", description="When is identifier valid?", type="date" ) 1724 public static final String SP_PERIOD = "period"; 1725 /** 1726 * <b>Fluent Client</b> search parameter constant for <b>period</b> 1727 * <p> 1728 * Description: <b>When is identifier valid?</b><br> 1729 * Type: <b>date</b><br> 1730 * Path: <b>NamingSystem.uniqueId.period</b><br> 1731 * </p> 1732 */ 1733 public static final ca.uhn.fhir.rest.gclient.DateClientParam PERIOD = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_PERIOD); 1734 1735 /** 1736 * Search parameter: <b>kind</b> 1737 * <p> 1738 * Description: <b>codesystem | identifier | root</b><br> 1739 * Type: <b>token</b><br> 1740 * Path: <b>NamingSystem.kind</b><br> 1741 * </p> 1742 */ 1743 @SearchParamDefinition(name="kind", path="NamingSystem.kind", description="codesystem | identifier | root", type="token" ) 1744 public static final String SP_KIND = "kind"; 1745 /** 1746 * <b>Fluent Client</b> search parameter constant for <b>kind</b> 1747 * <p> 1748 * Description: <b>codesystem | identifier | root</b><br> 1749 * Type: <b>token</b><br> 1750 * Path: <b>NamingSystem.kind</b><br> 1751 * </p> 1752 */ 1753 public static final ca.uhn.fhir.rest.gclient.TokenClientParam KIND = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_KIND); 1754 1755 /** 1756 * Search parameter: <b>jurisdiction</b> 1757 * <p> 1758 * Description: <b>Intended jurisdiction for the naming system</b><br> 1759 * Type: <b>token</b><br> 1760 * Path: <b>NamingSystem.jurisdiction</b><br> 1761 * </p> 1762 */ 1763 @SearchParamDefinition(name="jurisdiction", path="NamingSystem.jurisdiction", description="Intended jurisdiction for the naming system", type="token" ) 1764 public static final String SP_JURISDICTION = "jurisdiction"; 1765 /** 1766 * <b>Fluent Client</b> search parameter constant for <b>jurisdiction</b> 1767 * <p> 1768 * Description: <b>Intended jurisdiction for the naming system</b><br> 1769 * Type: <b>token</b><br> 1770 * Path: <b>NamingSystem.jurisdiction</b><br> 1771 * </p> 1772 */ 1773 public static final ca.uhn.fhir.rest.gclient.TokenClientParam JURISDICTION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_JURISDICTION); 1774 1775 /** 1776 * Search parameter: <b>description</b> 1777 * <p> 1778 * Description: <b>The description of the naming system</b><br> 1779 * Type: <b>string</b><br> 1780 * Path: <b>NamingSystem.description</b><br> 1781 * </p> 1782 */ 1783 @SearchParamDefinition(name="description", path="NamingSystem.description", description="The description of the naming system", type="string" ) 1784 public static final String SP_DESCRIPTION = "description"; 1785 /** 1786 * <b>Fluent Client</b> search parameter constant for <b>description</b> 1787 * <p> 1788 * Description: <b>The description of the naming system</b><br> 1789 * Type: <b>string</b><br> 1790 * Path: <b>NamingSystem.description</b><br> 1791 * </p> 1792 */ 1793 public static final ca.uhn.fhir.rest.gclient.StringClientParam DESCRIPTION = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_DESCRIPTION); 1794 1795 /** 1796 * Search parameter: <b>type</b> 1797 * <p> 1798 * Description: <b>e.g. driver, provider, patient, bank etc.</b><br> 1799 * Type: <b>token</b><br> 1800 * Path: <b>NamingSystem.type</b><br> 1801 * </p> 1802 */ 1803 @SearchParamDefinition(name="type", path="NamingSystem.type", description="e.g. driver, provider, patient, bank etc.", type="token" ) 1804 public static final String SP_TYPE = "type"; 1805 /** 1806 * <b>Fluent Client</b> search parameter constant for <b>type</b> 1807 * <p> 1808 * Description: <b>e.g. driver, provider, patient, bank etc.</b><br> 1809 * Type: <b>token</b><br> 1810 * Path: <b>NamingSystem.type</b><br> 1811 * </p> 1812 */ 1813 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TYPE); 1814 1815 /** 1816 * Search parameter: <b>id-type</b> 1817 * <p> 1818 * Description: <b>oid | uuid | uri | other</b><br> 1819 * Type: <b>token</b><br> 1820 * Path: <b>NamingSystem.uniqueId.type</b><br> 1821 * </p> 1822 */ 1823 @SearchParamDefinition(name="id-type", path="NamingSystem.uniqueId.type", description="oid | uuid | uri | other", type="token" ) 1824 public static final String SP_ID_TYPE = "id-type"; 1825 /** 1826 * <b>Fluent Client</b> search parameter constant for <b>id-type</b> 1827 * <p> 1828 * Description: <b>oid | uuid | uri | other</b><br> 1829 * Type: <b>token</b><br> 1830 * Path: <b>NamingSystem.uniqueId.type</b><br> 1831 * </p> 1832 */ 1833 public static final ca.uhn.fhir.rest.gclient.TokenClientParam ID_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_ID_TYPE); 1834 1835 /** 1836 * Search parameter: <b>responsible</b> 1837 * <p> 1838 * Description: <b>Who maintains system namespace?</b><br> 1839 * Type: <b>string</b><br> 1840 * Path: <b>NamingSystem.responsible</b><br> 1841 * </p> 1842 */ 1843 @SearchParamDefinition(name="responsible", path="NamingSystem.responsible", description="Who maintains system namespace?", type="string" ) 1844 public static final String SP_RESPONSIBLE = "responsible"; 1845 /** 1846 * <b>Fluent Client</b> search parameter constant for <b>responsible</b> 1847 * <p> 1848 * Description: <b>Who maintains system namespace?</b><br> 1849 * Type: <b>string</b><br> 1850 * Path: <b>NamingSystem.responsible</b><br> 1851 * </p> 1852 */ 1853 public static final ca.uhn.fhir.rest.gclient.StringClientParam RESPONSIBLE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_RESPONSIBLE); 1854 1855 /** 1856 * Search parameter: <b>contact</b> 1857 * <p> 1858 * Description: <b>Name of an individual to contact</b><br> 1859 * Type: <b>string</b><br> 1860 * Path: <b>NamingSystem.contact.name</b><br> 1861 * </p> 1862 */ 1863 @SearchParamDefinition(name="contact", path="NamingSystem.contact.name", description="Name of an individual to contact", type="string" ) 1864 public static final String SP_CONTACT = "contact"; 1865 /** 1866 * <b>Fluent Client</b> search parameter constant for <b>contact</b> 1867 * <p> 1868 * Description: <b>Name of an individual to contact</b><br> 1869 * Type: <b>string</b><br> 1870 * Path: <b>NamingSystem.contact.name</b><br> 1871 * </p> 1872 */ 1873 public static final ca.uhn.fhir.rest.gclient.StringClientParam CONTACT = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_CONTACT); 1874 1875 /** 1876 * Search parameter: <b>name</b> 1877 * <p> 1878 * Description: <b>Computationally friendly name of the naming system</b><br> 1879 * Type: <b>string</b><br> 1880 * Path: <b>NamingSystem.name</b><br> 1881 * </p> 1882 */ 1883 @SearchParamDefinition(name="name", path="NamingSystem.name", description="Computationally friendly name of the naming system", type="string" ) 1884 public static final String SP_NAME = "name"; 1885 /** 1886 * <b>Fluent Client</b> search parameter constant for <b>name</b> 1887 * <p> 1888 * Description: <b>Computationally friendly name of the naming system</b><br> 1889 * Type: <b>string</b><br> 1890 * Path: <b>NamingSystem.name</b><br> 1891 * </p> 1892 */ 1893 public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_NAME); 1894 1895 /** 1896 * Search parameter: <b>publisher</b> 1897 * <p> 1898 * Description: <b>Name of the publisher of the naming system</b><br> 1899 * Type: <b>string</b><br> 1900 * Path: <b>NamingSystem.publisher</b><br> 1901 * </p> 1902 */ 1903 @SearchParamDefinition(name="publisher", path="NamingSystem.publisher", description="Name of the publisher of the naming system", type="string" ) 1904 public static final String SP_PUBLISHER = "publisher"; 1905 /** 1906 * <b>Fluent Client</b> search parameter constant for <b>publisher</b> 1907 * <p> 1908 * Description: <b>Name of the publisher of the naming system</b><br> 1909 * Type: <b>string</b><br> 1910 * Path: <b>NamingSystem.publisher</b><br> 1911 * </p> 1912 */ 1913 public static final ca.uhn.fhir.rest.gclient.StringClientParam PUBLISHER = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_PUBLISHER); 1914 1915 /** 1916 * Search parameter: <b>telecom</b> 1917 * <p> 1918 * Description: <b>Contact details for individual or organization</b><br> 1919 * Type: <b>token</b><br> 1920 * Path: <b>NamingSystem.contact.telecom</b><br> 1921 * </p> 1922 */ 1923 @SearchParamDefinition(name="telecom", path="NamingSystem.contact.telecom", description="Contact details for individual or organization", type="token" ) 1924 public static final String SP_TELECOM = "telecom"; 1925 /** 1926 * <b>Fluent Client</b> search parameter constant for <b>telecom</b> 1927 * <p> 1928 * Description: <b>Contact details for individual or organization</b><br> 1929 * Type: <b>token</b><br> 1930 * Path: <b>NamingSystem.contact.telecom</b><br> 1931 * </p> 1932 */ 1933 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TELECOM = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TELECOM); 1934 1935 /** 1936 * Search parameter: <b>value</b> 1937 * <p> 1938 * Description: <b>The unique identifier</b><br> 1939 * Type: <b>string</b><br> 1940 * Path: <b>NamingSystem.uniqueId.value</b><br> 1941 * </p> 1942 */ 1943 @SearchParamDefinition(name="value", path="NamingSystem.uniqueId.value", description="The unique identifier", type="string" ) 1944 public static final String SP_VALUE = "value"; 1945 /** 1946 * <b>Fluent Client</b> search parameter constant for <b>value</b> 1947 * <p> 1948 * Description: <b>The unique identifier</b><br> 1949 * Type: <b>string</b><br> 1950 * Path: <b>NamingSystem.uniqueId.value</b><br> 1951 * </p> 1952 */ 1953 public static final ca.uhn.fhir.rest.gclient.StringClientParam VALUE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_VALUE); 1954 1955 /** 1956 * Search parameter: <b>status</b> 1957 * <p> 1958 * Description: <b>The current status of the naming system</b><br> 1959 * Type: <b>token</b><br> 1960 * Path: <b>NamingSystem.status</b><br> 1961 * </p> 1962 */ 1963 @SearchParamDefinition(name="status", path="NamingSystem.status", description="The current status of the naming system", type="token" ) 1964 public static final String SP_STATUS = "status"; 1965 /** 1966 * <b>Fluent Client</b> search parameter constant for <b>status</b> 1967 * <p> 1968 * Description: <b>The current status of the naming system</b><br> 1969 * Type: <b>token</b><br> 1970 * Path: <b>NamingSystem.status</b><br> 1971 * </p> 1972 */ 1973 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 1974 1975 1976} 1977