Topic: BBCard support discussion

The BBCard support that are mentioned in the What's to come topic sounds interesting. I've done some thinking :) I've looked at the vCard, and it feels like (as Rickard has mentioned) that it does not have all the functionallity that a forum needs. XML feels like a better solution.

Like this you could have settings for general forums, and then other settings for specific forums. The "code" inside the <punbb>-tags then overrule the general ones.

Comments?

<user>
  <nickname>Chacmool</nickname>
  <title>Huh!?</title>
  <email>chacmoool@spray.se</email>

  <name>David Djurbck</name>
  <firstname>David</firstname>
  <lastname>Djurbck</lastname>
  <location>Gothenburg</location>

  <url>http://chacmool.shacknet.nu</url>
  <icq>8572673</icq>
  <msn></msn>
  <aim></aim>
  <yahoo></yahoo>

  <timezone>1</timezone>
  <avatar>http://www.etek.chalmers.se/~e0mool/chacmool.jpg</avatar>
  <signature>[i]This sig is booring...[/i]</signature>
  <hidemail>0</hidemail>
  <savepass>1</savepass>
  <smileys>1</smileys>
  <images>1</images>

  <punbb>
    <style>Oxygen</style>
    <topics>30</topics>
    <posts>40</posts>
  </punbb>

  <phpbb>
    <avatar>http://www.etek.chalmers.se/~e0mool/c_phpbb.jpg</avatar>
  </phpbb>

</user>

Re: BBCard support discussion

I was thinking something like that as well. Allowing forum software specific sections like above is probably a good idea. I was planning on having the actual avatar data in the XML though (base64 encoded).

"Programming is like sex: one mistake and you have to support it for the rest of your life."

3

Re: BBCard support discussion

I don't know about re-inventing the wheel like that, though. After all, isn't the point of this "interoperatability" and not just to import/export contact data?

How about using vCard as RDF, then extend that? Like the following example:

This example shows how an RDF vCard objects can be integrated with other metadata standards and encoded with RDF. In this example, the Dublin Core Metadata Element Set [DCMES] standard is used. (Please refer to [DCMES] for namespace and encoding recommendations.)

  <?xml version="1.0"?>
  <rdf:RDF xmlns:rdf   = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
           xmlns:DC   = "http://purl.org/dc/elements/1.1/"
           xmlns:vCard = "http://www.w3.org/2001/vcard-rdf/3.0#" >

   <rdf:Description rdf:about = "http://qqqfoo.com/annual-report.html" >
    <DC:title> Annual Report 1999/2000 </DC:title>
    <DC:creator rdf:parseType="Resource">
      <vCard:FN> Corky Crystal </vCard:FN>
      <vCard:N rdf:parseType="Resource">
        <vCard:Family> Crystal </vCard:Family>
        <vCard:Given>  Corky </vCard:Given>
      </vCard:N>
      <vCard:EMAIL rdf:parseType="Resource">
        <rdf:value> corky@qqqfoo.com </rdf:value>
        <rdf:type rdf:resource="http://www.w3.org/2001/vcard-rdf/3.0#internet"/>
      </vCard:EMAIL>
    </DC:creator>
    <DC:date> 2000-10-01 </DC:date>
    <DC:subject> Company Report, Outcomes, Objectives </DC:subject>
    <DC:publisher> qqqfoo.com Pty Ltd </DC:publisher>
    <DC:rights> Copyright 2000 </DC:rights>
   </rdf:Description>
  </rdf:RDF>

From: http://www.w3.org/TR/2001/NOTE-vcard-rdf-20010222/
More about vCard: http://www.imc.org/pdi/
PHP vCard class: http://www.bitfolge.de/scripts/vcard.php

4

Re: BBCard support discussion

Rickard wrote:

I was planning on having the actual avatar data in the XML though (base64 encoded).

It can do that too:

A number of vCard properties allow for inline binary values (encoded in BASE64) or external references via a URI. These include:
PHOTO
LOGO
SOUND
KEY

