wiki:ImportExportTool

Import / Export Tool

Gameplan

  • Design proper format for data
  • Create export tool for BW as part of the member app
  • Look at creating export tool (FF plugin/greasemonkey script of some kind) for CS/HC
  • Create import tool as part of signup process
  • Create import option for established profiles on BW (basic idea is to fill in information in profile where it's missing)

Data format considerations

  • we could go for one of the microformats, that would make the tool usable elsewhere too
    • I personally dislike this idea. I favour exporting to an xml format that suits us, then providing the option to convert to a microformat using an xslt [Fake51]
  • the format should cover the most important aspects of the profile
  • the format should allow for optional data, with type unspecified in the format
  • the format should include messages and comments written by the member - but NOT messages and comments written TO the member
    • the messages should be exported for good measure as the member might have good backup usage from them. However, they'll never get imported anywhere

Data format

  • <data>
    • <profile>
      • <username></username>
      • <email></email>
      • <phone>
        • <type>home/work/mobile</type>
        • <number></number>
      • </phone>
      • <name>
        • <first></first>
        • <middle></middle>
        • <last></last>
      • </name>
      • <birthdate>
        • <day></day>
        • <month></month>
        • <year></year>
      • </birthdate>
      • <gender></gender>
      • <profilesummary></profilesummary>
      • <address>
        • <street></street>
        • <postcode></postcode>
        • <city></city>
        • <county></county>
        • <state></state>
        • <country></country>
      • </address>
      • <optional>
        • <entry>
          • <fieldname></fieldname>
          • <fieldtype></fieldtype>
          • <contents></contents>
        • </entry>
      • </optional>
    • </profile>
    • <comments>
      • <comment>
        • <for>username here</for>
        • <created></created>
        • <type>positive/neutral/negative</type>
        • <locality></locality>
        • <content></content>
      • </comment>
    • </comments>
    • <messages>
      • <message>
        • <for>username</for>
        • <sent></sent>
        • <content></content>
      • </message>
    • </messages>
  • </data>