Interface IIdType

All Superinterfaces:
IBase, IBaseDatatype, IElement, IPrimitiveType<String>, Serializable
All Known Implementing Classes:
IdDt

public interface IIdType extends IPrimitiveType<String>
Base interface for ID datatype.

Concrete Implementations: This interface is often returned and/or accepted by methods in HAPI's API where either IdDt (the HAPI structure ID type) or org.hl7.fhir.instance.model.IdType (the RI structure ID type) will be used, depending on which version of the strctures your application is using.

  • Method Details

    • applyTo

      void applyTo(IBaseResource theResource)
    • getBaseUrl

      Returns the server base URL if this ID contains one. For example, the base URL is the 'http://example.com/fhir' in the following ID: http://example.com/fhir/Patient/123/_history/55
    • getIdPart

      Returns only the logical ID part of this ID. For example, given the ID "http://example,.com/fhir/Patient/123/_history/456", this method would return "123".
    • getIdPartAsLong

      Returns the ID part of this ID (e.g. in the ID http://example.com/Patient/123/_history/456 this would be the part "123") parsed as a Long.
      Throws:
      NumberFormatException - If the value can't be parsed as a long
    • getResourceType

    • getValue

      Returns the value of this ID. Note that this value may be a fully qualified URL, a relative/partial URL, or a simple ID. Use getIdPart() to get just the ID portion.
      Specified by:
      getValue in interface IPrimitiveType<String>
      See Also:
    • getVersionIdPart

    • getVersionIdPartAsLong

      Returns the version ID part of this ID (e.g. in the ID http://example.com/Patient/123/_history/456 this would be the part "456") parsed as a Long.
      Throws:
      NumberFormatException - If the value can't be parsed as a long
    • hasBaseUrl

      boolean hasBaseUrl()
    • hasIdPart

      boolean hasIdPart()
      Returns true if this ID contains an actual ID part. For example, the ID part is the '123' in the following ID: http://example.com/fhir/Patient/123/_history/55
    • hasResourceType

      boolean hasResourceType()
    • hasVersionIdPart

      boolean hasVersionIdPart()
    • isAbsolute

      boolean isAbsolute()
      Returns true if this ID contains an absolute URL (in other words, a URL starting with "http://" or "https://"
    • isEmpty

      boolean isEmpty()
      Specified by:
      isEmpty in interface IBase
    • isIdPartValid

      boolean isIdPartValid()
      Returns true if the ID part of this object is valid according to the FHIR rules for valid IDs.

      The FHIR specification states: Any combination of upper or lower case ASCII letters ('A'..'Z', and 'a'..'z', numerals ('0'..'9'), '-' and '.', with a length limit of 64 characters. (This might be an integer, an un-prefixed OID, UUID or any other identifier pattern that meets these constraints.) regex: [A-Za-z0-9\-\.]{1,64}

    • isIdPartValidLong

      Returns true if the ID part of this object contains only numbers
    • isLocal

      boolean isLocal()
      Returns true if the ID is a local reference (in other words, it begins with the '#' character)
    • isVersionIdPartValidLong

      Returns true if the version ID part of this object contains only numbers
    • isUuid

      default boolean isUuid()
      Returns:
      true if the id begins with "urn:uuid:"
    • setValue

      IIdType setValue(String theString)
      Specified by:
      setValue in interface IPrimitiveType<String>
    • toUnqualified

    • toUnqualifiedVersionless

    • toVersionless

    • withResourceType

      Returns a copy of this object, but with a different resource type (or if this object does not have a resource type currently, returns a copy of this object with the given resource type).

      Note that if this object represents a local reference (e.g. #foo) or a URN (e.g. urn:oid:1.2.3.4) this method will simply return a copy of this object with no modifications.

    • withServerBase

      IIdType withServerBase(String theServerBase, String theResourceName)
      Returns a copy of this object, but with a different resource type and base URL (or if this object does not have a resource type currently, returns a copy of this object with the given server base and resource type).

      Note that if this object represents a local reference (e.g. #foo) or a URN (e.g. urn:oid:1.2.3.4) this method will simply return a copy of this object with no modifications.

    • withVersion

      IIdType withVersion(String theVersion)
      Returns a copy of this object, but with a different version ID (or if this object does not have a resource type currently, returns a copy of this object with the given version).

      Note that if this object represents a local reference (e.g. #foo) or a URN (e.g. urn:oid:1.2.3.4) this method will simply return a copy of this object with no modifications.

    • setParts

      IIdType setParts(String theBaseUrl, String theResourceType, String theIdPart, String theVersionIdPart)
      Sets the value of this ID by combining all of the individual parts.

      Required parameters: The following rules apply to the parameters of this method (in this case, populated means a non-empty string and not populated means null or an empty string)

      • All values may be not populated
      • If theVersionIdPart is populated, theResourceType and theIdPart must be populated
      • If theBaseUrl is populated and theIdPart is populated, theResourceType must be populated
      Returns:
      Returns a reference to this for easy method chaining