Closed Bug 49225 Opened 24 years ago Closed 22 years ago

created new XSLT conversion capability for XML bugs

Categories

(Bugzilla :: User Interface, enhancement, P3)

enhancement

Tracking

()

RESOLVED DUPLICATE of bug 86168

People

(Reporter: jones, Assigned: myk)

Details

Attachments

(3 files)

I have created a new module (transform.cgi) that takes a list of bug ids, generates an XML version of the list (using Bug.emitXML()), and then transforms the XML output into an HTML interface using an XSLT stylesheet. This is an attempt to experiment with separating the user interface of bugzilla from the perl code in a modular and re-configurable manner. I provided an XSLT stylesheet (long_list.xsl) that demonstrates a long bug listing using this technique. There are several hairy issues, most notably how Bugzilla encodes HTML in Params. Much of that HTML in the params (like %bannerhtml%) is not well-formed and so cannot be included in XML output. I have included a patch that fixes some of the well-formedness problems withthe default parameter values to make this example work. The module needs to be generalized to handle all XSLT transformation chores for Bugzilla, but the architecture for such a module wasn't clear at this time.It does make for a good XSLT demonstration and parallels the "xml.cgi" module. This bug relates to Bug #48707 because it could be used to generate HTML from that XML output. The module uses XML::Sablotron to do the XSLT transformation. Attachments will follow.
Matt: is this stuff that you think should be landed in the bugzilla tree as it is, or does it require more massaging? And even if the XML/XSL related stuff does require more massaging, couldn't the HTML well-formedness stuff be landed as is?
Dan -- the patch for making the default HTML well-formed (basically using XHTML conventions) could be landed as it currently stands. However, it does not solve all of the well-formedness errors that are present in bugzilla html code, which is being tackled under bug #47251. We'd need to eventually find all of those. The XSLT processing code works as I submitted it using the then-current version from CVS, so I think it could be checked into the tree as an "experimental" module so that people could add to it and critique it as an approach for UI separation. Is there an area of the tree that this type of code could be added so that others can review and refine it (contrib?)? However, to really deploy it, we would need to: 1) agree on XML formats for bugs and query result sets; 2) generalize the XSLT transformation module so that it could transform all of the various UI outputs to html format, like the bug editing form and the query results screens; 3) decide on a mechanism for associating stylesheets with each UI output, probably using the Params methods; 4) make sure Bug.pm works fully in terms of its XML output formatting. We would also need to determine if an added dependency on XML::Sablotron is acceptable and works across platforms.
Keywords: patch, review
Target Milestone: --- → Bugzilla 2.16
-> Bugzilla product, User Interface component, reassigning. Look at this!
Assignee: tara → myk
Component: Bugzilla → User Interface
Product: Webtools → Bugzilla
Version: other → unspecified
> This is an > attempt to experiment with separating the user interface of bugzilla from the > perl code in a modular and re-configurable manner. We opted for templates :-) Gerv
Pushing out; but if no-one can point out any remaining value in this patch, we'll have to close the bug. The well-formedness stuff is happening as part of templatisation. The patch is excellent - it's just not the way we went in the end :-) Gerv
Target Milestone: Bugzilla 2.16 → Bugzilla 2.18
Yeah, I think this is all covered by the templating. Semi-dupe of bug 86168 *** This bug has been marked as a duplicate of 86168 ***
Status: NEW → RESOLVED
Closed: 22 years ago
Resolution: --- → DUPLICATE
clearing target in DUPLICATE/WORKSFORME/INVALID/WONTFIX bugs so they'll show up as untriaged if they get reopened.
Target Milestone: Bugzilla 2.18 → ---
QA Contact: matty_is_a_geek → default-qa
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: