@@ -360,7 +360,7 @@ <h2>DID Parameters</h2>
360360 Implementers as well as < a > DID method</ a > specification authors might use
361361 additional DID parameters that are not listed here. For maximum
362362 interoperability, it is RECOMMENDED that DID parameters use the DID
363- Specification Registries mechanism [[?DID-SPEC-REGISTRIES ]], to avoid collision
363+ Document Properties Extensions mechanism [[?DID-EXTENSIONS-PROPERTIES ]], to avoid collision
364364 with other uses of the same DID parameter with different semantics.
365365 </ p >
366366
@@ -497,7 +497,7 @@ <h3>DID Resolution Options</h3>
497497
498498 < p >
499499 The possible properties within this structure and their possible values SHOULD
500- be registered in the DID Specification Registries [[?DID-SPEC-REGISTRIES ]].
500+ be registered in the DID Resolution Extensions [[?DID-EXTENSIONS-RESOLUTION ]].
501501 This specification defines the following common input options:
502502 </ p >
503503
@@ -561,7 +561,7 @@ <h3>DID Resolution Metadata</h3>
561561
562562 < p >
563563 The possible properties within this structure and their possible values SHOULD
564- be registered in the DID Specification Registries [[?DID-SPEC-REGISTRIES ]]. This
564+ be registered in the DID Resolution Extensions [[?DID-EXTENSIONS-RESOLUTION ]]. This
565565 specification defines the following common metadata properties:
566566 </ p >
567567
@@ -584,7 +584,7 @@ <h3>DID Resolution Metadata</h3>
584584 An error data structure defined in [[RFC9457]]. This property is REQUIRED when there is an error
585585 in the resolution process. The errors defined by this specification and can be found in
586586 Section < a href ="#errors "> </ a > .
587- Additional errors SHOULD be registered in the DID Specification Registries [[?DID-SPEC-REGISTRIES ]].
587+ Additional errors SHOULD be registered in the DID Resolution Extensions [[?DID-EXTENSIONS-RESOLUTION ]].
588588 </ dd >
589589
590590 < dt >
@@ -599,8 +599,8 @@ <h3>DID Resolution Metadata</h3>
599599 < p >
600600 < a > DID resolution</ a > metadata MAY include a < code > proof</ code > property.
601601 If present, the value MUST be a < a
602- data-cite ="INFRA#ordered-set "> set</ a > where each item is a
603- < a data-cite ="INFRA#map "> map</ a > that contains a proof. The use of this property
602+ data-cite ="INFRA#sets "> set</ a > where each item is a
603+ < a data-cite ="INFRA#maps "> map</ a > that contains a proof. The use of this property
604604 and the types of proofs are < a > DID method</ a > -independent.
605605 </ p >
606606 </ dd >
@@ -625,7 +625,7 @@ <h3>DID Document Metadata</h3>
625625
626626 < p >
627627 The possible properties within this structure and their possible values SHOULD
628- be registered in the DID Specification Registries [[?DID-SPEC-REGISTRIES ]].
628+ be registered in the DID Document Properties Extensions [[?DID-EXTENSIONS-PROPERTIES ]].
629629 This specification defines the following common metadata properties.
630630 </ p >
631631
@@ -700,7 +700,7 @@ <h3>DID Document Metadata</h3>
700700 < p >
701701 < a > DID document</ a > metadata MAY include an < code > equivalentId</ code > property.
702702 If present, the value MUST be a < a
703- data-cite ="INFRA#ordered-set "> set</ a > where each item is a
703+ data-cite ="INFRA#sets "> set</ a > where each item is a
704704 < a data-cite ="INFRA#string "> string</ a > that conforms to the rules in Section < a
705705 data-cite ="did-core#did-syntax "> </ a > . The relationship is a statement that each
706706 < code > < a > equivalentId</ a > </ code > value is logically equivalent to the
@@ -800,8 +800,8 @@ <h3>DID Document Metadata</h3>
800800 < p >
801801 < a > DID document</ a > metadata MAY include a < code > proof</ code > property.
802802 If present, the value MUST be a < a
803- data-cite ="INFRA#ordered-set "> set</ a > where each item is a
804- < a data-cite ="INFRA#map "> map</ a > that contains a proof. The use of this property
803+ data-cite ="INFRA#sets "> set</ a > where each item is a
804+ < a data-cite ="INFRA#maps "> map</ a > that contains a proof. The use of this property
805805 and the types of proofs are < a > DID method</ a > -specific.
806806 </ p >
807807 </ dd >
@@ -1081,7 +1081,7 @@ <h3>DID URL Dereferencing Options</h3>
10811081
10821082 < p >
10831083 The possible properties within this structure and their possible values SHOULD
1084- be registered in the DID Specification Registries [[?DID-SPEC-REGISTRIES ]].
1084+ be registered in the DID Resolution Extensions [[?DID-EXTENSIONS-RESOLUTION ]].
10851085 This specification defines the following common input options:
10861086 </ p >
10871087
@@ -1121,7 +1121,7 @@ <h3>DID URL Dereferencing Metadata</h3>
11211121
11221122 < p >
11231123 The possible properties within this structure and their possible values SHOULD
1124- be registered in the DID Specification Registries [[?DID-SPEC-REGISTRIES ]]. This
1124+ be registered in the DID Resolution Extensions [[?DID-EXTENSIONS-RESOLUTION ]]. This
11251125 specification defines the following common metadata properties:
11261126 </ p >
11271127
@@ -1141,7 +1141,7 @@ <h3>DID URL Dereferencing Metadata</h3>
11411141 An error data structure defined in [[RFC9457]]. This property is REQUIRED when
11421142 there is an error in the dereferencing process. The errors defined in this
11431143 specification can be found in Section < a href ="#errors "> </ a > .
1144- Additional errors SHOULD be registered in the DID Specification Registries [[?DID-SPEC-REGISTRIES ]].
1144+ Additional errors SHOULD be registered in the DID Resolution Extensions [[?DID-EXTENSIONS-RESOLUTION ]].
11451145 </ dd >
11461146
11471147 < dt >
@@ -1156,8 +1156,8 @@ <h3>DID URL Dereferencing Metadata</h3>
11561156 < p >
11571157 < a > DID URL dereferencing</ a > metadata MAY include a < code > proof</ code > property.
11581158 If present, the value MUST be a < a
1159- data-cite ="INFRA#ordered-set "> set</ a > where each item is a
1160- < a data-cite ="INFRA#map "> map</ a > that contains a proof. The use of this property
1159+ data-cite ="INFRA#sets "> set</ a > where each item is a
1160+ < a data-cite ="INFRA#maps "> map</ a > that contains a proof. The use of this property
11611161 and the types of proofs are < a > DID method</ a > -independent.
11621162 </ p >
11631163 </ dd >
@@ -1173,7 +1173,7 @@ <h3>DID URL Content Metadata</h3>
11731173
11741174 < p >
11751175 The possible properties within this structure and their possible values SHOULD
1176- be registered in the DID Specification Registries [[?DID-SPEC-REGISTRIES ]]. This
1176+ be registered in the DID Resolution Extensions [[?DID-EXTENSIONS-RESOLUTION ]]. This
11771177 specification defines no common properties.
11781178 </ p >
11791179 </ section >
@@ -1264,7 +1264,7 @@ <h2>Dereferencing the Resource</h2>
12641264 is a < a data-cite ="INFRA#string "> string</ a > , add this value to a list of
12651265 < var > selected < a > service endpoint</ a > URLs</ var > .</ li >
12661266 < li > If the value of the < code > serviceEndpoint</ code > property of the < var > selected < a > service</ a > </ var >
1267- is a < a data-cite ="INFRA#ordered-set "> set</ a > , add all its items that are < a data-cite ="INFRA#string "> strings</ a >
1267+ is a < a data-cite ="INFRA#sets "> set</ a > , add all its items that are < a data-cite ="INFRA#string "> strings</ a >
12681268 to a list of < var > selected < a > service endpoint</ a > URLs</ var > .</ li >
12691269 </ ol >
12701270 </ li >
@@ -1508,22 +1508,49 @@ <h2>Metadata Structure</h2>
15081508 used to communicate this metadata MUST be a < a data-cite ="INFRA#maps "> map</ a >
15091509 of properties. Each property name MUST be a < a
15101510 data-cite ="INFRA#string "> string</ a > . Each property value MUST be a < a
1511- data-cite ="INFRA#string "> string</ a > , < a data-cite ="INFRA#maps "> map</ a > , < a
1512- data-cite ="INFRA#list "> list</ a > , < a data-cite ="INFRA#ordered-set "> set</ a > ,
1511+ data-cite ="INFRA#string "> string</ a > , < a data-cite ="INFRA#numbers "> number</ a > ,
1512+ < a data-cite ="INFRA#maps "> map</ a > , < a data-cite ="INFRA#lists "> list</ a > ,
1513+ < a data-cite ="INFRA#sets "> set</ a > ,
15131514 < a data-cite ="INFRA#boolean "> boolean</ a > , or
15141515 < a data-cite ="INFRA#nulls "> null</ a > . The values within any complex data
1515- structures such as maps and lists MUST be one of these data types as well.
1516- All metadata property definitions registered in the DID Specification
1517- Registries [[?DID-SPEC-REGISTRIES ]] MUST define the value type, including any
1516+ structure such as a map or list MUST be one of these data types as well.
1517+ All metadata property definitions registered in the DID Resolution Extensions
1518+ [[?DID-EXTENSIONS-RESOLUTION ]] MUST define the value type, including any
15181519 additional formats or restrictions to that value (for example, a string
1519- formatted as a date or as a decimal integer ). It is RECOMMENDED that property
1520+ formatted as a date). It is RECOMMENDED that property
15201521 definitions use strings for values. The entire metadata structure MUST be
15211522 serializable according to the < a
15221523 data-cite ="INFRA#serialize-an-infra-value-to-json-bytes "> JSON
15231524 serialization rules</ a > in the [[INFRA]] specification. Implementations MAY
15241525 serialize the metadata structure to other data formats.
15251526 </ p >
15261527
1528+ < aside class ="note ">
1529+ < p >
1530+ Numeric representations vary across platforms and serializations
1531+ (for example, IEEE-754 floating-point vs. fixed-width integers vs.
1532+ “bigint”/bignum types). The
1533+ < a data-cite ="INFRA#numbers "> Infra</ a > standard does not yet provide
1534+ comprehensive guidance for numbers. Implementers are advised to avoid
1535+ metadata numbers that are likely to be represented differently on
1536+ different platforms — notably the following:
1537+ </ p >
1538+ < ul >
1539+ < li > non-integer values such as floating-point numbers or fractions</ li >
1540+ < li > integers outside common fixed-width ranges, such as those larger
1541+ than a 32-bit unsigned integer (maximum < code > 2< sup > 32</ sup > - 1</ code >
1542+ or < code > 4,294,967,295</ code > )</ li >
1543+ </ ul >
1544+ < p >
1545+ Where such values are needed for interoperability,
1546+ a good practice for property is definitions to use
1547+ a canonical < strong > string</ strong > serialization (for example, a
1548+ string formatted as a floating-point number using a clearly defined
1549+ precision and rounding strategy) and to document any expected
1550+ range or format.
1551+ </ p >
1552+ </ aside >
1553+
15271554 < p >
15281555 All implementations of functions that use metadata structures as either input or
15291556 output are able to fully represent all data types described here in a
@@ -1542,7 +1569,7 @@ <h2>Metadata Structure</h2>
15421569 < pre class ="example "
15431570 title ="JSON-encoded DID resolution input metadata example ">
15441571{
1545- "accept": "application/did+ld+json "
1572+ "accept": "application/did"
15461573}
15471574 </ pre >
15481575
@@ -1553,7 +1580,7 @@ <h2>Metadata Structure</h2>
15531580 < pre class ="example "
15541581 title ="DID resolution input metadata example ">
15551582«[
1556- "accept" → "application/did+ld+json "
1583+ "accept" → "application/did"
15571584]»
15581585 </ pre >
15591586
@@ -1977,7 +2004,7 @@ <h2>Example</h2>
19772004 }]
19782005 },
19792006 "didResolutionMetadata": {
1980- "contentType": "application/did+ld+json ",
2007+ "contentType": "application/did",
19812008 "retrieved": "2024-06-01T19:73:24Z",
19822009 },
19832010 "didDocumentMetadata": {
@@ -2057,7 +2084,7 @@ <h2>Example</h2>
20572084 }]
20582085 },
20592086 "didUrlDereferencingMetadata": {
2060- "contentType": "application/did+ld+json ",
2087+ "contentType": "application/did",
20612088 "retrieved": "2024-06-01T19:73:24Z",
20622089 },
20632090 "contentMetadata": {
@@ -2229,7 +2256,7 @@ <h2>HTTP(S) Binding</h2>
22292256 < ol class ="algorithm ">
22302257 < li > Append the < var > input < a > DID</ a > </ var > to the < var > request HTTP(S) URL</ var > .
22312258 < pre class ="example nohighlight "> https://resolver.example/1.0/identifiers/did:example:1234</ pre > </ li >
2232- < li > Set the < code > Accept</ code > < var > HTTP request header</ var > to `application/did-resolution" `
2259+ < li > Set the < code > Accept</ code > < var > HTTP request header</ var > to `application/did-resolution`
22332260 in order to request a complete < a href ="#did-resolution-result "> </ a > , OR</ li >
22342261 < li > set the < code > Accept</ code > < var > HTTP request header</ var > to the value of the < b > accept</ b > < var > resolution option</ var > .</ li >
22352262 < li > If any other < var > resolution options</ var > are provided:
@@ -2247,7 +2274,7 @@ <h2>HTTP(S) Binding</h2>
22472274 < ol class ="algorithm ">
22482275 < li > Append the < var > input < a > DID URL</ a > </ var > to the < var > request HTTP(S) URL</ var > .
22492276 < pre class ="example nohighlight "> https://resolver.example/1.0/identifiers/did:example:1234?service=files&relativeRef=/resume.pdf</ pre > </ li >
2250- < li > Set the < code > Accept</ code > < var > HTTP request header</ var > to `application/did-url-dereferencing" `
2277+ < li > Set the < code > Accept</ code > < var > HTTP request header</ var > to `application/did-url-dereferencing`
22512278 in order to request a complete < a href ="#did-url-dereferencing-result "> </ a > , OR</ li >
22522279 < li > set the < code > Accept</ code > < var > HTTP request header</ var > to the value of the < b > accept</ b > < var > dereferencing option</ var > .</ li >
22532280 < li > If any other < var > dereferencing options</ var > are provided:
@@ -2395,7 +2422,7 @@ <h2>HTTP(S) Binding</h2>
23952422 </ li >
23962423 < li > For the < a > DID resolution</ a > function:
23972424 < ol class ="algorithm ">
2398- < li > If the value of the < code > Content-Type</ code > < var > HTTP response header</ var > is `application/did-resolution" `:
2425+ < li > If the value of the < code > Content-Type</ code > < var > HTTP response header</ var > is `application/did-resolution`:
23992426 < ol class ="algorithm ">
24002427 < li > The < var > HTTP body</ var > MUST contain a < a > DID resolution result</ a > (see < a href ="#did-resolution-result "> </ a > ) that
24012428 is the result of the < a > DID resolution</ a > function.</ li >
@@ -2414,7 +2441,7 @@ <h2>HTTP(S) Binding</h2>
24142441 </ li >
24152442 < li > For the < a > DID URL dereferencing</ a > function:
24162443 < ol class ="algorithm ">
2417- < li > If the value of the < code > Content-Type</ code > < var > HTTP response header</ var > is `application/did-url-dereferencing" `:
2444+ < li > If the value of the < code > Content-Type</ code > < var > HTTP response header</ var > is `application/did-url-dereferencing`:
24182445 < ol class ="algorithm ">
24192446 < li > The < var > HTTP body</ var > MUST contain a < a > DID URL dereferencing result</ a > (see < a href ="#did-url-dereferencing-result "> </ a > ) that
24202447 is the result of the < a > DID URL dereferencing</ a > function.</ li >
0 commit comments