Did you know ... Search Documentation:
Pack vcard -- prolog/vcard.pl
PublicShow source
 contentline(-Content:pred)//
contentline = [group "."] name *(";" param) ":" value CRLF
     ; When parsing a content line, folded lines must first
     ; be unfolded according to the unfolding procedure
     ; described in Section 3.2.
     ; When generating a content line, lines longer than 75
     ; characters SHOULD be folded according to the folding
     ; procedure described in Section 3.2.

content/4 Predicate

If Group is not indicated, then an empty list is unifying.

Params is a list of codes.

Arguments:
Content- A content/4 predicate like content(Group: codes, Name: codes, Params: list, Value: codes).
 name(-Name:list)//
   name = iana-token / x-name
     ; Parsing of the param and value is based on the "name" as
     ; defined in ABNF sections below.
     ; Group and name are case-insensitive.

We do not implement the following because iana-token//1 can match them.

   name = "SOURCE" / "KIND" / "FN" / "N" / "NICKNAME"
         / "PHOTO" / "BDAY" / "ANNIVERSARY" / "GENDER" / "ADR" / "TEL"
         / "EMAIL" / "IMPP" / "LANG" / "TZ" / "GEO" / "TITLE" / "ROLE"
         / "LOGO" / "ORG" / "MEMBER" / "RELATED" / "CATEGORIES"
         / "NOTE" / "PRODID" / "REV" / "SOUND" / "UID" / "CLIENTPIDMAP"
         / "URL" / "KEY" / "FBURL" / "CALADRURI" / "CALURI" / "XML"
 param(-Param:pred)//
   param = language-param / value-param / pref-param / pid-param
         / type-param / geo-parameter / tz-parameter / sort-as-param
         / calscale-param / any-param
     ; Allowed parameters depend on property name.
Arguments:
Param- A param/2 predicate like param(Name: codes, Values: codes).

Undocumented predicates

The following predicates are exported, but not or incorrectly documented.

 vcard(Arg1, Arg2, Arg3)
 vcard_file(Arg1, Arg2)