| rfc9555v4.txt | rfc9555.txt | |||
|---|---|---|---|---|
| Internet Engineering Task Force (IETF) M. Loffredo | Internet Engineering Task Force (IETF) M. Loffredo | |||
| Request for Comments: 9555 IIT-CNR/Registro.it | Request for Comments: 9555 IIT-CNR/Registro.it | |||
| Updates: 6350 R. Stepanek | Updates: 6350 R. Stepanek | |||
| Category: Standards Track Fastmail | Category: Standards Track Fastmail | |||
| ISSN: 2070-1721 April 2024 | ISSN: 2070-1721 May 2024 | |||
| JSContact: Converting from and to vCard | JSContact: Converting from and to vCard | |||
| Abstract | Abstract | |||
| This document defines how to convert contact information between the | This document defines how to convert contact information between the | |||
| JSContact and vCard data formats. It defines conversion rules for | JSContact and vCard data formats. It defines conversion rules for | |||
| every JSContact and vCard element registered at IANA at the time of | every JSContact and vCard element registered at IANA at the time of | |||
| publication. It also defines new JSContact properties as well as | publication. It also defines new JSContact properties as well as | |||
| vCard properties and parameters, to support converting arbitrary or | vCard properties and parameters, to support converting arbitrary or | |||
| skipping to change at line 712 ¶ | skipping to change at line 712 ¶ | |||
| Card object's anniversaries property (Figure 9): | Card object's anniversaries property (Figure 9): | |||
| * ANNIVERSARY (Section 6.2.6 of [RFC6350]) | * ANNIVERSARY (Section 6.2.6 of [RFC6350]) | |||
| * BDAY (Section 6.2.5 of [RFC6350]) | * BDAY (Section 6.2.5 of [RFC6350]) | |||
| * BIRTHPLACE (Section 2.1 of [RFC6474]) | * BIRTHPLACE (Section 2.1 of [RFC6474]) | |||
| * DEATHDATE (Section 2.3 of [RFC6474]) | * DEATHDATE (Section 2.3 of [RFC6474]) | |||
| * DEATHPLACE (Section 2.2 of [RFC6474]) | * DEATHPLACE (Section 2.2 of [RFC6474]) | |||
| BDAY and BIRTHPLACE convert to an Anniversary object (Section 2.8.1 | BDAY and BIRTHPLACE convert to an Anniversary object (Section 2.8.1 | |||
| of [RFC9553]) having the date and place properties set. The kind | of [RFC9553]) having the date and place properties set. The kind | |||
| poperty is set to "birth". | property is set to "birth". | |||
| DEATHDATE and DEATHPLACE convert to an Anniversary object having the | DEATHDATE and DEATHPLACE convert to an Anniversary object having the | |||
| date and place properties set. The Anniversary object's kind | date and place properties set. The Anniversary object's kind | |||
| property is set to "death". | property is set to "death". | |||
| ANNIVERSARY converts to the Anniversary object's date property. The | ANNIVERSARY converts to the Anniversary object's date property. The | |||
| Anniversary object's kind property is set to "wedding". | Anniversary object's kind property is set to "wedding". | |||
| If the BIRTHPLACE or DEATHPLACE property value is of type URI using | If the BIRTHPLACE or DEATHPLACE property value is of type URI using | |||
| the "geo:" URI scheme, then it converts to the Address object's | the "geo:" URI scheme, then it converts to the Address object's | |||
| skipping to change at line 2056 ¶ | skipping to change at line 2056 ¶ | |||
| after all other vCard properties have already been converted. The | after all other vCard properties have already been converted. The | |||
| PatchObject MUST be valid, including the restriction that an | PatchObject MUST be valid, including the restriction that an | |||
| invalid PatchObject MUST NOT be applied. | invalid PatchObject MUST NOT be applied. | |||
| Format definition: This property is defined by the following | Format definition: This property is defined by the following | |||
| notation: | notation: | |||
| jsprop = "JSPROP" jsprop-param ":" TEXT | jsprop = "JSPROP" jsprop-param ":" TEXT | |||
| jsprop-param = *( | jsprop-param = *( | |||
| ; The following are MANDATORY and MUST NOT | ; The following are REQUIRED and MUST NOT | |||
| ; occur more than once | ; occur more than once | |||
| ( ";" jsptr-param ) / ; see next section | ( ";" jsptr-param ) / ; see next section | |||
| ( ";" "VALUE" "=" "TEXT") | ( ";" "VALUE" "=" "TEXT") | |||
| ; | ; | |||
| ; The following is OPTIONAL | ; The following is OPTIONAL | |||
| ; and MAY occur more than once. | ; and MAY occur more than once. | |||
| ; | ; | |||
| (";" other-param) | (";" other-param) | |||
| ; | ; | |||
| ) | ) | |||
| skipping to change at line 2322 ¶ | skipping to change at line 2322 ¶ | |||
| Table 5: New vCard Parameter | Table 5: New vCard Parameter | |||
| 5.3. New JSContact Properties | 5.3. New JSContact Properties | |||
| IANA has added the following entries to the "JSContact Properties" | IANA has added the following entries to the "JSContact Properties" | |||
| registry. Note that the Since Version is 1.0, the Until Version is | registry. Note that the Since Version is 1.0, the Until Version is | |||
| not set, and the Change Controller is IETF for all of these | not set, and the Change Controller is IETF for all of these | |||
| properties. | properties. | |||
| +===========+=======================+=========+========+============+ | +===========+=======================+=========+========+===========+ | |||
| |Property |Property Type |Property |Intended|Reference | | |Property |Property Type |Property |Intended|Reference/ | | |||
| |Name | |Context |Usage |or | | |Name | |Context |Usage |Description| | |||
| | | | | |Description | | +===========+=======================+=========+========+===========+ | |||
| +===========+=======================+=========+========+============+ | |vCardName |String |Any |common |RFC 9555, | | |||
| |vCardName |String |Any |common |RFC 9555, | | | | |JSContact| |Section | | |||
| | | |JSContact| |Section | | | | |object | |2.15.3 | | |||
| | | |object | |2.15.3 | | +-----------+-----------------------+---------+--------+-----------+ | |||
| +-----------+-----------------------+---------+--------+------------+ | |vCardParams|String[String|String[]]|Any |common |RFC 9555, | | |||
| |vCardParams|String[String|String[]]|Any |common |RFC 9555, | | | | |JSContact| |Section | | |||
| | | |JSContact| |Section | | | | |object | |2.15.2 | | |||
| | | |object | |2.15.2 | | +-----------+-----------------------+---------+--------+-----------+ | |||
| +-----------+-----------------------+---------+--------+------------+ | |vCardProps |JCardProp[] |Card |common |RFC 9555, | | |||
| |vCardProps |JCardProp[] |Card |common |RFC 9555, | | | | | | |Section | | |||
| | | | | |Section | | | | | | |2.15.1 | | |||
| | | | | |2.15.1 | | +-----------+-----------------------+---------+--------+-----------+ | |||
| +-----------+-----------------------+---------+--------+------------+ | ||||
| Table 6: JSContact Properties Registry | Table 6: JSContact Properties Registry | |||
| 5.4. New JSContact Type | 5.4. New JSContact Type | |||
| IANA has added the following entry to the "JSContact Types" registry. | IANA has added the following entry to the "JSContact Types" registry. | |||
| Note that the Since Version is 1.0, the Until Version is not set, and | Note that the Since Version is 1.0, the Until Version is not set, and | |||
| the Change Controller is IETF for this type. | the Change Controller is IETF for this type. | |||
| +===========+================+==========================+ | +===========+================+==========================+ | |||
| | Type Name | Intended Usage | Reference or Description | | | Type Name | Intended Usage | Reference/Description | | |||
| +===========+================+==========================+ | +===========+================+==========================+ | |||
| | JCardProp | common | RFC 9555, Section 2.15.1 | | | JCardProp | common | RFC 9555, Section 2.15.1 | | |||
| +-----------+----------------+--------------------------+ | +-----------+----------------+--------------------------+ | |||
| Table 7: JSContact Types Registry | Table 7: JSContact Types Registry | |||
| 6. References | 6. References | |||
| 6.1. Normative References | 6.1. Normative References | |||
| skipping to change at line 2422 ¶ | skipping to change at line 2421 ¶ | |||
| 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | |||
| May 2017, <https://www.rfc-editor.org/info/rfc8174>. | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
| [RFC8259] Bray, T., Ed., "The JavaScript Object Notation (JSON) Data | [RFC8259] Bray, T., Ed., "The JavaScript Object Notation (JSON) Data | |||
| Interchange Format", STD 90, RFC 8259, | Interchange Format", STD 90, RFC 8259, | |||
| DOI 10.17487/RFC8259, December 2017, | DOI 10.17487/RFC8259, December 2017, | |||
| <https://www.rfc-editor.org/info/rfc8259>. | <https://www.rfc-editor.org/info/rfc8259>. | |||
| [RFC9553] Stepanek, R. and M. Loffredo, "JSContact: A JSON | [RFC9553] Stepanek, R. and M. Loffredo, "JSContact: A JSON | |||
| Representation of Contact Data", RFC 9553, | Representation of Contact Data", RFC 9553, | |||
| DOI 10.17487/RFC9553, March 2024, | DOI 10.17487/RFC9553, May 2024, | |||
| <https://www.rfc-editor.org/info/rfc9553>. | <https://www.rfc-editor.org/info/rfc9553>. | |||
| [RFC9554] Stepanek, R. and M. Loffredo, "vCard Format Extension for | [RFC9554] Stepanek, R. and M. Loffredo, "vCard Format Extensions for | |||
| JSContact", RFC 9554, DOI 10.17487/RFC9554, March 2024, | JSContact", RFC 9554, DOI 10.17487/RFC9554, May 2024, | |||
| <https://www.rfc-editor.org/info/rfc9554>. | <https://www.rfc-editor.org/info/rfc9554>. | |||
| 6.2. Informative References | 6.2. Informative References | |||
| [CLDRPersonName] | [CLDRPersonName] | |||
| Davis, M., Edberg, P., Gillam, R., Kolisnychenko, A., | Davis, M., Edberg, P., Gillam, R., Kolisnychenko, A., | |||
| McKenna, M., and other CLDR committee members, "Unicode | McKenna, M., and other CLDR committee members, "Unicode | |||
| Locale Data Markup Language (LDML) Part 8: Person Names", | Locale Data Markup Language (LDML) Part 8: Person Names", | |||
| Unicode Technical Standard #35, Version 44.1, July 2023, | Unicode Technical Standard #35, Version 44.1, July 2023, | |||
| <https://www.unicode.org/reports/tr35/ | <https://www.unicode.org/reports/tr35/ | |||
| tr35-personNames.html>. | tr35-personNames.html>. | |||
| [RFC8605] Hollenbeck, S. and R. Carney, "vCard Format Extensions: | [RFC8605] Hollenbeck, S. and R. Carney, "vCard Format Extensions: | |||
| ICANN Extensions for the Registration Data Access Protocol | ICANN Extensions for the Registration Data Access Protocol | |||
| (RDAP)", RFC 8605, DOI 10.17487/RFC8605, May 2019, | (RDAP)", RFC 8605, DOI 10.17487/RFC8605, May 2019, | |||
| <https://www.rfc-editor.org/info/rfc8605>. | <https://www.rfc-editor.org/info/rfc8605>. | |||
| [vOBJECT] Tse, R., Tam, P., and M. Douglass, "vObject | [vOBJECT] Tse, R., Tam, P., and M. Douglass, "vObject | |||
| Internationalization", Work in Progress, Internet-Draft, | Internationalization", Work in Progress, Internet-Draft, | |||
| draft-calconnect-vobject-i18n-00, 7 June 2018, | draft-calconnect-vobject-i18n-00, 8 June 2018, | |||
| <https://datatracker.ietf.org/doc/html/draft-calconnect- | <https://datatracker.ietf.org/doc/html/draft-calconnect- | |||
| vobject-i18n-00>. | vobject-i18n-00>. | |||
| Appendix A. Reverse Rules of Converting a vCard to a JSContact Card | Appendix A. Reverse Rules of Converting a vCard to a JSContact Card | |||
| Table 8 lists the relevant document sections for each JSContact type | Table 8 lists the relevant document sections for each JSContact type | |||
| and property. | and property. | |||
| +===================+=====================+=====================+ | +===================+=====================+=====================+ | |||
| | JSContact Type | Property Name | Relevant Section(s) | | | JSContact Type | Property Name | Relevant Section(s) | | |||
| End of changes. 9 change blocks. | ||||
| 26 lines changed or deleted | 25 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||