This subclause specifies the format of the TXT record to be used in conjunction with IEEE 2030.5 DNS- SD. IEEE 2030.5 SHALL use a single TXT record format. The following table describes the supported TXT record parameters for IEEE Std 2030.5.
Table 16 —TXT record parameters
Key=Value | Example |
txtvers={#} | txtvers=1 |
dcap={relative reference to DeviceCapabilities} | dcap=/dcap |
path={relative reference to the function set} corresponding to the specified subtype name | path=/upt |
https={port } | https=443 |
level={schema extensibility level indicator} | level=-S1 |
txtvers SHALL be the first key in the TXT record. For IEEE Std 2030.5-2018, the value of the txtvers
key SHALL be 1. If it is found in a response to be other than 1, the TXT record SHALL be ignored.
The txtvers key SHALL be present with a non-empty value. Clients SHALL silently discard TXT records with txtvers keys that are not present with a non-empty value of 1.
Unknown key=value pairs in a response SHALL be ignored.
The dcap key SHALL provide the relative reference used to locate the device’s DeviceCapability resource and SHALL include the leading slash of the given path.
The dcap key SHALL be present with a non-empty value. Clients SHALL silently discard TXT records with dcap keys that are not present with a non-empty value representing the URI for the server’s DeviceCapability resource.
The path key is used in responses to subtype queries (see below) and SHALL provide the relative reference used to locate the base path of a specified function set or resource, including the leading slash (/) of the given path.
The path key SHALL be omitted in response to service name queries. The path key SHALL be present with a non-empty value representing the URI satisfying the subtype query. Clients SHALL ignore path keys included with service name query responses where the path key is supplied with no value or present with an empty value.
The https key is used to indicate whether or not the function set requires a secure (HTTP over TLS) connection. If a value is present for this key in the TXT record, a client SHOULD locate the corresponding function set or resource using a secure connection to the specified port in order to avoid a re-direct.
The https key MAY be present with no value or present with an empty value if HTTPS is supported for the query using the default port of 443. Servers supporting HTTPS using a non-default port SHALL indicate the port number by including the https key with a non-empty value representing the supported HTTPS port number. Clients SHALL use HTTP for the service if the https key is not present. Clients SHALL use HTTPS using the default port for the service if the https key is present with no value or present with an empty value. Clients SHALL use HTTPS using the port number indicated if the https key is present with a non-empty value.
The level key is used to indicate the extensibility level of the schema for the specified function set (see 5.7). The default value SHALL be the supported extensibility level of the server. If “-S[i]” is provided in the level key, the server does not support extensions to the schema. If “+S[i]” is provided in the level key, the server SHALL support either “-S[i]” or “+S[i]” as negotiated through the HTTP Accept header.
The level key SHALL be present with a non-empty value. Clients SHALL silently discard TXT records with level keys that are not present with a non-empty value representing the server’s schema level extensibility indicator.