Skip to content

Commit 1946805

Browse files
committed
Changed known value 'hasName' to 'name'
1 parent d8b2f76 commit 1946805

5 files changed

+56
-56
lines changed

papers/bcr-2023-002-known-value.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ This table documents the Known Value codepoints currently assigned, but is curre
167167
| 8 | key | property | Declares the entity identified by the subject holds the private half of the public keys(s) in the object.
168168
| 9 | dereferenceVia | property | Declares the content referenced by the subject can be dereferenced using the object.
169169
| 10 | entity | property | Declares the entity referenced by the subject is specified in the object.
170-
| 11 | hasName | property | Declares the the subject is known by the name in the object. | http://xmlns.com/foaf/0.1/name
170+
| 11 | name | property | Declares the the subject is known by the name in the object. | http://xmlns.com/foaf/0.1/name
171171
| 12 | language | property | Declares the subject is written in the language of the ISO language code object. | http://www.w3.org/1999/02/22-rdf-syntax-ns#langString
172172
| 13 | issuer | property | Declares the subject's issuing entity.
173173
| 14 | holder | property | Declares the entity to which the subject has been issued.

papers/bcr-2023-006-envelope-attachment.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,12 @@ This document uses the following [Known Values](bcr-2023-002-known-value.md):
3030

3131
A Gordian Envelope is specified by the format of its subject and the assertions it MUST or MAY include. For security, Envelope definitions SHOULD reject as invalid any unexpected assertions that are not defined for the Envelope type.
3232

33-
As an example, an Envelope containing a cryptographic seed has a subject that is a byte string containing the seed. It MUST include an `'isA': Seed` assertion to declare its type. A Seed Envelope MAY also include an optional `'hasName'` assertion, an optional `'note'` assertion, and an optional `'date'` assertion:
33+
As an example, an Envelope containing a cryptographic seed has a subject that is a byte string containing the seed. It MUST include an `'isA': Seed` assertion to declare its type. A Seed Envelope MAY also include an optional `'name'` assertion, an optional `'note'` assertion, and an optional `'date'` assertion:
3434

3535
```
3636
Bytes(16) [
3737
'isA': Seed
38-
'hasName': "Dark Purple Aqua Love"
38+
'name': "Dark Purple Aqua Love"
3939
'note': "This is the note."
4040
]
4141
```
@@ -51,7 +51,7 @@ Bytes(16) [
5151
'conformsTo': "https://example.com/seed-envelope-attachment/v1"
5252
'vendor': "com.example"
5353
]
54-
'hasName': "Dark Purple Aqua Love"
54+
'name': "Dark Purple Aqua Love"
5555
'note': "This is the note."
5656
]
5757
```
@@ -81,7 +81,7 @@ Bytes(16) [
8181
'conformsTo': "https://example.com/seed-envelope-attachment/v2"
8282
'vendor': "com.example"
8383
]
84-
'hasName': "Dark Purple Aqua Love"
84+
'name': "Dark Purple Aqua Love"
8585
'note': "This is the note."
8686
]
8787
```

papers/bcr-2023-007-envelope-output-desc.md

