1Module::Install::DOAPChUasnegreSCeotnst:r:iFbourtmeMadotd(Pu3el)rel::DIoncsutmaelnlt:a:tDiOoAnPChangeSets::Format(3)
2
3
4
6 Module::Install::DOAPChangeSets::Format - vocabulary guide
7
9 DOAP Changesets are written in RDF - normally serialised as Turtle,
10 though other serialisations are fine. (The
11 Module::Install::DOAPChangeSets module supports any input format
12 recognised by RDF::Trine.)
13
14 This document assumes a good working knowledge of RDF and Turtle.
15
16 You would normally describe your project in a file called
17 "meta/changes.ttl" from which a changelog called "Changes" will be
18 automatically built at packaging time.
19
20 Namespaces
21 You will want to define at least the following namespaces:
22
23 @prefix : <http://usefulinc.com/ns/doap#> .
24 @prefix dc: <http://purl.org/dc/terms/> .
25 @prefix dcs: <http://ontologi.es/doap-changeset#> .
26 @prefix foaf: <http://xmlns.com/foaf/0.1/> .
27 @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
28 @prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
29
30 And you should define a namespace specific for your distribution:
31
32 @prefix my: <http://purl.org/NET/cpan-uri/dist/Example-Example/> .
33
34 Describing the Changeset Document
35 You should now give the Changeset document itself a description. At a
36 minimum, you must set the dc:subject.
37
38 <>
39 dc:title "Changes for Example-Example" ;
40 dc:subject my:project ;
41 dc:creator my:developer .
42
43 Describing the First Release of the Distribution
44 Use DOAP to describe the first version of the distribution. At the very
45 least you need to include its revision (version number):
46
47 my:v_0-01
48 a :Version ;
49 dc:issued "2007-12-20"^^xsd:date ;
50 :revision "0.01"^^xsd:string .
51
52 You would not normally list any changes against the first release, as
53 nothing has been changed.
54
55 Describing Subsequent Releases
56 For subsequent releases, you add a changeset to a release description:
57
58 my:v_0-02
59 a :Version ;
60 dc:issued "2007-12-29"^^xsd:date ;
61 :revision "0.02"^^xsd:string ;
62 rdfs:label "The 0.02nd Coming" ; ## a "title" for the release
63 dcs:changeset [
64 dcs:item
65 [ rdfs:label "Example change." ] ,
66 [ rdfs:label "Example bugfix." ; a dcs:Bugfix ] ,
67 [ rdfs:label "Example new feature." ; a dcs:Addition ] ,
68 [ rdfs:label "Example removal." ; a dcs:Removal ]
69 ] .
70
71 Describing the Distribution
72 Use DOAP to describe the distribution. At the very least you need to
73 assert that the project is a Project and provide a name for it. You
74 must also list all the releases you wish to appear in the human-
75 readable Changes file generated by the Module::Install::DOAPChangeSets
76 module. There are plenty of other properties in DOAP which you can also
77 use.
78
79 my:project
80 a :Project ;
81 :name "Example-Example" ;
82 :shortdesc "Just an example!" ;
83 :programming-language "Perl" ;
84 :created "2007-12-18"^^xsd:date ;
85 :maintainer my:developer ;
86 :homepage <http://search.cpan.example.org/dist/Example-Example/> ;
87 :bug-database <http://rt.cpan.example.org/Dist/Display.html?Queue=Example-Example> ;
88 :release my:v_0-01 , my:v_0-02 .
89
90 Describing a Developer
91 Developers should be described using FOAF. At the very least, include a
92 name. A CPAN e-mail address is also a good idea.
93
94 my:developer
95 a foaf:Person ;
96 foaf:name "Joe Bloggs" ;
97 foaf:mbox <mailto:joebloggs@cpan.example.org> ;
98 foaf:page <http://search.cpan.example.org/~joebloggs/> .
99
100 Legacy Support
101 The module has legacy support for Aaron Cope's "changefile" vocab, but
102 this is not thoroughly tested. Changelogs written in this vocab tend to
103 use DOAP incorrectly, so I discourage using this vocab.
104
106 Module::Install, Module::Install::DOAPChangeSets .
107
108 <http://www.perlrdf.org/>, <http://purl.org/NET/cpan-uri/>.
109
111 Toby Inkster <tobyink@cpan.org>.
112
114 Copyright (C) 2010-2011 by Toby Inkster
115
116 This library is free software; you can redistribute it and/or modify it
117 under the same terms as Perl itself.
118
119
120
121perl v5.30.1 202M0o-d0u1l-e3:0:Install::DOAPChangeSets::Format(3)