Describes how the RELAX NG grammar standard is an almost perfect match for DITA's grammar modularity and extension features, in sharp contrast to XSD, which basically does not work for DITA.
Provides an overview of the DITA 1.3 use of RELAX NG for all DITA vocabulary and then describes how to use the RELAX NG-to-DTD and XSD converter plugin for the Open Toolkit to generate your own DTD document type shells and vocabulary and constraint modules
They Worked Before, What Happened? Understanding DITA Cross-Book Links Contrext Solutions
When migrating content to DITA there are often
links from one book to another. These links work
in their legacy environment but don’t work when
migrated to DITA 1.2 or earlier. Why not? This
talk presents why it is that cross-book links that
work in legacy environments don‘t work when
migrated to DITA 1.1 or 1.2 and how to make
those links work using the new DITA 1.3 crossdeliverable
linking feature. It also presents challenges
faced by a major software vendor as they
migrate their manuals to DITA from FrameMaker
through DocBook to DITA and how to solve those
challenges with DITA 1.3.
General Architecture for Generation of Slide PresentationsContrext Solutions
Slides of presentation given at Balisage 2013. These slides were generated by the Slidinator DITA2PPTX transform (https://github.com/drmacro/slidinator) and then adjusted in PPTX to correct the formatting of a couple of slides.
Describes part of a large abstract hyperdocument version management model and then discusses how that model is applied to DITA documents in the context of the DITA for Small Teams project to enable low-cost management of DITA documents.
DITA 1.3 brings important enhancements to the DITA 1.2 key and keyref feature (scoped keys), improvements in filtering (branch filtering), the use of RELAX NG for document types, official integration of the MathML and SVG standards, improvements to the Learning and Training question-and-answer markup, as well as new domains and various smaller refinements that will make things generally easier for DITA authors. This webinar outlines what's new in DITA 1.3 with a focus on how DITA authors can use them, with a focus on features that make reuse easier.
A brief discussion of reuse challenges in DITA and various responses to those challenges. Focuses on the challenges inherent in reusing topics that contain embedded cross references.
What’s new in DITA 1.3?
by Yas Etessam, DITA Consultant and Leigh White, DITA Specialist at IXIASOFT
Come and learn about the new proposed DITA 1.3 features. Leigh and Yas will provide an overview of the new architectural features including extensions to the DITA core vocabulary, Online Help vocabularies, scoped keys, branched filtering and enhancements to the Learning and Training, Troubleshooting and Table specializations.
Provides an overview of the DITA 1.3 use of RELAX NG for all DITA vocabulary and then describes how to use the RELAX NG-to-DTD and XSD converter plugin for the Open Toolkit to generate your own DTD document type shells and vocabulary and constraint modules
They Worked Before, What Happened? Understanding DITA Cross-Book Links Contrext Solutions
When migrating content to DITA there are often
links from one book to another. These links work
in their legacy environment but don’t work when
migrated to DITA 1.2 or earlier. Why not? This
talk presents why it is that cross-book links that
work in legacy environments don‘t work when
migrated to DITA 1.1 or 1.2 and how to make
those links work using the new DITA 1.3 crossdeliverable
linking feature. It also presents challenges
faced by a major software vendor as they
migrate their manuals to DITA from FrameMaker
through DocBook to DITA and how to solve those
challenges with DITA 1.3.
General Architecture for Generation of Slide PresentationsContrext Solutions
Slides of presentation given at Balisage 2013. These slides were generated by the Slidinator DITA2PPTX transform (https://github.com/drmacro/slidinator) and then adjusted in PPTX to correct the formatting of a couple of slides.
Describes part of a large abstract hyperdocument version management model and then discusses how that model is applied to DITA documents in the context of the DITA for Small Teams project to enable low-cost management of DITA documents.
DITA 1.3 brings important enhancements to the DITA 1.2 key and keyref feature (scoped keys), improvements in filtering (branch filtering), the use of RELAX NG for document types, official integration of the MathML and SVG standards, improvements to the Learning and Training question-and-answer markup, as well as new domains and various smaller refinements that will make things generally easier for DITA authors. This webinar outlines what's new in DITA 1.3 with a focus on how DITA authors can use them, with a focus on features that make reuse easier.
A brief discussion of reuse challenges in DITA and various responses to those challenges. Focuses on the challenges inherent in reusing topics that contain embedded cross references.
What’s new in DITA 1.3?
by Yas Etessam, DITA Consultant and Leigh White, DITA Specialist at IXIASOFT
Come and learn about the new proposed DITA 1.3 features. Leigh and Yas will provide an overview of the new architectural features including extensions to the DITA core vocabulary, Online Help vocabularies, scoped keys, branched filtering and enhancements to the Learning and Training, Troubleshooting and Table specializations.
Some Options for Non-MARC Descriptive MetadataJenn Riley
Riley, Jenn. "Some Options for Non-MARC Descriptive Metadata." Presentation to Indiana University Library Technical Services Cataloging Division, December 9, 2008.
Web Technology under CSS - Introduction, Advantages, Adding CSS, Browser Compatibility, CSS and Page Layout finally Selectors all are referred with Uttam K. Roy
A comparison of a database table to an XML document. There is an overview of basic XML concepts suchs as attribute, element, entity, and tag. Data centric and document centric XML document are covered.
Easy steps to convert your content to structured (frame maker and xml)Publishing Smarter
Bernard Aschwanden of Publishing Smarter converts documents that contain character, paragraph, and table content marked up with tags, as well as other standard FrameMaker content and creates structured files. This presentation guides you through the general best practices when converting any legacy content. Forget copy and paste. Leverage what you have to create great structured content. Watch, learn, then do it yourself with provided sample files.
Locale-Aware Sorting and Text Handling in the Open ToolkitContrext Solutions
Introduces the DITA Community Internationalization (i18n) library, which provides support for dictionary-based sorting and grouping of Simplified Chinese, as well as other language, as well as access to ICU4J's word and line boundary functions. Also provides Java and XSLT functions for getting the approximate rendered length of strings.
Some Options for Non-MARC Descriptive MetadataJenn Riley
Riley, Jenn. "Some Options for Non-MARC Descriptive Metadata." Presentation to Indiana University Library Technical Services Cataloging Division, December 9, 2008.
Web Technology under CSS - Introduction, Advantages, Adding CSS, Browser Compatibility, CSS and Page Layout finally Selectors all are referred with Uttam K. Roy
A comparison of a database table to an XML document. There is an overview of basic XML concepts suchs as attribute, element, entity, and tag. Data centric and document centric XML document are covered.
Easy steps to convert your content to structured (frame maker and xml)Publishing Smarter
Bernard Aschwanden of Publishing Smarter converts documents that contain character, paragraph, and table content marked up with tags, as well as other standard FrameMaker content and creates structured files. This presentation guides you through the general best practices when converting any legacy content. Forget copy and paste. Leverage what you have to create great structured content. Watch, learn, then do it yourself with provided sample files.
Locale-Aware Sorting and Text Handling in the Open ToolkitContrext Solutions
Introduces the DITA Community Internationalization (i18n) library, which provides support for dictionary-based sorting and grouping of Simplified Chinese, as well as other language, as well as access to ICU4J's word and line boundary functions. Also provides Java and XSLT functions for getting the approximate rendered length of strings.
The Challenges of Describing Best Tagging Practices for JATS
Jeffrey Beck, Technical Information Specialist, National Center for Biotechnology Information (NCBI), U.S. National Library of Medicine, National Institutes of Health; Co-chair, NISO Journal Article Tag Suite (JATS) Standing Committee
Keep Calm and Specialize your Content Modelctnitchie
Some people think that by specializing DITA, you're deviating from the standard, when in fact this is one of the main reasons DITA was designed. Learn about how to customize your XML authoring environment with tagging specific to your business without losing the benefits of working with an industry standard. Presented at CIDM CMS DITA North America 2015.
External or internal domain-specific languages (DSLs) or (fluent)
APIs? Whoever you are – a developer or a user of a DSL –
you usually have to choose side; you should not! What about
metamorphic DSLs that change their shape according to your
needs? Our 4-years journey of providing the "right" support
(in the domain of feature modeling), led us to develop an external
DSL, different shapes of an internal API, and maintain
all these languages. A key insight is that there is no one-size-fits-
all solution or no clear superiority of a solution compared
to another. On the contrary, we found that it does make sense
to continue the maintenance of an external and internal DSL.
Based on our experience and on an analysis of the DSL engineering
field, the vision that we foresee for the future of
software languages is their ability to be self-adaptable to the
most appropriate shape (including the corresponding integrated
development environment) according to a particular
usage or task. We call metamorphic DSL such a language,
able to change from one shape to another shape.
The talk has been presented at SPLASH conference in Portland (USA), Onward! Essays track.
Paper is here: https://hal.archives-ouvertes.fr/hal-01061576/fr
Whether migrating a database or application from Oracle to Postgres, as a first step, we need to analyze the database objects(DDLs), to find out the incompatibilities between both the databases and estimate the time and cost required for the migration. In schema migration, having a good knowledge of Oracle and Postgres helps to identify incompatibilities and choose the right tool for analysis/conversion. In this webinar, we will discuss schema incompatibility hurdles when migrating from Oracle to Postgres and how to overcome them.
What you will learn in this webinar:
- How you identify if your oracle schema is compatible with PostgreSQL
- Incompatibility hurdles and identifying them with Migration tools
- How to Overcome incompatibility hurdles
- Available tools for conversion
- Post migration activities - functional testing, performance analysis, data migration, application switchover
Introduction to XML and Structured Authoring • Overview of DITA • Topics: The Basic Information Types • Maps: Assembling Topics into Deliverables • Common elements and attributes • Metadata • Examples and exercises
Jump Start on Apache Spark 2.2 with DatabricksAnyscale
Apache Spark 2.0 and subsequent releases of Spark 2.1 and 2.2 have laid the foundation for many new features and functionality. Its main three themes—easier, faster, and smarter—are pervasive in its unified and simplified high-level APIs for Structured data.
In this introductory part lecture and part hands-on workshop, you’ll learn how to apply some of these new APIs using Databricks Community Edition. In particular, we will cover the following areas:
Agenda:
• Overview of Spark Fundamentals & Architecture
• What’s new in Spark 2.x
• Unified APIs: SparkSessions, SQL, DataFrames, Datasets
• Introduction to DataFrames, Datasets and Spark SQL
• Introduction to Structured Streaming Concepts
• Four Hands-On Labs
By now, you have heard how important structured content is. But, maybe you poked around with something like DITA and were baffled by the complexity. Or, maybe you still aren’t sure what XSLT stands for. This workshop will take participants back to the basics, to provide a foundation for higher-level concepts that have taken hold of our industry. Topics will include:
- What XML looks like, what it does, and how to create it.
- How to define a structure model, including whether to use a - DTD, Schema, etc.
- What XSLT looks like, what it does, and how to make it work.
- What DITA and DocBook really are and whether one is right for you.
Russell Ward is an experienced technical writer and structured technologies developer. He has spent many years working with structured content to maximize efficiency in the techcomm environment, both as an employee and as an independent consultant. He is also an experienced trainer and speaks periodically at conferences and other peer events.
Loose Leaf Publishing Using Antenna House Formatter and CSS for PaginationContrext Solutions
Describes the general approach to using Antenna House Formatter and CSS Paged Media to produce loose leaf updates for codified municipal code. Presented at Balisage 2019. https://www.balisage.net/Proceedings/vol23/html/Kimber01/BalisageVol23-Kimber01.html
Describes a general technique for splitting columns or page sequences in XSL-FO instances in order to implement column switching or page sequence switching in FOP.
Can I Have a Word: Managing Shared Glossaries and References to Terms With DITAContrext Solutions
Provides an overview of DITA's glossary markup, some of the challenges in authoring and managing glossaries, techniques for managing glossaries, and some discussion of processing required for glossaries.
Content Management on Zero Budget: DITA for Small TeamsContrext Solutions
Describes the DITA For Small Teams (D4ST) open-source project as well as the general D4ST approach to putting together DITA author, management, and production environment using free and open-source tools as much as possible.
Introduces CSS pagination features and their strengths and limitations. Suggests that CSS for pagination is much easier to use, maintain, and staff than using XSL-FO, especially using the PDF2 transform provided with the DITA Open Toolkit. Describes the currently-available CSS pagination implementations.
Provides an overview of the DITA for Small Teams (www.d4st.org) project and the general approach of using off-the-shelf open-source and commercial tools to set up a usable DITA authoring, management, and delivery system.
Can I Have a Word: Managing Shared Glossaries and References to Terms With DITAContrext Solutions
Presents DITA markup for representing glossaries (<glossentry> and related elements) and references to them (<term>). Discusses strategies for how to assign and manage keys associated with glossary entries. Also discusses some of the processing challenges inherent in the glossary feature design.
Shows how to use XSLT with FrameMaker 2017. Provides an overview of XSLT basics and demonstrates how to integrate simple XSLT transforms with FrameMaker structured applications.
Managing Multiple Open Toolkit Configurations Using git Lightning TalkContrext Solutions
Briefly presents my technique for using a git repository to manage dozens of different Open Toolkit configurations.
Presented at DITA Open Toolkit Day 2015 in Munich, Germany.
An exploration of why writers coming to DITA tend to find DITA hard and what we and they can do to help ease the transition from non-DITA to DITA-based authoring of sophisticated technical documents. Presents the martial art Aikido as a metaphor for DITA and as a source of strategies for providers and writers to use as they engage with DITA.
Taking Cross References to the Next Level: Reltables for Non-Topic ElementsContrext Solutions
Discusses an approach to using specialized DITA topics as indirectors to individual elements within topics in order to then enable linking to those elements from relationship tables, which are otherwise only able to relate whole topics.
Understanding User Behavior with Google Analytics.pdfSEO Article Boost
Unlocking the full potential of Google Analytics is crucial for understanding and optimizing your website’s performance. This guide dives deep into the essential aspects of Google Analytics, from analyzing traffic sources to understanding user demographics and tracking user engagement.
Traffic Sources Analysis:
Discover where your website traffic originates. By examining the Acquisition section, you can identify whether visitors come from organic search, paid campaigns, direct visits, social media, or referral links. This knowledge helps in refining marketing strategies and optimizing resource allocation.
User Demographics Insights:
Gain a comprehensive view of your audience by exploring demographic data in the Audience section. Understand age, gender, and interests to tailor your marketing strategies effectively. Leverage this information to create personalized content and improve user engagement and conversion rates.
Tracking User Engagement:
Learn how to measure user interaction with your site through key metrics like bounce rate, average session duration, and pages per session. Enhance user experience by analyzing engagement metrics and implementing strategies to keep visitors engaged.
Conversion Rate Optimization:
Understand the importance of conversion rates and how to track them using Google Analytics. Set up Goals, analyze conversion funnels, segment your audience, and employ A/B testing to optimize your website for higher conversions. Utilize ecommerce tracking and multi-channel funnels for a detailed view of your sales performance and marketing channel contributions.
Custom Reports and Dashboards:
Create custom reports and dashboards to visualize and interpret data relevant to your business goals. Use advanced filters, segments, and visualization options to gain deeper insights. Incorporate custom dimensions and metrics for tailored data analysis. Integrate external data sources to enrich your analytics and make well-informed decisions.
This guide is designed to help you harness the power of Google Analytics for making data-driven decisions that enhance website performance and achieve your digital marketing objectives. Whether you are looking to improve SEO, refine your social media strategy, or boost conversion rates, understanding and utilizing Google Analytics is essential for your success.
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBrad Spiegel Macon GA
Brad Spiegel Macon GA’s journey exemplifies the profound impact that one individual can have on their community. Through his unwavering dedication to digital inclusion, he’s not only bridging the gap in Macon but also setting an example for others to follow.
Instagram has become one of the most popular social media platforms, allowing people to share photos, videos, and stories with their followers. Sometimes, though, you might want to view someone's story without them knowing.
Italy Agriculture Equipment Market Outlook to 2027harveenkaur52
Agriculture and Animal Care
Ken Research has an expertise in Agriculture and Animal Care sector and offer vast collection of information related to all major aspects such as Agriculture equipment, Crop Protection, Seed, Agriculture Chemical, Fertilizers, Protected Cultivators, Palm Oil, Hybrid Seed, Animal Feed additives and many more.
Our continuous study and findings in agriculture sector provide better insights to companies dealing with related product and services, government and agriculture associations, researchers and students to well understand the present and expected scenario.
Our Animal care category provides solutions on Animal Healthcare and related products and services, including, animal feed additives, vaccination
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdfFlorence Consulting
Quattordicesimo Meetup di Milano, tenutosi a Milano il 23 Maggio 2024 dalle ore 17:00 alle ore 18:30 in presenza e da remoto.
Abbiamo parlato di come Axpo Italia S.p.A. ha ridotto il technical debt migrando le proprie APIs da Mule 3.9 a Mule 4.4 passando anche da on-premises a CloudHub 1.0.
1. RELAX NG and DITA: An
Almost Perfect Match
How RELAX NG makes everything
easier for DITA vocabulary
1/14/2016 Contrext, LLC 1
Eliot Kimber
Contrext, LLC
George Bina
Synchro SoftBalisage 2014
2. About the Authors
• Eliot Kimber
– Independent consultant focusing on DITA analysis, design, and
implementation
– Doing SGML and XML for cough 30 years cough
– Founding member of the DITA Technical Committee
– Founding member of the XML Working Group
– Co-editor of HyTime 2nd Edition standard (ISO/IEC 10744)
– Primary developer and founder of the DITA for Publishers project
– Author of DITA for Practitioners, Vol 1 (XML Press)
• George Bina
– Founding partner of Syncro Soft SRL, makers of oXygen XML
– Contributor to many open-source projects, including DITA-NG and
oNVDL
– More than 15 years experience working with XML and related
technologies
1/14/2016 Contrext, LLC 2
3. Agenda
• Overview of DITA’s modular vocabulary
architecture
• How DTDs don’t work too well for it
• How XSDs work even less well
• How RELAX NG does things almost perfectly
1/14/2016 Contrext, LLC 3
4. Executive Summary
• DITA depends on parameterized content models and
attributes to implement integration, extension, and
constraint
• The available document grammar technologies support
this to varying degrees
– DTD: Works but tedious, verbose, and error prone
– XSD: Almost works, tedious, verbose, not reliable or
interchangeable. Redefine feature is evil.
– RELAX NG: Works with minimum verbosity and maximal
ease
• Use of RELAX NG enables generation of conforming
DTD and XSD versions of DITA grammars.
1/14/2016 Contrext, LLC 4
9. Relevant DITA Facts
• DITA 1.2 is current version.
• DITA 1.3 in progress, target YE 2014/1Q2015
• DITA standardizes the coding patterns for vocabulary
implementations in specific XML grammar languages
– DITA 1.2: DTD and XSD. DTD and XSD maintained
independently
– DITA 1.3: RELAX NG, DTD, and XSD. DTD and XSD generated
from RELAX NG
• Conforming vocabulary implementations must reflect
these coding standards
• There is no single “DITA DTD”: All working grammars
are “local” to a given group of DITA users
1/14/2016 Contrext, LLC 9
10. DITA Vocabulary Composition
1/14/2016 Contrext, LLC 10
Document
Type Shell 1
Document
Type Shell 2
Document Type
Shells
Vocabulary Modules (Invariant)
Topic Type A
Topic Type B
Constraint K
Domain Y
Domain Z
User Group 1
User Group 2
domains=“(topic A) (topic Y-d) (topic Z-d)”
domains=“(topic A) (topic B) (topic K-c) (topic Z-d)”
11. Vocabulary is Modular
• DITA vocabulary defined as an extensible set of
modules
– Map types, topic types, domains (mix-in)
• Modules are invariant for a given version in time
• A unique set of modules defines a unique “DITA
document type”
– Specified by @domains attribute on root element:
domains=“(topic concept) (topic hi-d)”
1/14/2016 Contrext, LLC 11
12. All Modification is By Imposed
Configuration
• Modules are “integrated” into a “document
type shell”
• Integration depends on use of grammar’s
parameterization features
• Can add constraints that further adjust
(constrain) content models and attributes
• Logically, integration extends content models,
constraint restricts them.
1/14/2016 Contrext, LLC 12
13. Modular Vocabulary Requirements
• Provide the @domains attribute contribution for
the module
• Parameterize content models:
– Redefine the content model in its entirety
– Allow additional element types where any given
element type is allowed (mix-in of domains)
• Parameterize attribute lists:
– Redefine the attribute list in its entirety
– Extend the attribute list with global attributes
• Provide common reusable content model
fragments
1/14/2016 Contrext, LLC 13
15. Challenges Posed by DTD
Syntax
• Need two files for each topic type or domain
• Syntax is cryptic
• Syntax is difficult to debug
• Lots of opportunities for error
• Few convenient tools for operating on DTDs as
structured data
• Simple task of creating document type shells
is hard, even for experts
1/14/2016 Contrext, LLC 16
16. Challenges Posed by XML
Schema
• The XSD redefine facility
• Limits on redefine
• Domain integration declarations
• Verbosity of the markup due to class/element
distinction
1/14/2016 Contrext, LLC 17
17. XSD Redefine: Thank You For
Playing
• Seriously over-constrained
• Ambiguous definition in the XSD 1.0 spec
• Incompatible implementations (maybe)
• Deprecated in XSD 1.1
• Resulting XSD structures very different in
pattern from original DTD or RNG models
• Result: DITA 1.1 and 1.2 XSDs are not generally
constrainable
1/14/2016 Contrext, LLC 18
18. Particle Preservation
Constraint: Why?
• When redefining a content model, must preserve
all particles
• For sequence groups, mean you can’t simply omit
a member of the sequence via redefine:
– Original: A, B?, C
– Desired redefinition: A, C
– No can do: particle B must be represented
• Solution:
– Refactor as a sequence of choice groups
– Can redefine any group to be empty
1/14/2016 Contrext, LLC 19
19. XSD Override: Need
Implementations
• The XSD 1.1 Override feature should be
exactly what DITA needs
• Not yet implemented widely enough
• Thus, can’t use for DITA 1.3
• However, as DITA 1.3 XSDs are generated,
could implement it at any time it becomes
appropriate to do so
1/14/2016 Contrext, LLC 20
20. RELAX NG Makes Everything
Better
• Syntax and semantics match very well to DITA
patterns and practice
• Patterns can unilaterally extend other patterns
– Matches perfectly to DITA domain extension
– Makes domains “self integrating”
• Document type shells become simple
inclusion lists (almost)
• XML syntax makes processing practical, if not
easy
1/14/2016 Contrext, LLC 21
21. Requirements Beyond base
RELAX NG
• RELAX NG DTD Compatibility
– DITA relies on defaulted attributes (@class,
@domains)
• DITA-specific module metadata to enable DTD
and XSD generation
1/14/2016 Contrext, LLC 22
22. Areas for RELAX NG
Improvement
• Requirements for attributes of type @ID
require special declarations in DITA shells
• No way to automatically compose attribute
values
– No equivalent to general internal text entities
within attribute default declarations
– Required by @domain attribute in document type
shells
1/14/2016 Contrext, LLC 23
28. Conclusions
• RELAX NG:
– Avoids issues with DTDs and XSDs
– Preserves general knowledge of DITA coding patterns
– Makes simple things as simple as they could be
(document type shell creation)
– Has (almost) all the parameterization features
required
• Possible to generate conforming DITA DTDs and
XSDs
• Can now have a single master definition of all
DITA vocabulary
1/14/2016 Contrext, LLC 29
29. Further Work
• Propose enhancement to RELAX NG to relax
ID-type attribute rules
• Propose enhancement to RELAX NG DTD
compatibility to allow composition of default
attribute values
• Research: Can constrainable XSD content
models be generated in a general way?
1/14/2016 Contrext, LLC 30