In the case of binary values, we can represent the property with a "vCard:ENCODING" attribute indicating the content value ("b"). For example:

     <vCard:PHOTO vCard:ENCODING="b" vCard:TYPE="image/jpeg">
          MSJD9s99DS(S@W99329(#9....
     </vCard:PHOTO>

In the case of an external reference, RDF provides a convenient encoding with the "rdf:resource" construct. For example:

     <vCard:PHOTO vCard:TYPE="image/gif"
                  rdf:resource="http://qqqfoo.com/me.gif"/>

Re: BBCard support discussion

How exactly would you include password hashes, avatar data etc. in that?

"Programming is like sex: one mistake and you have to support it for the rest of your life."

6 (edited by Louis 2004-05-28 16:54)

Re: BBCard support discussion

Rickard wrote:

How exactly would you include password hashes, avatar data etc. in that?

Did you notice the "extended" version I posted above? It began with:

<?xml version="1.0"?>
  <rdf:RDF xmlns:rdf   = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
           xmlns:DC   = "http://purl.org/dc/elements/1.1/"
           xmlns:vCard = "http://www.w3.org/2001/vcard-rdf/3.0#" >
  </rdf:RDF>

Just swap the xmlns:DC for your own xmlns:PunBB and create your own RDF framework:

The Resource Description Framework (RDF) is a language for representing information about resources in the World Wide Web. This Primer is designed to provide the reader with the basic knowledge required to effectively use RDF. It introduces the basic concepts of RDF and describes its XML syntax. It describes how to define RDF vocabularies using the RDF Vocabulary Description Language, and gives an overview of some deployed RDF applications. It also describes the content and purpose of other RDF specification documents.

http://www.w3.org/TR/rdf-primer/

More about RDF: http://www.w3.org/RDF/
This seems to be an excellent book for our purposes: http://www.oreilly.com/catalog/pracrdf/

Re: BBCard support discussion

Having avatars and such things in the "card" takes away the whole "edit-it-by-hand"-part though. By edit I mean that you would like to have forum-specific settings in there somehow (or is it something we can survive without?).

If you want different avatars on different forums, we have a problem. Feels like a good idea to have the avatar there though, makes it much easier :)

Edit: Louis' post answered some questions there...

Re: BBCard support discussion

Louis: Then why involve VCard at all? It doesn't have a lot of fields that are of interest in a bulletin board so basically all fields will have to be extensions. Also, what I'm after is to have a "downloadable profile". You download you profile in a forum you are registered and then upload it when you register in another forum. VCard surely wasn't meant for such things. Sure, we can use RDF, but I can't see how involving VCard will help in any way.

"Programming is like sex: one mistake and you have to support it for the rest of your life."

9 (edited by Andy 2004-05-28 22:46)

Re: BBCard support discussion

I would only see any value at all in this addition to punBB if it is small... as such, I wouldn't want such a feature, but obviously some people do, but try to keep it small smile

And I agree with the idea of XML, rather than integrating VCard.

10

Re: BBCard support discussion

Rickard wrote:

Louis: Then why involve VCard at all? It doesn't have a lot of fields that are of interest in a bulletin board so basically all fields will have to be extensions. Also, what I'm after is to have a "downloadable profile". You download you profile in a forum you are registered and then upload it when you register in another forum. VCard surely wasn't meant for such things. Sure, we can use RDF, but I can't see how involving VCard will help in any way.

It depends on how the BBCards are used. I figured it should be a standardized way to transfer contact info from email clients to instant messagers (like mranda or trillian, which support plugins) to forum software -- and not just PunBB. Perhaps it's more ambitious than this feature requires. However, from a standards point of view, even having vCard formatted fields for name and email means that it SHOULD work with email clients ... the whole idea of using standards are for interoperability, so I figured we could increase PunBB's use of standards a bit more. Your choice though.

11 (edited by Louis 2004-05-30 17:13)

Re: BBCard support discussion

Examples of vCard support with Microsoft products:

You can use vCard vdf files in Outlook since 98:
http://support.microsoft.com/default.as … -us;290840

You can create contacts from vCards or even append them to your signature automatically:
http://support.microsoft.com/default.as … -us;248832

Since Internet Explorer 5, you can use vCard to auto-complete forms:
http://msdn.microsoft.com/library/en-us … /VCARD.asp

You can also grab vCard data automatically from the Profile Assistant:
http://msdn.microsoft.com/workshop/mana … istant.asp

Also, vCard is integrated with the Windows Address book, the Exchange server, Sharepoint profiles, and Longhorn contacts, including their new Tablet PC pen-optimized display. So contacts integration won't be going away anytime soon ...

Standards are definitely a good thing, use them as much as you can.

Re: BBCard support discussion

Louis wrote:

It depends on how the BBCards are used. I figured it should be a standardized way to transfer contact info from email clients to instant messagers (like mranda or trillian, which support plugins) to forum software -- and not just PunBB.

That was not my intention at all. What I had in mind was an easy way to register in many forums. I often skip registering in forums because I have to fill out forms (I hate filling out forms). BBCard was supposed to be a downloadable version of your BB profile so when you want to register in a forum, you would just upload the BBCard instead of filling out the form. The BBCard would include things such as your username, your password hash, your avatar etc.

"Programming is like sex: one mistake and you have to support it for the rest of your life."

13 (edited by Louis 2004-05-30 21:28)

Re: BBCard support discussion

Well, I didn't know that. However, having gone down this road, let's chat a bit more -- faced with all the things vCard support CAN do, why NOT do it? You don't have to implement the full vCard, you could just use it for name, email, time zone, fields that match up.

Also, you could create a separate script to generate vCard files (non-xml) from people's profiles, and add in their interests in the Comment property, adding a URL property for a link to their profile on the originating forum, or if you wanted to go farther, use X- fields for extensions to the vCard, like X-ICQ, X-MSN, X-AOL and X-YIM (Check to see if others have done this before, perhaps we can interop further)

It makes sense to me ... why re-invent the wheel? You don't even have to use XML to do it, with the X- extensions you could store it all in vCard.

There's more to vCard than you'd expect: http://www.imc.org/pdi/vcard-21.rtf

14

Re: BBCard support discussion

Also there are already two vCard classes posted at phpclasses.org, they don't just create vCard files, they parse them too:

http://iplexx.mirrors.phpclasses.org/br … /1035.html
http://iplexx.mirrors.phpclasses.org/br … /1023.html

Both are under the GPL.

15

Re: BBCard support discussion

If you don't have a login to phpclasses.org, here's the first class I mentioned:

http://www.CSpotkill.com/vcardclass-2003-03-25.tar.gz

Re: BBCard support discussion

I don't consider it reinventing the wheel. VCard is an open standard to facilitate "Personal Data Interchange". There's an important semantic difference between PDI and what I want to do with BBCard. A VCard is meant to be distributed to your contacts whereas a BBCard is highly private and should never be given out to other people than yourself.

"Programming is like sex: one mistake and you have to support it for the rest of your life."

17

Re: BBCard support discussion

Ah, but couldn't there be a way to have both the private BBCode and a public BBCode/vCard-based thing? Therefore wouldn't using a few vCard fields for both simplify things?

If you aren't interested in a public vCard-supported interface to PunBB then fine. Do BBCard how ever you like. I like the idea of having PunBB support vCard though, so perhaps I'll work on a mod for that on my own, and if/when you finalize something for BBCard, I'll integrate it with that.

Re: BBCard support discussion

Louis wrote:

Ah, but couldn't there be a way to have both the private BBCode and a public BBCode/vCard-based thing? Therefore wouldn't using a few vCard fields for both simplify things?

Not really.

Louis wrote:

If you aren't interested in a public vCard-supported interface to PunBB then fine. Do BBCard how ever you like. I like the idea of having PunBB support vCard though, so perhaps I'll work on a mod for that on my own, and if/when you finalize something for BBCard, I'll integrate it with that.

Sure, we can consider adding VCard support to user profiles. I can't say I consider it a must-have. Usually what you're after in a VCard is a persons name and e-mail, but the fact remains that most people don't want their e-mail publicly available and they don't fill in their "real name". Then what do we put in the VCard?

"Programming is like sex: one mistake and you have to support it for the rest of your life."

19

Re: BBCard support discussion

Well, you could have vCard be a profile option, perhaps, so they could disable it if they wanted.

In theory, you could add X- fields for AIM and the rest, use the time zone propery for their time zone, maybe even extend the profiles with "Real info" fields and you could load it in Outlook, or perhaps load it into Trillian with a plugin or something, to add new users from their X-AIM fields, etc. I found it rather tedious to search for people with AIM, then browse through each profile for people's screennames to add, and keep doing that for all four services.

I mentioned other ideas above  ... But I suppose it's not that big a deal.

Re: BBCard support discussion

I'm sorry, but I still don't get it. What good will a downloadable VCard do when only a percent or so will contain a e-mail adress and a real name? Also, if we add X-fields for stuff like ICQ, AIM etc, will <insert application with VCard-support here> display those fields? Outlook Express sure doesn't. What good does a field in a VCard do if no application "understands" it?

"Programming is like sex: one mistake and you have to support it for the rest of your life."

21 (edited by Simple Exploding Man 2004-05-31 19:35)

Re: BBCard support discussion

Has any major BB software implemented this?

Re: BBCard support discussion

Nope. vBulletin 3 has simple VCard support, but that's it I think.

"Programming is like sex: one mistake and you have to support it for the rest of your life."

Re: BBCard support discussion

Well, I don't want to bitch, but in that case I see no use for it, at least as a feature. Personally, I have to say I don't like it. Registering at PunBB asks for: username, e-mail and timezone, and that's it. Profiles are very much soft-dependent. Honestly, I don't see it, right now.

24 (edited by Louis 2004-06-01 04:30)

Re: BBCard support discussion

What would you be custom implementing then, for the name fields, time zone, etc?

If you're going to use RDF anyway, why not use the vCard properties just to store the username, e-mail, and timezone, then ... and leave the rest for whatever custom RDF spec you create? Or not ... but I would still lean towards using standards than ingoring them.

BTW, Jabber (an open source chat network) uses vCard XML for their profile system. And I still feel that vCard (with other profile extensions) could be a useful feature for PunBB in business contexts.

Re: BBCard support discussion

I must be missing something here. I'm either a complete idiot or I'm just misunderstanding you. Could someone please explain how using an XML:ized VCard will make things better in any way? What't the advantage?

"Programming is like sex: one mistake and you have to support it for the rest of your life."