You may want to have multiple pull quote or block elements tied to their relative headline elements and displayed in the article tree in a recognizable order.
In this example, there are three block elements, each preceded with the related blockhead element.
To achieve such structure, modify the schema by
<xs:element name="blockhead"> <xs:complexType> <xs:annotation> <xs:appinfo> <gs:_objectType deadlineGap="0" nameptt="&a,blh" typeLink="no" mediaType="Text"> <description>blockhead</description> </gs:_objectType> </xs:appinfo> </xs:annotation> <xs:complexContent> <xs:extension base="txt"> <xs:sequence> <xs:element name="xmlText" minOccurs="0" gs:storage="Ignore"> <xs:annotation> <xs:documentation>Text XML structure. Not stored in the database</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="p" type="p" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element>
<xs:element name="block"> <xs:complexType> <xs:annotation> <xs:appinfo> <gs:_objectType deadlineGap="0" nameptt="&a,blk" typeLink="no" mediaType="Text"> <description>block</description> </gs:_objectType> </xs:appinfo> </xs:annotation> <xs:complexContent> <xs:extension base="txt"> <xs:sequence> <xs:element name="xmlText" minOccurs="0" gs:storage="Ignore"> <xs:annotation> <xs:documentation>Text XML structure. Not stored in the database</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="p" type="p" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element>
|
Add a group of two required elements, in the order you want to be available: <xs:group name="blocks"> <xs:annotation> <xs:documentation></xs:documentation> </xs:annotation> <xs:sequence> <xs:element ref="blockhead" minOccurs="0" maxOccurs="1"/> <xs:element ref="block" minOccurs="0" maxOccurs="1"/> </xs:sequence> </xs:group> |
<xs:complexType name="_articleTxts">
<xs:annotation>
<xs:documentation>The texts contained in an article</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element ref="head" minOccurs="0" maxOccurs="1"/>
<xs:element ref="webHead" minOccurs="0" maxOccurs="1"/>
<xs:element ref="blogPost" minOccurs="0" maxOccurs="1"/>
<xs:element ref="jumpHead" minOccurs="0" maxOccurs="1"/>
<xs:element ref="subhead" minOccurs="0" maxOccurs="1"/>
<xs:element ref="kicker" minOccurs="0" maxOccurs="1"/>
<xs:element ref="intro" minOccurs="0" maxOccurs="1"/>
<xs:element ref="body" minOccurs="0" maxOccurs="1"/>
<xs:element ref="webBody" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="smsBody" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="twitterMsg" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="facebookMsg" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="pullquote" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="photoCaption" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="urlCaption" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="audioCaption" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="videoCaption" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="galleryCaption" minOccurs="0" maxOccurs="unbounded"/>
<xs:group ref="blocks" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>