BenoitTalbot / bungeni-portal

Automatically exported from code.google.com/p/bungeni-portal
0 stars 0 forks source link

XML publication workflow in Bungeni #715

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
Problem Statement
--------------------

Currently in bungeni for a content item , e.g.:
http://ao.bungeni.org/business/questions/obj-4

It is possible to have a XML view of the same content currently:
http://ao.bungeni.org/business/questions/obj-4/feed.akomantoso

This is currently rendered via a page template. 

For archival purposes a workflow based publication of xml is required. 

To Do
-------

Add archival and publication steps to parliamentary item workflows.

'Archival' is intended to produce the content in 'archival format' -- which is 
1 or more XML documents and binary documents (an xml package).

'Publication' is intended to push the XML documents package into an external 
data store.

Archival - XML Generation
-----------------------------

The final archival format for Bungeni content is Akoma Ntoso XML.

All Bungeni item level metadata will be recored in the archival XML as Akoman 
Ntoso metadata. 

However -- there is no fixed 1 - to - 1 mapping between Bungeni content (e.g. a 
Question object) and that same Question represented in Akoma Ntoso XML. 

For e.g. -- Akoma Ntoso uses the FRBR retrieval and access model for 
representing item metadata. Date information is recorded within FRBR records 
for an item. A bungeni question can have multiple dates of relevance -- since 
each status has a date associated with it -- any of these dates could be an 
archival date.

For this reason the generation of the archival xml needs to be decoupled from 
the Bungeni item representation.

One way to handle this is detailed below :

1) The Bungeni parliamentary item will be converted to XML by serailizing the 
object to a serialized XML format e.g. using available libraries like : 
http://lxml.de/objectify.html , http://code.activestate.com/recipes/355487/ , 
http://coder.cl/products/pyxser/ .

Note that for a item like a Question it means outputting all of :
  - The Question objects field metadata
  - All status dates
  - All attachments (these will be in their native format -- but the attachments will need a manifest listing what all the attahcments and their attributes)

2) An XSLT style sheet will convert this intermediate XML form to Akoma Ntoso 
xml.
This allows Bungeni to output XML in one standard form (i.e. it need not be 
customized per parliamentary implementation) -- and the XSLT layer full 
flexiblity to map items from the object to the Akoma Ntoso xml as per 
individual parliament's requirements (i.e. only the xslt stylesheet needs to be 
modified as per individual parliament's requirements ) . 

Publication 
---------------

The generated archival XML will be posted to a repository / file system for 
further consumption.

Original issue reported on code.google.com by ashok.ha...@gmail.com on 8 Jul 2011 at 2:46

GoogleCodeExporter commented 8 years ago
Obsoleting this issue -- adding new more detailed issue for this problem.

Original comment by ashok.ha...@gmail.com on 18 Jul 2011 at 1:23