Pointers for creating XML compatible with NavigaDoc
Saving documents in NavigaDoc format using CCA means that CCA will transform the NavigaDoc to XML before saving it to Open Content. In order to avoid data loss there are some pointers that one should stick to when creating NewsML (via a Writer plugin for example).
Do not change any legacy XML structures in your NewsML documents to adhere to the instructions below since this will have a huge impact on producers and consumers of the documents.
Article is the content type that is most prone to changes/variations in the format due to the different Writer plugins, both "Naviga" and customer plugins, that can modify the format.
In NewsML, you have the option to put your metadata under
<itemMeta>
or <contentMeta>
. For a seamless handling in CCA be sure to put your elements under <itemMeta>
.In addition, use
<itemMetaExtProperty>
instead of <contentMetaExtProperty>
.The exception to sticking to itemMeta are the
meta
blocks in NavigaDoc. These will be mapped to <contentMeta>
.Although the
<data>
element is supposed to be a placeholder for "any" data, avoid nesting of elements (use links for nesting). Also, use the element text and avoid using attributes. Below is an example of a CCA friendly XML snippet.<data>
<title>If miss part by fact he park just shew</title>
<text>Discovered had get considered projection who favourable.</text>
<subject>Necessary up knowledge it tolerably</subject>
<number>2</number>
</data>
For legacy reasons, the exceptions below are handled differently than the way described above by CCA and should therefore not be moved or changed in the NewsML.
These links will be mapped under
<contentMeta>
by CCA:@type=x-im/articlesource
@type=x-im/premium
@type=x-im/articletype
@type=x-geo/point
@type=x-im/contenttype
@type=x-im/articlecontent
@type=x-im/articlecontenttype
@type=x-im/category
and@rel=category
@type=x-im/articleoptions
@type=x-im/articleoptions/plus
@type=x-im/articleoptions/comments
and@rel=comment
@type=x-im/plus
These properties will be mapped to
<contentMeta>
by CCA:@type=imext:header
@type=imext:subheader
@type=imext:deck
@type=uri
@type=altId
@type=infosource
@type=contentcreated
@type=contentmodified
@type=type
@type=by
@type=headline
@type=provider
@type=imext:simplebyline
@type=infoSource
@type=language
In order to be able to work with a draft version of an already published article, a property (or flag) is used (see snippet below).
<newsItem>
<itemMeta>
<itemMetaExtProperty type="imext:haspublishedversion" value="false"/>
</itemMeta>
<newsItem>
The value for this flag should be set to
true
when the articles is published ("usable") and to false
whenever the article is unpublished ("canceled"). Until the article has been published this flag should be set to false
.Even though the NewsML format is huge and extendable, keep to rules defined in the XSD below when adding your metadata and content XML to your NewsML documents.
newsml-extensions.xsd
9KB
Binary
XSD with NewsML extensions
Last modified 1yr ago