530 likes | 684 Views
Open Office.Org. What is the Open Office.org Source Project? Open source project through which Sun Microsystems is releasing the technology for the popular Star Office(tm) productivity suite. Name of the overall project and is being hosted by CollabNet. Features:.
E N D
Open Office.Org • What is the Open Office.org Source Project?Open source project through which Sun Microsystems is releasing the technology for the popular Star Office(tm) productivity suite. • Name of the overall project and is being hosted by CollabNet.
Features: • downloadable sources and information • the community and communication mechanisms for the project • The governance body called the Open Office.org Foundation
Mission • To create an open and ubiquitous XML-based file format for office documents and to provide an open reference implementation for this format. • XML adopted as the new native file format for the Star Office™ suite, replacing the old binary file format.
Goal • Two Fold • Complete specification encompassing all Star Office components • Provide an open standard for office documents
Why XML? • Ideal open standard because of the free availability of • XML specifications • DTDs • XSL, XSLT, XLink, SVG, MathML • One single XML format can be applied to different types of documents
XML File Format Specification • Name Spaces • Structure • Document Info
Name Spaces • Office • Style • Api • Table • Meta • Draw
Structure • Element symbolizes structural components • The structure applies to all applications • Text,spreadsheet,drawing… all differ only by content and all are represented by the same structure
Document Root • Root – ‘document’ • XML code <office:document> • DTD <!ELEMENT office:document • (office:meta?,office:configs?,office:scripting?,…)>
Root element Attributes • ‘Class’ –identifies document application • text • on-line text • Spreadsheet • Drawing • Presentation • XML code: office:class
Version • Gives the version of the file format • XML code: office:version • DTD : <!ATTLIST office:document office:version CDATA #implied>
Document Information • Title • Author • Document creation date • Specified using ‘meta’ element • XML code <office:meta>
Others • Scripting • Forms • Styles • Configuration management
Document Content • ‘body’ element contains content • XML code :<office:body> • DTD <!ELEMENT office:body ANY> • ‘ANY’ indicates any type of content
White Space processing & EOL handling • White spaces ignored for elements that have element contents • Preserved by default • Line feed & carriage return for line ends • Entity reference 
Document Validation • If document is validated it must match the DTD • Not appropriate to validate in following cases 1. Documents created by another version 2. Documents that contain a custom extension
Why not Validate? • Both documents may contain elements & attributes that may be unknown to the application processing the file • Forward compatible processing rules describes how to handle such elements
RULES • Major version same as current major version & minor version same or less than current minor version then • FCP is “DISABLED” • The document may be validated
RULES • If major version same as current major version and minor version greater than current minor version • FCP “ENABLED” • Document should not be validated • The same thing holds good when major versions are not equal
Preserving unknown attributes • Attributes preserved by default • Some attributes corrupt document.These should not be preserved • <?staroffice:preserve excl-attrs = “….”?> • …. Is any valid xpath expression
Language element • Language element specifies default document language • XML Code <dc:language> • DTD <!ELEMENT dc:language ‘language code’>
DATA STYLES • Displaying different types of data • Number style <number:number-style> • Currency <number:currency-style> • Date <number:time-style> • Boolean • Text …
HANDLING HYPERLINKS • Hyperlinks in text documents are represented by a simple XLink • XML Code: <text:a> • Rules: If this element contains white-space characters, the characters are collapsed • DTD: <!ELEMENT text:a (script:events?,(%inline-text;)*)>
ATTRIBUTES • The attributes associated with the <text:a> element are: • Name • Link locator • Target frame • Text styles
NAME • A hyperlink can have a name, but it is not essential. The name attribute specifies the name of the hyperlink if one exists. • This name can serve as a target for some other hyperlinks.
XML –CODE text:name • DTD: <!ATTLIST text:a text:name CDATA #IMPLIED> • Notes: This attribute is specified for compatibility with HTML where an <a> element may serve as link source and target simultaneously
Target Frame • The target frame name of the link is specified by a ‘target- frame- name’ attribute • XML Code: office:target-frame-name
RULES • " _self “referenced document replaces current frame • " _blank “ referenced document displayed in a new frame • " _parent “referenced document displayed in the parent frame of the current frame
RULES • " _top” The referenced document is displayed in the uppermost frame • A frame name referenced document is displayed in the named frame
XLINK SPECIFICATION • xlink:show attribute is attached to the <text:a> element • DTD: <!ATTLIST text:a office:target-frame-name CDATA #REQUIRED> • <!ATTLIST text:a xlink:show (new|replace) "replace">
Link Locator • The location of the link (URL) is specified by a href attribute • XML Code: xlink:href
Link Locator • DTD: <!ATTLIST text:a xlink:href %url #REQUIRED> • <!ATTLIST text:a xlink:type (simple) #FIXED “simple”> • <!ATTLIST text:a xlink:actuate (onRequest) “onRequest”>
Text Styles • Every hyperlink has two text styles as follows:
Text Styles • " If the link location of the hyperlink has not been visited, a certain text style is applied to the text of the hyperlink • " If the link location of the hyperlink has already been visited, a different text style is applied to the text of the hyperlink
DatabaseFields • Display data from databases as text • Star office databases are either tables or queries • Every database has a name used for its identity
DatabaseFields • DTD <!ENTITY % database-table • text:database-name CDATA # REQUIRED • text:table-name CDATA #REQUIRED “>
Displaying databases • ‘database-display’ element used • ‘column-name’ attribute selects selects column • DTD <!ATTLIST text:database-display text:column-name CDATA #REQUIRED
Graphic Content • Configuring Graphic Document • Info needs to be supplied • Drawing • Rectangle • Line
Graphic Content • Polygon • Circle • Ellipse
Rectangle • ‘ rect’ element represents rectangular drawing shape • DTD <!ELEMENT draw:rect text:p*> • <!ATTLIST draw:rect %draw-position • %draw-size • %draw-style-name • %draw-transform
LINE • ‘line’ element represents line • DTD <!ELEMENT draw:line text:p*> • <!ATTLIST draw:line svg:x1 %coordinate; #IMPLIED • svg:x2 %coordinate; #IMPLIED • svg:y1 %coordinate; #IMPLIED • svg:y2 %coordinate; #IMPLIED
POLYGON • XML-CODE <draw:polygon> • DTD <!ELEMENT draw:polygon text:p*> • <!ATTLIST draw:polygon %draw-position • %draw-size • draw:points %points; #REQUIRED
TRANSFORMATION • ‘transform’ attributes specifies list of transformations • <draw:g> is the element • XML CODE : svg:transform • Value of it is a list of transform definitions separated by white spaces
TRANSFORM DEFINITIONS • Matrix(<a> <b> <c> <d> <e> <f>) • Transformation matrix of six values • Equivalent to [a b c d e f] • Translate(<tx>[<ty>]) • Scale(<sx> [<sy>]) • Rotate(<rotate-angle>) • skewX(<skew-angle>)
CHARTS • Can exist as standalone docments or as documents inside XML documents • To create a standalone chart document • set the value of the ‘office:class’ attribute to chart in the <office:document> element • Chart data is contained in <table:table> element
CHART INSIDE SPREADSHEET • To reference the correct table and cells you can use the table:cell-range-address attributes, which • are applied to the <chart:series> elements that represent the data series in the chart
‘chart’ ELEMENT • The chart element represents an entire chart, including titles, a legend , and the graphical object that visualizes the underlying data called the plot area. • The ‘class’ attribute specifies the chart type.
CLASS • DTD: <!ENTITY % chart-class • "(line|area|circle|ring|scatter|radar|bar|stock|bubble)"> • <!ATTLIST chart:chart
CLASS • chart:class %chart-class; #REQUIRED • svg:width %length; #IMPLIED • svg:height %length; #IMPLIED • chart:style-name %style-name; #IMPLIED >
DTD’S • Office.dtd is the main DTD file • Chart.mod • Text.mod • Dtypes.mod • Meta.mod • Datastyle.mod