+9-9
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ The two Known Values this protocol uses are defined in the [Known Values Registr
3030

3131
* `OutputDescriptor` (class)
3232
* `outputDescriptor` (property)
33-
* `hasName` (property)
33+
* `name` (property)
3434
* `note` (property)
3535

3636
Note the difference in case of the two known values: `OutputDescriptor` is a type (class), and `outputDescriptor`, is a predicate (property).
@@ -40,16 +40,16 @@ Note the difference in case of the two known values: `OutputDescriptor` is a typ
4040
The subject of a Bitcoin Output Descriptor Envelope is a text string containing a Bitcoin output descriptor.
4141

4242
* It MUST include an `isA: OutputDescriptor` assertion to declare its type conforming to this document.
43-
* It MAY include a `hasName` assertion, where the object MUST be a non-empty string.
43+
* It MAY include a `name` assertion, where the object MUST be a non-empty string.
4444
* It MAY include a `note` assertion, where the object MUST be a non-empty string.
4545

4646
**Example:**
4747

4848
```
4949
"wpkh([37b5eed4/84'/0'/0']xpub6BkU445MSEBXbPjD3g2c2ch6mn8yy1SXXQUM7EwjgYiq6Wt1NDwDZ45npqWcV8uQC5oi2gHuVukoCoZZyT4HKq8EpotPMqGqxdZRuapCQ23/<0;1>/*)" [
50-
isA: OutputDescriptor
51-
hasName: "Example"
52-
note: "This is the note."
50+
'isA': OutputDescriptor
51+
'name': "Example"
52+
'note': "This is the note."
5353
]
5454
```
5555

@@ -61,10 +61,10 @@ A Bitcoin Output Descriptor Envelope MAY be used as the object of an assertion w
6161

6262
```
6363
"Example" [
64-
outputDescriptor: "wpkh([37b5eed4/84'/0'/0']xpub6BkU445MSEBXbPjD3g2c2ch6mn8yy1SXXQUM7EwjgYiq6Wt1NDwDZ45npqWcV8uQC5oi2gHuVukoCoZZyT4HKq8EpotPMqGqxdZRuapCQ23/<0;1>/*)" [
65-
isA: OutputDescriptor
66-
hasName: "Example"
67-
note: "This is the note."
64+
'outputDescriptor': "wpkh([37b5eed4/84'/0'/0']xpub6BkU445MSEBXbPjD3g2c2ch6mn8yy1SXXQUM7EwjgYiq6Wt1NDwDZ45npqWcV8uQC5oi2gHuVukoCoZZyT4HKq8EpotPMqGqxdZRuapCQ23/<0;1>/*)" [
65+
'isA': OutputDescriptor
66+
'name': "Example"
67+
'note': "This is the note."
6868
]
6969
]
7070
```

papers/bcr-2023-009-envelope-seed.md

+13-13
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ The Known Values this protocol uses are defined in the [Known Values Registry](b
2121

2222
* `Seed` (class)
2323
* `isA` (property)
24-
* `hasName` (property)
24+
* `name` (property)
2525
* `note` (property)
2626
* `date` (property)
2727
* `outputDescriptor` (property)
@@ -32,7 +32,7 @@ The Known Values this protocol uses are defined in the [Known Values Registry](b
3232
An Envelope containing a cryptographic seed has a subject that is a byte string containing the seed.
3333

3434
* It MUST include an `isA: Seed` assertion to declare its type conforming to this document.
35-
* It MAY include a single `hasName` assertion, where the object MUST be a non-empty string, which MAY have been elided.
35+
* It MAY include a single `name` assertion, where the object MUST be a non-empty string, which MAY have been elided.
3636
* It MAY include a single `note` assertion, where the object MUST be a non-empty string, which MAY have been elided.
3737
* It MAY include a single `date` assertion, where the object MUST be a date conforming to [BCR-2023-008](bcr-2023-008-dcbor-date.md).
3838
* It MAY include a single `outputDescriptor` assertion, where the object MUST be a Bitcoin output descriptor conforming to [BCR-2023-007](bcr-2023-007-envelope-output-desc.md).
@@ -42,20 +42,20 @@ An Envelope containing a cryptographic seed has a subject that is a byte string
4242

4343
```
4444
Bytes(16) [
45-
isA: Seed
46-
attachment: {
45+
'isA': Seed
46+
'attachment': {
4747
"Attachment Data"
4848
} [
49-
conformsTo: "https://example.com/seed-envelope-attachment/v1"
50-
vendor: "com.example"
49+
'conformsTo': "https://example.com/seed-envelope-attachment/v1"
50+
'vendor': "com.example"
5151
]
52-
date: 2021-02-24T09:19:01Z
53-
hasName: "Dark Purple Aqua Love"
54-
note: "This is the note."
55-
outputDescriptor: "wpkh([37b5eed4/84'/0'/0']xpub6BkU445MSEBXbPjD3g2c2ch6mn8yy1SXXQUM7EwjgYiq6Wt1NDwDZ45npqWcV8uQC5oi2gHuVukoCoZZyT4HKq8EpotPMqGqxdZRuapCQ23/<0;1>/*)" [
56-
isA: OutputDescriptor
57-
hasName: "Example Descriptor"
58-
note: "This is the descriptor's note."
52+
'date': 2021-02-24T09:19:01Z
53+
'name': "Dark Purple Aqua Love"
54+
'note': "This is the note."
55+
'outputDescriptor': "wpkh([37b5eed4/84'/0'/0']xpub6BkU445MSEBXbPjD3g2c2ch6mn8yy1SXXQUM7EwjgYiq6Wt1NDwDZ45npqWcV8uQC5oi2gHuVukoCoZZyT4HKq8EpotPMqGqxdZRuapCQ23/<0;1>/*)" [
56+
'isA': OutputDescriptor
57+
'name': "Example Descriptor"
58+
'note': "This is the descriptor's note."
5959
]
6060
]
6161
```

papers/bcr-2024-004-request.md

+29-29
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ The Gordian Transport Protocol is crucial for enabling interoperability and thus
4343
* **SS Response:** Specific Share
4444
* **SV Request:** Shares
4545
* **SS Response:** All Shares
46-
46+
4747
A Request/Response system helps to reduce the complexity of these digital tasks. A user may not be able to find a specific seed or to generate a key along an appropriate derivation path without guidance. A Request/Response system provides that guidance to minimize errors and user frustration alike.
4848

4949
A Request/Response system becomes even more important as tasks are combined together for more complex projects. The [multisig self-sovereign scenario](https://github.com/BlockchainCommons/SmartCustody/blob/master/Docs/Scenario-Multisig.md) is one such example. It demonstrates how to safely secure digital assets using keys on two closely held devices. However, it is too complex for more users. A system built on Requests and Responses that told users what to do as part of an interactive process would be more likely to be successful, as is described in [Improving Multisigs with Request/Response](https://github.com/BlockchainCommons/SmartCustody/blob/master/Docs/Scenario-Multisig-RR.md).
@@ -68,7 +68,7 @@ A function to retrieve a seed looks as follows:
6868
]
6969
```
7070

71-
The numbers refer to specific functions and specific parameters. They are essentially "known values" for Envelope Expressions. These values are defined in [Format.swift](https://github.com/BlockchainCommons/BCSwiftEnvelope/blob/master/Sources/Envelope/Base/Format.swift) in the [Envelope base code](https://github.com/BlockchainCommons/BCSwiftEnvelope/tree/master/Sources/Envelope/Base).
71+
The numbers refer to specific functions and specific parameters. They are essentially "known values" for Envelope Expressions. These values are defined in [Format.swift](https://github.com/BlockchainCommons/BCSwiftEnvelope/blob/master/Sources/Envelope/Base/Format.swift) in the [Envelope base code](https://github.com/BlockchainCommons/BCSwiftEnvelope/tree/master/Sources/Envelope/Base).
7272

7373
The function call is tagged with CBOR tag #40006, which defines it as a `ur:function` and the parameter is defined with CBOR tag #40007, which defines it as a `ur:parameter`. This is represented in `envelope-cli` (and in the examples here) with "«»" for `ur:function` and "❰❱" for `ur:parameter`.
7474

@@ -122,18 +122,18 @@ The subject is the seed, while the three assertions describe the seed. The subje
122122
```
123123
Bytes(16) [
124124
'isA': 'Seed'
125-
'hasName': "Dark Purple Peck Vial"
125+
'name': "Dark Purple Peck Vial"
126126
'outputDescriptor': output-descriptor(Map)
127127
]
128128
```
129129

130-
The `isA` assertion is the required one. The others are optional.
130+
The `isA` assertion is the required one. The others are optional.
131131

132132
The output descriptor contains a map structure as described in [BCR-2023-010](https://github.com/BlockchainCommons/Research/blob/master/papers/bcr-2023-010-output-descriptor.md).
133133

134134
## 3. Gordian Transport Protocol: Wrapping a Request
135135

136-
To turn a inquiry for information into a Request requires wrapping the Expression with a `ur:request` subject.
136+
To turn a inquiry for information into a Request requires wrapping the Expression with a `ur:request` subject.
137137

138138
Creating the subject for a Request requires the following steps:
139139

@@ -184,15 +184,15 @@ request(ARID(7b33b86e)) [
184184
Digging down instead, here's what the lower-level CBOR of that Request looks like:
185185
```
186186
[
187-
187+
188188
24(40004(40012(
189189
h'7b33b86e604e3cb5ef9d1675d59c70b6ea7d1f625d062e4d14c4310f2e616cd9'
190-
))),
191-
192-
{4: 24("Seed requested by GeneraWallet with note 'Joe wants a copy of the seed'.")},
193-
190+
))),
191+
192+
{4: 24("Seed requested by GeneraWallet with note 'Joe wants a copy of the seed'.")},
193+
194194
{100: [
195-
24(40006(100)),
195+
24(40006(100)),
196196
{24(40007(200)): 24(40001(
197197
h'ffa11a8b90954fc89ae625779ca11b8f0227573a2f8b4ed85d96ddf901a72cea'
198198
))}
@@ -206,46 +206,46 @@ Here's a more detailed look at the CBOR for this `request`:
206206
/* Array of 3 */
207207
208208
[
209-
209+
210210
/* #1: request(ARID(7b33b86e)) */
211211
212212
/* CBOR tag #24 = byte string */
213213
/* CBOR tag #40004 = request */
214214
/* CBOR tag #40012 = ur:arid */
215-
215+
216216
24(40004(40012(
217217
h'7b33b86e604e3cb5ef9d1675d59c70b6ea7d1f625d062e4d14c4310f2e616cd9'
218-
))),
218+
))),
219+
219220
220-
221221
/* #2: note */
222-
222+
223223
/* map */
224224
/* Known Value #4 = note */
225225
/* CBOR tag #24 = byte string */
226-
227-
{4: 24("Seed requested by GeneraWallet with note 'Joe wants a copy of the seed'.")},
228-
226+
227+
{4: 24("Seed requested by GeneraWallet with note 'Joe wants a copy of the seed'.")},
228+
229229
/* #3: 'body': «getSeed» */
230-
230+
231231
/* map */
232232
/* Known Value #100 = body */
233-
233+
234234
/* array of 2 */
235-
235+
236236
/* CBOR tag #24 = bytestring */
237237
/* CBOR tag #40006 = ur:function */
238238
/* Function #100 = getSeed */
239-
239+
240240
/* CBOR tag #24 = bytestring */
241241
/* CBOR tag #40007 = ur:parameter */
242242
/* Parameter #200 = seedDigest */
243-
243+
244244
/* CBOR tag #24 = bytestring */
245245
/* CBOR tag #40001 = ur:digest */
246-
246+
247247
{100: [
248-
24(40006(100)),
248+
24(40006(100)),
249249
{24(40007(200)): 24(40001(
250250
h'ffa11a8b90954fc89ae625779ca11b8f0227573a2f8b4ed85d96ddf901a72cea'
251251
))}
@@ -267,7 +267,7 @@ To respond to a GTP Request:
267267
5. Add an object to the 'result' subject containing the Requested data.
268268
6. Create an assertion under the 'result' assertion that contains 'isA:' and the appropriate data type.
269269
7. Add additional assertions with any other metadata desired.
270-
270+
271271
The response to the above request thus look as follows:
272272

273273
```
@@ -285,7 +285,7 @@ Or:
285285
response(ARID(7b33b86e)) [
286286
'result': Bytes(16) [
287287
'isA': 'Seed'
288-
'hasName': "Dark Purple Peck Vial"
288+
'name': "Dark Purple Peck Vial"
289289
'outputDescriptor': output-descriptor(Map)
290290
]
291291
]
@@ -308,7 +308,7 @@ request(ARID(7b33b86e)) [
308308
response(ARID(7b33b86e)) [
309309
'result': Bytes(16) [
310310
'isA': 'Seed'
311-
'hasName': "Dark Purple Peck Vial"
311+
'name': "Dark Purple Peck Vial"
312312
'outputDescriptor': output-descriptor(Map)
313313
]
314314
]

0 commit comments

Comments
 (0)