@@ -398,14 +398,16 @@ <h2 id="format">The did:orb Format</h2>
398398 </ p >
399399
400400 < pre >
401- did-orb-format = "did:orb:" cas-discovery-scheme [":" min-graph-cid]
402- ":" did-suffix [":" long-form-suffix-data]
403- cas-discovery-scheme = dht-scheme / webcas-scheme / local-scheme
401+ did-orb-format = "did:orb:" (orb-canonical-did / orb-scheme-did / unpublished-did)
402+ orb-canonical-did = min-graph-cid ":" did-suffix
403+ orb-scheme-did = (dht-scheme / webcas-scheme) ":" orb-canonical-did
404+ unpublished-did = "interim:" (web-interim-scheme / local-interim-scheme)
404405 dht-scheme = ( "ipfs" )
405406 webcas-scheme = "webcas:" reg-name
406- local-scheme = "local"
407+ web-interim-scheme = reg-name ":" did-suffix
408+ local-interim-scheme = "local" ":" did-suffix [":" long-form-suffix-data]
407409 reg-name = 1*idchar ; more constrained than [RFC3986]
408- min-graph-cid = 1 *idchar
410+ min-graph-cid = 10 *idchar ; a short 3rd segment is reserved for schemes.
409411 did-suffix = 1*idchar
410412 long-form-suffix-data = 1*idchar ; only applicable in the local-scheme
411413 </ pre >
@@ -415,6 +417,10 @@ <h2 id="format">The did:orb Format</h2>
415417 [[SIDETREE]] provides additional explanation for the < i > did-suffix</ i > and < i > long-form-suffix-data</ i > elements.
416418 </ p >
417419
420+ < pre class ="example " title ="A canonical Orb DID ">
421+ did:orb:bafkreiatkubvbkdidscmqynkyls3iqawdqvthi7e6mbky2amuw3inxsi3y:EiDyOQbbZAa3aiRzeCkV7LOx3SERjjH93EXoIM3UoN4oWg
422+ </ pre >
423+
418424 < pre class ="example " title ="An Orb DID that uses the WebCAS scheme for content discovery ">
419425 did:orb:webcas:example.com:bafkreiatkubvbkdidscmqynkyls3iqawdqvthi7e6mbky2amuw3inxsi3y:EiDyOQbbZAa3aiRzeCkV7LOx3SERjjH93EXoIM3UoN4oWg
420426 </ pre >
@@ -424,7 +430,11 @@ <h2 id="format">The did:orb Format</h2>
424430 </ pre >
425431
426432 < p class ="issue " title ="default DHT ">
427- TODO: discussion about not including a CAS discovery scheme and the possibility of a DHT profile for Orb.
433+ TODO: discussion about the possibility of a DHT profile for Orb.
434+ </ p >
435+
436+ < p class ="issue " title ="maximum scheme length ">
437+ TODO: use an appropriate length to differentiate CID from scheme.
428438 </ p >
429439 </ section >
430440
@@ -510,15 +520,15 @@ <h3>Propagation Delay and Canonical IDs</h3>
510520 This situation typically occurs when there is a need to immediately use a freshly created DID suffix that hasn't yet been propagated.
511521
512522 < pre class ="example highlight " title ="Locally known DID ">
513- did:orb:local:EiA329wd6Aj36YRmp7NGkeB5ADnVt8ARdMZMPzfXsjwTJA
523+ did:orb:interim: local:EiA329wd6Aj36YRmp7NGkeB5ADnVt8ARdMZMPzfXsjwTJA
514524 </ pre >
515525
516526 < pre class ="example highlight " title ="Long-form DID ">
517- did:orb:local:EiA329wd6Aj36YRmp7NGkeB5ADnVt8ARdMZMPzfXsjwTJA:ey...
527+ did:orb:interim: local:EiA329wd6Aj36YRmp7NGkeB5ADnVt8ARdMZMPzfXsjwTJA:ey...
518528 </ pre >
519529
520530 < pre class ="example highlight " title ="Not yet propagated DID only known to example.com ">
521- did:orb:webcas :example.com:EiA329wd6Aj36YRmp7NGkeB5ADnVt8ARdMZMPzfXsjwTJA
531+ did:orb:interim :example.com:EiA329wd6Aj36YRmp7NGkeB5ADnVt8ARdMZMPzfXsjwTJA
522532 </ pre >
523533
524534 When an Orb Server has propagation information for a resolved DID, the server includes the < i > min-graph-cid</ i > segment within the < i > canonicalId</ i >
@@ -530,6 +540,17 @@ <h3>Propagation Delay and Canonical IDs</h3>
530540 Once the CID is available, resolution responses contain the updated < i > canonicalId</ i > property.
531541 </ section >
532542
543+ < section class ="normative ">
544+ < h3 > CAS Discovery and Equivalent IDs</ h3 >
545+
546+ Orb DIDs support hints to enable a resolver to discover a CAS that is hosting the min-graph-cid in the DID string.
547+ A hint can be added to an Orb DID string by adding a < i > scheme</ i > prefix to the CID.
548+ Please see < a href ="#format "> did:orb format</ a > for more information about discovery schemes and examples.
549+ These DIDs are treated as equivalent to the canonical DID.
550+
551+ An Orb resolution response MAY contain an < i > equivalentId</ i > property that is populated with < i > orb-scheme-did</ i > format DIDs.
552+ </ section >
553+
533554 < section class ="normative ">
534555 < h3 > Discovery</ h3 >
535556
0 commit comments