MeCard (QR code)

Last updated

MeCard is a data file similar to vCard but used by NTT DoCoMo in Japan in QR code format for use with Cellular Phones.

Contents

It is largely compatible with most QR-readers for smartphones. It is an easy way to share a contact with the most used fields. Usually, devices can recognize it and treat it like a contact ready to import.

MeCard is based in UTF-8 (which is ASCII compatible); the fields are separated with one semicolon (;), and the tags are separated with a colon (:). Compared to vCard, it needs very few chars due to the size limitation of QR Codes.

QRCode MeCard example using most of the format's fields QRCode MeCard John Doe full.svg
QRCode MeCard example using most of the format's fields
QR Code MeCard example containing the text MECARD:N:Doe,John;TEL:13035551212;EMAIL:john.doe@example.com;; QRCode MeCard John Doe.svg
QR Code MeCard example containing the text MECARD:N:Doe,John;TEL:13035551212;EMAIL:john.doe@example.com;;

Limitations

Compared to vCard, MeCard format only stores one single contact, a few labels, and a few data pieces to be set in a typical phonebook.

There is no place on the web that defines a standard for MeCard. It is not described by the ISO, nor is there an RFC for it. As of 2016, the page at NTT DoCoMo that originally defined the layout returns 404, and searching their web site for "MeCard" turns up only a few unrelated references. // 200 OK [

 {    "_id": "{id}",
   // When did the check-in took place? (UTC, use event.timezone for display purposes)    "access_stamp": "2012-11-26T15:44:44+01:00",
   // The UID found in the scanned QR code. Beware, guest.uid != guest.id    "guest_uid": "68vju8yxgl",
   // ACCESS_GRANTED = 0, GUEST_UNKNOWN = 1, NOT_AUTHORIZED = 2, TOO_MANY_CHECK_INS = 3    "access_status": 0,
   // The check-in point where the check-in took place    "accesspoint_id": "{check_in_point_id}",
   "event_id": "{event_id}",    "created_at": "2012-11-26T15:44:44+01:00",    "updated_at": "2012-11-26T15:44:44+01:00"
 },  {    "_id": "{id}",    "access_stamp": "2012-11-26T15:44:44+01:00",    "guest_uid": "5ch0b30mnc",    "access_status": 0,    "accesspoint_id": "{check_in_point_id}",    "event_id": "{event_id}",    "created_at": "2012-11-26T15:44:44+01:00",    "updated_at": "2012-11-26T15:44:44+01:00"  },  // ...

]POST /api/v1/{event_id}/access_controls.xml?auth_token=YOUR_API_TOKEN Content-Type: application/xml; charset=utf-8

Structure

MeCard format starts with the tag MECARD and it finishes with two semicolons (;;)

The supported tags include:

Tagi-mode compatible bar code recognition functionDescriptionExample
ADR3.0The physical delivery address. The fields divided by commas (,) denote PO box, room number, house number, city, prefecture, postal code and country, in order. (See note below.)ADR:,,123 Main St.,Springfield,IL,12345,USA;
BDAY3.08 digits for date of birth: year (4 digits), month (2 digits) and day (2 digits), in orderBDAY:19700310;
EMAIL1.0The address for electronic mail communication26T14:44:44Z"EMAIL:johndoe@hotmail.com;
N1.0A structured representation of the name of the person. When a field is divided by a comma (,), the first half is treated as the last name and the second half is treated as the first name.N:Doe,John;
NICKNAME3.0Familiar name for the object represented by this MeCardNICKNAME:Johnny;
NOTE1.0Specifies supplemental information to be set as memo in the phonebook.NOTE:I am proficient in Tiger-Crane Style,\nand I am more than proficient in the exquisite art of the Samurai sword.;
SOUND1.0Designates a text string to be set as the kana name in the phonebook. When a field is divided by a comma (,), the first half is treated as the last name and the second half is treated as the first name.
TEL1.0The canonical number string for a telephone number for telephony communicationTEL:(123) 555-5832;
TEL-AV2.0The canonical string for a videophone number communicationTEL-AV:(123) 555-5832;26T14:44:44Z"
URL3.0A URL pointing to a website that represents the person in some wayURL:{
 // Where did the check-in took place?  "accesspoint_id":    "{check_in_point_id}",
 // For which UID?  "guest_uid":         "19j38293ju",
 // When (UTC)? If you don't provide this, the server will set the access_stamp to DateTime.now  "access_stamp":      "2012-11-26T14:44:44Z"

}https://www.johndoe.com/

Note on the ADR: field: Although the original NTT DoCoMo page described the format as shown, in practice almost no QRCode apps that recognize MeCards decompose the address as a set of comma separated fields. They instead display the contents of the field directly. This indicates that, in practice, the field should be formatted according to local layout conventions.


Related Research Articles

<span class="mw-page-title-main">XML</span> Markup language by the W3C for encoding of data

Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. The World Wide Web Consortium's XML 1.0 Specification of 1998 and several other related specifications—all of them free open standards—define XML.

Mathematical Markup Language (MathML) is a mathematical markup language, an application of XML for describing mathematical notations and capturing both its structure and content, and is one of a number of mathematical markup languages. Its aim is to natively integrate mathematical formulae into World Wide Web pages and other documents. It is part of HTML5 and standardised by ISO/IEC since 2015.

<span class="mw-page-title-main">S-expression</span> Data serialization format

In computer programming, an S-expression is an expression in a like-named notation for nested list (tree-structured) data. S-expressions were invented for and popularized by the programming language Lisp, which uses them for source code as well as data.

