[casual_games] implementing the new IGDA data reporting
standard...
James C. Smith
james at reflexive.net
Tue Nov 7 12:09:34 EST 2006
Isaac explained how easily the standard can be implemented. In our case it
was less than 8 man hours. I would like to explain that there is no
business case against implementing the standard. It will not force you to
share any trade secrets or give up any control of your data.
It is easy for people to get the wrong impression when they read about the
IGDA Data Reporting Standard especially if they see all the types of data
defined in the standard. Some people wrongly assume that this standard
requires you to share data you would normally keep privet, or send data to
people who wouldn't normally see it, or make data available at an interval
that you wouldn't normally sent it. None of that is true.
This standard doe not define what information is shared with people. It does
not define who you should share it with. It does not define how often or
when you should send it. It does not define what channel you should sent it
over. It is just a way to take the data you already send, and reformat it
to be machine readable so that it can be imported into databases easily. It
is up to you to decide what data to include, who to send it to, and how
often to send it. The most logical choice is to simple include it with the
royalty reports you already send. The standard talks about almost every
kinds of data you could think of related to the casual games industry. But
that doesn't mean you need to send all that data. It just means that IF you
send that data, there is a standard defined to make it easy for the
recipient to consume that data easily.
If you know anyone who is considering adopting this format, but has concerns
about some standards committee controlling their business and demanding what
they sent to whom and when, then please explain to them that there is no
such issue.
I hope the whole industry will adopt this standard quickly.
James C. Smith
Producer / Lead Programmer
Reflexive Entertainment
-----Original Message-----
From: casual_games-bounces at igda.org [mailto:casual_games-bounces at igda.org]
On Behalf Of James Gwertzman
Sent: Tuesday, November 07, 2006 2:51 AM
To: IGDA Casual Games SIG Mailing List
Cc: IGDA_DataReportingInitiative at yahoogroups.com
Subject: [casual_games] implementing the new IGDA data reporting standard...
You've all probably heard by now about the new IGDA data reporting standard
that we are working to implement across the industry. The goal of this
standard is to make it possible for business partners to report sales to
each other electronically (as opposed to using paper reports or non-standard
electronic reports which must be manually reentered into a sales database).
Several companies are now actively participating in this initiative, and
plan to begin distributing royalty reports using this new format in the next
month or two, including RealNetworks, PlayFirst, Reflexive Entertainment,
and PopCap Games. I asked the engineer at Reflexive responsible for
implementing this standard to write up a description of the work involved;
his report is below. My hope is that for anyone considering implementing the
standard, but worried about the work involved, this report will help you
realize that it's really pretty easy.
---------------------------
James Gwertzman
Director of Business Development
PopCap Games, Inc.
+1-206-256-4210
============
Reflexive Entertainment sends out monthly royalty reports in PDF format to
our developers and affiliates. Although PDF documents are portable and look
great, they are not suited for automated data transfer. This means that
hundreds of developers and affiliates must manually import our data into
their own systems, if they want to run sales reports across all their
channels. Since the IGDA Casual Games Data Reporting Initiative helps
eliminate manual entry, and therefore reduce error, we thought it would be a
great idea to implement the XML output in our own reporting system.
Integrating the XML standard into our existing reporting tools was painless.
It took about one full work day from the time I started reading the
specifications to the time our report engine was correctly spitting out data
in the new XML format. Since our reporting software already loads in all of
the data from our remote sales database in order to create the PDF files, I
didn't have to deal with retrieving or calculating the data in the code.
Therefore, the entire process for me consisted of the following:
1. Figure out which values need to be included in the XML report.
2. Create a new function that accepts sales data for an account and outputs
their values as XML.
3. Call the new function for each account.
To determine which elements to output, I referred mostly to the
"XDRI_Report.xsd" and "amazing.xml" files included in the IGDA Casual Games
Data Reporting downloadable zip file. For example, the XML schema included
optional elements for Subscription and Tournament data. Since Reflexive
does not offer subscription or tournament sales, I didn't need to write
those elements to the XML file. Determining whether an element is optional
is as simple as reading off the "minOccurs" value in the schema for that
element. If minOccurs=0, then the element is not required.
Only basic understanding of XML is required. Luckily, XML creation is well
supported in most programming languages. Our reporting software is written
in C#, which means that I was able to use an XmlTextWriter object to output
the data values as XML elements. For example, to create a new XML document
that contains the "title" value, one can write:
string ReportTitle = "Reflexive Arcade Royalty Report";
XmlTextWriter writer = new XmlTextWriter();
writer.WriteStartElement("report");
writer.WriteElementString("title", ReportTitle);
writer.WriteEndElement();
This would create the following XML:
<report>
<title>Reflexive Arcade Royalty Report</title>
</report>
Using similar commands as above, I was able to create an entire XML document
per the specs. Reflexive includes additional information in our PDF reports
than is required by the IGDA standard. However, the standard provides a way
for us to include this data as well in the XML reports through the use of
optional <note> elements. The "amazing.xml" document provides some examples
of the <note> element that we chose to implement, such as information about
game file sizes, MBytes served, download costs, phone orders, phone costs,
and e-commerce fees.
In conclusion, integrating the XML standard into our existing reporting
system was quick and straightforward. We look forward to the time when all
developers, affiliates, and publishers can share data using this standard
format.
Isaac Shepard
Senior Software Engineer
Reflexive Entertainment
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://seven.pairlist.net/pipermail/casual_games/attachments/20061107/a52368e2/attachment.html
More information about the Casual_Games
mailing list