Commits

Toby Inkster committed daec71d

preparing for 0.104

Comments (0)

Files changed (19)

Changes

-############################################################################
-## Changes #################################################################
-############################################################################
-
-HTML-HTML5-Writer
-=================
-
-Created:      2010-05-02
-Home page:    <http://search.cpan.org/dist/HTML-HTML5-Writer/>
-Bug tracker:  <http://rt.cpan.org/Dist/Display.html?Queue=HTML-HTML5-Writer>
-Maintainer:   Toby Inkster <mailto:tobyink@cpan.org>
-
-0.102 [2011-03-29]
- - (Bugfix) Prevent elements from being output with duplicate attributes.
-
-0.101 [2011-01-20]
- - (Addition) More DOCTYPE_* constants are now available.
- - (Update) Add support for <track> element.
-
-0.100 [2010-06-23]
- - (Bugfix) Document 'charset' option properly.
-
-0.04 [2010-05-21]
- - (Bugfix) Handle <script> and <style> elements even better.
- - (Bugfix) Include the 'x' in hexadecimal numeric character references.
- - (Bugfix) Use XML predefined entities for &, <, etc.
-
-0.03 [2010-05-19]
- - (Bugfix) Don't usually need to entity-encode tab characters!
- - (Bugfix) Handle <script> and <style> elements better.
-
-0.02 [2010-05-04] # Star Wars Day!
- - Improve documentation.
- - (Bugfix) Makefile.PL should specify that we need common::sense.
-
-0.01 [2010-05-02] # First release
-

Changes.ttl

