Difference between revisions of "Liblicense"

From Creative Commons
Jump to: navigation, search
(Attributes)
Line 38: Line 38:
 
* dc:title - The human readable name of the license.
 
* dc:title - The human readable name of the license.
 
* dc:description - Description of the license.
 
* dc:description - Description of the license.
* dc:coverage - The jurisdiction of the license.
+
* dc:coverage - The jurisdiction of the license. (country code from [http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html ISO3166])
* dc:language - The language of the license.
+
* dc:language - The language of the license. (language code under [http://www.ietf.org/rfc/rfc3066.txt RFC3066])
 
* dc:relation
 
* dc:relation
 
** hasVersion - version number
 
** hasVersion - version number
** isReplacedBy - indicates retired license
+
** isReplacedBy - indicates retired license ([http://www.ietf.org/rfc/rfc2396.txt URI])
** isBasedOn - indicates ported version
+
** isBasedOn - indicates ported version ([http://www.ietf.org/rfc/rfc2396.txt URI])
* dc:rights license - license the license is available under
+
* dc:rights license - license the license is available under ([http://www.ietf.org/rfc/rfc2396.txt URI])
* dc:type - always license
+
* dc:type - always "License"
 
* dc:creator
 
* dc:creator
 
* dc:publisher
 
* dc:publisher
* dc:identifier - URI of license
+
* dc:identifier - URI of license ([http://www.ietf.org/rfc/rfc2396.txt URI])
  
 
=== Example ===
 
=== Example ===

Revision as of 22:26, 22 June 2007


System Overview

Purpose

To provide a simple way for developers to make their applications license aware. Additionally, supplemental modules aim to provide a method for users to track licenses of files on their system. This project complements Companion File metadata specification and Tracker CC Indexing.

Architecture

System architecture.png

svg version

Config Modules

  • in_use() - returns whether or not the corresponding config system exists on the computer
  • get() - returns the current default license uri
  • set(uri) - sets the default license uri and returns 0 upon success (non-zero for errors)

I/O Modules

  • mime_types - null terminated list of handled mime-types (all indicates external storage method which works for any file)
  • read(filename) - returns the license uri for the given file (embedded license takes precedence)
  • write(filename,uri) - writes the license uri for the given file

License Files (.rdf)

Attributes

  • cc:license
    • about
    • permits
    • requires
    • prohibits
  • dc:title - The human readable name of the license.
  • dc:description - Description of the license.
  • dc:coverage - The jurisdiction of the license. (country code from ISO3166)
  • dc:language - The language of the license. (language code under RFC3066)
  • dc:relation
    • hasVersion - version number
    • isReplacedBy - indicates retired license (URI)
    • isBasedOn - indicates ported version (URI)
  • dc:rights license - license the license is available under (URI)
  • dc:type - always "License"
  • dc:creator
  • dc:publisher
  • dc:identifier - URI of license (URI)

Example

Frontends

See Desktop Integration

Timeline

6/18

  • Finalize liblicense API.

6/25

  • Write liblicense.
  • Stub config and IO modules.

7/2

  • liblicense python bindings.

7/9

  • Gconf config module.
  • Nautilus IO module.

7/16

  • Nautilus GUI frontend.
  • Gnome control panel frontend.

7/23

  • Sugar Journal backend.
  • Sugar frontend.

7/30

  • Bug hunting.
  • Frontend polishing.

8/6

8/13

8/20