SlideShare a Scribd company logo
Strategies for  Using Metadata Reuven Weiser, Suite Solutions
Who am I? Background in Computer Science and Education Experience in several computer companies over the past decade Web applications Server-  and Client-side applications Early member of the Suite Solutions team On-site and online training seminars PDF and HTML style sheet projects CMS integration Project Management
What is Suite Solutions? Our Mission To increase our customers’ profitability by significantly improving the efficiency of their information development and delivery processes. Qualitative Advantage Content Lifecycle Implementation (CLI) is Suite Solutions’  comprehensive approach – from concept to publication – to maximizing the value of your information assets. Our professionals are with you at every phase, determining, recommending and implementing the most cost-effective, flexible and long term solution for your business.
Main Topics What is metadata? Metadata options Default options Custom options Extracting metadata using custom XSL Basic technique Tips
What is metadata? Source:  http://itmanagement.earthweb.com/cnews/article.php/3878261/Tech-Comics-Whats-Metadata.htm
What is metadata? Metadata is “data about data” It can be used to describe the nature of a publication or topic, or the nature of the product that the publication or topic is about. Why is it helpful? It allows for the inclusion of information aside from the actual document content.  Examples: Copyright information Product version Source documents
Main Topics What is metadata? Metadata options Default options Custom options Extracting metadata using custom XSL Basic technique Tips
Metadata options Default options The DITA language specification offers a wide variety of default metadata tags Metadata can be applied to an entire map, a submap, or an individual topic The default tags available depend on whether the content is organized in a ditamap or a bookmap Full reference can be found online:  http://docs.oasis-open.org/dita/v1.1/OS/langspec/ditaref-type.html
Metadata options Default options: (dita)map/topicmeta
Metadata options Default options: bookmap/bookmeta
Main Topics What is metadata? Metadata options Default options Custom options Extracting metadata using custom XSL Basic technique Tips
Metadata options Custom options A number of approaches exist for including types of metadata not directly or specifically supported by the default tags: outputclass attribute <othermeta> element <data> element Specialization
Metadata options Custom options: outputclass Goal: A client wants a publication to have a title and a subtitle on the cover page, and a different title in the running header Challenge: The <booktitle> element supports only <mainbooktitle> and <booktitlealt> Solution: Use outputclass! Example: <booktitle>   <mainbooktitle> Your New Gadget </mainbooktitle>   <booktitlealt  outputclass= “subtitle” > An Overview </booktitlealt>   <booktitlealt  outputclass= “header_title” > New Gadget </booktitlealt> </booktitle>
Metadata options Custom options outputclass attribute <othermeta> element <data> element Specialization
Metadata options Custom options: <othermeta> Goal: A client wants to indicate whether a publication relates to a hardware product or a software product Challenge: There is no default metadata element intended for that piece of information (<category> may be used for something else) Solution: Use <othermeta>! Example: <othermeta  name= “product_type”   content= “software” />
Metadata options Custom options outputclass attribute <othermeta> element <data> element Specialization
Metadata options Custom options: <data> Goal: A client wants to display a series of contact information on the back cover Sample:
Metadata options Custom options: <data> Challenge: There are no default metadata tags that provide that structure  and  allow that flexibility Solution: Use <data>!
Metadata options Custom options: <data> Example: <data  name= “contacts” >   <data  name= “contact” >   <data  name= “name” > BigCorp Inc. USA </data>   <data> Worldwide Headquarters </data>   <data> 7070 Wilshire Circle </data>   <data> Boulder, Colorado 80301 </data>   <data> T +1 303-555-5200 </data>   <data> T +1 800-555-6277 </data>   <data> F +1 303-555-8459 </data>   <data  name= “url” > www.bigcorp.com </data>   </data>   <data  name= “contact” >   <data  name= “name” > BigCorp Europe </data>   <data> Subdivision Management </data>   <data> Hydrostraat 1 </data>   <data> 6718 WX Ede </data>   <data> The Netherlands </data>   <data> T +31 (0) 318 555 555 </data>   <data> F +31 (0) 318 555 556 </data>   <data  name= “url” > www.bigcorp.nl </data>   </data>   <data  name= “contact” >   <data  name= “name” > BigCorp Asia </data>   <data> Subdivision Management </data>   <data> 1 Dragon Crescent </data>   <data> Singapore 128461 </data>   <data> Republic of Singapore </data>   <data> T +65 5555-8211 </data>   <data> F +65 5555-8003 </data>   </data>   <data  name= “contact” >   <data  name= “name” > BigCorp UK </data>   <data> Subdivision Management Limited </data>   <data> Shepsfield Way </data>   <data> Crackerbury Industrial Estate </data>   <data> Stockport SK6 2SU U.K. </data>   <data> T +44 0870 555 1978 </data>   <data> F +44 0800 555 181 </data>   </data>   </data>
Metadata options Custom options outputclass attribute <othermeta> element <data> element Specialization
Metadata options Custom options: Specialization Goal: A client wants to indicate whether a publication relates to a hardware product or a software product, but doesn’t want authors to have to remember the correct value for the “name” attribute, and wants to limit the possible values to “hardware”, “software” or “system” Challenge: Limiting values isn’t possible with approaches discussed so far Solution: Specialize the <category> element! Example: <prodcategory  value= “software” />
Metadata options Custom options outputclass attribute <othermeta> element <data> element Specialization
Main Topics What is metadata? Metadata options Default options Custom options Extracting metadata using custom XSL Basic technique Tips
Extracting metadata Basic technique Metadata: <bookmeta>   <prodinfo>   <prodname> My Product </prodname>   <vrmlist>   <vrm  version= “2.4” />   </vrmlist>   </prodinfo>   </bookmeta> The “Right” Way: <xsl:value-of  select= “/*[contains(@class, ' bookmap/bookmap ')]/ opentopic:map/*[contains(@class, ' bookmap/bookmeta ')]/ *[contains(@class, ' topic/prodinfo ')][1]/ *[contains(@class, ' topic/vrmlist ')]/ *[contains(@class, ' topic/vrm ')][1]/@version” /> The Easy Way: <xsl:value-of  select= “//*[contains(@class, ' topic/vrm ')][1]/@version” />
Main Topics What is metadata? Metadata options Default options Custom options Extracting metadata using custom XSL Basic technique Tips
Extracting metadata Tips For best performance, avoid using “//” Be sure to note which metadata elements allow multiple instances, and restrict accordingly For easy reuse, declare variables: <xsl:variable  name= “version” > <xsl:value-of  select=“ /*[contains(@class, ' bookmap/bookmap ')]/ opentopic:map/*[contains(@class, ' bookmap/bookmeta ')]/ *[contains(@class, ' topic/prodinfo ')][1]/ *[contains(@class, ' topic/vrmlist ')]/ *[contains(@class, ' topic/vrm ')][1]/@version” /> </xsl:variable > <xsl:value-of  select= “$version” >
Extracting metadata Tips When designing cover pages, start with the FO and work your way back to the XSL Some helpful header/footer information can be retrieved from markers in addition to metadata Example: <fo:retrieve-marker  retrieve-class-name= “current-header” />
Main Topics What is metadata? Metadata options Default options Custom options Extracting metadata using custom XSL Basic technique Tips
End of Strategies for Using Metadata Be in touch! Reuven Weiser [email_address] Let us know how we can help you further… One-on-one support and training CMS

More Related Content

PPTX
Overview of the DITA Open Toolkit
Suite Solutions
 
PPTX
Dita ot pipeline webinar
Suite Solutions
 
PPT
Understanding and Configuring the FO Plug-in for Generating PDF Files: Part I...
Suite Solutions
 
PPT
CustomizingStyleSheetsForHTMLOutputs
Suite Solutions
 
PPT
Understanding and Configuring the FO Plug-in for Generating PDF Files: Part I...
Suite Solutions
 
PPTX
Overview of XSL, XPath and XSL-FO
Suite Solutions
 
PPTX
Easy steps to convert your content to structured (frame maker and xml)
Publishing Smarter
 
PPT
Implementing Structured FrameMaker
Dkadilak62263
 
Overview of the DITA Open Toolkit
Suite Solutions
 
Dita ot pipeline webinar
Suite Solutions
 
Understanding and Configuring the FO Plug-in for Generating PDF Files: Part I...
Suite Solutions
 
CustomizingStyleSheetsForHTMLOutputs
Suite Solutions
 
Understanding and Configuring the FO Plug-in for Generating PDF Files: Part I...
Suite Solutions
 
Overview of XSL, XPath and XSL-FO
Suite Solutions
 
Easy steps to convert your content to structured (frame maker and xml)
Publishing Smarter
 
Implementing Structured FrameMaker
Dkadilak62263
 

What's hot (20)

PPTX
Modular documentation in Structured FrameMaker
Jang F.M. Graat
 
PPTX
DITA Quick Start for Authors Part II
Suite Solutions
 
PDF
Xml
Anas Sa
 
PPT
Patni Hibernate
patinijava
 
PDF
23xml
Adil Jafri
 
ODP
An RDF Metadata Model for OpenDocument Format 1.2
Alexandro Colorado
 
PPTX
Oracle Sql Developer Data Modeler 3 3 new features
Philip Stoyanov
 
PPTX
Xml 1
pavishkumarsingh
 
PDF
Programming Without Coding Technology (PWCT) Environment
Mahmoud Samir Fayed
 
ODP
Processing OpenDocument Format
Alexandro Colorado
 
PDF
Introduction to XML and Databases
torp42
 
PPT
Rational Publishing Engine with Rational DOORS
GEBS Reporting
 
PPTX
DITA Quick Start Webinar Series: Getting Started with the DITA Open Toolkit
Suite Solutions
 
PPT
Ch2 neworder
davidlahr32
 
PDF
Introduction to XML
Prabu U
 
PPT
Day Of Dot Net Ann Arbor 2007
David Truxall
 
PDF
XML and XML Applications - Lecture 04 - Web Information Systems (WE-DINF-11912)
Beat Signer
 
PPTX
Xml applications
Nabahat Tahir
 
PPTX
OData Introduction and Impact on API Design (Webcast)
Apigee | Google Cloud
 
Modular documentation in Structured FrameMaker
Jang F.M. Graat
 
DITA Quick Start for Authors Part II
Suite Solutions
 
Xml
Anas Sa
 
Patni Hibernate
patinijava
 
23xml
Adil Jafri
 
An RDF Metadata Model for OpenDocument Format 1.2
Alexandro Colorado
 
Oracle Sql Developer Data Modeler 3 3 new features
Philip Stoyanov
 
Programming Without Coding Technology (PWCT) Environment
Mahmoud Samir Fayed
 
Processing OpenDocument Format
Alexandro Colorado
 
Introduction to XML and Databases
torp42
 
Rational Publishing Engine with Rational DOORS
GEBS Reporting
 
DITA Quick Start Webinar Series: Getting Started with the DITA Open Toolkit
Suite Solutions
 
Ch2 neworder
davidlahr32
 
Introduction to XML
Prabu U
 
Day Of Dot Net Ann Arbor 2007
David Truxall
 
XML and XML Applications - Lecture 04 - Web Information Systems (WE-DINF-11912)
Beat Signer
 
Xml applications
Nabahat Tahir
 
OData Introduction and Impact on API Design (Webcast)
Apigee | Google Cloud
 
Ad

Similar to StrategiesForUsingMetadata (20)

PPT
Struts2 course chapter 2: installation and configuration
JavaEE Trainers
 
PPT
Presentation Moss 2007 Usman
Usman Zafar Malik
 
PPT
Agile Descriptions
Tony Hammond
 
PPTX
Methods and Best Practices for High Performance eCommerce
dmitriysoroka
 
PPT
Introduction To Information Modeling With DITA
Scott Abel
 
PPT
Krazykoder struts2 data_tags
Krazy Koder
 
PPT
Dan Holevoet, Google
500 Startups
 
PPT
Debugging and Error handling
Suite Solutions
 
PPT
ImplementingChangeTrackingAndFlagging
Suite Solutions
 
PPT
HTML & CSS
jlinabary
 
PPT
Developing Gadgets
Quirk
 
PPTX
HTML5 - One spec to rule them all
Stu King
 
PPT
AdvancedXPath
Suite Solutions
 
PPT
Struts2
Scott Stanlick
 
PPT
Lecture 2 - Comm Lab: Web @ ITP
yucefmerhi
 
PPTX
HTML and CSS workshop
Manchester Girl Geeks Geeks
 
ODP
HTML5: 5 Quick Wins
Jeff Leombruno
 
PPT
3 xml namespaces and xml schema
gauravashq
 
PPT
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
guest517f2f
 
PPT
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Pamela Fox
 
Struts2 course chapter 2: installation and configuration
JavaEE Trainers
 
Presentation Moss 2007 Usman
Usman Zafar Malik
 
Agile Descriptions
Tony Hammond
 
Methods and Best Practices for High Performance eCommerce
dmitriysoroka
 
Introduction To Information Modeling With DITA
Scott Abel
 
Krazykoder struts2 data_tags
Krazy Koder
 
Dan Holevoet, Google
500 Startups
 
Debugging and Error handling
Suite Solutions
 
ImplementingChangeTrackingAndFlagging
Suite Solutions
 
HTML & CSS
jlinabary
 
Developing Gadgets
Quirk
 
HTML5 - One spec to rule them all
Stu King
 
AdvancedXPath
Suite Solutions
 
Lecture 2 - Comm Lab: Web @ ITP
yucefmerhi
 
HTML and CSS workshop
Manchester Girl Geeks Geeks
 
HTML5: 5 Quick Wins
Jeff Leombruno
 
3 xml namespaces and xml schema
gauravashq
 
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
guest517f2f
 
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Pamela Fox
 
Ad

More from Suite Solutions (20)

PPTX
SuiteHelp 4.0: Latest Features in Enterprise Webhelp
Suite Solutions
 
PPTX
Moving your Organization up the Knowledge Value Chain (Proposal for Lavacon 2...
Suite Solutions
 
PPTX
Increasing Findability with Subject Schemes (Advanced DITA Webinar)
Suite Solutions
 
PPTX
SuiteHelp 3.2.5 Latest Features
Suite Solutions
 
PPTX
Using Taxonomy for Customer-centric Dynamic Publishing
Suite Solutions
 
PPTX
DITA Quick Start Webinar: Defining Your Style Sheet Requirements
Suite Solutions
 
PPTX
DITA Quick Start Webinar Series: Building a Project Plan
Suite Solutions
 
PPTX
DITA Quick Start Webinar Series: Building a Project Plan
Suite Solutions
 
PPTX
DITA Quick Start: System Architecture of a Basic DITA Toolset
Suite Solutions
 
PPTX
DITA Quick Start Webinar Series: Getting Started with Information Architecture
Suite Solutions
 
PPT
Introduction to S1000D
Suite Solutions
 
PPTX
DITA Quick Start for Authors - Part I
Suite Solutions
 
PPTX
Suite Labs: Generating SuiteHelp Output
Suite Solutions
 
PPTX
Overview of SuiteHelp 3.1 for DITA
Suite Solutions
 
PDF
Svg and graphics
Suite Solutions
 
PPT
C:\Users\User\Desktop\Eclipse Infocenter
Suite Solutions
 
PPT
LocalizingStyleSheetsForHTMLOutputs
Suite Solutions
 
PPTX
Ot performance webinar
Suite Solutions
 
PPT
PDF Localization
Suite Solutions
 
PPTX
Dost.jar and fo.jar
Suite Solutions
 
SuiteHelp 4.0: Latest Features in Enterprise Webhelp
Suite Solutions
 
Moving your Organization up the Knowledge Value Chain (Proposal for Lavacon 2...
Suite Solutions
 
Increasing Findability with Subject Schemes (Advanced DITA Webinar)
Suite Solutions
 
SuiteHelp 3.2.5 Latest Features
Suite Solutions
 
Using Taxonomy for Customer-centric Dynamic Publishing
Suite Solutions
 
DITA Quick Start Webinar: Defining Your Style Sheet Requirements
Suite Solutions
 
DITA Quick Start Webinar Series: Building a Project Plan
Suite Solutions
 
DITA Quick Start Webinar Series: Building a Project Plan
Suite Solutions
 
DITA Quick Start: System Architecture of a Basic DITA Toolset
Suite Solutions
 
DITA Quick Start Webinar Series: Getting Started with Information Architecture
Suite Solutions
 
Introduction to S1000D
Suite Solutions
 
DITA Quick Start for Authors - Part I
Suite Solutions
 
Suite Labs: Generating SuiteHelp Output
Suite Solutions
 
Overview of SuiteHelp 3.1 for DITA
Suite Solutions
 
Svg and graphics
Suite Solutions
 
C:\Users\User\Desktop\Eclipse Infocenter
Suite Solutions
 
LocalizingStyleSheetsForHTMLOutputs
Suite Solutions
 
Ot performance webinar
Suite Solutions
 
PDF Localization
Suite Solutions
 
Dost.jar and fo.jar
Suite Solutions
 

Recently uploaded (20)

PDF
The-Invisible-Living-World-Beyond-Our-Naked-Eye chapter 2.pdf/8th science cur...
Sandeep Swamy
 
PPTX
An introduction to Dialogue writing.pptx
drsiddhantnagine
 
PDF
Module 2: Public Health History [Tutorial Slides]
JonathanHallett4
 
PPTX
Python-Application-in-Drug-Design by R D Jawarkar.pptx
Rahul Jawarkar
 
PPTX
Command Palatte in Odoo 18.1 Spreadsheet - Odoo Slides
Celine George
 
PPTX
Introduction to pediatric nursing in 5th Sem..pptx
AneetaSharma15
 
PDF
Antianginal agents, Definition, Classification, MOA.pdf
Prerana Jadhav
 
PPTX
Artificial-Intelligence-in-Drug-Discovery by R D Jawarkar.pptx
Rahul Jawarkar
 
PPTX
INTESTINALPARASITES OR WORM INFESTATIONS.pptx
PRADEEP ABOTHU
 
PDF
Health-The-Ultimate-Treasure (1).pdf/8th class science curiosity /samyans edu...
Sandeep Swamy
 
PDF
Review of Related Literature & Studies.pdf
Thelma Villaflores
 
PPTX
Cleaning Validation Ppt Pharmaceutical validation
Ms. Ashatai Patil
 
PPTX
Care of patients with elImination deviation.pptx
AneetaSharma15
 
PPTX
BASICS IN COMPUTER APPLICATIONS - UNIT I
suganthim28
 
PPTX
How to Manage Leads in Odoo 18 CRM - Odoo Slides
Celine George
 
PPTX
Measures_of_location_-_Averages_and__percentiles_by_DR SURYA K.pptx
Surya Ganesh
 
DOCX
Modul Ajar Deep Learning Bahasa Inggris Kelas 11 Terbaru 2025
wahyurestu63
 
PPTX
HEALTH CARE DELIVERY SYSTEM - UNIT 2 - GNM 3RD YEAR.pptx
Priyanshu Anand
 
PPTX
CDH. pptx
AneetaSharma15
 
PPTX
Artificial Intelligence in Gastroentrology: Advancements and Future Presprec...
AyanHossain
 
The-Invisible-Living-World-Beyond-Our-Naked-Eye chapter 2.pdf/8th science cur...
Sandeep Swamy
 
An introduction to Dialogue writing.pptx
drsiddhantnagine
 
Module 2: Public Health History [Tutorial Slides]
JonathanHallett4
 
Python-Application-in-Drug-Design by R D Jawarkar.pptx
Rahul Jawarkar
 
Command Palatte in Odoo 18.1 Spreadsheet - Odoo Slides
Celine George
 
Introduction to pediatric nursing in 5th Sem..pptx
AneetaSharma15
 
Antianginal agents, Definition, Classification, MOA.pdf
Prerana Jadhav
 
Artificial-Intelligence-in-Drug-Discovery by R D Jawarkar.pptx
Rahul Jawarkar
 
INTESTINALPARASITES OR WORM INFESTATIONS.pptx
PRADEEP ABOTHU
 
Health-The-Ultimate-Treasure (1).pdf/8th class science curiosity /samyans edu...
Sandeep Swamy
 
Review of Related Literature & Studies.pdf
Thelma Villaflores
 
Cleaning Validation Ppt Pharmaceutical validation
Ms. Ashatai Patil
 
Care of patients with elImination deviation.pptx
AneetaSharma15
 
BASICS IN COMPUTER APPLICATIONS - UNIT I
suganthim28
 
How to Manage Leads in Odoo 18 CRM - Odoo Slides
Celine George
 
Measures_of_location_-_Averages_and__percentiles_by_DR SURYA K.pptx
Surya Ganesh
 
Modul Ajar Deep Learning Bahasa Inggris Kelas 11 Terbaru 2025
wahyurestu63
 
HEALTH CARE DELIVERY SYSTEM - UNIT 2 - GNM 3RD YEAR.pptx
Priyanshu Anand
 
CDH. pptx
AneetaSharma15
 
Artificial Intelligence in Gastroentrology: Advancements and Future Presprec...
AyanHossain
 

StrategiesForUsingMetadata

  • 1. Strategies for Using Metadata Reuven Weiser, Suite Solutions
  • 2. Who am I? Background in Computer Science and Education Experience in several computer companies over the past decade Web applications Server- and Client-side applications Early member of the Suite Solutions team On-site and online training seminars PDF and HTML style sheet projects CMS integration Project Management
  • 3. What is Suite Solutions? Our Mission To increase our customers’ profitability by significantly improving the efficiency of their information development and delivery processes. Qualitative Advantage Content Lifecycle Implementation (CLI) is Suite Solutions’ comprehensive approach – from concept to publication – to maximizing the value of your information assets. Our professionals are with you at every phase, determining, recommending and implementing the most cost-effective, flexible and long term solution for your business.
  • 4. Main Topics What is metadata? Metadata options Default options Custom options Extracting metadata using custom XSL Basic technique Tips
  • 5. What is metadata? Source: http://itmanagement.earthweb.com/cnews/article.php/3878261/Tech-Comics-Whats-Metadata.htm
  • 6. What is metadata? Metadata is “data about data” It can be used to describe the nature of a publication or topic, or the nature of the product that the publication or topic is about. Why is it helpful? It allows for the inclusion of information aside from the actual document content. Examples: Copyright information Product version Source documents
  • 7. Main Topics What is metadata? Metadata options Default options Custom options Extracting metadata using custom XSL Basic technique Tips
  • 8. Metadata options Default options The DITA language specification offers a wide variety of default metadata tags Metadata can be applied to an entire map, a submap, or an individual topic The default tags available depend on whether the content is organized in a ditamap or a bookmap Full reference can be found online: http://docs.oasis-open.org/dita/v1.1/OS/langspec/ditaref-type.html
  • 9. Metadata options Default options: (dita)map/topicmeta
  • 10. Metadata options Default options: bookmap/bookmeta
  • 11. Main Topics What is metadata? Metadata options Default options Custom options Extracting metadata using custom XSL Basic technique Tips
  • 12. Metadata options Custom options A number of approaches exist for including types of metadata not directly or specifically supported by the default tags: outputclass attribute <othermeta> element <data> element Specialization
  • 13. Metadata options Custom options: outputclass Goal: A client wants a publication to have a title and a subtitle on the cover page, and a different title in the running header Challenge: The <booktitle> element supports only <mainbooktitle> and <booktitlealt> Solution: Use outputclass! Example: <booktitle> <mainbooktitle> Your New Gadget </mainbooktitle> <booktitlealt outputclass= “subtitle” > An Overview </booktitlealt> <booktitlealt outputclass= “header_title” > New Gadget </booktitlealt> </booktitle>
  • 14. Metadata options Custom options outputclass attribute <othermeta> element <data> element Specialization
  • 15. Metadata options Custom options: <othermeta> Goal: A client wants to indicate whether a publication relates to a hardware product or a software product Challenge: There is no default metadata element intended for that piece of information (<category> may be used for something else) Solution: Use <othermeta>! Example: <othermeta name= “product_type” content= “software” />
  • 16. Metadata options Custom options outputclass attribute <othermeta> element <data> element Specialization
  • 17. Metadata options Custom options: <data> Goal: A client wants to display a series of contact information on the back cover Sample:
  • 18. Metadata options Custom options: <data> Challenge: There are no default metadata tags that provide that structure and allow that flexibility Solution: Use <data>!
  • 19. Metadata options Custom options: <data> Example: <data name= “contacts” > <data name= “contact” > <data name= “name” > BigCorp Inc. USA </data> <data> Worldwide Headquarters </data> <data> 7070 Wilshire Circle </data> <data> Boulder, Colorado 80301 </data> <data> T +1 303-555-5200 </data> <data> T +1 800-555-6277 </data> <data> F +1 303-555-8459 </data> <data name= “url” > www.bigcorp.com </data> </data> <data name= “contact” > <data name= “name” > BigCorp Europe </data> <data> Subdivision Management </data> <data> Hydrostraat 1 </data> <data> 6718 WX Ede </data> <data> The Netherlands </data> <data> T +31 (0) 318 555 555 </data> <data> F +31 (0) 318 555 556 </data> <data name= “url” > www.bigcorp.nl </data> </data> <data name= “contact” > <data name= “name” > BigCorp Asia </data> <data> Subdivision Management </data> <data> 1 Dragon Crescent </data> <data> Singapore 128461 </data> <data> Republic of Singapore </data> <data> T +65 5555-8211 </data> <data> F +65 5555-8003 </data> </data> <data name= “contact” > <data name= “name” > BigCorp UK </data> <data> Subdivision Management Limited </data> <data> Shepsfield Way </data> <data> Crackerbury Industrial Estate </data> <data> Stockport SK6 2SU U.K. </data> <data> T +44 0870 555 1978 </data> <data> F +44 0800 555 181 </data> </data> </data>
  • 20. Metadata options Custom options outputclass attribute <othermeta> element <data> element Specialization
  • 21. Metadata options Custom options: Specialization Goal: A client wants to indicate whether a publication relates to a hardware product or a software product, but doesn’t want authors to have to remember the correct value for the “name” attribute, and wants to limit the possible values to “hardware”, “software” or “system” Challenge: Limiting values isn’t possible with approaches discussed so far Solution: Specialize the <category> element! Example: <prodcategory value= “software” />
  • 22. Metadata options Custom options outputclass attribute <othermeta> element <data> element Specialization
  • 23. Main Topics What is metadata? Metadata options Default options Custom options Extracting metadata using custom XSL Basic technique Tips
  • 24. Extracting metadata Basic technique Metadata: <bookmeta> <prodinfo> <prodname> My Product </prodname> <vrmlist> <vrm version= “2.4” /> </vrmlist> </prodinfo> </bookmeta> The “Right” Way: <xsl:value-of select= “/*[contains(@class, ' bookmap/bookmap ')]/ opentopic:map/*[contains(@class, ' bookmap/bookmeta ')]/ *[contains(@class, ' topic/prodinfo ')][1]/ *[contains(@class, ' topic/vrmlist ')]/ *[contains(@class, ' topic/vrm ')][1]/@version” /> The Easy Way: <xsl:value-of select= “//*[contains(@class, ' topic/vrm ')][1]/@version” />
  • 25. Main Topics What is metadata? Metadata options Default options Custom options Extracting metadata using custom XSL Basic technique Tips
  • 26. Extracting metadata Tips For best performance, avoid using “//” Be sure to note which metadata elements allow multiple instances, and restrict accordingly For easy reuse, declare variables: <xsl:variable name= “version” > <xsl:value-of select=“ /*[contains(@class, ' bookmap/bookmap ')]/ opentopic:map/*[contains(@class, ' bookmap/bookmeta ')]/ *[contains(@class, ' topic/prodinfo ')][1]/ *[contains(@class, ' topic/vrmlist ')]/ *[contains(@class, ' topic/vrm ')][1]/@version” /> </xsl:variable > <xsl:value-of select= “$version” >
  • 27. Extracting metadata Tips When designing cover pages, start with the FO and work your way back to the XSL Some helpful header/footer information can be retrieved from markers in addition to metadata Example: <fo:retrieve-marker retrieve-class-name= “current-header” />
  • 28. Main Topics What is metadata? Metadata options Default options Custom options Extracting metadata using custom XSL Basic technique Tips
  • 29. End of Strategies for Using Metadata Be in touch! Reuven Weiser [email_address] Let us know how we can help you further… One-on-one support and training CMS

Editor's Notes

  • #3: Suite Solutions: DITA Quick Start Training for Authors iDTP, March 16-18, 2009