Projects/AboutData/DOAP

From KDE TechBase
Revision as of 19:55, 18 July 2010 by Lemma (talk | contribs) (→‎KAboutLicense=)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Using DOAP for AboutData

This page contains an evaluation of the RDF-based DOAP file format for use as a storage for AboutData.

The DOAP file-format

"DOAP is a project to create an XML/RDF vocabulary to describe software projects, and in particular open source."

Data representation

KAboutData

KAboutData::appName()

The program name used internally. Example: "kedit". This property is not translated.

DOAP doesn't seem to have the notion of an internal name and would require an extension to its schema, eg.

<xdoap:internalName>Internal Application Name</xdoap:internalName>

KAboutData::productName()

Returns the application's product name, which will be used in KBugReport dialog. By default it returns appName().

While DOAP has a tag for linking to a bug tracker it doesn't allow us to specify the product and component to use for filing bugs. It would thus need to be extended, eg.

<xdoap:productName>product/component</xdoap:productName>

KAboutData::catalogName()

The translation catalog name; if null or empty, the appName will be used. You may want the catalog name to differ from program name, for example, when you want to group translations of several smaller utilities under the same catalog.

DOAP doesn't have the notion of translation catalogs and would require an extension to its schema, eg.

<xdoap:catalogName>Catalog Name</xdoap:catalogName>

KAboutData::programName()

A displayable program name string. This string should be marked for translation. Example: ki18n("KEdit").

<doap:name>Application Name</doap:name>

KAboutData::organizationDomain()

Defines the Internet domain of the organization that wrote this application. The domain is set to kde.org by default, or the domain of the homePageAddress constructor argument, if set.

AFAICT this is only used for deriving default D-Bus service names for the application. I don't think it makes a lot of sense to keep this information inside the AboutData storage.

KAboutData::programIconName()

KAboutData::programLogo()

KAboutData::version()

KAboutData::shortDescription()

KAboutData::license()

KAboutData::licenseName()

KAboutData::licenses()

KAboutData::copyrightStatement()

KAboutData::otherText()

KAboutData::homepage()

KAboutData::bugAddress()

KAboutData::authors()

KAboutData::customAuthorPlainText()

KAboutData::customAuthorRichText()

KAboutData::credits()

KAboutData::translators()

KAboutPerson

KAboutLicense

.desktop files

Packages