FamilySearch GEDCOM, or simply GEDCOM, is an open file format and the de facto standard specification for storing genealogical data. It was developed by The Church of Jesus Christ of Latter-day Saints, the operators of FamilySearch, to aid in the research and sharing of genealogical information. A common usage is as a standard format for the backup and transfer of family tree data between different genealogy software and websites, most of which support importing from and exporting to GEDCOM format.

vCard, also known as VCF, is a file format standard for electronic business cards. vCards can be attached to e-mail messages, sent via Multimedia Messaging Service (MMS), on the World Wide Web, instant messaging, NFC or through QR code. They can contain name and address information, phone numbers, e-mail addresses, URLs, logos, photographs, and audio clips.

The Internet Calendaring and Scheduling Core Object Specification (iCalendar) is a media type which allows users to store and exchange calendaring and scheduling information such as events, to-dos, journal entries, and free/busy information, and together with its associated standards has been a cornerstone of the standardization and interoperability of digital calendars across different vendors. Files formatted according to the specification usually have an extension of .ics. With supporting software, such as an email reader or calendar application, recipients of an iCalendar data file can respond to the sender easily or counter-propose another meeting date/time. The file format is specified in a proposed Internet standard for calendar data exchange. The standard and file type are sometimes referred to as "iCal", which was the name of the Apple Inc. calendar program until 2012, which provides one of the implementations of the standard.

<span class="mw-page-title-main">ActionScript</span> Object-oriented programming language created for the Flash multimedia platform

ActionScript is an object-oriented programming language originally developed by Macromedia Inc.. It is influenced by HyperTalk, the scripting language for HyperCard. It is now an implementation of ECMAScript, though it originally arose as a sibling, both being influenced by HyperTalk. ActionScript code is usually converted to bytecode format by a compiler.

<span class="mw-page-title-main">QR code</span> Type of matrix barcode

A QR code is a type of two-dimensional matrix barcode, invented in 1994, by Japanese company Denso Wave for labelling automobile parts. It features black squares on a white background with fiducial markers, readable by imaging devices like cameras, and processed using Reed–Solomon error correction until the image can be appropriately interpreted. The required data is then extracted from patterns that are present in both the horizontal and the vertical components of the QR image.

IEEE 802.1Q, often referred to as Dot1q, is the networking standard that supports virtual local area networking (VLANs) on an IEEE 802.3 Ethernet network. The standard defines a system of VLAN tagging for Ethernet frames and the accompanying procedures to be used by bridges and switches in handling such frames. The standard also contains provisions for a quality-of-service prioritization scheme commonly known as IEEE 802.1p and defines the Generic Attribute Registration Protocol.

In the macOS, iOS, NeXTSTEP, and GNUstep programming frameworks, property list files are files that store serialized objects. Property list files use the filename extension .plist, and thus are often referred to as p-list files.

<span class="mw-page-title-main">Windows CardSpace</span> Discontinued identity selector app by Microsoft

Windows CardSpace is a discontinued identity selector app by Microsoft. It stores references to digital identities of the users, presenting them as visual information cards. CardSpace provides a consistent UI designed to help people to easily and securely use these identities in applications and web sites where they are accepted. Resistance to phishing attacks and adherence to Kim Cameron's "7 Laws of Identity" were goals in its design.

<span class="mw-page-title-main">Attribute (computing)</span> Metadata which defines a property

In computing, an attribute is a specification that defines a property of an object, element, or file. It may also refer to or set the specific value for a given instance of such. For clarity, attributes should more correctly be considered metadata. An attribute is frequently and generally a property of a property. However, in actual usage, the term attribute can and is often treated as equivalent to a property depending on the technology being discussed. An attribute of an object usually consists of a name and a value. For an element these can be a type and class name, while for a file these can be a name and an extension, respectively.

XAR is an open source file archiver and the archiver’s file format. It was created within the OpenDarwin project and is used in macOS X 10.5 and up for software installation routines, as well as browser extensions in Safari 5.0 and up. Xar replaced the use of gzipped pax files.

Mobile tagging is the process of providing data read from tags for display on mobile devices, commonly encoded in a two-dimensional barcode, using the camera of a camera phone as the reader device. The contents of the tag code is usually a URL for information addressed and accessible through Internet.

<span class="mw-page-title-main">EPUB</span> E-book format

EPUB is an e-book file format that uses the ".epub" file extension. The term is short for electronic publication and is sometimes stylized as ePUB. EPUB is supported by many e-readers, and compatible software is available for most smartphones, tablets, and computers. EPUB is a technical standard published by the International Digital Publishing Forum (IDPF). It became an official standard of the IDPF in September 2007, superseding the older Open eBook (OEB) standard.

<span class="mw-page-title-main">Puddletag</span> Tag editor for Unix-like operating systems

Puddletag is a graphical audio file metadata editor ("tagger") for Unix-like operating systems.

AES31 is a standard developed by the Audio Engineering Society for the interchange of digital audio projects between different systems. The primary purpose of the standard is to allow exchange of audio editing projects between digital audio workstations (DAWs). The standard is divided into three parts, the most critical of which is the project interchange format, which defines a standard for edit decision lists.

ISO/IEC 20248Automatic Identification and Data Capture Techniques – Data Structures – Digital Signature Meta Structure is an international standard specification under development by ISO/IEC JTC 1/SC 31/WG 2. This development is an extension of SANS 1368, which is the current published specification. ISO/IEC 20248 and SANS 1368 are equivalent standard specifications. SANS 1368 is a South African national standard developed by the South African Bureau of Standards.

Mecard may refer to

SafeEntry was a national check-in system which enables the logging of visitors at various locations during the COVID-19 pandemic in Singapore, allowing health authorities to track and isolate confirmed clusters. It was used in tandem with TraceTogether, the national contact tracing platform in Singapore. The system was deactivated on 9 February 2023 after authorities determined there was no longer a need for the system.