-#############################################################
-
-@prefix :        <http://usefulinc.com/ns/doap#> .
-@prefix dcs:     <http://ontologi.es/doap-changeset#> .
-@prefix dc:      <http://purl.org/dc/terms/> .
-@prefix foaf:    <http://xmlns.com/foaf/0.1/> .
-@prefix my:      <http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/> .
-@prefix rdfs:    <http://www.w3.org/2000/01/rdf-schema#> .
-@prefix toby:    <http://tobyinkster.co.uk/#> .
-@prefix xsd:     <http://www.w3.org/2001/XMLSchema#> .
-
-#############################################################
-
-<>
-
-	dc:title         "Changes"@en ;
-	dc:description   "Revision history for Perl extension HTML::HTML5::Writer."@en ;
-	dc:subject       my:project ;
-	dc:creator       toby:i .
-
-#############################################################
-
-my:v_0-01
-
-	a               :Version ;
-	dc:issued       "2010-05-02"^^xsd:date ;
-	:revision       "0.01"^^xsd:string ;
-	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.01.tar.gz> ;
-	rdfs:label      "First release"@en .
-
-my:v_0-02
-
-	a               :Version ;
-	dc:issued       "2010-05-04"^^xsd:date ;
-	:revision       "0.02"^^xsd:string ;
-	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.02.tar.gz> ;
-	rdfs:label      "Star Wars Day!"@en ;
-	dcs:changeset [
-		dcs:versus my:v_0-01 ;
-		dcs:item [ rdfs:label "Makefile.PL should specify that we need common::sense."@en ; a dcs:Bugfix ] ;
-		dcs:item [ rdfs:label "Improve documentation."@en  ]
-		] .
-
-my:v_0-03
-
-	a               :Version ;
-	dc:issued       "2010-05-19"^^xsd:date ;
-	:revision       "0.03"^^xsd:string ;
-	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.03.tar.gz> ;
-	dcs:changeset [
-		dcs:versus my:v_0-02 ;
-		dcs:item [ rdfs:label "Handle <script> and <style> elements better."@en ; a dcs:Bugfix ] ;
-		dcs:item [ rdfs:label "Don't usually need to entity-encode tab characters!"@en ; a dcs:Bugfix ]
-		] .
-
-my:v_0-04
-
-	a               :Version ;
-	dc:issued       "2010-05-21"^^xsd:date ;
-	:revision       "0.04"^^xsd:string ;
-	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.04.tar.gz> ;
-	dcs:changeset [
-		dcs:versus my:v_0-03 ;
-		dcs:item [ rdfs:label "Handle <script> and <style> elements even better."@en ; a dcs:Bugfix ] ;
-		dcs:item [ rdfs:label "Use XML predefined entities for &, <, etc."@en ; a dcs:Bugfix ] ;
-		dcs:item [ rdfs:label "Include the 'x' in hexadecimal numeric character references."@en ; a dcs:Bugfix ]
-		] .
-
-my:v_0-100
-
-	a               :Version ;
-	dc:issued       "2010-06-23"^^xsd:date ;
-	:revision       "0.100"^^xsd:string ;
-	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.100.tar.gz> ;
-	dcs:changeset [
-		dcs:versus my:v_0-04 ;
-		dcs:item [ rdfs:label "Document 'charset' option properly."@en ; a dcs:Bugfix ]
-		] .
-
-my:v_0-101
-
-	a               :Version ;
-	dc:issued       "2011-01-20"^^xsd:date ;
-	:revision       "0.101"^^xsd:string ;
-	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.101.tar.gz> ;
-	dcs:changeset [
-		dcs:versus my:v_0-100 ;
-		dcs:item [ rdfs:label "More DOCTYPE_* constants are now available."@en ; a dcs:Addition ] ;
-		dcs:item [ rdfs:label "Add support for <track> element."@en ; a dcs:Update ]
-		] .
-
-my:v_0-102
-
-	a               :Version ;
-	dc:issued       "2011-03-29"^^xsd:date ;
-	:revision       "0.102"^^xsd:string ;
-	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.102.tar.gz> ;
-	dcs:changeset [
-		dcs:versus my:v_0-101 ;
-		dcs:item [ rdfs:label "Prevent elements from being output with duplicate attributes."@en ; a dcs:Bugfix ; rdfs:comment "Caused by interaction with HTML5 parser."@en ]
-		] .
-		
-#############################################################
-
-my:project
-
-	a               :Project ;
-	:name           "HTML-HTML5-Writer" ;
-	:shortdesc      "output a DOM as HTML5"@en ;
-	:programming-language  "Perl" ;
-	:homepage       <https://metacpan.org/release/HTML-HTML5-Writer> ;
-	:download-page  <https://metacpan.org/release/HTML-HTML5-Writer> ;
-	:bug-database   <http://rt.cpan.org/Dist/Display.html?Queue=HTML-HTML5-Writer> ;
-	:repository     [ a :SVNRepository ; :browse <http://goddamn.co.uk/svn-web/perlmods/browse/HTML-HTML5-Writer/> ] ;
-	:maintainer     toby:i ;
-	:developer      toby:i ;
-	:documenter     toby:i ;
-	:tester         toby:i ;
-	:created        "2010-05-02"^^xsd:date ;
-	:license        <http://dev.perl.org/licenses/> ;
-	:release        my:v_0-01 , my:v_0-02 , my:v_0-03 , my:v_0-04 ,
-	                my:v_0-100 , my:v_0-101 , my:v_0-102 .
-
-#############################################################
-
-toby:i
-
-	a               foaf:Person ;
-	foaf:name       "Toby Inkster" ;
-	foaf:homepage   <http://tobyinkster.co.uk/> ;
-	foaf:page       <https://metacpan.org/author/TOBYINK> ;
-	foaf:mbox       <mailto:tobyink@cpan.org> ;
-	<http://www.w3.org/2002/07/owl#sameAs> <http://purl.org/NET/cpan-uri/person/tobyink>.
-
-#############################################################

Changes.xml

-<?xml version="1.0" encoding="utf-8"?>
-<rdf:RDF xmlns:dbug="http://ontologi.es/doap-bugs#" xmlns:dc="http://purl.org/dc/terms/" xmlns:dcs="http://ontologi.es/doap-changeset#" xmlns:doap="http://usefulinc.com/ns/doap#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r0">
-	<dcs:item rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r1"/>
-	<dcs:item rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r2"/>
-	<dcs:versus rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-01"/>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r1">
-	<rdf:type rdf:resource="http://ontologi.es/doap-changeset#Bugfix"/>
-	<rdfs:label xml:lang="en">Makefile.PL should specify that we need common::sense.</rdfs:label>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r10">
-	<dcs:item rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r11"/>
-	<dcs:versus rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-04"/>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r11">
-	<rdf:type rdf:resource="http://ontologi.es/doap-changeset#Bugfix"/>
-	<rdfs:label xml:lang="en">Document 'charset' option properly.</rdfs:label>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r12">
-	<dcs:item rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r13"/>
-	<dcs:item rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r14"/>
-	<dcs:versus rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-100"/>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r13">
-	<rdf:type rdf:resource="http://ontologi.es/doap-changeset#Addition"/>
-	<rdfs:label xml:lang="en">More DOCTYPE_* constants are now available.</rdfs:label>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r14">
-	<rdf:type rdf:resource="http://ontologi.es/doap-changeset#Update"/>
-	<rdfs:label xml:lang="en">Add support for &lt;track> element.</rdfs:label>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r15">
-	<dcs:item rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r16"/>
-	<dcs:versus rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-101"/>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r16">
-	<rdf:type rdf:resource="http://ontologi.es/doap-changeset#Bugfix"/>
-	<rdfs:comment xml:lang="en">Caused by interaction with HTML5 parser.</rdfs:comment>
-	<rdfs:label xml:lang="en">Prevent elements from being output with duplicate attributes.</rdfs:label>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r17">
-	<doap:browse rdf:resource="http://goddamn.co.uk/viewvc/perlmods/HTML-HTML5-Writer/"/>
-	<rdf:type rdf:resource="http://usefulinc.com/ns/doap#SVNRepository"/>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r2">
-	<rdfs:label xml:lang="en">Improve documentation.</rdfs:label>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r3">
-	<dcs:item rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r4"/>
-	<dcs:item rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r5"/>
-	<dcs:versus rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-02"/>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r4">
-	<rdf:type rdf:resource="http://ontologi.es/doap-changeset#Bugfix"/>
-	<rdfs:label xml:lang="en">Handle &lt;script> and &lt;style> elements better.</rdfs:label>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r5">
-	<rdf:type rdf:resource="http://ontologi.es/doap-changeset#Bugfix"/>
-	<rdfs:label xml:lang="en">Don't usually need to entity-encode tab characters!</rdfs:label>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r6">
-	<dcs:item rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r7"/>
-	<dcs:item rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r8"/>
-	<dcs:item rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r9"/>
-	<dcs:versus rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-03"/>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r7">
-	<rdf:type rdf:resource="http://ontologi.es/doap-changeset#Bugfix"/>
-	<rdfs:label xml:lang="en">Handle &lt;script> and &lt;style> elements even better.</rdfs:label>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r8">
-	<rdf:type rdf:resource="http://ontologi.es/doap-changeset#Bugfix"/>
-	<rdfs:label xml:lang="en">Use XML predefined entities for &amp;, &lt;, etc.</rdfs:label>
-</rdf:Description>
-<rdf:Description rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r9">
-	<rdf:type rdf:resource="http://ontologi.es/doap-changeset#Bugfix"/>
-	<rdfs:label xml:lang="en">Include the 'x' in hexadecimal numeric character references.</rdfs:label>
-</rdf:Description>
-<rdf:Description rdf:about="file:///home/tai/src/perlmods/HTML-HTML5-Writer/Changes.ttl">
-	<dc:creator rdf:resource="http://tobyinkster.co.uk/#i"/>
-	<dc:description xml:lang="en">Revision history for Perl extension HTML::HTML5::Writer.</dc:description>
-	<dc:subject rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/project"/>
-	<dc:title xml:lang="en">Changes</dc:title>
-</rdf:Description>
-<rdf:Description rdf:about="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/project">
-	<doap:bug-database rdf:resource="http://rt.cpan.org/Dist/Display.html?Queue=HTML-HTML5-Writer"/>
-	<doap:created rdf:datatype="http://www.w3.org/2001/XMLSchema#date">2010-05-02</doap:created>
-	<doap:developer rdf:resource="http://tobyinkster.co.uk/#i"/>
-	<doap:documenter rdf:resource="http://tobyinkster.co.uk/#i"/>
-	<doap:download-page rdf:resource="http://search.cpan.org/dist/HTML-HTML5-Writer/"/>
-	<doap:homepage rdf:resource="http://search.cpan.org/dist/HTML-HTML5-Writer/"/>
-	<doap:license rdf:resource="http://dev.perl.org/licenses/"/>
-	<doap:maintainer rdf:resource="http://tobyinkster.co.uk/#i"/>
-	<doap:name>HTML-HTML5-Writer</doap:name>
-	<doap:programming-language>Perl</doap:programming-language>
-	<doap:release rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-01"/>
-	<doap:release rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-02"/>
-	<doap:release rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-03"/>
-	<doap:release rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-04"/>
-	<doap:release rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-100"/>
-	<doap:release rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-101"/>
-	<doap:release rdf:resource="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-102"/>
-	<doap:repository rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r17"/>
-	<doap:shortdesc xml:lang="en">output a DOM as HTML5</doap:shortdesc>
-	<doap:tester rdf:resource="http://tobyinkster.co.uk/#i"/>
-	<rdf:type rdf:resource="http://usefulinc.com/ns/doap#Project"/>
-</rdf:Description>
-<rdf:Description rdf:about="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-01">
-	<dc:issued rdf:datatype="http://www.w3.org/2001/XMLSchema#date">2010-05-02</dc:issued>
-	<doap:file-release rdf:resource="http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.01.tar.gz"/>
-	<doap:revision rdf:datatype="http://www.w3.org/2001/XMLSchema#string">0.01</doap:revision>
-	<rdf:type rdf:resource="http://usefulinc.com/ns/doap#Version"/>
-	<rdfs:label xml:lang="en">First release</rdfs:label>
-</rdf:Description>
-<rdf:Description rdf:about="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-02">
-	<dcs:changeset rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r0"/>
-	<dc:issued rdf:datatype="http://www.w3.org/2001/XMLSchema#date">2010-05-04</dc:issued>
-	<doap:file-release rdf:resource="http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.02.tar.gz"/>
-	<doap:revision rdf:datatype="http://www.w3.org/2001/XMLSchema#string">0.02</doap:revision>
-	<rdf:type rdf:resource="http://usefulinc.com/ns/doap#Version"/>
-	<rdfs:label xml:lang="en">Star Wars Day!</rdfs:label>
-</rdf:Description>
-<rdf:Description rdf:about="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-03">
-	<dcs:changeset rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r3"/>
-	<dc:issued rdf:datatype="http://www.w3.org/2001/XMLSchema#date">2010-05-19</dc:issued>
-	<doap:file-release rdf:resource="http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.03.tar.gz"/>
-	<doap:revision rdf:datatype="http://www.w3.org/2001/XMLSchema#string">0.03</doap:revision>
-	<rdf:type rdf:resource="http://usefulinc.com/ns/doap#Version"/>
-</rdf:Description>
-<rdf:Description rdf:about="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-04">
-	<dcs:changeset rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r6"/>
-	<dc:issued rdf:datatype="http://www.w3.org/2001/XMLSchema#date">2010-05-21</dc:issued>
-	<doap:file-release rdf:resource="http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.04.tar.gz"/>
-	<doap:revision rdf:datatype="http://www.w3.org/2001/XMLSchema#string">0.04</doap:revision>
-	<rdf:type rdf:resource="http://usefulinc.com/ns/doap#Version"/>
-</rdf:Description>
-<rdf:Description rdf:about="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-100">
-	<dcs:changeset rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r10"/>
-	<dc:issued rdf:datatype="http://www.w3.org/2001/XMLSchema#date">2010-06-23</dc:issued>
-	<doap:file-release rdf:resource="http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.100.tar.gz"/>
-	<doap:revision rdf:datatype="http://www.w3.org/2001/XMLSchema#string">0.100</doap:revision>
-	<rdf:type rdf:resource="http://usefulinc.com/ns/doap#Version"/>
-</rdf:Description>
-<rdf:Description rdf:about="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-101">
-	<dcs:changeset rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r12"/>
-	<dc:issued rdf:datatype="http://www.w3.org/2001/XMLSchema#date">2011-01-20</dc:issued>
-	<doap:file-release rdf:resource="http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.101.tar.gz"/>
-	<doap:revision rdf:datatype="http://www.w3.org/2001/XMLSchema#string">0.101</doap:revision>
-	<rdf:type rdf:resource="http://usefulinc.com/ns/doap#Version"/>
-</rdf:Description>
-<rdf:Description rdf:about="http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/v_0-102">
-	<dcs:changeset rdf:nodeID="rB2A43F685A1F11E0B1CAD602187C8AD8r15"/>
-	<dc:issued rdf:datatype="http://www.w3.org/2001/XMLSchema#date">2011-03-29</dc:issued>
-	<doap:file-release rdf:resource="http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.102.tar.gz"/>
-	<doap:revision rdf:datatype="http://www.w3.org/2001/XMLSchema#string">0.102</doap:revision>
-	<rdf:type rdf:resource="http://usefulinc.com/ns/doap#Version"/>
-</rdf:Description>
-<rdf:Description xmlns:ns1="http://www.w3.org/2002/07/owl#" rdf:about="http://tobyinkster.co.uk/#i">
-	<rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Person"/>
-	<ns1:sameAs rdf:resource="http://purl.org/NET/cpan-uri/person/tobyink"/>
-	<foaf:homepage rdf:resource="http://tobyinkster.co.uk/"/>
-	<foaf:mbox rdf:resource="mailto:tobyink@cpan.org"/>
-	<foaf:name>Toby Inkster</foaf:name>
-	<foaf:page rdf:resource="http://search.cpan.org/~tobyink/"/>
-</rdf:Description>
-</rdf:RDF>

HTML-HTML5-Writer-0.103.tar.gz

Binary file added.

HTML_INFO

-ELEMENTS
-
-void elements: area base br col command embed hr img input keygen link meta param source wbr
-
-ATTRIBUTES
-
-HTML 4.01 states that attributes are safe to use unquoted if the values match:
-
-	^[A-Za-z0-9\._:-]+$
-	
-HTML5 expands the list of allowed characters, but we'll stick to HTML 4's safe set.
-

MANIFEST.SKIP

-^MANIFEST.bak$
-^Makefile.old$
-^Makefile$
-^blib/
-^pm_to_blib
-^blibdirs
-\.svn
-^example.*\.pl$
-^[^/]+\.(tar\.gz|tar\.bz2|tgz|tbz2|tbz|zip|tar)$
-^MYMETA.yml

META.yml

----
-abstract: 'output a DOM as HTML5'
-author:
-  - 'Toby Inkster <tobyink@cpan.org>'
-build_requires:
-  ExtUtils::MakeMaker: 6.42
-  HTML::HTML5::Parser: 0
-  Test::More: 0.61
-configure_requires:
-  ExtUtils::MakeMaker: 6.42
-distribution_type: module
-generated_by: 'Module::Install version 1.00'
-license: perl
-meta-spec:
-  url: http://module-build.sourceforge.net/META-spec-v1.4.html
-  version: 1.4
-name: HTML-HTML5-Writer
-no_index:
-  directory:
-    - inc
-    - t
-recommends:
-  HTML::HTML5::Parser: 0.102
-  HTML::HTML5::Sanity: 0
-requires:
-  Exporter: 0
-  XML::LibXML: 1.60
-  common::sense: 0
-  perl: 5.8.0
-resources:
-  bugtracker: http://rt.cpan.org/Dist/Display.html?Queue=HTML-HTML5-Writer
-  homepage: http://search.cpan.org/dist/HTML-HTML5-Writer/
-  license: http://dev.perl.org/licenses/
-  repository: http://goddamn.co.uk/viewvc/perlmods/HTML-HTML5-Writer/
-version: 0.102
-use strict;
-use warnings;
+use inc::Module::Package 'RDF:standard';
 
-use inc::Module::Install;
-
-my $dist = 'HTML-HTML5-Writer';
-my $fn   = "lib/$dist.pm"; $fn =~ s#-#/#g;
-
-name                $dist;
-perl_version_from   $fn;
-version_from        $fn;
-abstract_from       $fn;
-readme_from         $fn;
-author              'Toby Inkster <tobyink@cpan.org>';
-license             'perl';
-
-requires            'common::sense'       => 0;
-requires            'Exporter'            => 0;
-recommends          'HTML::HTML5::Sanity' => 0;
-recommends          'HTML::HTML5::Parser' => '0.102';
-test_requires       'HTML::HTML5::Parser' => 0;
-test_requires       'Test::More'          => '0.61';
-requires            'XML::LibXML'         => '1.60';
-
-resources(
-	'homepage'   => "https://metacpan.org/release/$dist",
-	'repository' => "http://goddamn.co.uk/svn-web/perlmods/browse/$dist/",
-	'bugtracker' => "http://rt.cpan.org/Dist/Display.html?Queue=$dist",
-	);
-	
-write_doap_changes;
-write_doap_changes_xml;
-auto_license;
-auto_manifest;
-
-auto_install;
-WriteAll(
-	'meta' => 1,
-	'sign' => 1,
-	);

README

-NAME
-    HTML::HTML5::Writer - output a DOM as HTML5
-
-SYNOPSIS
-     use HTML::HTML5::Writer;
- 
-     my $writer = HTML::HTML5::Writer->new;
-     print $writer->document($dom);
-
-DESCRIPTION
-    This module outputs XML::LibXML::Node objects as HTML5 strings. It works
-    well on DOM trees that represent valid HTML/XHTML documents; less well
-    on other DOM trees.
-
-  Constructor
-    "$writer = HTML::HTML5::Writer->new(%opts)"
-        Create a new writer object. Options include:
-
-        *   markup
-
-            Choose which serialisation of HTML5 to use: 'html' or 'xhtml'.
-
-        *   polyglot
-
-            Set to '1' in order to attempt to produce output which works as
-            both XML and HTML.
-
-        *   doctype
-
-            Set this to a string to choose which <!DOCTYPE> tag to output.
-            Note, this purely sets the <!DOCTYPE> tag and does not change
-            how the rest of the document is output.
-
-            The following constants are provided for convenience:
-            DOCTYPE_HTML2, DOCTYPE_HTML32, DOCTYPE_HTML4 (latest stable
-            strict HTML 4.x), DOCTYPE_HTML4_RDFA (latest stable HTML
-            4.x+RDFa), DOCTYPE_HTML40 (strict), DOCTYPE_HTML40_FRAMESET,
-            DOCTYPE_HTML40_LOOSE, DOCTYPE_HTML40_STRICT, DOCTYPE_HTML401
-            (strict), DOCTYPE_HTML401_FRAMESET, DOCTYPE_HTML401_LOOSE,
-            DOCTYPE_HTML401_RDFA10, DOCTYPE_HTML401_RDFA11,
-            DOCTYPE_HTML401_STRICT, DOCTYPE_HTML5, DOCTYPE_LEGACY
-            (about:legacy-compat), DOCTYPE_NIL (empty string),
-            DOCTYPE_XHTML1 (strict), DOCTYPE_XHTML1_FRAMESET,
-            DOCTYPE_XHTML1_LOOSE, DOCTYPE_XHTML1_STRICT, DOCTYPE_XHTML11,
-            DOCTYPE_XHTML_BASIC, DOCTYPE_XHTML_BASIC_10,
-            DOCTYPE_XHTML_BASIC_11, DOCTYPE_XHTML_MATHML_SVG,
-            DOCTYPE_XHTML_RDFA (latest stable strict XHTML+RDFa),
-            DOCTYPE_XHTML_RDFA10, DOCTYPE_XHTML_RDFA11.
-
-            Defaults to DOCTYPE_HTML5.
-
-        *   charset
-
-            This module always returns strings in Perl's internal utf8
-            encoding, but you can set the 'charset' option to 'ascii' to
-            create output that would be suitable for re-encoding to ASCII
-            (e.g. it will entity-encode characters which do not exist in
-            ASCII).
-
-        *   quote_attributes
-
-            Set this to a 'force' to force attributes to be quoted.
-            Otherwise, the writer will automatically detect when attributes
-            need quoting.
-
-        *   voids
-
-            Set to 'slash' to force void elements to always be terminated
-            with '/>'. Otherwise, they'll only be terminated that way in
-            polyglot or XHTML documents.
-
-        *   start_tags and end_tags
-
-            Except in polyglot and XHTML documents, some elements allow
-            their start and/or end tags to be omitted in certain
-            circumstances. By setting these to 'force', you can prevent them
-            from being omitted.
-
-        *   refs
-
-            Special characters that can't be encoded as named entities need
-            to be encoded as numeric character references instead. These can
-            be expressed in decimal or hexadecimal. Setting this option to
-            'dec' or 'hex' allows you to choose. The default is 'hex'.
-
-  Public Methods
-    "$writer->is_xhtml"
-        Boolean indicating if $writer is configured to output XHTML.
-
-    "$writer->is_polyglot"
-        Boolean indicating if $writer is configured to output polyglot HTML.
-
-    "$writer->document($node)"
-        Outputs (i.e. returns a string that is) an XML::LibXML::Document as
-        HTML.
-
-    "$writer->element($node)"
-        Outputs an XML::LibXML::Element as HTML.
-
-    "$writer->attribute($node)"
-        Outputs an XML::LibXML::Attr as HTML.
-
-    "$writer->text($node)"
-        Outputs an XML::LibXML::Text as HTML.
-
-    "$writer->cdata($node)"
-        Outputs an XML::LibXML::CDATASection as HTML.
-
-    "$writer->comment($node)"
-        Outputs an XML::LibXML::Comment as HTML.
-
-    "$writer->doctype"
-        Outputs the writer's DOCTYPE.
-
-    "$writer->encode_entities($string, characters=>$more)"
-        Takes a string and returns the same string with some special
-        characters replaced. These special characters do not include any of
-        '&', '<', '>' or '"', but you can provide a string of additional
-        characters to treat as special:
-
-         $encoded = $writer->encode_entities($raw, characters=>'&<>"');
-
-    "$writer->encode_entity($char)"
-        Returns $char entity-encoded. Encoding is done regardless of whether
-        $char is "special" or not.
-
-BUGS AND LIMITATIONS
-    Certain DOM constructs cannot be output in non-XML HTML. e.g.
-
-     my $xhtml = <<XHTML;
-     <html xmlns="http://www.w3.org/1999/xhtml">
-      <head><title>Test</title></head>
-      <body><hr>This text is within the HR element</hr></body>
-     </html>
-     XHTML
-     my $dom    = XML::LibXML->new->parse_string($xhtml);
-     my $writer = HTML::HTML5::Writer->new(markup=>'html');
-     print $writer->document($dom);
-
-    In HTML, there's no way to serialise that properly in HTML. Right now
-    this module just outputs that HR element with text contained within it,
-    a la XHTML. In future versions, it may emit a warning or throw an error.
-
-    In these cases, the HTML::HTML5::{Parser,Writer} combination is not
-    round-trippable.
-
-    Outputting elements and attributes in foreign (non-XHTML) namespaces is
-    implemented pretty naively and not thoroughly tested. I'd be interested
-    in any feedback people have, especially on round-trippability of SVG,
-    MathML and RDFa content in HTML.
-
-    Please report any bugs to <http://rt.cpan.org/>.
-
-SEE ALSO
-    HTML::HTML5::Parser, HTML::HTML5::Sanity, XML::LibXML,
-    XML::LibXML::Debugging.
-
-AUTHOR
-    Toby Inkster <tobyink@cpan.org>.
-
-COPYRIGHT AND LICENSE
-    Copyright (C) 2010-2011 by Toby Inkster
-
-    This library is free software; you can redistribute it and/or modify it
-    under the same terms as Perl itself, either Perl version 5.8 or, at your
-    option, any later version of Perl 5 you may have available.
-

example1.pl

-use lib "lib";
-use HTML::HTML5::Parser;
-use HTML::HTML5::Sanity;
-use HTML::HTML5::Writer qw(:doctype);
-
-my $html = <<HTML;
-<title>foo</title>
-<style type="text/css">
-p { foo: "€"; }
-</style>
-<br foo=nar>
-<!-- ffooo-->
-<p bum=/bat/ quux=xyzzy hidden bim="&quot;">foo & €</p><p>foo</p>
-<table>
-<thead>
-<tr><th><th>
-</thead>
-<tr><th><td>
-<tbody><tr><th><td>
-</table>
-HTML
-
-my $parser = HTML::HTML5::Parser->new;
-my $dom    = $parser->parse_string($html);
-
-my $writer = HTML::HTML5::Writer->new(markup=>'xhtml',doctype=>DOCTYPE_XHTML1);
-print $writer->document($dom);

lib/HTML/HTML5/Writer.pm

 package HTML::HTML5::Writer;
 
 use 5.008;
-use base qw'Exporter';
+use base qw[Exporter];
 use common::sense;
-use XML::LibXML qw':all';
+use HTML::HTML5::Entities 0.001 qw[];
+use XML::LibXML qw[:all];
 
 use constant {
 	DOCTYPE_NIL              => '',
 	DOCTYPE_XHTML_RDFA11     => '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.1//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-2.dtd">',
 	};
 
-our $VERSION = '0.102';
+our $VERSION = '0.104';
 
 our %EXPORT_TAGS = (
 	doctype => [qw(DOCTYPE_NIL DOCTYPE_HTML32 DOCTYPE_HTML4 DOCTYPE_HTML5
 	);
 our @EXPORT_OK = @{ $EXPORT_TAGS{doctype} };
 
-our %Entities;
 our @VoidElements = qw(area base br col command embed hr
 	img input keygen link meta param source track wbr);
 our @BooleanAttributes = qw(
 our @OptionalEnd = qw(html head body tbody dt dd li optgroup
 	option p rp rt td th tfoot thead tr);
 
-BEGIN
-{
-	eval 'use HTML::HTML5::Parser::NamedEntityList;';
-	unless (@!)
-	{
-		while (my ($entity, $char) = each(%{ $HTML::HTML5::Parser::TagSoupParser::EntityChar }))
-		{
-			$Entities{$char} = $entity
-				if $entity =~ /;$/ 
-				&& $Entities{$char} cmp $entity;
-		}
-	}
-	
-	$Entities{'&'}  = 'amp;';
-	$Entities{'"'}  = 'quot;';
-	$Entities{'<'}  = 'lt;';
-	$Entities{'>'}  = 'gt;';
-}
-
 sub new
 {
 	my ($class, %opts) = @_;
 sub document
 {
 	my ($self, $document) = @_;
-	return $self->doctype() . $self->element($document->documentElement);
+	my @childNodes = $document->childNodes;
+	return $self->doctype
+		. join '', (map { $self->_element_etc($_); } @childNodes);
 }
 
 sub doctype
 	return $self->{'doctype'};
 }
 
+sub _element_etc
+{
+	my ($self, $etc) = @_;
+
+	if ($etc->nodeName eq '#text')
+		{ return $self->text($etc); }
+	elsif ($etc->nodeName eq '#comment')
+		{ return $self->comment($etc); }
+	elsif ($etc->nodeName eq '#cdata-section')
+		{ return $self->cdata($etc); }
+	elsif ($etc->isa('XML::LibXML::PI'))
+		{ return $self->pi($etc); }
+	else
+		{ return $self->element($etc); }			
+}
+
 sub element
 {
 	my ($self, $element) = @_;
 	
 	foreach my $kid (@kids)
 	{
-		if ($kid->nodeName eq '#text')
-			{ $rv .= $self->text($kid); }
-		elsif ($kid->nodeName eq '#comment')
-			{ $rv .= $self->comment($kid); }
-		elsif ($kid->nodeName eq '#cdata-section')
-			{ $rv .= $self->cdata($kid); }
-		else
-			{ $rv .= $self->element($kid); }			
+		$rv .= $self->_element_etc($kid);			
 	}
 	
 	unless ($omitend)
 	return '<!--' . $self->encode_entities($text->nodeValue) . '-->';
 }
 
+sub pi
+{
+	my ($self, $pi) = @_;
+	if ($pi->nodeName eq 'decode')
+	{
+		return HTML::HTML5::Entities::decode($pi->textContent);
+	}
+	return $pi->toString;
+}
+
 sub cdata
 {
 	my ($self, $text) = @_;
 	$characters   .= '&';
 	$characters   .= '\x{0}-\x{8}\x{B}\x{C}\x{E}-\x{1F}\x{26}\x{7F}';
 	$characters   .= '\x{80}-\x{FFFFFF}' unless $self->{'charset'} =~ /^utf[_-]?8$/i;
-
-	$string =~ s/ ([$characters]) / $self->encode_entity($1) /egx;
 	
-	return $string;
+	my $regexp = qr/[$characters]/;
+	
+	local $HTML::HTML5::Entities::hex = ($self->{'refs'} !~ /dec/i);
+	return HTML::HTML5::Entities::encode_entities($string, $regexp);
 }
 
 sub encode_entity
 {
 	my ($self, $char) = @_;
-	return unless defined $char;
-	
-	if (length $char > 1)
-	{
-		return encode_entity(substr $char, 0, 1).encode_entity(substr $char, 1);
-	}
 
-	if ($char =~ /^[&<>"]$/)
-	{
-		return '&' . $Entities{$char};
-	}
-	elsif (!$self->is_xhtml && defined $Entities{$char})
-	{
-		return '&' . $Entities{$char};
-	}
-	elsif ($self->{'refs'} =~ /dec/i)
-	{
-		return sprintf('&#%d;', ord $char);
-	}
-
-	return sprintf('&#x%x;', ord $char);
+	local $HTML::HTML5::Entities::hex = ($self->{'refs'} !~ /dec/i);
+	return HTML::HTML5::Entities::encode_entities($char, qr/./);
 }
 
 sub _check_omit_end_body
 
 =over 4
 
-=item C<< $writer->is_xhtml >>
-
-Boolean indicating if $writer is configured to output XHTML.
-
-=item C<< $writer->is_polyglot >>
-
-Boolean indicating if $writer is configured to output polyglot HTML.
-
 =item C<< $writer->document($node) >>
 
 Outputs (i.e. returns a string that is) an XML::LibXML::Document as HTML.
 
 Outputs an XML::LibXML::Comment as HTML.
 
+=item C<< $writer->pi($node) >>
+
+Outputs an XML::LibXML::PI as HTML.
+
 =item C<< $writer->doctype >>
 
 Outputs the writer's DOCTYPE.
 Returns $char entity-encoded. Encoding is done regardless of whether 
 $char is "special" or not.
 
+=item C<< $writer->is_xhtml >>
+
+Boolean indicating if $writer is configured to output XHTML.
+
+=item C<< $writer->is_polyglot >>
+
+Boolean indicating if $writer is configured to output polyglot HTML.
+
+=item C<< $writer->should_force_start_tags >>
+
+=item C<< $writer->should_force_end_tags >>
+
+Booleans indicating whether optional start and end tags should be forced.
+
+=item C<< $writer->should_quote_attributes >>
+
+Boolean indicating whether attributes need to be quoted.
+
+=item C<< $writer->should_slash_voids >>
+
+Boolean indicating whether void elements should be closed in the XHTML style.
+
 =back
 
 =head1 BUGS AND LIMITATIONS
+@prefix :        <http://usefulinc.com/ns/doap#> .
+@prefix dcs:     <http://ontologi.es/doap-changeset#> .
+@prefix dc:      <http://purl.org/dc/terms/> .
+@prefix foaf:    <http://xmlns.com/foaf/0.1/> .
+@prefix my:      <http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/> .
+@prefix rdfs:    <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix toby:    <http://tobyinkster.co.uk/#> .
+@prefix xsd:     <http://www.w3.org/2001/XMLSchema#> .
+
+my:project :release my:v_0-01 .
+my:v_0-01
+	a               :Version ;
+	dc:issued       "2010-05-02"^^xsd:date ;
+	:revision       "0.01"^^xsd:string ;
+	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.01.tar.gz> ;
+	rdfs:label      "First release"@en .
+
+my:project :release my:v_0-02 .
+my:v_0-02
+	a               :Version ;
+	dc:issued       "2010-05-04"^^xsd:date ;
+	:revision       "0.02"^^xsd:string ;
+	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.02.tar.gz> ;
+	rdfs:label      "Star Wars Day!"@en ;
+	dcs:changeset [
+		dcs:versus my:v_0-01 ;
+		dcs:item [ rdfs:label "Makefile.PL should specify that we need common::sense."@en ; a dcs:Bugfix ] ;
+		dcs:item [ rdfs:label "Improve documentation."@en  ]
+		] .
+
+my:project :release my:v_0-03 .
+my:v_0-03
+	a               :Version ;
+	dc:issued       "2010-05-19"^^xsd:date ;
+	:revision       "0.03"^^xsd:string ;
+	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.03.tar.gz> ;
+	dcs:changeset [
+		dcs:versus my:v_0-02 ;
+		dcs:item [ rdfs:label "Handle <script> and <style> elements better."@en ; a dcs:Bugfix ] ;
+		dcs:item [ rdfs:label "Don't usually need to entity-encode tab characters!"@en ; a dcs:Bugfix ]
+		] .
+
+my:project :release my:v_0-04 .
+my:v_0-04
+	a               :Version ;
+	dc:issued       "2010-05-21"^^xsd:date ;
+	:revision       "0.04"^^xsd:string ;
+	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.04.tar.gz> ;
+	dcs:changeset [
+		dcs:versus my:v_0-03 ;
+		dcs:item [ rdfs:label "Handle <script> and <style> elements even better."@en ; a dcs:Bugfix ] ;
+		dcs:item [ rdfs:label "Use XML predefined entities for &, <, etc."@en ; a dcs:Bugfix ] ;
+		dcs:item [ rdfs:label "Include the 'x' in hexadecimal numeric character references."@en ; a dcs:Bugfix ]
+		] .
+
+my:project :release my:v_0-100 .
+my:v_0-100
+	a               :Version ;
+	dc:issued       "2010-06-23"^^xsd:date ;
+	:revision       "0.100"^^xsd:string ;
+	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.100.tar.gz> ;
+	dcs:changeset [
+		dcs:versus my:v_0-04 ;
+		dcs:item [ rdfs:label "Document 'charset' option properly."@en ; a dcs:Bugfix ]
+		] .
+
+my:project :release my:v_0-101 .
+my:v_0-101
+	a               :Version ;
+	dc:issued       "2011-01-20"^^xsd:date ;
+	:revision       "0.101"^^xsd:string ;
+	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.101.tar.gz> ;
+	dcs:changeset [
+		dcs:versus my:v_0-100 ;
+		dcs:item [ rdfs:label "More DOCTYPE_* constants are now available."@en ; a dcs:Addition ] ;
+		dcs:item [ rdfs:label "Add support for <track> element."@en ; a dcs:Update ]
+		] .
+
+my:project :release my:v_0-102 .
+my:v_0-102
+	a               :Version ;
+	dc:issued       "2011-03-29"^^xsd:date ;
+	:revision       "0.102"^^xsd:string ;
+	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.102.tar.gz> ;
+	dcs:changeset [
+		dcs:versus my:v_0-101 ;
+		dcs:item [ rdfs:label "Prevent elements from being output with duplicate attributes."@en ; a dcs:Bugfix ; rdfs:comment "Caused by interaction with HTML5 parser."@en ]
+		] .
+
+my:project :release my:v_0-103 .
+my:v_0-103
+	a               :Version ;
+	dc:issued       "2011-10-07"^^xsd:date ;
+	:revision       "0.103"^^xsd:string ;
+	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.103.tar.gz> ;
+	dcs:changeset [
+		dcs:versus my:v_0-102 ;
+		dcs:item [ rdfs:label "use HTML::HTML5::Entities"@en ] ;
+		dcs:item [ rdfs:label "Remove dependency on HTML::HTML5::Parser"@en ]
+		] .
+
+my:project :release my:v_0-104 .
+my:v_0-104
+	a               :Version ;
+	dc:issued       "2011-10-10"^^xsd:date ;
+	:revision       "0.104"^^xsd:string ;
+	:file-release   <http://backpan.cpan.org/authors/id/T/TO/TOBYINK/HTML-HTML5-Writer-0.104.tar.gz> ;
+	dcs:changeset [
+		dcs:versus my:v_0-103 ;
+		dcs:item [ rdfs:label "Handle processing instructions, including special support for <?decode ...?>."@en ] ;
+		dcs:item [ rdfs:label "use Module::Package::RDF"@en ; a dcs:Packaging ]
+		] .
+@prefix :        <http://usefulinc.com/ns/doap#> .
+@prefix dcs:     <http://ontologi.es/doap-changeset#> .
+@prefix dc:      <http://purl.org/dc/terms/> .
+@prefix foaf:    <http://xmlns.com/foaf/0.1/> .
+@prefix my:      <http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/> .
+@prefix rdfs:    <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix toby:    <http://tobyinkster.co.uk/#> .
+@prefix xsd:     <http://www.w3.org/2001/XMLSchema#> .
+
+my:project
+	a               :Project ;
+	:name           "HTML-HTML5-Writer" ;
+	:shortdesc      "output a DOM as HTML5"@en ;
+	:programming-language  "Perl" ;
+	:homepage       <https://metacpan.org/release/HTML-HTML5-Writer> ;
+	:download-page  <https://metacpan.org/release/HTML-HTML5-Writer> ;
+	:bug-database   <http://rt.cpan.org/Dist/Display.html?Queue=HTML-HTML5-Writer> ;
+	:repository     [ a :SVNRepository ; :browse <http://goddamn.co.uk/svn-web/perlmods/browse/HTML-HTML5-Writer/> ] ;
+	:maintainer     toby:i ;
+	:developer      toby:i ;
+	:documenter     toby:i ;
+	:tester         toby:i ;
+	:created        "2010-05-02"^^xsd:date ;
+	:license        <http://dev.perl.org/licenses/> ;
+	:category
+		[ rdfs:label "HTML"@en ] ,
+		[ rdfs:label "HTML5"@en ] ,
+		[ rdfs:label "Markup"@en ] ,
+		[ rdfs:label "Web"@en ] .
+
+toby:i
+	a               foaf:Person ;
+	foaf:name       "Toby Inkster" ;
+	foaf:homepage   <http://tobyinkster.co.uk/> ;
+	foaf:page       <https://metacpan.org/author/TOBYINK> ;
+	foaf:mbox       <mailto:tobyink@cpan.org> ;
+	<http://www.w3.org/2002/07/owl#sameAs> <http://purl.org/NET/cpan-uri/person/tobyink>.

meta/makefile.ttl

+# This file provides instructions for packaging.
+
+@prefix : <http://purl.org/NET/cpan-uri/terms#> .
+
+<http://purl.org/NET/cpan-uri/dist/HTML-HTML5-Writer/project>
+	:perl_version_from _:main ;
+	:version_from _:main ;
+	:readme_from _:main ;
+	:test_requires "Test::More 0.61" ;
+	:recommends "HTML::HTML5::Sanity" , "HTML::HTML5::Parser" ;
+	:requires "Exporter" , "XML::LibXML 1.60", "HTML::HTML5::Entities 0.001", "common::sense" .
+
+_:main <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#fileName> "lib/HTML/HTML5/Writer.pm" .
+
 
 use Test::More tests => 3;
 BEGIN { use_ok('HTML::HTML5::Writer') };
-use HTML::HTML5::Parser;
+use XML::LibXML;
 
 my $input = <<INPUT;
-<title>foo</title>
-<style type="text/css">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>foo</title>
+<style type="text/css"><![CDATA[
 p { foo: "€"; }
-</style>
-<br foo=nar>
+]]></style>
+</head><body><br foo="nar" />
 <!-- ffooo-->
-<p bum=/bat/ quux=xyzzy hidden bim="&quot;">foo & €</p><p>foo</p>
+<p quux="xyzzy" bim='"' bum="/bat/" hidden="">foo &amp; €</p><p>foo</p>
 <table>
 <thead>
-<tr><th><th>
-</thead>
-<tr><th><td>
-<tbody><tr><th><td>
-</table>
+<tr><th></th><th>
+</th></tr></thead>
+<tbody><tr><th></th><td>
+</td></tr></tbody><tbody><tr><th></th><td>
+</td></tr></tbody></table>
+</body></html>
 INPUT
 
-my $parser = HTML::HTML5::Parser->new;
+my $parser = XML::LibXML->new;
 my $dom    = $parser->parse_string($input);
 
 my $hwriter = HTML::HTML5::Writer->new(markup=>'html');
+use Test::More;
+eval "use Test::Pod 1.00";
+plan skip_all => "Test::Pod 1.00 required for testing POD" if $@;
+all_pod_files_ok();
+

xt/02pod_coverage.t

+use Test::More;
+use Test::Pod::Coverage;
+
+my @modules = qw(HTML::HTML5::Writer);
+pod_coverage_ok($_, "$_ is covered")
+	foreach @modules;
+done_testing(scalar @modules);
+

xt/03meta_uptodate.t

+use Test::More tests => 1;
+use Test::RDF::DOAP::Version;
+doap_version_ok('HTML-HTML5-Writer', 'HTML::HTML5::Writer');
+
+use Test::EOL;
+all_perl_files_ok();