1
2
3
4 package org.astrogrid.dataservice.metadata.html;
5
6 import org.astrogrid.xml.DomHelper;
7 import org.w3c.dom.Element;
8
9
10 /***
11 * Renders the 'core' elements of a Resource in HTML
12 */
13
14 public class ResourceHtmlRenderer {
15
16 /*** Renders the core resource elements as 'prose' paragraphs for including in
17 * a page */
18 public String renderAsParagraphs(Element resource) {
19
20 StringBuffer html = new StringBuffer();
21
22 Element identifier = DomHelper.getSingleChildByTagName(resource, "Identifier");
23
24 html.append("<p><b>Authority ID</b>: "+DomHelper.getValueOf(identifier, "AuthorityID"));
25 html.append("<p><b>Resource Key</b>: "+DomHelper.getValueOf(identifier, "ResourceKey"));
26
27 html.append("<p><b>Title</b>: "+DomHelper.getValueOf(resource, "Title"));
28 html.append("<p><b>Short Name</b>: "+DomHelper.getValueOf(resource, "ShortName"));
29
30 Element summary = DomHelper.getSingleChildByTagName(resource, "Summary");
31
32 html.append("<p><b>Description</b>: "+DomHelper.getValueOf(summary, "Description"));
33 html.append("<p><b>Reference</b>: "+DomHelper.getValueOf(summary, "ReferenceURL"));
34
35 Element curation = DomHelper.getSingleChildByTagName(resource, "Curation");
36
37 html.append("<p><b>Publisher</b>: "+DomHelper.getValueOf(curation, "Publisher"));
38
39 Element contact = DomHelper.getSingleChildByTagName(curation, "Contact");
40
41 html.append("<p><b>Name</b>: "+DomHelper.getValueOf(contact, "Name"));
42 html.append("<p><b>Email</b>: "+DomHelper.getValueOf(contact, "Email"));
43 html.append("<p><b>Date</b>: "+DomHelper.getValueOf(contact, "Date"));
44
45 return html.toString();
46 }
47
48 /*** For including in summary table rows */
49 public String renderAsCells(Element resource) {
50 StringBuffer html = new StringBuffer();
51
52 Element identifier = DomHelper.getSingleChildByTagName(resource, "Identifier");
53
54 html.append("<td>"+
55 DomHelper.getValueOf(identifier, "AuthorityID")+"/"+
56 DomHelper.getValueOf(identifier, "ResourceKey")+
57 "</td>");
58
59 Element summary = DomHelper.getSingleChildByTagName(resource, "Summary");
60
61 html.append("<td><b>"+
62 DomHelper.getValueOf(resource, "Title")+"</b><br>"+
63 DomHelper.getValueOf(summary, "Description")+
64 "</td>");
65
66 Element curation = DomHelper.getSingleChildByTagName(resource, "Curation");
67
68 Element contact = DomHelper.getSingleChildByTagName(curation, "Contact");
69
70 html.append("<td>"+DomHelper.getValueOf(contact, "Name")+"<br>"+
71 DomHelper.getValueOf(contact, "Email")+"<br>"+
72 DomHelper.getValueOf(contact, "Date")+"</td>");
73
74 return html.toString();
75 }
76 }