Service locations are dynamically resolved by the Registry service based on tenant
and serviceName
.
The resourceful
scheme provides an abstraction of the protocol and authority part of the service location so
that resolution can be deferred.
URI Scheme Syntax
resourceful-uri = "resourceful://" service-ref path [ "?" query ] [ "#" fragment ]
service-ref = tenant "." service-name
tenant = name
service-name = name
name = 1*( ALPHA / DIGIT / "_" / "-" )
path
, query
, fragment
are as defined in URI.
Examples:
resourceful://root.identity/data/tenants?page=1&perPage=100
resourceful://piksel.geolocation/geoip
URI Scheme Semantics
Provides an abstraction of service locations to be resolved by the Registry service. The protocol is usually resolved to either http
or https
. The authority is resolved to host[:port]
. Path, query and fragment remains unchanged.
Encoding Considerations
resourceful
URIs are subject to encoding rules as defined in URI.
Security Considerations
The Registry service needs to ensure that services that handle sensitive information are resolved to a secure protocol. It cannot be guaranteed nor enforced by the scheme.