class DhisFhirResourceId implements Serializable {

    @Nonnull
    public DhisResourceId getDhisResourceId() throws FhirRepositoryException
    {
        final DhisResourceType type = getType();

        if ( type == null )
        {
            throw new FhirRepositoryException(
                "Type of DHIS2 FHIR Resource ID has not been specified." );
        }

        return new DhisResourceId( type, getId() );
    }

    public  DhisFhirResourceId( @Nullable DhisResourceType type, @Nonnull String id, @Nullable UUID ruleId );
    public  DhisFhirResourceId( @Nonnull String id );

}