You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@creadur.apache.org by rd...@apache.org on 2013/03/16 14:34:31 UTC
svn commit: r1457250 [20/27] - in /creadur/site/trunk/content/whisker: ./
apache-whisker-app/ apache-whisker-app/apidocs/
apache-whisker-app/apidocs/org/apache/creadur/whisker/app/
apache-whisker-app/apidocs/org/apache/creadur/whisker/app/analysis/ apa...
Modified: creadur/site/trunk/content/whisker/apache-whisker-xml/cobertura/org.apache.creadur.whisker.fromxml.JDomBuilder.html
URL: http://svn.apache.org/viewvc/creadur/site/trunk/content/whisker/apache-whisker-xml/cobertura/org.apache.creadur.whisker.fromxml.JDomBuilder.html?rev=1457250&r1=1457249&r2=1457250&view=diff
==============================================================================
--- creadur/site/trunk/content/whisker/apache-whisker-xml/cobertura/org.apache.creadur.whisker.fromxml.JDomBuilder.html (original)
+++ creadur/site/trunk/content/whisker/apache-whisker-xml/cobertura/org.apache.creadur.whisker.fromxml.JDomBuilder.html Sat Mar 16 13:34:16 2013
@@ -115,7 +115,7 @@
<td class="src"><pre class="src"> <span class="comment"> * Builds a model from xml using JDOM.</span></pre></td></tr>
<tr> <td class="numLine"> 49</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
-<tr> <td class="numLineCover"> 50</td> <td class="nbHitsCovered"> 507066</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> JDomBuilder {</pre></td></tr>
+<tr> <td class="numLineCover"> 50</td> <td class="nbHitsCovered"> 338044</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> JDomBuilder {</pre></td></tr>
<tr> <td class="numLine"> 51</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 52</td> <td class="nbHits"> </td>
@@ -160,15 +160,15 @@
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine"> 72</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> Resource resource(Element element) <span class="keyword">throws</span> UnexpectedElementException {</pre></td></tr>
-<tr> <td class="numLineCover"> 73</td> <td class="nbHitsCovered"><a title="Line 73: Conditional coverage 100% (2/2)."> 696</a></td> <td class="src"><pre class="src"> <a title="Line 73: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (RESOURCE_ELEMENT_NAME.equals(element.getName())) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"> 693</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> Resource(StringUtils.trim(element.getAttributeValue(<span class="string">"name"</span>)), </pre></td></tr>
+<tr> <td class="numLineCover"> 73</td> <td class="nbHitsCovered"><a title="Line 73: Conditional coverage 100% (2/2)."> 464</a></td> <td class="src"><pre class="src"> <a title="Line 73: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (RESOURCE_ELEMENT_NAME.equals(element.getName())) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"> 462</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> Resource(StringUtils.trim(element.getAttributeValue(<span class="string">"name"</span>)), </pre></td></tr>
<tr> <td class="numLine"> 75</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> StringUtils.trim(element.getAttributeValue(<span class="string">"notice"</span>)),</pre></td></tr>
<tr> <td class="numLine"> 76</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> StringUtils.trim(element.getAttributeValue(<span class="string">"source"</span>)));</pre></td></tr>
<tr> <td class="numLine"> 77</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
-<tr> <td class="numLineCover"> 78</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> unexpectedElementException(element, RESOURCE_ELEMENT_NAME);</pre></td></tr>
+<tr> <td class="numLineCover"> 78</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> unexpectedElementException(element, RESOURCE_ELEMENT_NAME);</pre></td></tr>
<tr> <td class="numLine"> 79</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 80</td> <td class="nbHits"> </td>
@@ -191,7 +191,7 @@
<td class="src"><pre class="src"> <span class="keyword">private</span> UnexpectedElementException unexpectedElementException(Element element,</pre></td></tr>
<tr> <td class="numLine"> 89</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">final</span> String expectedElement) {</pre></td></tr>
-<tr> <td class="numLineCover"> 90</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> UnexpectedElementException(expectedElement, element.getName());</pre></td></tr>
+<tr> <td class="numLineCover"> 90</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> UnexpectedElementException(expectedElement, element.getName());</pre></td></tr>
<tr> <td class="numLine"> 91</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 92</td> <td class="nbHits"> </td>
@@ -210,8 +210,8 @@
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine"> 99</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> Organisation organisation(Element element) <span class="keyword">throws</span> UnexpectedElementException {</pre></td></tr>
-<tr> <td class="numLineCover"> 100</td> <td class="nbHitsCovered"><a title="Line 100: Conditional coverage 100% (2/2)."> 97926</a></td> <td class="src"><pre class="src"> <a title="Line 100: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (ORGANISATION_ELEMENT_NAME.equals(element.getName())) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 101</td> <td class="nbHitsCovered"> 97923</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> Organisation(</pre></td></tr>
+<tr> <td class="numLineCover"> 100</td> <td class="nbHitsCovered"><a title="Line 100: Conditional coverage 100% (2/2)."> 65284</a></td> <td class="src"><pre class="src"> <a title="Line 100: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (ORGANISATION_ELEMENT_NAME.equals(element.getName())) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 101</td> <td class="nbHitsCovered"> 65282</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> Organisation(</pre></td></tr>
<tr> <td class="numLine"> 102</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> element.getAttributeValue(<span class="string">"id"</span>), </pre></td></tr>
<tr> <td class="numLine"> 103</td> <td class="nbHits"> </td>
@@ -220,7 +220,7 @@
<td class="src"><pre class="src"> element.getAttributeValue(<span class="string">"url"</span>));</pre></td></tr>
<tr> <td class="numLine"> 105</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
-<tr> <td class="numLineCover"> 106</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> unexpectedElementException(element, ORGANISATION_ELEMENT_NAME);</pre></td></tr>
+<tr> <td class="numLineCover"> 106</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> unexpectedElementException(element, ORGANISATION_ELEMENT_NAME);</pre></td></tr>
<tr> <td class="numLine"> 107</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 108</td> <td class="nbHits"> </td>
@@ -239,12 +239,12 @@
<td class="src"><pre class="src"> @SuppressWarnings(<span class="string">"unchecked"</span>)</pre></td></tr>
<tr> <td class="numLine"> 115</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> Collection<Resource> collectResources(Element element) {</pre></td></tr>
-<tr> <td class="numLineCover"> 116</td> <td class="nbHitsCovered"> 113157</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Collection<Resource> resources = <span class="keyword">new</span> TreeSet<Resource>();</pre></td></tr>
-<tr> <td class="numLineCover"> 117</td> <td class="nbHitsCovered"><a title="Line 117: Conditional coverage 100% (2/2)."> 113157</a></td> <td class="src"><pre class="src"> <a title="Line 117: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Element resourceElement: (List<Element>) element.getChildren(<span class="string">"resource"</span>)) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 118</td> <td class="nbHitsCovered"> 672</td> <td class="src"><pre class="src"> resources.add(<span class="keyword">new</span> JDomBuilder().resource(resourceElement));</pre></td></tr>
+<tr> <td class="numLineCover"> 116</td> <td class="nbHitsCovered"> 75438</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Collection<Resource> resources = <span class="keyword">new</span> TreeSet<Resource>();</pre></td></tr>
+<tr> <td class="numLineCover"> 117</td> <td class="nbHitsCovered"><a title="Line 117: Conditional coverage 100% (2/2)."> 75438</a></td> <td class="src"><pre class="src"> <a title="Line 117: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Element resourceElement: (List<Element>) element.getChildren(<span class="string">"resource"</span>)) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 118</td> <td class="nbHitsCovered"> 448</td> <td class="src"><pre class="src"> resources.add(<span class="keyword">new</span> JDomBuilder().resource(resourceElement));</pre></td></tr>
<tr> <td class="numLine"> 119</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 120</td> <td class="nbHitsCovered"> 113157</td> <td class="src"><pre class="src"> <span class="keyword">return</span> Collections.unmodifiableCollection(resources);</pre></td></tr>
+<tr> <td class="numLineCover"> 120</td> <td class="nbHitsCovered"> 75438</td> <td class="src"><pre class="src"> <span class="keyword">return</span> Collections.unmodifiableCollection(resources);</pre></td></tr>
<tr> <td class="numLine"> 121</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 122</td> <td class="nbHits"> </td>
@@ -265,12 +265,12 @@
<td class="src"><pre class="src"> <span class="keyword">public</span> Organisation organisation(<span class="keyword">final</span> Element element,</pre></td></tr>
<tr> <td class="numLine"> 130</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, Organisation> organisationsById) <span class="keyword">throws</span> MissingIDException {</pre></td></tr>
-<tr> <td class="numLineCover"> 131</td> <td class="nbHitsCovered"> 113142</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String id = element.getAttributeValue(<span class="string">"id"</span>);</pre></td></tr>
-<tr> <td class="numLineCover"> 132</td> <td class="nbHitsCovered"><a title="Line 132: Conditional coverage 100% (2/2)."> 113142</a></td> <td class="src"><pre class="src"> <a title="Line 132: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (organisationsById.containsKey(id)) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 133</td> <td class="nbHitsCovered"> 113136</td> <td class="src"><pre class="src"> <span class="keyword">return</span> organisationsById.get(id);</pre></td></tr>
+<tr> <td class="numLineCover"> 131</td> <td class="nbHitsCovered"> 75428</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String id = element.getAttributeValue(<span class="string">"id"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 132</td> <td class="nbHitsCovered"><a title="Line 132: Conditional coverage 100% (2/2)."> 75428</a></td> <td class="src"><pre class="src"> <a title="Line 132: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (organisationsById.containsKey(id)) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 133</td> <td class="nbHitsCovered"> 75424</td> <td class="src"><pre class="src"> <span class="keyword">return</span> organisationsById.get(id);</pre></td></tr>
<tr> <td class="numLine"> 134</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
-<tr> <td class="numLineCover"> 135</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> <span class="keyword">new</span> MissingIDException(ORGANISATION_ELEMENT_NAME, element.getName(), id);</pre></td></tr>
+<tr> <td class="numLineCover"> 135</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> <span class="keyword">new</span> MissingIDException(ORGANISATION_ELEMENT_NAME, element.getName(), id);</pre></td></tr>
<tr> <td class="numLine"> 136</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 137</td> <td class="nbHits"> </td>
@@ -291,7 +291,7 @@
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine"> 145</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> ByOrganisation byOrganisation(<span class="keyword">final</span> Element element, <span class="keyword">final</span> Organisation organisation) {</pre></td></tr>
-<tr> <td class="numLineCover"> 146</td> <td class="nbHitsCovered"> 113142</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> ByOrganisation(organisation, collectResources(element));</pre></td></tr>
+<tr> <td class="numLineCover"> 146</td> <td class="nbHitsCovered"> 75428</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> ByOrganisation(organisation, collectResources(element));</pre></td></tr>
<tr> <td class="numLine"> 147</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 148</td> <td class="nbHits"> </td>
@@ -314,7 +314,7 @@
<td class="src"><pre class="src"> <span class="keyword">public</span> ByOrganisation byOrganisation(<span class="keyword">final</span> Element byOrganisation, </pre></td></tr>
<tr> <td class="numLine"> 157</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, Organisation> organisationsById) <span class="keyword">throws</span> MissingIDException {</pre></td></tr>
-<tr> <td class="numLineCover"> 158</td> <td class="nbHitsCovered"> 113133</td> <td class="src"><pre class="src"> <span class="keyword">return</span> byOrganisation(byOrganisation, organisation(byOrganisation, organisationsById));</pre></td></tr>
+<tr> <td class="numLineCover"> 158</td> <td class="nbHitsCovered"> 75422</td> <td class="src"><pre class="src"> <span class="keyword">return</span> byOrganisation(byOrganisation, organisation(byOrganisation, organisationsById));</pre></td></tr>
<tr> <td class="numLine"> 159</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 160</td> <td class="nbHits"> </td>
@@ -337,15 +337,15 @@
<td class="src"><pre class="src"> <span class="keyword">public</span> SortedSet<ByOrganisation> collectByOrganisations(<span class="keyword">final</span> Element parent, </pre></td></tr>
<tr> <td class="numLine"> 169</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, Organisation> map) {</pre></td></tr>
-<tr> <td class="numLineCover"> 170</td> <td class="nbHitsCovered"> 212796</td> <td class="src"><pre class="src"> <span class="keyword">final</span> SortedSet<ByOrganisation> results = <span class="keyword">new</span> TreeSet<ByOrganisation>();</pre></td></tr>
-<tr> <td class="numLineCover"> 171</td> <td class="nbHitsCovered"><a title="Line 171: Conditional coverage 100% (2/2)."> 212796</a></td> <td class="src"><pre class="src"> <a title="Line 171: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (parent != <span class="keyword">null</span>) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 172</td> <td class="nbHitsCovered"><a title="Line 172: Conditional coverage 100% (2/2)."> 114564</a></td> <td class="src"><pre class="src"> <a title="Line 172: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">final</span> Element byOrgElement: (List<Element>) parent.getChildren(<span class="string">"by-organisation"</span>)) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 173</td> <td class="nbHitsCovered"> 113124</td> <td class="src"><pre class="src"> results.add(byOrganisation(byOrgElement, map));</pre></td></tr>
+<tr> <td class="numLineCover"> 170</td> <td class="nbHitsCovered"> 141864</td> <td class="src"><pre class="src"> <span class="keyword">final</span> SortedSet<ByOrganisation> results = <span class="keyword">new</span> TreeSet<ByOrganisation>();</pre></td></tr>
+<tr> <td class="numLineCover"> 171</td> <td class="nbHitsCovered"><a title="Line 171: Conditional coverage 100% (2/2)."> 141864</a></td> <td class="src"><pre class="src"> <a title="Line 171: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (parent != <span class="keyword">null</span>) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 172</td> <td class="nbHitsCovered"><a title="Line 172: Conditional coverage 100% (2/2)."> 76376</a></td> <td class="src"><pre class="src"> <a title="Line 172: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">final</span> Element byOrgElement: (List<Element>) parent.getChildren(<span class="string">"by-organisation"</span>)) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 173</td> <td class="nbHitsCovered"> 75416</td> <td class="src"><pre class="src"> results.add(byOrganisation(byOrgElement, map));</pre></td></tr>
<tr> <td class="numLine"> 174</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 175</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 176</td> <td class="nbHitsCovered"> 212796</td> <td class="src"><pre class="src"> <span class="keyword">return</span> Collections.unmodifiableSortedSet(results);</pre></td></tr>
+<tr> <td class="numLineCover"> 176</td> <td class="nbHitsCovered"> 141864</td> <td class="src"><pre class="src"> <span class="keyword">return</span> Collections.unmodifiableSortedSet(results);</pre></td></tr>
<tr> <td class="numLine"> 177</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 178</td> <td class="nbHits"> </td>
@@ -362,8 +362,8 @@
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine"> 184</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> License license(Element element) {</pre></td></tr>
-<tr> <td class="numLineCover"> 185</td> <td class="nbHitsCovered"> 97962</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element text = element.getChild(<span class="string">"text"</span>);</pre></td></tr>
-<tr> <td class="numLineCover"> 186</td> <td class="nbHitsCovered"><a title="Line 186: Conditional coverage 100% (2/2)."> 97962</a></td> <td class="src"><pre class="src"> <a title="Line 186: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> <span class="keyword">new</span> License(<span class="string">"yes"</span>.equalsIgnoreCase(element.getAttributeValue(<span class="string">"requires-source"</span>)), </a></pre></td></tr>
+<tr> <td class="numLineCover"> 185</td> <td class="nbHitsCovered"> 65308</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element text = element.getChild(<span class="string">"text"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 186</td> <td class="nbHitsCovered"><a title="Line 186: Conditional coverage 100% (2/2)."> 65308</a></td> <td class="src"><pre class="src"> <a title="Line 186: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> <span class="keyword">new</span> License(<span class="string">"yes"</span>.equalsIgnoreCase(element.getAttributeValue(<span class="string">"requires-source"</span>)), </a></pre></td></tr>
<tr> <td class="numLine"> 187</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> text == <span class="keyword">null</span> ? <span class="string">""</span> : text.getText(), </pre></td></tr>
<tr> <td class="numLine"> 188</td> <td class="nbHits"> </td>
@@ -382,16 +382,16 @@
<td class="src"><pre class="src"> @SuppressWarnings(<span class="string">"unchecked"</span>)</pre></td></tr>
<tr> <td class="numLine"> 195</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">private</span> Collection<String> expectedParameters(<span class="keyword">final</span> Element element) {</pre></td></tr>
-<tr> <td class="numLineCover"> 196</td> <td class="nbHitsCovered"> 97962</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Collection<String> results = <span class="keyword">new</span> HashSet<String>();</pre></td></tr>
-<tr> <td class="numLineCover"> 197</td> <td class="nbHitsCovered"> 97962</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element templateElement = element.getChild(<span class="string">"template"</span>);</pre></td></tr>
-<tr> <td class="numLineCover"> 198</td> <td class="nbHitsCovered"><a title="Line 198: Conditional coverage 100% (2/2)."> 97962</a></td> <td class="src"><pre class="src"> <a title="Line 198: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (templateElement != <span class="keyword">null</span>) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 199</td> <td class="nbHitsCovered"><a title="Line 199: Conditional coverage 100% (2/2)."> 9</a></td> <td class="src"><pre class="src"> <a title="Line 199: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Element parameterNameElement: (List<Element>) templateElement.getChildren(<span class="string">"parameter-name"</span>)) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 200</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src"> results.add(parameterNameElement.getTextTrim());</pre></td></tr>
+<tr> <td class="numLineCover"> 196</td> <td class="nbHitsCovered"> 65308</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Collection<String> results = <span class="keyword">new</span> HashSet<String>();</pre></td></tr>
+<tr> <td class="numLineCover"> 197</td> <td class="nbHitsCovered"> 65308</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element templateElement = element.getChild(<span class="string">"template"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 198</td> <td class="nbHitsCovered"><a title="Line 198: Conditional coverage 100% (2/2)."> 65308</a></td> <td class="src"><pre class="src"> <a title="Line 198: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (templateElement != <span class="keyword">null</span>) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 199</td> <td class="nbHitsCovered"><a title="Line 199: Conditional coverage 100% (2/2)."> 6</a></td> <td class="src"><pre class="src"> <a title="Line 199: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Element parameterNameElement: (List<Element>) templateElement.getChildren(<span class="string">"parameter-name"</span>)) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 200</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> results.add(parameterNameElement.getTextTrim());</pre></td></tr>
<tr> <td class="numLine"> 201</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 202</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 203</td> <td class="nbHitsCovered"> 97962</td> <td class="src"><pre class="src"> <span class="keyword">return</span> results;</pre></td></tr>
+<tr> <td class="numLineCover"> 203</td> <td class="nbHitsCovered"> 65308</td> <td class="src"><pre class="src"> <span class="keyword">return</span> results;</pre></td></tr>
<tr> <td class="numLine"> 204</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 205</td> <td class="nbHits"> </td>
@@ -412,12 +412,12 @@
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine"> 213</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> License license(<span class="keyword">final</span> Element element, <span class="keyword">final</span> Map<String, License> licenses) <span class="keyword">throws</span> MissingIDException {</pre></td></tr>
-<tr> <td class="numLineCover"> 214</td> <td class="nbHitsCovered"> 113481</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String id = element.getAttributeValue(<span class="string">"id"</span>);</pre></td></tr>
-<tr> <td class="numLineCover"> 215</td> <td class="nbHitsCovered"><a title="Line 215: Conditional coverage 100% (2/2)."> 113481</a></td> <td class="src"><pre class="src"> <a title="Line 215: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (licenses.containsKey(id)) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 216</td> <td class="nbHitsCovered"> 113475</td> <td class="src"><pre class="src"> <span class="keyword">return</span> licenses.get(id);</pre></td></tr>
+<tr> <td class="numLineCover"> 214</td> <td class="nbHitsCovered"> 75654</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String id = element.getAttributeValue(<span class="string">"id"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 215</td> <td class="nbHitsCovered"><a title="Line 215: Conditional coverage 100% (2/2)."> 75654</a></td> <td class="src"><pre class="src"> <a title="Line 215: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (licenses.containsKey(id)) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 216</td> <td class="nbHitsCovered"> 75650</td> <td class="src"><pre class="src"> <span class="keyword">return</span> licenses.get(id);</pre></td></tr>
<tr> <td class="numLine"> 217</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
-<tr> <td class="numLineCover"> 218</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> <span class="keyword">new</span> MissingIDException(LICENSE_ELEMENT_NAME, element.getName(), id);</pre></td></tr>
+<tr> <td class="numLineCover"> 218</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> <span class="keyword">new</span> MissingIDException(LICENSE_ELEMENT_NAME, element.getName(), id);</pre></td></tr>
<tr> <td class="numLine"> 219</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 220</td> <td class="nbHits"> </td>
@@ -446,7 +446,7 @@
<td class="src"><pre class="src"> Map<String, License> licenses,</pre></td></tr>
<tr> <td class="numLine"> 232</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> Map<String, Organisation> organisations) <span class="keyword">throws</span> MissingIDException {</pre></td></tr>
-<tr> <td class="numLineCover"> 233</td> <td class="nbHitsCovered"> 113472</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> WithLicense(license(element, licenses), copyrightNotice(element), </pre></td></tr>
+<tr> <td class="numLineCover"> 233</td> <td class="nbHitsCovered"> 75648</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> WithLicense(license(element, licenses), copyrightNotice(element), </pre></td></tr>
<tr> <td class="numLine"> 234</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> parameters(element), collectByOrganisations(element, organisations));</pre></td></tr>
<tr> <td class="numLine"> 235</td> <td class="nbHits"> </td>
@@ -467,15 +467,15 @@
<td class="src"><pre class="src"> <span class="keyword">private</span> String copyrightNotice(<span class="keyword">final</span> Element element) {</pre></td></tr>
<tr> <td class="numLine"> 243</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">final</span> String result;</pre></td></tr>
-<tr> <td class="numLineCover"> 244</td> <td class="nbHitsCovered"> 113472</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element copyrightNoticeElement = element.getChild(COPYRIGHT_NOTICE_NAME);</pre></td></tr>
-<tr> <td class="numLineCover"> 245</td> <td class="nbHitsCovered"><a title="Line 245: Conditional coverage 100% (2/2)."> 113472</a></td> <td class="src"><pre class="src"> <a title="Line 245: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (copyrightNoticeElement == <span class="keyword">null</span>) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 246</td> <td class="nbHitsCovered"> 113466</td> <td class="src"><pre class="src"> result = <span class="keyword">null</span>;</pre></td></tr>
+<tr> <td class="numLineCover"> 244</td> <td class="nbHitsCovered"> 75648</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element copyrightNoticeElement = element.getChild(COPYRIGHT_NOTICE_NAME);</pre></td></tr>
+<tr> <td class="numLineCover"> 245</td> <td class="nbHitsCovered"><a title="Line 245: Conditional coverage 100% (2/2)."> 75648</a></td> <td class="src"><pre class="src"> <a title="Line 245: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (copyrightNoticeElement == <span class="keyword">null</span>) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 246</td> <td class="nbHitsCovered"> 75644</td> <td class="src"><pre class="src"> result = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLine"> 247</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
-<tr> <td class="numLineCover"> 248</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> result = copyrightNoticeElement.getTextTrim();</pre></td></tr>
+<tr> <td class="numLineCover"> 248</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src"> result = copyrightNoticeElement.getTextTrim();</pre></td></tr>
<tr> <td class="numLine"> 249</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 250</td> <td class="nbHitsCovered"> 113472</td> <td class="src"><pre class="src"> <span class="keyword">return</span> result;</pre></td></tr>
+<tr> <td class="numLineCover"> 250</td> <td class="nbHitsCovered"> 75648</td> <td class="src"><pre class="src"> <span class="keyword">return</span> result;</pre></td></tr>
<tr> <td class="numLine"> 251</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 252</td> <td class="nbHits"> </td>
@@ -496,22 +496,22 @@
<td class="src"><pre class="src"> @SuppressWarnings(<span class="string">"unchecked"</span>)</pre></td></tr>
<tr> <td class="numLine"> 260</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> Map<String, String> parameters(Element element) <span class="keyword">throws</span> DuplicateElementException {</pre></td></tr>
-<tr> <td class="numLineCover"> 261</td> <td class="nbHitsCovered"> 113499</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, String> results = <span class="keyword">new</span> HashMap<String, String>();</pre></td></tr>
-<tr> <td class="numLineCover"> 262</td> <td class="nbHitsCovered"> 113499</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element licenseParametersElement = element.getChild(<span class="string">"license-parameters"</span>);</pre></td></tr>
-<tr> <td class="numLineCover"> 263</td> <td class="nbHitsCovered"><a title="Line 263: Conditional coverage 100% (2/2)."> 113499</a></td> <td class="src"><pre class="src"> <a title="Line 263: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (licenseParametersElement != <span class="keyword">null</span>) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 264</td> <td class="nbHitsCovered"><a title="Line 264: Conditional coverage 100% (2/2)."> 411</a></td> <td class="src"><pre class="src"> <a title="Line 264: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Element parameterElement: (List<Element>) licenseParametersElement.getChildren(<span class="string">"parameter"</span>)) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 265</td> <td class="nbHitsCovered"> 24777</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String name = parameterElement.getChild(<span class="string">"name"</span>).getTextTrim();</pre></td></tr>
-<tr> <td class="numLineCover"> 266</td> <td class="nbHitsCovered"><a title="Line 266: Conditional coverage 100% (2/2)."> 24777</a></td> <td class="src"><pre class="src"> <a title="Line 266: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (results.containsKey(name)) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 267</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> <span class="keyword">new</span> DuplicateElementException(<span class="string">"Duplicate parameter '"</span> + name + <span class="string">"'"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 261</td> <td class="nbHitsCovered"> 75666</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, String> results = <span class="keyword">new</span> HashMap<String, String>();</pre></td></tr>
+<tr> <td class="numLineCover"> 262</td> <td class="nbHitsCovered"> 75666</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element licenseParametersElement = element.getChild(<span class="string">"license-parameters"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 263</td> <td class="nbHitsCovered"><a title="Line 263: Conditional coverage 100% (2/2)."> 75666</a></td> <td class="src"><pre class="src"> <a title="Line 263: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (licenseParametersElement != <span class="keyword">null</span>) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 264</td> <td class="nbHitsCovered"><a title="Line 264: Conditional coverage 100% (2/2)."> 274</a></td> <td class="src"><pre class="src"> <a title="Line 264: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Element parameterElement: (List<Element>) licenseParametersElement.getChildren(<span class="string">"parameter"</span>)) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 265</td> <td class="nbHitsCovered"> 16518</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String name = parameterElement.getChild(<span class="string">"name"</span>).getTextTrim();</pre></td></tr>
+<tr> <td class="numLineCover"> 266</td> <td class="nbHitsCovered"><a title="Line 266: Conditional coverage 100% (2/2)."> 16518</a></td> <td class="src"><pre class="src"> <a title="Line 266: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (results.containsKey(name)) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 267</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> <span class="keyword">new</span> DuplicateElementException(<span class="string">"Duplicate parameter '"</span> + name + <span class="string">"'"</span>);</pre></td></tr>
<tr> <td class="numLine"> 268</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 269</td> <td class="nbHitsCovered"> 24774</td> <td class="src"><pre class="src"> results.put(name, </pre></td></tr>
+<tr> <td class="numLineCover"> 269</td> <td class="nbHitsCovered"> 16516</td> <td class="src"><pre class="src"> results.put(name, </pre></td></tr>
<tr> <td class="numLine"> 270</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> parameterElement.getChild(<span class="string">"value"</span>).getTextTrim());</pre></td></tr>
-<tr> <td class="numLineCover"> 271</td> <td class="nbHitsCovered"> 24774</td> <td class="src"><pre class="src"> } </pre></td></tr>
+<tr> <td class="numLineCover"> 271</td> <td class="nbHitsCovered"> 16516</td> <td class="src"><pre class="src"> } </pre></td></tr>
<tr> <td class="numLine"> 272</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 273</td> <td class="nbHitsCovered"> 113496</td> <td class="src"><pre class="src"> <span class="keyword">return</span> results;</pre></td></tr>
+<tr> <td class="numLineCover"> 273</td> <td class="nbHitsCovered"> 75664</td> <td class="src"><pre class="src"> <span class="keyword">return</span> results;</pre></td></tr>
<tr> <td class="numLine"> 274</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 275</td> <td class="nbHits"> </td>
@@ -536,13 +536,13 @@
<td class="src"><pre class="src"> <span class="keyword">public</span> Collection<WithLicense> withLicenses(Map<String, License> licenses,</pre></td></tr>
<tr> <td class="numLine"> 285</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> Map<String, Organisation> organisations, Element parent) {</pre></td></tr>
-<tr> <td class="numLineCover"> 286</td> <td class="nbHitsCovered"> 99303</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<WithLicense> results = <span class="keyword">new</span> ArrayList<WithLicense>();</pre></td></tr>
-<tr> <td class="numLineCover"> 287</td> <td class="nbHitsCovered"><a title="Line 287: Conditional coverage 100% (2/2)."> 99303</a></td> <td class="src"><pre class="src"> <a title="Line 287: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Element withLicenseElement: (List<Element>) parent.getChildren(<span class="string">"with-license"</span>)) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 288</td> <td class="nbHitsCovered"> 113070</td> <td class="src"><pre class="src"> results.add(<span class="keyword">new</span> JDomBuilder().withLicense(withLicenseElement, licenses, organisations));</pre></td></tr>
+<tr> <td class="numLineCover"> 286</td> <td class="nbHitsCovered"> 66202</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<WithLicense> results = <span class="keyword">new</span> ArrayList<WithLicense>();</pre></td></tr>
+<tr> <td class="numLineCover"> 287</td> <td class="nbHitsCovered"><a title="Line 287: Conditional coverage 100% (2/2)."> 66202</a></td> <td class="src"><pre class="src"> <a title="Line 287: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Element withLicenseElement: (List<Element>) parent.getChildren(<span class="string">"with-license"</span>)) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 288</td> <td class="nbHitsCovered"> 75380</td> <td class="src"><pre class="src"> results.add(<span class="keyword">new</span> JDomBuilder().withLicense(withLicenseElement, licenses, organisations));</pre></td></tr>
<tr> <td class="numLine"> 289</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 290</td> <td class="nbHitsCovered"> 99303</td> <td class="src"><pre class="src"> Collections.sort(results);</pre></td></tr>
-<tr> <td class="numLineCover"> 291</td> <td class="nbHitsCovered"> 99303</td> <td class="src"><pre class="src"> <span class="keyword">return</span> results;</pre></td></tr>
+<tr> <td class="numLineCover"> 290</td> <td class="nbHitsCovered"> 66202</td> <td class="src"><pre class="src"> Collections.sort(results);</pre></td></tr>
+<tr> <td class="numLineCover"> 291</td> <td class="nbHitsCovered"> 66202</td> <td class="src"><pre class="src"> <span class="keyword">return</span> results;</pre></td></tr>
<tr> <td class="numLine"> 292</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 293</td> <td class="nbHits"> </td>
@@ -563,7 +563,7 @@
<td class="src"><pre class="src"> <span class="keyword">public</span> Collection<ByOrganisation> publicDomain(</pre></td></tr>
<tr> <td class="numLine"> 301</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, Organisation> organisations, <span class="keyword">final</span> Element parent) {</pre></td></tr>
-<tr> <td class="numLineCover"> 302</td> <td class="nbHitsCovered"> 99303</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> JDomBuilder().collectByOrganisations(parent.getChild(<span class="string">"public-domain"</span>), organisations);</pre></td></tr>
+<tr> <td class="numLineCover"> 302</td> <td class="nbHitsCovered"> 66202</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> JDomBuilder().collectByOrganisations(parent.getChild(<span class="string">"public-domain"</span>), organisations);</pre></td></tr>
<tr> <td class="numLine"> 303</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 304</td> <td class="nbHits"> </td>
@@ -588,7 +588,7 @@
<td class="src"><pre class="src"> Map<String, License> licenses,</pre></td></tr>
<tr> <td class="numLine"> 314</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> Map<String, Organisation> organisations) {</pre></td></tr>
-<tr> <td class="numLineCover"> 315</td> <td class="nbHitsCovered"> 98535</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> WithinDirectory(element.getAttributeValue(<span class="string">"dir"</span>), </pre></td></tr>
+<tr> <td class="numLineCover"> 315</td> <td class="nbHitsCovered"> 65690</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> WithinDirectory(element.getAttributeValue(<span class="string">"dir"</span>), </pre></td></tr>
<tr> <td class="numLine"> 316</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> withLicenses(licenses, organisations, element), publicDomain(organisations, element));</pre></td></tr>
<tr> <td class="numLine"> 317</td> <td class="nbHits"> </td>
@@ -607,21 +607,21 @@
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine"> 324</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> Map<String, Organisation> mapOrganisations(Document document) {</pre></td></tr>
-<tr> <td class="numLineCover"> 325</td> <td class="nbHitsCovered"> 774</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, Organisation> organisationsById = <span class="keyword">new</span> HashMap<String, Organisation>();</pre></td></tr>
+<tr> <td class="numLineCover"> 325</td> <td class="nbHitsCovered"> 516</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, Organisation> organisationsById = <span class="keyword">new</span> HashMap<String, Organisation>();</pre></td></tr>
<tr> <td class="numLine"> 326</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
-<tr> <td class="numLineCover"> 327</td> <td class="nbHitsCovered"> 774</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element childOrganisations = document.getRootElement().getChild(<span class="string">"organisations"</span>);</pre></td></tr>
-<tr> <td class="numLineCover"> 328</td> <td class="nbHitsCovered"><a title="Line 328: Conditional coverage 100% (2/2)."> 774</a></td> <td class="src"><pre class="src"> <a title="Line 328: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (childOrganisations != <span class="keyword">null</span>) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 327</td> <td class="nbHitsCovered"> 516</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element childOrganisations = document.getRootElement().getChild(<span class="string">"organisations"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 328</td> <td class="nbHitsCovered"><a title="Line 328: Conditional coverage 100% (2/2)."> 516</a></td> <td class="src"><pre class="src"> <a title="Line 328: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (childOrganisations != <span class="keyword">null</span>) {</a></pre></td></tr>
<tr> <td class="numLine"> 329</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> @SuppressWarnings(<span class="string">"unchecked"</span>)</pre></td></tr>
-<tr> <td class="numLineCover"> 330</td> <td class="nbHitsCovered"> 765</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<Element> organisations = (List<Element>) childOrganisations.getChildren(<span class="string">"organisation"</span>);</pre></td></tr>
-<tr> <td class="numLineCover"> 331</td> <td class="nbHitsCovered"><a title="Line 331: Conditional coverage 100% (2/2)."> 765</a></td> <td class="src"><pre class="src"> <a title="Line 331: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">final</span> Element element: organisations) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 332</td> <td class="nbHitsCovered"> 97920</td> <td class="src"><pre class="src"> <span class="keyword">new</span> JDomBuilder().organisation(element).storeIn(organisationsById);</pre></td></tr>
+<tr> <td class="numLineCover"> 330</td> <td class="nbHitsCovered"> 510</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<Element> organisations = (List<Element>) childOrganisations.getChildren(<span class="string">"organisation"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 331</td> <td class="nbHitsCovered"><a title="Line 331: Conditional coverage 100% (2/2)."> 510</a></td> <td class="src"><pre class="src"> <a title="Line 331: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">final</span> Element element: organisations) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 332</td> <td class="nbHitsCovered"> 65280</td> <td class="src"><pre class="src"> <span class="keyword">new</span> JDomBuilder().organisation(element).storeIn(organisationsById);</pre></td></tr>
<tr> <td class="numLine"> 333</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 334</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 335</td> <td class="nbHitsCovered"> 774</td> <td class="src"><pre class="src"> <span class="keyword">return</span> Collections.unmodifiableMap(organisationsById);</pre></td></tr>
+<tr> <td class="numLineCover"> 335</td> <td class="nbHitsCovered"> 516</td> <td class="src"><pre class="src"> <span class="keyword">return</span> Collections.unmodifiableMap(organisationsById);</pre></td></tr>
<tr> <td class="numLine"> 336</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 337</td> <td class="nbHits"> </td>
@@ -638,19 +638,19 @@
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine"> 343</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> Map<String, License> mapLicenses(Document document) {</pre></td></tr>
-<tr> <td class="numLineCover"> 344</td> <td class="nbHitsCovered"> 777</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, License> results = <span class="keyword">new</span> HashMap<String, License>();</pre></td></tr>
-<tr> <td class="numLineCover"> 345</td> <td class="nbHitsCovered"> 777</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element licensesChild = document.getRootElement().getChild(<span class="string">"licenses"</span>);</pre></td></tr>
-<tr> <td class="numLineCover"> 346</td> <td class="nbHitsCovered"><a title="Line 346: Conditional coverage 100% (2/2)."> 777</a></td> <td class="src"><pre class="src"> <a title="Line 346: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (licensesChild != <span class="keyword">null</span>) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 344</td> <td class="nbHitsCovered"> 518</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, License> results = <span class="keyword">new</span> HashMap<String, License>();</pre></td></tr>
+<tr> <td class="numLineCover"> 345</td> <td class="nbHitsCovered"> 518</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element licensesChild = document.getRootElement().getChild(<span class="string">"licenses"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 346</td> <td class="nbHitsCovered"><a title="Line 346: Conditional coverage 100% (2/2)."> 518</a></td> <td class="src"><pre class="src"> <a title="Line 346: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (licensesChild != <span class="keyword">null</span>) {</a></pre></td></tr>
<tr> <td class="numLine"> 347</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> @SuppressWarnings(<span class="string">"unchecked"</span>)</pre></td></tr>
-<tr> <td class="numLineCover"> 348</td> <td class="nbHitsCovered"> 771</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<Element> children = (List<Element>) licensesChild.getChildren();</pre></td></tr>
-<tr> <td class="numLineCover"> 349</td> <td class="nbHitsCovered"><a title="Line 349: Conditional coverage 100% (2/2)."> 771</a></td> <td class="src"><pre class="src"> <a title="Line 349: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">final</span> Element element: children) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 350</td> <td class="nbHitsCovered"> 97923</td> <td class="src"><pre class="src"> <span class="keyword">new</span> JDomBuilder().license(element).storeIn(results);</pre></td></tr>
+<tr> <td class="numLineCover"> 348</td> <td class="nbHitsCovered"> 514</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<Element> children = (List<Element>) licensesChild.getChildren();</pre></td></tr>
+<tr> <td class="numLineCover"> 349</td> <td class="nbHitsCovered"><a title="Line 349: Conditional coverage 100% (2/2)."> 514</a></td> <td class="src"><pre class="src"> <a title="Line 349: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">final</span> Element element: children) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 350</td> <td class="nbHitsCovered"> 65282</td> <td class="src"><pre class="src"> <span class="keyword">new</span> JDomBuilder().license(element).storeIn(results);</pre></td></tr>
<tr> <td class="numLine"> 351</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 352</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 353</td> <td class="nbHitsCovered"> 777</td> <td class="src"><pre class="src"> <span class="keyword">return</span> Collections.unmodifiableMap(results);</pre></td></tr>
+<tr> <td class="numLineCover"> 353</td> <td class="nbHitsCovered"> 518</td> <td class="src"><pre class="src"> <span class="keyword">return</span> Collections.unmodifiableMap(results);</pre></td></tr>
<tr> <td class="numLine"> 354</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 355</td> <td class="nbHits"> </td>
@@ -673,13 +673,13 @@
<td class="src"><pre class="src"> <span class="keyword">public</span> License primaryLicense(Document document,</pre></td></tr>
<tr> <td class="numLine"> 364</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> Map<String, License> licenses) {</pre></td></tr>
-<tr> <td class="numLineCover"> 365</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String idAttributeValue = getPrimaryLicenseElement(document).getAttributeValue(<span class="string">"id"</span>);</pre></td></tr>
-<tr> <td class="numLineCover"> 366</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src"> <span class="keyword">final</span> License results = licenses.get(idAttributeValue);</pre></td></tr>
-<tr> <td class="numLineCover"> 367</td> <td class="nbHitsCovered"><a title="Line 367: Conditional coverage 100% (2/2)."> 9</a></td> <td class="src"><pre class="src"> <a title="Line 367: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (results == <span class="keyword">null</span>) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 368</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> <span class="keyword">new</span> MissingIDException(LICENSE_ELEMENT_NAME, PRIMARY_LICENSE_NAME, idAttributeValue);</pre></td></tr>
+<tr> <td class="numLineCover"> 365</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String idAttributeValue = getPrimaryLicenseElement(document).getAttributeValue(<span class="string">"id"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 366</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> <span class="keyword">final</span> License results = licenses.get(idAttributeValue);</pre></td></tr>
+<tr> <td class="numLineCover"> 367</td> <td class="nbHitsCovered"><a title="Line 367: Conditional coverage 100% (2/2)."> 6</a></td> <td class="src"><pre class="src"> <a title="Line 367: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (results == <span class="keyword">null</span>) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 368</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> <span class="keyword">new</span> MissingIDException(LICENSE_ELEMENT_NAME, PRIMARY_LICENSE_NAME, idAttributeValue);</pre></td></tr>
<tr> <td class="numLine"> 369</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 370</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> <span class="keyword">return</span> results;</pre></td></tr>
+<tr> <td class="numLineCover"> 370</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src"> <span class="keyword">return</span> results;</pre></td></tr>
<tr> <td class="numLine"> 371</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 372</td> <td class="nbHits"> </td>
@@ -696,7 +696,7 @@
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine"> 378</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">private</span> Element getPrimaryLicenseElement(<span class="keyword">final</span> Document document) {</pre></td></tr>
-<tr> <td class="numLineCover"> 379</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src"> <span class="keyword">return</span> document.getRootElement().getChild(PRIMARY_LICENSE_NAME);</pre></td></tr>
+<tr> <td class="numLineCover"> 379</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src"> <span class="keyword">return</span> document.getRootElement().getChild(PRIMARY_LICENSE_NAME);</pre></td></tr>
<tr> <td class="numLine"> 380</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 381</td> <td class="nbHits"> </td>
@@ -717,17 +717,17 @@
<td class="src"><pre class="src"> <span class="keyword">public</span> String primaryCopyrightNotice(<span class="keyword">final</span> Document document) {</pre></td></tr>
<tr> <td class="numLine"> 389</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">final</span> String result;</pre></td></tr>
-<tr> <td class="numLineCover"> 390</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element copyrightElement = </pre></td></tr>
+<tr> <td class="numLineCover"> 390</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element copyrightElement = </pre></td></tr>
<tr> <td class="numLine"> 391</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> getPrimaryLicenseElement(document).getChild(COPYRIGHT_NOTICE_NAME);</pre></td></tr>
-<tr> <td class="numLineCover"> 392</td> <td class="nbHitsCovered"><a title="Line 392: Conditional coverage 100% (2/2)."> 9</a></td> <td class="src"><pre class="src"> <a title="Line 392: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (copyrightElement == <span class="keyword">null</span>) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 393</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> result = <span class="keyword">null</span>;</pre></td></tr>
+<tr> <td class="numLineCover"> 392</td> <td class="nbHitsCovered"><a title="Line 392: Conditional coverage 100% (2/2)."> 6</a></td> <td class="src"><pre class="src"> <a title="Line 392: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (copyrightElement == <span class="keyword">null</span>) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 393</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> result = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLine"> 394</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
-<tr> <td class="numLineCover"> 395</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> result = copyrightElement.getTextTrim();</pre></td></tr>
+<tr> <td class="numLineCover"> 395</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src"> result = copyrightElement.getTextTrim();</pre></td></tr>
<tr> <td class="numLine"> 396</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 397</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src"> <span class="keyword">return</span> result;</pre></td></tr>
+<tr> <td class="numLineCover"> 397</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> <span class="keyword">return</span> result;</pre></td></tr>
<tr> <td class="numLine"> 398</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 399</td> <td class="nbHits"> </td>
@@ -746,19 +746,19 @@
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine"> 406</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> Map<String, String> mapNotices(Document document) {</pre></td></tr>
-<tr> <td class="numLineCover"> 407</td> <td class="nbHitsCovered"> 777</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, String> results = <span class="keyword">new</span> HashMap<String, String>();</pre></td></tr>
-<tr> <td class="numLineCover"> 408</td> <td class="nbHitsCovered"> 777</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element noticesElement = document.getRootElement().getChild(<span class="string">"notices"</span>);</pre></td></tr>
-<tr> <td class="numLineCover"> 409</td> <td class="nbHitsCovered"><a title="Line 409: Conditional coverage 100% (2/2)."> 777</a></td> <td class="src"><pre class="src"> <a title="Line 409: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (noticesElement != <span class="keyword">null</span>){</a></pre></td></tr>
+<tr> <td class="numLineCover"> 407</td> <td class="nbHitsCovered"> 518</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, String> results = <span class="keyword">new</span> HashMap<String, String>();</pre></td></tr>
+<tr> <td class="numLineCover"> 408</td> <td class="nbHitsCovered"> 518</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element noticesElement = document.getRootElement().getChild(<span class="string">"notices"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 409</td> <td class="nbHitsCovered"><a title="Line 409: Conditional coverage 100% (2/2)."> 518</a></td> <td class="src"><pre class="src"> <a title="Line 409: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (noticesElement != <span class="keyword">null</span>){</a></pre></td></tr>
<tr> <td class="numLine"> 410</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> @SuppressWarnings(<span class="string">"unchecked"</span>)</pre></td></tr>
-<tr> <td class="numLineCover"> 411</td> <td class="nbHitsCovered"> 768</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<Element> children = (List<Element>) noticesElement.getChildren();</pre></td></tr>
-<tr> <td class="numLineCover"> 412</td> <td class="nbHitsCovered"><a title="Line 412: Conditional coverage 100% (2/2)."> 768</a></td> <td class="src"><pre class="src"> <a title="Line 412: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">final</span> Element element: children) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 413</td> <td class="nbHitsCovered"> 97920</td> <td class="src"><pre class="src"> results.put(element.getAttributeValue(<span class="string">"id"</span>), element.getTextTrim());</pre></td></tr>
+<tr> <td class="numLineCover"> 411</td> <td class="nbHitsCovered"> 512</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<Element> children = (List<Element>) noticesElement.getChildren();</pre></td></tr>
+<tr> <td class="numLineCover"> 412</td> <td class="nbHitsCovered"><a title="Line 412: Conditional coverage 100% (2/2)."> 512</a></td> <td class="src"><pre class="src"> <a title="Line 412: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">final</span> Element element: children) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 413</td> <td class="nbHitsCovered"> 65280</td> <td class="src"><pre class="src"> results.put(element.getAttributeValue(<span class="string">"id"</span>), element.getTextTrim());</pre></td></tr>
<tr> <td class="numLine"> 414</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 415</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 416</td> <td class="nbHitsCovered"> 777</td> <td class="src"><pre class="src"> <span class="keyword">return</span> Collections.unmodifiableMap(results);</pre></td></tr>
+<tr> <td class="numLineCover"> 416</td> <td class="nbHitsCovered"> 518</td> <td class="src"><pre class="src"> <span class="keyword">return</span> Collections.unmodifiableMap(results);</pre></td></tr>
<tr> <td class="numLine"> 417</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 418</td> <td class="nbHits"> </td>
@@ -781,17 +781,17 @@
<td class="src"><pre class="src"> <span class="keyword">public</span> String primaryNotice(Document document) {</pre></td></tr>
<tr> <td class="numLine"> 427</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">final</span> String result;</pre></td></tr>
-<tr> <td class="numLineCover"> 428</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element primaryNoticeElement = document.getRootElement().getChild(<span class="string">"primary-notice"</span>);</pre></td></tr>
-<tr> <td class="numLineCover"> 429</td> <td class="nbHitsCovered"><a title="Line 429: Conditional coverage 100% (2/2)."> 12</a></td> <td class="src"><pre class="src"> <a title="Line 429: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (primaryNoticeElement == <span class="keyword">null</span>) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 430</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> result = <span class="keyword">null</span>;</pre></td></tr>
+<tr> <td class="numLineCover"> 428</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element primaryNoticeElement = document.getRootElement().getChild(<span class="string">"primary-notice"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 429</td> <td class="nbHitsCovered"><a title="Line 429: Conditional coverage 100% (2/2)."> 8</a></td> <td class="src"><pre class="src"> <a title="Line 429: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (primaryNoticeElement == <span class="keyword">null</span>) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 430</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src"> result = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLine"> 431</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
-<tr> <td class="numLineCover"> 432</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> result = primaryNoticeElement.getText()</pre></td></tr>
+<tr> <td class="numLineCover"> 432</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src"> result = primaryNoticeElement.getText()</pre></td></tr>
<tr> <td class="numLine"> 433</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> .replace(<span class="string">"${year}"</span>, Integer.toString(Calendar.getInstance().get(Calendar.YEAR)));</pre></td></tr>
<tr> <td class="numLine"> 434</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 435</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src"> <span class="keyword">return</span> result;</pre></td></tr>
+<tr> <td class="numLineCover"> 435</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src"> <span class="keyword">return</span> result;</pre></td></tr>
<tr> <td class="numLine"> 436</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 437</td> <td class="nbHits"> </td>
@@ -812,15 +812,15 @@
<td class="src"><pre class="src"> <span class="keyword">public</span> String primaryOrganisationId(<span class="keyword">final</span> Document document) {</pre></td></tr>
<tr> <td class="numLine"> 445</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">final</span> String result;</pre></td></tr>
-<tr> <td class="numLineCover"> 446</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element primaryOrganisationElement = document.getRootElement().getChild(<span class="string">"primary-organisation"</span>);</pre></td></tr>
-<tr> <td class="numLineCover"> 447</td> <td class="nbHitsCovered"><a title="Line 447: Conditional coverage 100% (2/2)."> 9</a></td> <td class="src"><pre class="src"> <a title="Line 447: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (primaryOrganisationElement == <span class="keyword">null</span>) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 448</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> result = <span class="keyword">null</span>;</pre></td></tr>
+<tr> <td class="numLineCover"> 446</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Element primaryOrganisationElement = document.getRootElement().getChild(<span class="string">"primary-organisation"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 447</td> <td class="nbHitsCovered"><a title="Line 447: Conditional coverage 100% (2/2)."> 6</a></td> <td class="src"><pre class="src"> <a title="Line 447: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (primaryOrganisationElement == <span class="keyword">null</span>) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 448</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src"> result = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLine"> 449</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
-<tr> <td class="numLineCover"> 450</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> result = primaryOrganisationElement.getAttributeValue(<span class="string">"id"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 450</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> result = primaryOrganisationElement.getAttributeValue(<span class="string">"id"</span>);</pre></td></tr>
<tr> <td class="numLine"> 451</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 452</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src"> <span class="keyword">return</span> result;</pre></td></tr>
+<tr> <td class="numLineCover"> 452</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> <span class="keyword">return</span> result;</pre></td></tr>
<tr> <td class="numLine"> 453</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> } </pre></td></tr>
<tr> <td class="numLine"> 454</td> <td class="nbHits"> </td>
@@ -829,7 +829,7 @@
<td class="src"><pre class="src"> <span class="keyword">private</span> WithinDirectory directory(<span class="keyword">final</span> Element element, <span class="keyword">final</span> Map<String, License> licenses,</pre></td></tr>
<tr> <td class="numLine"> 456</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, Organisation> organisations) {</pre></td></tr>
-<tr> <td class="numLineCover"> 457</td> <td class="nbHitsCovered"> 97926</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> JDomBuilder().withinDirectory(element, licenses, organisations);</pre></td></tr>
+<tr> <td class="numLineCover"> 457</td> <td class="nbHitsCovered"> 65284</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> JDomBuilder().withinDirectory(element, licenses, organisations);</pre></td></tr>
<tr> <td class="numLine"> 458</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 459</td> <td class="nbHits"> </td>
@@ -852,22 +852,22 @@
<td class="src"><pre class="src"> <span class="keyword">public</span> Collection<WithinDirectory> collectContents(<span class="keyword">final</span> Document document, <span class="keyword">final</span> Map<String, License> licenses,</pre></td></tr>
<tr> <td class="numLine"> 468</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, Organisation> organisations) <span class="keyword">throws</span> DuplicateElementException {</pre></td></tr>
-<tr> <td class="numLineCover"> 469</td> <td class="nbHitsCovered"> 774</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Collection<WithinDirectory> results = <span class="keyword">new</span> TreeSet<WithinDirectory>();</pre></td></tr>
+<tr> <td class="numLineCover"> 469</td> <td class="nbHitsCovered"> 516</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Collection<WithinDirectory> results = <span class="keyword">new</span> TreeSet<WithinDirectory>();</pre></td></tr>
<tr> <td class="numLine"> 470</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> @SuppressWarnings(<span class="string">"unchecked"</span>)</pre></td></tr>
-<tr> <td class="numLineCover"> 471</td> <td class="nbHitsCovered"> 774</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<Element> children = document.getRootElement().getChildren(<span class="string">"within"</span>);</pre></td></tr>
-<tr> <td class="numLineCover"> 472</td> <td class="nbHitsCovered"><a title="Line 472: Conditional coverage 100% (2/2)."> 774</a></td> <td class="src"><pre class="src"> <a title="Line 472: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Element element: children) {</a></pre></td></tr>
-<tr> <td class="numLineCover"> 473</td> <td class="nbHitsCovered"><a title="Line 473: Conditional coverage 100% (2/2)."> 97926</a></td> <td class="src"><pre class="src"> <a title="Line 473: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (results.add(directory(element, licenses, organisations))) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 471</td> <td class="nbHitsCovered"> 516</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<Element> children = document.getRootElement().getChildren(<span class="string">"within"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 472</td> <td class="nbHitsCovered"><a title="Line 472: Conditional coverage 100% (2/2)."> 516</a></td> <td class="src"><pre class="src"> <a title="Line 472: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Element element: children) {</a></pre></td></tr>
+<tr> <td class="numLineCover"> 473</td> <td class="nbHitsCovered"><a title="Line 473: Conditional coverage 100% (2/2)."> 65284</a></td> <td class="src"><pre class="src"> <a title="Line 473: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (results.add(directory(element, licenses, organisations))) {</a></pre></td></tr>
<tr> <td class="numLine"> 474</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment">// fine</span></pre></td></tr>
<tr> <td class="numLine"> 475</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
-<tr> <td class="numLineCover"> 476</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> <span class="keyword">new</span> DuplicateElementException(<span class="string">"Duplicate parameter '"</span> + element.getAttribute(<span class="string">"dir"</span>).getValue() + <span class="string">"'"</span>);</pre></td></tr>
+<tr> <td class="numLineCover"> 476</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">throw</span> <span class="keyword">new</span> DuplicateElementException(<span class="string">"Duplicate parameter '"</span> + element.getAttribute(<span class="string">"dir"</span>).getValue() + <span class="string">"'"</span>);</pre></td></tr>
<tr> <td class="numLine"> 477</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 478</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
-<tr> <td class="numLineCover"> 479</td> <td class="nbHitsCovered"> 771</td> <td class="src"><pre class="src"> <span class="keyword">return</span> results;</pre></td></tr>
+<tr> <td class="numLineCover"> 479</td> <td class="nbHitsCovered"> 514</td> <td class="src"><pre class="src"> <span class="keyword">return</span> results;</pre></td></tr>
<tr> <td class="numLine"> 480</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 481</td> <td class="nbHits"> </td>
@@ -884,15 +884,15 @@
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine"> 487</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> Descriptor build(<span class="keyword">final</span> Document document) {</pre></td></tr>
-<tr> <td class="numLineCover"> 488</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, Organisation> organisations = mapOrganisations(document);</pre></td></tr>
-<tr> <td class="numLineCover"> 489</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, License> licenses = mapLicenses(document);</pre></td></tr>
-<tr> <td class="numLineCover"> 490</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, String> notices = mapNotices(document);</pre></td></tr>
-<tr> <td class="numLineCover"> 491</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> License primaryLicense = primaryLicense(document, licenses);</pre></td></tr>
-<tr> <td class="numLineCover"> 492</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String primaryCopyrightNotice = primaryCopyrightNotice(document);</pre></td></tr>
-<tr> <td class="numLineCover"> 493</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String primaryNotice = primaryNotice(document);</pre></td></tr>
-<tr> <td class="numLineCover"> 494</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String primaryOrganisationId = primaryOrganisationId(document);</pre></td></tr>
-<tr> <td class="numLineCover"> 495</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Collection<WithinDirectory> contents = collectContents(document, licenses, organisations); </pre></td></tr>
-<tr> <td class="numLineCover"> 496</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> Descriptor(primaryLicense, primaryCopyrightNotice,</pre></td></tr>
+<tr> <td class="numLineCover"> 488</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, Organisation> organisations = mapOrganisations(document);</pre></td></tr>
+<tr> <td class="numLineCover"> 489</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Map<String, License> licenses = mapLicenses(document);</pre></td></tr>
[... 20 lines stripped ...]